A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection...

133
A Fast Approximation for Maximum Weight Matroid Intersection Chandra Chekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUC Theory Seminar February 8, 2016

Transcript of A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection...

Page 1: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

A Fast Approximation forMaximum Weight

Matroid Intersection

Chandra Chekuri Kent Quanrud

University of Illinois at Urbana-Champaign

UIUC Theory SeminarFebruary 8, 2016

Page 2: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Max. weight bipartite matching

5

7

2 4

6

91

72

83 64

3

Input:

bipartite graph G = (LtR,E)

weights w : E → R≥0

Output:

matching M ⊆ E maximizing

w(M)def=∑

e∈Mw(e)

Approximate output:

matching M ⊆ E s.t. w(M) ≥ (1− ε)OPT

Page 3: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Max. weight bipartite matching

7

6

9

7

6

total weight = 355

2 4

1

2

834

3

Input:

bipartite graph G = (LtR,E)

weights w : E → R≥0

Output:

matching M ⊆ E maximizing

w(M)def=∑

e∈Mw(e)

Approximate output:

matching M ⊆ E s.t. w(M) ≥ (1− ε)OPT

Page 4: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Max. weight bipartite matching

7

6

9

7

6

total weight = 355

2 4

1

2

834

3

Input:

bipartite graph G = (LtR,E)

weights w : E → R≥0

Output:

matching M ⊆ E maximizing

w(M)def=∑

e∈Mw(e)

Approximate output:

matching M ⊆ E s.t. w(M) ≥ (1− ε)OPT

Page 5: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Fast approximations: bipartite matching

exact approximate

cardinality O(m√n) Hopcroft and Karp [1973]

O(m10/7) Mądry [2013]O(m/ε)

weighted O(mn+ n2 log n) Fredman and Tarjan [1987]

O(m√n logW ) Duan and Su [2012]

O(m log(1/ε)/ε)Duan and Pettie [2014]

(m = edges, n = vertices, W = max weight)

(!) For fixed ε, weighted approximation is faster thanunweighted exact

Page 6: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Fast approximations: bipartite matching

exact approximate

cardinality O(m√n) Hopcroft and Karp [1973]

O(m10/7) Mądry [2013]O(m/ε)

weighted O(mn+ n2 log n) Fredman and Tarjan [1987]

O(m√n logW ) Duan and Su [2012]

O(m log(1/ε)/ε)Duan and Pettie [2014]

(m = edges, n = vertices, W = max weight)

(!) For fixed ε, weighted approximation is faster thanunweighted exact

Page 7: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Duan and Pettie [2014]

(extends to general matching)

1. Primal-dual

- Only approximates dual optimal conditions

2. Scaling reduces weighted problem to unweighted

3. Runs an approximate subroutine at each scale

4. Updates dual variables with small loss fromapproximation

Page 8: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Matroids

M = (N , I)N : ground set of elements

I ⊆ 2N : independent (feasible) sets

Page 9: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Matroidskred = 2kblue = 3kgreen = 1

x

y

- Empty set is independent

- Subsets of independent setsare independent

- Maximal independent setshave same cardinalitymax independent set is a base

max cardinality is the rank

- If A,B ∈ I and |A| < |B|,then there is b ∈ B \ A s.t.A+ b ∈ I

Page 10: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Matroid Intersection

M1 = (N , I1) M2 = (N , I2)

M1 ∩M2 , (N , I1 ∩ I2)

(same ground set)

e.g. bipartite matchings, arborescences

Page 11: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Matroid intersection problems

Maximum cardinality matroid intersection

Input: matroidsM1 = (N , I1),M2 = (N , I2)Output: S ∈ I1 ∩ I2 maximizing |S|

Maximum weight matroid intersection

Input: matroids M1 = (N , I1), M2 = (N , I2),weights w : N → R≥0

Output: S ∈ I1 ∩I2 maximizing w(S) def=∑

e∈S w(s)

Oracle Model

Independence queries of the form “Is S ∈ I?”

Page 12: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Matroid intersection problems

Maximum cardinality matroid intersection

Input: matroidsM1 = (N , I1),M2 = (N , I2)Output: S ∈ I1 ∩ I2 maximizing |S|

Maximum weight matroid intersection

Input: matroids M1 = (N , I1), M2 = (N , I2),weights w : N → R≥0

Output: S ∈ I1 ∩I2 maximizing w(S) def=∑

