Skip to main content

Fast parallel generation of random permutations

  • Parallel Algorithms (Session 10)
  • Conference paper
  • First Online:
Automata, Languages and Programming (ICALP 1991)

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

Included in the following conference series:

Abstract

We study the problem of generating random permutations, i.e., of drawing random elements from the uniform distribution over the set of all permutations of a finite set. Our results are the following, where space bounds of O(n) are omitted.

(A) Random permutations of {1,...,n} can be computed on a CRCW PRAM either in constant expected time using O(nlog(k) n) processors and O(nlog(k) n) space, where k ε ℕ is arbitrary but fixed, or optimally in O(log*n) expected time using O(n/log*n) processors;

(B) Disregarding a small failure probability, the computation of random permutations reduces to integer sorting. In particular, random permutations of {1,...,n} can be computed on an EREW PRAM either in O(log n) expected time using n processors, or in O((log n)5/3(log log n)1/3) expected time using O(n/log n) processors;

(C) Random permutations of {1,..., n} can be computed either on an EREW PRAM in O(log n) time using n processors and O(n 2) space, on an EREW PRAM in O((log n)2) time using O(n/log n) processors, on a CREW PRAM in O(log n log log n) time using O(n/log log n) processors,or on a CREW PRAM in O(log n log log log n) time using O(n/log log log n) processors and O(n 1+ε) space, for arbitrary fixed ε>0.

Supported in part by the Deutsche Forschungsgemeinschaft, SFB 124, TP B2, VLSI Entwurfsmethoden und Parallelität, and in part by the ESPRIT II Basic Research Actions Program of the EC under contract No. 3075 (project ALCOM).

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

  • Albers, S., and Hagerup, T. (1991), Improved Parallel Integer Sorting without Concurrent Writing, manuscript.

    Google Scholar 

  • Anderson, R. J. (1990), Parallel Algorithms for Generating Random Permutations on a Shared Memory Machine, in Proc. 2nd Annual ACM Symposium on Parallel Algorithms and Architectures, pp. 95–102.

    Google Scholar 

  • Berkman, O., and Vishkin, U. (1989), Recursive *-Tree Parallel Data-Structure, in Proc. 30th Annual Symposium on Foundations of Computer Science, pp. 196–202.

    Google Scholar 

  • Berkman, O., JáJá, J., Krishnamurthy, S., Thurimella, R., and Vishkin, U. (1990), Some Triply-Logarithmic Parallel Algorithms, in Proc. 31st Annual Symposium on Foundations of Computer Science, pp. 871–881.

    Google Scholar 

  • Bilardi, G., and Nicolau, A. (1989), Adaptive Bitonic Sorting: An Optimal Parallel Algorithm for Shared-Memory Machines, SIAM J. Comput.18, pp. 216–228.

    Google Scholar 

  • Chlebus, B. S., Diks, K., Hagerup, T., and Radzik, T. (1989), New Simulations between CRCW PRAMs, in Proc. 7th International Conference on Fundamentals of Computation Theory, Springer Lecture Notes in Computer Science, Vol. 380, pp. 95–104.

    Google Scholar 

  • Eppstein, D., and Galil, Z. (1988), Parallel Algorithmic Techniques for Combinatorial Computation, Ann. Rev. Comput. Sci.3, pp. 233–283.

    Google Scholar 

  • Grolmusz, V., and Ragde, P. (1987), Incomparability in Parallel Computation, in Proc. 28th Annual Symposium on Foundations of Computer Science, pp. 89–98.

    Google Scholar 

  • Hagerup, T., and Rüb, C. (1989), Optimal Merging and Sorting on the EREW PRAM, Inform. Proc. Lett.33, pp. 181–185.

    Google Scholar 

  • Hagerup, T., and Rüb, C. (1990), A Guided Tour of Chernoff Bounds, Inform. Proc. Lett.33, pp. 305–308.

    Google Scholar 

  • Karp, R. M. (1988), The Probabilistic Analysis of Combinatorial Algorithms, class notes, Univ. California, Berkeley.

    Google Scholar 

  • Kruskal, C. P. (1983), Searching, Merging, and Sorting in Parallel Computation, IEEE Trans. Comput.32, pp. 942–946.

    Google Scholar 

  • Kruskal, C. P., Rudolph, L., and Snir, M. (1990), Efficient Parallel Algorithms for Graph Problems, Algorithmica5, pp. 43–64.

    Google Scholar 

  • Matias, Y., and Vishkin, U. (1991), Converting High Probability into Nearly-Constant Time — with Applications to Parallel Hashing, preliminary version. Also in Proc. 23rd Annual ACM Symposium on Theory of Computing, to appear.

    Google Scholar 

  • Miller, G. L., and Reif, J. H. (1985), Parallel Tree Contraction and Its Application, in Proc. 26th Annual Symposium on Foundations of Computer Science, pp. 478–489.

    Google Scholar 

  • Ragde, P. (1990), The Parallel Simplicity of Compaction and Chaining, in Proc. 17th International Colloquium on Automata, Languages and Programming, Springer Lecture Notes in Computer Science, Vol. 443, pp. 744–751.

    Google Scholar 

  • Rajasekaran, S., and Reif, J. H. (1989), Optimal and Sublogarithmic Time Randomized Parallel Sorting Algorithms, SIAM J. Comput.18, pp. 594–607.

    Google Scholar 

  • Raman, R. (1990), The Power of Collision: Randomized Parallel Algorithms for Chaining and Integer Sorting, in Proc. 10th Conference on Foundations of Software Technology and Theoretical Computer Science, Springer Lecture Notes in Computer Science, Vol. 472, pp. 161–175.

    Google Scholar 

  • Reif, J. H. (1985), An Optimal Parallel Algorithm for Integer Sorting, in Proc. 26th Annual Symposium on Foundations of Computer Science, pp. 496–504.

    Google Scholar 

  • Sedgewick, R. (1977), Permutation Generation Methods, Comp. Surv.9, pp. 137–164.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Javier Leach Albert Burkhard Monien Mario Rodríguez Artalejo

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hagerup, T. (1991). Fast parallel generation of random permutations. In: Albert, J.L., Monien, B., Artalejo, M.R. (eds) Automata, Languages and Programming. ICALP 1991. Lecture Notes in Computer Science, vol 510. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-54233-7_151

Download citation

  • DOI: https://doi.org/10.1007/3-540-54233-7_151

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-47516-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics