Transcript Slide 1

CAS 746 – Advanced Topics in Combinatorial Optimization
The Structure of
Polyhedra
Gabriel Indik
March 2006
Presentation outline














Implicit equalities
Redundant constrains
Characteristic/recession cone
Lineality space
Affine hull and dimension
Supporting hyperplanes
Faces
Maximal faces: facets
Minimal faces: vertices
The face lattice
Convex hull - extreme points (vertices)
Extreme rays
Decomposition of polyhedra
Application
Implicit equalities

An inequality ax   from Ax  b is called an implicit equality (in Ax  b) if
ax =  for all x satisfying Ax  b. Notation:
 A= x  b= is the system of implicit equalities in Ax  b
 A+ x  b+ is the system of all other inequalities in Ax  b
Example:
Take the following system of inequalities a, b, c and d in R2:
A polyhedron is fully
dimensional  there are
no implicit equalities
a
b
d
c
Inequalities b and d are tight (satisfied with equality) for all x satisfying a, b, c and d.
Thus, inequalities b and d are implicit equalities in this particular system.
Redundant constraints

A constraint in a constraint system is called redundant (in the system) if it is
implied by the other constraints in the system.

A redundant constraint can be removed without affecting the system.
 Removing a redundant constraint can make other redundant constraints become
irredundant, so they usually they cannot be all removed at the same time.
 A system is irredundant if it has no redundant constraints.
Example 1:
Example 2:
c
c
c’
Constraint c can be removed
without affecting the system
Constraint c and c’ are redundant and can be
removed without affecting the system, but not
at the same time
Characteristic/recession cone

The characteristic/recession cone of a given polyhedron P, denoted by
char.cone(P) is the polyhedral cone:
char.cone(P) = {y | x + y  P for all x in P} = {y | Ay ≤ 0}





y  char.cone(P)  there is an x in P such that x + y  P for all  ≥ 0
P + char.cone(P) = P
P is bounded  char.cone(P) = {0}
If P = Q + C, with Q a polytope and C a polyhedral cone, then C = char.cone(P)
The nonzero vectors in char.cone(P) are called infinite directions of P
Lineality space

The lineality space of P, denoted my lin.space(P) is the linear space:
lin.space(P) = char.cone(P)  – char.cone(P) = {y | Ay ≤ 0}

If lin.space(P) has dimension 0, then P is called pointed
Affine hull and dimension

A nonempty polyhedron P can be uniquely represented as:
P=H+Q
where H is the lin.space(P), and Q is a nonempty pointed polyhedron.

The affine hull of P is given by:
affine.hull(P) = { x | A= x = b= } = { x | A= x ≤ b= }
If ax ≤  is an implicit equality in Ax ≤ b, the equality ax =  is already
implied by A= x ≤ b=.



The dimension of P is equal to n – rank of matrix A=
P is full-dimensional if its dimension is n
P is full-dimensional  there are no implicit inequalities
Supporting hyperplanes

For a given set P, a hyperplane is called a supporting hyperplane if it
contains P in one of its closed halfspaces and intersects the closure of P with
at least one point
Example 1:
Supporting hyperplanes
Example 2:
Non-supporting hyperplanes
Faces



A subset F of P is called a face of P if F = P or if F is the intersection of P with
a supporting hyperplane of P (by convention  is also a face).
Faces of dimension 0, 1,…, d – 2 and d – 1 are vertices, edges,…, ridges and
facets respectively.
Each face is a nonempty polyhedron.
Maximal faces: Facets


A facet of a convex polyhedral set P is a face of maximal dimension distinct
from P (maximal relative to inclusion). If P is in Rd, its facets are the faces in
Rd-1
If no inequality in A+x ≤ b+ is redundant in Ax ≤ b, then there exists a one-toone correspondence between the facets of P and the inequalities in A+x ≤ b+.
This implies:

Each face of P, except for P itself, is the intersection of facets of P
Intersection of 2 facets (R2)
is an edge (R1)
Intersection of 3 facets (R2)
is a vertex (R0)
P has no faces different from P  P is an affine subspace
 The dimension of any facet in P is one less than the dimension of P


If P is full-dimensional, and Ax ≤ b is irredundant, then Ax ≤ b is the unique
minimal representation of P.
Minimal faces: vertices



A minimal face of P is a face not containing any other faces.
A face F of P is a minimal face  F is an affine subspace
Hoffman and Kruskal [1956]:
A set F is a minimal face of P   ≠ F  P and:
F = {x | A’x = b’}
for some subsystem A’x ≤ b’ in Ax ≤ b.




