GRBModel::AddGenconStringIndicator()


GRBModel::AddGenconStringIndicator()

添加类型为的新常规约束GRB\u发电商TR\u指示器一个模特。

指标约束<span>$</span>z=f\rightarrow a^Tx\leq b<span>$</span>表示如果二进制指示符变量<span>$</span>z<span>$</span>等于<span>$</span>f\in\{0,1\}<span>$</span>,然后是线性约束<span>$</span>a^Tx\leq b<span>$</span>应该保持,另一方面,如果<span>$</span>z=1-f<span>$</span>,可能会违反线性约束。线性约束的意义也可以指定为<span>$</span>=<span>$</span><span>$</span>\geq<span>$</span>.

请注意,指示符变量<span>$</span>z<span>$</span>约束的类型将强制为二进制;与它的创建方式无关。

多个签名可用。

GRBGenConstr addGenConstrIndicator( 格尔瓦 宾瓦尔,
int 宾瓦尔,
常量GRBLinExpr& expr,
烧焦 感觉
双重的 rhs,
一串 名称=”)
    论据:

    宾瓦尔:二进制指示符变量。

    宾瓦尔:将强制满足线性约束的二进制指示符变量的值(<span>$</span>0<span>$</span><span>$</span>1<span>$</span>).

    expr:指示器触发的线性约束的左侧表达式。

    感觉:线性约束的意义。选项包括GRB_小于等于,GRB_相等GRB_大于等于.

    rhs:线性约束的右侧值。

    名称(可选):新常规约束的名称。

    返回值:

    新的一般约束。

GRBGenConstr addGenConstrIndicator( 格尔瓦 宾瓦尔,
int 宾瓦尔,
常量grbtempcontr& 施工,
一串 名称=”)
    论据:

    宾瓦尔:二进制指示符变量。

    宾瓦尔:将强制满足线性约束的二进制指示符变量的值(<span>$</span>0<span>$</span><span>$</span>1<span>$</span>).

    施工:定义由指示器触发的线性约束的临时约束对象。临时约束对象是使用重载比较运算符创建的。看见GRBTempcontr了解更多信息。

    名称(可选):新常规约束的名称。

    返回值:

    新的一般约束。