我将Pulp与Python配合使用来解决优化问题。
我在用
import pulp
# code
pulp.prob.objective.value()
现在,我想访问优化变量。这该怎么做?
在documentation of Pulp中,我发现了类似
use_vars[i].varValue
的内容,但我应该循环获取整个矢量。我可以像客观值(value)一样直接得到它吗?有谁熟悉 PuLP 吗? 最佳答案
要获得整个优化向量,您可以执行
pulp.prob.variables()
这将返回所有变量的列表。要访问列表中的第i个元素或第i个变量,您必须
pulp.prob.variables()[i].varValue
您可以在类似的函数中返回目标值和变量
return pulp.prob.objective.value(), pulp.prob.variables()
然后使用for循环访问变量
varsdict = {}
for v in prob.variables():
varsdict[v.name] = v.varValue
最终结果将是一个字典
varsdict
,看起来像varsdict = {'x_10': 0.0, 'x_0': 1.0, ...}
关于python - 如何使用Python在Pulp中获得最佳优化变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35464931/