0

我正在尝试为我的 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")

然而,上面只返回一个值,正如我所期望的那样,应用此约束的每小时都有一个影子价格。

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

4

1 回答 1

0

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

于 2017-07-10T22:22:40.880 回答