线性优化不适用于上限

时间:2018-01-19 09:06:33

标签: optimization scipy

我试图用scipy linprog最小化目标函数。它在均衡条件下工作良好,但是如果我定义上限就失败了。我尝试了几件但是无法解决问题。这是代码:

c=[0.9,0.25,0.,1.25,4.5,0]
AUB=[[0.99,0.001,0.043,0,0,0.031],[0,0.001,0.01,0.7,0,0.0185],
[0,0,0,0,0.99,0.0045],[1,1,1,1,1,1]]
AEQ=[[0.99,0.001,0.043,0,0,0.031],[0,0.001,0.001,0.7,0,0.0185],
[0,0,0,0,0.99,0.0045],[1,1,1,1,1,1]]
BUB=[3.2,1.85,0.5,100]
BEQ=[2.9,1.5,0.0,100]
res=linprog(c,A_ub=AUB,b_ub=BUB,A_eq=AEQ,b_eq=BEQ,options={"disp":True})

如果我使用此代码更改最后一行

res=linprog(c,A_eq=AEQ,b_eq=BEQ,options={"disp":True})

或者这个

res=linprog(c,A_eq=AEQ,b_eq=BUB,options={"disp":True})

我得到3个不同的目标函数值。但是minumun是第3个。它应该为第1个函数给出这个结果,不应该吗?

有任何帮助吗?感谢

0 个答案:

没有答案