ORTOOLS中的多个MILP解决方案[python]

时间:2020-08-06 20:46:35

标签: python optimization or-tools scip mixed-integer-programming

我正在尝试在Python中使用or-tools解决具有多个最佳解决方案的混合整数线性程序。但是,bytearray总是返回NextSolution(),因此我不能检索多个解决方案。我知道该函数可以使用约束求解器,但我想使用MILP求解器。

相关的or-tools documentation状态:

自2020年2月10日起,仅Gurobi和SCIP支持NextSolution(),有关如何为多个解决方案配置这些求解器的示例,请参见linear_solver_interfaces_test。其他求解器无条件返回false。

但是,我在源存储库,文档或通过Web搜索中找不到任何此类linear_solver_interfaces_test。我正在使用ortools版本7.8.7959和随附的SCIP 7.0.1和Python 3.6.9。

下面是我的示例代码,它说明了我要解决的类型的简单示例。它应该产生三个唯一的解决方案,但目前产生零个解决方案。

False

1 个答案:

答案 0 :(得分:2)

很抱歉提供误导性文档。 当前,只有Gurobi支持NextSolution。我尚未导出SCIP相关代码。

如果您的问题仅需要布尔值或整数变量,则可以使用支持枚举多个解决方案的CP-SAT(或工具/卫星)求解器。

请参阅此documentation

相关问题