gpt4 book ai didi

java - 如何使用 JAVA Concert 在 CPLEX 中结合时间限制和间隙终止标准

转载 作者:太空宇宙 更新时间:2023-11-04 12:04:46 25 4
gpt4 key购买 nike

我正在解决 MIP 的非常大的实例,并且希望结合这两个终止标准。我知道如何单独和同时使用 timeLimit 和相对 MIP 间隙,即

cplex.setParam(IloCplex.Param.MIP.Tolerances.MIPGap, 0.1);
cplex.setParam(IloCplex.Param.TimeLimit, 3600);

对于几个例子,我想将这两个标准结合起来,两个标准有以下两个阶段:

  • 第 1 阶段:运行时间长达 1 小时(无间隙限制 => 求解最优)
  • 如果在前 1 小时内没有找到最佳解决方案:
  • 第 2 阶段:运行时间长达 5 小时(最多 4 小时)且间隙限制 = 0.1,即首先达到的任何限制都会终止搜索

我可以想到两种实现这一目标的方法:

  • 在模型中设置某些参数,以便在建议的两阶段方法中运行它
  • 使用默认值(即没有时间或间隙限制)开始优化,监控运行时间(如果 1 小时后仍在运行)=> 添加时间和间隙限制作为终止标准。

不幸的是,我不知道如何实现这些方法。

建议、其他想法?预先感谢您。

最佳答案

默认情况下,advanced start switch参数设置为 1。因此,对于第 1 阶段,您只需在初始时间限制下运行模型并检查 solution status当它完成时。然后,如有必要,更改参数并在第 2 阶段再次调用 solve()(即,CPLEX 将继续部分探索的 MIP 树)。

关于java - 如何使用 JAVA Concert 在 CPLEX 中结合时间限制和间隙终止标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40506164/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com