Edmonds's algorithm

From Wikipedia, the free encyclopedia

In graph theory, a branch of mathematics, Edmonds's algorithm is an algorithm for finding a maximum or minimum branchings. When nodes are connected by weighted edges that are directed, a minimum spanning tree algorithm cannot be used. Instead an optimum branching algorithm should be applied using the algorithm proposed by Edmonds (1967). To find a maximum path length, the largest edge value is found and connected between the two nodes, then the next largest value, and so on. If an edge creates a loop, it is erased. A minimum path length is found by starting from the smallest value.

Contents

[edit] Conditions

Let BV be a vertex bucket and BE be an edge bucket/ Let v be a vertex and e be an edge of maximum positive weight that is incident to v. Ci is a circuit. G0 = (V0,E0) is the original digraph. ui is a replacement vertex for Ci.

[edit] Execution

1. BV \leftarrow BE \leftarrow \varnothing

2. i \leftarrow 0

3. if BV = Vi, then go to step 14

4. for some vertex v \notin BV and v \in V_i do

begin

5.______BV \leftarrow BV \cup \lbrace v\rbrace

6.______find an edge e = (x,v) such that

w(e) = \max  \lbrace w(w,y)|(w,y) \in E_i \rbrace

7.______if w(e) \le 0 then go to three

end

8.if BE \cup \lbrace e\rbrace contains a circuit then

begin

9.______i \leftarrow i + 1

10._____construct Gi by shrinking Ci to ui

11._____modify BE, BV and some edge weights

end

12.BV \leftarrow BE \cup {e}

13.go to three

14.while i \ne 0 do

begin

15._____reconstruct Gi − 1 and rename some edges in BE

16._____if ui was a root of an out-tree in BE then

17._____BE \leftarrow BE \cup \lbrace e|e \in C_i and  e \ne e_0^i\rbrace

18._____else BE \leftarrow BE \cup \lbrace e|e \in C_i and e \ne \tilde{e}_i\rbrace

19._____i \leftarrow i - 1

end

20._____Maximum branching weight \sum_{e \in BE} w(e)


[edit] References

  • J. Edmonds, “Optimum Branchings”, J. Res. Nat. Bur. Standards, vol. 71B, 1967, pp. 233-240.
  • Alan Gibbons Algorithmic Graph Theory, Cambridge University press, 1985 ISBN: 0-521-28881-9


[edit] External links