![](/img/trans.png)
[英]AttributeError: 'LpAffineExpression' object has no attribute 'solve', Error in Pullp
[英]'LpAffineExpression' object has no attribute 'solve' in pulp Lp problem- Optimization
import pulp as p
import numpy as np
a1=np.array([1000,2000,3000,7000,8000,13000,223000,32000,35000,369000,38000,3885000])
x=p.LpVariable('x', lowBound=5000, cat='Continuous')
y=p.LpVariable('y', lowBound=8000,cat='Continuous')
Lp_prob=(((y-x)*1.3+x)*0.014428)+((a1-y)*1.5*0.014428)
Lp_prob.solve()
我尝试在纸浆中进行线性规划。 但是我有'LpAffineExpression' 对象没有属性 'solve'错误。
我该如何解决? 谢谢。
我建议首先研究这个例子: https : //www.coin-or.org/PuLP/CaseStudies/a_blending_problem.html 。 它具有涵盖您的示例的所有成分。
所以一个工作模型看起来像:
import pulp as p
import numpy as np
a1=np.array([1000,2000,3000,7000,8000,13000,223000,32000,35000,369000,38000,3885000])
x=p.LpVariable('x', lowBound=5000, cat='Continuous')
y=p.LpVariable('y', lowBound=8000,cat='Continuous')
Lp_prob = p.LpProblem("This_Example_Works",p.LpMaximize)
Lp_prob += (((y-x)*1.3+x)*0.014428)+((a1-y)*1.5*0.014428)
Lp_prob.solve()
print("Status:", p.LpStatus[Lp_prob.status])
请注意,PuLP 将其解释为:
MAXIMIZE
-0.0043284000000000005*x + -0.24094759999999996*y + 99899.472
VARIABLES
5000 <= x Continuous
8000 <= y Continuous
非常奇怪的构造a1-y
在这里被解释为sum(a1-y)=sum(a1)-n*y
其中n=a1.size
。 我建议不要在 PuLP 模型中以这种方式使用 NumPy 数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.