2016-11-21 11 views
0

複数の頂点(u、v)のペアに対して、複数のエッジを持つネットワークがあると仮定すると、グラフにはuからvまで、vからuまでの複数の有向エッジが含まれ、自分の能力と体重。マルチグラフを単純な有向グラフに減らす方法

このマルチグラフを単純な有向グラフに縮小するにはどうしたらいいですか?

注:このアプローチが正しいかどうかはわかりませんが、uとvの間の個々のエッジの容量と重みを合計し、それらをuからvまで、そしてvからuの1つのスーパーエッジにまとめました。しかし、どのようにしてこれらの2つをuとvの間のちょうど1つのエッジにさらにマージさせ、それをどの方向に向けるべきですか?

+0

これは、この変換を行う目的によって異なります。 –

+0

削減は、最小コストフローの問題に使用されます –

答えて

0

次のコードは動作するはず: G = nx.Graph(G)を繰り返すエッジを#DELETE G.remove_edges_from(G.selfloop_edges())#DELETE自己G.で、度をノードの 削除= [ノードをループ度数が0のノードを削除します。 #最後に2つのコード行は、multigraphを単純なグラフに変換するだけであれば、#requiedします。

関連する問題