Purpose: A -approximation for metric TSP (symmetric costs satisfying the triangle inequality), in polynomial time. It stood as the best known ratio from 1976 until a result in 2020.
Algorithm
- Build a minimum spanning tree of the complete metric graph.
- Let be the set of vertices with odd degree in . (By the handshake lemma, is even.)
- Find a minimum-weight perfect matching on the induced subgraph over β this is the expensive step, via Blossom.
- Form the multigraph . Every vertex now has even degree, so an Eulerian circuit exists; find it with Hierholzer.
- Shortcut the Eulerian circuit: walk it and skip already-visited vertices. The triangle inequality guarantees shortcutting never increases the cost.
Complexity
- Time: , dominated by the minimum-weight perfect matching
- Space:
Proof of the 3/2 Ratio
Let be the optimal tour cost.
(a) . Deleting any edge from the optimal tour leaves a spanning path, which is a spanning tree; the MST is no heavier.
(b) . Take the optimal tour and shortcut it to visit only the vertices of , in the order they appear. By the triangle inequality this cycle costs at most . A cycle on an even number of vertices decomposes into two disjoint perfect matchings; the cheaper of the two costs at most , and the minimum matching is no heavier still.
(c) The Euler tour costs , and shortcutting only helps. β
Why the triangle inequality is essential
Without it, TSP has no constant-factor polynomial approximation unless P = NP: a -approximation would let you decide Hamiltonian cycle by setting non-edges to a huge weight. The metric restriction is what makes any guarantee possible.
Comparison
| Method | Ratio | Time |
|---|---|---|
| Nearest neighbour | ||
| Double the MST (βdouble treeβ) | ||
| Christofides | ||
| Karlin-Klein-Oveis Gharan (2020) | polynomial | |
| Held-Karp | exact | |
| 2-opt / Lin-Kernighan local search | no guarantee | fast, excellent in practice |
In practice
For real instances, nobody runs Christofides. A cheap construction plus 2-opt / Or-opt / Lin-Kernighan local search gets within 1-2% of optimal far faster. Christofides matters because of the guarantee, not the output quality.
Variants / Use Cases
- Double-tree algorithm β skip the matching, just double every MST edge; ratio 2 but and trivial to write
- Travelling Salesman β the problem page
- Simulated annealing / local search β what you actually submit when is large and the checker is a score
- Approximation Algorithms β the general theory of ratios and hardness