Download presentation
Presentation is loading. Please wait.
Published byBarbara Douglas Modified over 9 years ago
1
Optimization - Lecture 5, Part 1 M. Pawan Kumar http://www.robots.ox.ac.uk/~oval/ Slides available online http://mpawankumar.info
2
Integer Linear Programming Duality Integer Polyhedron Totally Unimodular Matrices Outline
3
Linear Program s.t. A x ≤ b max x c T x
4
Integer Linear Program s.t. A x ≤ b max x c T x x is an integer vector Every element of x is an integer
5
Integer Linear Program s.t. A x ≤ b max x c T x x ∈ Z n Every element of x is an integer
6
Example 4x 1 – x 2 ≤ 8 max x x 1 + x 2 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 s.t. x ∈ Z n
7
Example x 1 ≥ 0 x 2 ≥ 0
8
Example 4x 1 – x 2 = 8 x 1 ≥ 0 x 2 ≥ 0
9
Example 4x 1 – x 2 ≤ 8 x 1 ≥ 0 x 2 ≥ 0
10
Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 x 1 ≥ 0 x 2 ≥ 0
11
Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0
12
Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 x ∈ Z n max x c T x (2,6) (3,4) (2,0)(0,0) (0,1)
13
Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 x ∈ Z n max x c T x (2,6) (3,4) (2,0)(0,0) (0,1) Why?True in general?
14
Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 x ∈ Z n max x c T x (2,6) (3,4) (2,0)(0,0) (0,1)
15
Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0.5 x 2 ≥ 0 x ∈ Z n max x c T x (2,6) (3,4) (2,0)(0,0) (0,1)
16
Example 4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0.5 x 2 ≥ 0 x ∈ Z n max x c T x (2,6) (3,4) (2,0) (0.5,0) (0.5,2.25)
17
ILP are generally NP-hard Integer Linear Program Many combinatorial optimization problems “Easy” ILP = Easy optimization problem
18
Integer Linear Programming Duality Integer Polyhedron Totally Unimodular Matrices Outline
19
s.t. A x ≤ b max x c T x Question x ∈ Z n s.t. A x ≤ b max x c T x ≤ ≥ =
20
s.t. A x ≤ b max x c T x Answer x ∈ Z n s.t. A x ≤ b max x c T x ≤
21
s.t. A x ≤ b max x c T x Question x ∈ Z n s.t. A x ≤ b max x c T x ≤ s.t. A y = c min y b T y ≤ ≥ =
22
s.t. A x ≤ b max x c T x Answer x ∈ Z n s.t. A x ≤ b max x c T x ≤ s.t. A y = c min y b T y =
23
s.t. A x ≤ b max x c T x Question x ∈ Z n s.t. A x ≤ b max x c T x ≤ s.t. A y = c min y b T y = s.t. A y = c min y b T y y ∈ Z m ≤ ≥ =
24
s.t. A x ≤ b max x c T x Answer x ∈ Z n s.t. A x ≤ b max x c T x ≤ s.t. A y = c min y b T y = s.t. A y = c min y b T y y ∈ Z m ≥
25
s.t. A x ≤ b max x c T x Duality Relationship x ∈ Z n s.t. A x ≤ b max x c T x ≤ s.t. A y = c min y b T y = s.t. A y = c min y b T y y ∈ Z m ≥ ≤
26
s.t. A x ≤ b max x c T x Duality Relationship x ∈ Z n s.t. A x ≤ b max x c T x ≤ s.t. A y = c min y b T y = s.t. A y = c min y b T y y ∈ Z m ≥ ≤ Strict inequality for some problems
27
Integer Linear Programming Duality Integer Polyhedron Totally Unimodular Matrices Outline
28
4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 (2,6) (3,4) (2,0)(0,0) (0,1) All the vertices of P are integer vectors P Integer Polyhedron Integer polytope is a bounded integer polyhedron
29
4x 1 – x 2 ≤ 8 2x 1 + x 2 ≤ 10 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 (2,6) (3,4) (2,0)(0,0) (0,1) P Integer Polyhedron Integer polyhedron need not be bounded All the vertices of P are integer vectors
30
4x 1 – x 2 ≤ 8 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 (2,6) (3,4) (2,0)(0,0) (0,1) P Integer Polyhedron Integer polyhedron need not be bounded All the vertices of P are integer vectors
31
4x 1 – x 2 ≤ 8 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 Integer polyhedron need not be bounded P Integer Polyhedron (2,0)(0,0) (0,1) All the vertices of P are integer vectors
32
4x 1 – x 2 ≤ 8 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0 x 2 ≥ 0 Are all polyhedra integer polyhedra? P Question (2,0)(0,0) (0,1) All the vertices of P are integer vectors NO
33
4x 1 – x 2 ≤ 8 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0.5 x 2 ≥ 0 Are all polyhedra integer polyhedra? P Question (2,0)(0,0) (0,1) All the vertices of P are integer vectors NO
34
4x 1 – x 2 ≤ 8 5x 1 - 2x 2 ≥ -2 x 1 ≥ 0.5 x 2 ≥ 0 Are all polyhedra integer polyhedra? Question (2,0) All the vertices of P are integer vectors NO (0.5,0) (0.5,2.25) P
35
Integer polyhedra are very useful ILP over Integer polyhedron is easy Integer Polyhedron Drop the integrality constraints, solve LP But how can we identify integer polyhedra?
36
Integer Linear Programming Duality Integer Polyhedron Totally Unimodular Matrices Outline
37
Totally Unimodular Matrix A is a TUM For all square submatrix A’ of A det(A’) is 0, +1 or -1
38
Question 0000 2 Is this a TUM? All elements must be 0, +1 or -1 NO
39
Question 1111 1 Is this a TUM? Determinant of the matrix = -2 NO
40
Question 1111 Is this a TUM? YES.
41
Question 1 1 Is this a TUM? YES.
42
Property A is a TUM b is an integer vector, b ∈ Z n Polyhedron P = {x | Ax ≤ b} P is an integer polyhedronProof?
43
Proof Sketch Let v be a vertex of P. A’ is a full-rank square submatrix of A b’ is the corresponding subvector of b A’v = b’Why?
44
Proof Sketch Let v be a vertex of P. A’ is a full-rank square submatrix of A b’ is the corresponding subvector of b A’v = b’ v = adj(A’)b’/det(A’) v is integer Integer+1 or -1
45
Totally Unimodular Matrix How can we identify if A is TUM? O((m+n) 3 ) algorithm. K. Truemper, 1990 We don’t want to identify easy problem instances We want to identify easy problems
46
Totally Unimodular Matrix Some types of matrices are TUM Easy to prove that they are TUM Corresponding problems are provably “easy” We will see that min-cut is one such problem
47
Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.