You are on page 1of 35

Topics in Combinatorial Optimization

Orlando Lee Unicamp

18 de junho de 2014

Orlando Lee Unicamp Topics in Combinatorial Optimization


Agradecimentos

Este conjunto de slides foram preparados originalmente para o


curso Topicos de Otimizacao Combinatoria no primeiro
semestre de 2014 no Instituto de Computacao da Unicamp.
Preparei os slides em ingles simplesmente porque me deu
vontade, mas as aulas serao em portugues (do Brasil)!
Agradecimentos especiais ao Prof. Mario 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


Edmonds-Giles theorem

We will describe a general framework involving digraphs and


submodular functions that generalizes several combinatorial results.

This framework includes MaxFlow-MinCut theorem,


Lucchesi-Yonger theorem, minimum cost orientations of graphs
and weighted matroid intersection theorem.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Crossing families

Let C be a collection of subsets of a ground set V . A pair X , Y of


subsets of V is crossing or cross if X Y 6= , Y X 6= ,
X Y 6= and X Y 6= .

We say that C is crossing if

X , Y C, X Y 6= , X Y 6= X Y , X Y C.

This is equivalent to require that

X , Y C, X , Y cross X Y , X Y C.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Crossing families

Some simple examples of crossing families are: 2V , 2V {, V },


{{v } : v V } or any collection of disjoint sets.

A more interesting and important example is the following. Let


D = (V , A) be a digraph. Then

{X : X V , r 6 X } = 2V r

for some r V and

{X : X 2V {, V }, d in (X ) = 0}

are a crossing families.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Crossing submodular functions

Let C be a crossing familly on V . A function b : C 7 R is called


submodular on crossing pairs or crossing submodular if

b(X ) + b(Y ) > b(X Y ) + b(X Y )

for every X , Y C with X Y 6= and X Y 6= .

Note that this is equivalent to require submodular on crossing pairs


of C.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Submodular flows

Let D = (V , A) be a digraph, let C be a crossing family on V and


let b : C 7 R be a crossing submodular function.

A submodular flow is a vector (function) x RA such that

x(in (U)) x(out (U)) 6 b(U) for each U C. ()

The set of vectors in RA that satisfy () is called submodular flow


polyhedron. We will show that if b is integral then this polyhedron
is integral. More precisely, we will show that the system above is
TDI.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Incidence matrix of a family in a digraph

Let D = (V , A) be a digraph and let C be a family of subsets of V .


Let N be the C A-matrix defined by:

1 if a enters X ,
N X ,a = 1 if a leaves X ,
0 otherwise,

for each X C and each a A. We say that N is the incidence


matrix of D, C.

So x RA is a submodular flow if satisfies

Nx 6 b.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Cross-free families

A family C 2V is cross-free if for all X , Y C we have that

X Y or Y X or X Y = or X Y = V ,

that is, no distinct members of C cross.

The family C is laminar if for all X , Y C we have that

X Y or Y X or X Y = ,

that is, no distinct members of C intersect.

So a laminar family is also a cross-free family.


Two members of a cross-free family may intersect as long as their
union is V .

Orlando Lee Unicamp Topics in Combinatorial Optimization


Cross-free families

Theorem. Let D = (V , A) be a digraph and let C a cross-free


family on V . Then N, the incidence matrix of D, C, is totally
unimodular.

Idea of the proof (see Schrijvers book, Vol. A, p. 213-216)


(a) Prove that certain matrices, known as network matrices, are
totally unimodular.
(b) Prove that if C is cross-free, then N is a network matrix, and
hence N is totally unimodular.

I have included the proofs in these slides but have not discussed in
class.

Orlando Lee Unicamp Topics in Combinatorial Optimization


LP formulation

Consider the following linear programming (LP).


P
max aA c(a)x(a)

s.t. x(in (X )) x(out (X )) 6 b(X ) for every X C,


l(a) 6 x(a) 6 u(a) for every a A.

This is equivalent to:

