Randomized minimum spanning tree algorithms using exponentially fewer random bits

For many fundamental problems there exist randomized algorithms that are asymptotically optimal and are superior to the best-known deterministic algorithm. Among these are the minimum spanning tree (MST) problem, the MST sensitivity analysis problem, the parallel connected components and parallel minimum spanning tree problems, and the local sorting and set maxima problems. (For the first two problems there are provably optimal deterministic algorithms with unknown, and possibly superlinear, running times.) One downside of the randomized methods for solving these problems is that they use a number of random bits linear in the size of input. In this article we develop some general methods for reducing exponentially the consumption of random bits in comparison-based algorithms. In some cases we are able to reduce the number of random bits from linear to nearly constant, without affecting the expected running time. Most of our results are obtained by adjusting or reorganizing existing randomized algorithms to work well with a pairwise or O(1)-wise independent sampler. The prominent exception, and the main focus of this article, is a linear-time randomized minimum spanning tree algorithm that is not derived from the well-known Karger-Klein-Tarjan algorithm. In many ways it resembles more closely the deterministic minimum spanning tree algorithms based on soft heaps. Further, using our algorithm as a guide, we present a unified view of the existing “nongreedy” minimum spanning tree algorithms. Concepts from the Karger-Klein-Tarjan algorithm, such as F-lightness, MST verification, and sampled graphs, are related to the concepts of edge corruption, subgraph contractibility, and soft heaps, which are the basis of the deterministic MST algorithms of Chazelle and Pettie-Ramachandran.

[1]  Rajeev Motwani,et al.  A Linear Time Approach to the Set Maxima Problem , 1992, SIAM J. Discret. Math..

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

[3]  Wayne Goddard,et al.  Optimal randomized algorithms for local sorting and set-maxima , 1990, STOC '90.

[4]  Seth Pettie,et al.  On the shortest path and minimum spanning tree problems , 2003 .

[5]  Bernard Chazelle,et al.  A minimum spanning tree algorithm with inverse-Ackermann type complexity , 2000, JACM.

[6]  Robert E. Tarjan,et al.  Verification and Sensitivity Analysis of Minimum Spanning Trees in Linear Time , 1992, SIAM J. Comput..

[7]  Uri Zwick,et al.  Selecting the median , 1995, SODA '95.

[8]  Aravind Srinivasan,et al.  Chernoff-Hoeffding bounds for applications with limited independence , 1995, SODA '93.

[9]  Richard Cole,et al.  Finding minimum spanning forests in logarithmic time and linear work using random sampling , 1996, SPAA '96.

[10]  Seth Pettie Sensitivity Analysis of Minimum Spanning Trees in Sub-inverse-Ackermann Time , 2005, ISAAC.

[11]  D.R. Karker Random sampling in matroids, with applications to graph connectivity and minimum spanning trees , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

[12]  J. Kruskal On the shortest spanning subtree of a graph and the traveling salesman problem , 1956 .

[13]  Uri Zwick,et al.  Optimal randomized EREW PRAM algorithms for finding spanning forests and for other basic graph connectivity problems , 1996, SODA '96.

[14]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[15]  Philip N. Klein,et al.  A randomized linear-time algorithm to find minimum spanning trees , 1995, JACM.

[16]  A. Joffe On a Set of Almost Deterministic $k$-Independent Random Variables , 1974 .

[17]  J. Ian Munro,et al.  Average case selection , 1984, STOC '84.

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

[19]  Jeffrey Shallit,et al.  Algorithmic Number Theory , 1996, Lecture Notes in Computer Science.

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

[21]  Valerie King A simpler minimum spanning tree verification algorithm , 2006, Algorithmica.

[22]  Seth Pettie,et al.  Minimizing randomness in minimum spanning tree, parallel connectivity, and set maxima algorithms , 2002, SODA '02.

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

[24]  Sun-Ok Gwon University of Texas at Austin의 연구 현황 , 2002 .

[25]  Robert E. Tarjan,et al.  Sensitivity Analysis of Minimum Spanning Trees and Shortest Path Trees , 1982, Inf. Process. Lett..

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

[27]  Vincenzo Liberatore,et al.  Matroid decomposition methods for the set maxima problem , 1998, SODA '98.

[28]  Haim Kaplan,et al.  Linear-time pointer-machine algorithms for least common ancestors, MST verification, and dominators , 1998, STOC '98.

[29]  János Komlós Linear verification for spanning trees , 1985, Comb..

[30]  Bernard Chazelle,et al.  The soft heap: an approximate priority queue with optimal error rate , 2000, JACM.

[31]  Seth Pettie,et al.  A Randomized Time-Work Optimal Parallel Algorithm for Finding a Minimum Spanning Forest , 1999, RANDOM-APPROX.

[32]  Seth Pettie Finding Minimum Spanning Trees in O(m alpha(m,n)) Time , 1999 .

[33]  Richard M. Karp,et al.  Parallel Algorithms for Shared-Memory Machines , 1991, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity.

[34]  Chung Keung Poon,et al.  An Optimal EREW PRAM Algorithm for Minimum Spanning Tree Verification , 1997, Inf. Process. Lett..

[35]  Ronald L. Graham,et al.  On the History of the Minimum Spanning Tree Problem , 1985, Annals of the History of Computing.

[36]  Manuel Blum,et al.  Time Bounds for Selection , 1973, J. Comput. Syst. Sci..

[37]  Claire Mathieu,et al.  Verifying partial orders , 1989, STOC '89.

[38]  Arnold Schönhage,et al.  Finding the Median , 1976, J. Comput. Syst. Sci..

[39]  Russell Impagliazzo,et al.  How to recycle random bits , 1989, 30th Annual Symposium on Foundations of Computer Science.

[40]  Philip N. Klein,et al.  A randomized linear-time algorithm for finding minimum spanning trees , 1994, STOC '94.

[41]  Seth Pettie Finding minimum spanning trees in O(m (m; n)) time , 1999 .

[42]  Richard Cole,et al.  Approximate and exact parallel scheduling with applications to list, tree and graph problems , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[43]  Zvi Galil,et al.  Efficient Implementation of Graph Algorithms Using Contraction , 1984, FOCS.

[44]  Uri Zwick,et al.  Median Selection Requires (2+epsilon)n Comparisons , 2001, SIAM J. Discret. Math..

[45]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[46]  Uri Zwick,et al.  An Optimal Randomised Logarithmic Time Connectivity Algorithm for the EREW PRAM , 1996, J. Comput. Syst. Sci..

[47]  Seth Pettie,et al.  An optimal minimum spanning tree algorithm , 2000, JACM.

[48]  Andrew Chi-Chih Yao,et al.  Information Bounds Are Weak in the Shortest Distance Problem , 1980, JACM.

[49]  Robert E. Tarjan,et al.  Efficient algorithms for finding minimum spanning trees in undirected and directed graphs , 1986, Comb..

[50]  János Komlós,et al.  Deterministic simulation in LOGSPACE , 1987, STOC.

[51]  Yijie Han,et al.  Concurrent threads and optimal parallel minimum spanning trees algorithm , 2001, JACM.

[52]  Richard Cole,et al.  Approximate Parallel Scheduling. II. Applications to Logarithmic-Time Optimal Parallel Graph Algorithms , 1991, Inf. Comput..

[53]  Avi Wigderson,et al.  Dispersers, deterministic amplification, and weak random sources , 1989, 30th Annual Symposium on Foundations of Computer Science.