12.1 Formulation of General Perfect Matching

Size: px
Start display at page:

Download "12.1 Formulation of General Perfect Matching"

Transcription

1 CSC5160: Combinatorial Optimization and Approximation Algorithms Topic: Perfect Matching Polytope Date: 22/02/2008 Lecturer: Lap Chi Lau Scribe: Yuk Hei Chan, Ling Ding and Xiaobing Wu In this lecture, the focus is on general perfect matching problem where the goal is to prove that it can be solved in polynomial time by linear programming. Based on the LP formulation for bipartite matching studied in Lecture 10, we add some valid inequalities to establish a new formulation. Then we prove that for general perfect matching, all vertex solutions of the linear program are integral. This shows that the new formulation defines the matching polytope, and the general perfect matching problem can be solved by linear programming. Finally, we will show that this linear program can be solved in polynomial time, by providing a polynomial time separation oracle Formulation of General Perfect Matching Given a weighted general graph G = (V, E), for any edge e, w e represents the weight of the edge and x e is the indicator variable of e. If an edge e is in the matching, we set x e = 1, otherwise x e = 0. Base on these definitions, the weighted perfect matching problem can be formulated as follows: e δ(v) max e E w e x e x e = 1 v V (12.1.1) x e = {0, 1} e E (12.1.2) Note that this formulation is the same as the weighted perfect matching on bipartite graphs. Since integer linear programming is NP-hard in general, so in the following we try to relax the above integer linear program Relaxing the integrality constraint Similar to the case of bipartite matching, we replace the constraint x e {0, 1} with 0 x e 1. Since the degree constraint already implies x e 1, we formulate the linear programming as follows: e δ(v) max e E w e x e x e = 1 v V x e 0 e E (12.1.3) Unlike the case for bipartite matching, this formulation does not guarantee an integral solution. A simple example is shown in Figure , in which (0.5, 0.5, 0.5) is a solution to the linear program. Since the three degree constraints are tight and independent, this is a basic solution, which means 1

2 not all vertex solutions are integral (Recall basic solution is equivalent to vertex solution see Lecture 9). To have a better formulation, we add valid inequalities that kill the fractional vertex solutions while preserving all integral solutions. x1 x x Odd-set Inequalities Figure : K 3 with solution (0.5, 0.5, 0.5) The problem in the above example is that, for a set of odd number of vertices S, there can only be at most edges, that is S 2 e E(S) x e S 2 where E(S) denotes the set of edges with both endpoints in S. S V : S odd (12.1.4) Since we are focussing on perfect matching, we can assume V is even and simplify (12.1.4). Let S = V S. Since V is even, S is odd whenever S is odd. We have x e S 1 2 so e E(S) e E(S) e E(S) E(S) In a perfect matching we have x e S 1 2 x e S + S 2 e E S V : S odd 1 S V : S odd (12.1.5) x e = V 2. (12.1.6) Subtracting (12.1.5) from (12.1.6) we obtain the odd-set inequalities x e 1 S V : S odd (12.1.7) e δ(s) where δ(s) denotes the set of edges with one end in S and one end in V S. 2

3 x1 x1 x2 x3 x2 x3 Figure : Fractional solution (0.5, 0.5, 0.5) in the polytope (left) and how it is removed by the inequality x 1 + x 2 + x 3 1 (right) In 1965, Edmonds proved that the inclusion of the odd-set inequalities is enough to kill all fractional solutions in the perfect matching polytope, that is, with the odd-set inequalities, the polytope is the same as the convex hull of all perfect matchings. He also devised a polynomial time algorithm to find a perfect matching in his famous paper Paths, trees, and flowers [1]. This was well before the Ellipsoid method, invented in 1972, which solves exponential sized LP in polynomial time LP Formulation of General Perfect Matching After relaxing the integral constraint and adding odd-set inequalities, we get the LP formulation of general perfect matching problem as described below: max w e x e e δ(v) e δ(s) x e = 1 x e 1 x e 0 e E(G) v V S : S odd e E In the next section, we will prove that all the vertex solutions of this linear program are integral. That means that every vertex solution corresponds to a matching. Note that in this LP formulation, there are exponentially many inequalities. We need a polynomial time separation oracle in order to solve the LP in polynomial time via the Ellipsoid method. This will be discussed in Section

4 12.2 Matching Polytope In this section, we will prove that each basic solution of the linear program in the previous section corresponds to a matching. Before doing that, we first introduce the concept of convex combination. Definition A point y in R n is a convex combination of x 1, x 2,..., x k if there exist λ 1, λ 2,..., λ k > 0 such that y = λ 1 x 1 + λ 2 x λ k x k and λ 1 + λ λ k = 1. Based on this definition, we have the following useful fact about basic solutions that will be used later. Fact A feasible solution is a vertex solution if and only if it is not a convex combination of other feasible solutions. Geometrically, a point p is a convex combination of other points p 1, p 2,..., p k if p is in the convex hull of p 1,..., p k. So, it is intuitively clear that a vertex solution is not a convex combination of other feasible solutions. After realizing this fact, the proof of integrality can be reduced to proving that every feasible solution can be written as a convex combination of matchings (0-1 solutions of this linear program). Because if we can prove that, we can conclude that there is no vertex solution which is not a matching (a 0-1 solution), and hence every vertex solution is a matching. Indeed, we only need to prove that every basic feasible solution is a convex combination of matchings, because Lemma Every feasible solution is a convex combination of basic feasible solutions. Proof: We just outline an informal proof here. Suppose y is a fractional solution but not a basic solution (Figure 12.2). Then there must be at least one direction ɛ i such that both y + ɛ i and y ɛ i are feasible. Extend y along this dimension as much as you can without leaving the polytope and stop at two points y i + and yi. It is clear that y is a convex combination of these two points. Also, both y i + and yi will have at least one more constraint that goes tight, compared to y. As basic solutions are unique solution of n linearly independent tight constraints (for n variables) and each time at least one more inequality goes tight, by induction (on number of tight inequalities) y i + and yi can be written as a convex combination of basic feasible solutions and thus y can be written as a convex combination of basic feasible solutions Reduction Now we construct a minimal example of such graph. As in the case of bipartite graph, we leave out edges that are 0 for they do not participate in the matching and do not affect the existance of a matching in the smaller graph. In case any edge is 1 we reduce the graph by removing the two vertices and edges incident to these vertices. This is because we can add them back easily. Consider Figure On the top we have a fractional solution with an edge of one. We leave that out and in the smaller graph, if we can find a convex combination of matchings for the reduced graph (middle), then by adding the edge of 1 back to matching we know the original graph can also be written as a convex combination of matchings (bottom). After these operations we are left with a graph such that for each edge e, we have 0 < x e < 1. 4

