integer programming, part 1rudi/ip_1.pdf · rudi pendavingh (tu/e) integer programming, part 1 may...

37
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

Upload: others

Post on 28-May-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

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

Page 2: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Farkas’ Lemma / Linear Programming

Prerequisites for the course:

Theorem (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}.

Theorem (Linear Programming Duality)

If P and D are both nonempty, then

max{cx : x ∈ P} = min{ub : u ∈ D}.

Theorem (Complementary slackness)

Let x∗ ∈ P and u∗ ∈ D. Then x∗ and u∗ are both optimal if and only if

u∗i (aix∗ − bi ) = 0 for all i

where ai denotes the i-the row of matrix A.

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

Page 3: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Affine, Convex, and Conic Combinations

Let x1, . . . , xk ∈ Rn and λ1 . . . , λk ∈ R. Then

x = λ1x1 + · · ·+ λkx

k

is a linear combination of x1, . . . , xk .

x is an affine combination if∑

i λi = 1

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 ⊆ Rn be any set of vectors.

The

linear hullaffine hull

convex hullcone

of S is the set of all

linearaffine

convexnonnegative

combinations of x1, . . . , xk ∈ 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

Page 4: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Polyhedra and the Theorem of Minkowski-Weyl

Let C ⊆ Rn.

C is a polyhedral cone if C = {x : Ax ≤ 0} for some matrix A.

C is finitely generated if C = cone {r1, . . . , rq} for some vectors r1, . . . , rq

Theorem (Minkowski-Weyl for cones)

Let C ⊆ Rn. Then C is a finitely generated cone if and only if C is a polyhedral cone.

Example

Let C := {x ∈ R2 : x1 − x2 ≤ 0,−2x1 + x1 ≤ 0} be a polyhedral cone. ThenC = 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. ThenC := {x ∈ R2 : x1 − 4x1 ≤ 0.− 5x1 + x2 ≤ 0}, so C is also a polyhedral cone.

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

Page 5: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Polyhedra and the Theorem of Minkowski-Weyl

P ⊆ Rn is a polyhedron if P = {x : Ax ≤ b} for some A, b.

Q ⊆ Rn is a polytope if Q = conv {v1, . . . , vp} for some vectors v1, . . . , vp

the Minkowski sum of A,B ⊆ Rn is A + B := {a + b : a ∈ A, b ∈ B}

Theorem (Minkowski-Weyl for polyhedra)

Let P ⊆ Rn. Then P is a polyhedron if and only if P = Q + C for some polytope Q and somefinitely generated cone C .

Proof.

⇒: If P = {x : Ax ≤ b}, consider CP := {(x , y) : Ax − by ≤ 0, x ∈ Rn, y ∈ R}.⇐: If P = Q + C = conv {v1, . . . , vp}+ cone {r1, . . . , rq}, consider

CP := cone

{(v1

1

), . . . ,

(vp

1

),

(r1

0

), . . . ,

(rq

0

)}In either case, apply Minkowski-Weyl for cones.

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

Page 6: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Polyhedra and the Theorem of Minkowski-Weyl

Example

Consider P = {x ∈ R2 : x1 ≥ 0, x2 ≥ 0, x1 + x2 ≥ 2, x1 + 2x2 ≥ 3}. Then P = Q + C , where

Q = conv

{(30

),

(11

),

(02

)}, C = cone

{(10

),

(01

)}

Example

Consider P = {x ∈ R3 : x1 ≥ 0, x2 ≥ 0, x1 + x2 ≥ 1}. Then P = Q + C , where

Q = conv

1

00

,

010

, C = cone

1

00

,

010

,

001

,

00−1

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

Page 7: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Lineality Space and Recession Cone

Let P ⊆ Rn be a nonempty polyhedron.

the lineality space of P is lin(P) := {r ∈ Rn : x + λr ∈ P for all x ∈ P and λ ∈ R}the recession cone of P is rec(P) := {r ∈ Rn : x + λr ∈ P for all x ∈ P and λ ∈ R+}

