Integer Programming, Part 1

Similar documents
Chapter 1. Preliminaries

3. Linear Programming and Polyhedral Combinatorics

3. Linear Programming and Polyhedral Combinatorics

Key Things We Learned Last Time. IE418 Integer Programming. Proving Facets Way #2 Indirect. A More Abstract Example

MAT-INF4110/MAT-INF9110 Mathematical optimization

Integer Hulls of Rational Polyhedra. Rekha R. Thomas

LP Relaxations of Mixed Integer Programs

Linear and Integer Optimization (V3C1/F4C1)

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

LP Duality: outline. Duality theory for Linear Programming. alternatives. optimization I Idea: polyhedra

Cutting Plane Methods I

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

Computational Integer Programming Universidad de los Andes. Lecture 1. Dr. Ted Ralphs

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

1 Integer Decomposition Property

Extended Formulations in Combinatorial Optimization

Linear Programming. Chapter Introduction

CO 250 Final Exam Guide

Lectures 6, 7 and part of 8

Linear Programming Inverse Projection Theory Chapter 3

Farkas Lemma. Rudi Pendavingh. Optimization in R n, lecture 2. Eindhoven Technical University. Rudi Pendavingh (TUE) Farkas Lemma ORN2 1 / 15

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

Optimization methods NOPT048

Discrete Optimization 2010 Lecture 7 Introduction to Integer Programming

Discrete Optimization

Duality of LPs and Applications

Minimally Infeasible Set Partitioning Problems with Balanced Constraints

3.3 Easy ILP problems and totally unimodular matrices

Lecture 5 January 16, 2013

Linear Algebra Review: Linear Independence. IE418 Integer Programming. Linear Algebra Review: Subspaces. Linear Algebra Review: Affine Independence

Optimization methods NOPT048

Combinatorial Optimization

1 Perfect Matching and Matching Polytopes

Minimal inequalities for an infinite relaxation of integer programs

Integer Programming ISE 418. Lecture 12. Dr. Ted Ralphs

1 Maximal Lattice-free Convex Sets

TRISTRAM BOGART AND REKHA R. THOMAS

Minimal inequalities for an infinite relaxation of integer programs

Mixed-integer linear representability, disjunctions, and variable elimination

Discrete Optimization 23

Lecture notes on the ellipsoid algorithm

Appendix PRELIMINARIES 1. THEOREMS OF ALTERNATIVES FOR SYSTEMS OF LINEAR CONSTRAINTS

Polyhedral Approach to Integer Linear Programming. Tepper School of Business Carnegie Mellon University, Pittsburgh

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

4. Algebra and Duality

The Matching Polytope: General graphs

7. Lecture notes on the ellipsoid algorithm

Topics in Graph Theory

A notion of Total Dual Integrality for Convex, Semidefinite and Extended Formulations

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

Dual Consistent Systems of Linear Inequalities and Cardinality Constrained Polytopes. Satoru FUJISHIGE and Jens MASSBERG.

A Review of Linear Programming

Mathematical Programs Linear Program (LP)


Introduction to Linear and Combinatorial Optimization (ADM I)

RESEARCH ARTICLE. An extension of the polytope of doubly stochastic matrices

3.7 Strong valid inequalities for structured ILP problems

3.7 Cutting plane methods

On the dominant of the s-t-cut polytope: Vertices, facets, and adjacency

BBM402-Lecture 20: LP Duality

Introduction to Integer Programming

Integer Programming Methods LNMB

ACO Comprehensive Exam March 17 and 18, Computability, Complexity and Algorithms

On mixed-integer sets with two integer variables

Cutting Plane Methods II

Linear and Integer Programming - ideas

When is the Matching Polytope Box-totally Dual Integral?

Advanced Linear Programming: The Exercises

Deciding Emptiness of the Gomory-Chvátal Closure is NP-Complete, Even for a Rational Polyhedron Containing No Integer Point

On Some Polytopes Contained in the 0,1 Hypercube that Have a Small Chvátal Rank

Integer Programming ISE 418. Lecture 8. Dr. Ted Ralphs

AN INTRODUCTION TO CONVEXITY

Introduction to Integer Linear Programming

Section Notes 8. Integer Programming II. Applied Math 121. Week of April 5, expand your knowledge of big M s and logical constraints.

Integer programming: an introduction. Alessandro Astolfi

Cutting planes from extended LP formulations

