{"title":"Distributed Exact Shortest Paths in Sublinear Time","authors":"Michael Elkin","doi":"10.1145/3387161","DOIUrl":null,"url":null,"abstract":"The distributed single-source shortest paths problem is one of the most fundamental and central problems in the message-passing distributed computing. Classical Bellman-Ford algorithm solves it in O(n) time, where n is the number of vertices in the input graph G. Peleg and Rubinovich [49] showed a lower bound of ˜Ω(D + √ n) for this problem, where D is the hop-diameter of G. Whether or not this problem can be solved in O(n) time when D is relatively small is a major open question. Despite intensive research [10, 17, 33, 41, 45] that yielded near-optimal algorithms for the approximate variant of this problem, no progress was reported for the original problem. In this article, we answer this question in the affirmative. We devise an algorithm that requires O((n log n)5/6) time, for D = O(√ n log n), and O(D1/3 ⋅ (n log n)2/3) time, for larger D. This running time is sublinear in n in almost the entire range of parameters, specifically, for D = o(n/ log2 n). We also generalize our result in two directions. One is when edges have bandwidth b ≥ 1, and the other is the s-sources shortest paths problem. For both problems, our algorithm provides bounds that improve upon the previous state-of-the-art in almost the entire range of parameters. In particular, we provide an all-pairs shortest paths algorithm that requires O(n5/3 ⋅ log 2/3 n) time, even for b = 1, for all values of D. We also devise the first algorithm with non-trivial complexity guarantees for computing exact shortest paths in the multipass semi-streaming model of computation. From the technical viewpoint, our distributed algorithm computes a hopset G′′ of a skeleton graph G′ of G without first computing G′ itself. We then conduct a Bellman-Ford exploration in G′ ∪ G′′, while computing the required edges of G′ on the fly. As a result, our distributed algorithm computes exactly those edges of G′ that it really needs, rather than computing approximately the entire G′.","PeriodicalId":17199,"journal":{"name":"Journal of the ACM (JACM)","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2020-05-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of the ACM (JACM)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3387161","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4
Abstract
The distributed single-source shortest paths problem is one of the most fundamental and central problems in the message-passing distributed computing. Classical Bellman-Ford algorithm solves it in O(n) time, where n is the number of vertices in the input graph G. Peleg and Rubinovich [49] showed a lower bound of ˜Ω(D + √ n) for this problem, where D is the hop-diameter of G. Whether or not this problem can be solved in O(n) time when D is relatively small is a major open question. Despite intensive research [10, 17, 33, 41, 45] that yielded near-optimal algorithms for the approximate variant of this problem, no progress was reported for the original problem. In this article, we answer this question in the affirmative. We devise an algorithm that requires O((n log n)5/6) time, for D = O(√ n log n), and O(D1/3 ⋅ (n log n)2/3) time, for larger D. This running time is sublinear in n in almost the entire range of parameters, specifically, for D = o(n/ log2 n). We also generalize our result in two directions. One is when edges have bandwidth b ≥ 1, and the other is the s-sources shortest paths problem. For both problems, our algorithm provides bounds that improve upon the previous state-of-the-art in almost the entire range of parameters. In particular, we provide an all-pairs shortest paths algorithm that requires O(n5/3 ⋅ log 2/3 n) time, even for b = 1, for all values of D. We also devise the first algorithm with non-trivial complexity guarantees for computing exact shortest paths in the multipass semi-streaming model of computation. From the technical viewpoint, our distributed algorithm computes a hopset G′′ of a skeleton graph G′ of G without first computing G′ itself. We then conduct a Bellman-Ford exploration in G′ ∪ G′′, while computing the required edges of G′ on the fly. As a result, our distributed algorithm computes exactly those edges of G′ that it really needs, rather than computing approximately the entire G′.