Theorem

Suppose P = {x : Ax ≤ b} = conv {v1, . . . , vp}+ cone {r1, . . . , rq}. Then

lin(P) = {x : Ax = 0} and

rec(P) = {r : Ar ≤ 0} = cone {r1, . . . , rq}

Example

Consider again the polyhedron P = {x ∈ R3 : x1 ≥ 0, x2 ≥ 0, x1 + x2 ≥ 1}. Then

lin(P) = {x ∈ R3 : x1 = x2 = 0}

rec(P) = {r ∈ R3 : r1 ≥ 0, r2 ≥ 0} = cone

1

00

,

010

,

001

,

00−1

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

Page 8: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Implicit Equalities, Affine Hull, and Dimension

The system Ax ≤ b consists of inequalities aix ≤ bi for i ∈ Maix ≤ bi is an implicit equality of Ax ≤ b if aix = bi for all x such that Ax ≤ bA=x ≤ b= denotes the subsystem of Ax ≤ b containing all implicit equalitiesfor any P ⊆ Rn, dim(P) := dim(aff(P))

Theorem

Let P = {x ∈ Rn : Ax ≤ b} be a nonempty polyhedron. Then

aff(P) = {x : A=x = b=} = {x : A=x ≤ b=}

Furthermore, dim(P) = n − rank(A=).

Example

The assignment polytope

P =

x ∈ Rn2:∑i

xij = 1 for all j ,∑j

xij = 1 for all i , xij ≥ 0 for all i , j

has dimension n2 − 2n + 1

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

Page 9: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Faces

Let P ⊆ Rn.

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 ∈ Rn : cx = δ}

where cx ≤ δ is a valid inequality for P

Let P = {x : aix ≤ bi for i ∈ M}, and for each I ⊆ M put

FI := {x ∈ Rn : aix = bi for all i ∈ I , and aix ≤ bi for all i ∈ M \ I}

Theorem

For each I ⊆ M, FI is a face of P. Conversely, if F is a nonempty face of P, then F = FI forsome 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

Page 10: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Minimal Representation and Facets

Let P = {x : aix ≤ bi for i ∈ M}.The inequality ajx ≤ bj is redundant if it is valid for

{x : aix ≤ bi for all i ∈ M \ {j}}

”aix ≤ bi for i ∈ M” is a minimal representation of P if aix ≤ bi is irredundant for i ∈ M

A face F of P is proper if F 6= ∅ and F 6= P

A facet of P is an proper face of P not strictly contained in another proper face of P

Theorem

For each facet F of P there is an inequality aix ≤ bi so that

F = P ∩ {x ∈ Rn : aix = bi}.

Conversely, if the inequality aix ≤ bi is irredundant and not an implied equation, thenF = P ∩ {x ∈ Rn : aix = bi} 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

Page 11: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

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

Theorem

