Randomized algorithms

Randomized algorithms, once viewed as a tool in computational number theory, have by now found widespread application. Growth has been fueled by the two major benefits of randomization: simplicity and speed. For many applications a randomized algorithm is the fastest algorithm available, or the simplest, or both. A randomized algorithm is an algorithm that uses random numbers to influence the choices it makes in the course of its computation. Thus its behavior (typically quantified as running time or quality of output) varies from one execution to another even with a fixed input. In the analysis of a randomized algorithm we establish bounds on the expected value of a performance measure (e.g., the running time of the algorithm) that are valid for every input; the distribution of the performance measure is on the random choices made by the algorithm based on the random bits provided to it.

[1]  J. Neumann Zur Theorie der Gesellschaftsspiele , 1928 .

[2]  W. T. Tutte The Factorization of Linear Graphs , 1947 .

[3]  D. R. Fulkerson,et al.  Maximal Flow Through a Network , 1956 .

[4]  R. Prim Shortest connection networks and some generalizations , 1957 .

[5]  Stephen J. Garland,et al.  Algorithm 97: Shortest path , 1962, Commun. ACM.

[6]  H. Davenport Multiplicative Number Theory , 1967 .

[7]  E. Berlekamp Factoring polynomials over large finite fields* , 1971, SYMSAC '71.

[8]  M. Pinsker,et al.  On the complexity of a concentrator , 1973 .

[9]  Frank Harary,et al.  Graphical enumeration , 1973 .

[10]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[11]  John T. Gill,et al.  Computational complexity of probabilistic Turing machines , 1974, STOC '74.

[12]  Vaughan R. Pratt,et al.  Every Prime has a Succinct Certificate , 1975, SIAM J. Comput..

[13]  L. Csanky,et al.  Fast parallel matrix inversion algorithms , 1975, 16th Annual Symposium on Foundations of Computer Science (sfcs 1975).

[14]  Ronald L. Rivest,et al.  Expected time bounds for selection , 1975, Commun. ACM.

[15]  Gary L. Miller Riemann's Hypothesis and Tests for Primality , 1976, J. Comput. Syst. Sci..

[16]  Gideon Yuval,et al.  An Algorithm for Finding All Shortest Paths Using N^(2.81) Infinite-Precision Multiplications , 1976, Inf. Process. Lett..

[17]  Volker Strassen,et al.  A Fast Monte-Carlo Test for Primality , 1977, SIAM J. Comput..

[18]  Gary L. Miller,et al.  On taking roots in finite fields , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[19]  Rusins Freivalds,et al.  Probabilistic Machines Can Use Less Running Time , 1977, IFIP Congress.

[20]  Andrew Chi-Chih Yao,et al.  Probabilistic computations: Toward a unified measure of complexity , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[21]  Renzo Sprugnoli,et al.  Perfect hashing functions , 1977, Commun. ACM.

[22]  Leonard M. Adleman,et al.  Two theorems on random polynomial time , 1978, 19th Annual Symposium on Foundations of Computer Science (sfcs 1978).

[23]  Andrew Chi-Chih Yao,et al.  Should tables be sorted? , 1981, 19th Annual Symposium on Foundations of Computer Science (sfcs 1978).

[24]  Richard Zippel,et al.  Probabilistic algorithms for sparse polynomials , 1979, EUROSAM.

[25]  Robert E. Tarjan,et al.  Storing a sparse table , 1979, CACM.

[26]  Leslie G. Valiant,et al.  The Complexity of Enumeration and Reliability Problems , 1979, SIAM J. Comput..

[27]  Robert E. Tarjan,et al.  Applications of Path Compression on Balanced Trees , 1979, JACM.

[28]  Larry Carter,et al.  Universal Classes of Hash Functions , 1979, J. Comput. Syst. Sci..

[29]  Leslie Lamport,et al.  Reaching Agreement in the Presence of Faults , 1980, JACM.

[30]  Michael O. Rabin,et al.  Probabilistic Algorithms in Finite Fields , 1980, SIAM J. Comput..

[31]  P. Hall,et al.  Martingale Limit Theory and Its Application , 1980 .

[32]  Manuel Blum,et al.  Equivalence of Free Boolean Graphs can be Decided Probabilistically in Polynomial Time , 1980, Inf. Process. Lett..

[33]  M. Rabin Probabilistic algorithm for testing primality , 1980 .

[34]  Nesa L'abbe Wu,et al.  Linear programming and extensions , 1981 .

[35]  Oliver Vornberger,et al.  The Complexity of Testing Whether a Graph is a Superconcentrator , 1981, Inf. Process. Lett..

[36]  Efficient schemes for parallel communication , 1982, PODC '82.

[37]  János Komlós,et al.  Storing a sparse table with O(1) worst case access time , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[38]  Leslie G. Valiant,et al.  A Scheme for Fast Parallel Communication , 1982, SIAM J. Comput..

