首页 > 解决方案 > CPLEX:内存不足

问题描述

我在 CPLEX 12.9.0 上运行 MILP (OPL),并且出现错误“IBM ILOG Concert 异常:内存不足”。

我尝试在 32 GB RAM 系统上运行模型,但仍然出现错误。

现在,我不确定原因是否是编码?我真的需要帮助。谢谢你。

这些是我的附件文件。

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

标签: cplexopl

解决方案


我认为你的问题在于ct19:你有这个:

ct19: forall(p in plant, k1 in truck, k2 in truck : k1 != k2, j1 in jobs, j2 in jobs) //only one tuck can load RMC at the same plant/time
     {
        ...
        forall(p in plant, k1 in truck, k2 in truck : k1 != k2, j1 in jobs, j2 in jobs)
           ...
     }

您已经嵌套了这两个forall语句。这将导致所有这些指数的大量组合。我猜你不希望第二个forall嵌套到第一个中,而是在同一级别:

ct19: forall(p in plant, k1 in truck, k2 in truck : k1 != k2, j1 in jobs, j2 in jobs) 
     {
        ...
     }
ct19_2:
        forall(p in plant, k1 in truck, k2 in truck : k1 != k2, j1 in jobs, j2 in jobs) {
         ...
     }

请注意,其他一些约束似乎也遇到了同样的问题。


推荐阅读