matlab最小值算法问题

2024-11-08 17:00:24
推荐回答(1个)
回答1:

给出键枣正的matlab最小值稿悔问题,可以用 fmincon()函数来求得。

首先,建立目标函数

function f =fmincon_fun(x)

f=。。。

end

其二,建立约束函数

function [c,ceq] = fmincon_con(x)

c(1)=[2*x(1)+x(3)+2*x(4)+x(5)+x(6)+2*x(9)-8];

c(2)=[2*x(2)+x(3)+2*x(4)+2*x(6)+x(7)+3*x(8)+x(9)-4];

ceq = [];

end

最后,用fmincon()函数求得最大值岩燃

x0=[0.70 0.95 0.20 0.76 0.25 0.19 0.20 0.05 0.02];

lb=[0.07 0.08 0.02 0.03 0.04 0.02 0.03 0.07  0.03];ub=[];

[x,fval,exitflag] = = fmincon(@(x) fmincon_fun(x),x0,[],[],[],[],lb,ub,@(x) fmincon_con(x),options);

运行结果