gpt4 book ai didi

algorithm - 如何使用 OSRM 计算单源最短路径?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:32:45 26 4
gpt4 key购买 nike

我一直在研究 OSRM最近的路由库。它似乎在解决最短路径问题方面非常有效。但是,我没有看到如何用它计算单源最短路径。更准确地说,给定一个固定的起点,计算在给定距离限制内可以到达的所有位置的最短距离(例如,在 30 分钟内到达)。

OSRM 在内部使用收缩层次结构。据我了解,在计算现实世界数据中两个位置之间的距离时,该技术优于 Dijkstra 算法。但是,对于我的问题,Dijkstra 的算法似乎更适合,不是吗?

OSRM 是否提供 API 来计算单源最短路径问题(有距离限制)?是否有其他更适合此类问题的免费路由库?最好是对 OpenStreetMap 数据有良好支持的。

最佳答案

OSRM 使用收缩层次结构 (CH) 来实现“一对一路由”的速度。要使 CH 正常工作,您需要一种经过调整的双向算法(A*、Dijkstra 等),因此单一来源的情况更加困难。但是,如果您预先知道所需的目的地,一对多算法就相对简单。

另请查看论文“Fast Detour Computation for Ride Sharing”或here如果您想要一个使用查找表的“非目标导向的双向搜索”解决方案。

other free routing libraries?

我会推荐我的 Java GraphHopper 项目;)

但当然还有更多:http://wiki.openstreetmap.org/wiki/Routing

关于algorithm - 如何使用 OSRM 计算单源最短路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14090954/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com