Topics in Combinatorial Optimization

Topics in Combinatorial Optimization
Orlando Lee – Unicamp
10 de abril de 2014
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Agradecimentos
Este conjunto de slides foram preparados originalmente para o
curso T´
opicos de Otimiza¸c˜
ao Combinat´oria no primeiro
semestre de 2014 no Instituto de Computa¸c˜
ao da Unicamp.
Preparei os slides em inglˆes simplesmente porque me deu
vontade, mas as aulas ser˜
ao em portuguˆes (do Brasil)!
Agradecimentos especiais ao Prof. M´
ario Leston Rey. Sem
sua ajuda, certamente estes slides nunca ficariam prontos a
tempo.
Qualquer erro encontrado nestes slide ´e de minha inteira
responsabilidade (Orlando Lee, 2014).
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Basic definitions
We need some definitions and notation related to linear
algebra, convexity, polyhedra and linear programming. We
assume some familiarity with these topics and present just the
minimum needed in order to present the following topics:
integral polyhedra
total dual integral (TDI) systems
totally unimodular (TU) matrices
Fix Rn as the grounding vector space. For vectors x, y let xy
denote the inner product of x and y .
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Linear independence
A vector v is a linear combination of x1 , . . . , xk if there exist
λ1 , . . . , λk such that
λ1 x1 + · · · + λk xk = v .
We say that vectors x1 , . . . , xk are linearly independent if there do
not exist λ1 , . . . , λk , not all equal to 0, such that
λ1 x1 + · · · + λk xk = 0.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Affine independence
A vector v is an affine combination of x1 , . . . , xk if there exist
λ1 , . . . , λk such that
λ1 x1 + · · · + λk xk = v and λ1 + . . . + λk = 1.
We say that vectors x1 , . . . , xk are affinely independent if there do
not exist λ1 , . . . , λk , not all equal to 0, such that
λ1 x1 + · · · + λk xk = 0 and λ1 + . . . + λk = 0.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Linear and affine independence
So
v is an affine combination of x1 , . . . , xk if and only if
linear combination of x11 , . . . , x1k ,
v
0
or
x1 , . . . , xk are affinely
independent if and only if
x1
xk 0 , . . . , 0 are linearly independent.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
is a
Linear and affine hull
Let X be a subset of Rn . Let
lin(X ) := {λ1 x1 + · · · + λk xk : k > 1, x1 , . . . , xk ∈ X ,
λ1 , . . . , λk ∈ R}
be the linear hull of X .
Let X be a subset of Rn . Let
aff(X ) := {λ1 x1 + · · · + λk xk : k > 1, x1 , . . . , xk ∈ X ,
λ1 , . . . , λk ∈ R, λ1 + . . . + λk = 1}
be the affine hull of X .
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Dimension and (affine) rank
The rank of a subset X ⊆ Rn , denote rank(X ), is the size of a
maximal subset of linear independent vectors of X .
From basic linear algebra, we know that every maximal subset of
linearly independent vectors of a set X ⊆ Rn has the same size. So
rank is well-defined.
The affine rank of a subset X ⊆ Rn , denoted aff-rank(X ), is the
size of a maximal subset of affine independent vectors of X .
Exercise. Prove that this concept is well-defined, that is, every
maximal subset of affinely independent vectors of a set X ⊆ Rn
has the same size.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Dimension and (affine) rank
Exercise.
(a) Prove that if 0 ∈ aff(X ) then aff-rank(X ) = rank(X ) + 1.
(b) Prove that if 0 6∈ aff(X ) then aff-rank(X ) = rank(X ).
The dimension of a set X ⊆ Rn is
dim(X ) := aff-rank(X ) − 1.
We say that X ⊆ Rn is full-dimensional if dim(X ) = n.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Dimension and (affine) rank
In linear independence, the vector 0 is privileged.
To generate Rn with linear combinations, we need n linear
independent vectors.
In affine independence, there is no privileged vector.
To generate Rn with affine combinations, we need n + 1 affine
independent vectors.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Convexity
A subset C of Rn is convex if λx + (1 − λ)y ∈ C for every
x, y ∈ C and every λ ∈ R with 0 6 λ 6 1.
A vector v is a convex combination of x1 , . . . , xk if there exist
λ1 , . . . , λk > 0 such that
λ1 x1 + · · · + λk xk = v and λ1 + . . . + λk = 1.
Let X be a subset of Rn . Let
conv(X ) := {λ1 x1 + · · · + λk xk : k > 1, x1 , . . . , xk ∈ X ,
λ1 , . . . , λk > 0, λ1 + . . . + λk = 1}
be the convex hull of X .
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Convexity
Theorem. (Carath´eodory, 1911) For any subset X ⊆ Rn and any
vector x ∈ conv(X ), there exist affinely independent vectors
x1 , . . . , xk ∈ X such that x ∈ conv({x1 , . . . , xk }).
Roughly speaking, every element of conv(X ) can be written as a
convex combinatiorn of k affine independent vectors of X , where k
is at most the affine rank of X .
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Cones
A subset C of Rn is a (convex) cone if C 6= ∅ and λx + µy ∈ C for
every x, y ∈ C and every λ, µ ∈ R+ .
A vector v is a conic combination of x1 , . . . , xk if there exist
λ1 , . . . , λk > 0 such that
λ1 x1 + · · · + λk xk = v .
Let X be a subset of Rn . Let
cone(X ) := {λ1 x1 + · · · + λk xk : x1 , . . . , xk ∈ X ,
λ1 , . . . , λk > 0}
be the cone generated by X .
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Cones
Theorem. (Carath´eodory, 1911) For any subset X ⊆ Rn and any
vector x ∈ cone(X ), there exist affinely independent vectors
x1 , . . . , xk ∈ X such that x ∈ cone({x1 , . . . , xk }).
Roughly speaking, every element of cone(X ) can be written as a
conic combination of k affinely independent vectors of X , where k
is at most the affine rank of X .
In the statement, if we assume that 0 6∈ X , then we can also write
linearly independent vectors instead of affinely independent vectors.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Hyperplanes and half-spaces
A subset H of Rn is a hyperplane if there exist c ∈ Rn \ {0} and
δ ∈ R such that
H = {x : cx = δ}.
We say that the set
S := {x : cx 6 δ}
is a half-space.
If δ = 0 we say that H (S) is a linear hyperplane (half-space).
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Polyhedra
A cone C is polyhedral if there is a matrix A such that
C = {x : Ax 6 0}.
Equivalently, C is the intersection of finitely many linear
half-spaces.
Several researchers showed that
a convex cone is polyhedral if and only if is finitely generated
where C being finitely generated means that there exists X such
that C = cone(X ).
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Polyhedra
A subset P of Rn is a polyhedron if there exists an m × n matrix A
and a vector b ∈ Rm such that
P = {x : Ax 6 b}.
Equivalently, P is the intersection of finitely many half-spaces.
We say that the system Ax 6 b determines P. An inequality
cx ≤ δ is valid if cx 6 δ holds for every x ∈ P.
A polyhedra or cone is rational if the linear system of inequalities
that determines them contains only rational inequalities (dx 6 δ
with d and δ rational).
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Polyhedra
A subset P of Rn is a polytope if there exists X such that
P = conv(X ). It can be shown that
P is a polytope if and only if P is a bounded polyhedron.
For subsets A, B of Rn let
A + B := {a + b : a ∈ A, b ∈ B}.
Minkowski (1936) proved the following fundamental result.
Theorem. A set P is a polyhedron if and only if P = Q + C for
some polytope A and some polyhedral cone C .
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Farka’s lemma
Farka’s lemma has several equivalent statements. It characterizes
when a given system of linear (in)equalities Ax 6 b has a feasible
solution (or, the polyhedron determined by the system is
nonempty).
Theorem. Ax 6 b is feasible if and only if yb > 0 for every y > 0
such that yA = 0.
Corollary. Ax = b has a solution with x > 0 if and only if yb > 0
for every y such that yA > 0.
Corollary. Ax 6 b has a solution with x > 0 if and only if yb > 0
for every y > 0 such that yA > 0.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Linear programming
Linear programming concerns the problem of maximizing or
minimizing a linear function over a polyhedron. One of the most
important results in the area is the (strong) duality theorem that
relates two optimization problems – the primal and the dual – by a
minimax equality.
Theorem. Let A be a matrix and b, c be vectors. Then
max{cx : Ax 6 b} = min{yb : y > 0, yA = c}.
There exist several equivalent forms of duality theorem, for
example:
max{cx : Ax 6 b, x > 0} = min{yb : y > 0, yA > c},
max{cx : Ax = b, x > 0} = min{yb : yA > c}.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Complementary slackness
Consider the linear problem:
max{cx : Ax 6 b} = min{yb : y > 0, yA = c}.
By weak duality we have
cx = (yA)x = y (Ax) 6 yb.
So a pair x, y of feasible solutions for the primal and the dual,
respectively, are both optimum if and only if, the inequality holds
with equality.
Equivalently, if and only if the following complementary slackness
conditions hold:
(Ax)i = bi for each i with yi > 0.
There exist other forms of complementary slackness, one for each
pair of primal and dual problems.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Optimality geometrically
Using Carath´eodory’s theorem we can prove the following result.
Theorem. If the optimum value of
max{cx : Ax 6 b} = min{yb : y > 0, yA = c}
is finite, then the minimum is attained by a vector y such that the
rows of A corresponding to the positive components of y are
linearly independent.
Geometrically, this says that c belongs to the cone generated by
the rows of A.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Optimality geometrically
Sketch of proof. Let x ∗ be an optimum solution of the primal and
let δ := cx ∗ . Let y > 0 be a optimum dual solution; so δ = yb.
Then
(c δ) = y [A b],
that is, the vector (c δ) belongs to the cone generated by the rows
of the [A b].
By Carath´eodory’s theorem, c belongs to the cone generated by a
linearly independent subset of rows of this matrix. So we may
assume that the positive entries of y correspond to a submatrix
[A′ b ′ ] of full row rank. By complementary slackness, A′ x ∗ = b ′
and hence, A′ has full row rank.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Faces, facets and vertices
Let P := {x : Ax 6 b} be a polyhedron in Rn . Let c a nonzero
vector and let
δ := max{cx : Ax 6 b}.
The hyperplane H := {x : cx = δ} is called a supporting
hyperplane of P.
A subset F of P is a face of P if F = P or F = P ∩ H for some
supporting hyperplane H of P.
F is a face of P
⇐⇒
F is the set of optimum solutions of
max{cx : Ax 6 b} for some c ∈ Rn .
An inequality cx ≤ δ determines or induces a face F if
F = {x ∈ P : cx = δ}.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Faces, facets and vertices
Equivalently, F is a face of P if and only if
F = {x ∈ P : A′ x = b ′ }
for some subsystem A′ x 6 b ′ of Ax 6 b. So a face itself is a
polyhedron.
An inequality ax 6 β from Ax 6 b is tight or active in a face F if
ax = β holds for every x ∈ F .
An inequality ax 6 β from Ax 6 b is an implict equality if Ax 6 b
implies ax = β.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Faces, facets and vertices
Theorem. Let P := {x : Ax 6 b} be a polyhedron of Rn . Let
A′ x 6 b ′ be a subsystem of implicit equalities in Ax 6 b. Then
dimP = n − rank(A′ ).
A facet is an inclusionwise maximal face F of P with F 6= P.
A system Ax 6 b is minimal or irredundant if each proper
subsystem A′ x 6 b ′ has a solution x not satisfying Ax 6 b.
If a system Ax 6 b is irredundant and P is full-dimensional, then
each of its inequalities determines a facet.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Faces, facets and vertices
A face F of P is minimal if it is an inclusionwise minimal face. Any
minimal face is an affine subspace of Rn and all minimal faces are
translates of each other. They all have dimension n − rank(A).
If each minimal face has dimension 0 then P is called pointed. A
vertex or extremal point of P is an element x such that {x} is a
minimal face. A polytope is the convex hull of its vertices.
For any element z of P = {x : Ax 6 b}, let Az x ≤ bz the
subsystem of Ax 6 b consisting of those inequalities that are
satisfied by z with equality.
Theorem. Let P = {x : Ax 6 b} be a polyhedron in Rn and let
z ∈ P. Then z is a vertex of P if and only if rank(Az ) = n.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Linear programming
In the 60’s Dantzig introduced the Simplex algorithm for
solving linear programming problems. The algorithm was very
efficient in practice but it was known that there were (rare)
cases in which it could take an exponential number of
iterations to converge.
In late 70’s, Kaichyan showed that linear programming
problems could be solved in polynomial time using the
ellipsoid method, which was a method used previously to solve
nonlinear problems. In practice, the algorithm was very slow
and numerically unstable (it uses square root).
In the 80’s, interior points methods were proposed to solve
linear programming problems. The algorithms were
competitive with the Simplex method.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Optimization versus separation
The separation problem with respect to a convex subset P of Rn
consists in given a vector y
(a) either answers correctly that y ∈ P,
(b) or returns a (separating) hyperplane cx = δ such that
P ⊆ {x : dx 6 δ} and cy > δ.
This problem is trivial if P is a polyhedron given by a linear system
of inequalities Ax 6 b.
It is perhaps surprising that this can be solved in some cases even
if the linear system of inequalities has exponential size (on the
dimension).
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Optimization versus separation
A classical result of Gr¨
otschel, Lov´
asz and Schrijver (1982) roughly
says that we can solve an optimization problem over
max{cx : x ∈ P}
in polynomial time as long as there is a separation oracle for P,
that is, an efficient algorithm that solves the separation problem.
So P can be given/described implicitly by this oracle.
The exact description of the result is very technical. Moreover, its
proof is very complex and relies on the ellipsoid method.
Informally, it establishes that the optimization problem and its
separation problem are polynomially equivalent.
The result itself has several implications in combinatorial
optimization problems.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Primal-dual method
The primal-dual method is a method for solving LP problems.
Many efficient combinatorial algorithms are based on this idea.
Suppose we want to solve the following LP problem:
max{cx : Ax = b, x > 0}.
The dual problem is
min{yb : yA ≥ c}.
Complementary slackness
xj > 0 ⇒ yaj = cj
where aj denotes the vector corresponding to the column j of A.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Primal-dual method
Idea: let y be a feasible dual solution. Let A= be the submatrix of
A consisting of those columns aj of A for which y aj = cj holds. To
find a feasible primal solution we solve the restricted linear
program:
A= x ′ = b, x ′ > 0.
If such x ′ exists, by adding components 0, we obtain a vector
x > 0 such that Ax = 0 satisfying complementary slackness.
Thus, x and y are optimum solutions of the primal and the dual
problems.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Primal-dual method
On the other hand, if no solution exists, by Farka’s lemma, there
exists y ′ such that y ′ A= > 0 and y ′ b < 0.
Let ǫ be the largest real number such that
(y + ǫy ′ )A > c.
If ǫ = ∞, then the problem is unbounded and the LP is infeasible.
Otherwise, note that ǫ > 0. So (y + ǫy ′ )b < yb.
Start a new iteration with y ← y + ǫy ′ .
The algorithm for the Maximum Weight Perfect Maching
Problem we described uses the primal-dual method.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Integral polyhedra
A vector x is said integral if each of its components is integer.
A polyhedron P is integral if it is rational and each face of P
contains an integral vector. In particular, every vertex is integral.
If P = {x : Ax 6 b} is integral then the LP problem
max{cx : Ax 6 b}
has an integral optimum solution, if it is finite.
Hence, in this case
max{cx : Ax 6 b, x ∈ Zn } = max{cx : Ax 6 b}.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Integral polyhedra
Theorem. Let P be a rational polyhedron in Rn . Then P is
integral if and only if for each rational vector c ∈ Rn , the LP
max{cx : Ax 6 b}
has an integral optimum solution, if it is finite.
Theorem. (Edmonds and Giles, 1977) A rational polyhedron P in
Rn is integral if and only if for each integral vector c ∈ Rn the
value of
max{cx : Ax 6 b}
is integer if it is finite.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Totally unimodular matrices
Totally unimodular matrices play an important role in integer
programming and combinatorial optimization.
A matrix A is totally unimodular (TU) if each square submatrix of
A has determinant in {0, +1, −1}. In particular, each component
of a TU matrix is in {0, +1, −1}.
Theorem. Let A be a TU m × n matrix and let b ∈ Zm . Then the
polyhedron
P := {x : Ax 6 b}.
is integral.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
TU matrices
Sketch of proof. We prove only the case in which P is pointed. Let
x be a vertex of P.
So there exists a submatrix A′ of A consisting of linearly
independent columns of A with rank n such that xj 6= 0 only if the
column aj of A is in A′ .
Let x ′ be the vector obtained from x by deleting the (zero) entries
which do no correspond to columns of A′ . Hence, A′ x ′ = b and
therefore, x ′ = (A′ )−1 b.
(Jump of the cat) From matrix theory each entry of the inverse
(A′ )−1 is equal to a determinant of a cofactor of A divided by the
determinant of A. Since A is TU, this implies that (A′ )−1 is
integral and since b is integral, it follows that x is integral.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
TU matrices
Corollary. Let A be a TU m × n matrix and let b ∈ Zm . Then the
polyhedron
P := {x : Ax = b, x > 0}
is integral.
Proof. Note that P can be described as





