Double summation with multiplication

7 views (last 30 days)
Agus Suwarno
Agus Suwarno on 17 Oct 2015
Answered: Walter Roberson on 18 Oct 2015
Hi there, I currently working on a my study's final project One of which require me to solve this kind of equation
Objective is to maximize this function
r, sigma(i) --> for standard deviation, teta, and cov(i,j) are known number and I want to find the w(i) value with constraint: - Lower bound for w(i) is 0 - Upper bound for w(i) is 0 - Sum w(i) is 1
Any help is very appreciated and sorry for bad english

Answers (1)

Walter Roberson
Walter Roberson on 18 Oct 2015
To maximize something, minimize its negative. You can use fmincon for that, using a lowerbound.
Although it might seem most natural to code sum(w)=1 as a linear equality constraint, that form is inefficient because it can take a lot of hunting to fit the equality. Instead use one fewer w, calculate the last w(i) as 1 minus sum(w(1:i-1)), and have a linear inequality constraint on sum(1:i-1) as being < 1 (strictly) so that there always some room for the last w(i)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!