google-maps - 有一些限制的旅行推销员

标签 google-maps graph-algorithm traveling-salesman driving-directions

我正在尝试找到通过 A、B、C 和 D 点的最佳驾驶方式

有一些额外的限制 - 某些点必须在其他点之前达到。说 D 必须在 B 之前到达。换句话说,为某些点排序。

如果没有额外的限制,Google Maps apis 可以帮助解决这个问题。
是否有其他服务可以帮助解决此问题?有没有办法用我错过的谷歌地图 api 来做到这一点?

最佳答案

旅行商问题可以表述为 integer programming problem (此链接给出了一个公式)或 constraint programming problem ,因此您可以使用任何 MIP 或 CP 求解器,例如 CBCGecode使用您要添加的任何额外约束来解决 TSP 问题。但是,如果您需要在 Google Maps 上绘制结果,则必须使用 Google Maps API 手动完成。

如果您更喜欢基于 Web 的解决方案,那么您可以使用 NEOS server for optimization通过 XML-RPC API 提供对各种求解器的访问.作为一个额外的优势,此方法允许使用高级建模语言提交问题,例如 AMPL。而不是直接处理低级求解器 API。

关于google-maps - 有一些限制的旅行推销员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14971951/

相关文章:

ios - 如何在 swift 4 中使用 google api 计算两个位置之间的距离

algorithm - 删除后使图不再连通的最小顶点数

java - 内部路径长度

algorithm - 查找有向图中从源到所有顶点的所有最短路径

algorithm - 查找访问有向图的所有顶点恰好一次的路径

google-maps - Google Maps API v3 将 map 重新​​定位到标记

javascript - Google map 中自定义图 block 的背景图片

json - 如何快速从 "https://maps.googleapis.com/maps/api/place/nearbysearch/json? "获取 JSON 到数组

java - 使用队列求解TSP(Branch and Bound)