max cx
s.t. Nx 6 b
l 6x 6u

Orlando Lee Unicamp Topics in Combinatorial Optimization


Dual problem

The dual problem (DP) is the following.


X X X
min y X b(X ) u(a)w (a) + l(a)z(a)
X C X aA X aA
s.t. yX y X w (a) + z(a) = c(a) a A,
X C:ain (X ) X C:aout (X )
yX > 0 X C,
w (a), z(a) > 0 a A.

Or equivalently,

min y b 1w + 1z
s.t y N w I + zI = c
y, w, z > 0

Orlando Lee Unicamp Topics in Combinatorial Optimization


Some applications

Let us describe how to model some well-known combinatorial


optimization problems as a submodular flow problem.

(a) Minimum Cost Circulation. Set

C := {{v } : v V } and b = 0.

(b) Minimum Cost Dijoin (Lucchesi-Younger). Set

C := {X V {, V } : d in (X ) = 0} and b = 1.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Some applications

(c) Minimum Cost k-Arc-Connected Orientation. Suppose we are


given a digraph D = (V , A) and a cost function c : A 7 R+ . The
value c(a) represents the cost of reversing the orientation of a.
Suppose we have a target arc-connectivity k, that is, we want to
reorient D so that the resulting digraph is k-arc-connected (that is,
d out (X ) > k for every X 2V {, V }).

Set
C := 2V {, V } and b(X ) := d in (X ) k.
You can check that a submodular flow for this pair C, b
corresponds to a k-arc-connected reorientation.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Some applications

(d) Weighted matroid intersection theorem. Let M 1 := (E , r 1 ) and


M 2 := (E , r 2 ) be two matroids on the same ground set given by
their respective independence oracles, and let c : E 7 R be a cost
function. We want to find a common independent set I of both
matroids which maximizes c(I ). Note that if I is a common
independent then I must be a feasible solution of the following
LP:
x(x(U)) 6 r 1 (U) for every U E ,
x(x(U)) 6 r 2 (U) for every U E ,
x(e) > 0 for every e E .
Actually, this defines the polyhedron of the intersection of two
matroids. We derive this from Edmonds-Giles submodular flow
theeorem.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Some applications

Construct two copies E and E of the ground set E . For an


element u E , let u and u denote the corresponding element in
the respective copy. Analogously, define U and U for any U E .

Let D be a digraph with vertex set E E and arc-set

{(u , u ) : u E },

that is, an arc connects corresponding elements and goes from E


to E .

Orlando Lee Unicamp Topics in Combinatorial Optimization


Some applications

Let C := {U : U E } {E U : U E }. This is a crossing


family.

Now define b : C 7 Z+ as follows:

b(U ) = r 1 (U) for U E , U 6= E



b(E U ) = r 2 (U) for U E , U 6= ,

b(E ) = min{r 1 (E ), r 2 (E )}.

In our model we let x(u , u ) = 1 meaning that we choose u to be


in I , our desired common independent set. You can check that a
{0, 1}-vector x is the incidence vector of a common independent
set if and only if belongs to the submodular flow polyhedron
defined above.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Submodular flow polyhedron

Theorem. (Edmonds-Giles, 1977) Let D = (V , A) be a digraph, let


C be a crossing family, let b a crossing submodular function
defined on C, let c : A 7 Z be an arc cost function, and let
l , u ZA arc capacities. Then the dual LP problem (DP) has an
optimum solution (if it exists) which is integral.
Proof. Suppose the dual has an optimum solution. Let y be an
optimum solution of the dual which minimizes
X
y X |X ||X |,
X C

where X := V \ X .

Orlando Lee Unicamp Topics in Combinatorial Optimization


Submodular flow polyhedron

Let C >0 := y + = {X C : y X > 0}. We will show that C >0 is


cross-free.

We need the following result.

Theorem. If X , Y are subsets of V such that X 6 Y and Y X ,


then