[39]  Michael Tarsi,et al.  Optimal Search on Some Game Trees , 1983, JACM.

[40]  David S. Johnson,et al.  The NP-Completeness Column: An Ongoing Guide , 1982, J. Algorithms.

[41]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.

[42]  Christos H. Papadimitriou,et al.  Games against nature , 1985, 24th Annual Symposium on Foundations of Computer Science (sfcs 1983).

[43]  J. Komlos,et al.  On the Size of Separating Systems and Families of Perfect Hash Functions , 1984 .

[44]  Nimrod Megiddo,et al.  Linear Programming in Linear Time When the Dimension Is Fixed , 1984, JACM.

[45]  J. Spencer Six standard deviations suffice , 1985 .

[46]  Larry J. Stockmeyer,et al.  On Approximation Algorithms for #P , 1985, SIAM J. Comput..

[47]  Silvio Micali,et al.  The knowledge complexity of interactive proof-systems , 1985, STOC '85.

[48]  Allan Borodin,et al.  Routing, Merging, and Sorting on Parallel Models of Computation , 1985, J. Comput. Syst. Sci..

[49]  Marc Snir,et al.  Lower Bounds on Probabilistic Linear Decision Trees , 1985, Theor. Comput. Sci..

[50]  Robert E. Tarjan,et al.  Self-adjusting binary search trees , 1985, JACM.

[51]  M. Rabin,et al.  Randomized algorithms in number theory , 1985 .

[52]  Kenneth L. Clarkson,et al.  A probabilistic algorithm for the post office problem , 1985, STOC '85.

[53]  Robert E. Tarjan,et al.  Amortized efficiency of list update and paging rules , 1985, CACM.

[54]  Joe Kilian,et al.  Almost all primes can be quickly certified , 1986, STOC '86.

[55]  Michael Sipser,et al.  Expanders, Randomness, or Time versus Space , 1988, Journal of computer and system sciences (Print).

[56]  Amos Israeli,et al.  An Improved Parallel Algorithm for Maximal Matching , 1986, Inf. Process. Lett..

[57]  David Haussler,et al.  Epsilon-nets and simplex range queries , 1986, SCG '86.

[58]  Joel H. Spencer,et al.  Sharp concentration of the chromatic number on random graphsGn, p , 1987, Comb..

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

[60]  Frank Thomson Leighton,et al.  Reconfiguring a hypercube in the presence of faults , 1987, STOC.

[61]  Mark Jerrum,et al.  Approximate Counting, Uniform Generation and Rapidly Mixing Markov Chains , 1987, WG.

[62]  J. Spencer Ten lectures on the probabilistic method , 1987 .

[63]  Vijay V. Vazirani,et al.  Matching is as easy as matrix inversion , 1987, STOC.

[64]  Richard M. Karp,et al.  Efficient Randomized Pattern-Matching Algorithms , 1987, IBM J. Res. Dev..

[65]  Allan Borodin,et al.  An optimal online algorithm for metrical task systems , 1987, STOC.

[66]  Leonard M. Adleman,et al.  Recognizing primes in random polynomial time , 1987, STOC.

[67]  D. Aldous Probability Approximations via the Poisson Clumping Heuristic , 1988 .

[68]  M. Luby,et al.  Polytopes, permanents and graphs with large factors , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[69]  Béla Bollobás,et al.  The chromatic number of random graphs , 1988, Comb..

[70]  Eli Upfal,et al.  A time-randomness tradeoff for oblivious routing , 1988, STOC '88.

[71]  Victor Y. Pan,et al.  Improved processor bounds for combinatorial problems in RNC , 1988, Comb..

[72]  F. Bien Constructions of telephone networks by group representations , 1989 .

[73]  Mark Jerrum,et al.  Approximating the Permanent , 1989, SIAM J. Comput..

[74]  Rajeev Motwani,et al.  Expanding graphs and the average-case analysis of algorithms for matchings and related problems , 1989, STOC '89.

[75]  Zvi Galil,et al.  Efficient implementation of graph algorithms using contraction , 1984, JACM.

[76]  Allan Borodin,et al.  Two Applications of Inductive Counting for Complementation Problems , 1989, SIAM J. Comput..

[77]  William Pugh,et al.  Skip Lists: A Probabilistic Alternative to Balanced Trees , 1989, WADS.

[78]  Manuel Blum,et al.  Designing programs that check their work , 1989, STOC '89.

[79]  Rafael Hirschfeld,et al.  Pseudorandom Generators and Complexity Classes , 1989, Advances in Computational Research.

[80]  Allan Borodin,et al.  Lower bounds on the length of universal traversal sequences , 1989, STOC '89.

[81]  David J. Aldous,et al.  Lower bounds for covering times for reversible Markov chains and random walks on graphs , 1989 .

