Abstract
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.
- Ajtai, M., Komlós, J., and Szemerédi, E. 1987. Deterministic simulation in Logspace. In Proceedings of the Annual ACM Symposium on the Theory of Computation (STOC), 132--140. Google ScholarDigital Library
- Bach, E., and Shallit, J. 1996. Algorithmic Number Theory. The MIT Press, Cambridge, MA. Google ScholarDigital Library
- Bar-Noy, A., Motwani, R., and Naor, J. 1992. A linear time approach to the set maxima problem. SIAM J. Discr. Math. 5, 1, 1--9. Google ScholarDigital Library
- Blum, M., Floyd, R. W., Pratt, V., Rivest, R. L., and Tarjan, R. E. 1973. Time bounds for selection. J. Comput. Syst. Sci. 7, 4, 448--461.Google ScholarDigital Library
- Borůvka, O. 1926. O jistém problému minimálním. Práce Moravské Přírodovědecké Společnosti 3, 37--58. In Czech.Google Scholar
- Buchsbaum, A. L., Kaplan, H., Rogers, A., and Westbrook, J. R. 1998. Linear-Time pointer-machine algorithms for LCAs, MST verification, and dominators. In Proceedings of the 30th ACM Symposium on Theory of Computing (STOC), 279--288. Google ScholarDigital Library
- Chazelle, B. 2000a. A minimum spanning tree algorithm with inverse-Ackermann type complexity. J. ACM 47, 6, 1028--1047. Google ScholarDigital Library
- Chazelle, B. 2000b. The soft heap: An approximate priority queue with optimal error rate. J. ACM 47, 6, 1012--1027. Google ScholarDigital Library
- Chong, K. W., Han, Y., and Lam, T. W. 2001. Concurrent threads and optimal parallel minimum spanning trees algorithm. J. ACM 48, 2, 297--323. Google ScholarDigital Library
- Cohen, A., and Wigderson, A. 1989. Dispersers, deterministic amplification, and weak random sources. In Proceedings of the 30th Symposium on Foundations of Computer Science (FOCS), 14--25.Google Scholar
- Cole, R. 1999. Personal communication.Google Scholar
- Cole, R., Klein, P. N., and Tarjan, R. E. 1996. Finding minimum spanning forests in logarithmic time and linear work using random sampling. In Proceedings of the Annual ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), 243--250. Google ScholarDigital Library
- Cole, R., and Vishkin, U. 1986. Approximate and exact parallel scheduling with applications to list, tree, and graph problems. In Proceedings of the Annual Symposium on Foundations of Computer Science (FOCS), 478--491.Google Scholar
- Cole, R. and Vishkin, U. 1991. Approximate parallel scheduling. II. Applications to logarithmic-time optimal parallel graph algorithms. Inf. Comput. 92, 1, 1--47. Google ScholarDigital Library
- Cormen, T. H., Leiserson, C. E., and Rivest, R. L. 1990. Introduction to Algorithms. MIT Press, Cambridge, MA. Google ScholarDigital Library
- Cunto, W., and Munro, J. I. 1989. Average case selection. J. ACM 36, 2, 270--279. Google ScholarDigital Library
- Dijkstra, E. W. 1959. A note on two problems in connexion with graphs. Numer. Math. 1, 269--271.Google ScholarDigital Library
- Dixon, B., Rauch, M., and Tarjan, R. E. 1992. Verification and sensitivity analysis of minimum spanning trees in linear time. SIAM J. Comput. 21, 6, 1184--1192. Google ScholarDigital Library
- Dor, D., and Zwick, U. 2001. Median selection requires (2 + ε)n comparisons. SIAM J. Discr. Math. 14, 3, 312--325. Google ScholarDigital Library
- Dor, D., and Zwick, U. 1999. Selecting the median. SIAM J. Comput. 28, 5, 1722--1758. Google ScholarDigital Library
- Floyd, R., and Rivest, R. 1975. Expected time bounds for selection. Commun. ACM 18, 3, 165--172. Google ScholarDigital Library
- Gabow, H. N., Galil, Z., and Spencer, T. H. 1989. Efficient implementation of graph algorithms using contraction. J. ACM 36, 3, 540--572. Google ScholarDigital Library
- Gabow, H. N., Galil, Z., Spencer, T. H., and Tarjan, R. E. 1986. Efficient algorithms for finding minimum spanning trees in undirected and directed graphs. Combinatorica 6, 109--122. Google ScholarDigital Library
- Gazit, H. 1991. An optimal randomized parallel algorithm for finding connected components in a graph. SIAM J. Comput. 20, 6, 1046--1067. Google ScholarDigital Library
- Goddard, W., Kenyon, C., King, V., and Schulman, L. 1993. Optimal randomized algorithms for local sorting and set-maxima. SIAM J. Comput. 22, 2, 272--283. Google ScholarDigital Library
- Graham, R. L. and Hell, P. 1985. On the history of the minimum spanning tree problem. Ann. Hist. Comput. 7, 1, 43--57.Google ScholarDigital Library
- Graham, R. L., Yao, A. C., and Yao, F. F. 1980. Information bounds are weak in the shortest distance problem. J. ACM 27, 3, 428--444. Google ScholarDigital Library
- Halperin, S., and Zwick, U. 1996. An optimal randomised logarithmic time connectivity algorithm for the EREW PRAM. J. Comput. Syst. Sci. 53, 3, 395--416. Google ScholarDigital Library
- Halperin, S., and Zwick, U. 2001. Optimal randomized EREW PRAM algorithms for finding spanning forests. J. Algor. 39, 1, 1--46. Google ScholarDigital Library
- Impagliazzo, R., and Zuckerman, D. 1989. How to recycle random bits. In Proceedings of the 30th Annual Symposium on Foundations of Computer Science (FOCS), 248--253.Google Scholar
- Jarník, V. 1930. O jistém problému minimálním. Práca Moravské P&rbreve;írodovĕdecké Spole&cbreve;nosti 6, 57--63. In Czech.Google Scholar
- Joffe, A. 1974. On a set of almost deterministic k-independent random variables. Ann. Probab. 2, 1, 161--162.Google ScholarCross Ref
- Karger, D. R. 1993. Random sampling in matroids, with applications to graph connectivity and minimum spanning trees. In Proceedings of the 34th Annual Symposium on Foundations of Computer Science (FOCS), 84--93.Google ScholarDigital Library
- Karger, D. R., Klein, P. N., and Tarjan, R. E. 1995. A randomized linear-time algorithm for finding minimum spanning trees. J. ACM 42, 321--329. Google ScholarDigital Library
- Karp, R. M., and Ramachandran, V. 1990. Parallel algorithms for shared-memory machines. In Handbook of Computer Science. MIT Press/Elsevier, 869--942. Google ScholarDigital Library
- Kenyon-Mathieu, C., and King, V. 1989. Verifying partial orders. In Proceedings of the Annual ACM Symposium on Theory of Computing (STOC), 367--374. Google ScholarDigital Library
- King, V. 1997. A simpler minimum spanning tree verification algorithm. Algorithmica 18, 2, 263--270.Google ScholarDigital Library
- King, V., Poon, C. K., Ramachandran, V., and Sinha, S. 1997. An optimal EREW PRAM algorithm for minimum spanning tree verification. Info. Proc. Lett. 62, 3, 153--159. Google ScholarDigital Library
- Komlós, J. 1985. Linear verification for spanning trees. Combinatorica 5, 1, 57--65.Google ScholarCross Ref
- Kruskal, J. B. 1956. On the shortest spanning subtree of a graph and the traveling salesman problem. In Proceedings of the American Mathematical Society, vol. 7, 48--50.Google ScholarCross Ref
- Liberatore, V. 1998. Matroid decomposition methods for the set maxima problem. In Proceedings of the Annual ACM/SIAM Symposium on Discrete Algorithm (SODA), 400--409. Google ScholarDigital Library
- Miller, G. L. 1976. Riemann's hypothesis and tests for primality. J. Comput. Syst. Sci. 13, 3, 300--317.Google ScholarDigital Library
- Motwani, R., and Raghavan, P. 1995. Randomized Algorithms. Cambridge University Press, New York. Google ScholarDigital Library
- Paterson, A. S. M. S., and Pippenger, N. 1976. Finding the median. J. Comput. Syst. Sci. 13, 184--199.Google ScholarDigital Library
- Pettie, S. 2005. Sensitivity analysis of minimum spanning trees in sub-inverse-Ackermann time. In Proceedings of the 16th International Symposium on Algorithms and Computation (ISAAC), 964--973. Google ScholarDigital Library
- Pettie, S. 2003. On the shortest path and minimum spanning tree-problems. Ph.D. thesis, The University of Texas at Austin. Also Tech. Rep. TR-03-35, Department of Computer Sciences. http://www.cs.utexas.edu/ftp/pub/techreports/tr03-35.ps.gz. Google ScholarDigital Library
- Pettie, S. 1999. Finding minimum spanning trees in O(mα(m, n)) time. Tech. Rep. CS-TR-99-23, University of Texas, Austin. Google ScholarDigital Library
- Pettie, S., and Ramachandran, V. 2002a. Minimizing randomness in minimum spanning tree, parallel connectivity and set maxima algorithms. In Proceedings of the 13th Annual ACM/SIAM Symposium on Discrete Algorithms (SODA), 713--722. Google ScholarDigital Library
- Pettie, S., and Ramachandran, V. 2002b. An optimal minimum spanning tree algorithm. J. ACM 49, 1, 16--34. Google ScholarDigital Library
- Pettie, S., and Ramachandran, V. 2002c. A randomized time-work optimal parallel algorithm for finding a minimum spanning forest. SIAM J. Comput. 31, 6, 1879--1895. Google ScholarDigital Library
- Prim, R. C. 1957. Shortest connection networks and some generalizations. Bell Syst. Tech. J., 1389--1401.Google Scholar
- Rabin, M. O. 1980. Probabilistic algorithm for testing primality. J. Number Theory 12, 1, 128--138.Google ScholarCross Ref
- Schmidt, J. P., Siegel, A., and Srinivasan, A. 1995. Chernoff-Hoeffding bounds for applications with limited independence. SIAM J. Discr. Math. 8, 2, 223--250. Google ScholarDigital Library
- Tarjan, R. E. 1982. Sensitivity analysis of minimum spanning trees and shortest path problems. Inf. Proc. Lett. 14, 1, 30--33. See Corrigendum, IPL 23, 4, 219.Google ScholarCross Ref
Index Terms
- Randomized minimum spanning tree algorithms using exponentially fewer random bits
Recommendations
Improving the efficiency of parallel minimum spanning tree algorithms
Special issue: Special issue devoted to the fifth annual international computing and combinatories conference (COCOON'99) Tokyo, Japan 26-28 July 1999This paper presents results which improve the efficiency of parallel algorithms for computing the minimum spanning trees. For an input graph with n vertices and m edges our EREW PRAM algorithm runs in O(log n) time with O((m+n)√logn) operations. Our ...
The expected complexity of Prim's minimum spanning tree algorithm
We study the expected performance of Prim's minimum spanning tree (MST) algorithm implemented using ordinary heaps. We show that this implementation runs in linear or almost linear expected time on a wide range of graphs. This helps to explain why Prim'...
Balancing minimum spanning trees and shortest-path trees
We give a simple algorithm to find a spanning tree that simultaneously approximates a shortest-path tree and a minimum spanning tree. The algorithm provides a continuous tradeoff: given the two trees and aź>0, the algorithm returns a spanning tree in ...
Comments