C++ 用于查找纯整数MIP的所有解的解算器软件
我有一组问题(方程组和不等式组),我知道所有变量都必须是整数,并且有有限多个解。我知道,如果我取任意一个随机目标函数,让一个lp或mip解算器对其进行求解,它会找到一个解决方案,但我希望问题的所有解决方案,当然,要尽可能有效。我并不真正关心优化任何东西,但显然大多数处理它的软件都是这样做的。有没有解算器可以做到这一点?如果是的话,哪一个是最好的/最简单的,或者你会推荐哪一个?充其量只能用作C/C++库。有一个功能,对于学术目的是免费的 我想,如果将最大池大小设置得足够大,您可能会得到所有解决方案。我不确定,从来没有尝试过。有一个功能,并且它是免费的,用于学术目的 我想,如果将最大池大小设置得足够大,您可能会得到所有解决方案。我不确定,从未尝试过。保罗·鲁宾(Paul Rubin)有一篇关于如何找到C++ 用于查找纯整数MIP的所有解的解算器软件,c++,c,integer,solver,C++,C,Integer,Solver,我有一组问题(方程组和不等式组),我知道所有变量都必须是整数,并且有有限多个解。我知道,如果我取任意一个随机目标函数,让一个lp或mip解算器对其进行求解,它会找到一个解决方案,但我希望问题的所有解决方案,当然,要尽可能有效。我并不真正关心优化任何东西,但显然大多数处理它的软件都是这样做的。有没有解算器可以做到这一点?如果是的话,哪一个是最好的/最简单的,或者你会推荐哪一个?充其量只能用作C/C++库。有一个功能,对于学术目的是免费的 我想,如果将最大池大小设置得足够大,您可能会得到所有解决方案
K
最佳解决方案的好书,可以很容易地将其推广到所有解决方案。正如Ali所建议的,其中一种方法是使用解决方案池。其他两种方法是:
K
最佳解决方案的文章,可以很容易地将其推广到所有解决方案。正如Ali所建议的,其中一种方法是使用解决方案池。其他两种方法是:
有关详细信息,请参阅。这是一个良好的开端,谢谢。我认为如果你想确保你有所有的解决方案,vitaut提到的博客文章是一个不错的选择。@Goens是的,我不知道那篇博客文章。这是一个好的开始,谢谢。我认为如果你想确保你有所有的解决方案,vitaut提到的博客文章是一种方式。@Goens是的,我不知道那篇博客文章。是的,这就是我想象的,你必须手动完成。我猜几乎所有使用解算器的人都只对一个最优解感兴趣。但是这个方法比我想的要好得多,我想的是通过不同的目标函数来尝试排气解决方案。谢谢你,这就是我想象的,你必须手动操作。我猜几乎所有使用解算器的人都只对一个最优解感兴趣。但是这个方法比我想的要好得多,我想的是通过不同的目标函数来尝试排气解决方案。谢谢