GLPK 超时 (tm_lim) returns 找到最佳解决方案?
GLPK Timeout (tm_lim) returns best solution found?
我的实验(直接使用 C 库)建议使用 tm_lim 参数来限制 GLPK 在混合整数规划问题上花费的时间导致问题指针包含迄今为止找到的最佳解决方案.但是,我在文档中找不到对此的任何确认。超时计算是否总是将发现的最佳解决方案留在问题缓冲区中?
谢谢!
tm_lim
参数确实 return 根据我的轶事经验得出的最佳解决方案。我在文档中也找不到对此的验证,所以我查看了来源。
glpk 迭代一个循环,就地更新解决方案,直到满足四个终止条件之一(最佳解决方案、无界解决方案、时间限制、迭代限制)。一旦发生这种情况,glpk 将停止更新解决方案,并且 returns 是一个表示满足标准的值。
您可以在 https://ftp.gnu.org/gnu/glpk/glpk-4.35.tar.gz 中的 src/glpssx02.c
中的函数 ssx_phase_II
中验证这一点。查看对 tm_lim
.
的引用
最后一个理由是 --tmlim
命令行选项的文档:
--tmlim nnn limit solution time to nnn seconds (--tmlim 0 allows
obtaining solution at initial point)
通过 --tmlim 0
将 return 初始解决方案。
我的实验(直接使用 C 库)建议使用 tm_lim 参数来限制 GLPK 在混合整数规划问题上花费的时间导致问题指针包含迄今为止找到的最佳解决方案.但是,我在文档中找不到对此的任何确认。超时计算是否总是将发现的最佳解决方案留在问题缓冲区中?
谢谢!
tm_lim
参数确实 return 根据我的轶事经验得出的最佳解决方案。我在文档中也找不到对此的验证,所以我查看了来源。
glpk 迭代一个循环,就地更新解决方案,直到满足四个终止条件之一(最佳解决方案、无界解决方案、时间限制、迭代限制)。一旦发生这种情况,glpk 将停止更新解决方案,并且 returns 是一个表示满足标准的值。
您可以在 https://ftp.gnu.org/gnu/glpk/glpk-4.35.tar.gz 中的 src/glpssx02.c
中的函数 ssx_phase_II
中验证这一点。查看对 tm_lim
.
最后一个理由是 --tmlim
命令行选项的文档:
--tmlim nnn limit solution time to nnn seconds (--tmlim 0 allows
obtaining solution at initial point)
通过 --tmlim 0
将 return 初始解决方案。