Let P = {x ∈ Rn : Ax ≤ b}. The a nonempty face F of P is a minimal face if and only ifF = {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

Theorem

Let P = {x ∈ Rn : 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

Page 12: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Linear Inequalities and Polyhedra Decomposition Theorem for Polyhedra

Let P be any nonempty polyhedron. Put

t := dim(lin(P))

let F1, . . . ,Fp be the minimal faces of P; let v i ∈ F1

let R1, . . . ,Rq be the (t + 1)-dimensional faces of rec(P); let r i ∈ Ri \ lin(P)

Theorem

P = conv {v1, . . . , vp} + cone {r1, . . . , rp} + lin(P)

Proof.

The special case where t = 0 reduces to Minkowski-Weyl.If t > 0, let a1, . . . , at be a basis of lin(P). Then P = Q + lin(P) where

Q := {x ∈ P : aix = 0 for i = 1, . . . t}

We have dim(lin(Q)) = 0, and hence Q = conv {v1, . . . , vp} + cone {r1, . . . , rp}.

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

Page 13: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Homework

Sections 3.1, 3.2, 3.3, 3.14 are prerequisite knowledge for the course. Review thesesections 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

Page 14: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Properties of Integral Polyhedra

A polyhedron P ⊆ Rn is integral if P = conv (P ∩ Zn).

If P is integral, then max{cx : x ∈ P ∩ Zn} = 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

Page 15: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Properties of Integral Polyhedra

Theorem

P ⊆ Rn a rational polyhedron. Then equivalent:

1 P = conv (P ∩ Zn)

2 F ∩ Zn 6= ∅ for every minimal face F of P

3 max{cx : x ∈ P} attained by integral vector x ∈ P ∩Zn for each c ∈ Rn, if attained at all

4 max{cx : x ∈ P} ∈ Z ∪ {∞} for each c ∈ Zn

Proof.

Some of the implications are straightforward...

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

Page 16: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Properties of Integral Polyhedra

Theorem

P ⊆ Rn a rational polyhedron. Then equivalent:

1 P = conv (P ∩ Zn)

2 F ∩ Zn 6= ∅ for every minimal face F of P

3 max{cx : x ∈ P} attained by integral vector x ∈ P ∩Zn for each c ∈ Rn, if attained at all

4 max{cx : x ∈ P} ∈ Z ∪ {∞} for each c ∈ Zn

Proof.

(4)⇒ (2): We may assume P = {x : Ax ≤ b} for some A, b with integer entries

Consider a minimal face F . F = {x : AF x = bF} for a subsystem AF x ≤ bF of Ax ≤ b

Suppose F ∩ Zn = ∅; then uA ∈ Zn and ub 6∈ 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 6∈ Z

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

Page 17: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Properties of Integral Polyhedra

Theorem

P ⊆ Rn a rational polyhedron. Then equivalent:

1 P = conv (P ∩ Zn)

2 F ∩ Zn 6= ∅ for every minimal face F of P

3 max{cx : x ∈ P} attained by integral vector x ∈ P ∩Zn for each c ∈ Rn, if attained at all

4 max{cx : x ∈ P} ∈ Z ∪ {∞} for each c ∈ Zn

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 ∩ Zn for each i .

Then P = conv {v1, . . . , vp}+ rec(P)

rec(P) = {r : Ar ≤ 0} = cone {r1, . . . , rq} for some rational r i , since A is rational.

Scaling the r j , we may assume r j ∈ Zn for all j .

So P = conv {v1, . . . , vp}+ cone {r1, . . . , rq} with v i , r j ∈ Zn, hence P = conv (P ∩ Zn)

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

Page 18: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Total Unimodularity

We next consider the question:

Which matrices A are such that {x : Ax ≤ b, x ≥ 0} is integral for all b ∈ Zn?

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.

Theorem (Hoffman and Kruskal)

A is TU ⇔ {x : Ax ≤ b, x ≥ 0} is integral for each b ∈ Zn.

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

Page 19: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations 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 ∑

j red

Aj

−∑

j blue

Aj

∈ {−1, 0, 1}m

Here Aj is the j-th column of A.

Theorem

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 : b1

2B1c ≤ Bx ≤ d1

2B1e, 0 ≤ x ≤ 1}

contains an x ∈ Zn. Let the i-th column be red if xi = 0, blue otherwise.

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

Page 20: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations 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 ∑

j red

Aj

−∑

j blue

Aj

∈ {0, 1}mHere Aj is the j-th column of A.

Theorem

A TU ⇐⇒ every column submatrix admits an equitable bicoloring.

Proof.⇐=:Suppose not. Let B be a smallest submatrix of A with δ := det(B) 6∈ {−1, 0, 1}. Then δB−1

is a 0,±1-matrix. Let d be the first column of δB−1. Then Bd = δe1. If δ is even, then δ = 0.If δ is odd, then δ = 1.

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

Page 21: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations 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 ∑

j red

Aj

−∑

j blue

Aj

∈ {0, 1}mHere Aj is the j-th column of A.

Theorem

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 AD withentries ava ∈ {−1, 0, 1} such that

ava =

−1 if v is the tail of a1 if v is the head of a0 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

Page 22: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Homework

Read 4.1, 4.2, and first two pages of 4.3. Try to fully understand all calls to othertheorems 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

Page 23: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations 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 ∈ Zn.

Theorem

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 ∈ Zn.Hence max{cx : Ax ≤ b} ∈ Z ∪ {∞} for each c ∈ Zn, so that {x : Ax ≤ b} is integral.

We next show:

Theorem

If P is rational, then there exists a TDI system Ax ≤ b so that P = {x : Ax ≤ b}.

Theorem

If P is (rational and) integral, then there exists a TDI system Ax ≤ b so thatP = {x : Ax ≤ b} and b integral.

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

Page 24: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Total Dual Integrality

Theorem

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 ∈ Zn : 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 ∈ Zn so that max{cx : Ax ≤ b} is finite

max{cx : Ax ≤ b} = max{cx : Mx ≤ d} = min{yd : yM = c, y ≥ 0} has an optimalsolution y∗; put λ = y∗ − by∗c, c ′ := λM, c ′′ := by∗cM;

min{yd : yM = c , y ≥ 0} = min{yd : yM = c ′, y ≥ 0}+ min{yd : yM = c”, y ≥ 0}, soλ, by∗c 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 by∗c and c ′

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

Page 25: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Total Dual Integrality

Theorem

If P is integral, then there exists a TDI system Ax ≤ b so that P = {x : Ax ≤ b} and bintegral.

Proof.

If P is integer, then in the previous proof δc := max{cx : x ∈ P} ∈ Z for each c ∈ C ⊆ Zn

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

Page 26: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Fundamental Theorem of Integer Programming

Theorem

Let A,G be rational matrices, b a rational vector. Put

P := {(x , y) : Ax + Gy ≤ b}, S := {(x , y) : Ax + Gy ≤ b, x ∈ Zn}.

Then:

1 ∃A′,G ′, b′ rational so that conv (S) = {(x , y) : A′x + G ′y ≤ b′}.2 if S 6= ∅, then the recession cones of P and conv (S) coincide.

Proof.

P = conv {v1, . . . , v t}+ cone {r1, . . . , rq} for some rational v i , integral r j .

Consider T := {∑

i λivi +∑

j µj rj :∑λi = 1, λ ≥ 0, 0 ≤ µ ≤ 1}

Put TI := {(x , y) ∈ T : x ∈ Zn}, RI := {∑

j µj rj : µ ∈ Zq

+}S = TI + RI ; hence conv (S) = conv (TI ) + conv (RI )

conv (TI ) is a rational polyhedron,

rec(conv (S)) = conv (RI ) = cone {r1, . . . , rq} = rec(P) is a rational cone

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

Page 27: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

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

Page 28: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations 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 xe∑e∈δ(v) xe ≤ 1 v ∈ V

x ∈ {0, 1}E

LetP(G ) := conv {x ∈ {0, 1}E :

∑e∈δ(v)

xe ≤ 1 for all v ∈ V }

and put

Q(G ) := {x ∈ RE :∑

e∈δ(v)

xe ≤ 1 for all v ∈ V , x ≥ 0}

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

Page 29: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Matchings in Graphs

The incidence matrix of an undirected graph G = (V ,E ) is the V × E matrix AG with entriesave ∈ {0, 1} such that

ave =

{1 if v is incident with e0 otherwise

Clearly

Q(G ) = {x ∈ RE :∑

e∈δ(v)

xe ≤ 1 for all v ∈ V , x ≥ 0} = {x ∈ RE : AGx ≤ 1, x ≥ 0}

Lemma

The incidence matrix of G is totally unimodular if and only if G is bipartite.

Theorem

If G is bipartite, then P(G ) is integral.

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

Page 30: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Matchings in Graphs

P(G ) := conv {x ∈ {0, 1}E :∑

e∈δ(v)

xe ≤ 1 for all v ∈ V }

Lemma

If G = (V ,E ) then for any U ⊆ V with |U| odd the inequality∑e∈E [U]

xe ≤|U| − 1

2

is valid for P(G ).

Is

P(G ) = {x ∈ RE :∑

e∈δ(v)

xe ≤ 1 for all v ∈ V ,∑

e∈E [U]

xe ≤|U| − 1

2for all odd U ⊆ V , x ≥ 0}

??

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

Page 31: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Matchings in Graphs

Theorem

Let G = (V ,E ) be a graph. The polyhedron

{x ∈ RE :∑

e∈δ(v)

xe = 1 for all v ∈ V ,∑

e∈δ(U)

xe ≥ 1 for all odd U ⊆ V , x ≥ 0}

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) xe = 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 ∈ RE :∑

e∈δ(v)

xe ≤ 1 for all v ∈ V ,∑

e∈E [U]

xe ≤|U| − 1

2for all odd U ⊆ V , x ≥ 0}

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

