Lecture 5 January 16, 2013

Similar documents
Mathematical Programs Linear Program (LP)

C&O 355 Mathematical Programming Fall 2010 Lecture 18. N. Harvey

Lecture 10 February 4, 2013

Week 4. (1) 0 f ij u ij.

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

Lectures 6, 7 and part of 8

CS675: Convex and Combinatorial Optimization Fall 2016 Combinatorial Problems as Linear and Convex Programs. Instructor: Shaddin Dughmi

BBM402-Lecture 20: LP Duality

3. Linear Programming and Polyhedral Combinatorics

1 Integer Decomposition Property

Discrete Optimization 23

3.3 Easy ILP problems and totally unimodular matrices

Discrete Optimization

3. Linear Programming and Polyhedral Combinatorics

Multicommodity Flows and Column Generation

Lecture #21. c T x Ax b. maximize subject to

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)

Duality of LPs and Applications

Linear Programming. Scheduling problems

Integer Programming, Part 1

Lecture 6 January 21, 2013

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs

Minimum cost transportation problem

Week 8. 1 LP is easy: the Ellipsoid Method

Maximum flow problem

Introduction to Integer Programming

Cutting Plane Methods II

4. Duality Duality 4.1 Duality of LPs and the duality theorem. min c T x x R n, c R n. s.t. ai Tx = b i i M a i R n

1 Matroid intersection

Topics in Graph Theory

Topic: Primal-Dual Algorithms Date: We finished our discussion of randomized rounding and began talking about LP Duality.

Semidefinite and Second Order Cone Programming Seminar Fall 2001 Lecture 5

GRAPH ALGORITHMS Week 7 (13 Nov - 18 Nov 2017)

A primal-simplex based Tardos algorithm

1 Perfect Matching and Matching Polytopes

LINEAR PROGRAMMING III

Contents. Introduction

3.7 Cutting plane methods

Relation of Pure Minimum Cost Flow Model to Linear Programming

1 Overview. 2 Extreme Points. AM 221: Advanced Optimization Spring 2016

Two Applications of Maximum Flow

CO 250 Final Exam Guide

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

Preliminaries and Complexity Theory

Cutting Plane Methods I

A bad example for the iterative rounding method for mincost k-connected spanning subgraphs

6.046 Recitation 11 Handout

15-850: Advanced Algorithms CMU, Fall 2018 HW #4 (out October 17, 2018) Due: October 28, 2018

On the Tightness of an LP Relaxation for Rational Optimization and its Applications

CPSC 536N: Randomized Algorithms Term 2. Lecture 9

Optimization methods NOPT048

Introduction to Integer Linear Programming

Mathematics for Decision Making: An Introduction. Lecture 13

2.13 Maximum flow with a strictly positive initial feasible flow

Linear and Integer Programming - ideas

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004

Solving the MWT. Recall the ILP for the MWT. We can obtain a solution to the MWT problem by solving the following ILP:

Optimization WS 13/14:, by Y. Goldstein/K. Reinert, 9. Dezember 2013, 16: Linear programming. Optimization Problems

Acyclic Digraphs arising from Complete Intersections

5 Flows and cuts in digraphs

Semidefinite programs and combinatorial optimization

CSC373: Algorithm Design, Analysis and Complexity Fall 2017 DENIS PANKRATOV NOVEMBER 1, 2017

Linear and Integer Optimization (V3C1/F4C1)

ACYCLIC DIGRAPHS GIVING RISE TO COMPLETE INTERSECTIONS

U.C. Berkeley CS294: Beyond Worst-Case Analysis Handout 12 Luca Trevisan October 3, 2017

Representations of All Solutions of Boolean Programming Problems

Minimally Infeasible Set Partitioning Problems with Balanced Constraints

Lecture 9 Tuesday, 4/20/10. Linear Programming

Chapter 1. Preliminaries

Today: Linear Programming (con t.)

CS 6820 Fall 2014 Lectures, October 3-20, 2014

Transportation Problem

Lectures on Linear Algebra for IT

TRANSPORTATION PROBLEMS

Lecture 15 (Oct 6): LP Duality

Discrete Optimization in a Nutshell

Math 240 Calculus III

On the adjacency matrix of a block graph

1 T 1 = where 1 is the all-ones vector. For the upper bound, let v 1 be the eigenvector corresponding. u:(u,v) E v 1(u)

Topic: Balanced Cut, Sparsest Cut, and Metric Embeddings Date: 3/21/2007

16.1 L.P. Duality Applied to the Minimax Theorem

Notes on the Matrix-Tree theorem and Cayley s tree enumerator

MAT-INF4110/MAT-INF9110 Mathematical optimization

Network Flows. CTU FEE Department of control engineering. March 28, 2017

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

