用于查找纯整数MIP的所有解的求解器软件

时间:2012-09-26 23:49:36

标签: c++ c integer solver

我有一系列问题(方程组和不等式),我知道所有变量都必须是整数,并且有很多解。我知道如果我使用任何随机目标函数并让lp或mip求解器进入它,它会找到一个解决方案,但我想要所有解决问题的方法,以及当然,尽可能有效。我并不真正关心优化任何东西,但显然大多数处理它的软件都可以。有没有能解决这个问题的解决方案?如果是这样,哪一个是最好的/最简单的,或者你推荐哪一个?最多可以用作C / C ++库。

2 个答案:

答案 0 :(得分:0)

IBM ILOG CPLEX具有solution pool功能,并且可以免费用于学术目的。

如果您将最大池大小设置得足够大,我猜您可能会获得所有解决方案。我不确定,从未尝试过。

答案 1 :(得分:0)

Paul Rubin对如何找到K最佳解决方案有一个很好的blog post,可以很容易地推广出来以获得所有解决方案。正如Ali所说,其中一种方法是使用解决方案池。另外两种方法是:

  1. 使用现有的回叫来跟踪和拒绝解决方案。
  2. 使用溶液注射的现任回调。
  3. 有关详细信息,请参阅blog post