Pyomo 是不是支持生成多个解决方案?
Posted
技术标签:
【中文标题】Pyomo 是不是支持生成多个解决方案?【英文标题】:Does Pyomo support generation of multiple solutions?Pyomo 是否支持生成多个解决方案? 【发布时间】:2019-11-19 16:35:54 【问题描述】:我一直在使用 Gurobi 来解决 MILP 问题,并使用 Pyomo 来生成模型。 Gurobi 支持返回一个解决方案池,我希望能够使用这个池生成多个解决方案。 Pyomo 支持吗?
我尝试过使用 model.solCount 和 model.params.SolutionNumber,但我发现它适用于 gurobipy 模型,而不适用于 Pyomo 中的模型。
是否有可能以某种方式将这些解决方案加载(迭代)到模型中? 如果不是,我还有什么其他选择,如果我必须用 Pyomo 做这个?
【问题讨论】:
【参考方案1】:您应该能够使用 Gurobi 将解决方案文件写入磁盘的功能。只需将参数SolFiles 设置为某个名称,Gurobi 就会保存所有解决方案:
from pyomo.opt import SolverFactory
opt = SolverFactory('gurobi')
opt.options['Solfiles'] = 'solution'
【讨论】:
不返回多个最优解,它返回沿着最优路径找到的可接受变量值 您没有在问题中指定此条件。您需要为PoolSearchMode 使用不同的设置。以上是关于Pyomo 是不是支持生成多个解决方案?的主要内容,如果未能解决你的问题,请参考以下文章