Googles OR-Tools Modules for CSP 和 VRP 使用哪个求解器?

Posted

技术标签:

【中文标题】Googles OR-Tools Modules for CSP 和 VRP 使用哪个求解器?【英文标题】:Which solver do Googles OR-Tools Modules for CSP and VRP use? 【发布时间】:2019-11-29 02:15:33 【问题描述】:

我目前正在评估 google 或工具,只是注意到它本身并不是真正的求解器,而主要是与其他求解器的接口。我想知道的是这个框架使用哪些求解器来解决约束和路由问题。

我已经通过https://developers.google.com/optimization/彻底查看了,但才发现

使用 Google 的“内部开源 GLOP”进行线性优化 似乎使用了自己的求解器来优化网络流(“OR-Tools 在其图形库中为网络流问题提供了多个求解器。”) 对于混合整数编程,默认使用开源程序“COIN OR branch&cut”(但可以集成 SCIP、GLPK 和 Gurobi)

但在 CP 和 VRP 信息/指南网站上,并没有说明使用什么求解器来解决这些问题...

有没有人碰巧知道 CSP / VRP 使用了哪个求解器,或者您是否发现了我过度阅读的内容?

【问题讨论】:

【参考方案1】:

这在邮件列表/github问题上得到了多次回答:

路由库使用 CP 求解器,顶部有本地搜索实现。看到这个Github issue

CP-SAT 求解器在 SAT 求解器之上使用惰性子句生成求解器。最好的描述是来自 Peter Stuckey 的名为 Search is Dead 的演示文稿。 YouTube 上还有一个 CPAIOR 大师班的视频。 https://youtu.be/lmy1ddn4cyw

【讨论】:

以上是关于Googles OR-Tools Modules for CSP 和 VRP 使用哪个求解器?的主要内容,如果未能解决你的问题,请参考以下文章

php 我创建的缩小php脚本,以最大限度地提高Googles页面速度得分

OR-Tools:有利润的 TSP

Googles的QR码生成api不起作用

如何在 or-tools 中定义复杂的目标函数?

OR-Tools:向最小成本流类添加约束?

or-tools:将 BoundIntegerExpression 转换为 IntegerExpression