0

我想逐步解决线性规划问题,添加新约束并使用对偶单纯形法将其求解至最优。虽然它是在求解器内部完成的,但我无法在 GLPK、Clp 或 LPsolve 的 API 中找到它。

我正在解决一个带有矩形包装约束的 NP 完全问题。我使用具有线性松弛的自定义分支定界算法。混合整数编程是毫无疑问的:它添加了太多的变量 (n^2),不够紧凑,并且通常会做出错误的分支决策。我通过对添加的约束而不是布尔变量进行分支来解决问题。

我目前有一个手写求解器,它只处理有限的 LP 子集,并且想加强放松:我想使用一个真正的(开放的)LP 求解器。例如,GLPK 允许惰性约束,但似乎不允许分支,为每个问题添加不同的约束并在不破坏之前的基分解的情况下解决它们。

您将如何使用这些求解器中的任何一个正确地做到这一点?

谢谢

编辑 - 背景

我解决了硬运行时限制的问题,其中包括矩形包装约束。对于任何一对矩形,有四个析取约束,即 R2 的上/下/右/左 R1。
使用布尔变量(使用 big-M)对其进行建模,速度太慢(错误的分支选择 + 即使使用自定义分支也放慢速度较慢 + 可行解决方案之间存在大量冗余):我需要直接在析取约束上分支,这很好,但是我现在需要使用通用 LP 求解器,而不是我的自定义流求解器。

即在我想要的回调中

  1. 生成新节点而不在整数变量上分支
  2. 每个节点都有不同的新约束
4

0 回答 0