5 y 4 y 1 y i y y i + y 3 y 2 Figure : y is a convex combination of y + i and y i, and y+ i (y i ) is a convex combination of basic solutions y 1 and y 2 (y 3 and y 4 ), so y is a convex combination of y 1, y 2, y 3 and y Contraction As the odd-set constraints e δ(s) x e 1 when S is a singleton, is implied by the degree constraint x e = 1, e δ(v) in the following we will focus on odd-set with at least three vertices. We claim that if there is a tight odd-set inequality, we can break the graph into 2 smaller graphs, and project the feasible fractional solution of perfect matching in the original graph into feasible fractional solutions of perfect matching in the smaller graphs. By induction, each projected solution can be written as convex combination of matchings in the smaller graphs. Then we show how to use these matchings to write the original feasible fractional solution as a convex combination of matchings in the original graphs. This type of divide and conquer argument is quite common in combinatorial optimization. Now we describe the details when we see a tight odd-set constraint. Edges involved in a tight oddset inequality separates the graph into 2 components, each with an odd number of vertices. We construct the two smaller graphs by contracting one component into a single vertex (Figure ). Also, we define the fractional value of each edge in the smaller graphs to be the same as the fractional value of the corresponding edge in the original graph (this is what we meant by projecting the original solution into the two smaller graphs). As both odd-sets contains at least three vertices, the resulting graphs are smaller than the original one, and there are even number of vertices in both graphs. So, to apply induction to show that the two projected solutions can be written as convex combination of matchings in the smaller graphs, we 5

6 Figure : Recovering the matching from the reduced graph only need to check that the projected solutions are feasible fractional solutions of perfect matching in the smaller graphs. There are two types of contstraints to check: degree constraints and odd-set constraints. For degree constraints, note that degree of vertices in individual components remain unchanged, while the degree of the new vertices (the contracted components) are exactly one, by the assumption that the odd-set inequality is tight. So all the degree constraints are satisfied in the smaller graphs. For odd-set inequalities, if the odd-set does not include the contracted vertex, then the inequality is clearly not violated. If the odd-set does include the contracted vertex, this corresponds to the set of vertices in the contracted component and there are odd number of them. Thus an odd-set in the smaller graph corresponds to an odd-set in the original graph, which means the odd-set inequality is still satisfied. 0.3 A B A B Combining matchings Figure : Contracting into smaller subgraphs We have written the projected solutions as convex combinations of matchings in the smaller graphs. Now we want to combine the matchings in order to write the original feasible fractional solution as a convex combination of matchings in the original graph. The idea is simple: just combine the 6

7 matching. The easier case is that the weights of the corresponding edges are equal, then we can simply join them and this shows the original fractional solution is a convex combination of matchings (Figure ) Figure : Combine when the weighing of the matchings are equal The slightly more difficult case is when weighing of matchings do not match. In this case we can further breakdown the weighing of the matching to their common denominator, then we can join the both sides (Figure ). (Here we use the fact that the solution from LP is rational so we can ask for the common denominator) x 0.3 x 0.3 x 0.3 x = x 0.6 x 0.2 x 0.4 x 0.5 x 0.1 x 0.1 Figure : Combine when the weighing of the matchings are not equal To summarize, if there are tight odd-set inequalities, then we can apply this divide and conquer procedure to write the fractional solution as a convex combination of matchings. 7

8 Basic Solution We keep contracting the graph if there are any tight odd-set inequalities. fractional solutions when there are no tight odd-set inequalities: max w e x e S : S odd e δ(v) e δ(s) e E(G) x e = 1 x e 1 x e 0 An edge of 1, reduce it. Tight odd-set, contract it. An edge of 0, delete it. Let us examine the After removal of edges of 0 and contraction of tight odd-set, the only constraint that can be tight is the degree constraint. If there are 2n vertices after contraction, there can be at most 2n tight constraints. Since every edge is fractional, each vertex has degree at least 2, which means there are at least 2n edges. By Lemma , we can focus on basic solutions, which means we only need to consider the case when there are exactly 2n edges. (with > 2n edges (variables) and 2n tight inequalities the solution cannot be basic.) This implies that each vertex has degree 2, so the graph is a disjoint union of cycles. With odd-set inequalities that rule out the possibility of odd cycles, the graph is actually a disjoint union of even cycles (so it is bipartite). In the previous lecture, it has been shown that even cycles can be decomposed into matchings, therefore each fractional solution is a convex combination of matchings. To summarize, through a few steps of reduction, most importantly the contraction step, the problem is reduced to a very simple problem when there are only disjoint union of cycles. In this simple case, we can write it as a convex combination of matchings, and hence the general case as well. This completes the proof of integrality Separation Oracle In the previous section, we proved that the general matching polytope is integral. In this section, we are going to discuss how to solve this problem by linear programming. Based on the Ellipsoid method, the crucial step is to decide, given x R n, whether x P. If not, we also need to find a violated inequality. In particular, given a fractional solution, we want to check whether it satisfies all the following constraints. If not, return one constraint violated by this fractional 8

