This Article 
 Bibliographic References 
 Add to: 
Shortest Path Tree Computation in Dynamic Graphs
April 2009 (vol. 58 no. 4)
pp. 541-557
Edward P.F. Chan, University of Waterloo, Waterloo
Yaya Yang, University of Waterloo, Waterloo
Let G = (V, E, w) be a simple digraph, in which all edge weights are nonnegative real numbers. Let G^{\prime} be obtained from G by an application of a set of edge weight updates to G. Let s\in V and let T_{s} and T_{s}^{\prime} be Shortest Path Trees (SPTs) rooted at s in G and G^{\prime}, respectively. The Dynamic Shortest Path (DSP) problem is to compute T_{s}^{\prime} from T_{s}. Existing work on this problem focuses on either a single edge weight change or multiple edge weight changes in which some of them are incorrect or are not optimized. We correct and extend a few state-of-the-art dynamic SPT algorithms to handle multiple edge weight updates. We prove that these algorithms are correct. Dynamic algorithms may not outperform static algorithms all the time. To evaluate the proposed dynamic algorithms, we compare them with the well-known static Dijkstra algorithm. Extensive experiments are conducted with both real-life and artificial data sets. The experimental results suggest the most appropriate algorithms to be used under different circumstances.

[1] Tiger/Line Files. Bureau of Census, US Dept. of Commerce Economics and Statistics Administration, 1998.
[2] Java Universal Network/Graph Framework, June 2004.
[3] G. Ausiello, G.F. Italiano, A. Marchetti-Spaccamela, and U. Nanni, “Incremental Algorithms for Minimal Length Paths,” J. Algorithms, vol. 12, no. 4, pp. 615-638, 1991.
[4] S. Baswana, R. Hariharan, and S. Sen, “Improved Decremental Algorithms for Maintaining Transitive Closure and All-Pairs Shortest Paths,” Proc. 34th Ann. ACM Symp. Theory of Computing (STOC '02), pp. 113-127, 2002.
[5] J.A. Bondy and U.S.R. Murty, Graph Theory with Applications. Elsevier North-Holland, 1976.
[6] L.S. Buriol, M.G.C. Resende, and M. Thorup, “Speeding Up Dynamic Shortest Path Algorithms,” TR TD-5RJ8B, AT&T Labs Research, Sept. 2003.
[7] C. Demetrescu, D. Frigioni, A. Marchetti-Spaccamela, and U. Nanni, “Maintaining Shortest Paths in Digraphs with Arbitrary Arc Weights: An Experimental Study,” Proc. Fourth Int'l Workshop Algorithm Eng. (WAE '01), pp. 218-229, 2001.
[8] E.W. Dijkstra, “A Note on Two Problems in Connection with Graphs,” Numerical Math., vol. 1, pp. 269-271, 1959.
[9] J. Fakcharoemphol and S. Rao, “Planar Graphs, Negative Weight Edges, Shortest Paths, and Near Linear Time,” Proc. 42nd IEEE Ann. Symp. Foundations of Computer Science (FOCS'01), pp. 232-241, 2001.
[10] D. Frigioni, M. Ioffreda, U. Nanni, and G. Pasquale, “Experimental Analysis of Dynamic Algorithms for the Single-Source Shortest-Path Problem,” ACM J. Experimental Algorithms, vol. 3, p. 5, 1998.
[11] D. Frigioni, A. Marchetti-Spaccamela, and U. Nanni, “Semidynamic Algorithms for Maintaining Single-Source Shortest Path Trees,” Algorithmica, vol. 22, no. 3, pp. 250-274, Nov. 1998.
[12] D. Frigioni, A. Marchetti-Spaccamela, and U. Nanni, “Fully Dynamic Algorithms for Maintaining Shortest Paths Trees,” J.Algorithms, vol. 34, no. 2, pp. 251-281, 2000.
[13] V. King, “Fully Dynamic Algorithms for Maintaining All-Pairs Shortest Paths and Transitive Closure in Digraphs,” Proc. 40th IEEE Symp. Foundations of Computer Science (FOCS '99), pp. 81-91, 1999.
[14] P. Klein, S. Rao, M. Rauch, and S. Subramanian, “Faster Shortest-Path Algorithms for Planar Graphs,” Proc. 26th Ann. ACM Symp. Theory of Computing (STOC '94), pp. 27-37, 1994.
[15] P. Narváez, K. Siu, and H. Tzeng, “New Dynamic Algorithms for Shortest Path Tree Computation,” ACM Trans. Networking, vol. 8, no. 6, pp. 734-746, 2000.
[16] P. Narváez, K. Siu, and H. Tzeng, “New Dynamic SPT Algorithm Based on a Ball-and-String Model,” ACM Trans. Networking, vol. 9, no. 6, pp. 706-718, 2001.
[17] S. Nguyen, S. Pallottino, and M.G. Scutellá, “A New Dual Algorithm for Shortest Path Reoptimization,” Transportation and Network Analysis: Current Trends, pp. 221-235, Kluwer Academic Publishers, 2002.
[18] G. Ramalingam and T.W. Reps, “An Incremental Algorithm for a Generalization of the Shortest-Path Problem,” J. Algorithms, vol. 21, no. 2, pp. 267-305, 1996.
[19] G. Ramalingam and T.W. Reps, “On the Computational Complexity of Dynamic Graph Problems,” Theoretical Computer Science, vol. 158, nos. 1-2, pp. 233-277, 1996.
[20] R.E. Tarjan, “Sensitivity Analysis of Minimum Spanning Trees and Shortest Path Trees,” Information Processing Letters, vol. 14, no. 1, pp. 30-33, Mar. 1982.
[21] B. Xiao, Q. Zhuge, and E.H.-M. Sha, “Efficient Algorithms for Dynamic Update of Shortest Path Tree in Networking,” J.Computers and Their Applications, vol. 11, no. 1, 2003.

Index Terms:
Dynamic shortest path, shortest path trees, dynamic graphs, dynamic algorithms, graph algorithms, routing protocol.
Edward P.F. Chan, Yaya Yang, "Shortest Path Tree Computation in Dynamic Graphs," IEEE Transactions on Computers, vol. 58, no. 4, pp. 541-557, April 2009, doi:10.1109/TC.2008.198
Usage of this product signifies your acceptance of the Terms of Use.