A Randomized Algorithm for Minimum Cuts

Similar documents
Minimum Cuts in Graphs

Lecture Notes on Karger s Min-Cut Algorithm. Eric Vigoda Georgia Institute of Technology Last updated for Advanced Algorithms, Fall 2013.

princeton univ. F 15 cos 521: Advanced Algorithm Design Lecture 2: Karger s Min Cut Algorithm

1 Minimum Cut Problem

CPSC 536N: Randomized Algorithms Term 2. Lecture 10

Lecture 1: A Monte Carlo Minimum Cut Algorithm

Solution for Homework set 3

Introduction to Randomized Algorithms

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

1. Chapter 1, # 1: Prove that for all sets A, B, C, the formula

Randomized algorithms have several advantages over deterministic ones. We discuss them here:

AXIOMS FOR THE INTEGERS

Assignment 4 Solutions of graph problems

6.856 Randomized Algorithms

13 Randomized Minimum Cut

An algorithm for Performance Analysis of Single-Source Acyclic graphs

Selection (deterministic & randomized): finding the median in linear time

Binary Relations McGraw-Hill Education

CHAPTER 8. Copyright Cengage Learning. All rights reserved.

Outline. CS38 Introduction to Algorithms. Approximation Algorithms. Optimization Problems. Set Cover. Set cover 5/29/2014. coping with intractibility

Approximation Algorithms: The Primal-Dual Method. My T. Thai

Randomized Graph Algorithms

1. Suppose you are given a magic black box that somehow answers the following decision problem in polynomial time:

Min-Cut and Randomization

Theorem 2.9: nearest addition algorithm

Great Theoretical Ideas in Computer Science

2SAT Andreas Klappenecker

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

Greedy Algorithms and Matroids. Andreas Klappenecker

Matching Theory. Figure 1: Is this graph bipartite?

6. Lecture notes on matroid intersection

arxiv:cs/ v1 [cs.ds] 20 Feb 2003

Number Theory and Graph Theory

Vertex Cover Approximations

Tutorial for Algorithm s Theory Problem Set 5. January 17, 2013

Trees. 3. (Minimally Connected) G is connected and deleting any of its edges gives rise to a disconnected graph.

Greedy Algorithms and Matroids. Andreas Klappenecker

Clustering Using Graph Connectivity

Math 485, Graph Theory: Homework #3

(Refer Slide Time: 00:18)

Treewidth and graph minors

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

9.5 Equivalence Relations

Discrete Wiskunde II. Lecture 6: Planar Graphs

Lecture 11: Maximum flow and minimum cut

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 7

Graph Connectivity G G G

