optimization function in matlab

3 visualizzazioni (ultimi 30 giorni)
i would like to ask about the optimization in matlab function that works with multi variable input with each input has different boundaries the output is only one variables

Risposta accettata

John D'Errico
John D'Errico il 29 Nov 2015
help fmincon
Or, as found on the file exchange, fminsearchbnd.
  5 Commenti
John D'Errico
John D'Errico il 30 Nov 2015
Read the help for fmincon.
You cannot simply pass in a list of variables in any order as arguments and expect fmincon to know that the 3rd and 4th arguments are to be interpreted as bounds.
READ THE HELP!!!!!
[x,fval,exitflag,output] = fmincon(fun,x0,[],[],[],[],Lb,Ub);
As you were passing in those arguments, fmincon thought they were to be treated as the equations for a set of linear INEQUALITY constraints. As such, what it thought were A and b were inconsistent in size.
mohammed hussein
mohammed hussein il 30 Nov 2015
Thank you john

Accedi per commentare.

Più risposte (1)

Torsten
Torsten il 30 Nov 2015
fun = @(x)(x(1)-5)^2+(x(2)+6)^2+x(3);
x0 = [1 1 1];
Lb=[0 -1 2];
Ub=[1 2 3];
[x,fval,exitflag,output] = fmincon(fun,x0,[],[],[],[],Lb,Ub);
disp(fval)
Best wishes
Torsten.

Community Treasure Hunt

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

Start Hunting!

Translated by