![Page 1: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/1.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/2.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/3.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/4.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/5.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/6.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/7.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/8.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/9.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/10.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/11.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/12.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/13.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/14.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/15.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/16.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/17.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/18.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/19.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/20.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/21.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/22.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/23.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/24.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/25.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/26.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/27.jpg)
Augmenting paths
![Page 28: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/28.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/29.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/30.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/31.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/32.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/33.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/34.jpg)
Augmenting paths
![Page 35: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/35.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/36.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/37.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/38.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/39.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/40.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/41.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/42.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/43.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/44.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/45.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/46.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/47.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/48.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/49.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/50.jpg)
batch-augment
![Page 51: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/51.jpg)
batch-augment
![Page 52: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/52.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/53.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/54.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/55.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/56.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/57.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/58.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/59.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/60.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/61.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/62.jpg)
Weighted matchings
![Page 63: A Fast Approximation for Maximum Weight Matroid Intersection€¦ · Matroid Intersection ChandraChekuri Kent Quanrud University of Illinois at Urbana-Champaign UIUCTheorySeminar](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/63.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/64.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/65.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/66.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/67.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/68.jpg)
{`, 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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/69.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/70.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/71.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/72.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/73.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/74.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/75.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/76.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/77.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/78.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/79.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/80.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/81.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/82.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/83.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/84.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/85.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/86.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/87.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/88.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/89.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/90.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/91.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/92.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/93.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/94.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/95.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/96.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/97.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/98.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/99.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/100.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/101.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/102.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/103.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/104.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/105.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/106.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/107.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/108.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/109.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/110.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/111.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/112.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/113.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/114.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/115.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/116.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/117.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/118.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/119.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/120.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/121.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/122.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/123.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/124.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/125.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/126.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/127.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/128.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/129.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/130.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/131.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/132.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022062419/5ec78fad16bba61ea923179c/html5/thumbnails/133.jpg)
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.