Skip to main content

Finding the k shortest paths in parallel

  • Parallel Algorithms
  • Conference paper
  • First Online:
STACS 97 (STACS 1997)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1200))

Included in the following conference series:

Abstract

A concurrent-read exclusive-write PRAM algorithm is developed to find the k shortest paths between pairs of vertices in an edge-weighted directed graph. Repetitions of vertices along the paths are allowed. The algorithm computes an implicit representation of the k shortest paths to a given destination vertex from every vertex of a graph with n vertices and m edges, using O(m + nk log2 k) work and O(log3 k log* k+ log n(log log k+ log* n)) time, assuming that a shortest path tree rooted at the destination is precomputed. The paths themselves can be extracted from the implicit representation in O(log k+log n) time, and O(n log n + L) work, where L is the total length of the output.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A. Borodin and J. E. Hopcroft. Routing, merging and sorting in parallel models of computation. Journal of Computer and System Sciences, 30:130–145, 1985.

    Article  Google Scholar 

  2. Gen-Huey Chen and Yung-Chen Hung. Algorithms for the constrained quickest path problem and the enumeration of quickest paths. Computers and operations research, 21(2):113–118, 1994.

    Article  Google Scholar 

  3. Y. L. Chen. Finding the k quickest simple paths in a network. Information Processing Letters, 50(2):89–92, April 1994.

    Article  Google Scholar 

  4. Y. L. Chen and Y. H. Chin. The quickest path problem. Computers and Operations Research, 17(2):153–161, 1990.

    Article  MathSciNet  Google Scholar 

  5. R. Cole. An optimally efficient selection algorithm. Information Processing Letters, 26:295–299, January 1988.

    Article  MathSciNet  Google Scholar 

  6. R. Cole. Parallel merge sort. SIAM Journal on Computing, 17(4):770–785, August 1988.

    Article  Google Scholar 

  7. David Eppstein. Finding the k shortest paths. In Proc. 35th IEEE Symposium on Foundations of Computer Science, pages 154–165, 1994.

    Google Scholar 

  8. G. David Forney, Jr. The Viterbi algorithm. Proceedings of the IEEE, 61(3):268–278, March 1973.

    Google Scholar 

  9. B. L. Fox. Calculating kth shortest paths. INFOR; Canadian Journal of Operational Research, 11(1):66–70, 1973.

    Google Scholar 

  10. Greg N. Frederickson. An optimal algorithm for selection in a min-heap. Information and Computation, 104:197–214, 1993.

    Article  Google Scholar 

  11. Greg N. Frederickson and Donald B. Johnson. The complexity of selection and ranking in X + Y and matrices with sorted columns. Journal of Computer and System Sciences, 24:197–208, 1982.

    Article  Google Scholar 

  12. Michael L. Fredman and Robert Endre Tarjan. Fibonacci heaps and their uses in improved network optimization algorithms. Journal of the ACM, 34(3):596–615, 1987.

    Article  Google Scholar 

  13. Y. Han, V. Pan, and J. Reif. Efficient parallel algorithms for computing all pair shortest paths in directed graphs. In 4th Annual ACM Symposium on Parallel Algorithms and Architectures, pages 353–362, 1992.

    Google Scholar 

  14. Walter Hoffman and Richard Pavley. A method of solution of the Nth best path problem. Journal of the ACM, 6:506–514, 1959.

    Article  Google Scholar 

  15. Richard Karp and Vijaya Ramachandran. Parallel algorithms for shared-memory machines. In Jan van Leeuwen, editor, Handbook of Theoretical Computer Science, volume A, pages 871–941. Elsevier, 1990.

    Google Scholar 

  16. N. Katoh, T. Ibaraki, and H. Mine. An efficient algorithm for K shortest simple paths. Networks, 12:411–427, 1982.

    Google Scholar 

  17. Richard C. Paige and Clyde P. Kruskal. Parallel algorithms for shortest paths problems. In Proceedings of the International Conference on Parallel Processing, pages 14–20, 1985.

    Google Scholar 

  18. Margaret Reid-Miller, Gary L. Miller, and Francesmary Modugno. List ranking and parallel tree contraction. In John H. Reif, editor, Synthesis of Parallel Algorithms, chapter 3. Morgan Kaufmann, 1993.

    Google Scholar 

  19. Eric Ruppert. Parallel algorithms for the k shortest paths and related problems. Master's thesis, University of Toronto, 1996.

    Google Scholar 

  20. Nambirajan Seshadri and Carl-Erik W. Sundberg. List Viterbi decoding algorithms with applications. IEEE Transactions on Communications, 42(2/3/4 Part I):313–323, 1994.

    Article  Google Scholar 

  21. Frank K. Soong and Eng-Fong Huang. A tree-trellis based fast search for finding the N best sentence hypotheses in continuous speech recognition. In Proceedings of the International Conference on Acoustics, Speech and Signal Processing, volume 1, pages 705–708, 1991.

    Google Scholar 

  22. Uzi Vishkin. An optimal parallel algorithm for selection. In Advances in Computing Research, volume 4, pages 79–86. JAI Press, 1987.

    Google Scholar 

  23. Jin Y. Yen. Finding the K shortest loopless paths. Management Science, 17(11):712–716, July 1971.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Rüdiger Reischuk Michel Morvan

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ruppert, E. (1997). Finding the k shortest paths in parallel. In: Reischuk, R., Morvan, M. (eds) STACS 97. STACS 1997. Lecture Notes in Computer Science, vol 1200. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0023482

Download citation

  • DOI: https://doi.org/10.1007/BFb0023482

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-62616-9

  • Online ISBN: 978-3-540-68342-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics