Model 类
详情参见 PySCIPOpt online documentation ,这里只记录部分函数及其参数作用
函数 | 功能 | 参数说明 |
---|---|---|
Model( problemName='model' ) |
创建模型对象 | problemName 模型名称 |
Model.addCons( cons, name='' ) |
添加一条约束 | cons 约束对象;name 约束名称 |
Model.addConss( conss, name='' ) |
添加多条约束 | conss 存放约束对象的可迭代对象; name 传入字符串后会自动生成’_’+枚举索引的后缀 |
Model.addConsAnd( vars, resvar, name="ANDcons" ) |
添加AND 约束 | vars 被AND连接的0-1变量; resvar 该0-1变量的值将等于其他变量的AND连接;例如:y =and( x1, x2, x3)表示只有当 x1, x2, x3同时为1时,y才可以为1,建模为 model.addConsAnd(y, [ x1, x2, x3], "ANDcons") |
Model.addConsOr( vars, resvar, name="ORcons" ) |
添加OR约束 | vars 被OR连接的0-1变量; resvar 该0-1变量的值将等于其他变量的OR连接;例如:y =OR( x1, x2, x3)表示当 x1, x2, x3至少有一个变量为1时,y为1,当所有变量为0时,y为0;建模为 model.addConsOr(y, [ x1, x2, x3], "ORcons") |
Model.addConsIndicator( cons, binvar=None, activeone=True, name="IndicatorCons" ) |
添加indicator约束 | cons : 线性不等式 ( ≤ \leq ≤); binvar :0-1 indicator 变量;activeone :indicator 为1时约束成立;indicator约束 z = f → a T x ≤ b z = f \rightarrow a^Tx \leq b |