Some Properties of Convex Hulls of Integer Points Contained in General Convex Sets

Relaxations and Bounds. 6.1 Optimality and Relaxations. Suppose that we are given an IP. z = max c T x : x X,

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

Complete Description of Matching Polytopes with One Linearized Quadratic Term for Bipartite Graphs

On the Rational Polytopes with Chvátal Rank 1

Ellipsoidal Mixed-Integer Representability

Integrality of Polyhedra

March 2002, December Introduction. We investigate the facial structure of the convex hull of the mixed integer knapsack set

Lecture 9 Monotone VIs/CPs Properties of cones and some existence results. October 6, 2008

Combinatorial Optimization with One Quadratic Term: Spanning Trees and Forests

Separating Simple Domino Parity Inequalities

Preliminaries and Complexity Theory

Lifting theorems and facet characterization for a class of clique partitioning inequalities

Discrete Optimization 2010 Lecture 8 Lagrangian Relaxation / P, N P and co-n P

Combinatorial Optimization

Lecture 5. Theorems of Alternatives and Self-Dual Embedding

Separation Techniques for Constrained Nonlinear 0 1 Programming

Computational Integer Programming. Lecture 2: Modeling and Formulation. Dr. Ted Ralphs

Integer Programming ISE 418. Lecture 13. Dr. Ted Ralphs

A Criterion for the Stochasticity of Matrices with Specified Order Relations

Lattice closures of polyhedra

Polynomiality of Linear Programming

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

Maximum flow problem

Transcription:

Integer Programming, Part 1 Rudi Pendavingh Technische Universiteit Eindhoven May 18, 2016 Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 1 / 37

Linear Inequalities and Polyhedra Farkas Lemma / Linear Programming Prerequisites for the course: (Farkas Lemma) The system Ax b is infeasible if and only if the system ua = 0, ub < 0, u 0 is feasible. Let P := {x : Ax b} and D := {u : ua = c, u 0}. (Linear Programming Duality) If P and D are both nonempty, then max{cx : x P} = min{ub : u D}. (Complementary slackness) Let x P and u D. Then x and u are both optimal if and only if ui (a i x b i ) = 0 for all i where a i denotes the i-the row of matrix A. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 2 / 37

Linear Inequalities and Polyhedra Affine, Convex, and Conic Combinations Let x 1,..., x k R n and λ 1..., λ k R. Then is a linear combination of x 1,..., x k. x is an affine combination if i λ i = 1 x = λ 1 x 1 + + λ k x k x is a convex combination if i λ i = 1 and λ i 0 for all i x is a nonnegative combination if λ i 0 for all i Let S R n be any set of vectors. linear hull affine hull The convex hull cone of S is the set of all linear affine convex nonnegative combinations of x 1,..., x k S. A set S is affine if S = aff(s), convex if S = conv (S), a cone if S = cone (S). Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 3 / 37

Linear Inequalities and Polyhedra Polyhedra and the of Minkowski-Weyl Let C R n. C is a polyhedral cone if C = {x : Ax 0} for some matrix A. C is finitely generated if C = cone {r 1,..., r q } for some vectors r 1,..., r q (Minkowski-Weyl for cones) Let C R n. Then C is a finitely generated cone if and only if C is a polyhedral cone. Example Let C := {x R 2 : x 1 x 2 0, 2x 1 + x 1 0} be a polyhedral cone. Then C = cone {(1, 1), (1, 2)}, so C is also a finitely generated cone. Example Let C := cone {(1, 5), (1, 1), (4, 1)} be a finitely generated cone. Then C := {x R 2 : x 1 4x 1 0. 5x 1 + x 2 0}, so C is also a polyhedral cone. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 4 / 37

Linear Inequalities and Polyhedra Polyhedra and the of Minkowski-Weyl P R n is a polyhedron if P = {x : Ax b} for some A, b. Q R n is a polytope if Q = conv {v 1,..., v p } for some vectors v 1,..., v p the Minkowski sum of A, B R n is A + B := {a + b : a A, b B} (Minkowski-Weyl for polyhedra) Let P R n. Then P is a polyhedron if and only if P = Q + C for some polytope Q and some finitely generated cone C. Proof. : If P = {x : Ax b}, consider C P := {(x, y) : Ax by 0, x R n, y R}. : If P = Q + C = conv {v 1,..., v p } + cone {r 1,..., r q }, consider C P := cone {( v 1 1 ) ( v p,..., 1 In either case, apply Minkowski-Weyl for cones. ) ( r 1, 0 ) ( r q,..., 0 )} Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 5 / 37

