yuansen 发表于 2016-1-11 22:16

matlab和lingo解线性规划问题,得出的解不一样,很疑惑,谁能解释下,多谢了

lingo程序
model:
min=x1+x2+x3+x4+x5;
x1+x2>=6;
x2+x3>=3;
x3+x4>=4;
x4+x5>=5;
end
结果:
Global optimal solution found.
Objective value: 11.00000

Variable Value Reduced Cost
X1 3.000000 0.000000
X2 3.000000 0.000000
X3 0.000000 1.000000
X4 5.000000 0.000000
X5 0.000000 0.000000

matlab程序:
f=;
A=[-1 -1 0 0 0;0 -1 -1 0 0;0 0 -1 -1 0;0 0 0 -1 -1 ];
b=[-6;-3;-4;-5];
=linprog(f,A,b,[],[],zeros(5,1))
结果:
Optimization terminated.
x =
2.1366
3.8634
0.0000
4.3090
0.6910
fval =
11.0000

wangzheng3056 发表于 2016-1-12 14:59

是不是lingo默认限制x1-5是整数啊,建议在lingo中加!@gin(x1);!@gin(x2);!@gin(x3);!@gin(x4);!@gin(x5);,这样matlab和lingo的解应该就一样了

math数学 发表于 2016-1-12 15:34

资料不错        

liwenhui 发表于 2016-1-12 17:20

说明这个线性规划存在多个最优解。LINGO搜索到一个,MATLAB搜索到另一个。

liwenhui 发表于 2016-1-12 17:20

说明这个线性规划存在多个最优解。LINGO搜索到一个,MATLAB搜索到另一个。

windows981 发表于 2016-3-27 07:54

同意楼上的观点
页: [1]
查看完整版本: matlab和lingo解线性规划问题,得出的解不一样,很疑惑,谁能解释下,多谢了