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

  1. Build a minimum spanning tree of the complete metric graph.
  2. Let be the set of vertices with odd degree in . (By the handshake lemma, is even.)
  3. Find a minimum-weight perfect matching on the induced subgraph over β€” this is the expensive step, via Blossom.
  4. Form the multigraph . Every vertex now has even degree, so an Eulerian circuit exists; find it with Hierholzer.
  5. 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

MethodRatioTime
Nearest neighbour
Double the MST (β€œdouble tree”)
Christofides
Karlin-Klein-Oveis Gharan (2020)polynomial
Held-Karpexact
2-opt / Lin-Kernighan local searchno guaranteefast, 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