Finding Best Swap Edges Minimizing the Routing Cost of a Spanning Tree

  • Davide Bilò
  • Luciano Gualà
  • Guido Proietti
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6281)


Given an n-node, undirected and 2-edge-connected graph G = (V,E) with positive real weights on its m edges, given a set of k source nodes S ⊆ V, and given a spanning tree T of G, the routing cost of T w.r.t. S is the sum of the distances in T from every source s ∈ S to all the other nodes of G. If an edge e of T undergoes a transient failure and connectivity needs to be promptly reestablished, then to reduce set-up and rerouting costs it makes sense to temporarily replace e by means of a swap edge, i.e., an edge in G reconnecting the two subtrees of T induced by the removal of e. Then, a best swap edge for e is a swap edge which minimizes the routing cost of the tree obtained after the swapping. As a natural extension, the all-best swap edges problem is that of finding a best swap edge for every edge of T. Such a problem has been recently solved in O(mn) time and linear space for arbitrary k, and in O(n 2 + mlogn) time and O(n 2) space for the special case k = 2. In this paper, we are interested to the prominent cases k = O(1) and k = n, which model realistic communication paradigms. For these cases, we present a linear space and \(\widetilde O(m)\) time algorithm, and thus we improve both the above running times (but for quite dense graphs in the case k = 2, for which however it is noticeable we make use of only linear space). Moreover, we provide an accurate analysis showing that when k = n, the obtained swap tree is effective in terms of routing cost.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ackermann, W.: Zum Hilbertschen Aufbau der reellen Zahlen. Mathematical Annals 99, 118–133 (1928)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Das, S., Gfeller, B., Widmayer, P.: Computing best swaps in optimal tree spanners. In: Hong, S.-H., Nagamochi, H., Fukunaga, T. (eds.) ISAAC 2008. LNCS, vol. 5369, pp. 716–727. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  3. 3.
    Di Salvo, A., Proietti, G.: Swapping a failing edge of a shortest paths tree by minimizing the average stretch factor. Theoretical Computer Science 383(1), 23–33 (2007)zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Flocchini, P., Mesa Enriques, A., Pagli, L., Prencipe, G., Santoro, N.: Point-of-failure shortest-path rerouting: computing the optimal swap edges distributively. IEICE Transactions 89-D(2), 700–708 (2006)CrossRefGoogle Scholar
  5. 5.
    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
  6. 6.
    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
  7. 7.
    Harel, D., Tarjan, R.E.: Fast algorithms for finding nearest common ancestors. SIAM Journal on Computing 13(2), 338–355 (1984)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Hershberger, J.: Finding the upper envelope of n line segments in O(n logn) time. Information Processing Letters 33(4), 169–174 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Johnson, D.S., Lenstra, J.K., Rinnooy Kan, A.H.G.: The complexity of the network design problem. Networks 8, 279–285 (1978)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Nardelli, E., Proietti, G., Widmayer, P.: Finding all the best swaps of a minimum diameter spanning tree under transient edge failures. J. Graph Algorithms and Applications 5(5), 39–57 (2001)zbMATHMathSciNetGoogle Scholar
  11. 11.
    Nardelli, E., Proietti, G., Widmayer, P.: Swapping a failing edge of a single source shortest paths tree is good and fast. Algorithmica 35(1), 56–74 (2003)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Nivasch, G.: Improved bounds and new techniques for Davenport–Schinzel sequences and their generalizations. J. ACM 57(3), 1–44 (2010)CrossRefMathSciNetGoogle Scholar
  13. 13.
    Pettie, S.: Sensitivity analysis of minimum spanning trees in sub-inverse-Ackermann time. In: Deng, X., Du, D.-Z. (eds.) ISAAC 2005. LNCS, vol. 3827, pp. 964–973. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  14. 14.
    Wong, R.: Worst-case analysis of network design problem heuristics. SIAM J. Algebric Discrete Methods 1, 51–63 (1980)zbMATHCrossRefGoogle Scholar
  15. 15.
    Wu, B.Y., Hsiao, C.-Y., Chao, K.-M.: The swap edges of a multiple-sources routing tree. Algorithmica 50(3), 299–311 (2008)zbMATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Wu, B.Y., Lancia, G., Bafna, V., Chao, K.-M., Ravi, R., Tang, C.Y.: A polynomial-time approximation scheme for minimum routing cost spanning trees. SIAM J. Computing 29(3), 761–778 (1999)CrossRefMathSciNetGoogle Scholar
  17. 17.
    Wu, B.Y., Chao, K.-M., Tang, C.Y.: Approximation algorithms for some optimum communication spanning tree problems. Discrete Applied Mathematics 102, 245–266 (2000)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Davide Bilò
    • 1
  • Luciano Gualà
    • 2
  • Guido Proietti
    • 1
    • 3
  1. 1.Dipartimento di InformaticaUniversità di L’AquilaL’AquilaItaly
  2. 2.Dipartimento di MatematicaUniversità di Tor VergataRomaItaly
  3. 3.Istituto di Analisi dei Sistemi ed Informatica, CNRRomaItaly

Personalised recommendations