我想构建一个大型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。