GRBModel.AddGenConstrXxx ()


GRBModel.AddGenConstrXxx ()

下面描述的每个函数都添加了一个新的一般的约束一个模型。

数学规划传统上定义了一组基本的约束类型:变量约束、线性约束、二次约束、完整性约束和SOS约束。这些通常由底层求解器直接处理(尽管并不总是),并且是整个算法的基础。手机万博登录

Gurobi接受许多附加的约束类型,我们将其统称为一般的约束.这些都是典型的由求解器直接处理。手机万博登录相反,它们是从上面列出的基本类型中选择的,通过预解转化为数学上等价的约束(和变量)集。这些一般约束是为了方便用户而提供的。如果这样的约束出现在您的模型中,但是如果您更喜欢自己使用基本约束类型来重新表述它们,那么您当然可以这样做。但是,请注意,Gurobi有时可以利用模型中其他约束中包含的信息来构建比您可能创建的更有效的公式。

属于此的其他约束类型一般的约束伞是:

  • MAX (AddGenConstrMax):设置一个决策变量等于一组决策变量中的最大值
  • 分钟(AddGenConstrMin):设置一个决策变量等于一组决策变量中的最小值
  • ABS (AddGenConstrAbs):设置一个决策变量等于另一个决策变量的绝对值
  • 和(AddGenConstrAnd):当且仅当一组二进制决策变量都为1时,设置一个二进制变量为1
  • 或(AddGenConstrOr):当且仅当二进制决策变量集合中至少有一个变量等于1时,设置一个二进制变量等于1
  • 指标(AddGenConstrIndicator):当给定的二进制变量取某个值时,必须满足给定的线性约束
请参考本节有关一般约束的更多细节。




部分