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 [math not displayed].

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

[2]  D. R. Fulkerson,et al.  Flows in Networks. , 1964 .

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

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

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

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

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

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

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

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

[11]  Pawel Winter,et al.  Steiner problem in networks: A survey , 1987, Networks.

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

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

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

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

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

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

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

[19]  David Eppstein,et al.  Sparsification-a technique for speeding up dynamic graph algorithms , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

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

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

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

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

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

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

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

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

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

[29]  S. Khuller,et al.  Biconnectivity approximations and graph carvings , 1994, JACM.

[30]  David R. Karger,et al.  Random sampling in cut, flow, and network design problems , 1994, STOC '94.

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

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

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

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

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

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

[37]  Nathan Linial,et al.  The geometry of graphs and some of its algorithmic applications , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[38]  Rajeev Motwani,et al.  Randomized algorithms , 1996, CSUR.

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

[40]  David R. Karger,et al.  Minimum cuts in near-linear time , 1996, STOC '96.

[41]  David Eppstein,et al.  Sparsification—a technique for speeding up dynamic graph algorithms , 1997, JACM.

[42]  David R. Karger,et al.  Random sampling and greedy sparsification for matroid optimization problems , 1998, Math. Program..

[43]  David R. Karger,et al.  Finding maximum flows in undirected graphs seems easier than bipartite matching , 1998, STOC '98.

[44]  David R. Karger Better random sampling algorithms for flows in undirected graphs , 1998, SODA '98.

[45]  David P. Williamson,et al.  An efficient approximation algorithm for the survivable network design problem , 1998, Math. Program..

[46]  Yuval Rabani,et al.  An O(log k) Approximate Min-Cut Max-Flow Theorem and Approximation Algorithm , 1998, SIAM J. Comput..