Using Selective Path-Doubling for Parallel Shortest-Path Computations

We11A preliminary version appeared in the “Proceedings of the 2nd Israeli Symposium on the Theory of Computing and Systems, 1993.”consider parallel shortest-paths computations in weighted undirected graphsG=(V,E), wheren=|V| andm=|E|. The standardO(n3) work path-doubling (Floyd-Warshall) algorithm consists ofO(logn) phases, where in each phase, for every triplet of vertices (u1,u2,u3)?V3, the distance betweenu1andu3is updated to be no more than the sum of the previous-phase distances between {u1,u2} and {u2,u3}. We introduce a new NC algorithm that for ?=o(n), considers onlyO(n?2) triplets. Our algorithm performsO(n?2) work and augmentsEwithO(n?) new weighted edges such that between every pair of vertices, there exists a minimum weight path of size (number of edges)O(n/?) (whereO(f)?O(fpolylogn)). To compute shortest-paths, we apply to the augmented graph algorithms that are efficient for small-size shortest paths. We obtain anO(t) timeO(|S|n2+n3/t2) work deterministic PRAM algorithm for computing shortest-paths from |S| sources to all other vertices, wheret?nis a parameter. When the ratio of the largest edge weight and the smallest edge weight isnO(polylogn), the algorithm computes shortest paths. When weights are arbitrary, it computes paths within a factor of 1+n??(polylogn)of shortest.

[1]  Raimund Seidel,et al.  On the all-pairs-shortest-path problem , 1992, STOC '92.

[2]  Richard Cole,et al.  Parallel merge sort , 1988, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[3]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[4]  Uzi Vishkin,et al.  An O(log n) Parallel Connectivity Algorithm , 1982, J. Algorithms.

[5]  Philip N. Klein,et al.  A parallel randomized approximation scheme for shortest paths , 1992, STOC '92.

[6]  Don Coppersmith,et al.  Matrix multiplication via arithmetic progressions , 1987, STOC.

[7]  D. Knuth,et al.  Mathematics for the Analysis of Algorithms , 1999 .

[8]  Mihalis Yannakakis,et al.  High-Probability Parallel Transitive-Closure Algorithms , 1991, SIAM J. Comput..

[9]  Richard J. Cole An Optimally Efficient Selection Algorithm , 1988, Inf. Process. Lett..

[10]  Richard M. Karp,et al.  Parallel Algorithms for Shared-Memory Machines , 1991, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity.

[11]  Edith Cohen,et al.  Polylog-time and near-linear work approximation scheme for undirected shortest paths , 1994, STOC '94.

[12]  Thomas H. Spencer Time-work tradeoffs for parallel graph algorithms , 1991, SODA '91.

[13]  Thomas H. Spencer More time-work tradeoffs for parallel graph algorithms , 1991, SPAA '91.

[14]  Gary L. Miller,et al.  An Improved Parallel Algorithm that Computes the BFS Numbering of a Directed Graph , 1988, Information Processing Letters.

[15]  J. Van Leeuwen,et al.  Handbook of theoretical computer science - Part A: Algorithms and complexity; Part B: Formal models and semantics , 1990 .

[16]  Noga Alon,et al.  Witnesses for Boolean matrix multiplication and for shortest paths , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.