Analyze the obvious algorithm, 5 points Here is the most obvious algorithm for this problem: (LastLargerElement[A[1..n]:

Graph theory - solutions to problem set 1

Module 11. Directed Graphs. Contents

CSE 203A: Karger s Min-Cut Algorithm (Lecture Date: 5/11/06)

8 Matroid Intersection

K 4 C 5. Figure 4.5: Some well known family of graphs

Framework for Design of Dynamic Programming Algorithms

CS 561, Lecture 1. Jared Saia University of New Mexico

CSE 417 Network Flows (pt 3) Modeling with Min Cuts

Randomized Algorithms 2017A - Lecture 10 Metric Embeddings into Random Trees

Knotwork Coding. Øyvind Ytrehus Dept. of Informatics University of Bergen N-5020 Bergen Norway

Discrete Mathematics for CS Spring 2008 David Wagner Note 13. An Introduction to Graphs

CONNECTIVITY AND NETWORKS

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note 8

In this lecture, we ll look at applications of duality to three problems:

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

The Encoding Complexity of Network Coding

Paths, Flowers and Vertex Cover

Section 3.1: Nonseparable Graphs Cut vertex of a connected graph G: A vertex x G such that G x is not connected. Theorem 3.1, p. 57: Every connected

Design and Analysis of Algorithms (VII)

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

Disjoint directed cycles

Math 443/543 Graph Theory Notes 11: Graph minors and Kuratowski s Theorem

PCP and Hardness of Approximation

Coloring 3-Colorable Graphs

5. Lecture notes on matroid intersection

6 Randomized rounding of semidefinite programs

Lecture 1 August 31, 2017

Peter Keevash Dhruv Mubayi

Open and Closed Sets

CSCI 5454 Ramdomized Min Cut

Definition For vertices u, v V (G), the distance from u to v, denoted d(u, v), in G is the length of a shortest u, v-path. 1

Basics of Graph Theory

Spanning Trees. John Martinez. November 12, 2012

Connectivity of the zero-divisor graph for finite rings

Point-Set Topology 1. TOPOLOGICAL SPACES AND CONTINUOUS FUNCTIONS

Discrete Mathematics, Spring 2004 Homework 8 Sample Solutions

Lecture 19 Thursday, March 29. Examples of isomorphic, and non-isomorphic graphs will be given in class.

Results on the min-sum vertex cover problem

CS261: Problem Set #1

5 Graphs

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

CMPSCI611: The SUBSET-SUM Problem Lecture 18

The Structure and Properties of Clique Graphs of Regular Graphs

Lecture 5 Finding meaningful clusters in data. 5.1 Kleinberg s axiomatic framework for clustering

Zhibin Huang 07. Juni Zufällige Graphen

Piecewise Defined Functions

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006

HW Graph Theory SOLUTIONS (hbovik) - Q

PANCYCLICITY WHEN EACH CYCLE CONTAINS k CHORDS

The complement of PATH is in NL

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1

Transcription:

Randomized lgorithm for Minimum uts ndreas Klappenecker randomized algorithm is an algorithm that receives, in addition to its input, a stream of random bits which is used to make random choices. The random bits are assumed to be independent of the input. salient feature is that repeated runs of a randomized algorithm with fixed input data will, in general, not produce the same result. You might be perplexed that such a lack of definiteness is desirable, but consider that this feature allows to transform deterministic algorithms with bad worst case behaviour into randomized algorithms that perform well with high probability on any input. I hope that the next example can convey that randomized algorithms are often simple and efficient. 1 Minimum ut lgorithm Let G = (V,E) be a connected, undirected, loopfree multigraph with n vertices. multigraph is like a graph but may contain multiple edges between two vertices, as the following example shows. E cut in the multigraph G = (V,E) is a partition of the vertex set V into two disjoint nonempty sets V = V 1 V 2. n edge with one end in V 1 and the other in V 2 is said to cross the cut. The cut is often identified with the multiset of crossing edges. The term cut is chosen because the removal of the edges in a cut partitions the multigraph. or example, if we partition V = {,,,,E,} into the sets V 1 = {,} and V 2 = {,,E,} in the previous example, then this cut has five crossing edges, and removing these edges yields the disconnected multigraph: 0 c 2009-2012 by ndreas Klappenecker. ll rights reserved.

E The size of the cut is given by the number of edges crossing the cut. Our goal is to determine the minimum size of a cut in a given multigraph G. We describe a very simple randomized algorithm for this purpose. If e is an edge of a loopfree multigraph G, then the multigraph G/e is obtained from G by contracting the edge e = {x,y}, that is, we identify the vertices x and y and remove all resulting loops. {,} = E E The above figure shows a multigraph G and the multigraph G/{, } resulting from contracting an edge between and. We keep the label of one vertex to avoid cluttered notations, but keep in mind that a node in the graph G/{,} really represents the set of all nodes that are identified with. Note that any cut of G/e induces a cut of G. or instance, in the above example the cut {,} {,E,} in G/{,} induces the cut {,} {,,E,} in G. In general, the vertices that have been identified in G/e are in the same partition of G. The size of the minimum cut of G/e is at least the size of the minimum cut of G, because all edges are kept. Thus we can use successive contractions to estimate the size of the minimum cut of G. This is the basic idea of the following randomized algorithm. The algorithms ontract selects uniformly at random one of the remaining edges and contracts this edge until two vertices remain. The cut determined by this algorithm contains precisely the edges that have not been contracted. ounting the edges between the remaining two vertices yields an estimate of the size of the minimum cut of G. The algorithm is best understood by an example. igure 0.1 shows two different runs of the algorithm ontract. Let us have a closer look at the run

ontract(g) Input: connected loopfree multigraph G = (V, E) with at least 2 vertices. 1: while V > 2 do 2: Select e E uniformly at random; 3: G := G/e; 4: od; 5: return E. Output: n upper bound on the minimum cut of G. shown in the left column of this figure. The multigraph provided as an input is depicted in the top left. irst the edge {,E} is contracted. The resulting graph is shown directly below. The edges {,}, {,}, and {,} are respectively contracted in the remaining steps. Each contraction identifies two vertices. The remaining two nodes and in the final multigraph in the lower left represent the sets {} and {,,, E, }, since the contractions produced the identifications E, respectively. Therefore, the cut {} {} in the final multigraph corresponds to the cut {} {,,,E,} in the input multigraph. Exercise 0.1 escribe the cut in the input graph that is induced by the cut {} {} in the final multigraph in the right column of igure 0.1. ssume that {,} was the last contracted edge. If there is some ambiguity, then list all possibilities. The examples amply demonstrate some unsettling property of the algorithm ontract: The algorithm does not always produce the correct size of the minimum cut. s we will see in the next section, it is not difficult to show that the correct size of a minimum cut will be found by the algorithm ontract with probability Ω(n 2 ), where n denotes the number of vertices of the multigraph. Repeating the algorithm O(n 2 logn) times and choosing the smallest value returned by the runs yields the correct size of the minimum cut with high probability. The beauty of this scheme is its simplicity. If G is represented as a labeled graph, where the labels denote the multiplicity of the edges, then ontract can be implemented with O(n 2 ) operations; runningthe algorithm repeatedly, as suggested before, yields at total of O(n 4 logn) operations. Remark. The running time of the best deterministic minimum cut algorithm is O(nm+n 2 logn), where m denotes the number of edges, that is, in

E E ig. 0.1 Two different runs of the ontract algorithm. The algorithm does not always produce the correct result. The run shown in the left column correctly determines the minimum cut size to be 3. The run shown in the right column fails to produce the correct result; here the algorithm will claim that the size of the minimum cut is 6.

the labeled graph representation the running time is at most O(n 3 ), see for instance [2]. It turns out that size of the minimum cut can be determined with high probability in O(n 2 log 3 n) steps usingarefinedversion of the contraction algorithm, see [1]. 2 nalysis We now want to analyze the algorithm given in the previous section. Our goal is to determine a lower bound on the probability that the algorithm correctly determines the minimum cut. We will see that this algorithm produces the correct answer with probability Ω(1/n 2 ). We need remarkably few tools from probability theory in this proof: ll we need is the innocuous formula Pr[E ] = Pr[E ]Pr[] Exercise 0.2 Prove the following straightforward consequence of the previous formula ( n ) Pr[ n l=1 E l] = Pr[E m m 1 l=1 E l] Pr[E 1 ]. m=2 If you expand the formula then you will immediately see the pattern. Let me motivate the approach taken in the analysis by emphasizing a special case. Suppose that the multigraph has a uniquely determined minimum cut. If the algorithm selects in this case any edge crossing this cut, then the algorithm will fail to produce the correct result. The analysis is largely guided by this observation. Exercise 0.3 Give an example of a connected, loopfree multigraph with at least four vertices that has a uniquely determined minimum cut. Let G = (V,E) be a loopfree connected multigraph with n = V vertices. Note that each contraction reduces the number of vertices by one, so the algorithm terminates after n 2 steps. Suppose that is a particular minimum cut of G. Let E i denote the event that the algorithm selects in the ith step an edge that does not cross the cut. Therefore, the probability that no edge crossing the cut is ever

picked during an execution of the algorithm is Pr[ n 2 j=1 E j]. y Exercise 0.2, this probability can be calculated by Pr[ n 2 m=1 E m] = ( n 2 m=2 Pr[E m m 1 l=1 E l] ) Pr[E 1 ]. (1) Suppose that the size of the minimum cut is k. This means that the degree of each vertex is at least k, hence there exist at least kn/2 edges. The probability to select an edge crossing the cut in the first step is at most k/(kn/2) = 2/n. onsequently, Pr[E 1 ] 1 2/n = (n 2)/n. Similarly, at thebeginningof the mth step, with m 2, thereare n m+1 remaining vertices. The minimum cut is still at least k, hence the multigraph has at this stage at least k(n m + 1)/2 edges. ssuming that none of the edges crossing was selected in an earlier step, the probability to select an edge crossing the cut is 2/(n m+1). It follows that Pr [ m 1 ] 2 E m E j 1 n m+1 = n m 1 n m+1. j=1 pplying these lower bounds to the terms in equation (1) yields the result: Pr [n 2 j=1 n 2 ] E j m=1 ( ) n m 1 = n m+1 2 n(n 1). The last equality is obtained by canceling terms in the telescoping product. In conclusion, we have shown that the contraction algorithm yields the correct answer with probability at least Ω(1/n 2 ). Repetitions. We can repeatedly execute the randomized algorithm ontract and take the minimum of all results. Recall from calculus that ( 1+ x n) n e x, and, infact, lim n ( 1+ x n) n = e x.theprobability thatthealgorithm failsto produce the correct result in one execution is Pr[failure] = (1 2/n 2 ). Recall that for independent event E and, the probability is given by Pr[E ] = Pr[E]Pr[]. Therefore, if we execute the algorithm n 2 /2 times, then the probability that the repeated executions will never reveal the correct size of the minimum cut is given by (1 2/n 2 ) n2 /2 e 1.

We can conclude that if we repeat the contraction algorithm (n 2 /2)logn times, then the probability that none of the iterations will reveal the correct size of the minimum cut is given by (1 2/n 2 ) (n2 /2)logn e logn = 1 n. Therefore, the probability that one of the iterations returns a result that coincides with the correct size of the minium cut is given by 1 1/n. Therefore, the true size of the minimum cut is discovered with high probability for large multigraphs. ibliography [1].R. Karger and. Stein. new approach to the min-cut problem. J. M, 43(4):601 640, 1996. [2] M. Stoer and. Wagner. simple min-cut algorithm. J. M, 44(4):585 591, 1997.