Random sampling in cut, flow, and network design problems

We use random sampling as a tool for solving undirected graph problems. We show that the sparse graph, or skeleton, that arises when we randomly sample a graph's edges will accurately approximate the value of all cuts in the original graph with high probability. This makes sampling effective for problems involving cuts in graphs. We present fast randomized (Monte Carlo and Las Vegas) algorithms for approximating and exactly finding minimum cuts and maximum flows in unweighted, undirected graphs. Our cut-approximation algorithms extend unchanged to weighted graphs while our weighted-graph flow algorithms are somewhat slower. Our approach gives a general paradigm with potential applications to any packing problem. It has since been used in a near-linear time algorithm for finding minimum cuts, as well as faster cut and flow algorithms. Our sampling theorems also yield faster algorithms for several other cut-based problems, including approximating the best balanced cut of a graph, finding a k-connected orientation of a 2k-connected graph, and finding integral multicommodity flows in graphs with a great deal of excess capacity. Our methods also improve the efficiency of some parallel cut and flow algorithms. Our methods also apply to the network design problem, where we wish to build a network satisfying certain connectivity requirements between vertices. We can purchase edges of various costs and wish to satisfy the requirements at minimum total cost. Since our sampling theorems apply even when the sampling probabilities are different for different edges, we can apply randomized rounding to solve network design problems. This gives approximation algorithms that guarantee much better approximations than previous algorithms whenever the minimum connectivity requirement is large. As a particular example, we improve the best approximation bound for the minimum k-connected subgraph problem from 1.85 to 1 + O(V/log n)lk).

[1]  Andrew V. Goldberg,et al.  Improved approximation algorithms for network design problems , 1994, SODA '94.

[2]  Harold N. Gabow,et al.  Applications of a poset representation to edge connectivity and graph rigidity , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[3]  Kenneth L. Clarkson,et al.  Applications of random sampling in computational geometry, II , 1988, SCG '88.

[4]  J. Edmonds Minimum partition of a matroid into independent subsets , 1965 .

[5]  Zvi Galil,et al.  Explicit Constructions of Linear-Sized Superconcentrators , 1981, J. Comput. Syst. Sci..

[6]  Prabhakar Raghavan,et al.  Randomized rounding: A technique for provably good algorithms and algorithmic proofs , 1985, Comb..

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

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

[9]  P. Erdos,et al.  On the strength of connectedness of a random graph , 1964 .

[10]  Pawel Winter,et al.  Generalized steiner problem in outerplanar networks , 1985, BIT.

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

[12]  Kenneth L. Clarkson,et al.  New applications of random sampling in computational geometry , 1987, Discret. Comput. Geom..

[13]  R. Ravi,et al.  When Trees Collide: An Approximation Algorithm for the Generalized Steiner Problem on Networks , 1995, SIAM J. Comput..

[14]  H. Gabow An E cient Approximation Algorithmfor the Survivable Network Design Problem , 1993 .

[15]  Philip N. Klein,et al.  Faster Approximation Algorithms for the Unit Capacity Concurrent Flow Problem with Applications to Routing and Finding Sparse Cuts , 1994, SIAM J. Comput..

[16]  Kenneth L. Clarkson,et al.  Las Vegas algorithms for linear and integer programming when the dimension is small , 1995, JACM.

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

[18]  V. Ramachandran Proceedings of the fourth annual ACM-SIAM symposium on Discrete algorithms , 1993 .

[19]  Frank Thomson Leighton,et al.  An approximate max-flow min-cut theorem for uniform multicommodity flow problems with applications to approximation algorithms , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[20]  David R. Karger,et al.  An Õ(n2) algorithm for minimum cuts , 1993, STOC.

[21]  Naveen Garg,et al.  A scaling technique for better network design , 1994, SODA '94.

[22]  T. C. Hu,et al.  Multi-Terminal Network Flows , 1961 .

[23]  Robert E. Tarjan,et al.  Augmentation Problems , 1976, SIAM J. Comput..

[24]  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.

[25]  Steven A. Orszag,et al.  CBMS-NSF REGIONAL CONFERENCE SERIES IN APPLIED MATHEMATICS , 1978 .

[26]  Prabhakar Raghavan,et al.  Probabilistic construction of deterministic algorithms: Approximating packing integer programs , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

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

[28]  Samir Khuller,et al.  Efficient parallel algorithms for testing connectivity and finding disjoint s-t paths in graphs , 1989, 30th Annual Symposium on Foundations of Computer Science.

[29]  David R. Karger,et al.  Using randomized sparsification to approximate minimum cuts , 1994, SODA '94.

[30]  Harold N. Gabow A framework for cost-scaling algorithms for submodular flow problems , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

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

[32]  R. Ravi,et al.  When trees collide: an approximation algorithm for the generalized Steiner problem on networks , 1991, STOC '91.

[33]  Samir Khuller,et al.  Efficient Parallel Algorithms for Testing k-Connectivity and Finding Disjoint s-t Paths in Graphs , 1991, SIAM J. Comput..

[34]  D. Matula A linear time 2 + ε approximation algorithm for edge connectivity , 1993, SODA 1993.

[35]  David P. Williamson,et al.  A primal-dual approximation algorithm for generalized steiner network problems , 1993, Comb..

[36]  H. Chernoff A Measure of Asymptotic Efficiency for Tests of a Hypothesis Based on the sum of Observations , 1952 .

[37]  D. Karger,et al.  Random sampling in graph optimization problems , 1995 .

[38]  L. Lovász,et al.  Geometric Algorithms and Combinatorial Optimization , 1981 .

[39]  David R. Karger,et al.  A new approach to the minimum cut problem , 1996, JACM.

[40]  Harold N. Gabow A matroid approach to finding edge connectivity and packing arborescences , 1991, STOC '91.

[41]  Andrew Chi-Chih Yao,et al.  The complexity of nonuniform random number generation , 1976 .

[42]  William Feller,et al.  An Introduction to Probability Theory and Its Applications , 1951 .

[43]  Samir Khuller,et al.  Biconnectivity approximations and graph carvings , 1992, STOC '92.

[44]  Toshihide Ibaraki,et al.  On Max-Flow Min-Cut and Integral Flow Properties for Multicommodity Flows in Directed Networks , 1989, Inf. Process. Lett..

[45]  Michel X. Goemans,et al.  Survivable networks, linear programming relaxations and the parsimonious property , 1993, Math. Program..

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

[47]  Samir Khuller,et al.  Improved approximation algorithms for uniform connectivity problems , 1995, STOC '95.

[48]  D. Matula A linear time 2 + &&egr;ε approximation algorithm for edge connectivity , 1993, SODA '93.

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

[50]  Philip N. Klein,et al.  Leighton-Rao might be practical: faster approximation algorithms for concurrent flow with uniform capacities , 1990, STOC '90.

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