matlab fmincon 程序是:%首先编写目标函数的﹒m文件:function f=myfun(y);f=exp(y(1)+y(2))*3*exp(-y(4));%调用函数fmincon:>> y0=[1.79,2.99,-0.22,-0.0622]; %起始点>> A=[-1.5,-1.5,2,-0.5;-3.0,-2,2,-1];>> b=[-5.2779;-7.0346];>> lb=
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/15 09:53:56
matlab fmincon 程序是:%首先编写目标函数的﹒m文件:function f=myfun(y);f=exp(y(1)+y(2))*3*exp(-y(4));%调用函数fmincon:>> y0=[1.79,2.99,-0.22,-0.0622]; %起始点>> A=[-1.5,-1.5,2,-0.5;-3.0,-2,2,-1];>> b=[-5.2779;-7.0346];>> lb=
matlab fmincon
程序是:
%首先编写目标函数的﹒m文件:
function f=myfun(y);
f=exp(y(1)+y(2))*3*exp(-y(4));
%调用函数fmincon:
>> y0=[1.79,2.99,-0.22,-0.0622]; %起始点
>> A=[-1.5,-1.5,2,-0.5;-3.0,-2,2,-1];
>> b=[-5.2779;-7.0346];
>> lb=[0.693,2.833,-0.51,-0.0622];
>> ub=[3.0,3.912,0.18,-0.00549];
>>[y,fval,exitflag,output]=fmincon(@myfun,y0,A,b,[],[],lb,ub)
运行以后,出错
>>[y,fval]=fmincon(@myfun,y0,A,b,[],[],lb,ub)
|
Error:Unexpected MATLAB operator.
请问问题出现在哪里,怎么改呢
matlab fmincon 程序是:%首先编写目标函数的﹒m文件:function f=myfun(y);f=exp(y(1)+y(2))*3*exp(-y(4));%调用函数fmincon:>> y0=[1.79,2.99,-0.22,-0.0622]; %起始点>> A=[-1.5,-1.5,2,-0.5;-3.0,-2,2,-1];>> b=[-5.2779;-7.0346];>> lb=
因为 f 是一个凸函数,函数的极小值发生在 f 对 x(1) 和 x(2) 的偏导为 0 的地方,或者在约束条件的边界上.本题的主函数的点为 x(1)=2, x(2)=3, 在约束条件以外,所以,最小值发生在离这个点最近的约束条件边界上,即 x(1)=3, x(2)=4,其对应的最小值为 28.
用Matlab的fmincon的话,
X=fmincon(inline(' (x(1)-2)^2 + (x(2)-3)^2 +26 '), [1; 1], [], [], [], [], [3; 4 ], [6;7])
得
X =
3
4
柳州电脑网
qmatlab fmincon 问题出在哪?