Gurobi 最好在报告中绑定

Gurobi best bound in the reporting

我不明白 Gurobi 中 MIP 运行 的输出:我设置 MipGap = 0.005 和 TimeLimit = 20。

见第一个红框; 20 秒后,差距为 0.0062,大于 MIPGap,解算器因 TimeLimit 而停止。

然而,它报告了 0.004831 的差距(第二个红色框),小于 MIPGap。那么,为什么它之前没有停止呢?也许它在达到 TimeLimit 之前找到了最佳解决方案,但事实并非如此。即使我将 TimeLimit 减少到 15 秒,我也会得到完全相同的差距。

报告为最佳边界的 2.060000e+02 是什么(它从未出现在 BestBd 列中,但它已经在时间 10 出现在当前节点部分)。

因此,我了解如何从此处计算 0.0062 (http://www.gurobi.com/resources/getting-started/mip-basics),但我不了解如何解释 0.004831 值。我应该报告哪一个才能代表解决方案的质量?

谢谢

首先,通过将 TimeLimit 保留为默认值并再次求解,仔细检查您是否正确设置了 MIPGap。如果是这样,那么它看起来像是一个竞争条件:最后一个日志行出现在节点 2342,并且在节点 2360 停止之前有少量进展。这在时间限制下是正常的,这可能会产生不确定性。