e∈S w(s)

Oracle Model

Independence queries of the form “Is S ∈ I?”

Page 13: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Matroid intersection problems

Maximum cardinality matroid intersection

Input: matroidsM1 = (N , I1),M2 = (N , I2)Output: S ∈ I1 ∩ I2 maximizing |S|

Maximum weight matroid intersection

Input: matroids M1 = (N , I1), M2 = (N , I2),weights w : N → R≥0

Output: S ∈ I1 ∩I2 maximizing w(S) def=∑

e∈S w(s)

Oracle Model

Independence queries of the form “Is S ∈ I?”

Page 14: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Running times for matroid intersection

CardinalityO(nk1.5Q) Cunningham [1986]

(n = |N |, k = rank(M1 ∩M2), Q = cost of indep. query)

Weighted (W = max{w(e) : e ∈ N})O(nk2Q) Frank [1981], Brezovec et al. [1986], Schrijver [2003]

O(n2√k log(kW )Q) Fujishige and Zhang [1995]

O(nk1.5WQ) Huang et al. [2014]

O((n2 log(n)Q+ n3 polylog(n)) log(nW ))Lee et al. [2015]

Page 15: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Running times for matroid intersection

CardinalityO(nk1.5Q) Cunningham [1986]

(n = |N |, k = rank(M1 ∩M2), Q = cost of indep. query)

Weighted (W = max{w(e) : e ∈ N})O(nk2Q) Frank [1981], Brezovec et al. [1986], Schrijver [2003]

O(n2√k log(kW )Q) Fujishige and Zhang [1995]

O(nk1.5WQ) Huang et al. [2014]

O((n2 log(n)Q+ n3 polylog(n)) log(nW ))Lee et al. [2015]

Page 16: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Running times for matroid intersection

CardinalityO(nk1.5Q) Cunningham [1986]

(n = |N |, k = rank(M1 ∩M2), Q = cost of indep. query)

Weighted (W = max{w(e) : e ∈ N})O(nk2Q) Frank [1981], Brezovec et al. [1986], Schrijver [2003]

O(n2√k log(kW )Q) Fujishige and Zhang [1995]

O(nk1.5WQ) Huang et al. [2014]

O((n2 log(n)Q+ n3 polylog(n)) log(nW ))Lee et al. [2015]

Page 17: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Approximate matroid intersection

Input: M1 = (N , I1),M2 = (N , I2),w : N → R≥0, ε > 0

Output: S ∈ I1 ∩ I2 s.t. w(S) ≥ (1− ε)OPT(OPT = max{w(T ) : T ∈ I1 ∩ I2})

Previous bound:O(nk1.5 log(k)Q/ε) Huang et al. [2014]

Main result: (1− ε)-approximation in time

O(nkQ log2(ε)/ε2)

Page 18: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Approximate matroid intersection

Input: M1 = (N , I1),M2 = (N , I2),w : N → R≥0, ε > 0

Output: S ∈ I1 ∩ I2 s.t. w(S) ≥ (1− ε)OPT(OPT = max{w(T ) : T ∈ I1 ∩ I2})

Previous bound:O(nk1.5 log(k)Q/ε) Huang et al. [2014]

Main result: (1− ε)-approximation in time

O(nkQ log2(ε)/ε2)

Page 19: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Fast approximations: matroid intersection

exact approximate

cardinality O(nk1.5Q) Cunningham [1986] O(nkQ/ε)

weighted

(nk2Q) Frank [1981] and others

O(n2√k log(kW )Q)

Fujishige and Zhang [1995]

O(nk1.5WQ) Huang et al. [2014]

O((n2 log(n)Q+ n3 polylog(n)) log(nW ))

Lee et al. [2015]

O(nkQ log2(1/ε)/ε2)

(n = elements, k = rank, Q = indep. query, W = max weight)

(!) For fixed ε, weighted approximation is faster thanunweighted exact

Page 20: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Fast approximations: matroid intersection

exact approximate

cardinality O(nk1.5Q) Cunningham [1986] O(nkQ/ε)

weighted

(nk2Q) Frank [1981] and others

O(n2√k log(kW )Q)

Fujishige and Zhang [1995]

O(nk1.5WQ) Huang et al. [2014]

O((n2 log(n)Q+ n3 polylog(n)) log(nW ))

Lee et al. [2015]

O(nkQ log2(1/ε)/ε2)

