全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
2105 5
2012-08-20
今天试着用linprog函数解张伯生版运筹学第一章“飞乐公司”那个案例。
目标函数:maxZ=-15x1+25x2+15x3+-30x4+10x5-40x7-10x9
约束条件:-0.5x1+0.5x2+0.5x3<=0
-0.25x1+0.75x2-0.25x3<=0
-0.75x4+0.25x5-0.25x6<=0
-0.5x4+0.5x5-0.5x6<=0
x1+x4+x7<=100
x2+x5+x8<=100
x3+x6+x9<=60
x1……x9>=0
我写的代码:
c=[-15;25;15;-30;10;0;-40;0;-10];
a=[-0.5,0.5,0.5,0,0,0,0,0,0;
     -0.25,0.75,-0.25,0,0,0,0,0,0;
     0,0,0,-0.75,0.25,0.25,0,0,0;
     0,0,0,-0.5,0.5,-0.5,0,0,0;
     1,0,0,1,0,0,1,0,0;
     0,1,0,0,1,0,0,1,0;
     0,0,1,0,0,1,0,0,1];
b=[0;0;0;0;100;100;60];
[x,fval]=linprog(-c,a,b,[],[],zeros(9,1))
输出结果是:
x =
  100.0000
   50.0000
   50.0000
    0.0000
    0.0000
    0.0000
    0.0000
   25.0000
    0.0000
fval = -500.0000
结果是总利润,不应该是负的啊。书上结果是3400。请教一下我是哪儿出错了?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-11-16 20:13:57
楼主后来找到原因没有
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-17 15:54:28
shiyuhan14 发表于 2016-11-16 20:13
楼主后来找到原因没有
-500是-c=500,利润即为500,数值不对的原因可能是楼主系数抄写错误,如第三个限制条件就抄写错了,不排除其他错误
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-17 16:27:08
lixuewei3 发表于 2016-11-17 15:54
-500是-c=500,利润即为500,数值不对的原因可能是楼主系数抄写错误,如第三个限制条件就抄写错了,不排除 ...
谢谢楼主
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-17 17:12:42
shiyuhan14 发表于 2016-11-17 16:27
谢谢楼主
我不是楼主,路人
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-11-17 17:47:51
lixuewei3 发表于 2016-11-17 17:12
我不是楼主,路人
哈  我还在想楼主怎么还会看4年前的帖子
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群