使用Pyomo和启发式求解器

时间:2017-11-08 08:16:53

标签: python optimization heuristics pyomo

我正在使用Pyomo来模拟我的优化问题(MILP)并使用Gurobi解决它。

使用Pyomo模型找到启发式解决方案的最佳,最快或最简单的方法是什么,知道我不关心Gap边界。

注意:我知道Gurobi有一个启发式求解器,但它并没有说明他们正在使用的启发式算法!

1 个答案:

答案 0 :(得分:1)

找到一些针对某些MILP问题的启发式解决方案的复杂性与优化它一样困难!

一般来说,没有最好,最快,最简单的方法。你总是想利用一些问题特征。

首先,只需使用任何MIP解算器并调整参数以反映您的需求。如果您只需要任何启发式解决方案,请调整求解器的可行性,这可能意味着更高频率的启发式步骤和早期停止的第一个可行解决方案。

是的,你不会知道Gurobi内部使用的是什么。但是,了解所有代码也无济于事。这肯定不是你可以在维基百科上找到的东西(除了feasibility pump R elaxation 等经典的东西, n eighborhood s earch)。

如果您想了解有关这些方法的更多信息,请查看有关MIP-heuristics的论文!你会看到,大多数启发式算法与问题的MIP性质紧密相关(尽管我希望在商业内部使用一些SAT解算器用法)。