9 solution. Remember, we should do this in polynomial time. max w e x e e δ(v) e δ(s) x e = 1 x e 1 x e 0 e E(G) v V S : S odd e E In the above constraints, note that constraints of the first and third kind can be checked one by one. However, we cannot simply follow the same way for the second constraints, for there are exponentially many of them, implying that if we simply check them one by one, then the whole task cannot be completed in polynomial time. In the remaining part of this section, we focus on the odd-set constraints. Now consider a graph G(V, E), V = 2n with a capacity function c : E R +, and for each edge e E, c(e) = x e. Consider a u-v cut which splits the nodes of G into two sets U and V, such that u U and v V, then this cut is said to be odd(even) if both U and V are odd(even). If the second constraint is satisfied, then each odd cut in the graph has total capacity at least 1. In other words, the minimum odd cut of the graph is at least 1. Next we will show how to use Gomory-Hu Tree introduced in Lecture 7 to achieve this goal. The remaining part of this section is organized as follows: first, a brief review of Gomory-Hu tree is given in Section , and then we give the separation oracle and finally show the correctness of this separation oracle in Section Gomory-Hu Tree Figure : A graph (left) and its Gomory-Hu tree representation (right) A Gomory-Hu tree is a compact representation of all minimum s-t cuts in undirected graphs. For any two vertices s and t in the graph, there is a unique s-t path P in the Gomory-Hu tree. The capacity of a s-t min-cut is equal to the bottleneck capacity of P, that is the capacity of the edge having the smallest capacity among all edges in P. Furthermore, the cut in the Gomory-Hu tree is the cut of the original graph. Suppose we want to find the min a-e cut in Figure Just look at the unique path from a to e in the Gomory-Hu tree, and the edge with smallest capacity 9

10 is cd (with capacity 13). By removing the edge cd, we get two components: U = {e, f, d} and V = {a, c, b}. So the min a-e cut is 13, and C = {(u, v) u U, v V } is one of the min a-e cuts (minimum cuts are not necessarily unique) Separation Oracle for General Matching To check if a fractional solution satisfies all odd-set constraints, we want to check whether the minimum odd cut has capacity at least 1. In order to use the Gomory-Hu tree to achieve this goal, we first give the following definition. Definition odd (even) edge: Given a Gomory-Hu tree T, an edge e is odd (even) if T e consists of two components, both of which has an odd (even) number of vertices. Figure : A Gomory-Hu tree. All the odd edges are in red. Based on Definition , if any odd edge in the Gomory-Hu tree of a graph has capacity less than 1, then we find a violating odd cut. Given a fractional solution, a polynomial time algorithm to check whether it satisfies all odd set constraints consists of the following three steps: 1. Compute a Gomory-Hu tree based on this fractional solution. 2. For each edge in the Gomory-Hu tree, check whether it is odd or even. 3. For each odd edge in the Gomory-Hu tree, check whether its capacity is at least 1. If there is an odd edge with capacity less than 1, we return a violating odd cut Correctness In this section, we will show the correctness of this separation oracle. Specifically, given a graph G with even number of vertices, a Gomory-Hu tree T and an odd cut C, we consider the following two cases: Case 1 There is an odd edge in the Gomory-Hu tree T crossing C. As Figure shows, suppose the odd edge crossing C be uv with value x. If we have checked that all the odd edges in Gomory-Hu tree T has capacity at least 1, then any u v cut has capacity at least 1. Since C is an u v cut, this implies that C has capacity at least 1. 10

11 u x v C Figure : Case 1 U None of such single isolated vertex will appear in U cut C Figure : Case 2 Case 2 There is no odd edge in the Gomory-Hu tree T crossing C. Acutally, this case never exists. Suppose the odd cut C splits the graph into two components U and G U. Now we consider all the nodes U in the Gomory-Hu tree T, as Figure shows. Note that there is no single isolated nodes in U. This is because T is a tree, so each node is connected to some other node. If a node is connected to some node that is also in U, then this node is part of a tree component with more than one node; if it is connected to some node in T U by an edge e, then e is an odd edge, contradicting the assumption. Since there are only even edges crossing C, we argue that each tree component inside U has an even number of vertices. Consider any even edge across the cut. By removing this edge, we have an even number of vertices isolated. Assume the isolated component does not completely lies in U (otherwise the component is even). Since every edge crossing the cut is an even edge, disconnecting them does not change the number of vertices from even to odd. This implies that U has an even number of vertices, contradicting the assumption that U is one of the components created by the odd cut C. 11

12 12.4 Summary Problem Solution LP-formulation Polynomial time Vertex solution LP-solver integral Separation oracle Figure : The Big Picture Figure illustrates the procedure of solving a problem by linear programming. First of all, we have to find a good LP formulation. In this general matching case, we add all the odd-set inequalities. Next, we should prove that the LP can be solved in polynomial time. Since sometimes we could write exponential number of constraints in linear program, we have to provide a polynomial time separation oracle. The black box in Figure is ellipsoid algorithm. After LP formulation is done and separation oracle is given, Ellipsoid method will give us a vertex solution. As long as we can prove that the vertex solution is integral, we solve our original problem, in other words, we get the optimal solution of the original problem. References [1] Jack Edmonds, Paths, Trees, and Flowers, Canadian Journal of Mathematics 17, p , Available at Google Scholar (through keyword: Paths, trees and flowers ). [2] Alexander Schrijver, Ch. 25 The matching polytope, Combinatorial Optimization, Springer,

Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs

Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 2009) Lecture 10,11: General Matching Polytope, Maximum Flow Lecturer: Mohammad R Salavatipour Date: Oct 6 and 8, 2009 Scriber: Mohammad

