Double summation with multiplication

7 次查看(过去 30 天)
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

回答(1 个)

Walter Roberson
Walter Roberson 2015-10-18
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)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by