arXiv ScienceSearch

arXiv · 1701.03136

A practical efficient and effective method for the Hamiltonian cycle problem that runs on a standard computer

Abstract

Given $N$ cities and $R < N^2 - N$ directed (unidirectional/one way) roads does there exist a tour of all $N$ cities stopping at each city exactly once using the given roads (a Hamiltonian cycle)? This Hamiltonian cycle problem (HCP) is an NP-complete problem, for which there is no known polynomial time solution algorithm. The HCP has important practical applications, for example, to logistical problems. It was claimed that an adiabatic quantum computer could solve an NP-complete problem faster than classical algorithms, but claim appears to have been debunked. Here we demonstrate an algorithm which runs on a standard computer that efficiently and effectively solves the HCP for at least up to 500 cities: We first optimized a simulated annealing based algorithm used for smaller sized HCP problems. Then we found that when a tour was deliberately inserted in a list of otherwise randomly chosen roads, crucially, if "extra" random roads are added to bring the total number of roads up to $0.58 N log_e N$ or more there is a 100% chance our algorithm will find a HC, but conversely when a list of roads does not include a pre-inserted tour random roads have to be added until there are $0.9 N log_e N$ roads to have a chance of finding a HC. We found similarly for a set of roads non-randomly chosen. Thus, the presence of a HC in a set of roads induces "connectivity" throughout the roads and a HC can be found with an insertion of a modest number of extra roads. Our algorithm also shows that only weakly non-local information is needed to find an HCP that is a global state.

Explore related subjects

Keep this discovery

BibTeXRIS

Eric Lewin Altschuler, Timothy J. Williams. 2017-01-11. A practical efficient and effective method for the Hamiltonian cycle problem that runs on a standard computer. https://arxiv.org/abs/1701.03136

Cite the original work for its findings. Save a collection to share your selection of sources.

KEEP EXPLORING

Related papers

Quasi-Monte Carlo Beyond Hardy-Krause II: $(1 + \varepsilon)n$ Samples Suffice

Numerical integration studies how well one can estimate the integral of a function $f$ over $[0,1)^d$ using $n$ sample points. The two classical methods, Monte Carlo (MC) and quasi-Monte Carlo (QMC), have complementary strengths and weaknesses, and a fundamental question is to design an approach that combines the benefits of both. Recently, building on the transference principle in discrepancy theory, Bansal and Jiang~\cite{BJ25a} gave a randomized QMC method that bridges MC and QMC guarantees using only i.i.d.\ samples. Their method also goes beyond the classical Koksma--Hlawka inequality: it achieves integration error $\widetilde{O}_d(\sigma_{\mathsf{SO}}(f)/n)$, where the smoothed-out variation $\sigma_{\mathsf{SO}}(f)$ can be substantially smaller than the Hardy--Krause variation that governs the classical bound. However, their algorithm requires $n^2$ i.i.d.\ samples as input, and this quadratic blowup is inherent to any method based on the transference principle. In this work, we bypass the quadratic blowup: for any constant $\varepsilon > 0$, we show that $(1+\varepsilon)n$ i.i.d.\ samples suffice to both obtain the beyond-Hardy--Krause guarantee of~\cite{BJ25a}, resolving an open problem posed there, and to produce low-discrepancy point sequences. Our algorithms are variants of the online Haar-thinning method of Dwivedi, Feldheim, Gurel-Gurevich, and Ramdas~\cite{DFG+19}.

cs.DS

Single-Exponential Algorithms and a Polynomial Kernel for Strong Connectivity Augmentation

Strong Connectivity Augmentation (SCA) asks whether a directed acyclic graph can be made strongly connected by adding at most $k$ prescribed links whose total weight is within a given budget. Klinkby, Misra, and Saurabh (SODA 2021) gave an $O^*(2^{O(k\log k)})$-time algorithm and asked whether the problem admits a single-exponential parameterized algorithm and a polynomial kernel. We answer both questions affirmatively: SCA can be solved in $O^*(9^k)$ time and admits a polynomial kernel with $O(k^4)$ vertices and $O(k^{16})$ bits. For unweighted SCA, we obtain $O^*(4^k)$ time and a kernel with $O(k^3)$ vertices. Our algorithms are based on a particularly simple reduction to Strongly Connected Spanning Subgraph with two edge costs.

cs.DS