使用Gurobi在MIP中提取小时影子价格

时间:2017-07-07 10:10:41

标签: python gurobi mixed-integer-programming

我试图在我的MIP模型中提取特定约束的影子价格 - 并且正在使用Gurobi作为解算器。

当我建立约束时,我使用以下代码 -

# Balance Constraint for hour in hours: model.addConstr((quicksum(p[hour, i] for i in num_gen) + (quicksum(discharge[hour, i] for i in num_gen)) == demand[hour] + quicksum(charge[hour, i] for i in num_gen)), name="balance")

然后,在解决了MIP并优化了MIP的固定版本之后,我使用以下代码来提取需求约束的双重值。

demand_constr = fixed.getConstrByName("balance")

但是,上面只返回一个值,因为我期望应用此约束的每小时的影子价格。

也许这是对我的误解 - 但如果有人可以提供帮助,我将不胜感激!

1 个答案:

答案 0 :(得分:0)

调用Model.addConstr()时,保存Constr对象。更好的是,尝试Model.addConstrs(),它返回约束的Python字典。