All faces of P have the same dimension, namely n minus the rank of A.
If P is pointed, each minimal face consists of just one point. These points (or
these minimal faces) are called vertices of P.
Each vertex is determined by n linearly independent equations from the
system Ax = b.
A vertex of {x | Ax ≤ b} is called a basic:
Feasible solution for Ax ≤ b.
 Optimum solution if it attains max {cx | Ax ≤ b} for some objective vector c.

The face lattice
The intersection of two faces is empty or a face again. Hence, the faces,
together with  form a lattice under inclusion, which is called face-lattice of P.

P
F1F2
F2
F1
F1F4
P
Fd(P)  (-1)d
F2F3
F1
F3
F2
F4
Polyhedron
+
F3
F4
Fd-1(P)  (-1)d-1
F3F4
F1F4
F1F2
F2F3
F3F4
Edges
F0(P)  1
Vertices
Euler-Poincaré Relation
+

F-1(P) x (-1)
Empty set
2D: V
-1 =
–+ EfV0(P)
=– 0E–+f11(P)
= 0+ 1 = 0
3D: -1
V –+EfV0(P)
+– FE–=
–+f21F(P)
=–01
+=
f2(P)
0 –1=0
0
Convex hull



Convex bounded polyhedra (polytopes) can be characterized as the convex
hull of a set of points in some Rd.
The convex hull of a set of points P is the intersection of all convex sets
containing P.
Points in P are either:

Extreme points: vertices of the polytope.
 Interior points: they can be expressed as the convex combination of extreme
points.

The convex combination of any two adjacent vertices (line segment) is an
edge of P (face in dimension 1).
Extremal rays

Analog to vertices (extreme points), extremal rays cannot be represented as
the non trivial convex combination of other rays.
Example of extremal rays in R3
Decomposition of polyhedra

Any polyhedron has a unique minimal representation as:
P = conv.hull{x1,…,xn} + cone{y1,…,yn} + lin.space(P)

This is known as the “internal” representation, while the “external”
representation is given by:
P = {x | A+x ≤ b+}
Decomposition of polyhedra

Any polyhedron has a unique minimal representation as:
P = conv.hull{x1,…,xn} + cone{y1,…,yn} + lin.space(P)

This is known as the “internal” representation, while the “external”
representation is given by:
P = {x | A+x ≤ b+}
Decomposition of polyhedra

If P is convex and bounded (polytope), then its minimal
representation is given by:
P = conv.hull{x1,…,xn}

The set of points {x1,…,xn} are the extremal points (vertices – faces of
dimension 0) of the polytope.
Application

Doubly stochastic matrices

A square matrix A = (ij)ni,j = 1 is called doubly stochastic if
n

i 1
ij
1
( j  1,..., n)
ij
1
(i  1,..., n)
n

j 1
ij  0

(i, j  1,..., n)
Example of a doubly stochastic matrix:
0.3
0.1
0.6
0.5
0.1
0.4
0.2
0.8
0
Application

Permutation matrix

Matrix obtained by permuting the rows of an identity matrix according to
some permutation of the numbers 1 to n.
 Every row and column contains precisely a single 1 with 0s everywhere
else.
 There are n! permutation matrices of size n.

The permutation matrices for n = 2 are given by:

The permutation matrices for n = 3 are given by:
Application

Theorem – Birkhoff [1946] and von Newmann [1953]
Convex combination of:
Application

Theorem – Birkhoff [1946] and von Newmann [1953]
Convex combination of:
Permutation matrices of order 3
Application

Theorem – Birkhoff [1946] and von Newmann [1953]

Matrix A is doubly stochastic  A is a convex combination of permutation
matrices.
Proof:

Sufficiency: direct as all permutation matrices are doubly stochastic.

Necessity: proved by induction on the order n of A (n = 1 trivially true)
Consider the polytope P (in n2 dimension) of all doubly stochastic matrices of
order n. P is defined by:
n
n
  
i 1
ij
j 1
ij  0
ij
1
(i, j  1,..., n)
(i, j  1,..., n)
We have to show that each vertex of P is a permutation matrix.
Let matrix A be a vertex of P, then n2 linearly independent constraints must be
satisfied by A with equality.
Application

Theorem – Birkhoff [1946] and von Newmann [1953]

Matrix A is doubly stochastic  A is a convex combination of permutation matrices.

The first 2n constraints:
n
n
  
