Computing Best Swaps in Optimal Tree Spanners

  • Shantanu Das
  • Beat Gfeller
  • Peter Widmayer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5369)


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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alstrup, S., Gavoille, C., Kaplan, H., Rauhe, T.: Nearest common ancestors: a survey and a new algorithm for a distributed environment. Theory Comput. Syst. 37(3), 441–456 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Cai, L., Corneil, D.: Tree Spanners. SIAM J. Discr. Math. 8(3), 359–387 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Das, S., Gfeller, B., Widmayer, P.: Computing Best Swaps in Optimal Tree Spanners. Technical Report 607, ETH Zurich (September 2008),
  4. 4.
    Dixon, B., Rauch, M., Tarjan, R.: Verification and Sensitivity Analysis of Minimum Spanning Trees in Linear Time. SIAM J. Comp. 21(6), 1184–1192 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Emek, Y., Peleg, D.: Approximating Minimum Max-Stretch spanning Trees on unweighted graphs. In: SODA 2004: Proceedings of the fifteenth Annual ACM-SIAM Symposium on Discrete Algorithms, Philadelphia, PA, USA, 2004. Society for Industrial and Applied Mathematics, pp. 261–270 (2004)Google Scholar
  6. 6.
    Flocchini, P., Enriques, A., Pagli, L., Prencipe, G., Santoro, N.: Point-of-failure Shortest-path Rerouting: Computing the Optimal Swap Edges Distributively. IEICE Transactions on Information and Systems E89-D(2), 700–708 (2006)CrossRefGoogle Scholar
  7. 7.
    Flocchini, P., Enriquez, T., Pagli, L., Prencipe, G., Santoro, N.: Distributed Computation of All Node Replacements of a Minimum Spanning Tree. In: Kermarrec, A.-M., Bougé, L., Priol, T. (eds.) Euro-Par 2007. LNCS, vol. 4641, pp. 598–607. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  8. 8.
    Flocchini, P., Pagli, L., Prencipe, G., Santoro, N., Widmayer, P.: Computing All the Best Swap Edges Distributively. In: Higashino, T. (ed.) OPODIS 2004. LNCS, vol. 3544, pp. 154–168. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  9. 9.
    Gfeller, B.: Faster Swap Edge Computation in Minimum Diameter Spanning Trees. In: Halperin, D., Mehlhorn, K. (eds.) ESA 2008. LNCS, vol. 5193, pp. 454–465. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  10. 10.
    Gfeller, B., Santoro, N., Widmayer, P.: A Distributed Algorithm for Finding All Best Swap Edges of a Minimum Diameter Spanning Tree. In: Pelc, A. (ed.) DISC 2007. LNCS, vol. 4731, pp. 268–282. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  11. 11.
    Harel, D., Tarjan, R.: Fast Algorithms for Finding Nearest Common Ancestors. SIAM Journal on Computing 13(2), 338–355 (1984)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Nardelli, E., Proietti, G., Widmayer, P.: How to Swap a Failing Edge of a Single Source Shortest Paths Tree. In: Asano, T., Imai, H., Lee, D.T., Nakano, S.-i., Tokuyama, T. (eds.) COCOON 1999. LNCS, vol. 1627, pp. 144–153. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  13. 13.
    Peleg, D.: Distributed computing: a locality-sensitive approach. Society for Industrial and Applied Mathematics, Philadelphia, PA, USA (2000)Google Scholar
  14. 14.
    Peleg, D., Ullman, J.: An optimal synchronizer for the hypercube. In: PODC 1987: Proceedings of the sixth annual ACM Symposium on Principles of Distributed Computing, pp. 77–85. ACM, New York (1987)CrossRefGoogle Scholar
  15. 15.
    Peleg, D., Upfal, E.: A trade-off between space and efficiency for routing tables. J. ACM 36(3), 510–530 (1989)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Shantanu Das
    • 1
  • Beat Gfeller
    • 1
  • Peter Widmayer
    • 1
  1. 1.Institute of Theoretical Computer ScienceETH ZurichSwitzerland

Personalised recommendations