Efficient algorithms for constructing (1+,ε, β)-spanners in the distributed and streaming models

  • Authors:
  • Michael Elkin;Jian Zhang

  • Affiliations:
  • Yale University, New Haven, CT;Yale University, New Haven, CT

  • Venue:
  • Proceedings of the twenty-third annual ACM symposium on Principles of distributed computing
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

For an unweighted undirected graph G= (V,E), and a pair of positive integers α ≥ 1, β ≥ 0, a subgraph G'= (V,H), H ⊆ E, is called an (α,β)-spanner of G if for every pair of vertices u, v ∈ V, distG'(u,v) ≤ α • distG'(u,v) + β.It was shown in [20] that for any ε 0, κ = 1,2, ..., there exists an integer β = β(ε,κ) such that for every n-vertex graph G there exists a (1+ε,β)-spanner G' with O(n1+1/κ) edges. An efficient distributed protocol for constructing (1+ε,β)-spanners was devised in [18]. The running time and the communication complexity of that protocol are O(n1+ρ) and O(|E|nρ), respectively, where ρ is an additional control parameter of the protocol that affects only the additive term β.In this paper we devise a protocol with a drastically improved running time (O(nρ) as opposed to (O(n1+ρ) for constructing (1+ε,β)-spanners. Our protocol has the same communication complexity as the protocol of [18], and it constructs spanners with essentially the same properties as the spanners that are constructed by the protocol of [18].We also show that our protocol for constructing (1+ε, β)-spanners can be adapted to the streaming model, and devise a streaming algorithm that uses a constant number of passes and O(n1+1/κ • log n) bits of space for computing all-pairs-almost-shortest-paths of length at most by a multiplicative factor (1 + ε) and an additive term of β greater than the shortest paths. Our algorithm processes each edge in time O(nρ), for an arbitrarily small ρ 0. The only previously known algorithm for the problem [21] constructs paths of length κ times greater than the shortest paths, has the same space requirements as our algorithm, but requires O(n1+1/κ) time for processing each edge of the input graph. However, the algorithm of [21] uses just one pass over the input, as opposed to the constant number of passes in our algorithm. We also show that any streaming algorithm for o(n)-approximate distance computation requires Ω(n) bits of space.