Top Banner
1 Matching Polytope Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3
27
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

1

Matching PolytopeMatching Polytope

x1

x2

x3

Lecture 12: Feb 22

x1

x2x3

Page 2: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

2

Perfect Matching

But not every solutionis a matching!!

Page 3: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

3

x1 x3

x2

x1

x2

x3

Matching Polytope

x1

x2x3

Page 4: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

4

Valid Inequalities

Enough?

Inequalities which are satisfied by

integer solutions but kill all

unwanted fractional vertex solution.

everywhereeverywhere

Page 5: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

5

Valid Inequalities

Enough?

Odd set inequalities

Yes, that’s enough.

[Edmonds 1965]

Page 6: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

6

Exponentially Many Inequalities

Can take care by the ellipsoid method.

Just need a separation oracle, which

determines whether a solution is feasible.

If not, find a violating inequality.

How to construct a separation oracle for matching?

Page 7: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

7

Rewriting the Odd-Set Constraints

Page 8: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

8

Matching Polytope

Page 9: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

9

Convex Combination

A point y in Rn is a convex combination of

if there exist

so that

and

Page 10: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

10

Vertex Solution

Fact: A solution is a vertex solution if and only if

x is not a convex combination of other feasible solutions.

A point y in Rn is a convex combination of

if y is in the convex hull of

Page 11: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

11

Convex Combination

Goal: Prove that every fractional solution can be

written as a convex combination of matchings.

This implies that every vertex solution corresponds to a matching.

Page 12: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

12

Convex Combination of Matchings

0.25 0.35 0.4

0.65

0.25

0.25

0.35 0.750.4

0.35

Page 13: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

13

Goal: Prove that every fractional solution can be

written as a convex combination of matchings.

Convex Combination

An edge of 0, delete it.

An edge of 1, reduce it.

Page 14: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

14

Convex Combination of Matching

0.25 0.35 0.4

0.65

0.25

0.25

0.35 0.750.4

0.351

0.25 0.35 0.4

Page 15: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

15

Goal: Prove that every fractional solution can be

written as a convex combination of matchings.

Convex Combination

An edge of 0, delete it.

An edge of 1, reduce it.

Tight odd-set, contract it.

Page 16: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

16

Fractional solutionssatisfying inequalities

By induction, each smaller fractional solution

is a convex combination of matchings

Check degree

Check odd-set

0.3

0.3

0.3

0.7

0.70.7

Perfect Matching

Page 17: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

17

Fractional solutionssatisfying inequalities

By induction, each smaller fractional solution

is a convex combination of matchings

Check degree

Check odd-set

0.3

0.3

0.3

0.7

0.70.7

0.70.7

0.3 0.3

0.70.7

0.3 0.3

Perfect Matching

Page 18: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

18

Fractional solutionsSatisfying inequalities

By induction, each smaller fractional solution is a convex combination of matchings

Check degree

Check odd-set

0.3

0.3

0.3

0.7

0.70.7

0.70.7

0.3 0.3

0.70.7

0.3 0.3

So is the original fractional solution! DONE!

Perfect Matching

Page 19: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

19

At most 2n tight (degree) tight constraints!

Since each vertex has degree 2, there are at least 2n edges.

An edge of 0, delete it.

An edge of 1, reduce it.

Tight odd-set, contract it.

Perfect Matching

Page 20: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

20

At most 2n tight (degree) tight constraints!

Since each vertex has degree 2, there are at least 2n edges.

Basic Solution: 2n tight linearly independent constraints for 2n variables.

1. So, exactly 2n edges.

2. Since each vertex has degree 2, the edges form disjoint union of cycles.

3. No odd cycle because of the odd-set constraints, so only even cycles.

4. Even cycle can be decomposed into matchings.

5. Therefore, a convex combination of matchings.

Perfect Matching

Page 21: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

21

Separation Oracle

S

u v

Each odd cut has total capacity >=

1

Page 22: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

22

Gomory-Hu Tree

A compact representation of all minimum s-t cuts in undirected graphs!

To compute s-t cut, look at the unique s-t path in the tree,and the bottleneck capacity is the answer!

And furthermore the cut in the tree is the cut of the graph!

Page 23: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

23

Separation Oracle

Given a Gomory-Hu tree T, we say an edge e is odd

if T-e consists of two odd components.

Page 24: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

24

Separation Oracle

To check if a fractional solution satisfies all odd set constraints,

we want to check if the minimum odd-cut has capacity at least 1.

If some odd edge has capacity < 1, then we find a violating odd-cut.

Surprisingly, this is all we need to check.

Page 25: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

25

Minimum Odd Cut

Let C be an odd cut.

C

Case 1: there is an odd edge crossing itu

vx = 1.2

Let the value of the odd edge be x.

Then any u-v cut has capacity at least x >= 1.

Page 26: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

26

Minimum Odd Cut

Let C be an odd cut.

C

Case 2: there is no odd edge crossing it

This is impossible,

because each tree component

inside C has an even number

of vertices, which implies that

C has an even number of vertices.

Page 27: 1 Matching Polytope x1 x2 x3 Lecture 12: Feb 22 x1 x2 x3.

27

Big Picture

LP-solver

Problem

LP-formulation Vertex solution

Solution

Polynomial time

integral

Separation oracle