求大神帮写matlab优化程序,题目见下图:帮写个m文件,
来源:学生作业帮助网 编辑:六六作业网 时间:2025/02/01 04:58:12
求大神帮写matlab优化程序,题目见下图:帮写个m文件,
求大神帮写matlab优化程序,题目见下图:
帮写个m文件,
求大神帮写matlab优化程序,题目见下图:帮写个m文件,
使用约束优化函数fmincon求解.
记 x(1)=b,x(2)=h,x(3)=S
则目标函数为
f(x) = ( 10*x(1)*x(2) + x(3) ) / ( 10*x(1)*x(2) ) + 7.076E-3 / ( x(1)^3*x(2) )
线性不等式约束有
-x(3) <= -1.26E-4
1/4*x(1) - x(2) <=0
-x(2) <= -0.2;
即
A = [0 0 -1; 1/4 -1 0; 0 -1 0];
b = [-1.26E-4; 0; 0];
非线性等式约束有
x(1)^3*x(2)/x(3) - 2.612 = 0;
非线性不等式约束有
4.66E-4 - x(1)^2*x(2) <= 0;
参考代码如下:
function zd
A = [0 0 -1; 1/4 -1 0; 0 -1 0];
b = [-1.26E-4; 0; 0];
x0 = [0.1 0.1 0.1];
opt = optimset('Display', 'iter', 'MaxFunEvals', 1E5);
x = fmincon(@obj,x0,A,b,[],[],[],[],@nonlcon,opt)
function f = obj(x)
f = ( 10*x(1)*x(2) + x(3) ) / ( 10*x(1)*x(2) ) + 7.076E-3 / ( x(1)^3*x(2) );
function [c, ceq] = nonlcon(x)
c = 4.66E-4 - x(1)^2*x(2);
ceq = x(1)^3*x(2)/x(3) - 2.612;
求得结果:
Optimization terminated successfully:
Magnitude of directional derivative in search direction
less than 2*options.TolFun and maximum constraint violation
is less than options.TolCon
Active Constraints:
1
x =
0.5945 3.3500 0.2695
也就是,b=0.5945,h=3.3500,S=0.2695.