【问题标题】:Find all paths between origin destination with path length constraint查找具有路径长度约束的起始目的地之间的所有路径
【发布时间】:2016-09-22 09:45:03
【问题描述】:

我正在使用 python 2.7 和 networkx。

我有一个相当大的网络,我需要找到起点和终点之间的所有路径(不仅是最短路径)。由于我的网络很大,我想在一些限制条件下加快速度,例如路径长度、成本等。

我正在使用networkx。我不想使用 all_simple_paths,因为使用 all_simple_paths,我必须稍后根据路径长度(其中的节点数)或路径成本(基于弧成本)过滤所有路径。过滤所有路径对于大型网络来说是非常昂贵的。

我非常感谢任何帮助。

【问题讨论】:

  • 顺便说一下,我的图表是定向的。

标签: python-2.7 networkx


【解决方案1】:

这真的取决于你在寻找什么路径。

首先,最短路径为您提供了长度约束的最低界限c_min。然后给定一个长度约束c>=c_min,对于每个节点n,你知道从起点到这个节点的最短路径P_s_n和距离c_n。选择那些满足c_n <c 的节点。然后您可以通过从n 到目标的任何路径任意扩展P_s_n,这将满足您的长度限制。

【讨论】:

    猜你喜欢
    • 2019-05-27
    • 1970-01-01
    • 2015-04-21
    • 2011-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多