Page 32: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations 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 wexe∑e∈E [S] xe ≤ |S | − 1 S ⊆ V , S 6= ∅∑e∈E xe = |V | − 1

x ∈ {0, 1}E

P(G ) := {x ∈ RE :∑

e∈E [S]

xe ≤ |S | − 1 for all nonempty S ⊆ V ,∑e∈E

xe = |V | − 1, x ≥ 0}

Theorem

P(G ) is integral.

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

Page 33: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Submodular Polyhedra

Let N be a finite set. A function f : 2N → 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 : 2V → R be defined by f (S) := |δ(S)|.Then f is submodular.

Let G = (V ,E ) be an undirected graph and let f : 2E → R be defined by

f (S) := |V | −# of components of (V ,S)

Then f is submodular.

The submodular polyhedron is

P(f ) := {x ∈ RN :∑j∈S

xj ≤ f (S) for all S ⊆ N}

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

Page 34: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations Submodular Polyhedra

The submodular polyhedron is

P(f ) := {x ∈ RN :∑j∈S

xj ≤ f (S) for all S ⊆ N}

Theorem

Suppose f : 2N → Z is submodular and f (∅) = 0. Then P(f ) is integral, and the system∑j∈S xj ≤ f (S) for all S ⊆ N is TDI.

