Advances in Randomized Parallel Computing pp 41-66 | Cite as

# Random Sampling Techniques in Parallel Algorithms

Chapter

## Abstract

Random sampling is an important tool in the design of parallel algorithms. Using random sampling it is possible to obtain simple parallel algorithms which are efficient in practice. We will focus on the use of random sampling in fundamental problems such as sorting, selection, list ranking and graph connectivity.

## Keywords

Parallel Algorithm Minimum Span Tree List Ranking Step Complexity Span Forest
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

## Preview

Unable to display preview. Download preview PDF.

## References

- [1]A. Aggarwal, M. M. Klawe, S. Moran, P. Shor and R. Wilber. Geometric applications of a matrix searching problem.
*Algorithmica***2**(1987), pp. 209–233.MathSciNetCrossRefGoogle Scholar - [2]A. Aggarwal and J. Park. Notes on searching in multidimensional monotone arrays (preliminary version). In
*Proc. 29th IEEE Conference on the Foundations of Computer Science*(1988), pp. 497–512.Google Scholar - [3]M. J. Atallah. A faster parallel algorithm for a matrix searching problem.
*Algorithmica*,**9**(1993), pp. 156–167.MathSciNetzbMATHCrossRefGoogle Scholar - [4]M. J Atallah and S. R. Kosaraju. An efficient parallel algorithm for the row minima of a totally monotone matrix. J.
*Algorithms*,**13**(1992), pp. 394–413.Google Scholar - [5]B. Awerbuch and Y. Shiloach. New connectivity and MSF algorithms for Ultracomputer and PRAM.
*IEEE Trans. Computers***36**(1987), pp. 1258–1263.MathSciNetzbMATHCrossRefGoogle Scholar - [6]Y. Azar and U. Vishkin. Tight comparison bounds on the complexity of parallel sorting.
*SIAM J. Computing*,**16**(1987), pp. 458–464.MathSciNetzbMATHCrossRefGoogle Scholar - [7]S. Baase. Introduction to parallel connectivity, list ranking and connectivity. In J. H. Reif, ed.,
*Synthesis of Parallel Algorithms*, Morgan Kaufmann, 1993, pp. 61–114.Google Scholar - [8]H. Bast and T. Hagerup. Fast parallel space allocation, estimation and integer sorting.
*Information and Computation*,**123**(1995), pp. 72–110.MathSciNetzbMATHCrossRefGoogle Scholar - [9]G. E. Blelloch. Scans as primitive parallel operations.
*IEEE Trans. Computers***C-38**(1989), pp. 1526–1538.Google Scholar - [10]G. E. Blelloch.
*Vector Models for Data-Parallel Computing*, MIT Press, 1990.Google Scholar - [11]G. E. Blelloch. NESL: A nested data-parallel language (version 3.0). Technical Report CS-CMU-94-112, Carnegie-Mellon University, 1994.Google Scholar
- [12]G. E. Blelloch, C. E. Leiserson, B. M. Maggs, C. G. Plaxton, S. J. Smith and M. Zagha. A comparison of sorting algorithms for the Connection Machine CM–2. In
*Proc. 3rd Annual ACM Symposium on Parallel Algorithms and Architectures*, ACM Press, 1991, pp. 3–16.Google Scholar - [13]R. B. Boppana. The average-case parallel complexity of sorting.
*Information Processing Letters*,**33**(1989).Google Scholar - [14]P. G. Bradford, R. Fleischer and M. Smid. More efficient parallel totally monotone matrix searching.
*J. Algorithms***23**(1997), pp. 386–400.MathSciNetzbMATHCrossRefGoogle Scholar - [15]P. G. Bradford, G. J. E. Rawlins and G. E. Shannon. Efficient matrix chain ordering in polylog time.
*SIAM J. Computing***27**(1998), pp. 466–490.MathSciNetzbMATHCrossRefGoogle Scholar - [16]R. Cole, P. N. Klein and R. E. Tarjan. Finding minimum spanning forests in logarithmic time and linear work using random sampling. In
*Proc. Symposium of the 8th Annual ACM Symposium on Parallel Algorithms and Architectures*, ACM Press, 1996, pp. 243–250.Google Scholar - [17]R. Cole, P. N. Klein and R. E. Tarjan. A linear-work parallel algorithm for finding minimum spanning trees. In
*Proc. Symposium of the 6th Annual ACM Symposium on Parallel Algorithms and Architectures*, ACM Press, 1994, pp. 11–15.Google Scholar - [18]R. Cole. Parallel merge sort.
*SIAM J. Computing*,**17**(1988), pp. 770–785.zbMATHCrossRefGoogle Scholar - [19]T. H. Cormen, C. E. Leiserson and R. L. Rivest.
*Introduction to Algorithms*, MIT Press, 1990.Google Scholar - [20]L. Devroye, Universal limit laws for depths in random trees,
*SIAM J. Computing*,**28**(1999), 409–432 (to appear).Google Scholar - [21]W. Feller.
*An Introduction to Probability Theory and its Applications v.1*(3rd Ed.), John Wiley & Sons, 1968.Google Scholar - [22]F. E. Fich, P. Ragde, and A. Wigderson. Relations among concurrent write models of parallel computation.
*SIAM J. Computing*,**17**(1988), pp. 606–627.MathSciNetzbMATHCrossRefGoogle Scholar - [23]R. W. Floyd and R. L. Rivest. Expected time bounds for selection.
*Comm. of the ACM***18**(1975), pp. 165–172.zbMATHCrossRefGoogle Scholar - [24]S. Fortune and J. Wyllie. Parallelism in random access machines. In
*Proc. 10th ACM Symposium on Theory of Computing*(1978), pp. 114–118.Google Scholar - [25]M. L. tredman and R. E. Tarjan. Fibonacci heaps and their uses in improved network optimization problems.
*J. ACM*,**34**(1987), pp. 596–615.CrossRefGoogle Scholar - [26]Z. Galil and K. Park. Dynamic programming with convexity, concavity, and sparsity.
*Theoretical Computer Science***92**(1992).Google Scholar - [27]H. Gazit. Randomized parallel connectivity. In J. H. Reif, ed.,
*Synthesis of Parallel Algorithms*, Morgan Kaufmann, 1993, pp. 197–214.Google Scholar - [28]Y. Gil and L. Rudolph. Counting and packing in parallel, in
*Proc. International Conference on Parallel Processing*, pp. 1000–1002, IEEE Computer Society Press, 1986.Google Scholar - [29]J. Greiner. A comparison of parallel algorithms for connected components. In
*Proc. Symposium of the 6th Annual ACM Symposium on Parallel Algorithms and Architectures*, ACM Press, 1994, pp. 16–23.Google Scholar - [30]S. Halperin and U. Zwick. Optimal randomized EREW PRAM algorithms for finding spanning forests and for other basic connectivity problems. In
*Proc. 7th Annual ACM-SIAM Symposium on Discrete Algorithms*, SIAM, 1996, pp. 438–447.Google Scholar - [31]T. Hagerup and R. Raman. Waste makes haste: tight bounds for loose parallel sorting. In
*Proc. 33rd IEEE Conference on Foundations of Computer Science*(FOCS), pp. 628–637, 1992.Google Scholar - [32]J. JáJá.
*An Introduction to Parallel Algorithms*, Addison-Wesley, 1992.Google Scholar - [33]D. Karger.
*Randomization in graph optimization problems*. Optima 58 (1998), pp. 1–10.Google Scholar - [34]D. Karger.
*Random sampling in graph optimization problems*. Ph.D. Thesis, Department of Computer Science, Stanford University, 1995.Google Scholar - [35]D. Karger, P. N. Klein and R. E. Tarjan. A randomized linear-time algorithm for finding minimum spanning trees.
*J. ACM***42**(1995), pp. 321–328.MathSciNetzbMATHCrossRefGoogle Scholar - [36]S. Khuller, B. Raghavachari and N. Young. Balancing minimum spanning and shortest path trees.
*Algorithmica***14**(1995), pp. 305–321.MathSciNetzbMATHCrossRefGoogle Scholar - [37]T. W. Lam and Kwong-fai Chan. Finding least-weight subsequences with fewer processors.
*Algorithmica***9**(1993), pp. 615–628.MathSciNetzbMATHCrossRefGoogle Scholar - [38]H. Li and K. C. Sevcik. Parallel sorting by overpartitioning. In Proc.
*6th Annual ACM Symposium on Parallel Algorithms and Architectures*, ACM Press, 1994, pp. 46–57.Google Scholar - [39]R. J. Lipton and J. F. Naughton and D. A. Schneider and S. Seshadri. Efficient sampling strategies for relational database operations.
*Theoretical Computer Science*,**116**(1993), pp. 195–226.MathSciNetzbMATHCrossRefGoogle Scholar - [40]Y. Matias and U. Vishkin. Converting high probability into nearly-constant time—with applications to parallel hashing (extended abstract).
*Proceedings of the 23rd Annual ACM Symposium on Theory of Computing*, pp. 307–316, 1991.Google Scholar - [41]N. Megiddo. Parallel algorithms for finding the maximum and median almost surely in constant time. Technical Report, Graduate School of Industrial Administration, Carnegie-Mellon University, 1982.Google Scholar
- [42]R. Motwani and P. Raghavan.
*Randomized Algorithms*, Cambridge University Press, 1995.Google Scholar - [43]K. Mulmuley.
*Computational Geometry: An Introduction Through Randomized Algorithms*, Prentice-Hall, 1994.Google Scholar - [44]E. M. Palmer.
*Graphical Evolution: An Introduction to the Theory of Random Graphs*. John Wiley, 1985.Google Scholar - [45]S. Rajasekaran and J. H. Reif. Optimal and sublogarithmic time randomized parallel sorting algorithms.
*SIAM J. Computing*,**18**(1989), pp. 594–607.MathSciNetzbMATHCrossRefGoogle Scholar - [46]S. Rajasekaran and S. Sen. Random sampling techniques and parallel algorithm design. In J. H. Reif, ed.,
*Synthesis of Parallel Algorithms*, Morgan Kaufmann, 1993, pp. 411–451.Google Scholar - [47]R. Raman and U. Vishkin. Optimal randomized parallel algorithms for computing the row maxima of a totally monotone matrix. In
*Proc. 5th ACM-SIAM Symposium on Discrete Algorithms*, pp. 613–621, 1994.Google Scholar - [48]A. G. Ranade. A simple optimal list ranking algorithm.
*Proc. 5th International Conference on High-Performance Computing (HiPC ’98)*, to appear, 1998.Google Scholar - [49]M. Reid–Miller. List ranking and list scan on the Cray C-90. In
*Proc. Symposium of the 6th Annual ACM Symposium on Parallel Algorithms and Architectures*, ACM Press, 1994, pp. 104–113.Google Scholar - [50]M. Reid-Miller, G. Miller and F. Modugno. In J. H. Reif, ed.,
*Synthesis of Parallel Algorithms*, Morgan Kaufmann, 1993, pp. 115–194.Google Scholar - [51]J. H. Reif. Optimal parallel algorithms for integer sorting and graph connectivity. Technical Report TR-08-85, Harvard University, 1985.Google Scholar
- [52]J. H. Reif and L. G. Valiant. A logarithmic time sort for linear size networks.
*J. ACM***34**(1987), pp. 60–76.MathSciNetCrossRefGoogle Scholar - [53]J. H. Reif and S. Sen. Optimal randomized parallel algorithms for computational geometry.
*Algorithmica***7**(1992), pp. 91–117.MathSciNetzbMATHCrossRefGoogle Scholar - [54]R. Reischuk. Probabilistic parallel algorithms for sorting and selection.
*SIAM J. Computing*,**14**(1985), pp. 396–409.MathSciNetzbMATHCrossRefGoogle Scholar - [55]Y. Shiloach and U. Vishkin. An O(logn) parallel connectivity algorithm.
*J. Algorithms***3**(1981), pp. 57–67.MathSciNetCrossRefGoogle Scholar - [56]J. D. Ullman and M. Yannakakis. High-probability parallel transitive closure algorithms.
*SIAM J. Computing***20**(1991), pp. 100–125.MathSciNetzbMATHCrossRefGoogle Scholar - [57]L. G. Valiant. A bridging model for parallel computation.
*Communications of the ACM*,**33**, pp. 103–111, 1990.CrossRefGoogle Scholar - [58]U. Vishkin. Advanced parallel prefix-sums, list ranking and connectivity. In J. H. Reif, ed.,
*Synthesis of Parallel Algorithms*, Morgan Kaufmann, 1993, pp. 341–406.Google Scholar

## Copyright information

© Kluwer Academic Publishers 1999