筛选日志记录

筛选日志记录

筛选有时会在双单纯x方法中使用,而不是Gurobi Optimizer的自动选择,或因为用户通过范围。筛选日志由三个部分组成:预定部分,筛选进度部分和摘要部分。第一个和最后一个与Simplex相同,所以我们只会在这里讨论中间部分。

筛选进度部分

如我们所提到的,在进度部分开始之前,筛选和双单位的输出都无法区分。对于筛选,进度部分开始于清楚地指示已选择筛选:

启动筛选(使用双重Simplex用于子问题)......
筛选算法执行许多主要迭代,其中每个迭代解决了较小的LP子问题。它使用结果更新当前原始和双解决方案。筛选日志每种重大迭代打印一行,其中有关当前原始和双目标值的信息:
ITER PIVOT PRIMAL OBJ双OBJ时间0 0 INFINITY 2.0000000E + 01 11S 1 4662 1.5220652E + 03 2.7034420E + 02 12S 2 8917 1.3127217C + 02 13S 3 16601 1.1650259C + 02 13S 3 16601 1.1651147C + 03 6.4767742C + 02 17S 4 300601.0881514E + 03 7.8842688E + 02 29s 5 45169 1.0618879C + 03 8.86568552 + 02 4.86S 6 59566 1.0549769S + 03 9.5404159E + 02 64S 7 73614 1.0546S 7 73614 1.0544S 7 73614 1.0544S 7 73614 1.0544S 7 73614 1.0544S 7 73614 1.0540577E + 03 1.0172213E + 03 1.0172213E + 03 82S
日志中的第一个列给出了主要的迭代号。第二个示出了解决筛选子问题时执行的单纯次迭代的总数。第三个和第四列显示了当前解决方案的原始和双目标值。最终列显示已过时的运行时。

筛选的完成用以下消息表示:

筛选完整
然后将通过筛选计算的基础交给双单简单,并且前向前的日志来自双单简单算法。