CPLEX + JAVA内存问题,保留最后找到的解决方案

问题描述 投票:0回答:1

我有以下问题:我的CPLEX模型遇到内存不足错误(1001)。这是预料之中的,但是我想保留最后的解决方案(现有和空白以及所有变量值)。

try {
    if (cplex.solve()) {
         //feasible and ran without memory issues
    } else {
         //infeasible
     }
} catch (IloException e) {
     e.printStackTrace();
     //memory issues end up in here
}​

问题是,我最终进入了catch部分,在这里我不再保留任何变量值,目标函数值等。有没有变通办法可以帮助我获得最后找到的解决方案?谢谢!

java memory cplex
1个回答
0
投票

而不是

cplex.solve() 

在尝试中,您可以使用一个循环

cplex.setParam(IloCplex.Param.MIP.Limits.Solutions, 1);
cplex.solve();

然后您将一一获得解决方案。如果您在最后一个崩溃,则可以拥有上一个。

© www.soinside.com 2019 - 2024. All rights reserved.