(n = elements, k = rank, Q = indep. query, W = max weight)

(!) For fixed ε, weighted approximation is faster thanunweighted exact

Page 21: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

A Fast Approximation forMaximum WeightBipartite Matching

Chandra Chekuri Kent Quanrud

University of Illinois at Urbana-Champaign

UIUC Theory SeminarFebruary 8, 2016

Page 22: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Max. weight bipartite matching

7

6

9

7

6

total weight = 355

2 4

1

2

834

3

Input:

bipartite graphG = (LtR,E)weights w : E → R≥0

Output:

matching M ⊆ E maximizing

w(M)def=∑

e∈Mw(e)

Approximate output:

matching M ⊆ E s.t. w(M) ≥ (1− ε)OPT

Page 23: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Fast approximations: bipartite matching

exact approximate

cardinality O(m√n) Hopcroft and Karp [1973]

O(m10/7) Mądry [2013]O(m/ε)

weighted O(mn+ n2 log n) Fredman and Tarjan [1987]

O(m√n logW ) Duan and Su [2012]

O(m log(1/ε)/ε)Duan and Pettie [2014]

(m = edges, n = vertices, W = max weight)

(!) For fixed ε, weighted approximation is faster thanunweighted exact

Page 24: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

Page 25: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

1 2 3

4 5 6

Page 26: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

1 2 3

4 5 6

Page 27: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Augmenting paths

Page 28: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Augmenting paths

= Exposed vertices

Page 29: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Augmenting paths

= Exposed vertices

Page 30: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Augmenting paths

= Exposed vertices

Page 31: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Augmenting paths

= Exposed vertices

Page 32: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Augmenting paths

= Exposed vertices

Page 33: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Augmenting paths

= Exposed vertices

Page 34: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Augmenting paths

Page 35: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Max. matching ⇔ no aug. paths

Page 36: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Max. matching ⇔ no aug. paths

Page 37: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Max. matching ⇔ no aug. paths

Page 38: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Finding augmenting paths

= Exposed vertices

Page 39: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Finding augmenting paths

= Exposed vertices

Page 40: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Finding augmenting paths

= Exposed vertices

= Exposed vertices

Page 41: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Finding augmenting paths

= Exposed vertices

= Exposed vertices

Page 42: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

M ;

does M have anaugmenting path? M M4P

yes, P

return M

nope!

Page 43: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

M ;

does M have anaugmenting path? M M4P

yes, P

return M

nope!

O(m)

n paths

O(mn)

Page 44: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

1 2 3

4 5 6

König 1931

O(mn)

Page 45: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Hopcroft-Karp

Most augmenting paths are short

Augment in batch and increase shortest aug. pathlength

Page 46: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

MatchingM, k def= |M| < OPT

Lemma. M has aug. path P of length

|P | ≤ 2

⌊k

OPT− k

⌋+ 1

Page 47: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

MatchingM, k def= |M| < OPT

Lemma. M has aug. path P of length

|P | ≤ 2

⌊k

OPT− k

⌋+ 1

|M|

|P |

Page 48: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

MatchingM, k def= |M| < OPT

Lemma. M has aug. path P of length

|P | ≤ 2

⌊k

OPT− k

⌋+ 1

|M|

|P |

Page 49: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

MatchingM, k def= |M| < OPT

Lemma. M has aug. path P of length

|P | ≤ 2

⌊k

OPT− k

⌋+ 1

|M|

|P |

2p

n

n �pn

Page 50: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

batch-augment

Page 51: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

batch-augment

Page 52: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

batch-augment

L0

L1L2

L3

L4

Page 53: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

batch-augment

L0

L1L2

L3

L4

Page 54: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

batch-augment

L0

L1L2

L3

L4

Page 55: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

M ;

does M have anaugmenting path? M M4P

yes, P

return M

nope!

O(m)

n paths

O(mn)

Page 56: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

M ;

does M have anaugmenting path?

return M

nope!

O(m)

batch-augment

yes

O(mp

n)

O(p

n) times

Page 57: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

1 2 3

4 5 6

König 1931

O(mn)Hopcroft and Karp

1973

O(mp

n)

Page 58: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

MatchingM, k def= |M| < OPT

Lemma. M has aug. path P of length

|P | ≤ 2

⌊k

OPT− k

⌋+ 1

|M|

|P |

2p

n

n �pn

Page 59: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

