Delayed path coupling and generating random permutations

We consider the problem of generating permutations almost uniformly at random in distributed and parallel systems. We propose a simple distributed scheme for permuting at random, which we call distributed mixing, and provide its precise stochastic analysis. Our main result is that distributed mixing needs log n simple point-to-point communication rounds to generate a permutation almost uniformly at random. We further apply distributed mixing to design very fast parallel algorithms for OCPC and QRQW parallel computers (with runtimes log log n and √log n respectively). Our analysis of distributed mixing is based on the analysis of the mixing time of the Markov chain governing the process. The main technical tool developed in the paper is a novel method of analyzing convergence of Markov chains. Our method, called delayed path coupling, is a refinement of the classical coupling technique and the path coupling technique of Bubley and Dyer, and its main, novel feature is the use of possible non-Markovian coupling. © 2000 John Wiley & Sons, Inc. Random Struct. Alg., 17, 238–259, 2000 Correspondence to: M. Kutyłowski * Part of this work was done while the authors were with the University of Paderborn and the second author was with the University of Wrocław. Research partially supported by KBN grant 8 T11C 032 15, ALCOM EU ESPRIT Long Term Research Project 20244 (ALCOM-IT), DFG-Sonderforschungsbereich 376 “Massive Parallelität”, and DFG Leibniz Grant Me872/6-1. A preliminary report on this research appeared in Delayed path coupling and generating random permutations via distributed stochastic processes, A. Czumaj, P. Kanarek, M. Kutyłowski, and K. Loryś, Proceedings of the 10th ACM-SIAM Symposium on Discrete Algorithms, pp. 271–280, SIAM, 1999. © 2000 John Wiley & Sons, Inc.

[1]  Artur Czumaj,et al.  Recovery Time of Dynamic Allocation Processes , 1998, SPAA '98.

[2]  J. Reif,et al.  Parallel Tree Contraction Part 1: Fundamentals , 1989, Adv. Comput. Res..

[3]  Artur Czumaj,et al.  Delayed path coupling and generating random permutations via distributed stochastic processes , 1999, SODA '99.

[4]  Sanguthevar Rajasekaran,et al.  Optimal and Sublogarithmic Time Randomized Parallel Sorting Algorithms , 1989, SIAM J. Comput..

[5]  P. Diaconis,et al.  Generating a random permutation with random transpositions , 1981 .

[6]  Martyn Amos,et al.  RCN algorithms for the uniform generation of combinatorial structures , 1996, SODA '96.

[7]  Uzi Vishkin,et al.  Converting high probability into nearly-constant time—with applications to parallel hashing , 1991, STOC '91.

[8]  Richard J. Anderson Optical Communication for Pointer Based Algorithms , 1988 .

[9]  Daniel R. Simon,et al.  Cryptographic defense against traffic analysis , 1993, STOC.

[10]  Richard J. Anderson Parallel algorithms for generating random permutations on a shared memory machine , 1990, SPAA '90.

[11]  Torben Hagerup Fast Parallel Generation of Random Permutations , 1991, ICALP.

[12]  Martin E. Dyer,et al.  A more rapidly mixing Markov chain for graph colorings , 1998, Random Struct. Algorithms.

[13]  John H. Reif,et al.  An optimal parallel algorithm for integer sorting , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[14]  Alistair Sinclair,et al.  Algorithms for Random Generation and Counting: A Markov Chain Approach , 1993, Progress in Theoretical Computer Science.

[15]  Martin E. Dyer,et al.  Beating the 2Δ bound for approximately counting colourings: a computer-assisted proof of rapid mixing , 1998, SODA '98.

[16]  Martin E. Dyer,et al.  A Random Polynomial Time Algorithm for Approximating the Volume of Convex Bodies , 1989, STOC.

[17]  T. Lindvall Lectures on the Coupling Method , 1992 .

[18]  Yossi Matias,et al.  The QRQW PRAM: accounting for contention in parallel algorithms , 1994, SODA '94.

[19]  Rajeev Motwani,et al.  Randomized Algorithms , 1995, SIGA.

[20]  P. Diaconis,et al.  SHUFFLING CARDS AND STOPPING-TIMES , 1986 .

[21]  D. Aldous Random walks on finite groups and rapidly mixing markov chains , 1983 .

[22]  Martin E. Dyer,et al.  Faster random generation of linear extensions , 1999, SODA '98.

[23]  P. Diaconis Group representations in probability and statistics , 1988 .

[24]  Eric Vigoda,et al.  Improved bounds for sampling colorings , 1999, 40th Annual Symposium on Foundations of Computer Science (Cat. No.99CB37039).

[25]  Frank Thomson Leighton,et al.  Doubly Logarithmic Communication Algorithms for Optical-Communication Parallel Computers , 1997, SIAM J. Comput..

[26]  Catherine S. Greenhill,et al.  Surveys in Combinatorics, 1999: Random Walks on Combinatorial Objects , 1999 .

[27]  Yossi Matias,et al.  Efficient low-contention parallel algorithms , 1994, SPAA '94.

[28]  Ravi Kannan,et al.  Markov chains and polynomial time algorithms , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[29]  Mark Jerrum,et al.  The Markov chain Monte Carlo method: an approach to approximate counting and integration , 1996 .

[30]  Martin E. Dyer,et al.  Path coupling: A technique for proving rapid mixing in Markov chains , 1997, Proceedings 38th Annual Symposium on Foundations of Computer Science.

[31]  Martin Dyer,et al.  A Genuinely Polynomial-time Algorithm for Sampling Two-rowed Contingency Tables (extended Abstract) , 1998 .

[32]  Artur Czumaj,et al.  Fast Generation of Random Permutations via Networks Simulation , 1996, ESA.