93
112

An Almost-Tight Distributed Algorithm for Computing Single-Source Shortest Paths

Abstract

We present a deterministic (1+o(1))(1+o(1))-approximation O(n1/2+o(1)+D1+o(1))O(n^{1/2+o(1)}+D^{1+o(1)})-time algorithm for solving the single-source shortest paths problem on distributed weighted networks (the CONGEST model); here nn is the number of nodes in the network and DD is its (hop) diameter. This improves the previous randomized (1+o(1))(1+o(1))-approximation O~(n1/2D1/4+D)\tilde O(n^{1/2}D^{1/4}+D)-time algorithm [Nanongkai, STOC 2014] and O(ϵ1logϵ1)O(\epsilon^{-1}\log \epsilon^{-1})-approximation O~(n1/2+ϵ+D)\tilde O(n^{1/2+\epsilon}+D)-time algorithm [Lenzen and Patt-Shamir, STOC 2013]. (O~\tilde O hides polylogarithmic factors.) Our running time matches the known time lower bound of Ω(n1/2/logn+D\Omega(n^{1/2}/\log n + D [Das~Sarma~et~al., STOC 2011] modulo some lower-order terms, thus essentially settling the status of this problem which was raised at least a decade ago [Elkin, SIGACT News 2004]. It also implies a (2+o(1))(2+o(1))-approximation O(n1/2+o(1)+D1+o(1))O(n^{1/2+o(1)}+D^{1+o(1)})-time algorithm for approximating a network's weighted diameter which almost matches the lower bound by Holzer~et~al. [PODC 2012]. Our techniques also lead to single-source shortest paths algorithms in two other settings: (i) a (1+o(1))(1+o(1))-approximation O(no(1))O(n^{o(1)})-time algorithm on {\em congested cliques}, and (ii) a (1+o(1))(1+o(1))-approximation O(no(1)logW)O(n^{o(1)}\log W)-pass O(n1+o(1)logW)O(n^{1+o(1)}\log W)-space {\em streaming} algorithm, when edge weights are in {1,2,,W}\{1, 2, \ldots, W\}. The first result answers an open problem in [Nanongkai, STOC 2014] and improves the O~(n1/2)\tilde O(n^{1/2})-time exact algorithm presented in this paper in terms of time (but the approximation guarantee is slightly worse). The second result partially answers an open problem raised by McGregor in 2006 [sublinear.info, Problem 14].

View on arXiv
Comments on this paper