在networkx中以最小成本传递流经所有节点

时间:2018-05-18 13:13:45

标签: python networkx network-flow

我正在使用NetworkX来实施一些论文。 (实际上,Networkx没有必要。如果有更好的库来解决这个问题,你能推荐吗?) 我的图表看起来像这张图片Automated_Planar_Tracking_the_Waving_Bodies_of_Mul

我对所有节点给予了正面权重。 当我使用max_flow_min_cost(G, S, E)函数时,该函数返回类似

的路径
[S, T1, T1', E], [S, T2, T2', E], [S, T3, T3', E], [S, T4, T4', E], [S, T5, T5', E], [S, T6, T6', E]

那是因为这些是最大流量的路径。

但我想要的是通过所有节点并且总成本最低的路径。 例如:

[S, T1, T1', T2, T2', E], [S, T5, T5', E], [S, T3, T3', T6, T6', E], [S, T4, T4', E]

所以,我决定使用min_cost_flow()函数。它需要节点的需求。当然,我不能使用这种方法,因为我不知道从节点'S'开始有多少路径。

有什么解决方案可以解决我的问题吗?

总而言之,我想要一些方法来查找遍历所有节点的路径,并且这些路径的总成本最低。

我的母语不是英语,它可能会让你感到困惑。 如果您对此有任何疑问,请告诉我。

0 个答案:

没有答案