We provide a new upper bound for traveling salesman problem (TSP) in cubic graphs, i. e. graphs with maximum vertex degree three, and prove that the problem for an n-vertex graph can be solved in O(1.2553 n ) time and in linear space. We show that the exact TSP algorithm of Eppstein, with some minor modifications, yields the stated result. The previous best known upper bound O(1.251 n ) was claimed by Iwama and Nakashima [Proc. COCOON 2007]. Unfortunately, their analysis contains several mistakes that render the proof for the upper bound invalid.
ACM Subject Classification◮ Theorem 1. The traveling salesman problem for an n-vertex cubic graph can be solved in O(1.2553 n ) time and in linear space.Our proof techniques are based on ideas used by Eppstein [5] and Iwama and Nakashima [11] and a new, more careful study of worst-case branches in the tree of recursive subdivisions of the problem performed by the algorithm. Thus, our main contribution is more analytical than algorithmic. Nevertheless, we have implemented our algorithm and verified its easy implementability and good performance for graphs up to 114 vertices (for the experimental results see [12]).
Related WorkApplying the result by Björklund et al. for an n-vertex graph with maximum degree four one gets that TSP can be solved in O(1.856 n ) time and exponential space. Eppstein [5] showed that the problem can be solved in O(1.890 n ) time but using only polynomial space. Next, Gebauer [9] proposed an algorithm that runs in time O(1.733 n ). This algorithm can also list the Hamiltonian cycles but it uses exponential space. Very recently, Cygan et al. [4] have shown a Monte Carlo algorithm with constant one-sided error probability that solves the Hamiltonian cycle problem in O(1.201 n ) time for cubic graphs and in O(1.588 n ) time for graphs of maximum degree four. Though the technique presented in [4] works well for the Hamiltonian cycle problem, it is not usable for TSP.
Outline of Eppstein's AlgorithmEppstein's TSP algorithm [5] (see also Appendix) searches recursively for a minimum weight Hamiltonian cycle H min in a given cubic graph G. The algorithm constructs successively