Networkx最短路径节点移动

时间:2017-06-09 09:00:24

标签: python networking networkx simpy

如何在Python中创建一个允许使用最短路径将数据包从源移动到目标的函数?

shortest_path()函数只返回节点的名称。如何让数据包在特定路径中移动?

1 个答案:

答案 0 :(得分:0)

您是否在谈论图表中从startfinish的最大流量?如果是,则NetworkX中有bunch of methods for working with flows

例如,maximum_flow(G, s, t, capacity='capacity', flow_func=None, **kwargs)。它接受您的图表并在其中开始和结束节点。

它返回:

  
      
  • flow_value integer,float ) - 最大流量的值,即来自源的净流出量。
  •   
  • flow_dict dict ) - 包含经过每条边的流量值的字典。
  •   

所以你的代码就像:

flow_value, flow_dict = nx.maximum_flow(G, 'x', 'y')

现在在字典中,您可以找到流程中的所有边缘及其用法。