Linear Inequalities and Polyhedra Polyhedra and the of Minkowski-Weyl Example Consider P = {x R 2 : x 1 0, x 2 0, x 1 + x 2 2, x 1 + 2x 2 3}. Then P = Q + C, where {( ) ( ) ( )} {( ) ( )} 3 1 0 1 0 Q = conv,,, C = cone, 0 1 2 0 1 Example Consider P = {x R 3 : x 1 0, x 2 0, x 1 + x 2 1}. Then P = Q + C, where 1 0 1 0 0 Q = conv 0, 1, C = cone 0, 1, 0, 0 0 0 0 1 0 0 1 Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 6 / 37

Linear Inequalities and Polyhedra Lineality Space and Recession Cone Let P R n be a nonempty polyhedron. the lineality space of P is lin(p) := {r R n : x + λr P for all x P and λ R} the recession cone of P is rec(p) := {r R n : x + λr P for all x P and λ R + } Suppose P = {x : Ax b} = conv {v 1,..., v p } + cone {r 1,..., r q }. Then Example lin(p) = {x : Ax = 0} and rec(p) = {r : Ar 0} = cone {r 1,..., r q } Consider again the polyhedron P = {x R 3 : x 1 0, x 2 0, x 1 + x 2 1}. Then lin(p) = {x R 3 : x 1 = x 2 = 0} rec(p) = {r R 3 : r 1 0, r 2 0} = cone 1 0 0, 0 1 0, 0 0 1, 0 0 1 Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 7 / 37

Linear Inequalities and Polyhedra Implicit Equalities, Affine Hull, and Dimension The system Ax b consists of inequalities a i x b i for i M a i x b i is an implicit equality of Ax b if a i x = b i for all x such that Ax b A = x b = denotes the subsystem of Ax b containing all implicit equalities for any P R n, dim(p) := dim(aff(p)) Let P = {x R n : Ax b} be a nonempty polyhedron. Then Furthermore, dim(p) = n rank(a = ). aff(p) = {x : A = x = b = } = {x : A = x b = } Example The assignment polytope P = x Rn2 : i x ij = 1 for all j, x ij = 1 for all i, x ij 0 for all i, j j has dimension n 2 2n + 1 Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 8 / 37

Linear Inequalities and Polyhedra Faces Let P R n. An inequality cx δ is valid for P if cx δ for all x P A face of P is a set F of the form F = P {x R n : cx = δ} where cx δ is a valid inequality for P Let P = {x : a i x b i for i M}, and for each I M put F I := {x R n : a i x = b i for all i I, and a i x b i for all i M \ I } For each I M, F I is a face of P. Conversely, if F is a nonempty face of P, then F = F I for some I M. It follows that the number of faces of polyhedron P is finite. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 9 / 37

Linear Inequalities and Polyhedra Minimal Representation and Facets Let P = {x : a i x b i for i M}. The inequality a j x b j is redundant if it is valid for {x : a i x b i for all i M \ {j}} a i x b i for i M is a minimal representation of P if a i x b i is irredundant for i M A face F of P is proper if F and F P A facet of P is an proper face of P not strictly contained in another proper face of P For each facet F of P there is an inequality a i x b i so that F = P {x R n : a i x = b i }. Conversely, if the inequality a i x b i is irredundant and not an implied equation, then F = P {x R n : a i x = b i } is a facet of P. So in a minimal representation of P, each inequality is an implied equation or defines a facet. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37

Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty polyhedron. a set F is a minimal face of P if F is a face of P which does not contain a proper face Let P = {x R n : Ax b}. The a nonempty face F of P is a minimal face if and only if F = {x : A x = b } for some subsystem A x b of Ax b such that rank(a ) = rank(a). a set F is a vertex of P if F is a face of P of dimension 0, i.e. F = {x} P is pointed if P has a vertex Let P = {x R n : Ax b}. If P is pointed, then equivalent: {x} is a vertex x satisfies n linearly independent inequalities from Ax b with equality there are no x, x P \ {x} so that x is a convex combination of x, x. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 11 / 37

