Gurobi python获取定义变量的值

时间:2013-05-08 09:15:45

标签: python mathematical-optimization linear-programming gurobi

如何在gurobi python中获取我之前定义的变量(使用addVar)的值?我需要比较gurobi变量的值,然后执行计算以达到我的目标变量。在优化之前必须做同样的事情。

2 个答案:

答案 0 :(得分:8)

您有两种选择。最直接的方法是保存对Model.addVar返回的Var对象的引用。另一种方法是使用addVar中的name参数为变量命名,然后使用Model.getVarByName检索变量。

from gurobipy import *
a_var = m.addVar(name="variable.0")
# ...
a_var_reference = m.getVarByName("variable.0")
# a_var and a_var_reference refer to the same object
m.optimize()
#obtain the value of a_var in the optimal solution
if m.Status == GRB.OPTIMAL:
   print a_var.X

答案 1 :(得分:0)

打印(z [a] .x)

使用属性X获取特定索引变量的值。在我的示例中,z是变量,a是索引,而.x是属性。