Notes on Minimum Cuts and Modular Functions

Similar documents
8 Matroid Intersection

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Lecture 2. 1 Introduction. 2 The Set Cover Problem. COMPSCI 632: Approximation Algorithms August 30, 2017

CPSC 536N: Randomized Algorithms Term 2. Lecture 10

6. Lecture notes on matroid intersection

Lecture Orientations, Directed Cuts and Submodular Flows

Lecture 15: The subspace topology, Closed sets

Adjacent: Two distinct vertices u, v are adjacent if there is an edge with ends u, v. In this case we let uv denote such an edge.

Rigidity, connectivity and graph decompositions

Solution for Homework set 3

CS 598CSC: Approximation Algorithms Lecture date: March 2, 2011 Instructor: Chandra Chekuri

Important separators and parameterized algorithms

5. Lecture notes on matroid intersection

Binary Relations McGraw-Hill Education

Finding Strongly Connected Components

Lecture : Topological Space

1 Connected components in undirected graphs

1 Linear programming relaxation

CS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem

9.5 Equivalence Relations

Introduction to Graph Theory

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.

A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY

However, this is not always true! For example, this fails if both A and B are closed and unbounded (find an example).

Fundamental Properties of Graphs

Maximum flows & Maximum Matchings

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Algorithms For Inference Fall 2014

On 2-Subcolourings of Chordal Graphs

Graph Theory. Part of Texas Counties.

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality

Lecture 17: Continuous Functions

MA651 Topology. Lecture 4. Topological spaces 2

Lecture 22 Tuesday, April 10

Recognizing Interval Bigraphs by Forbidden Patterns

Module 11. Directed Graphs. Contents

arxiv: v1 [math.co] 3 Apr 2016

Theorem 2.9: nearest addition algorithm

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

3 No-Wait Job Shops with Variable Processing Times

CMPSCI 311: Introduction to Algorithms Practice Final Exam

Greedy Algorithms 1. For large values of d, brute force search is not feasible because there are 2 d

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

A graph is finite if its vertex set and edge set are finite. We call a graph with just one vertex trivial and all other graphs nontrivial.

Slides for Faculty Oxford University Press All rights reserved.

Treewidth and graph minors

Math 443/543 Graph Theory Notes

BAR-MAGNET POLYHEDRA AND NS-ORIENTATIONS OF MAPS

The External Network Problem

NP and computational intractability. Kleinberg and Tardos, chapter 8

Power Set of a set and Relations

2 A topological interlude

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions.

1 Variations of the Traveling Salesman Problem

Important separators and parameterized algorithms

arxiv: v2 [math.co] 13 Aug 2013

HOMEWORK #4 SOLUTIONS - MATH (1) (a) Prove that the chromatic polynomial of any tree with s vertices is. k(k 1) s 1

Matching and Planarity

4 Generating functions in two variables

Part II. Graph Theory. Year

CSC 505, Fall 2000: Week 12

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

Paths, Flowers and Vertex Cover

Paths, Flowers and Vertex Cover

Figure : Example Precedence Graph

Math 485, Graph Theory: Homework #3

[Ramalingam, 4(12): December 2017] ISSN DOI /zenodo Impact Factor

Definition 1 (Hand-shake model). A hand shake model is an incidence geometry for which every line has exactly two points.

Lecture 20 : Trees DRAFT

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Algorithms For Inference Fall 2014

On Covering a Graph Optimally with Induced Subgraphs

On a n Ed g e Crossing P roblem

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

Algebra of Sets. Aditya Ghosh. April 6, 2018 It is recommended that while reading it, sit with a pen and a paper.

T. Background material: Topology

Discrete mathematics

8.1 Polynomial-Time Reductions

9.1 Cook-Levin Theorem

Geometric Steiner Trees

4. Definition: topological space, open set, topology, trivial topology, discrete topology.

11 Linear Programming

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

Shannon Switching Game

Face Width and Graph Embeddings of face-width 2 and 3

Solving Linear Recurrence Relations (8.2)

HW Graph Theory SOLUTIONS (hbovik)

Graph Theory S 1 I 2 I 1 S 2 I 1 I 2

CS 341: Algorithms. Douglas R. Stinson. David R. Cheriton School of Computer Science University of Waterloo. February 26, 2019

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

