请教:非线性约束的最优化问题的MATLAB代码
<p>问题:max(-x1^2-x2)</p><p>s.t. x1^2+x2^2<= 9, x1+x2<1</p><p>请问如何书写解决这一问题的MATLAB代码?</p> <p>我回来给你啊 </p><p>我想想</p><p>很有趣</p> <p>function M=max()<br/>S=0;<br/>syms x1 x2;<br/>for x1=-3:0.001:3<br/> for x2=-3:0.001:3<br/> if (x1^2+x2^2<=9)|(x1+x2<=1) <br/> T=-x1^2-x2;<br/> if T>S S=T;<br/> end<br/> end<br/> end<br/>end<br/>M=S;</p><p>你试试,我已经测试过了!正确!<br/></p> <p>MODEL:<br/>MAX=-X1*X1-X2;<br/>X1*X1+X2*X2<9;<br/>X1+X2<1;<br/>@FREE(X1);<br/>@FREE(X2);<br/>END</p><p>这个是上个题目的lingo模型解法!</p><p> Local optimal solution found at iteration: 13<br/> Objective value: 3.000000</p><p><br/> Variable Value Reduced Cost<br/> X1 -0.2636344E-07 0.000000<br/> X2 -3.000000 0.000000</p><p> Row Slack or Surplus Dual Price<br/> 1 3.000000 1.000000<br/> 2 0.000000 0.1666667<br/> 3 4.000000 0.000000<br/>这个是report</p> <p>非常感谢!</p> 不错啊,正在学这个。。。。。。。。 好强大的所。。我们正在建模比赛··
页:
[1]