A
b 
P = x :  −A  x 6  −b  .


−I
0

Since A is TU, the constraint matrix above is also TU and the
result follows from the previous theorem.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
TU matrices
Corollary. Let A be a TU m × n matrix, b ∈ Zm and l , u ∈ Zn+ .
Then the polyhedron
P := {x : Ax = b, l 6 x 6 u}
is integral.
Proof. Similar to the previous one.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Two important examples of TU matrices
Let G = (V , E ) be a graph. The incidence matrix of G is the
{0, 1}-matrix M with rows indexed by V and columns indexed by
E such that:
1 if e ∈ δ(v ),
M[v , e] =
0 otherwise.
Let D = (V , A) be a digraph. The incidence matrix of D is the
{0, +1, −1}-matrix M with rows indexed by V and columns
indexed by A such that:

 1 if a ∈ δout (v ),
−1 if a ∈ δin (v ),
M[v , a] =

0 otherwise.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Incidence matrices of bipartite graphs are TU
Theorem. Let G be a bipartite graph. Then the incidence matrix
M of G is TU.
Proof. Suppose G = (V , E ) is (X , Y )-bipartite. Then there exist
matrices MX , MY with rows indexed by X and Y respectively,
and both with columns indexed by E such that:
MX
M=
MY
and each MX , MY has exacty one 1 in each column. So if we
add rows in MX by 1 and subtract rows in MY we obtain the
zero vector. So rank(M) 6 |V | − 1.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Incidence matrices of bipartite graphs are TU
Let B a submatrix of M. We prove by induction that
det(B) ∈ {0, +1, −1}. If B has order 1 then det(B) ∈ {0, +1}.
So suppose that B has order at least two. Then B satisfies one of
the following:
(a) every column has exactly two 1’s, or
(b) there exists a column of zeroes, or
(c) there exists a column with exactly one 1.
If (a) or (b) holds then det(B) = 0.
If (c) holds, then assume that B[v , e] = 1. Let B ′ the matrix
obtained from B by deleting row v and column e. Then
det(B) = (−1)v +e det(B ′ ). By induction det(B ′ ) ∈ {0, +1, −1}
and therefore det(B) ∈ {0, +1, −1}.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Incidence matrices of bipartite graphs are TU
Corollary. Let G be a bipartite graph containing a perfect
matching. Then every extreme point of the polytope
x(δ(v )) = 1 for every v ∈ V ,
x(e) > 0 for every e ∈ E
is integral.
Corollary. Let G = (V , E ) be a bipartite graph and w ∈ ZE+ . Then
every extreme point of the polyhedron
y(u) + y (v ) > w(e) for every e = uv ∈ E ,
is integral.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Incidence matrices of digraphs are TU
Theorem. Let D be a digraph.Then the incidence matrix M of D
is TU.
Proof. Let B be a submatrix of M. We prove by induction that
det(B) ∈ {0, +1, −1}. If B has order 1 then det(B) ∈ {0, +1, −1}.
So suppose that B has order at least two. Then B satisfies one of
the following:
(a) every column has exactly one +1 and one −1, or
(b) there exists a column of zeroes, or
(c) there exists a column with exactly one +1 or one −1.
If (a) or (b) holds then det(B) = 0.
If (c) holds, then assume that B[v , e] = ±1. Let B ′ the matrix
obtained from B by deleting row v and column e. Then
det(B) = ±(−1)v +e det(B ′ ). By induction det(B ′ ) ∈ {0, +1, −1}
and therefore det(B) ∈ {0, +1, −1}.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Minimum cost flow/circulation
Let D = (V , A) be a digraph, let b ∈ ZV be a demand/supply
function, let c : A 7→ R be a cost function and let l , u : A 7→ Z+ be
capacity functions. Consider the following problem:
P
max
a∈A c(a)x(a)
s.t. x(δout (v )) − x(δin (v )) = b(v ) for every v ∈ V ,
l(a) 6 x(a) 6 u(a)
for every a ∈ A.
This is known as Minimum Cost Flow/Circulation problem.
This can be rewritten as min{cx : Mx = b, l 6 x 6 u}.
From the total unimodularity of M we have that
P := {x : Mx = b, l ≤ x ≤ u}
is integral.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Minimum cost flow/circulation
min{cx : Mx = b, l 6 x 6 u}.
This can be used to model (and solve) several combinatorial
problems: Shortest Path problem, MaxFlow problem, Directed
Chinese Postman problem etc.
There also exist (several) combinatorial polynomial algorithms for
the Minimum Cost Flow problem. Many real applications can be
modeled as a problem of this type. We will not discuss them here.
Consult the references.
Let us show how to model two well-known problems in this
framework.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Typical problems in this framework
Minimum/shortest st-path problem: take l = 0, u = 1 and

 +1 if v = s
