我知道CPLEX的内存已在论坛中进行了大量讨论。然而,没有他们可以解决我的问题。
我在Widnows 7,32位,3 GB机器上使用CPLEX通过C ++ Concert技术,我正在处理MIP问题。为了克服内存不足的问题,我设置了CPLEX建议的内存控制参数,如下所示:
cplex.setParam(IloCplex::NodeFileInd,2)
cplex.setParam(IloCplex::MemoryEmphasis,true)
cplex.setParam(IloCplex::WorkMem,1024)
cplex.setParam(IloCplex::TreLim,1024)
cplex.setParam(IloCplex::Threads,1)
cplex.setParam(IloCplex::VarSel,3)
我从CPLEX获得了如下日志:
Parallel mode: none, using 1 thread.
Root relaxation solution time = 9.97 sec.
Nodes Cuts/
Node Left Objective IInf Best Integer Best Bound ItCnt Gap
0 0 4.8000 290 4.8000 6031
Root node processing (before b&c):
Real time = 11.97
Sequential b&c:
Real time = 0.00
-------
Total (root+branch&cut) = 11.97 sec.
Warning: MIP starts not constructed because of out-of-memory status.
Error: CPLEX Error 1001: Out of memory.
据我所知,在工作目录中没有创建文件来编写树。我想知道是否有任何其他参数可以在文件启用时写入树。
任何评论都非常感谢。
答案 0 :(得分:0)
在我看来,它甚至没有进入分支机构。削减,但在此之前达到内存限制。如果它还没有启动B& C处理,它将不会处理任何节点,因此没有任何东西可以放入节点文件中?