Hi all; when i run the optimtool i got this message error: ( Optimization running. Error running optimization. Inner matrix dimensions must agree.) so kindly can any one explaine what is the problem

4 vues (au cours des 30 derniers jours)
I try to use optimtool (fmincon) to find the optimal values for two variable(x1,x2), I use SQP as the algorithm, the start point [0,0], bounds [0,0], [50,50], and the objective function is @objfun
function f = objfun(x1,x2)
a1=1;
a2=5;
a3=-4;
b1=1;
b2=2;
f=a1*(x1-b1)*(x1-b1)+a2*(x2-b2)*(x2-b2)+a3*x1*x2;
end

Réponse acceptée

Walter Roberson
Walter Roberson le 5 Mar 2016
Your objective function will be passed a single variable which is a vector of values. It will not be passed two scalars.
function f = objfun(x)
x1 = x(1); x2 = x(2);
a1=1;
a2=5;
a3=-4;
b1=1;
b2=2;
f=a1*(x1-b1)*(x1-b1)+a2*(x2-b2)*(x2-b2)+a3*x1*x2;
end

Plus de réponses (0)

Catégories

En savoir plus sur Get Started with Optimization Toolbox dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by