Model.addConstr ()


Model.addConstr ()

addConstr(constr, name="")

向模型添加约束。

此方法接受TempConstr作为第一个参数,并将约束名作为可选的第二个参数。您可以使用操作符重载来创建参数(参见本节详情)。这种方法允许您添加线性约束、矩阵约束、二次约束和一般约束。

参数:

若干TempConstr论点。

的名字:新约束的名称。请注意,的名字将被存储为ASCII字符串。因此,一个名字就像“一个< span > < /美元跨度> {\ rightarrow} < span > < / span >美元B”会产生一个错误,因为'< span > < /美元跨度> {\ rightarrow} < span > < / span >美元'不能被表示为ASCII字符。还要注意,不建议使用包含空格的名称,因为它们不能写入LP格式的文件。

返回值:

新的约束对象。这可以是若干,一个MConstr,或者一个QConstr,这取决于参数的类型。

使用示例:

模型。addConstr(x + y <= 2.0, "c1")模型。addConstr(x*x + y*y <= 4.0, "qc0") model.addConstr(x + y + z == [1, 2], "rgc0") model.addConstr(A @ t >= b) model.addConstr(z == and_(x, y, w), "gc0") model.addConstr(z == min_(x, y), "gc1") model.addConstr((w == 1) >> (x + y <= 1), "ic0")

警告
一个约束只能有一个比较操作符。而1 <= x + y <= 2可能看起来是一个有效的约束,addConstr不会接受它。