Why does linprog gives wrong answer?
显示 更早的评论
Hi! My LP problem:
f=[-7 -5];
A=[2 3; 2 1; 0 3; 3 0];
b=[25 20 18 15];
linprog(f, A, b)
I've got:
ans =
5.0000
5.0000
But if I calculate it "by hands" I should've got ans=[5;10]. And my f should be =85 unstead of 60.
Why does it count wrong?
回答(1 个)
the cyclist
2015-3-14
0 个投票
I think your hand calculation is incorrect. x1=5 and x2=10 does not obey the first constraint, which requires that 2*x1 + 3*x2 <= 25.
1 个评论
Titus Edelhofer
2015-3-14
You are right:
x = [5;10];
[A*x b']
ans =
40 25
20 20
30 18
15 15
In other "words":
A*x<=b'
ans =
0
1
0
1
Titus
类别
在 帮助中心 和 File Exchange 中查找有关 Linear Programming and Mixed-Integer Linear Programming 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!