高分悬赏:最优化问题,用matlab求最小值

目标函数f=(2x(1)+3x(2)+9x(3))/(3x(1)+5x(2)+8x(3))约束条件:x(1)>=0;X(2)>=0;x(3)>=0;x(1)+x(2)+x... 目标函数f=(2x(1)+3x(2)+9x(3))/(3x(1)+5x(2)+8x(3))
约束条件:x(1)>=0;
X(2)>=0;
x(3)>=0;
x(1)+x(2)+x(3)>0;
约束条件意思即是三变量均是大于等于0的整数,但是三者不能同时为0;
先需用matlab求目标函数最小值以及对于三变量的值,请给出代码,谢谢!!!好使追加分!
展开
伍拾步
2011-05-23 · TA获得超过8199个赞
知道大有可为答主
回答量:1852
采纳率:100%
帮助的人:1915万
展开全部
用lingo求解比较简单。。。。

用x1,x2,x3分别表示x(1),x(2),x(3)
因为lingo默认变量非负,所以在lingo中x(1)>=0;X(2)>=0;x(3)>=0;可省略不写,
有目标函数分母不为零,即约束x1,x2,x3不得同时为零,所以x(1)+x(2)+x(3)>0;也可省略不写。
综上最后的lingo代码就剩简单的一句,如下

min=(2*x1+3*x2+9*x3)/(3*x1+5*x2+8*x3);

结果:
目标函数最小值为0.6,
x1=x3=0,x2可取任意非零数
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式