Final Test in MAT 410: Introduction to Topology Answers to the Test Questions

GRAPHS, GRAPH MODELS, GRAPH TERMINOLOGY, AND SPECIAL TYPES OF GRAPHS

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

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

Bipartite Roots of Graphs

Graph Representations and Traversal

Faster parameterized algorithms for Minimum Fill-In

CSE 331: Introduction to Algorithm Analysis and Design Graphs

The strong chromatic number of a graph

Basic Graph Theory with Applications to Economics

Strongly connected: A directed graph is strongly connected if every pair of vertices are reachable from each other.

Math 443/543 Graph Theory Notes 5: Planar graphs and coloring

Transcription:

Notes on Minimum Cuts and Modular Functions 1 Introduction The following are my notes on Cunningham s paper [1]. Given a submodular function f and a set S, submodular minimisation is the problem of finding A S for which f(a) is minimum. There exists continuous optimization algorithms such as ellipsoid algorithm and min-norm point algorithm for solving the minimisation problem, which are weakly polynomial (that is, the order depends on the minimum value of f(a) ) and are slow in practice. Cut functions are a special class of submodular functions which can be represented as a graph. The minimum st-cut algorithm on this graph gives the the minimum of the cut function. Formally, let S = {1, 2,..., n}. The graph consists of two special vertices {s, t}. Let us define a set function The submodular function is f(a) = u(δ(a)) where δ(a) denotes {(v i, v j ) E, such that v i A {s}, and v j / A {s}} (that is, the set of arcs coming out from the set {A {s}}. Property 1. Cut functions are submodular. Proof. Let S = {1, 2,..., N}. The graph consists of the vertex set V = {v 1,..., v N } {s, t} and the edge set defined over the vertex set. Consider any one vertex v x. Without loss of generality, let there be n outgoing edges e 1, e 2... e n from v x to v 1, v 2,..., v n. Using equation?? f vx (X) = f vx (X {v 1... v n }) = n j=1,j / X f vx (X) is clearly non-increasing with respect to X. The paper can be divided as considering three problems: 1. Graph Construction of a Cut Function e j (1) 2. Equivalence of min st-cut of a submodular function to minimising a modular function 3. Properties of matroid polyhedra We will consider only the first two parts here. 1

1.1 Graph Construction of a Cut Function Theorem 1. If a submodular function is know to be a cut function, then a graph can be constructed in polynomial (O( S 2 )) time. The statement implies that the minimum of the submodular function can then be obtained solving minimum st-cut on the graph for which strongly polynomial algorithms exist. Property 2. Cut functions have the following remarkable property. A, B, C S, Given f(a B C) = f(a B)+f(B C)+f(A C) f(a) f(b) f(c) f(φ) (2) Proof. Let us first consider the simplest case, where S = {a, b, c} and A = {a}, B = {b}, C = {c}. In this case, A, B, C form a partition of S. For cut functions, f(s) = f(φ) = 0. Also, we have f({a, b}) = e ac + e bc f({b, c}) = e ba + e ca f({c, a}) = e cb + e ab f({a}) = e ab + e ac Using equations 3, we can write the R.H.S as f({b}) = e ba + e bc f({c}) = e ca + e cb (3) f({a, b}) + f({b, c}) + f({c, a}) f({a}) f({b}) f({c}) + f(φ) = 0 (4) Since L.H.S also equals 0, the proof is complete. The same approach can be taken for the case S = {a, b, c, d} and A = {a}, B = {b}, C = {c}, so that A, B, C do not partition S. A more general case is one where A, B, C are sets of vertices. Given A S, f(a) can be obtained only by calling an oracle which returns the value. Equation 2 suggests that for a cut function, if one obtains the function value for all sets of cardinality 0, 1 and 2, then the full f specification is known using the inductive relation and no further oracle calls are required. In fact, exactly 1 + S + S C 2 oracle calls are necessary (that is, O( S 2 ). Given a cut function, [1] gives the algorithm for graph construction in O( S 2 ) time. Note that, the graph representation of a cut function is not unique and the construction specified here is a specific instance of such graphs. 2

1.1.1 Graph Construction We would like to construct a directed graph G = (V, E) such that every cut on the graph corresponds to a set and equals the value of the submodular function for that set. Let V = {s, t} {v 1, v,..., v n } where v i corresponds to i-th element of S ( S = n). s, t denote the source and sink terminals respectively. Let us denote any two vertices as v, w and the capacity of the edge v w as u vw. Elements of E are one of three types: 1. s v edges (source to vertex edge) Select an arbitrary vertex x in V. Assign u sx = f(φ) and u sv = 0 v S {x} The above ensures that u(δ({s})) = f(φ) 2. v w edges (vertex to vertex edge) u vw = u wv = 1 (f({v}) + f({w}) f({v, w}) f(φ)) 2 Since f is submodular, u vw is positive. The reason for selecting constant as 1/2 will come clear later. 3. v t edges (vertex to sink edge) u vt = f({v}) x S {v} u sx x S {v} By construction, the cut function equals f for A = 0, 1. We now show that the equality also holds for A = 2. Consider A = {v, w}. u vx u(δ({v, w} {s})) = u(δ({r, v})) + u(δ({r, w})) u vw u wv u(δ(r)) = f({v}) + f({w}) 2 1/2 (f({v}) + f({w}) f({v, w}) f(φ)) f(φ) = f({v, w}) Because f is a cut function here, it follows that it follows the relation 2. For any A such that A > 2, one can use the relation 2 to obtain the value from sets of cardinality 2 or smaller. Not clear how f(a) = u(δ((a {r}))) for all A. One way to think about submodular and cut functions is as follows: submodularity suggests that f values are not random, but obey the diminishing returns property. The property of being cut function suggests that there is redundancy in the values of f to the extent, that only polynomial number of entries are sufficient to determine the exponentially-sized f. As an aside, note that it is NP-hard to determine whether or not a given f is submodular, since we need to evaluate property of?? for all 2 S values of f. Theorem 2. Determining whether or not a submodular function is a cut function is NP-hard. 3

The proof of this statement proceeds by considering a cut function (and hence submodular). From this function, another function is derived by decrementing the value of one entry for a set A of cardinality greater than 2, the remaining entries being the same. By construction, this function is not cut function (the property 2 is violated for the changed entry), but it still is submodular (how?). To discover that the derived function is not cut function, there is no alternative but to check whether all entries for set of cardinality greater than 2, satisfy relation 2. 1.2 Min Cut Problem and Modular Function Minimisation over a Lattice [1] claims that the minimum cut problem is equivalent to minimising a modular function over a lattice (lattice referred to as ring in the paper). Recall that a modular function has the property: The above implies f(a B) + f(a B) = f(a) + f(b) (5) f(a) = f(φ) + i A(f({i}) f(φ)) (6) Let A = {a} and B = {b} in equation 5. This gives f({a, b}) + f(φ) = f({a} + f({b}) f({a, b}) = f(φ) + (f({a} f(φ)) + (f({b}) f(φ)) Using above, the modular value property can be proved inductively. Let b 0 = f(φ) and b i = f(i) f(φ). Modular function minimisation over 2 S is trivial: select A S such that {i S, b i < 0}. Modular function over a lattice (a subset of 2 S closed under union and intersection) is not trivial, but is easy as shown below. A family of subsets defined on a set S is another name for a collection of subsets of S - that is a subset of 2 S. When the meaning is clear from context, we will refer a family of subsets on S as just a family. Definition 1. A family F is said to be a lattice or a ring, if it is closed under union and intersection. Formally, A, B F = A B F and A B F (7) S: For instance, let S = {a, b, c, d}. The following are some lattices defined on 4

F = {φ, {a}, {b}, {a, b}} F = {φ, {a}, {c}, {a, c}} F = {φ, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c}} Definition 2. A closure of a graph G = (V, E) is a set A V, such that δ(a) = φ. In other words, the above definition says that a closure is a set A V, such that there is no edge from A to V A in G. Clearly A = φ and A = V are closures. The following propositions hold true: Proposition 1. The family of all closures of a directed graph G = (V, E) forms a proper ring family over S = V. Proof. For any A, B S, δ(a B) and δ(a B) is in δ(a) or δ(b). If A, B are closures, δ(a) = 0 and δ(b) = 0. Hence, δ(a B) = 0 and δ(a B) = 0. Thus, A B and A B are also closures. Also, φ and V are closures. So the ring family is proper. Proposition 2. Given a proper ring family F, a graph G can be constructed such that every element F F is a closure in G. The graph construction proceeds by taking a vertex for each element of set, that is, V = S. A directed edge is drawn for vertex i to vertex j, if occurrence of i in any set of F implies the occurrence of j in that set. Hence, (u, v) E if u F = v F. By construction, for every v F and for every w / F, (u, w) / E. Hence, F is a closure of G. Proposition 3. Each closure F in the above graph G belongs to F. The proof proceeds by showing that F is the intersection of sets which are guaranteed to be in F and hence F is in F. Formally, for u F and v / F, there should be a set F uv F such that u F uv and v / F uv (otherwise (u, v) E). Let F v = (F uv, u F ). Since F v is union of sets in F, F v is also inf. F = (F v, v / F ) and hence F is in F. (Note that F is not a proper subset of (F v, v / F ), since we take intersection over all elements not in F ). To construct the above graph, we need to make use of an oracle which answers for each i, j S, Does there exist some F F, such that i F and j / F?. If yes, we do not draw an arc between i and j, else we draw an arc. 5

1.2.1 Modular Minimisation over Lattice as Min Cut Modular Minimisation over Lattice as Min Cut Given a modular function defined on a ring family, we construct a graph such that modular function minimisation corresponds to the minimum weight closure problem on the graph. The idea is to take the directed graph G constructed above and assign weights to the nodes. First, find strongly connected components in G (corresponds to A i ) (O(n)). In the corresponding DAG, sort them topologically (O(n + m) = O(n 2 ). Find a path from source to sink in DAG. Assign weights to nodes inductively starting in reverse from sink. Min Weight Closure as Min Cut Due to the result of Picard, the minimum weight closure problem can be translated to a minimum st-cut problem on an appropriately constructed graph. Given a graph G on which min weight closure is to be found, we construct a graph G as follows. G and G have the same set of vertices. G has in addition the two terminal vertices {s, t} - source and sink respectively. If there is an edge in G, we draw the same edge in G with infinite capacity. For each v S, if b v < 0, we draw arc (s, v) with capacity b v. Else, if b v > 0, we draw arc (v, t) with capacity b v. A closure F in G induces a finite capacity st-cut in G. The cut consists of arcs leaving F {r}. The value of capacity is: {bv : v F, b v > 0} + { b v : v V F, b v < 0} = {b v : v F, b v > 0} {b v : v V F, b v < 0} = {b v : v F, b v > 0} {b v : v V F, b v < 0} + {b v : v F, b v < 0} {b v : v F, b v < 0} = {b v : v F } {b v : v V, b v < 0} Hence, the value of each finite capacity cut equals the closure weight plus a positive constant. Min cut on G will give the min weight closure on G with a constant added. 1.2.2 Min Cut as Modular Minimisation over Lattice Also, given an st-graph G, one can define a ring family F and a modular function defined over it such that the minimiser of the modular function also gives the minimiser of the st-cut problem. Given a graph G = (V, E), we consider S = V E. Let the family F be defined as {V E : {s} V V {t} and E γ(v )} where γ(v ) is the set of all edges with both endpoints in V. First we verify that F is a ring family. Let A, B F. First we show A B F. 6

A B = V A E A V B E B Clearly, {r} V A V B V {t} Also, γ(v A) γ(v B) γ(v A V B) Since E A E B γ(v A) γ(v B) = E A E B γ(v A V B) Now we show A B F. A B = (V A E A) (V B E B) = (V A V B) (E A E B) Clearly, {r} V A V B V {t} Also, γ(v A) γ(v B) = γ(v A V B)( draw and check ) Since E A E B γ(v A) γ(v B) = E A E B γ(v A V B) The set function value is defined as f(v E ) = u(δ(v) : v V ) u(e ). It is modular (sum of function of individual elements). For minimum value of f, we can assume E = γ(v ), since u(e) > 0 e E. For the minimiser A = V γ(v ) of F, f(a) = u(δ(v )). Hence, the minimiser of f gives the min cut minimiser exactly. References [1] William H Cunningham. Minimum cuts, modular functions, and matroid polyhedra. Networks, 15(2):205 215, 1985. 7