MatchingM, k def= |M| < OPT

Lemma. M has aug. path P of length

|P | ≤ 2

⌊k

OPT− k

⌋+ 1

|M|

|P |

2p

n

n �pn

1/✏(1 � ✏)n

Page 60: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

M ;

return M

nope!

O(m)

batch-augmentrepeat O(1/✏)times

O(m/✏)

Page 61: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

1 2 3

4 5 6

König 1931

O(mn)Hopcroft and Karp

1973

O(mp

n)O(m/✏)

Page 62: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Weighted matchings

Page 63: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Weighted matchings

4367

84

25

34

Page 64: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Primal

maxx

e∈E

w(e) · x(e)

s. t.∑

e∈δ(v)

x(e) ≤ 1 v ∈ L ∪R,

x ≥ 0 e ∈ E

4367

84

25

34

Dual

miny

v∈L∪R

y(v)

s. t. y(`) + y(r) ≥ w({`, r}) {`, r} ∈ Ey(v) ≥ 0 v ∈ L ∪R

Page 65: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Primal

maxx

e∈E

w(e) · x(e)

s. t.∑

e∈δ(v)

x(e) ≤ 1 v ∈ L ∪R,

x ≥ 0 e ∈ E

4367

84

25

34Dual

miny

v∈L∪R

y(v)

s. t. y(`) + y(r) ≥ w({`, r}) {`, r} ∈ Ey(v) ≥ 0 v ∈ L ∪R

Page 66: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

maxx

X

e2E

w(e) · x(e)

s. t.X

e2�(v)

x(e) 1 8v,

x � 0 8e

miny

X

v2L[R

y(v)

s. t. y(`) + y(r) � w(e) 8e = {`, r}y(v) � 0 8v

y

Primal Dual

x

x, y optimal if:

x({`, r}) > 0 ) y(`) + y(r) = w({`, r}) {`, r} 2 E

y(`) > 0 )X

e2�(`)

x(e) = 1 ` 2 L

y(r) > 0 ) x(e) = 1 r 2 R

Orthogonality

Page 67: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

maxx

X

e2E

w(e) · x(e)

s. t.X

e2�(v)

x(e) 1 8v,

x � 0 8e

miny

X

v2L[R

y(v)

s. t. y(`) + y(r) � w(e) 8e = {`, r}y(v) � 0 8v

y

Primal Dual

x

x, y optimal if:

x({`, r}) > 0 ) y(`) + y(r) = w({`, r}) {`, r} 2 E

y(`) > 0 )X

e2�(`)

x(e) = 1 ` 2 L

y(r) > 0 ) x(e) = 1 r 2 R

Orthogonality

Page 68: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

{`, r} 2 M ) y(`) + y(r) = w({`, r}) {`, r} 2 E

y(`) > 0 ) ` 2 V (M) ` 2 L

y(r) > 0 ) r 2 V (M) r 2 R

y

Dualy(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

436

78

42

5

34

Primal

M

w(M) = OPT

Orthogonality

Page 69: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) = w({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0

Orthogonality

y(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

Dual

436

7

8

4

25

34

Page 70: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) = w({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0

Orthogonality

y(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

Dual

436

7

8

4

25

34

M ;y(`) max

e2Ew(e)

8` 2 L

y(r) 0 8r 2 R

88

8

8

8

0

0

0

0

0

Page 71: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) = w({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0

Orthogonality

y(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

Dual

436

7

8

4

25

34

M ;y(`) max

e2Ew(e)

8` 2 L

y(r) 0 8r 2 R

88

8

8

8

0

0

0

0

0

Page 72: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) = w({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0

Orthogonality

y(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

Dual

436

7

8

4

25

34

M ;y(`) max

e2Ew(e)

8` 2 L

y(r) 0 8r 2 R

88

8

8

8

0

0

0

0

0

GOALpush y(`) # 0

8 exposed ` 2 L

Page 73: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

y(`) maxe2E

w(e)8` 2 L

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yesno

? ? ?

Page 74: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) = w({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0

Orthogonality

y(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

Dual

436

7

8

4

25

34

GOALpush y(`) # 0

8 exposed ` 2 L

88

8

8

8

0

0

0

0

0

Page 75: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) = w({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0

Orthogonality

y(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

Dual

436

7

8

4

25

34

GOALpush y(`) # 0

