zbMATH — the first resource for mathematics

Fast generation of random permutations via networks simulation. (English) Zbl 1379.68335
Diaz, Josep (ed.) et al., Algorithms – ESA ’96. 4th annual European symposium, Barcelona, Spain, September 25–27, 1996. Proceedings. Berlin: Springer (ISBN 3-540-61680-2). Lecture Notes in Computer Science 1136, 246-260 (1996).
Summary: We consider the classical problem of generating random permutations with the uniform distribution. That is, we require that for an arbitrary permutation \(\pi\) of \(n\) elements, with probability \(1/n\)! the machine halts with the \(i\)th output cell containing \(\pi(i)\), for \(1\leq i\leq n\). We study this problem on two models of parallel computations: the CREW PRAM and the EREW PRAM.
The main result of the paper is an algorithm for generating random permutations that runs in \(O(\log\log n)\) time and uses \(O(n^{1+o(1)})\) processors on the CREW PRAM. This is the first \(o(\log n)\)-time CREW PRAM algorithm for this problem.
On the EREW PRAM we present a simple algorithm that generates a random permutation in time \(O(\log n)\) using \(n\) processors and \(O(n)\) space. This algorithm matches the running time and the number of processors used of the best previously known algorithms for the CREW PRAM, and performs better as far as the memory usage is considered.
The common and novel feature of both our algorithms is to design first a suitable random network generating a permutation and then to simulate this network on the PRAM model in a fast way.
For the entire collection see [Zbl 0855.00034].

68W10 Parallel algorithms in computer science
68R05 Combinatorics in computer science
68W40 Analysis of algorithms
Full Text: DOI