Title: Bipartite Matching Polytope, Stable Matching Polytope
1Bipartite Matching Polytope, Stable Matching
Polytope
Lecture 10 Feb 15
2Perfect Matching
3Integrality Gap Example
x1
x3
x2
x1
(0.5,0.5,0.5)
x3
x2
4Good 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!
5Black Box
Problem
Solution
Polynomial time
LP-formulation
Vertex solution
LP-solver
integral
6Vertex Solutions
An optimal vertex solution can be found in
polynomial time.
7Bipartite Perfect Matching
Prove for a bipartite graph, a vertex
solution corresponds to an integral solution.
8Bipartite Perfect Matching
Prove a vertex solution corresponds to an
integral solution.
Pick a fractional edge and keep walking.
Because of degree constraints, every edge in the
cycle is fractional.
Partition into two matchings because the cycle is
even.
9Bipartite Perfect Matching
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!
10Stable Matching
- The Stable Marriage Problem
- There are n boys and n girls.
- For each boy, there is a preference list of the
girls. - For each girl, there is a preference list of the
boys.
Boys Girls 1 CBEAD A 35214 2
ABECD B 52143 3 DCBAE C 43512 4
ACDBE D 12345 5 ABDEC E 23415
11Stable Matching
What is a stable matching?
Consider the following matching.
It is unstable, why?
Boys Girls 1 CBEAD A 35214 2
ABECD B 52143 3 DCBAE C 43512 4
ACDBE D 12345 5 ABDEC E 23415
12Stable Matching
- Boy 4 prefers girl C more than girl B (his
current partner). - Girl C prefers boy 4 more than boy 1 (her
current partner).
So they have the incentive to leave their current
partners, and switch to each other, we call such
a pair an unstable pair.
Boys Girls 1 CBEAD A 35214 2
ABECD B 52143 3 DCBAE C 43512 4
ACDBE D 12345 5 ABDEC E 23415
13Stable Matching
What is a stable matching?
A stable matching is a matching with no unstable
pair, and every one is married.
Does a stable matching always exists?
Boys Girls 1 CBEAD A 35214 2
ABECD B 52143 3 DCBAE C 43512 4
ACDBE D 12345 5 ABDEC E 23415
14Day 1
Morning boy propose to their favourite
girl Afternoon girl rejects all but
favourite Evening rejected boy writes off girl
Boys Girls 1 CBEAD A 35214 2
ABECD B 52143 3 DCBAE C 43512 4
ACDBE D 12345 5 ABDEC E 23415
15Day 2
Morning boy propose to their favourite
girl Afternoon girl rejects all but
favourite Evening rejected boy writes off girl
Boys Girls 1 CBEAD A 35214 2
ABECD B 52143 3 DCBAE C 43512 4
ACDBE D 12345 5 ABDEC E 23415
16Day 3
Morning boy propose to their favourite
girl Afternoon girl rejects all but
favourite Evening rejected boy writes off girl
Boys Girls 1 CBEAD A 35214 2
ABECD B 52143 3 DCBAE C 43512 4
ACDBE D 12345 5 ABDEC E 23415
17Day 4
Morning boy propose to their favourite
girl Afternoon girl rejects all but
favourite Evening rejected boy writes off girl
A stable matching!
Boys Girls 1 CBEAD A 35214 2
ABECD B 52143 3 DCBAE C 43512 4
ACDBE D 12345 5 ABDEC E 23415
18Proof of Gale-Shapley Theorem
Gale,Shapley 1962 This procedure always find
a stable matching in the stable marriage problem.
- The procedure will terminate.
- Everyone is married.
- No unstable pairs.
The stable matching algorithm is boy-optimal That
is, among all possible stable matching, boys get
the best possible partners simultaneously.
19Bipartite Stable Matching
Input N men, N women, each has a preference list.
Goal Find a matching with no unstable pair.
How to formulate into linear program?
20Bipartite Stable Matching
Write if v prefers f to e.
Write
if
for some v
21Bipartite Stable Matching
CLAIM
Proof
22Bipartite Stable Matching
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
23Bipartite Stable Matching
For each vertex, let e(v) be the maximum element
of
CLAIM
Let e(v) v,w
e(v) is the minimum element of
e(w) defines a matching for w in W
W
U
e(v) defines a matching for v in U
24Bipartite Stable Matching
At top, blue is minimum, red is maximum.
W
At bottom, blue is maximum, red is minimum.
U
W
construct convex combination.
U
25Bipartite Stable Matching
At top, blue is minimum, red is maximum.
W
At bottom, blue is maximum, red is minimum.
U
Degree constraints still satisfied.
construct convex combination!
Bottom decreases, top increases, equal!
26Weighted Stable Matching
Vande Vate
Rothblum
Polynomial time algorithm from LP.
Can determine if certain combination is possible.
Can work on incomplete graph.
27Basic Solution
Tight inequalities inequalities achieved as
equalities
Basic solution unique solution of n linearly
independent tight inequalities
28Bipartite Perfect Matching
Goal show that any basic solution is an integral
solution.
Bipartite perfect matching, 2n vertices.
Minimal counterexample.
29Maximum 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!