Model.setAttr ()


Model.setAttr ()

setAttr(attrname, objects, newvalues)

更改属性的值。

使用两个参数调用此方法(例如,setAttr (attrname newvalue))来设置一个模型属性。

用三个参数调用它(例如,setAttr (attrname、对象newvalues))来设置模型对象列表或字典的属性值(Var对象,若干对象,等等)。要在第二个参数中为所有对象设置相同的值,可以在第三个参数中传递一个标量值。如果第二个参数是一个列表,那么第三个参数应该是一个相同长度的列表。如果第二个参数是一个dict,则第三个参数应该为第二个参数中的每个键指定一个值。

完整的可用属性列表可以在属性部分。

提出了一个AttributeError如果指定的属性不存在或无法设置。提出了一个GurobiError如果有什么问题模型对象。

注意,由于我们的惰性更新方法,更改实际上不会生效,直到您更新模型(使用Model.update),优化模型(使用Model.optimize),或者将模型写入磁盘(使用Model.write).

参数:

attrname:要设置的属性名称。

obj:模型对象列表(Var或Constr或…)

newvalue:属性需要的新值。

使用示例:

模型。setAttr(“objCon”,0)model.setAttr (GRB.Attr。ObjCon,0)模型。setAttr("LB", model.getVars(), [0]*model.numVars) model.setAttr("RHS", model.getConstrs(), [1.0]*model.numConstrs) model.setAttr("vType", model.getVars(), GRB.CONTINUOUS) model.objcon = 0