8 exposed ` 2 L

we can add“tight” edges

to our matching

88

8

8

8

0

0

0

0

0

Page 76: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

y(`) maxe2E

w(e)8` 2 L

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yesno

is there atight aug. path?

yes

augment

? ? ?

no

Page 77: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

Page 78: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

Page 79: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

Page 80: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

Page 81: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

Page 82: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

Page 83: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

Page 84: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

exposed weights go down

y(`) + y(r) � w({`, r})

Page 85: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

exposed weights go down

tight edges stay covered

y(`) + y(r) � w({`, r})

Page 86: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

exposed weights go down

tight edges stay covered

new tight edges

y(`) + y(r) � w({`, r})

Page 87: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

y(`) maxe2E

w(e)8` 2 L

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yesno

is there atight aug. path?

yes

augment

shift weight

no

Page 88: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

y(`) maxe2E

w(e)8` 2 L

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yesno

is there atight aug. path?

yes

augment

shift weight

no

O(m)' n times

O(m)'

O(mn)

n times

Page 89: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Using Egerváry’s reduction and Konig’s maximummatching alorithm, in the fall of 1953 I solved several12 by 12 assignment problems (with 3-digit integers asdata) by hand. Each of these examples took undertwo hours to solve and I was convinced that thecombined algorithm was ‘good’.

This must have been one of the last times when penciland paper could beat the largest and fastest electroniccomputer in the world.

- Harold Kuhn,On the origin of the Hungarian method

Page 90: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

1 2 3

4 5 6

König 1931

O(mn)Hopcroft and Karp

1973

O(mp

n)

Egerváry 1931

Kuhn 1955

O(mn)

O(m/✏)

Jacobi 1890

Page 91: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

What if the weights are small and integral?

w(e) ∈ {1, . . . ,W} ∀e ∈ E

Page 92: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

y(`) maxe2E

w(e)8` 2 L

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yesno

is there atight aug. path?

yes

augment

shift weight

no

Page 93: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

y(`) maxe2E

w(e)8` 2 L

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yes

is there atight aug. path?

augment

shift weight

no

no

yes

Page 94: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yes

is there atight aug. path?

augment

shift weight

no

no

yes

y(`) W 8` 2 L

Page 95: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yes

is there atight aug. path?

augmentno

no

yes

y(`) W 8` 2 L shift 1 unitof weight

Page 96: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

is there atight aug. path?

augment

no

yes

y(`) W 8` 2 L

repeatW times

shift 1 unitof weight

Page 97: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

shift 1 unitof weight

Hopcroft-Karp

Page 98: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

shift 1 unitof weight

Hopcroft-Karp

O(mp

n)

O(mp

nW )

Page 99: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

1 2 3

4 5 6

König 1931

O(mn) Hopcroft and Karp

1973

O(mp

n)

Egerváry 1931

Kuhn 1955

O(mn)

O(m/✏)

O(mp

nW )

Jacobi 1890

Page 100: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Goal: beat O(m√n)

1. Approximate primal-dual conditions

2. Exponential scaling

3. Approximate cardinality at each scale

4. Lossy weight shift

Page 101: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

shift 1 unitof weight

Hopcroft-Karp

O(mp

n)

O(mp

nW )

Page 102: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

shift 1 unitof weight

Hopcroft-Karp

O(mp

n)

O(mp

nW ) O(m)

Page 103: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

shift 1 unitof weight

Hopcroft-Karp

O(mp

n)

O(mp

nW ) O(m)

Page 104: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

shift 1 unitof weight

O(m)

APX Hopcroft-Karp

eO(m/✏)

O(mW/✏)

Page 105: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

shift 1 unitof weight

O(m)

APX Hopcroft-Karp

eO(m/✏)

O(mW/✏)

Page 106: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

Page 107: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

y(r) = 0 8r 2 R \ V (M)

Page 108: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

y(r) = 0 8r 2 R \ V (M)

never touchexposed weights

Page 109: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r})

y(r) = 0 8r 2 R \ V (M)

bad news bears

Page 110: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

O(m)

APX Hopcroft-Karp

eO(m/✏)

O(mW/✏)

aug. pathsare long

shift 1 unitof weight

Page 111: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r}) y(r) = 0 8r 2 R \ V (M)

O(1/✏)layers

Page 112: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r}) y(r) = 0 8r 2 R \ V (M)

O(1/✏)layers

Page 113: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r}) y(r) = 0 8r 2 R \ V (M)

O(1/✏)layers

no longer tight

Page 114: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r}) y(r) = 0 8r 2 R \ V (M)

O(1/✏)layers

artificially increase weight

Page 115: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y

Dualy(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

436

78

42

5

34

Primal

M

w(M) = OPT

y(`) + y(r) = w({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0

Orthogonality

Page 116: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y

Dualy(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

436

78

4

25

34

Primal

M � : E ! R“excess”

y(`) + y(r) w({`, r}) + �({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0X

e2M�(e) ✏ · w(M)

w(M) (1 + ✏) OPT

APX Orthogonality

Page 117: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r}) y(r) = 0 8r 2 R \ V (M)

O(1/✏)layers

artificially increase weight

Page 118: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r}) y(r) = 0 8r 2 R \ V (M)