CS261: A Second Course in Algorithms Lecture #8: Linear Programming Duality (Part 1)

Maximum Flow Problem (Ford and Fulkerson, 1956)

Linear Programming. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Linear Programming 1 / 47

The maximum flow problem

Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming

directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time

ON THE INTEGRALITY OF THE UNCAPACITATED FACILITY LOCATION POLYTOPE. 1. Introduction

Maximum flow problem (part I)

Lecture 23 Branch-and-Bound Algorithm. November 3, 2009

6.854J / J Advanced Algorithms Fall 2008

Optimization methods NOPT048

Dual bounds: can t get any better than...

Introduction to Graph Theory

ENGR-1100 Introduction to Engineering Analysis. Lecture 21. Lecture outline

Transcription:

UBC CPSC 536N: Sparse Approximations Winter 2013 Prof. Nick Harvey Lecture 5 January 16, 2013 Scribe: Samira Samadi 1 Combinatorial IPs 1.1 Mathematical programs { min c Linear Program (LP): T x s.t. a T i x b i i = 1,, m LP can be efficiently solved by e.g Ellipsoid Method. min c T x Integer Program (IP) s.t. a T i x b i i = 1,, m x Z n IP cannot be efficiently solved assuming P NP 1.2 Combinatorial Optimization Combinatorial optimization deals with study of optimization problems that have discrete solutions and some combinatorial flavor such as involving graphs. These problems have many applications in operation research, computer networks, compilers, online advertising and etc. Also in this area there exist rich theory of what can be solved efficiently and what cannot. 1.3 Example Max weight perfect matching problem: Given bipartite graph G = (V, E), every edge e has weight w e. Find a maximum-weight perfect matching which is a set M E s.t. every vertex has exactly one incident edge in M. Example 1.1. The blue edges are a max-weight perfect matching M. 1

The natural integer program: max s.t. e E w e x e e incident to v x e = 1 x e {0, 1} v V e E This IP can be efficiently solved in many different ways. 1.4 How to solve combinatorial IPs? Generally there are two common approaches for solving combinatorial IPs: Design combinatorial algorithm that directly solves IP. Often such algorithms have a nice LP interpretations. Relax IP to an LP; prove that they give same solution; solve LP by the ellipsoid method. Need to show special structure of the LPs extreme points Sometimes we can analyze the extreme points combinatorially Sometimes we can use algebraic structure of the constraints. For example, if constraint matrix is Totally Unimodular then IP and LP are equivalent. In this session we will see examples of these approaches. 2 Max Flow and Min Cut 2.1 Network Flow Let D = (N, A) be a directed graph. Every arc a has a capacity c a 0. We want to send oil from the node s to the node t through pipelines so that oil doesn t leak from any node except s and t which means that at these nodes flow in = flow out. For simplicity assume no arc enters s and no arc leaves t. The question is that how much oil can we send? 2.2 Max flow and Min Cut Definition 2.1. Let D = (N, A) be a digraph, where arc a has capacity c a For any U N, the cut δ + (U) is: The capacity of the cut is: δ + (U) = { uv : u U, v / U, uv A } c(δ + (U)) = a δ + (U) Lemma 2.2 (Weak Duality). For any flow and any U with s U, t / U, the amount of flow from s to t is at most c(δ + (U)) c a 2

Proof. The net amount of flow crossing U is x a x a. Since 0 x a c a : a δ + (U) a δ + (V \U) x a x a a δ + (U) a δ + (V \U) a δ + U c a We also have the strong duality theorem which is called the max-flow min cut-theorem: Theorem 2.3 (Ford and Fulkerson 1956). The maximum amount of flow from s to t equals the minimum capacity of a cut δ + (U) where s U and t / U. Furthermore, if c is integral then there is an integral flow that achieves the maximum flow. We are going to prove this theorem by linear programming. 2.3 LP formulation of Max Flow Variables: x a is the amount of flow to send on arc a. Constraints: For every node except s and t, flow in = flow out Objective value: Total amount of flow sent by s. Notation: δ + (v) = arcs with tail at v, δ (v) = arcs with head at v The LP is: max s.t a δ + (s) x a a δ (v) x a a δ + (v) x a = 0 v V \ {s, t} 0 x a c a a A The matrix M defining the constraints of this LP, such a matrix is called the incidence matrix of a directed graph, has one row for every node (except s or t) and one column for every arc. Note that every arc appears in two rows because its the tail of one vertex and the head of another vertex. +1 if node v is the head of arc a M v,a = 1 if node v is the tail of arc a 0 otherwise The key property that this matrix has is that its a totally unimodular matrix. 3 Total Unimodularity Definition 3.1. Let M be a real m n matrix. Suppose that every square submatrix of M has determinant in {0, +1, 1}. Then M is totally unimodular. In particular every entry of M must be in {0, +1, 1} because every entry is a trivial square submatrix. Note that with this definition, polytopes defined by totally unimodular matrices have integral extreme points. 3

Lemma 3.2. Suppose M is totally unimodular matrix. Let b and c be integer vectors. Then Every extreme point of P = { x : Mx b } is integral. Every extreme point of P = { x : Mx = b, 0 x c } is integral. We know that extreme points are equivalent to basic feasible solutions so we prove lemma for basic feasible solutions: Lemma 3.3. Suppose A is totally unimodular matrix. Let b be any integer vector. Then every basic feasible solution of P = { x : Ax b } is integral. Proof. Let x be a basic feasible solution. Then the constraints that are tight at x have rank n. Let A be a submatrix of A and b a subvector of b corresponding to n linearly independent constraints that are tight at x.then x is the unique solution to A x = b, i.e., x = (A ) 1 b Cramer s Rule: If M is a square, non-singular matrix then (M 1 ) i,j = ( 1) i+j det M del(j,i) / det M In which det M del(j,i) = submatrix of M obtained by deleting row j and column i. Thus all entries of (A ) 1 are in {0, +1, 1}. Since b is integral, x is also integral. Now we show that, as we claimed earlier, the matrix for the Max Flow problem is totally unimodular. Lemma 3.4. Let D = (N, A) be a directed graph. Define M by +1 if node v is the head of arc a M v,a = 1 if node v is the tail of arc a 0 otherwise M is totally unimodular. Proof. Let Q be a k k submatrix of M. We argue by induction on k. If k = 1 then Q is a single entry of M, so det Q is either 0 or ±1. So assume k > 1. Case 1: If some column of Q has no non-zero entries, then det(q) = 0. Case 2: Suppose j th column of Q has exactly one non-zero entry, say Q t,j 0. Use column expansion of determinant: det Q = i ( 1) i+j Q i,j det Q del(i,j) = ( 1) t+j Q t,j det Q del(t,j) where t is the unique non-zero entry in column j. By induction, det Q del(t,j) in {0, +1, 1} det Q in {0, +1, 1} Case 3: Suppose every column of Q has exactly two non-zero entries. For each column one non-zero is a +1 and the other is a 1. So summing all rows in Q gives the vector [0, 0,, 0]. Thus Q is singular, and det Q = 0. 4

4 The Max Flow LP and its Dual 4.1 The Max Flow LP The linear programming formulation: max a δ + (s) x a s.t a δ (v) x a a δ + (v) x a = 0 v V \ {s, t} 0 x a c a a A Assuming that the capacities are all non-negative, the LP is feasible since the zero flow is feasible. The feasible region is bounded thus the LP is bounded. So by fundamental theorem of linear programming it has an optimal solution which is a maximum flow. The feasible region is the polyhedron P = { x : Mx = b, 0 x c } where M is totally unimodular matrix. Note that since P is bounded it doesn t contain any line and it has extreme points. Corollary 4.1. If c is integral then every extreme point is integral, and so there is a maximum flow that is integral. So this gives us the second half of max-flow min-cut theorem that there is always an optimal flow that is integral. To prove the rest of the theorem we consider the dual. To find the dual for the max flow LP we consider a variable y v for every v N \ {s, t} and a variable z uv for every arc uv. The dual is: min a A c az a s.t. y u + y v + z uv 0 uv A, v, w N \ {s, t} y v + z sv 1 sv A y u + z ut 0 ut A z 0 Let s set y s = 1 and y t = 0 then the dual would be simplified as: min a A c az a 0 s.t. y u + y v + z uv 0 uv A z 0 Where y s and y t are not variables y s = 1 and y t = 0. We will show that given an given an optimal solution (y, z), we can construct a cut δ + (U) such that c(δ + (U)) = c a z a. In other words the capacity of the cut δ + (U) equals the optimal a A value of the dual LP. By strong LP duality, this equals the optimal value of the primal LP, which is the maximum flow value. By weak duality every cut has capacity at least the max flow value so this must be a minimum cut. Primal: max { d T x : Mx = 0, 0 x c } { Dual: min c T z : ( M T I ) ( ) } y 0, z 0, y z s = 1, y t = 0 min a A c az a 0 = s.t. y u + y v + z uv 0 uv A z 0 y s = 1, y t = 0 5

We claim that ( M T I ) is also totally unimodular. Therefore any extreme point solution of Dual has y and z integral. Since we are minimizing we can assume that z uv = max{y u y v, 0} for all arcs uv. Define U = { v : y v 1 }; then s U and t / U. Also note that z uv 1 for all uv δ + (U). Max Flow value Strong Duality = z a c a c(δ + (U)) a Weak Duality Therefore δ + (U) is a cut separating s and t with capacity equal to max flow. Max Flow value 6