Computing Best Swaps in Optimal Tree Spanners

  • Authors:
  • Shantanu Das;Beat Gfeller;Peter Widmayer

  • Affiliations:
  • Institute of Theoretical Computer Science, ETH Zurich, Switzerland;Institute of Theoretical Computer Science, ETH Zurich, Switzerland;Institute of Theoretical Computer Science, ETH Zurich, Switzerland

  • Venue:
  • ISAAC '08 Proceedings of the 19th International Symposium on Algorithms and Computation
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

In a densely connected communication network, represented by a graph G with nonnegative edge-weights, it is often advantageous to route all communication on a sparse, spanning subnetwork, typically a spanning tree of G. With the communication overhead in mind, we consider a spanning tree T of G which guarantees that for any two nodes, their distance in T is at most k times their distance in G, where k, called the stretch, is as small as possible. Such a spanning tree which minimizes the stretch is called an optimal tree spanner, and it can be used for efficient routing. However, for a communication tree, the failure of an edge is catastrophic; it disconnects the tree. Functionality can be restored by connecting both parts of the tree with another edge, while leaving the two parts themselves untouched. In situations where the failure can be repaired rapidly, such a quick fix is preferred over the recomputation of an entirely new optimal tree spanner, because it is much closer to the previous solution and hence requires far fewer adjustments in the routing scheme. We are therefore interested in the problem of finding for any possibly failing edge in the spanner T a best swap edge to replace it. The objective here is naturally to minimize the stretch of the new tree. We show how all these best swap edges can be computed in total time O(m 2 logn) in graphs with arbitrary nonnegative edge weights. For graphs with unit weight edges (also called unweighted graphs), we present an O(n 3) time algorithm. Furthermore, we present a distributed algorithm for computing the best swap for each edge in the spanner.