matlab 中的fmincon 使用问题,急急急!!!结果运行不出,程序如下!!!!

2024-12-01 17:45:06
推荐回答(1个)
回答1:

你的约束条件:
A=[-1,0,0;1,0,0;0,-1,6;0,1,-8;0,0,-1;0,0,1]
b=[-15;-19;0;0;-19;32]
是不是:
x(1) >= 15 第1列
x(1) <= 19 第2列
x(3) >= 19 第5列
x(3) <= 32 第6列

将其整合到:
LB=[15,113,19];UB=[19,160,32];

此后:
A=[0,-1,6;0,1,-8];
b=[0;0];

........
完整代码(7.1以上版本)

lian = @(x) -37.57./((x(1)/19).^1.08.*(0.71332+0.0085.*x(2)./x(3)-(x(2)./x(3)).^2/3000));

A=[0,-1,6;0,1,-8];
b=[0;0];

LB=[15,113,19];UB=[19,160,32];

x0=[15,114,19]';

[x,fval,exitflag,output]=fmincon(lian,x0,A,b,[],[],LB,UB)