, Volume 78, Issue 4, pp 1109–1130 | Cite as

An Experimental Evaluation of the Best-of-Many Christofides’ Algorithm for the Traveling Salesman Problem

  • Kyle Genova
  • David P. WilliamsonEmail author


Recent papers on approximation algorithms for the traveling salesman problem (TSP) have given a new variant of the well-known Christofides’ algorithm for the TSP, called the Best-of-Many Christofides’ algorithm. The algorithm involves sampling a spanning tree from the solution to the standard LP relaxation of the TSP, subject to the condition that each edge is sampled with probability at most its value in the LP relaxation. One then runs Christofides’ algorithm on the tree by computing a minimum-cost matching on the odd-degree vertices in the tree, and shortcutting a traversal of the resulting Eulerian graph to a tour. In this paper we perform an experimental evaluation of the Best-of-Many Christofides’ algorithm to see if there are empirical reasons to believe its performance is better than that of Christofides’ algorithm. Furthermore, several different sampling schemes have been proposed; we implement several different schemes to determine which ones might be the most promising for obtaining improved performance guarantees over that of Christofides’ algorithm. In our experiments, all of the implemented methods perform significantly better than Christofides’ algorithm; an algorithm that samples from a maximum entropy distribution over spanning trees seems to be particularly good, though there are others that perform almost as well.


Traveling salesman problem Approximation algorithms Christofides’ algorithm Maximum entropy 