i 1
ij
j 1
ij
1
(i, j  1,..., n)
are linearly dependant. The last element of A is implied by the others, thus we have 2n – 1
constraints. Combining this with the n2 nonegativity constraints:
ij  0
(i, j  1,..., n)
we then know that at least n2 – 2n + 1 of the ij are 0. This is, there is a row in A where
all elements are 0 except for one of them. Since the matrix is doubly stochastic, then
that element must be 1.
Without loss of generality, suppose such element is a11 = 1, then removing first row and
column gives a doubly stochastic matrix of order n – 1, which by induction hypothesis is
the convex combination of permutation matrices (doubly stochastic matrix).
Application

Corollary – Frobenius [1912, 1917]

Each regular bipartite graph G of degree r ≥ 1 has a perfect matching.


A bipartite graph, also called a bigraph, is a set of graph vertices decomposed
into two disjoint sets such that no two graph vertices within the same set are
adjacent
A matching on a graph is a set of edges of such that no two of them share a
vertex in common. The largest possible matching on a graph with n nodes
consists of n/2 edges, and such a matching is called a perfect matching.
Let {1,…,n} and {n + 1,…,2n} be the color classes of G, and consider the
n-by-n matrix A = (ij) with
ij := 1/r (number of edges connecting i and n + j)
Then A is doubly stochastic, hence there is a permutation matrix B = (ij)
such that ij > 0 if  = 1. Matrix B gives a perfect matching in G.
Application

Corollary – Frobenius [1912, 1917]

Each regular bipartite graph G of degree r ≥ 1 has a perfect matching.
1
5
2
6
3
7
4
8
5
6
7
8
1
1/3
1/3
1/3
0
2
0
1/3
1/3
1/3
3
1/3
0
1/3
1/3
4
1/3
1/3
0
1/3
Application

Corollary – Frobenius [1912, 1917]

Each regular bipartite graph G of degree r ≥ 1 has a perfect matching.
1
5
2
6
3
7
4
8
5
6
7
8
1
1/3
1
0
1/3
0
1
1/3
0
0
2
0
1/3
1
0
1/3
0
1
1/3
0
3
1/3
0
0
1/3
1
0
1/3
0
1
4
1/3
0
1
1/3
0
0
1/3
1
0
Application

Corollary – Frobenius [1912, 1917]

Perfect matching polytope
Let G = (V, E) be an undirected graph. The perfect marching polytope of
G is the convex hull of the characteristic vectors of perfect matchings of G.
So P is a polytope in RE. Each vector x in the perfect matching polytope
satisfies:
xe  0


e ( v )
xe  1
(e  E )
(v  V )
Where (v) denotes the set of edges incident with v. In other words, if
a graph G is bipartite, then the perfect matching polytope is completely
defined by this system.
Notation
1
2
x = [1 0 1 0 1]
3
1
4
5
2
3
4
5
Application

Corollary – Frobenius [1912, 1917]

Proof
Each vector satisfying
xe  0


e ( v )
xe  1
(e  E )
(v  V )
is a convex combination of characteristic vectors of perfect matching in G, if G
is bipartite. Let x satisfy these constraints and V1 = {1,…,n} and V2 = {n + 1,…,2n}
be the two color classes of G. Then:
V1   x( (v))   x( (v))  V2
vV1
vV2
Let A = (aij) be the n-by-n matrix defined by:
aij := 0 if {I, n + j}  E
aij := xe if {I, n + j}  E
Then A is doubly stochastic: convex combination of permutation matrices, each of
Them corresponding to a perfect matching in G. Thus x is a convex combination
of characteristic vectors of perfect matchings in G.
Application

The matching polytope

Generalization to general, not necessarily bipartite graphs.
Let G = (V, E) be an undirected graph, with |V| even, and let P be the
|E|-dimensional associated perfect matching polytope (convex hull of the
characteristic vectors of the prefect matchings in G).

For non-bipartite graphs, the constraints:
xe  0


e ( v )


xe  1
(e  E )
(v  V )
Are not enough to determine P.
Proof (by counter example)
x = [ ½ ½ ½ ½ ½ ½]
Application

The matching polytope

Edmonds’ matching polyhedron theorem [1965]
The perfect matching polytope for general, not necessarily bipartite graphs, is
given by:
xe  0
(e  E )


xe  1
(v  V )


xe  1
W odd
e ( v )
e ( w )
where (W) is the set of edges of G intersecting W in exactly one vertex.
Thank you !