27
52

Faster Parallel Algorithm for Approximate Shortest Path

Abstract

We present the first mpolylog(n)m\,\text{polylog}(n) work, polylog(n)\text{polylog}(n) time algorithm in the PRAM model that computes (1+ϵ)(1+\epsilon)-approximate single-source shortest paths on weighted, undirected graphs. This improves upon the breakthrough result of Cohen~[JACM'00] that achieves O(m1+ϵ0)O(m^{1+\epsilon_0}) work and polylog(n)\text{polylog}(n) time. While most previous approaches, including Cohen's, leveraged the power of hopsets, our algorithm builds upon the recent developments in \emph{continuous optimization}, studying the shortest path problem from the lens of the closely-related \emph{minimum transshipment} problem. To obtain our algorithm, we demonstrate a series of near-linear work, polylogarithmic-time reductions between the problems of approximate shortest path, approximate transshipment, and 1\ell_1-embeddings, and establish a recursive algorithm that cycles through the three problems and reduces the graph size on each cycle. As a consequence, we also obtain faster parallel algorithms for approximate transshipment and 1\ell_1-embeddings with polylogarithmic distortion. The minimum transshipment algorithm in particular improves upon the previous best m1+o(1)m^{1+o(1)} work sequential algorithm of Sherman~[SODA'17]. To improve readability, the paper is almost entirely self-contained, save for several staple theorems in algorithms and combinatorics.

View on arXiv
Comments on this paper