Title: Combinatorial Optimization
1Combinatorial Optimization
- Chapter 13
- Integer Linear Programming
- Suggestion try to study this Chapter from the
slides refer to the book for more details only
if needed
2Integer Linear Programming
- min c x
- s.t. Ax b
- x 0
- x integer
3Polyhedral representation
Problem Vertices of the polytope are not
necessariliy integral points
4Polyhedral representation (2)
Solution choosing nearest integer point May be
infeasible
5Polyhedral representation (3)
In fact the whole problem might be infeasible
assessing feasibility is already a difficult task
6Other reasons against rounding
- Sometimes variables are tricks to make the
model be correct - Sometimes variables naturally express integral
entities
7Example 13.1 Modelling TSP
- min Si,j i?j cij xij
- s.t. Sj xij 1 for all i
- Si xij 1 for all j
- 0 x 1
- Si e S je,V\S xij 1 for every S subset
of V - xij integer
Exponential number of constraints
8Example 13.2 (cont.)
- min Si,j i?j cij xij
- s.t. Sj cij xij 1 for all i
- Si cij xij 1 for all j
- 0 x 1
- ui uj nxij n-1
- xij integer
- ui 0 for all i
9Correctness
- Let p be a solution to TSP, that is a cyclical
permutation of the cities, then we let ui t if
p(t)i. Now, consider the t-th arc in the tour,
then we set xij 1, uit-1 and ujt. It then
holds that ui uj nxij -1 n n-1 as
required. Moreover, if xij 0, the equation is
always satisfied by the ui variables. Now we show
that every feasible solution is a tour. - Suppose not, left as an exercise...
10Example 13.2 Satisfiability
- Boolean variables x1, x2,...,xn.
- Literal ?i xi, or xi ( where xi true if
xi is false and vice versa). - Disjunctive Clause Cj (?i or ?k or ?l ... ?z)
(or ) - Conjunction of Clauses (Cj and Cp and ... and
Cm) - (and )
- Satisfiability Given a boolean expression which
is a conjunction of disjunctive clauses, is there
a thruth assignment for the literatal which makes
the boolean expression true?
11ILP for Satisfiability
- SAT (x1 x2 x3 ) (x1 x2 ) (x2 x3)
(x3 x1) ( x1 x2 x3). - ?
- ILP
- x1 x2 x3 1
- x1 (1- x2) 1
- x2 (1-x3) 1
- (1-x1) x3 1
- (1-x1) (1-x2) (1-x3) 1
- 0 x1 x2 x3 1
- x1 x2 x3 integer
SAT has truth assignment if ILP has a feasible
solution!
12Total Unimodularity
- Definition 13.1 A square integer Matrix B is
called unimodular (UM) if its determinant det(B)
1 or det(B) -1. An integer Matrix A is called
totally unimodular (TUM) if every square
nonsingular submatrix of A is UM.
13LP in standard form and TUM
- Let polytope R1(A) be defined as
- Ax b
- x 0
- Theorem 13.1 If A is TUM, then all vertices of
R1(A) are integer for any integer vector b. - Skip the proof!
14LP in canonical form and TUM
- Let polytope R2(A) be defined as
- Ax b
- x 0
- Theorem 13.2 If A is TUM, then all vertices of
R2(A) are integer for any integer vector b. - Skip the proof!
15Applications of TUM
- Theorem 13.3 An integer matrix A with
- aij -1,0,1 is TUM if no more than two nonzero
entries appear in any column, and if the rows of
A can be partitioned into two sets I1 and I2 such
that - If a column has two entries of the same sign,
their rows are in different sets - If a column has two entries of different signs,
their rows are in the same set.
16Rest of chapter
17Exercises
- Slide 9.
- Show that if there exists a polynomial algorithm
for ILP, then there exists a polynomial algorithm
for SAT. - Is the LP for shortest path TUM? Motivate your
answer - Same as under 3 for Max Flow?