# ChristofidesAlgorithm

Top | recent changes | Preferences

2-approximation algorithm for TravelingSalesmanTour? in metric graph:

1. Compute a minimum spanning tree (MST) T.
2. Double every edge of T to to obtain an Eulerian graph.
3. Find an Eulerian tour T' on this graph.
4. Output the TST formed by visiting each vertex in order of its occurrence in T'.

thm (thm 3.8 in text): The above algorithm is a 2-approximation algorithm.

1.5-approximation algorithm for TST in metric graph

1. Compute a minimum spanning tree T.
2. Compute a minimum-cost perfect matching M on the odd-degree vertices of T.
3. Add M to T to get an Eulerian graph.
4. Find an Eulerian tour T' on this graph.
5. Output the TST formed by visiting each vertex in order of its occurrence in T'.

thm (Euler): Given an Eulerian graph, an Eulerian tour can be found in polynomial time.

thm (shortcutting): Given an Eulerian tour T in a metric graph, a Traveling Salesman Tour (TST) T' such that cost(T') ≤ cost(T) can be found in polynomial time.

thm: Given an even-sized subset S of vertices of a metric graph, the cost of the minimum-cost perfect matching on S is at most 1/2 the cost of the minimum cost TST.

corollary (thm 3.12 in text): The above algorithm is a 1.5-approximation algorithm.

#### References:

Top | recent changes | Preferences