Python 具有不同选项的求解器并行求解优化问题

Python 具有不同选项的求解器并行求解优化问题,python,multiprocessing,python-multiprocessing,pyomo,nonlinear-optimization,Python,Multiprocessing,Python Multiprocessing,Pyomo,Nonlinear Optimization,我在Pyomo中有一个优化模型,它是用SolverFactory解决的: Solver = pyo.SolverFactory('ipopt') result = Solver.solve(model) 由于我的问题是令人遗憾的非线性问题,我一直在尝试不同的解算器选项,我注意到“hessian近似”选项会产生不同,有时会快速产生“精确”设置的局部最优,但有时会失败并产生“有限内存”的局部最优。 我考虑的是并行化流程-->使用两个具有不同选项的并行解算器运行模型,并在一个成功时中断另一个(通

我在Pyomo中有一个优化
模型
,它是用SolverFactory解决的:

 Solver = pyo.SolverFactory('ipopt')
 result = Solver.solve(model)
由于我的问题是令人遗憾的非线性问题,我一直在尝试不同的解算器选项,我注意到“hessian近似”选项会产生不同,有时会快速产生“精确”设置的局部最优,但有时会失败并产生“有限内存”的局部最优。 我考虑的是并行化流程-->使用两个具有不同选项的并行解算器运行模型,并在一个成功时中断另一个(通常一个设置无法找到解决方案,而另一个可以,反之亦然)

我想问一下怎么做。我找到了一些关于多处理库和如何进行并行化的信息……它是有效的,但我在我的案例中遇到了三个要点:

  • 如何并行运行解算器,以便使用不同的选项
  • 当一个进程成功时,如何打破另一个进程
  • 如何在并行运行之外保存成功流程的结果
谢谢