Shortest Path Algorithms: Engineering Aspects

  • Andrew V. Goldberg
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2223)

Abstract

We review shortest path algorithms based on the multi-level bucket data structure [6] and discuss the interplayb etween theorya nd engineering choices that leads to efficient implementations. Our experimental results suggest that the caliber heuristic [17] and adaptive parameter selection give an efficient algorithm, both on typical and on hard inputs, for a wide range of arc lengths.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    R. K. Ahuja, K. Mehlhorn, J. B. Orlin, and R. E. Tarjan. Faster Algorithms for the Shortest Path Problem. J. Assoc. Comput. Mach., 37(2):213–223, April 1990.MathSciNetCrossRefMATHGoogle Scholar
  2. 2.
    P. Van Emde Boas, R. Kaas, and E. Zijlstra. Design and Implementation of an Efficient PriorityQ ueue. Math. Systems Theory, 10:99–127, 1977.CrossRefMATHGoogle Scholar
  3. 3.
    B. V. Cherkassky and A. V. Goldberg. Negative-Cycle Detection Algorithms. Math. Prog., 85:277–311, 1999.MathSciNetCrossRefMATHGoogle Scholar
  4. 4.
    B. V. Cherkassky, A. V. Goldberg, and T. Radzik. Shortest Paths Algorithms: Theoryan d Experimental Evaluation. Math. Prog., 73:129–174, 1996.MATHGoogle Scholar
  5. 5.
    B. V. Cherkassky, A. V. Goldberg, and C. Silverstein. Buckets, Heaps, Lists, and Monotone Priority Queues. SIAM J. Comput., 28:1326–1346, 1999.MathSciNetCrossRefMATHGoogle Scholar
  6. 6.
    E. V. Denardo and B. L. Fox. Shortest-Route Methods: 1. Reaching, Pruning, and Buckets. Oper. Res., 27:161–186, 1979.MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    R. B. Dial. Algorithm 360: Shortest Path Forest with Topological Ordering. Comm. ACM, 12:632–633, 1969.CrossRefGoogle Scholar
  8. 8.
    R. B. Dial, F. Glover, D. Karney, and D. Klingman. A Computational Analysis of Alternative Algorithms and Labeling Techniques for Finding Shortest Path Trees. Networks, 9:215–248, 1979.MathSciNetCrossRefMATHGoogle Scholar
  9. 9.
    E. W. Dijkstra. A Note on Two Problems in Connexion with Graphs. Numer. Math., 1:269–271, 1959.MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    E. A. Dinic. Economical algorithms for finding shortest paths in a network. In Yu.S. Popkov and B. L. Shmulyian, editors, Transportation Modeling Systems, pages 36–44. Institute for System Studies, Moscow, 1978. In Russian.Google Scholar
  11. 11.
    L. Ford. Network Flow Theory. Technical Report P-932, The Rand Corporation, 1956.Google Scholar
  12. 12.
    L. R. Ford, Jr. and D. R. Fulkerson. Flows in Networks. Princeton Univ. Press, Princeton, NJ, 1962.Google Scholar
  13. 13.
    M. L. Fredman and R. E. Tarjan. Fibonacci Heaps and Their Uses in Improved Network Optimization Algorithms. J. Assoc. Comput. Mach., 34:596–615, 1987.MathSciNetCrossRefGoogle Scholar
  14. 14.
    M. L. Fredman and D. E. Willard. Trans-dichotomous Algorithms for Minimum Spanning Trees and Shortest Paths. J. Comp. and Syst. Sci., 48:533–551, 1994.MathSciNetCrossRefMATHGoogle Scholar
  15. 15.
    G. Gallo and S. Pallottino. Shortest Paths Algorithms. Annals of Oper. Res., 13:3–79, 1988.MathSciNetCrossRefGoogle Scholar
  16. 16.
    F. Glover, R. Glover, and D. Klingman. Computational Studyof an Improved Shortest Path Algorithm. Networks, 14:25–37, 1984.CrossRefGoogle Scholar
  17. 17.
    A. V. Goldberg. A Simple Shortest Path Algorithm with Linear Average Time. Technical Report STAR-TR-01-03, STAR Lab., InterTrust Tech., Inc., Santa Clara, CA, USA, 2001.Google Scholar
  18. 18.
    A. V. Goldberg and C. Silverstein. Implementations of Dijkstra’s Algorithm Based on Multi-Level Buckets. In P. M. Pardalos, D.W. Hearn, and W.W. Hages, editors, Lecture Notes in Economics and Mathematical System 450 (Refereed Proceedings), pages 292–327. Springer Verlag, 1997.Google Scholar
  19. 19.
    T. Hagerup. Improved Shortest Paths in the Word RAM. In 27th Int. Colloq. on Automata, Languages and Programming, Geneva, Switzerland, pages 61–72, 2000.Google Scholar
  20. 20.
    D. B. Johnson. Efficient Algorithms for Shortest Paths in Sparse Networs. J. Assoc. Comput. Mach., 24:1–13, 1977.CrossRefGoogle Scholar
  21. 21.
    U. Meyer. Single-Source Shortest Paths on Arbitrary Directed Graphs in Linear Average Time. In Proc. 12th ACM-SIAM Symposium on Discrete Algorithms, pages 797–806, 2001. A full version available as TR MPI-I-2001-1-002, Max-Planck-Institut für Informatik, Saarbrüken, Germany.Google Scholar
  22. 22.
    B. M. E. Moret and H. D. Shapiro. An Empirical Analysis of Algorithms for Constructing a Minimum Spanning Tree. In Proc. 2nd Workshop on Algorithms and Data Structures, 1991.Google Scholar
  23. 23.
    K. Noshita. A Theorem on the Expected Complexityof Dijkstra’s Shortest Path Algorithm. J. Algorithms, 6:400–408, 1985.MathSciNetCrossRefMATHGoogle Scholar
  24. 24.
    R. Raman. Fast Algorithms for Shortest Paths and Sorting. Technical Report TR 96-06, King’s Colledge, London, 1996.Google Scholar
  25. 25.
    R. Raman. PriorityQue ues: Small, Monotone and Trans-Dichotomous. In Proc. 4th Annual European Symposium Algorithms, pages 121–137. Springer-Verlag, Lect. Notes in CS 1136, 1996.Google Scholar
  26. 26.
    R. Raman. Recent Results on Single-Source Shortest Paths Problem. SIGACT News, 28:81–87, 1997.CrossRefGoogle Scholar
  27. 27.
    R. E. Tarjan. Data Structures and Network Algorithms. Societyf or Industrial and Applied Mathematics, Philadelphia, PA, 1983.Google Scholar
  28. 28.
    M. Thorup. Undirected Single-Source Shortest Paths with Positive IntegerWeights in Linear Time. J. Assoc. Comput. Mach., 46:362–394, 1999.CrossRefMATHGoogle Scholar
  29. 29.
    M. Thorup. On RAM Priority Queues. SIAM Journal on Computing, 30:86–109, 2000.MathSciNetCrossRefMATHGoogle Scholar
  30. 30.
    J. W. J. Williams. Algorithm 232 (Heapsort). Comm. ACM, 7:347–348, 1964.Google Scholar
  31. 31.
    F. B. Zhan and C. E. Noon. Shortest Path Algorithms: An Evaluation using Real Road Networks. Transp. Sci., 32:65–73, 1998.CrossRefMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Andrew V. Goldberg
    • 1
  1. 1.STAR Lab.InterTrust Technologies Corp.Santa ClaraUSA

Personalised recommendations