如何在 Gurobipy 中为索引变量设置不同的边界

How to set different bounds for indexed variable in Gurobipy

我正在尝试使用 Gurobipy 创建索引变量,如下所示:

m.addVars(5, vtype='I', name="x", lb = 0, ub = 1000)

如何为该变量中的每个单独元素设置新的下限和上限?

例如,第一个索引的 lb = 0 和 ub = 1000,第二个索引的 lb = 100 和 ub = 300,等等。

您可以传递下限和上限列表:

lbs = [0, 100, 200, 300, 400]
ubs = [1000, 300, 900, 900, 900]
x = m.addVars(5, name="x", lb=lbs, ub=ubs)

注意 lbsubs 也可以是 numpy 数组。