b(v ) :=
−1 if v = t

0 otherwise.
If (D, c) contains no negative cycle, then
min{cx : Mx = b, 0 6 x 6 1} is equivalent to the Shortest Path
problem.
If (D, c) contains a negative cycle, the integral solution may not
have any combinatorial interpretation for the Shortest st-Path
problem.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Typical problems in this framework
Maxflow problem: add a new arc (t, s) with cost c(t, s) = −1,
take as objective function min x(t, s)c(t, s) = max x(t, s); all the
remaining arcs have zero cost. Take l = 0 and b = 0.
So max{x(t, s) : Mx = 0, 0 6 x 6 u} is equivalent to the
Maxflow problem.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Integral polyhedra
Edmonds (1965) in a seminal paper characterized the perfect
matching polytope of a graph G = (V , E ).
More precisely, let
MG := {χM : M is a perfect matching of G }.
The matching polytope of G is Ppm (G ) := conv(MG ).
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Perfect matching polytope
We have seen that when G = (V , E ) is bipartite then Ppm (G ) is
determined by
x(δ(v )) = 1 for every v ∈ V ,
x(e) > 0 for every e ∈ E .
If G is not bipartite, then the previously result does not necessarily
hold.
However, Edmonds showed a nice characterization of Ppm (G ),
albeit with an exponential number of constraints.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Perfect matching polytope
Let G = (V , E ) a graph with a perfect matching (so |V | is even).
We say that a cut δ(X ) is odd if |X | is odd. It is easy to see that if
δ(X ) is an odd cut and M is a perfect matching then
|M ∩ δ(X )| > 1 (in fact, it must be odd).
Theorem. (Edmonds, 1965) Let G = (V , E ) be a graph. Then
Ppm (G ) is determined by:
x (δ(v )) = 1 for every v ∈ V ,
x (δ(X )) > 1 for every X ⊆ V odd,
x(e) > 0 for every e ∈ E .
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Integral polyhedra
How can we show that such description is actually complete, that
is, those linear inequalities do determine Ppm (G )?
There are some possibilities:
using standard arguments from polyhedral combinatorics, or
showing that for any objective function, the corresponding
linear programming problem has always an integral optimum
solution.
We will not use the first method, but a more refined approach of
the second one.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
TDI systems
A system Ax 6 b is totally dual integral (TDI) if A and b are
rational and for every integral vector c ∈ Zn , the dual problem in:
min{cx : Ax 6 b} = max{yb : yA = c, y > 0}
has an integral optimum solution y , if it exists.
The importance of this concept comes from the following result of
Edmonds and Giles (1977).
Theorem. If Ax 6 b is TDI and b is integral, then Ax 6 b
determines an integral polyhedron.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
TDI systems
We list some useful results.
Theorem. Suppose Ax > 1, x > 0 is a TDI system. Then the
system Ax > 1, 0 6 x 6 1 is also TDI.
Theorem. A system Ax 6 b, x ≥ 0 is TDI if and only if for every
c ∈ Zn the dual in:
min{cx : Ax 6 b, x > 0} = max{yb : yA > c, y > 0}
has an integral optimum solution y , if it exists.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
The perfect matching polytope
Theorem. Let G = (V , E ) be a graph. Then the system
x (δ(v )) = 1 for every v ∈ V ,
x (δ(X )) > 1 for every X ⊆ V odd,
x(e) > 0 for every e ∈ E .
is TDI. Furthermore, it determines Ppm (G ).
A typical way to prove this is to design an (primal-dual) algorithm
that finds an integral optimal dual solution (and an integral
optimum primal solution) for each integral vector c. In the result
above, this is complicated, but we will show some other examples.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Path polyhedra
Let D = (V , A) be a digraph and let s, t ∈ V with s 6= t. Let
Pst-path (D) := conv{χP : P is an st-path of D}.
Since the problem of finding a longest st-path is NP-hard, there is
little hope of finding a complete characterization of Pst-path (D).
↑
(D) of Pst-path (D).
However, we can consider the dominant Pst-path
Formally, the dominant of a polyhedron P is the polyhedron P ↑
consisting of vectors x such that x > z for some z ∈ P.
Equivalently, P ↑ = P + RA
+.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Path polyhedra
Consider the LP problem:
P
min
a∈A c(a)x(a)
s.a x(δout (X )) > 1 for every s t¯-set X ,
x(a) > 0
for every a ∈ A.
and its dual:
max
s.a
P
P
X
yX
X :a∈δ(X ) y X
yX > 0
6 c(a) for every a ∈ A,
for every s t¯-set X .
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Packing st-cuts
When c is integral, then an integral dual solution corresponds to a
collection C of st-cuts such that each arc a ∈ A belongs to at most
c(a) st-cuts in C.
We have seen the following result (Exercise).
Theorem. Let D = (V , A) be a digraph, let s, t ∈ V with s 6= t
and let c : A 7→ Z+ a capacity function. Then the length of a
shortest (weighted) st-path is equal to maximum size of a
collection C of st-cuts such that each arc a ∈ A belongs to at most
c(a) st-cuts in C.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Path polyhedra
Theorem. Let D = (V , A) be a digraph and let s, t ∈ V with
s 6= t. Then the system
x(δ(X )) > 1 for every s t¯-set X ,
x(a) > 0 for every a ∈ A.
↑
(D).
is TDI. Furthermore, it determines Pst-path
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Cut polyhedra
Let D = (V , A) be a digraph and let s, t ∈ V with s 6= t. Let
Pst-cut (D) := conv{χC : C is an st-cut of D}.
Again, there is little hope of finding a system describing this
polytope, because MaxCut is NP-hard.
↑
(D) rather than Pst-cut (D).
So we consider the dominant Pst-cut
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Cut polyhedra
Consider the LP problem:
P
min
a∈A c(a)x(a)
s.a x(P) > 1
x(a) > 0
for every st-path P,
for every a ∈ A.
and its dual:
max
s.a
P
P
P
yP
P:a∈A(P)
y P 6 c(a) for every a ∈ A,
yP > 0
Orlando Lee – Unicamp
for every st-path P.
Topics in Combinatorial Optimization
Packing st-paths
When c is integral, then an integral dual solution corresponds to a
collection P of st-paths such that each arc a ∈ A belongs to at
most c(a) st-paths in P.
We have seen the following result.
Theorem. (Integral MaxFlow MinCut Theorem) Let D = (V , A) be
a digraph, let s, t ∈ V with s 6= t and let c : A 7→ Z+ a capacity
function. Then the weight of a minimum st-cut is equal to
maximum size of a collection P of st-paths such that each arc
a ∈ A belongs to at most c(a) st-paths in P.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Cut polyhedra
Theorem. Let D = (V , A) be a digraph and let s, t ∈ V with
s 6= t. Then the system
x(P) > 1 for every st-path P,
x(a) > 0 for every a ∈ A.
↑
(D).
is TDI. Furthermore, it determines Pst-cut
Note that the dual problem consists in finding a maximum
(fractional) packing of st-paths. So, it is equivalent to the
MaxFlow problem (recall the Flow Decomposition Theorem). It
provides another polyhedral formulation of the MaxFlow problem.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Chain polytope
Let (S, 4) be a poset. Let
Pchain (S) := conv{χC : C is a chain of S}.
Theorem. Let (S, 4) be a poset. Then the system
x(A) 6 1 for every antichain A,
x(s) > 0 for every s ∈ S.
is TDI. Furthermore, it determines Pchain (D).
This follows from the weighted Mirsky’s theorem.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
Antichain polytope
Let (S, 4) be a poset. Let
Pantichain (S) := conv{χA : A is an antichain of S}.
Theorem. Let (S, 4) be a poset. Then the system
x(C ) 6 1 for every chain C ,
x(s) > 0 for every s ∈ S.
is TDI. Furthermore, it determines Pantichain (D).
This follows from the weighted Dilworth’s theorem.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization
References
A. Schrijver, Theory of Linear and Integer Programming,
Wiley. (a classic book)
C.E. Ferreira and Y. Wakabayashi, Combinat´oria Poli´edrica e
Planos-de-Corte Faciais. (Escola de Computa¸c˜ao)
A. Schrijver, Combinatorial Optimization, Vol. A, Springer.
A. Frank, Connections in Combinatorial Optimization, Oxford.
Orlando Lee – Unicamp
Topics in Combinatorial Optimization