Post on 21-Dec-2015
Matching Polytope, Matching Polytope, Stable Matching PolytopeStable Matching Polytope
Lecture 8: Feb 2
x1
x2
x3
x1
x2x3
x1
x3x2x1
x2
x3
(0.5,0.5,0.5)
Linear Programming
Good Relaxation
Every vertex could be the unique optimal
solution for some objective function.
So, we need every vertex to be integral.
For every objective function, there is a
vertex achieving optimal value.
So, it suffices if every vertex is integral.
Goal: Every vertex is integral!
Black Box
LP-solver
Problem
LP-formulation Vertex solution
Solution
Polynomial time
integral
Convex Combination
A point y in Rn is a convex combination of
if there exist
so that
and
Vertex Solution
Fact: A vertex solution is not a convex
combination of some other points.
A point y in Rn is a convex combination of
if y is in the convex hull of
Prove: a vertex solution
corresponds to an
integral solution.
Every point in the polytope corresponds to a fractional solution.
Maximum Bipartite Matchings
Maximum Bipartite Matchings
Pick a fractional edge and keep walking.
Prove: a vertex solution corresponds to an integral solution.
Because of degree constraints,every edge in the cycle is fractional.
Partition into two matchingsbecause the cycle is even.
Maximum Bipartite Matchings
Since every edge in the cycle is fractional,we can increase every edge a little bit,or decrease every edge a little bit.
Degree constraints are still satisfied in two new matchings.
Original matching is the average!
Fact: A vertex solution is not a convex
combination of some other points. CONTRADICTION!
Bipartite Stable Matchings
Input: N men, N women, each has a preference list.
Goal: Find a matching with no unstable pair.
How to formulate into linear program?
Bipartite Stable Matchings
Write
if v prefers f to e.
Write
if for some v
Bipartite Stable Matchings
CLAIM:
Proof:
Bipartite Stable Matchings
Focus on the edges with positive value, call them E+.
For each vertex, let e(v) be the maximum element of
CLAIM: Let e(v) = v,w
e(v) is the minimum element of
CLAIM: Let e(v) = v,w
e(v) is the minimum element of
Bipartite Stable Matchings
For each vertex, let e(v) be the maximum element of
U
W
e(v) defines a matching for v in U
e(w) defines a matching for w in W
Bipartite Stable Matchings
U
W
At bottom,blue is maximum, red is minimum.
At top,blue is minimum, red is maximum.
U
WProve: convex combination.
Bipartite Stable Matchings
At bottom,blue is maximum, red is minimum.
At top,blue is minimum, red is maximum.
U
W
Degree constraints still satisfied.
Bottom decreases, top increases, equal!
Prove: convex combination!
Bipartite Stable Matchings
[Vande Vate] [Rothblum]
Weighted Stable Matchings
Polynomial time algorithm from LP.
Can work on incomplete graph.
Can determine if certain combination is possible.
Basic Solution
Tight inequalities: inequalities achieved as equalities
Basic solution:unique solution of n linearly independent tight inequalities
Think of 3D.
Matching Polytope
Matching polytope
Convex hull of matchings
Linear program
Define by points
Intersections of hyperplanes
Define by inequalities
Goal: Prove they are equal
P Q
Matching Polytope
Prove P is smaller than Q, and Q is smaller than P.
Easy direction:
Check all points of P (i.e. all matchings) satisfy all the inequalities
Another direction:
Check all points of Q (i.e. all fractional solutions) is inside P.
How? By showing that all points are convex combination of vertices of P
Maximum Bipartite Matchings Goal: show that any fractional solution is a convex combination of matchings
How? By induction!
Bipartite perfect matching, 2n vertices. Minimal counterexample.
Maximum Bipartite Matchings An edge of 0, delete it.
An edge of 1, reduce it.
So, each vertex has degree 2,and there are at least 2n edges.
How many tight inequalities? At most 2n
How many linearly independent tight inequalities? At most 2n-1
Basic solution:unique solution of 2n linearly independent tight inequalities
CONTRA!
Valid Inequalities
Odd set inequalities
That’s enough.
[Edmonds 1965]