怎么用matlab求最优解?

如题所述

x0=[5,5,2]

题主给出的线性规划模型可以用fmincon函数来

求其最优解,其方法:

1、首先建立目标函数,objectivef(x),其内容

y=x(1)*x(2)+2*(x(2)*x(3)+x(1)*x(3));

2、然后建立约束函数,constrainf(x),其内容

%约束函数

c=[];

%非约束函数

ceq=x(1)*x(2)*x(3)-100;

3、最后建立运行代码

x0=[5,5,2]

A=[];b=[];Aeq=[];beq=[];VLB=[5,0,0];VUB=[inf,inf,inf];

[x,fval,exitflag]=fmincon(@(x)objectivef(x),x0,A,b,Aeq,beq,VLB,VUB,@(x)constrainf(x))

A=x(1)*x(2)*x(3);

str=['x1x2x3=100 ',num2str(A)];

fprintf('%s\n',str);

4、根据上述 内容编程,执行可以得到

x1=5.848;x2= 5.848;x3=2.924

min S=102.6

温馨提示:答案为网友推荐,仅供参考