Linear Inequalities and Polyhedra Decomposition for Polyhedra Let P be any nonempty polyhedron. Put t := dim(lin(p)) let F 1,..., F p be the minimal faces of P; let v i F 1 let R 1,..., R q be the (t + 1)-dimensional faces of rec(p); let r i R i \ lin(p) P = conv {v 1,..., v p } + cone {r 1,..., r p } + lin(p) Proof. The special case where t = 0 reduces to Minkowski-Weyl. If t > 0, let a 1,..., a t be a basis of lin(p). Then P = Q + lin(p) where Q := {x P : a i x = 0 for i = 1,... t} We have dim(lin(q)) = 0, and hence Q = conv {v 1,..., v p } + cone {r 1,..., r p }. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 12 / 37

Homework Sections 3.1, 3.2, 3.3, 3.14 are prerequisite knowledge for the course. Review these sections if necessary, and verify that you are able to make exercises 3.1, 3.2, 3.30. Read sections 3.4 3.12. Make exercises 3.7, 3.10, 3.16, 3.33. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 13 / 37

Properties of Integral Polyhedra A polyhedron P R n is integral if P = conv (P Z n ). If P is integral, then max{cx : x P Z n } = max{cx : x P} is an ordinary linear program. We want to write combinatorial optimization problems as optimization over integral polyhedra. We next develop some tools for proving that a polyhedron P is integral. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 14 / 37

Properties of Integral Polyhedra P R n a rational polyhedron. Then equivalent: 1 P = conv (P Z n ) 2 F Z n for every minimal face F of P 3 max{cx : x P} attained by integral vector x P Z n for each c R n, if attained at all 4 max{cx : x P} Z { } for each c Z n Proof. Some of the implications are straightforward... Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 15 / 37

Properties of Integral Polyhedra P R n a rational polyhedron. Then equivalent: 1 P = conv (P Z n ) 2 F Z n for every minimal face F of P 3 max{cx : x P} attained by integral vector x P Z n for each c R n, if attained at all 4 max{cx : x P} Z { } for each c Z n Proof. (4) (2): We may assume P = {x : Ax b} for some A, b with integer entries Consider a minimal face F. F = {x : A F x = b F } for a subsystem A F x b F of Ax b Suppose F Z n = ; then ua Z n and ub Z for some u. W.l.o.g. u 0 With c := ua, z := ub, we have cx = uax ub = z for all x P, with equality if x F. Then max{cx : x P} = z Z Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 16 / 37

Properties of Integral Polyhedra P R n a rational polyhedron. Then equivalent: 1 P = conv (P Z n ) 2 F Z n for every minimal face F of P 3 max{cx : x P} attained by integral vector x P Z n for each c R n, if attained at all 4 max{cx : x P} Z { } for each c Z n Proof. (2) (1): We may again assume P = {x : Ax b} for some A, b with integer entries Let F 1,..., F p be the minimal faces of P, and pick any v i F i Z n for each i. Then P = conv {v 1,..., v p } + rec(p) rec(p) = {r : Ar 0} = cone {r 1,..., r q } for some rational r i, since A is rational. Scaling the r j, we may assume r j Z n for all j. So P = conv {v 1,..., v p } + cone {r 1,..., r q } with v i, r j Z n, hence P = conv (P Z n ) Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 17 / 37

Total Unimodularity We next consider the question: Which matrices A are such that {x : Ax b, x 0} is integral for all b Z n? A matrix A is totally unimodular (TU) if det(b) { 1, 0, 1} for every square submatrix B of A Lemma If B is an integer matrix such that det(b) { 1, 1}, then B 1 is an integer matrix. (Hoffman and Kruskal) A is TU {x : Ax b, x 0} is integral for each b Z n. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 18 / 37

Total Unimodularity If A is a matrix, then an equitable bicoloring of A is a partiton of the columns into red and blue columns so that A j A j { 1, 0, 1} m j red Here A j is the j-th column of A. j blue A TU every column submatrix admits an equitable bicoloring. Proof. = : Let B be a column submatrix of A. Since A is TU, so is B. The polyhedron P := {x : 1 2 B1 Bx 1 B1, 0 x 1} 2 contains an x Z n. Let the i-th column be red if x i = 0, blue otherwise. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 19 / 37

Total Unimodularity If A is a matrix, then an equitable bicoloring of A is a partiton of the columns into red and blue columns so that A j A j {0, 1} m j red Here A j is the j-th column of A. j blue A TU every column submatrix admits an equitable bicoloring. Proof. =: Suppose not. Let B be a smallest submatrix of A with δ := det(b) { 1, 0, 1}. Then δb 1 is a 0, ±1-matrix. Let d be the first column of δb 1. Then Bd = δe 1. If δ is even, then δ = 0. If δ is odd, then δ = 1. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 20 / 37

