我最近一直在玩OSRM路由库。它似乎在解决最短路径问题方面非常有效。但是,我没有看到如何用它计算单源最短路径。更准确地说,给定一个固定起点,计算在给定距离限制内(例如,30 分钟内可到达)到所有位置的最短距离。
OSRM 在内部使用收缩层次结构。据我了解,在计算现实世界数据中两个位置之间的距离时,这种技术要优于 Dijkstra 算法。但是,对于我的问题,Dijkstra 的算法似乎更适合,不是吗?
OSRM 是否提供 API 来计算单源最短路径问题(有距离限制)?还有其他更适合此类问题的免费路由库吗?最好是对 OpenStreetMap 数据有良好支持的一种。