More information

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

In this lecture, we ll look at applications of duality to three problems: Lecture 7 Duality Applications (Part II) In this lecture, we ll look at applications of duality to three problems: 1. Finding maximum spanning trees (MST). We know that Kruskal s algorithm finds this,

More information

1 Matching in Non-Bipartite Graphs

1 Matching in Non-Bipartite Graphs CS 369P: Polyhedral techniques in combinatorial optimization Instructor: Jan Vondrák Lecture date: September 30, 2010 Scribe: David Tobin 1 Matching in Non-Bipartite Graphs There are several differences

More information

5.1 Min-Max Theorem for General Matching

5.1 Min-Max Theorem for General Matching CSC5160: Combinatorial Optimization and Approximation Algorithms Topic: General Matching Date: 4/01/008 Lecturer: Lap Chi Lau Scribe: Jennifer X.M. WU In this lecture, we discuss matchings in general graph.

More information

6. Lecture notes on matroid intersection

6. Lecture notes on matroid intersection Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm

More information

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Mathematical and Algorithmic Foundations Linear Programming and Matchings Adavnced Algorithms Lectures Mathematical and Algorithmic Foundations Linear Programming and Matchings Paul G. Spirakis Department of Computer Science University of Patras and Liverpool Paul G. Spirakis

More information

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 009) Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching Lecturer: Mohammad R. Salavatipour Date: Sept 15 and 17, 009

More information

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 9.1 Linear Programming Suppose we are trying to approximate a minimization

More information

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.

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. 18.433 Combinatorial Optimization Matching Algorithms September 9,14,16 Lecturer: Santosh Vempala Given a graph G = (V, E), a matching M is a set of edges with the property that no two of the edges have

More information

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

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

More information

Advanced Combinatorial Optimization September 17, Lecture 3. Sketch some results regarding ear-decompositions and factor-critical graphs.

Advanced Combinatorial Optimization September 17, Lecture 3. Sketch some results regarding ear-decompositions and factor-critical graphs. 18.438 Advanced Combinatorial Optimization September 17, 2009 Lecturer: Michel X. Goemans Lecture 3 Scribe: Aleksander Madry ( Based on notes by Robert Kleinberg and Dan Stratila.) In this lecture, we

More information

Lecture 14: Linear Programming II

Lecture 14: Linear Programming II A Theorist s Toolkit (CMU 18-859T, Fall 013) Lecture 14: Linear Programming II October 3, 013 Lecturer: Ryan O Donnell Scribe: Stylianos Despotakis 1 Introduction At a big conference in Wisconsin in 1948

More information

Integer Programming Theory

Integer Programming Theory Integer Programming Theory Laura Galli October 24, 2016 In the following we assume all functions are linear, hence we often drop the term linear. In discrete optimization, we seek to find a solution x

More information

11.1 Facility Location

11.1 Facility Location CS787: Advanced Algorithms Scribe: Amanda Burton, Leah Kluegel Lecturer: Shuchi Chawla Topic: Facility Location ctd., Linear Programming Date: October 8, 2007 Today we conclude the discussion of local

More information

γ(ɛ) (a, b) (a, d) (d, a) (a, b) (c, d) (d, d) (e, e) (e, a) (e, e) (a) Draw a picture of G.

γ(ɛ) (a, b) (a, d) (d, a) (a, b) (c, d) (d, d) (e, e) (e, a) (e, e) (a) Draw a picture of G. MAD 3105 Spring 2006 Solutions for Review for Test 2 1. Define a graph G with V (G) = {a, b, c, d, e}, E(G) = {r, s, t, u, v, w, x, y, z} and γ, the function defining the edges, is given by the table ɛ

More information

5. Lecture notes on matroid intersection

5. Lecture notes on matroid intersection Massachusetts Institute of Technology Handout 14 18.433: Combinatorial Optimization April 1st, 2009 Michel X. Goemans 5. Lecture notes on matroid intersection One nice feature about matroids is that a

More information

Topics in Combinatorial Optimization February 5, Lecture 2

Topics in Combinatorial Optimization February 5, Lecture 2 8.997 Topics in Combinatorial Optimization February 5, 2004 Lecture 2 Lecturer: Michel X. Goemans Scribe: Robert Kleinberg In this lecture, we will: Present Edmonds algorithm for computing a maximum matching

More information

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0).

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0). CS4234: Optimisation Algorithms Lecture 4 TRAVELLING-SALESMAN-PROBLEM (4 variants) V1.0: Seth Gilbert, V1.1: Steven Halim August 30, 2016 Abstract The goal of the TRAVELLING-SALESMAN-PROBLEM is to find

More information

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018

15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 15-451/651: Design & Analysis of Algorithms October 11, 2018 Lecture #13: Linear Programming I last changed: October 9, 2018 In this lecture, we describe a very general problem called linear programming

More information

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

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 Graph fundamentals Bipartite graph characterization Lemma. If a graph contains an odd closed walk, then it contains an odd cycle. Proof strategy: Consider a shortest closed odd walk W. If W is not a cycle,

More information

1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching February 4th, 1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)

More information

CPSC 536N: Randomized Algorithms Term 2. Lecture 10

