Using Matlab Fmincon as a substitute for Excel solver tool
2 ビュー (過去 30 日間)
古いコメントを表示
I'm an amateur Matlab user. I turned to Matlab as the solver in excel restricts how many variables can be used variables. I'm trying to maximise a function subject to constraints using Fmincon. However I'm getting an error when I try to run it.
My code is:
% Objective function m file:
function f = objectivefunction3(x)
f = -FinalAlphas*x'+ x*VCV*x'
% Code to run Fmincon:
[x, fval] = fmincon(@objectivefunction2,x0,A,B)
I get the following error when running it:
Error in objectivefunction3 (line 2)
f = FinalAlphas*x'- x*VCV*x'
Error in fmincon (line 631)
initVals.f = feval(funfcn{3},X,varargin{:});
1 件のコメント
Matt J
2013 年 10 月 17 日
Since your function is a quadratic (and possibly a linear least squares) objective and your constraints are linear, it would be better to use QUADPROG or LSQLIN, rather than FMINCON.
回答 (1 件)
Daniel Shub
2013 年 10 月 17 日
My guess is your objective function is not valid
% Objective function m file:
function f = objectivefunction3(x)
f = -FinalAlphas*x'+ x*VCV*x'
unless you are using nested functions, FinalAlphas and VCV are not dfined.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!