QConstr
QConstr
Gurobi二次约束对象。二次约束总是与一个特定的模型相关联。通过向模型添加二次约束(使用Model.addQConstr),而不是使用QConstr
构造函数。
二次约束对象有许多属性。完整的名单可在属性本文档的一部分。一些约束属性只能查询,而其他的也可以设置。回想一下,Gurobi优化器使用了惰性更新方法,因此对属性的更改直到下一次调用时才生效Model.update,Model.optimize,Model.write在相关模型上。
我们应该指出关于二次约束属性的一些事情。考虑到qcrhs
属性。可以通过以下方式查询qconstr.qcrhs
.Gurobi库忽略了属性名称中的字母大小写,因此也可以将其查询为qconstr。QCRHS
.它可以使用标准赋值语句来设置(例如,qconstr.qcrhs= 0
).但是,正如前面提到的,属性修改是以惰性方式完成的,因此您不会立即看到更改的效果。并且一些属性不能被设置(例如qcpi
属性),因此尝试给它们赋新值将引发异常。
你也可以使用QConstr.getAttr/QConstr.setAttr访问属性。属性名可以作为字符串传递给这些例程,也可以使用伽马射线爆发。Attr类(例如,GRB.Attr.QCRHS
).
部分