CPSC 536N: Randomized Algorithms Term 2. Lecture 10 CPSC 536N: Randomized Algorithms 011-1 Term Prof. Nick Harvey Lecture 10 University of British Columbia In the first lecture we discussed the Max Cut problem, which is NP-complete, and we presented a very

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Prof. Tapio Elomaa tapio.elomaa@tut.fi Course Basics A 4 credit unit course Part of Theoretical Computer Science courses at the Laboratory of Mathematics There will be 4 hours

More information

Solution for Homework set 3

Solution for Homework set 3 TTIC 300 and CMSC 37000 Algorithms Winter 07 Solution for Homework set 3 Question (0 points) We are given a directed graph G = (V, E), with two special vertices s and t, and non-negative integral capacities

More information

Solutions to Problem Set 2

Solutions to Problem Set 2 Massachusetts Institute of Technology Michel X. Goemans 18.453: Combinatorial Optimization 017 Spring Solutions to Problem Set -3 Let U be any minimizer in the Tutte-Berge formula. Let K 1,, K k be the

More information

Theorem 2.9: nearest addition algorithm

Theorem 2.9: nearest addition algorithm There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used

More information

1. Lecture notes on bipartite matching

1. Lecture notes on bipartite matching Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in

More information

Number Theory and Graph Theory

Number Theory and Graph Theory 1 Number Theory and Graph Theory Chapter 6 Basic concepts and definitions of graph theory By A. Satyanarayana Reddy Department of Mathematics Shiv Nadar University Uttar Pradesh, India E-mail: satya8118@gmail.com

More information

Linear Programming Duality and Algorithms

Linear Programming Duality and Algorithms COMPSCI 330: Design and Analysis of Algorithms 4/5/2016 and 4/7/2016 Linear Programming Duality and Algorithms Lecturer: Debmalya Panigrahi Scribe: Tianqi Song 1 Overview In this lecture, we will cover

More information

A simple exact separation algorithm for 2-matching inequalities

A simple exact separation algorithm for 2-matching inequalities A simple exact separation algorithm for 2-matching inequalities Julián Aráoz Simón Bolívar University, Venezuela Technical University of Catalonia, Spain Elena Fernández Technical University of Catalonia,

More information

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University

Iterative Methods in Combinatorial Optimization. R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University Iterative Methods in Combinatorial Optimization R. Ravi Carnegie Bosch Professor Tepper School of Business Carnegie Mellon University ravi@cmu.edu Combinatorial Optimization Easy Problems : polynomial

More information

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS PAUL BALISTER Abstract It has been shown [Balister, 2001] that if n is odd and m 1,, m t are integers with m i 3 and t i=1 m i = E(K n) then K n can be decomposed

More information

Lecture 7: Asymmetric K-Center

Lecture 7: Asymmetric K-Center Advanced Approximation Algorithms (CMU 18-854B, Spring 008) Lecture 7: Asymmetric K-Center February 5, 007 Lecturer: Anupam Gupta Scribe: Jeremiah Blocki In this lecture, we will consider the K-center

More information

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

K 4 C 5. Figure 4.5: Some well known family of graphs 08 CHAPTER. TOPICS IN CLASSICAL GRAPH THEORY K, K K K, K K, K K, K C C C C 6 6 P P P P P. Graph Operations Figure.: Some well known family of graphs A graph Y = (V,E ) is said to be a subgraph of a graph

More information

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007

College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007 College of Computer & Information Science Fall 2007 Northeastern University 14 September 2007 CS G399: Algorithmic Power Tools I Scribe: Eric Robinson Lecture Outline: Linear Programming: Vertex Definitions

More information

Steiner Trees and Forests

Steiner Trees and Forests Massachusetts Institute of Technology Lecturer: Adriana Lopez 18.434: Seminar in Theoretical Computer Science March 7, 2006 Steiner Trees and Forests 1 Steiner Tree Problem Given an undirected graph G

More information

1 Linear programming relaxation

1 Linear programming relaxation Cornell University, Fall 2010 CS 6820: Algorithms Lecture notes: Primal-dual min-cost bipartite matching August 27 30 1 Linear programming relaxation Recall that in the bipartite minimum-cost perfect matching

More information

Solving LP in polynomial time

Solving LP in polynomial time Combinatorial Optimization 1 Solving LP in polynomial time Guy Kortsarz Combinatorial Optimization 2 Sketch of the ideas in the Ellipsoid algorithm If we use LP we need to show how to solve it in polynomial

More information

Advanced Combinatorial Optimization September 15, Lecture 2

Advanced Combinatorial Optimization September 15, Lecture 2 18.438 Advanced Combinatorial Optimization September 15, 2009 Lecture 2 Lecturer: Michel X. Goemans Scribes: Robert Kleinberg (2004), Alex Levin (2009) In this lecture, we will present Edmonds s algorithm

More information

Bicriteria Network Design via Iterative Rounding

Bicriteria Network Design via Iterative Rounding Bicriteria Network Design via Iterative Rounding Piotr Krysta Department of Computer Science, Dortmund University Baroper Str. 301, 44221 Dortmund, Germany piotr.krysta@cs.uni-dortmund.de Abstract. We

More information

A Verification Based Method to Generate Cutting Planes for IPs

A Verification Based Method to Generate Cutting Planes for IPs A Verification Based Method to Generate Cutting Planes for IPs Santanu S. Dey Sebastian Pokutta Georgia Institute of Technology, USA. Friedrich-Alexander-Universität Erlangen-Nürnberg, Germany. SIAM Conference

More information

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanford.edu) January 11, 2018 Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 In this lecture

More information

Lecture notes on: Maximum matching in bipartite and non-bipartite graphs (Draft)