Total Unimodularity If A is a matrix, then an equitable bicoloring of A is a partiton of the columns into red and blue columns so that A j A j {0, 1} m j red Here A j is the j-th column of A. j blue A TU every column submatrix admits an equitable bicoloring. The signed incidence matrix of a directed graph D = (V, A) is the V A matrix A D with entries a va { 1, 0, 1} such that 1 if v is the tail of a a va = 1 if v is the head of a 0 otherwise Corollary The incidence matrix of any directed graph D = (V, A) is totally unimodular. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 21 / 37

Homework Read 4.1, 4.2, and first two pages of 4.3. Try to fully understand all calls to other theorems in the proof of Thm 4.1. Make exercises 4.3, 4.4, 4.5, 4.6. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 22 / 37

Total Dual Integrality A rational system Ax b is totally dual integral (TDI) if min{yb : ya = c, y 0} either has an integral optimal solution or is infeasible for each c Z n. If Ax b is TDI and b integral, then {x : Ax b} is integral. Proof. If Ax b is TDI and b integral, then min{yb : ya = c, y 0} Z { } for each c Z n. Hence max{cx : Ax b} Z { } for each c Z n, so that {x : Ax b} is integral. We next show: If P is rational, then there exists a TDI system Ax b so that P = {x : Ax b}. If P is (rational and) integral, then there exists a TDI system Ax b so that P = {x : Ax b} and b integral. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 23 / 37

Total Dual Integrality If P is rational, then there exists a TDI system Ax b so that P = {x : Ax b}. Proof. if P =, then P = {x : 0x 1} P is rational, so we may assume P = {x : Mx d} for integer M, d Put C := {c Z n : c = λm, 0 λ 1}, δ c = max{cx : x P} for all c C let Ax b be the system of all inequalities cx δ c for c C P {x : Ax b} {x : Mx d} = P, so we have equality throughout to show that Ax b is TDI, consider a c Z n so that max{cx : Ax b} is finite max{cx : Ax b} = max{cx : Mx d} = min{yd : ym = c, y 0} has an optimal solution y ; put λ = y y, c := λm, c := y M; min{yd : ym = c, y 0} = min{yd : ym = c, y 0} + min{yd : ym = c, y 0}, so λ, y are optimal solutions for the latter two problems min{yd : ym = c, y 0} = max{c x : x P} = δ c, and c x δ c is a row of Ax b min{yb : ya = c, y 0} has an integer optimal solution obtained from y and c Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 24 / 37

Total Dual Integrality If P is integral, then there exists a TDI system Ax b so that P = {x : Ax b} and b integral. Proof. If P is integer, then in the previous proof δ c := max{cx : x P} Z for each c C Z n Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 25 / 37

Fundamental of Integer Programming Let A, G be rational matrices, b a rational vector. Put Then: P := {(x, y) : Ax + Gy b}, S := {(x, y) : Ax + Gy b, x Z n }. 1 A, G, b rational so that conv (S) = {(x, y) : A x + G y b }. 2 if S, then the recession cones of P and conv (S) coincide. Proof. P = conv {v 1,..., v t } + cone {r 1,..., r q } for some rational v i, integral r j. Consider T := { i λ iv i + j µ jr j : λ i = 1, λ 0, 0 µ 1} Put T I := {(x, y) T : x Z n }, R I := { j µ jr j : µ Z q + } S = T I + R I ; hence conv (S) = conv (T I ) + conv (R I ) conv (T I ) is a rational polyhedron, rec(conv (S)) = conv (R I ) = cone {r 1,..., r q } = rec(p) is a rational cone Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 26 / 37

Homework Read sections 4.6, 4.8. Make exercises 4.9, 4.11, 4.18, 4.20. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 27 / 37

Matchings in Graphs A matching in an undirected graph G = (V, E) is a set of pairwise disjoint edges M E. IP (Maximum cardinality matching) max e E x e e δ(v) x e 1 x {0, 1} E v V Let and put P(G) := conv {x {0, 1} E : x e 1 for all v V } e δ(v) Q(G) := {x R E : x e 1 for all v V, x 0} e δ(v) Is Q(G) integral for all undirected graphs G = (V, E), i.e. is P(G) = Q(G)? Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 28 / 37

