Julia-JuMP 在子问题中重用优化约束

Julia-JuMP Reuse Optimisation Constraints In A Subproblem

我正在 JuMP 中编写一个 MILP,并且正在实现一个本地分支搜索启发式回调,该回调在回调中执行第二个优化问题。我希望它只在主优化问题的建议解决方案附近搜索解决方案。这个高手问题还有一个单独的惰性约束例程。

有没有办法从主求解器中提取问题约束?特别是,是否可以获得一份迄今为止从主问题生成的惰性约束的副本以用于子问题?

感谢您的帮助。

p.s。如果有任何不同,我正在使用 CPLEX 求解器

原来我挣扎的原因是这不是正确的方法! CPLEX 有一些复杂的选项,用于在分支和剪切过程中生成 subMILP,同时仍保持原始 MILP 的剪切池。

CPLEX 实现了本地分支搜索试探法。可以通过将 CPX_PARAM_LBHEUR 标志设置为 1(默认值为 0)来打开它。

m = Model(solver=CplexSolver(CPX_PARAM_LBHEUR = 1))

我从 CPLEX 的 ILOG 时代找到了一组 slides 讨论局部分支和松弛诱导邻域搜索 (RINS) 搜索启发式(也可以通过适当的标志获得)。