Lecture notes on: Maximum matching in bipartite and non-bipartite graphs (Draft) Lecture notes on: Maximum matching in bipartite and non-bipartite graphs (Draft) Lecturer: Uri Zwick June 5, 2013 1 The maximum matching problem Let G = (V, E) be an undirected graph. A set M E is a matching

More information

1 Bipartite maximum matching

1 Bipartite maximum matching Cornell University, Fall 2017 Lecture notes: Matchings CS 6820: Algorithms 23 Aug 1 Sep These notes analyze algorithms for optimization problems involving matchings in bipartite graphs. Matching algorithms

More information

Paths, Flowers and Vertex Cover

Paths, Flowers and Vertex Cover Paths, Flowers and Vertex Cover Venkatesh Raman M. S. Ramanujan Saket Saurabh Abstract It is well known that in a bipartite (and more generally in a König) graph, the size of the minimum vertex cover is

More information

2. Lecture notes on non-bipartite matching

2. Lecture notes on non-bipartite matching Massachusetts Institute of Technology 18.433: Combinatorial Optimization Michel X. Goemans February 15th, 013. Lecture notes on non-bipartite matching Given a graph G = (V, E), we are interested in finding

More information

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs Approximation slides 1 An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs Approximation slides 2 Linear independence A collection of row vectors {v T i } are independent

More information

The Encoding Complexity of Network Coding

The Encoding Complexity of Network Coding The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network

More information

PTAS for Matroid Matching

PTAS for Matroid Matching PTAS for Matroid Matching Jon Lee 1 Maxim Sviridenko 1 Jan Vondrák 2 1 IBM Watson Research Center Yorktown Heights, NY 2 IBM Almaden Research Center San Jose, CA May 6, 2010 Jan Vondrák (IBM Almaden) PTAS

More information

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

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I Instructor: Shaddin Dughmi Announcements Posted solutions to HW1 Today: Combinatorial problems

More information

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3) COMPSCI 632: Approximation Algorithms September 18, 2017 Lecturer: Debmalya Panigrahi Lecture 7 Scribe: Xiang Wang 1 Overview In this lecture, we will use Primal-Dual method to design approximation algorithms

More information

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

CS 598CSC: Approximation Algorithms Lecture date: March 2, 2011 Instructor: Chandra Chekuri CS 598CSC: Approximation Algorithms Lecture date: March, 011 Instructor: Chandra Chekuri Scribe: CC Local search is a powerful and widely used heuristic method (with various extensions). In this lecture

More information

Bipartite Roots of Graphs

Bipartite Roots of Graphs Bipartite Roots of Graphs Lap Chi Lau Department of Computer Science University of Toronto Graph H is a root of graph G if there exists a positive integer k such that x and y are adjacent in G if and only

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

CMPSCI611: The Simplex Algorithm Lecture 24

CMPSCI611: The Simplex Algorithm Lecture 24 CMPSCI611: The Simplex Algorithm Lecture 24 Let s first review the general situation for linear programming problems. Our problem in standard form is to choose a vector x R n, such that x 0 and Ax = b,

More information

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

Approximation Algorithms: The Primal-Dual Method. My T. Thai Approximation Algorithms: The Primal-Dual Method My T. Thai 1 Overview of the Primal-Dual Method Consider the following primal program, called P: min st n c j x j j=1 n a ij x j b i j=1 x j 0 Then the

More information

Lecture 2 - Introduction to Polytopes

Lecture 2 - Introduction to Polytopes Lecture 2 - Introduction to Polytopes Optimization and Approximation - ENS M1 Nicolas Bousquet 1 Reminder of Linear Algebra definitions Let x 1,..., x m be points in R n and λ 1,..., λ m be real numbers.

More information

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings On the Relationships between Zero Forcing Numbers and Certain Graph Coverings Fatemeh Alinaghipour Taklimi, Shaun Fallat 1,, Karen Meagher 2 Department of Mathematics and Statistics, University of Regina,

More information

Math 170- Graph Theory Notes

Math 170- Graph Theory Notes 1 Math 170- Graph Theory Notes Michael Levet December 3, 2018 Notation: Let n be a positive integer. Denote [n] to be the set {1, 2,..., n}. So for example, [3] = {1, 2, 3}. To quote Bud Brown, Graph theory

More information

Graph Connectivity G G G

Graph Connectivity G G G Graph Connectivity 1 Introduction We have seen that trees are minimally connected graphs, i.e., deleting any edge of the tree gives us a disconnected graph. What makes trees so susceptible to edge deletions?

More information

Combinatorial Optimization

Combinatorial Optimization Combinatorial Optimization Frank de Zeeuw EPFL 2012 Today Introduction Graph problems - What combinatorial things will we be optimizing? Algorithms - What kind of solution are we looking for? Linear Programming

More information

Problem set 2. Problem 1. Problem 2. Problem 3. CS261, Winter Instructor: Ashish Goel.

Problem set 2. Problem 1. Problem 2. Problem 3. CS261, Winter Instructor: Ashish Goel. CS261, Winter 2017. Instructor: Ashish Goel. Problem set 2 Electronic submission to Gradescope due 11:59pm Thursday 2/16. Form a group of 2-3 students that is, submit one homework with all of your names.

More information

On linear and semidefinite programming relaxations for hypergraph matching

On linear and semidefinite programming relaxations for hypergraph matching Math. Program., Ser. A DOI 10.1007/s10107-011-0451-5 FULL LENGTH PAPER On linear and semidefinite programming relaxations for hypergraph matching Yuk Hei Chan Lap Chi Lau Received: November 009 / Accepted:

More information

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms 1. Computability, Complexity and Algorithms Given a simple directed graph G = (V, E), a cycle cover is a set of vertex-disjoint directed cycles that cover all vertices of the graph. 1. Show that there

More information