We thank Shayan Oveis Gharan for generously sharing his maximum entropy code with us; we used many of his implementation ideas in coding our own algorithm. We thank Frans Schalekamp and Anke van Zuylen for allowing us to include their example of a bad case for Best-of-Many Christofides. We thank Frans Schalekamp for several observations which he allowed us to use and include.


  1. 1.
    An, H.C.: Approximation Algorithms for Traveling Salesman Problems Based on Linear Programming Relaxations. Ph.D. thesis, Department of Computer Science, Cornell University (2012)Google Scholar
  2. 2.
    An, H.C., Kleinberg, R., Shmoys, D.B.: Improving Christofides’ algorithm for the \(s\)-\(t\) path TSP. J. ACM 62 (2015). Article 34Google Scholar
  3. 3.
    Applegate, D., Bixby, R., Chvátal, V., Cook, W.: Concorde 03.12.19 (2003).
  4. 4.
    Asadpour, A., Goemans, M.X., Madry, A., Oveis Gharan, S., Saberi, A.: An \(O(\log n/\log \log n)\)-approximation algorithm for the asymmetric traveling salesman problem. In: Proceedings of the 21st Annual ACM–SIAM Symposium on Discrete Algorithms, pp. 379–389 (2010)Google Scholar
  5. 5.
    Chekuri, C., Vondrák, J., Zenklusen, R.: Dependent randomized rounding via exchange properties of combinatorial structures. In: Proceedings of the 51st Annual IEEE Symposium on Foundations of Computer Science, pp. 575–584 (2010). See full version at arXiv:0909.4348
  6. 6.
    Christofides, N.: Worst Case Analysis of a New Heuristic for the Traveling Salesman Problem. Report 388, Graduate School of Industrial Administration, Carnegie-Mellon University, Pittsburgh, PA (1976)Google Scholar
  7. 7.
    Frank, A.: Connections in Combinatorial Optimization. Oxford University Press, Oxford (2011)zbMATHGoogle Scholar
  8. 8.
    Frieze, A., Galbiati, G., Maffioli, F.: On the worst-case performance of some algorithms for the asymmetric traveling salesman problem. Networks 12, 23–39 (1982)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Gao, Z.: On the metric \(s\)\(t\) path traveling salesman problem. SIAM J. Discret. Math. 29, 1133–1149 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Genova, K., Williamson, D.P.: An experimental evaluation of the best-of-many Christofides’ algorithm for the traveling salesman problem. In: Bansal, N., Finocchi, I. (eds.) Algorithms-ESA 2015—Proceedings, Lecture Notes in Computer Science, vol. 9294, pp. 570–581. Springer, Berlin (2015)Google Scholar
  11. 11.
    Gottschalk, C., Vygen, J.: Better \(s\)\(t\)-tours by Gao trees. In: Loveaux, Q., Skutella, M. (eds.) Integer Programming and Combinatorial Optimization, 18th International Conference, IPCO 2016, Lecture Notes in Computer Science, vol. 9682, pp. 126–137. Springer, Berlin (2016)Google Scholar
  12. 12.
    Guennebaud, G., Jacob, B., et al.: Eigen v3 (2010). Accessed 28 Jan 2015Google Scholar
  13. 13.
    Held, M., Karp, R.M.: The traveling-salesman problem and minimum spanning trees. Oper. Res. 18, 1138–1162 (1971)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    Hoogeveen, J.A.: Analysis of Christofides’ heuristic: some paths are more difficult than cycles. Oper. Res. Lett. 10, 291–295 (1991)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Johnson, D.S., McGeoch, L.A.: Experimental analysis of heuristics for the STSP. In: Gutin, G., Punnen, A. (eds.) The Traveling Salesman Problem and its Variants, pp. 369–443. Kluwer, Dordrecht (2002)Google Scholar
  16. 16.
    Kolmogorov, V., Blossom, V.: A new implementation of a minimum cost perfect matching algorithm. Math. Program. Comput. 1, 43–67 (2009).
  17. 17.
    Kunegis, J.: KONECT—the Koblenz network collection. In: Proceedings of the International Web Observatory Workshop, pp. 1343–1350 (2013)Google Scholar
  18. 18.
    Lin, S., Kernighan, B.W.: An effective heuristic algorithm for the traveling-salesman problem. Oper. Res. 21, 498–516 (1973)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    Lovász, L.: On some connectivity properties of Eulerian graphs. Acta Math. Acad. Sci. Hung. 28, 129–138 (1976)MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Mömke, T., Svensson, O.: Removing and adding edges for the traveling salesman problem. J. ACM 63 (2016). Article 2Google Scholar
  21. 21.
    Mucha, M.: 13/9-approximation for graphic TSP. Theory Comput. Syst. 55, 640–657 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Nagamochi, H., Ibaraki, T.: Deterministic \(\tilde{O}(mn)\) time edge-splitting in undirected graphs. J. Comb. Optim. 1, 5–46 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
  23. 23.
    Optimization, G.: Gurobi 5.6.3 (2014).
  24. 24.
    Oveis Gharan, S.: New Rounding Techniques for the Design and Analysis of Approximation Algorithms. Ph.D. thesis, Department of Management Science and Engineering, Stanford University (2013)Google Scholar
  25. 25.
    Oveis Gharan, S.: Personal Communication (2014)Google Scholar
  26. 26.
    Oveis Gharan, S., Saberi, A., Singh, M.: A randomized rounding approach to the traveling salesman problem. In: Proceedings of the 52nd Annual IEEE Symposium on Foundations of Computer Science, pp. 550–559 (2011)Google Scholar
  27. 27.
    Preparata, F.P., Shamos, M.I.: Computational Geometry: An Introduction. Springer, New York (1985)CrossRefzbMATHGoogle Scholar
  28. 28.
    Reinelt, G.: TSPLIB—a traveling salesman problem library. ORSA J. Comput. 3, 376–384 (1991)Google Scholar
  29. 29.
    Rohe, A.: Instances found at (2002). Accessed 16 Dec 2014
  30. 30.
    Schalekamp, F., van Zuylen, A.: Personal Communication (2015)Google Scholar
  31. 31.
    Schrijver, A.: Combinatorial Optimization: Polyhedra and Efficiency. Springer, Berlin (2003)zbMATHGoogle Scholar
  32. 32.
    Sebő, A.: Eight-fifth approximation for the path TSP. In: Goemans, M.X., Correa, J.R. (eds.) Integer Programming and Combinatorial Optimization—16th International Conference (IPCO 2013), Lecture Notes in Computer Science, vol. 7801, pp. 362–374. Springer, Berlin (2013)Google Scholar
  33. 33.
    Sebő, A., van Zuylen, A.: The salesman’s improved paths: a 3/2+1/34 approximation. In: Proceedings of the 57th Annual IEEE Symposium on Foundations of Computer Science, pp. 118–127 (2016)Google Scholar
  34. 34.
    Sebő, A., Vygen, J.: Shorter tours by nicer ears: 7/5-approximation for the graph-TSP, 3/2 for the path version, and 4/3 for two-edge-connected subgraphs. Combinatorica 34, 597–629 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
  35. 35.
    Shewchuk, J.R.: Triangle: Engineering a 2D quality mesh generator and Delaunay triangulator. In: Lin, M.C., Manocha, D. (eds.) Applied Computational Geometry: Towards Geometric Engineering, Lecture Notes in Computer Science, vol. 1148, pp. 203–222. Springer, Berlin (1996)Google Scholar
  36. 36.
    Vygen, J.: Reassembling trees for the traveling salesman. SIAM J. Discret. Math. 30, 875–894 (2016)MathSciNetCrossRefzbMATHGoogle Scholar
  37. 37.
    Walter, M., Wegmann, N.: Computational study of graphic TSP approximation algorithms (2014). Poster presented at IPCO 2014Google Scholar

Copyright information

© Springer Science+Business Media New York 2017

Authors and Affiliations

  1. 1.Department of Computer SciencePrinceton UniversityPrincetonUSA
  2. 2.School of Operations Research and Information EngineeringCornell UniversityIthacaUSA

Personalised recommendations