通过减少类似约束的数量并使它们全部满足来制定大规模线性编程模型

时间:2016-08-31 16:14:31

标签: mathematical-optimization linear-programming

我想构建一个大型LP模型并由LP解算器解决。

模型公式:

 Max: sum of (constantValueP_i  * decVarX_i) from i=1 to  N
 s.t. 

     decVarT + sum of (decVarK_i ) from i=1 to I = N  <=  [sum of (constantValueP_i  * decVarX_i)  from i=1 to  N ] * constantQ

     [sum of (constantValueE_i  * decVarX_i)  from i=1 to  N ] <= [sum of (constantValueE_i )  from i=1 to  N ] * constantD

     decVarK_1 >= sum of (constantValue_1_i  * decVarX_i) from i=1 to  N - decVarT

     decVarK_2 >= sum of (constantValue_2_i  * decVarX_i) from i=1 to  N - decVarT
     …

    decVarK_L >= sum of (constantValue_L_i  * decVarX_i) from i=1 to  N - decVarT

  Decision variables: 
        decVarT , 0 <= decVarX_i <= 1, decVarK_i >= 0

问题在于,对于j = 1到L和L,decVarK_j的约束的数量可能非常大,例如, 100,0000。

这意味着它将在LP中有100,000个约束,我想避免它。

如何组合它们以便我可以减少LP模型的大小同时保持满足所有约束?

我在win 7 PC上使用解算器CLP(coin-or.org/Clp),内存为8GB。

0 个答案:

没有答案