by conservation of flow, hence the cancelation. Similarly, we have

by conservation of flow, hence the cancelation. Similarly, we have Chapter 13: Network Flows and Applications Network: directed graph with source S and target T. Non-negative edge weights represent capacities. Assume no edges into S or out of T. (If necessary, we can

More information

Treewidth and graph minors

Treewidth and graph minors Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under

More information

Lecture 9: Pipage Rounding Method

Lecture 9: Pipage Rounding Method Recent Advances in Approximation Algorithms Spring 2015 Lecture 9: Pipage Rounding Method Lecturer: Shayan Oveis Gharan April 27th Disclaimer: These notes have not been subjected to the usual scrutiny

More information

Greedy algorithms is another useful way for solving optimization problems.

Greedy algorithms is another useful way for solving optimization problems. Greedy Algorithms Greedy algorithms is another useful way for solving optimization problems. Optimization Problems For the given input, we are seeking solutions that must satisfy certain conditions. These

More information

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36 CS 473: Algorithms Ruta Mehta University of Illinois, Urbana-Champaign Spring 2018 Ruta (UIUC) CS473 1 Spring 2018 1 / 36 CS 473: Algorithms, Spring 2018 LP Duality Lecture 20 April 3, 2018 Some of the

More information

Network flows and Menger s theorem

Network flows and Menger s theorem Network flows and Menger s theorem Recall... Theorem (max flow, min cut strong duality). Let G be a network. The maximum value of a flow equals the minimum capacity of a cut. We prove this strong duality

More information

Exam problems for the course Combinatorial Optimization I (DM208)

Exam problems for the course Combinatorial Optimization I (DM208) Exam problems for the course Combinatorial Optimization I (DM208) Jørgen Bang-Jensen Department of Mathematics and Computer Science University of Southern Denmark The problems are available form the course

More information

1 The Traveling Salesperson Problem (TSP)

1 The Traveling Salesperson Problem (TSP) CS 598CSC: Approximation Algorithms Lecture date: January 23, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im In the previous lecture, we had a quick overview of several basic aspects of approximation

More information

Rigidity, connectivity and graph decompositions

Rigidity, connectivity and graph decompositions First Prev Next Last Rigidity, connectivity and graph decompositions Brigitte Servatius Herman Servatius Worcester Polytechnic Institute Page 1 of 100 First Prev Next Last Page 2 of 100 We say that a framework

More information

A Note on Polyhedral Relaxations for the Maximum Cut Problem

A Note on Polyhedral Relaxations for the Maximum Cut Problem A Note on Polyhedral Relaxations for the Maximum Cut Problem Alantha Newman Abstract We consider three well-studied polyhedral relaxations for the maximum cut problem: the metric polytope of the complete

More information

Lecture Overview. 2 The Steiner Tree Problem. 2.1 Steiner tree: a 2-approximation algorithm. COMPSCI 590.1: Graph Algorithms March 22, 2015

Lecture Overview. 2 The Steiner Tree Problem. 2.1 Steiner tree: a 2-approximation algorithm. COMPSCI 590.1: Graph Algorithms March 22, 2015 COMPCI 590.1: Graph Algorithms March 22, 2015 Lecturer: Debmalya Panigrahi Lecture 16-17 cribe: Yuhao Hu 1 Overview The main topics of this lecture are the offline edge-weighted teiner tree and teiner

More information

Lecture Orientations, Directed Cuts and Submodular Flows

Lecture Orientations, Directed Cuts and Submodular Flows 18.997 Topics in Combinatorial Optimization April 15th, 2004 Lecture 18 Lecturer: Michel X. Goemans Scribe: Nick Harvey 18 Orientations, irected Cuts and Submodular Flows In this lecture, we will introduce

More information

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015 15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015 While we have good algorithms for many optimization problems, the previous lecture showed that many

More information

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

Greedy Algorithms 1. For large values of d, brute force search is not feasible because there are 2 d Greedy Algorithms 1 Simple Knapsack Problem Greedy Algorithms form an important class of algorithmic techniques. We illustrate the idea by applying it to a simplified version of the Knapsack Problem. Informally,

More information

The Structure of Bull-Free Perfect Graphs

The Structure of Bull-Free Perfect Graphs The Structure of Bull-Free Perfect Graphs Maria Chudnovsky and Irena Penev Columbia University, New York, NY 10027 USA May 18, 2012 Abstract The bull is a graph consisting of a triangle and two vertex-disjoint

More information

LP-Modelling. dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven. January 30, 2008

LP-Modelling. dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven. January 30, 2008 LP-Modelling dr.ir. C.A.J. Hurkens Technische Universiteit Eindhoven January 30, 2008 1 Linear and Integer Programming After a brief check with the backgrounds of the participants it seems that the following

More information

2 The Mixed Postman Problem with Restrictions on the Arcs

2 The Mixed Postman Problem with Restrictions on the Arcs Approximation Algorithms for the Mixed Postman Problem with Restrictions on the Arcs Francisco Javier Zaragoza Martínez Departamento de Sistemas, Universidad Autónoma Metropolitana Unidad Azcapotzalco

More information

Parameterized graph separation problems

Parameterized graph separation problems Parameterized graph separation problems Dániel Marx Department of Computer Science and Information Theory, Budapest University of Technology and Economics Budapest, H-1521, Hungary, dmarx@cs.bme.hu Abstract.

More information

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

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Greedy Algorithms (continued) The best known application where the greedy algorithm is optimal is surely

More information

Notes for Recitation 9

Notes for Recitation 9 6.042/18.062J Mathematics for Computer Science October 8, 2010 Tom Leighton and Marten van Dijk Notes for Recitation 9 1 Traveling Salesperson Problem Now we re going to talk about a famous optimization

More information

CHAPTER 2. Graphs. 1. Introduction to Graphs and Graph Isomorphism

CHAPTER 2. Graphs. 1. Introduction to Graphs and Graph Isomorphism CHAPTER 2 Graphs 1. Introduction to Graphs and Graph Isomorphism 1.1. The Graph Menagerie. Definition 1.1.1. A simple graph G = (V, E) consists of a set V of vertices and a set E of edges, represented

More information

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar

Submodularity Reading Group. Matroid Polytopes, Polymatroid. M. Pawan Kumar Submodularity Reading Group Matroid Polytopes, Polymatroid M. Pawan Kumar http://www.robots.ox.ac.uk/~oval/ Outline Linear Programming Matroid Polytopes Polymatroid Polyhedron Ax b A : m x n matrix b:

More information

Planar Graph Perfect Matching is in NC

Planar Graph Perfect Matching is in NC Planar Graph Perfect Matching is in NC Nima Anari 1 and Vijay V. Vazirani 2 1 Computer Science Department, Stanford University, anari@cs.stanford.edu 2 Computer Science Department, University of California,

More information

Stanford University CS359G: Graph Partitioning and Expanders Handout 1 Luca Trevisan January 4, 2011

Stanford University CS359G: Graph Partitioning and Expanders Handout 1 Luca Trevisan January 4, 2011 Stanford University CS359G: Graph Partitioning and Expanders Handout 1 Luca Trevisan January 4, 2011 Lecture 1 In which we describe what this course is about. 1 Overview This class is about the following

More information

Line Graphs and Circulants

Line Graphs and Circulants Line Graphs and Circulants Jason Brown and Richard Hoshino Department of Mathematics and Statistics Dalhousie University Halifax, Nova Scotia, Canada B3H 3J5 Abstract The line graph of G, denoted L(G),

More information

Graph theory - solutions to problem set 1

Graph theory - solutions to problem set 1 Graph theory - solutions to problem set 1 1. (a) Is C n a subgraph of K n? Exercises (b) For what values of n and m is K n,n a subgraph of K m? (c) For what n is C n a subgraph of K n,n? (a) Yes! (you

More information

8 Matroid Intersection

8 Matroid Intersection 8 Matroid Intersection 8.1 Definition and examples 8.2 Matroid Intersection Algorithm 8.1 Definitions Given two matroids M 1 = (X, I 1 ) and M 2 = (X, I 2 ) on the same set X, their intersection is M 1

More information

Matchings in Graphs. Definition 1 Let G = (V, E) be a graph. M E is called as a matching of G if v V we have {e M : v is incident on e E} 1.

Matchings in Graphs. Definition 1 Let G = (V, E) be a graph. M E is called as a matching of G if v V we have {e M : v is incident on e E} 1. Lecturer: Scribe: Meena Mahajan Rajesh Chitnis Matchings in Graphs Meeting: 1 6th Jan 010 Most of the material in this lecture is taken from the book Fast Parallel Algorithms for Graph Matching Problems

More information

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points MC 0 GRAPH THEORY 0// Solutions to HW # 0 points + XC points ) [CH] p.,..7. This problem introduces an important class of graphs called the hypercubes or k-cubes, Q, Q, Q, etc. I suggest that before you

More information

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE Professor Kindred Math 104, Graph Theory Homework 3 Solutions February 14, 2013 Introduction to Graph Theory, West Section 2.1: 37, 62 Section 2.2: 6, 7, 15 Section 2.3: 7, 10, 14 DO NOT RE-DISTRIBUTE

More information

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 02/26/15

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 02/26/15 CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh (rezab@stanford.edu) HW#3 Due at the beginning of class Thursday 02/26/15 1. Consider a model of a nonbipartite undirected graph in which

More information

CS675: Convex and Combinatorial Optimization Spring 2018 Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi

CS675: Convex and Combinatorial Optimization Spring 2018 Consequences of the Ellipsoid Algorithm. Instructor: Shaddin Dughmi CS675: Convex and Combinatorial Optimization Spring 2018 Consequences of the Ellipsoid Algorithm Instructor: Shaddin Dughmi Outline 1 Recapping the Ellipsoid Method 2 Complexity of Convex Optimization

More information

PLANAR GRAPH BIPARTIZATION IN LINEAR TIME

PLANAR GRAPH BIPARTIZATION IN LINEAR TIME PLANAR GRAPH BIPARTIZATION IN LINEAR TIME SAMUEL FIORINI, NADIA HARDY, BRUCE REED, AND ADRIAN VETTA Abstract. For each constant k, we present a linear time algorithm that, given a planar graph G, either

More information

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE Professor Kindred Math 104, Graph Theory Homework 2 Solutions February 7, 2013 Introduction to Graph Theory, West Section 1.2: 26, 38, 42 Section 1.3: 14, 18 Section 2.1: 26, 29, 30 DO NOT RE-DISTRIBUTE

More information

Sources for this lecture. 3. Matching in bipartite and general graphs. Symmetric difference

Sources for this lecture. 3. Matching in bipartite and general graphs. Symmetric difference S-72.2420 / T-79.5203 Matching in bipartite and general graphs 1 3. Matching in bipartite and general graphs Let G be a graph. A matching M in G is a set of nonloop edges with no shared endpoints. Let

More information

GRAPH THEORY: AN INTRODUCTION

GRAPH THEORY: AN INTRODUCTION GRAPH THEORY: AN INTRODUCTION BEGINNERS 3/4/2018 1. GRAPHS AND THEIR PROPERTIES A graph G consists of two sets: a set of vertices V, and a set of edges E. A vertex is simply a labeled point. An edge is

More information