[82]  Torben Hagerup,et al.  A Guided Tour of Chernoff Bounds , 1990, Inf. Process. Lett..

[83]  Ketan Mulmuley A Fast Planar Partition Algorithm, I , 1990, J. Symb. Comput..

[84]  F. Frances Yao,et al.  Efficient binary space partitions for hidden-surface removal and solid modeling , 1990, Discret. Comput. Geom..

[85]  Manuel Blum,et al.  Self-testing/correcting with applications to numerical problems , 1990, STOC '90.

[86]  Michael L. Fredman,et al.  Trans-Dichotomous Algorithms for Minimum Spanning Trees and Shortest Paths , 1994, J. Comput. Syst. Sci..

[87]  Martin Dyer,et al.  The Stable Marriage Problem: Structure and Algorithms , 1991 .

[88]  Edward F. Grove The harmonic online K-server algorithm is competitive , 1991, STOC '91.

[89]  Colin McDiarmid,et al.  Average Case Analysis of Heap Building by Repeated Insertion , 1991, J. Algorithms.

[90]  Richard M. Karp,et al.  An introduction to randomized algorithms , 1991, Discret. Appl. Math..

[91]  Amos Fiat,et al.  Competitive Paging Algorithms , 1991, J. Algorithms.

[92]  Yuval Rabani,et al.  Competitive algorithms for layered graph traversal , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[93]  Raimund Seidel,et al.  Small-dimensional linear programming and convex hulls made easy , 1991, Discret. Comput. Geom..

[94]  C.H. Papadimitriou,et al.  On selecting a satisfying truth assignment , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[95]  Sandy Irani,et al.  Two Results on the List Update Problem , 1991, Inf. Process. Lett..

[96]  Bernd Gärtner A Subexponential Algorithm for Abstract Optimization Problems , 1992, FOCS.

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

[98]  Noga Alon,et al.  The Probabilistic Method , 2015, Fundamentals of Ramsey Theory.

[99]  Toshihide Ibaraki,et al.  Computing Edge-Connectivity in Multigraphs and Capacitated Graphs , 1992, SIAM J. Discret. Math..

[100]  Noam Nisan,et al.  Pseudorandom generators for space-bounded computation , 1992, Comb..

[101]  James B. Orlin,et al.  A faster algorithm for finding the minimum cut in a graph , 1992, SODA '92.

[102]  Audra E. Kosh,et al.  Linear Algebra and its Applications , 1992 .

[103]  Adi Shamir,et al.  IP = PSPACE , 1992, JACM.

[104]  Alistair Sinclair,et al.  Improved Bounds for Mixing Rates of Marked Chains and Multicommodity Flow , 1992, LATIN.

[105]  Yuval Rabani,et al.  A decomposition theorem and bounds for randomized server problems , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[106]  Moni Naor,et al.  Small-Bias Probability Spaces: Efficient Constructions and Applications , 1993, SIAM J. Comput..

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

[108]  Boris Teia,et al.  A Lower Bound for Randomized List Update Algorithms , 1993, Inf. Process. Lett..

[109]  Ravindra K. Ahuja,et al.  Network Flows: Theory, Algorithms, and Applications , 1993 .

[110]  Aaron D. Wyner,et al.  Computability by Probabilistic Machines , 1993 .

[111]  R. Seidel Backwards Analysis of Randomized Geometric Algorithms , 1993 .

[112]  David R. Karger,et al.  Global min-cuts in RNC, and other ramifications of a simple min-out algorithm , 1993, SODA '93.

[113]  Ketan Mulmuley,et al.  Computational geometry - an introduction through randomized algorithms , 1993 .

[114]  Yuval Rabani,et al.  Competitive k-server algorithms , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[115]  Moni Naor,et al.  The Probabilistic Method Yields Deterministic Parallel Algorithms , 1994, J. Comput. Syst. Sci..

[116]  Lance Fortnow,et al.  On the Power of Multi-Prover Interactive Protocols , 1994, Theor. Comput. Sci..

[117]  Susanne Albers,et al.  Improved randomized on-line algorithms for the list update problem , 1995, SODA '95.

[118]  Allan Borodin,et al.  How much can hardware help routing? , 1997, JACM.

[119]  Eric Allender,et al.  Complexity Theory , 1997, Encyclopedia of Cryptography and Security.

[120]  John Beidler,et al.  Data Structures and Algorithms , 1996, Wiley Encyclopedia of Computer Science and Engineering.

[121]  G. Frandsen Randomised Algorithms , 1998 .

[122]  Oded Goldreich A taxonomy of proof systems , 1998 .

[123]  S. Sitharama Iyengar,et al.  Introduction to parallel algorithms , 1998, Wiley series on parallel and distributed computing.

[124]  D. Gillman A Chernoff bound for random walks on expander graphs , 1998, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.