首页 > 解决方案 > 如何在 NetworkX 中为多源 Dijkstra(或任何)最短路径计算设置初始条件

问题描述

我正在寻找在 NetworkX 有向图上进行多源最短路径计算。multi_source_dijkstra_path 算法(它计算任何一组源节点和加权图上所有其他可达节点之间的最短路径)看起来是正确的,但是......在我的例子中,源节点不是从 0 开始;而是从 0 开始。他们每个人都已经有了与之相关的先前成本(在我的情况下,距离或时间)。我在 NetworkX 文档中看不到将这些成本设置为源节点的初始条件的方法。在那儿?

一个简单的例子来说明:假设我们正在寻找伦敦皮卡迪利地铁线的最短路径。我们希望将预定的地下旅行距离(或时间)与使用伦敦街道网络作为图表计算的地面步行相结合。所以我们想做一个多源最短路径计算,其中源节点是地铁站。我们已经知道到每个站点的距离(或旅行时间),并希望将这些值用作源节点的初始条件。我们将如何做到这一点?如果它们允许的话,我对其他最短路径算法持开放态度 - 并且只是为了清楚,在我的现实世界情况下,起始值完全来自任何网络之外(即,将皮卡迪利线添加到网络不是' t 可行的解决方法)。

谢谢。

标签: networkxshortest-pathdijkstrabellman-fordtravel-time

解决方案


推荐阅读