首页 > 解决方案 > Pyomo 是否支持生成多个解决方案?

问题描述

我一直在使用 Gurobi 来解决 MILP 问题,并使用 Pyomo 来生成模型。Gurobi 支持返回一个解决方案池,我希望能够使用这个池生成多个解决方案。Pyomo 支持这个吗?

我尝试过使用 model.solCount 和 model.params.SolutionNumber,但我发现它适用于 gurobipy 模型,而不适用于 Pyomo 中的模型。

是否有可能以某种方式将这些解决方案加载(迭代)到模型中?如果不是,我的其他选择是什么,如果我必须用 Pyomo 做这个?

标签: gurobipyomo

解决方案


您应该能够使用 Gurobi 将解决方案文件写入磁盘的功能。只需将参数SolFiles设置为某个名称,Gurobi 就会保存所有解决方案:

from pyomo.opt import SolverFactory
opt = SolverFactory('gurobi')
opt.options['Solfiles'] = 'solution'

推荐阅读