我有以下问题:我的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部分,在这里我不再保留任何变量值,目标函数值等。有没有变通办法可以帮助我获得最后找到的解决方案?谢谢!
而不是
cplex.solve()
在尝试中,您可以使用一个循环
cplex.setParam(IloCplex.Param.MIP.Limits.Solutions, 1);
cplex.solve();
然后您将一一获得解决方案。如果您在最后一个崩溃,则可以拥有上一个。