Minimize mean, but also set a constraint on the standard deviation

5 ビュー (過去 30 日間)
Anthony
Anthony 2013 年 7 月 15 日
I have the following global optimization problem setup (please note that this is a simplification):
%constraints:
Aeq = [1 1 1];
beq = 1;
lb = .10 * [1 1 1];
ub = .8 * [1 1 1];
w = [weight1, weight2, weight3];
wstart = randn(3,1);
options = optimset('Algorithm','interior-point');
% function handle for the objective function (note that variables
% aa through hh are additional parameters that the solver does not modify):
h = @(w)NameOfFunction(w(1),w(2),w(3), aa, bb, cc, dd, ee, ff, gg, hh);
% problem structure:
problem = createOptimProblem('fmincon','x0',wstart,'objective',h,...'
'Aeq',Aeq,'beq',beq,'options',options,'lb',lb,'ub',ub);
gs = GlobalSearch;
run(gs,problem)
My objective function (NameOfFunction) uses the three decision variables (w(1), w(2), and w(3)) to generate a vector containing 180 values. The function then calculates and returns the mean of these values (the mean is the value I am minimizing).
I would like to add an additional constraint into the optimization that sets the standard deviation of the vector containing the 180 values to be less than some specific number. In addition, I would like to set a constraint on the maximum value any of the 180 members can take on. I have been unable to figure out how to do this. Any help would be greatly appreciated.

採用された回答

Shashank Prasanna
Shashank Prasanna 2013 年 7 月 16 日
  3 件のコメント
Anthony
Anthony 2013 年 7 月 16 日
Thank you. I think that got me to what I needed. I have a follow-up question. How would I implement a constraint on the minimum value that any member of the 180-member vector can take on (rather than on the standard deviation)?
Matt J
Matt J 2013 年 7 月 16 日
編集済み: Matt J 2013 年 7 月 16 日
cineq = minvalue - vector180members

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSurrogate Optimization についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by