Matchings in Graphs The incidence matrix of an undirected graph G = (V, E) is the V E matrix A G with entries a ve {0, 1} such that { 1 if v is incident with e a ve = 0 otherwise Clearly Q(G) = {x R E : x e 1 for all v V, x 0} = {x R E : A G x 1, x 0} e δ(v) Lemma The incidence matrix of G is totally unimodular if and only if G is bipartite. If G is bipartite, then P(G) is integral. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 29 / 37

Matchings in Graphs Lemma P(G) := conv {x {0, 1} E : e δ(v) If G = (V, E) then for any U V with U odd the inequality is valid for P(G). e E[U] x e U 1 2 x e 1 for all v V } Is P(G) = {x R E : x e 1 for all v V,?? e δ(v) e E[U] x e U 1 2 for all odd U V, x 0} Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 30 / 37

Matchings in Graphs Let G = (V, E) be a graph. The polyhedron {x R E : x e = 1 for all v V, x e 1 for all odd U V, x 0} e δ(v) e δ(u) is integral. Proof. Suppose not. let G = (V, E) be a counterexample to the theorem with V + E as small as possible. let x be a fractional vertex of the polyhedron; there is some odd U so that e δ(u) x e = 1 x is a convex combination of integer vectors in the polyhedron, contradiction Applying the theorem to a doubled version of G, it then follows that P(G) = {x R E : x e 1 for all v V, x e U 1 for all odd U V, x 0} 2 e δ(v) e E[U] Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 31 / 37

Spanning Trees A spanning tree of G = (V, E) is a set T E so that (V, T ) is acyclic and connected. IP (Maximum weight spanning tree) max e E w ex e e E[S] x e S 1 e E x e = V 1 x {0, 1} E S V, S P(G) := {x R E : x e S 1 for all nonempty S V, e E[S] x e = V 1, x 0} e E P(G) is integral. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 32 / 37

Submodular Polyhedra Let N be a finite set. A function f : 2 N R is submodular if f (S) + f (T ) f (S T ) + f (S T ) Example Let G = (V, E) be an undirected graph and let f : 2 V R be defined by f (S) := δ(s). Then f is submodular. Let G = (V, E) be an undirected graph and let f : 2 E R be defined by Then f is submodular. The submodular polyhedron is f (S) := V # of components of (V, S) P(f ) := {x R N : j S x j f (S) for all S N} Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 33 / 37

Submodular Polyhedra The submodular polyhedron is P(f ) := {x R N : j S x j f (S) for all S N} Suppose f : 2 N Z is submodular and f ( ) = 0. Then P(f ) is integral, and the system j S x j f (S) for all S N is TDI. Proof. Let c Z n. Consider max{cx : j S x j f (S) for all S N}. W.l.o.g. c 1 c 2... c n. A feasible solution x is obtained by setting x j := f (S j ) f (S j 1 ), where S j := {1,..., j}. The dual is min{ f (S)y S : y S = c j for all j N, y 0} S N j S We construct an integral optimal solution ȳ for this problem so that c x = S N f (S)y S proving optimality of both integral solutions. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 34 / 37

(Nash-Williams orientation theorem) A 2k-connected undirected graph G can be oriented so as to become a k-connected directed graph. Proof. Let D = (V, A) arise from G by arbitrarily orienting the edges. if there is an x Z A so that 0 x 1, x[δ (U)] x[δ + (U)] δ (U) k for all U V ( ) then we are done by reversing the arcs a so that x a = 1. We consider the polyhedron P := {x R A : ( )}. Then x = 1 21 P, so P We will prove TDI-ness of ( ). Then P I = P, hence P Z A. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 35 / 37

Proof. We prove TDI-ness of 0 x 1, x[δ (U)] x[δ + (U)] δ (U) k for all U V ( ) Consider the LP dual to maximizing cx over ( ). Let z be an optimal dual solution so that U z U U V \ U minimal. Then U := {U z U > 0} is cross-free, i.e. if T, U U, then U T, T U, U T = or U T = V The restricted system 0 x 1, x[δ (U)] x[δ + (U)] δ (U) k for all U U is totally unimodular. So the dual optimum is determined by this TU system, and hence is integral. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 36 / 37

Homework Read sections 4.3, 4.4, 4.5, 4.7. Make exercises 4.9, 4.12, 4.14, 4.18. Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 37 / 37