混合整数规划可以解决多少个决策变量?

时间:2016-03-16 05:18:46

标签: linear-programming cplex glpk integer-programming coin-or-cbc

我有一个混合整数规划问题(二进制整数变量),我可以解决多少变量,即上限和时间是多少?

该问题将具有最多5个约束和最小化成本函数,但变量采用m * n矩阵的形式。那么,问题是m和n的最大值是什么,也是完成计算所需的时间?

使用COIN CBC,GLPK,CPLEX,GUROBI等标准软件/库。

1 个答案:

答案 0 :(得分:1)

  

是否真的可以使用市场上的开源/商业解决方案来解决它?

简短回答:是的,有可能用数百万个决策变量来解决MIP问题。

<强>理论

通常,MIP是NP-hard problem,并且不能在多项式时间O(n ^ k)中求解。此外,非直截了当来确定MIP问题的输入“n”是什么。不是吗行,列或它们的产品,矩阵的性质A,决策变量的性质,MIP与宽松LP之间的差距?

如果IP公式(Ax = b),矩阵A是totally unimodular,并且所有系数都是整数,则LP松弛的解也是IP的解,因此问题的复杂性是的多项式

如果没有,那么在一般情况下你应该预期问题是NP难的。作为一个拇指规则,变量越多,约束越多,问题就越难。

<强>实践

MIP / LP解算器可以使用各种技术/算法在合理的时间内(以小时为单位)解决任何问题,特别是如果您不是在寻找“最佳”整数解决方案并且愿意接受最接近解决方案的解决方案。 / p>

  

没有固定的大小限制 - 即使在标准的笔记本电脑和台式电脑上,Gurobi Optimizer也会定期解决具有数百万变量和限制的模型。更重要的是,您可以在Gurobi的表现中看到结果,特别是在更大,更难的模型上。事实上,Gurobi最近解决了MIPLIB2010库中的11个模型,这些模型以前没有被任何其他求解器解决过。

来源:http://www.gurobi.com/products/gurobi-optimizer

特殊MIP问题

可以使用特殊技术来解决MIP的特殊情况。

我编写了简单的列生成算法来解决切割库存问题。见https://github.com/vcphub/cspsol