Gurobi,Python:如何在MIP中恢复双变量的值

时间:2017-03-25 19:09:17

标签: python-2.7 mathematical-optimization gurobi

我想应用列生成方法然后我想知道如何在MIP中恢复双变量的值。请帮帮我。



#!/usr/bin/python
# -*- coding: utf-8 -*-
from gurobipy import *

m = Model("M1")

x = m.addVar(vtype=GRB.CONTINUOUS, name="x")
y = m.addVar(vtype=GRB.CONTINUOUS, name="y")
m.update()

m.addConstr(30*x + 25*y <= 2110, name="c0")
m.addConstr(12*x + 17*y >= 350, name="c1")
m.update()

m.setObjective(100*x + 25*y , GRB.MAXIMIZE)
m.update()

m.optimize()

for c in m.getConstrs():
    print ('la contrainte num __%s, le cout reduit__%i')%(c.constrName,c.getAttr("Pi"))
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

MIP没有双重值。您有两种选择:

  1. 在LP放松上进行列生成
  2. 使用分支切割,这是一个复杂的过程,无法使用Gurobi Optimizer或CPLEX等商业解算器轻松实现