Proof.

Let c ∈ Zn. Consider max{cx :∑

j∈S xj ≤ f (S) for all S ⊆ N}. W.l.o.g. c1 ≥ c2 ≥ . . . ≥ cn.A feasible solution x is obtained by setting xj := f (Sj)− f (Sj−1), where Sj := {1, . . . , j}.The dual is

min{∑S⊆N

f (S)yS :∑j∈S

yS = cj for all j ∈ N, y ≥ 0}

We construct an integral optimal solution y for this problem so that cx =∑

S⊆N f (S)ySproving optimality of both integral solutions.

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

Page 35: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations

Theorem (Nash-Williams’ orientation theorem)

A 2k-connected undirected graph G can be oriented so as to become a k-connected directedgraph.

Proof.

Let D = (V ,A) arise from G by arbitrarily orienting the edges.

if there is an x ∈ ZA 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 xa = 1.

We consider the polyhedron P := {x ∈ RA : (∗)}. Then x = 121 ∈ P, so P 6= ∅

We will prove TDI-ness of (∗). Then PI = P 6= ∅, hence P ∩ ZA 6= ∅.

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

Page 36: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

Perfect Formulations

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 zU |U| · |V \ U| minimal.

Then U := {U | zU > 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

Page 37: Integer Programming, Part 1rudi/IP_1.pdf · Rudi Pendavingh (TU/e) Integer Programming, Part 1 May 18, 2016 10 / 37. Linear Inequalities and Polyhedra Minimal Faces Let P be a nonempty

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