|X ||X | + |Y ||Y | > |X Y ||X Y | + |X Y ||X Y |.

Proof. See Theorem 2.1 in Schrijvers book.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Submodular flow polyhedron

Suppose for a contradiction that C >0 is not cross-free. Let X , Y


two members of C >0 which cross. Let := min{y X , y Y } > 0.
Define y on C by:

y S if S = X or S = Y ,
y S := y + if S = X Y or S = X Y ,
S
yS othewise.

Then y is a feasible dual solution (Exercise).

Orlando Lee Unicamp Topics in Combinatorial Optimization


Submodular flow polyhedron
Moreover, by submodularity we have that
X X
y X b(X ) = y X b(X ) + (b(X ) + b(X Y ) b(X ) b(Y ))
X C X C
X
6 y X b(X ),
X C

and hence y is optimum.

However, by the previous theorem, we have that


X X
y X |X ||X | = y X |X ||X |
X C X C
+ (|X Y ||X Y | + |X Y ||X Y | |X ||X | |Y ||Y |)
X
< y X |X ||X |,
X C

which contradicts the choice of y .


Orlando Lee Unicamp Topics in Combinatorial Optimization
Submodular flow polyhedron

Thus C >0 is cross-free. Let N the submatrix of N indexed by the


rows in C >0 . So the dual program is equivalent to the following.

min yb 1w + 1z
s.t yN w I + zI = c
y, w , z > 0

Since N is totally unimodular, so is [N I I ] and hence y can be


chosen integral.

Corollary. The system described in the LP is TDI and hence


defines an integral polyhedron.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Network matrices

Let D = (V , A) be a digraph and let T := (V , A ) be a directed


tree (it needs not be a subdigraph of D). Let M be a A A-matrix
defined as follows. For each a A and each a = (u, v ) A define

+1 if the uv -path in T goes through a forwardly,


M f ,a = 1 if the uv -path in T goes through a backwardly,


0 if the uv -path in T does not go through a .

Matrix M is called a network matrix generated by T and D. A


matrix is a network matrix if it is the network matrix generated by
some directed tree and some digraph.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Network matrices

Theorem. Any submatrix of a matrix network is a network matrix.


Proof. Suppose that M is a network matrix generated by
T = (V , A ) and D = (V , A). Deleting a column indexed by a A
corresponds to deleting a from D. Deleting the row indexed by
a = (u, v ) A corresponds to contracting a in T and identifying
u and v in D.

Recall that a matrix M is totally unimodular (TU) if every square


submatrix of M has determinant 0, +1 or 1.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Network matrices

Theorem. (Tutte, 1965) A network matrix is TU.


Proof. By the previous theorem, it suffices to show that any square
network matrix B has determinant 0, 1 or +1. We prove this by
induction on the order of B. If B has order 1 then the result is
trivial. So assume that B has order at least 2. Suppose that B is
generated by a directed tree T := (V , A ) and a digraph
D = (V , A).

Assume that det B 6= 0. Let u be an end vertex of T and let a be


the arc of T incident to u. By reversing the orientation (this only
changes the sign of det B) we may assume that every arc in A and
A , incident to u, leaves u. Then by definition of B, the row a
contains only 0s and 1s.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Network matrices

Consider two 1s in row a . That is, consider two columns indexed


by arcs a1 = (u, v 1 ) and a2 = (u, v 2 ) in A. Subtracting column a1
from column a2 , is equivalent to resetting a2 to (v 1 , v 2 ). So after
this operation, column a2 has 0 in position a . Since this operation
does not change the determinant, we can assume that there exists
exactly one arc in A incident to u; so the row a has exactly one
nonzero. Then by expanding the determinant by row a and using
induction, we obtain that det B = 1.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Cross-free families

A family C 2S is cross-free if for all X , Y C we have that

X Y or Y X or X Y = or X Y = S,

that is, no distinct members of C cross.

The family C is laminar if for all X , Y C we have that

X Y or Y X or X Y = ,

that is, no distinct members of C intersect.