O(1/✏)layers

addweightto �(e)

Page 119: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

y(`) + y(r) � w({`, r}) y(r) = 0 8r 2 R \ V (M)

O(1/✏)layers

addweightto �(e)

choose layer that cuts✏-fraction of edges

Page 120: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

O(m)

APX Hopcroft-Karp

eO(m/✏)

O(mW/✏)

aug. pathsare long

shift weightand cheat

Page 121: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

O(m)

APX Hopcroft-Karp

eO(m/✏)

O(mW/✏)

aug. pathsare long

shift weightand cheat

Page 122: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

O(m)

APX Hopcroft-Karp

eO(m/✏)

O(mW/✏)

aug. pathsare long

shift weightand cheat

(a) too slow

Page 123: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

y(`) W 8` 2 L

repeatW times

O(m)

APX Hopcroft-Karp

eO(m/✏)

O(mW/✏)

aug. pathsare long

shift weightand cheat

(a) too slow(b) too much cheating

Page 124: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Approximate scaling

1. Round up edge weights to powers of (1 + ε):

w(e) = (1 + ε)dlog(1+ε) w(e)e e ∈ EW = max

e∈Ew(e)

(1− ε)-APX w/r/t w ⇒ (1−O(ε))-APX w/r/t w

2. Operate in units of ε(1 + ε)i−1 for “scales”

i = log1+ε W , . . . , blog1+ε εc

Page 125: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Approximate scaling

1. Round up edge weights to powers of (1 + ε):

w(e) = (1 + ε)dlog(1+ε) w(e)e e ∈ EW = max

e∈Ew(e)

(1− ε)-APX w/r/t w ⇒ (1−O(ε))-APX w/r/t w

2. Operate in units of ε(1 + ε)i−1 for “scales”

i = log1+ε W , . . . , blog1+ε εc

Page 126: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

O(m)

APX Hopcroft-Karp

eO(m/✏)

aug. pathsare long

i =

8>><>>:

log1+✏fW,

...

blog1+✏ ✏c

shift ✏(1 + ✏)i�1

weight and cheaty(`) fW 8` 2 L

y(`) � (1 + ✏)i 8` 2 L

y(`) = (1 + ✏)i

8 exposed ` 2 L

O(m log2(W/✏)/✏2)

Page 127: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

APX Hopcroft-Karp

eO(m/✏)

aug. pathsare long

i =

8>><>>:

log1+✏fW,

...

blog1+✏ ✏c

shift ✏(1 + ✏)i�1

weight and cheaty(`) fW 8` 2 L

y(`) � (1 + ✏)i 8` 2 L

y(`) = (1 + ✏)i

8 exposed ` 2 L

✏ · ew(e) 8e 2 Mbecause

O(m)O(m log2(W/✏)/✏2)

Page 128: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

return M

M ;

y(r) 0 8r 2 R

APX Hopcroft-Karp

eO(m/✏)

aug. pathsare long

i =

8>><>>:

log1+✏fW,

...

blog1+✏ ✏c

shift ✏(1 + ✏)i�1

weight and cheaty(`) fW 8` 2 L

y(`) � (1 + ✏)i 8` 2 L

y(`) = (1 + ✏)i

8 exposed ` 2 L

O(m log2(W/✏)/✏2)

A few more low level details

O(m log2(1/✏)/✏)2

Page 129: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

faster

Maximum cardinality matching

- Augmenting paths

Hopcroft-Karp

- Augment in batch- Most paths are short

faster

Integral Hungarian

- primal-dual- (small) integral weights

- fixed scaling

Hungarian algo.

- primal-dual- combinatorial scaling

APX Hungarian

- APX primal-dual- exponential scaling

weighted

APX Hopcroft-Karpfaster

weighted

faster

weighted

1 2 3

4 5 6

König 1931

O(mn)Hopcroft and Karp

1973

O(mp

n)

Egerváry 1931

Kuhn 1955

O(mn) Duan and Pettie 2014

O(m/✏)

O(m/✏)

O(mp

nW )

Jacobi 1890

Page 130: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

exact algorithm

{`, r} 2 M ) y(`) + y(r) = w({`, r}) {`, r} 2 E

y(`) > 0 ) ` 2 V (M) ` 2 L

y(r) > 0 ) r 2 V (M) r 2 R

y

Dualy(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

436

78

42

5

34

Primal

M

w(M) = OPT

Orthogonality

return M

y(`) maxe2E

w(e)8` 2 L

M ;

y(r) 0 8r 2 R

y(`) = 0for all exposed

` 2 L?

yesno

is there atight aug. path?

yes

augment

shift weight

no

O(m)' n times

O(m)'

O(mn)

n times

Page 131: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

approximate algorithm

y

Dualy(`) + y(r) � w({`, r}) {`, r} 2 E

y(v) � 0 v 2 L [ R

436

78

4

25

34

Primal

M � : E ! R“excess”

y(`) + y(r) w({`, r}) + �({`, r}) 8{`, r} 2 M` 2 V (M) 8` : y(`) > 0

r 2 V (M) 8r : y(r) > 0X

e2M�(e) ✏ · w(M)

w(M) (1 + ✏) OPT

APX Orthogonality

return M

M ;

y(r) 0 8r 2 R

APX Hopcroft-Karp

eO(m/✏)

aug. pathsare long

i =

8>><>>:

log1+✏fW,

...

blog1+✏ ✏c

shift ✏(1 + ✏)i�1

weight and cheaty(`) fW 8` 2 L

y(`) � (1 + ✏)i 8` 2 L

y(`) = (1 + ✏)i

8 exposed ` 2 L

O(m log2(W/✏)/✏2)

A few more low level details

O(m log2(1/✏)/✏)2

Page 132: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Bibliography I

C. Brezovec, G. Cornuéjols, and F. Glover. Two algorithms for weightedmatroid intersection. Math. Prog., 36(1):39–53, 1986.

W. H. Cunningham. Improved bounds for matroid partition andintersection algorithms. SIAM J. Comput., 15(4):948–957, 1986.

R. Duan and S. Pettie. Linear-time approximation for maximum weightmatching. J. Assoc. Comput. Mach., 61(1), January 2014.

R. Duan and H. Su. A scaling algorithm for maximum weight matching inbipartite graphs. In Proc. 23rd ACM-SIAM Sympos. Discrete Algs.(SODA), pages 1413–1424, 2012.

A. Frank. A weighted matroid intersection algorithm. J. Algorithms, 2:328–336, 1981.

M. L. Fredman and R. E. Tarjan. Fibonacci heaps and their uses inimproved network optimization algorithms. J. Assoc. Comput. Mach.,34(3):596–615, 1987.

S. Fujishige and X. Zhang. An efficient cost scaling algorithm for theindependent assignment problem. J. Oper. Res. Soc. Japan, 38(1):124–136, 1995.

Page 133: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar

Bibliography II

J. Hopcroft and R. Karp. An n5/2 algorithm for maximum matchings inbipartite graphs. SIAM J. Comput., pages 225–231, 1973.

C. Huang, N. Kakimura, and N. Kamiyama. Exact and approximationalgorithms for weighted matroid intersection. MI Preprint Series, Math.for Industry, Kyushu University, November 2014. To appear in Proc.27th ACM-SIAM Symp. Discrete Algs. (SODA), 2016.

Y.T. Lee, A. Sidford, and S.C. Wong. A faster cutting plane method andits implications for combinatorial and convex optimization. In Proc.56th Annu. IEEE Symp. Found. Comput. Sci. (FOCS), 2015.

A. Mądry. Navigating central path with electrical flows: from flows tomatchings, and back. In Proc. 54th Annu. IEEE Symp. Found.Comput. Sci. (FOCS), pages 253–262, 2013.

A. Schrijver. Combinatorial Optimization: Polyhedra and Efficiency,volume 24 of Algorithms and Combinatorics. Springer, 2003.