Dijkstra算法在OSM网络中根据旅行时间进行加权

基于旅行时间加权的Dijkstra算法在OSM网络中的应用

使用 OSMNX 1.6 查找最快和最短路径

由作者提供的图像。摩洛哥示例中的最快路线(红色)和最短路线(橙色)

最短路径(迪杰斯特拉算法)可以应用于OSM网络,如驾驶、骑行和步行,以找到起点和目的地之间最优的路径。但是,该算法根据距离计算网络中的最短路径,这并不意味着最优路径。在考虑道路速度时,路网上的距离可以是相对的。当所有道路速度相等时,两点之间的最优路径可能是最短路径。但是,如果将高速公路的速度与城市街道进行比较,我们将重新理解这个观念,认识到最优路径是最快的。

“在考虑道路速度时,路网上的距离可以是相对的”

通过Python库OSMNX,可以在全局范围内为不同类型的道路添加速度,并计算OSM网络中节点之间的行程时间。这使得Python库能够根据行程时间加权处理最短路径算法。

本实践是之前一个教程的延续,该教程使用最短路径算法计算摩洛哥两个位置之间的最短路径。

摩洛哥OSM网络中的最短路径

最短路径(迪杰斯特拉算法)逐步Python指南

使用OSMNX 1.6和长距离路径的更新

towardsdatascience.com

访问编码教程

如果你还不是VoAGI的成员,你需要订阅才能访问这些故事。你可以通过使用我的个人链接加入,并继续跟踪更多编码教程并支持我的工作。一起加入这个编码之旅。

点击此处加入 👉 https://bit.ly/3yjLsSL

OSM数据许可证