So a laminar family is also a cross-free family.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Cross-free families

Note that if C 2S is a cross-free family, then adding, for each


X C, the complement S X to C mantains its cross-freeness.

Moreover, for a fixed s S, the family {X C : s 6 X } is laminar.

Finally, for a fixed s S, the family obtained from C by replacing


each set of C containing s by its complement is laminar. (We will
use this result later.)

Orlando Lee Unicamp Topics in Combinatorial Optimization


Cross-free familes and directed trees

Let T := (V , A) be a directed tree and let : S 7 V be a


function for some set S. We use T and to define a family C of
subsets of S as follows. For each arc a = (u, v ) of T , let

X a := {s S : (s) is in the component of T a containing v }.

Let C(T , ) be the family of sets X a , that is,

C(T , ) := {X a : a A}.

If C = C(T , ) then we say that T , is a tree-representation of C.


If moreover T is a rooted tree, then T , is a rooted
tree-representation of C.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Cross-free familes and directed trees

It is easy to see that C(T , ) is cross-free. Moreover, if T is a


rooted tree, then C(T , ) is laminar.

Edmonds and Giles (1977) showed that the converse is true, that
is, every cross-free family has a tree-representation and every
laminar family has a rooted tree-representation.

Theorem. (Edmonds and Giles, 1977) A family of subsets of S is


cross-free if and only if C has a tree-representation. Moreover, C is
laminar if and only if C has a rooted tree representation.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Cross-free familes and directed trees

Proof. We have seen that sufficiency holds. Let us prove necessity.


First, we prove that every laminar family C of subsets of S has a
rooted tree-representation. We use induction on |C|, the case
C = being trivial. So let X be a minimal set of C. By induction,
the family C := C {X } has a rooted tree-representation
T = (V , A ), : S 7 V .

If X = , then we can add to T a new arc from any vertex to a


new vertex, to obtain a rooted tree-representation T , of C. So
we may assume that X 6= .

We claim that |(X )| = 1. Suppose for a contradiction that


(x) = (y ) for some x, y X . Then there exists an arc a of T
separating (x) and (y ). Hence the set X a C contains one of
x and y. As C is laminar, this implies that X a X , contradicting
the choice of X . Thus |(X )| = 1.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Cross-free familes and directed trees

Let v the vertex of T for which (X ) = {v }. Add a new vertex w


to T and a new arc b = (v , w ). Reset (s) := w for each s X .
Then the new tree and form a rooted tree-representation of C.
This shows that every laminar family has a rooted
tree-representation.

Now suppose C is a cross-free family and let s S. Let C


obtained from C by replacing each set containing s by its
complement. Then C is laminar and hence has a rooted
tree-representation. Reversing some arcs of the tree (if needed) we
obtain a tree-representation of C.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Total unimodularity of incidence matrices

Let D = (V , A) be a digraph and let C be a family of subsets of V .


Let N be the C A-matrix defined by:

1 if a enters X ,
N X ,a = 1 if a leaves X ,
0 otherwise,

for each X C and each a A.

Orlando Lee Unicamp Topics in Combinatorial Optimization


Total unimodularity of a certain matrix

Corollary. Let D = (V , A) be a digraph and let C be a cross-free


family on V . Then N is a network matrix and hence N is totally
unimodular.
Proof. Let T = (W , B), : V 7 W be a tree-representation of C.
Let D := (W , A ) be a digraph with

A := {((u), (v )) : (u, v ) A}.

Let M the network matrix generated by T , D . There exist a


bijection between C and B (if X C then there exists exactly one
arc b in T such that X = X b ) and a bijection between A and A.
It is easy to see that N is identical to M up to relabeling.
Therefore N is TU.

Orlando Lee Unicamp Topics in Combinatorial Optimization


References

A. Schrijver, Combinatorial Optimization, Vol. B, Springer.


(chapter 60)

Orlando Lee Unicamp Topics in Combinatorial Optimization

You might also like