不生成单独约束的变量的 Gurobi 影子价格

Gurobi shadow price of a variable without generating separate constraint

本文关键字:Gurobi 影子 变量 单独 约束      更新时间:2023-10-16

Gurobi 9.0.0//C++

我试图在不明确为变量生成约束的情况下获取变量的影子价格。

我通过以下方式生成变量:

GRBModel* milp_model
milp_model->addVar(lb, up, type, 0, name)

现在我想得到这些变量的影子价格(双价(。

我发现这篇文章说,对于"变量上下限的线性程序,即 l ≤ x ≤ u" [...]"Gurobi 提供了 x 的降低成本,对应于 sl+su"。

为了获得约束的影子价格,可以使用Pi约束属性根据以下答案(python但相同的想法(使用GRB函数。

返回前面提到的变量的 x/影子价格的降低成本的 GRB 函数是什么?

我尝试了gurobi_var.get(GRB_DoubleAttr_Pi)适用于gurobi_constr.get(GRB_DoubleAttr_Pi)

但它返回:Not right attribute. Error code = 10003

谁能帮我解决这个问题?

我想你指的是变量成本的降低。您可以通过变量属性RC获取它们,如此处所述。然后,您需要弄清楚这些双重值是否对应于此处讨论的上限或下限。