我一直在使用Gurobi解决MILP问题,并使用Pyomo生成模型。 Gurobi支持返回解决方案池,我希望能够使用此池生成多个解决方案。 Pyomo支持吗?
我尝试使用model.solCount和model.params.SolutionNumber,但是我发现它适用于gurobipy模型,而不适用于Pyomo中的模型。
是否可以以某种方式(迭代地)将这些解决方案加载到模型中? 如果不是这样,如果我必须与Pyomo一起使用,我还有其他选择吗?
答案 0 :(得分:1)
您应该能够使用Gurobi的功能,将解决方案文件写入磁盘。只需将参数SolFiles设置为一些名称,Gurobi将保存所有解决方案:
from pyomo.opt import SolverFactory
opt = SolverFactory('gurobi')
opt.options['Solfiles'] = 'solution'