我试图用scipy和线性规划来解决一个有很多变量的问题。我有一组变量X,它是0.5到3之间的实数,我必须解下列方程:346 <= x0*C0 + x1*C1 + x2*C2 +......xN*CN <= 468
25 <= x0*p0 + x1*p1 + x2*p2 +......xN*pN <= 33
12 <= x0*c0 + x1*c1 + x2*c2 +......xN*cN <= 17
22 <= x0*f0 + x1*f1 + x2*f2 +......xN*fN <= 30
数字C0…CN,p0…pN,C0…CN,f0…fN已经给我了。我试图通过以下方式解决这个问题:
^{pr2}$
方程的解释A_ub的第一行与b_ub相同,因为我们试图使方程最大化,并确保它在给定的边界范围内,即468和346,这意味着我希望得到的值尽可能接近上限。在
我把[-34, -56, -32, -21, -24, -16, -19, -22, -30, -27, -40, -33]放在A_ub中,-346放在b_ub中,逻辑如下:
-346 > -(x0*C0 + x1*C1 + x2*C2 +......xN*CN)这将解决方程的下界问题。我对其他人也一样。在
但我觉得我的方法是错误的,因为我得到的答案是0.425代表{},而{}是{}的值
x的上限为3,下限为0.5
如何定义如上所示的问题,以获得接近468的最大值,同时记住上限?如何使用scipy定义下限?我是第一次研究线性规划,所以我可能错过了一些可以帮助我的想法。在
我也愿意接受任何其他的解决办法。在