submodular maximization in a data streaming settingrobi/bertinoro2014_sublinearalgorith… ·...

56
Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College Hanover, NH, USA Based on joint work with Sagar Kale Sublinear Algorithms Workshop Bertinoro, May 2014

Upload: others

Post on 30-Apr-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Submodular Maximization in a

Data Streaming Setting

Amit ChakrabartiDartmouth College

Hanover, NH, USA

Based on joint work with Sagar Kale

Sublinear Algorithms Workshop

Bertinoro, May 2014

Page 2: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching

The cardinality version

Page 3: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching

The cardinality version

Page 4: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching

2

12

5

6

2

8

2

11

The weighted version

Page 5: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching

2

12

5

6

2

8

2

11

The weighted version

Page 6: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching in a Graph Stream

Maximum cardinality matching (MCM)

• Input: stream of edges (u, v) ∈ [n]× [n]

• Describes graph G = (V,E): n vertices, m edges, undirected, simple

• Each edge appears exactly once in stream

• Goal

– Output a matching M ⊆ E, with |M | maximal

Page 7: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching in a Graph Stream

Maximum cardinality matching (MCM)

• Input: stream of edges (u, v) ∈ [n]× [n]

• Describes graph G = (V,E): n vertices, m edges, undirected, simple

• Each edge appears exactly once in stream

• Goal

– Output a matching M ⊆ E, with |M | maximal

– Use sublinear (in m) working memory

– Ideally O(n polylogn) ... “semi-streaming”

– Need Ω(n log n) to store M

Page 8: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching in a Graph Stream

Maximum cardinality matching (MCM)

• Input: stream of edges (u, v) ∈ [n]× [n]

• Describes graph G = (V,E): n vertices, m edges, undirected, simple

• Goal: output a matching M ⊆ E, with |M | maximal

Page 9: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching in a Graph Stream

Maximum cardinality matching (MCM)

• Input: stream of edges (u, v) ∈ [n]× [n]

• Describes graph G = (V,E): n vertices, m edges, undirected, simple

• Goal: output a matching M ⊆ E, with |M | maximal

Maximum weight matching (MWM)

• Input: stream of weighted edges (u, v, wuv) ∈ [n]× [n]× R+

• Goal: output matching M ⊆ E, with w(M) =∑

e∈M w(e) maximal

Page 10: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Matching in a Graph Stream

Maximum cardinality matching (MCM)

• Input: stream of edges (u, v) ∈ [n]× [n]

• Describes graph G = (V,E): n vertices, m edges, undirected, simple

• Goal: output a matching M ⊆ E, with |M | maximal

Maximum weight matching (MWM)

• Input: stream of weighted edges (u, v, wuv) ∈ [n]× [n]× R+

• Goal: output matching M ⊆ E, with w(M) =∑

e∈M w(e) maximal

Maximum submodular-function matching (MSM) ← this talk

• Input: unweighted edges (u, v), plus submodular f : 2E → R+

• Goal: output matching M ⊆ E, with f(M) maximal

Page 11: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Maximum Submodular Matching

Input

• Stream of edges σ = 〈e1, e2, . . . , em〉• Valuation function f : 2E → R

+

– Submodular, i.e., ∀X ⊆ Y ⊆ E ∀ e ∈ E

f(X + e)− f(X) ≥ f(Y + e)− f(Y )

– Monotone, i.e., X ⊆ Y =⇒ f(X) ≤ f(Y )

– Normalized, i.e., f(∅) = 0

• Oracle access to f : query at X ⊆ E, get f(X)

– May only query at X ⊆ (stream so far)

Goal

• Output matching M ⊆ E, with f(M) maximal “large”

• Store O(n) edges and f -values

Page 12: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Our Results

Can’t solve MSM exactly

• MCM, approx < e/(e− 1) =⇒ space ω(n polylogn) [Kapralov’13]

• Offline MSM, approx < e/(e− 1) =⇒ nω(1) oracle calls [this work]

– Via cardinality-constrained submodular max [Nemhauser-Wolsey’78]

Page 13: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Our Results

Can’t solve MSM exactly

• MCM, approx < e/(e− 1) =⇒ space ω(n polylogn) [Kapralov’13]

• Offline MSM, approx < e/(e− 1) =⇒ nω(1) oracle calls [this work]

– Via cardinality-constrained submodular max [Nemhauser-Wolsey’78]

Our results, using O(n) storage:

Theorem 1 MSM, one pass: 7.75-approx

Theorem 2 MSM, (3 + ε)-approx in O(e−3) passes

Page 14: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Our Results

Can’t solve MSM exactly

• MCM, approx < e/(e− 1) =⇒ space ω(n polylogn) [Kapralov’13]

• Offline MSM, approx < e/(e− 1) =⇒ nω(1) oracle calls [this work]

– Via cardinality-constrained submodular max [Nemhauser-Wolsey’78]

Our results, using O(n) storage:

Theorem 1 MSM, one pass: 7.75-approx

Theorem 2 MSM, (3 + ε)-approx in O(e−3) passes

More importantly:

Meta-Thm 1 Every compliant MWM approx alg → MSM approx alg

Page 15: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Our Results

Can’t solve MSM exactly

• MCM, approx < e/(e− 1) =⇒ space ω(n polylogn) [Kapralov’13]

• Offline MSM, approx < e/(e− 1) =⇒ nω(1) oracle calls [this work]

– Via cardinality-constrained submodular max [Nemhauser-Wolsey’78]

Our results, using O(n) storage:

Theorem 1 MSM, one pass: 7.75-approx

Theorem 2 MSM, (3 + ε)-approx in O(e−3) passes

More importantly:

Meta-Thm 1 Every compliant MWM approx alg → MSM approx alg

Meta-Thm 2 Similarly, max weight independent set (MWIS) → MSIS

Page 16: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Some Previous Work on MWM

Greedy maximal matching: 2-approx for MCM, useless for MWM

Maintain “current solution” M , update if new edge improves it

2

1

2

3

2

picked edge

unpicked edge

What if input is path with edge weights 1 + ε, 1 + 2ε, 1 + 3ε, . . .?

Update M only upon sufficient improvement

Page 17: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Some Previous Work on MWM

Greedy maximal matching: 2-approx for MCM, useless for MWM

Maintain “current solution” M , update if new edge improves it

2

1

2

3

2

picked edge

unpicked edge

8

What if input is path with edge weights 1 + ε, 1 + 2ε, 1 + 3ε, . . .?

Update M only upon sufficient improvement

Page 18: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Some Previous Work on MWM

Greedy maximal matching: 2-approx for MCM, useless for MWM

Maintain “current solution” M , update if new edge improves it

2

1

2

3

2

picked edge

unpicked edge

8

What if input is path with edge weights 1 + ε, 1 + 2ε, 1 + 3ε, . . .?

Update M only upon sufficient improvement

Page 19: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Compliant Algorithms for MWM

Greedy maximal matching: 2-approx for MCM, useless for MWM

Maintain “current solution” M , update if new edge improves it

2

1

2

3

2

picked edge

unpicked edge

8

What if input is path with edge weights 1 + ε, 1 + 2ε, 1 + 3ε, . . .?

Page 20: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Compliant Algorithms for MWM

Greedy maximal matching: 2-approx for MCM, useless for MWM

Maintain “current solution” M , update if new edge improves it

2

1

2

3

2

picked edge

unpicked edge

8

What if input is path with edge weights 1 + ε, 1 + 2ε, 1 + 3ε, . . .?

Update M only upon sufficient improvement

Page 21: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Examples of Compliant Algorithms for MWM

Update of “current solution” M

• Given new edge e, pick “augmenting pair” (A, J)

– A← e– J ←M A ... edges in M that conflict with A

– Ensure w(A) ≥ (1 + γ)w(J)

• Update M ← (M \ J) ∪A

Page 22: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Examples of Compliant Algorithms for MWM

Update of “current solution” M

• Given new edge e, pick “augmenting pair” (A, J)

– A← e– J ←M A ... edges in M that conflict with A

– Ensure w(A) ≥ (1 + γ)w(J)

• Update M ← (M \ J) ∪A

Choice of gain parameter

• γ = 1, approx factor 6 [Feigenbaum-K-M-S-Z’05]

• γ = 1/√2, approx factor 5.828 [McGregor’05]

Page 23: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Examples of Compliant Algorithms for MWM

Update of “current solution” M

• Given new edge e, pick “augmenting pair” (A, J)

– A← e A← “best” subset of 3-neighbourhood of e

– J ←M A ... edges in M that conflict with A

– Ensure w(A) ≥ (1 + γ)w(J)

• Update M ← (M \ J) ∪A

Choice of gain parameter

• γ = 1, approx factor 6 [Feigenbaum-K-M-S-Z’05]

• γ = 1/√2, approx factor 5.828 [McGregor’05]

• γ = 1.717, approx factor 5.585 [Zelke’08]

Page 24: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Examples of Compliant Algorithms for MWM

Update of “current solution” M + pool of “shadow edges” S

• Given new edge e, pick “augmenting pair” (A, J)

– A← e A← “best” subset of 3-neighbourhood of e

– J ←M A ... edges in M that conflict with A

– Ensure w(A) ≥ (1 + γ)w(J)

• Update M ← (M \ J) ∪A

• Update S ← appropriate subset of (S \ A) ∪ J

Choice of gain parameter

• γ = 1, approx factor 6 [Feigenbaum-K-M-S-Z’05]

• γ = 1/√2, approx factor 5.828 [McGregor’05]

• γ = 1.717, approx factor 5.585 [Zelke’08]

Page 25: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Generic Compliant Algorithm and f -Extension for MSM

6: procedure Process-Edge(e,M,S, γ)

7:

8: (A, J)← a well-chosen augmenting pair for M

with A ⊆M ∪ S + e, w(A) ≥ (1 + γ)w(J)

9: M ← (M \ J) ∪A

10: S ← a well-chosen subset of (S \A) ∪ J

Page 26: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Generic Compliant Algorithm and f -Extension for MSM

6: procedure Process-Edge(e,M,S, γ)

7:

8: (A, J)← a well-chosen augmenting pair for M

with A ⊆M ∪ S + e, w(A) ≥ (1 + γ)w(J)

9: M ← (M \ J) ∪A

10: S ← a well-chosen subset of (S \A) ∪ J

MWM alg A + submodular f → MSM alg Af (the f -extension of A)

Page 27: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Generic Compliant Algorithm and f -Extension for MSM

6: procedure Process-Edge(e,M,S, γ)

7: w(e)← f(M ∪ S + e)− f(M ∪ S)

8: (A, J)← a well-chosen augmenting pair for M

with A ⊆M ∪ S + e, w(A) ≥ (1 + γ)w(J)

9: M ← (M \ J) ∪A

10: S ← a well-chosen subset of (S \A) ∪ J

MWM alg A + submodular f → MSM alg Af (the f -extension of A)

Page 28: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Generic Compliant Algorithm and f -Extension for MSM

1: function Improve-Solution(σ,M0, γ)

2: M ← ∅, S ← ∅

3: foreach e ∈M0 in arbit order do w(e)← f(M +e)−f(M), M ←M+e

4: foreach e ∈ σ \M0 in the σ order do Process-Edge(e,M, S, γ)

5: return M

6: procedure Process-Edge(e,M,S, γ)

7: w(e)← f(M ∪ S + e)− f(M ∪ S)

8: (A, J)← a well-chosen augmenting pair for M

with A ⊆M ∪ S + e, w(A) ≥ (1 + γ)w(J)

9: M ← (M \ J) ∪A

10: S ← a well-chosen subset of (S \A) ∪ J

MWM alg A + submodular f → MSM alg Af (the f -extension of A)

Page 29: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Generic Compliant Algorithm and f -Extension for MSM

1: function Improve-Solution(σ,M0, γ)

2: M ← ∅, S ← ∅

3: foreach e ∈M0 in arbit order do w(e)← f(M +e)−f(M), M ←M+e

4: foreach e ∈ σ \M0 in the σ order do Process-Edge(e,M, S, γ)

5: return M

6: procedure Process-Edge(e,M,S, γ)

7: w(e)← f(M ∪ S + e)− f(M ∪ S)

8: (A, J)← a well-chosen augmenting pair for M

with A ⊆M ∪ S + e, w(A) ≥ (1 + γ)w(J)

9: M ← (M \ J) ∪A

10: S ← a well-chosen subset of (S \A) ∪ J

MWM alg A + submodular f → MSM alg Af (the f -extension of A)MWIS (arbitrary ground set E, independent sets I ⊆ 2E) + f → MSIS

Page 30: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Generalize: Submodular Maximization (MWIS, MSIS)

1: function Improve-Solution(σ, I0, γ)

2: I ← ∅, S ← ∅

3: foreach e ∈ I0 in arbit order do w(e)← f(I + e)− f(I), I ← I + e

4: foreach e ∈ σ \ I0 in the σ order do Process-Element(e, I, S, γ)

5: return I

6: procedure Process-Element(e, I, S, γ)

7: w(e)← f(I ∪ S + e)− f(I ∪ S)

8: (A, J)← a well-chosen augmenting pair for I

with A ⊆ I ∪ S + e, w(A) ≥ (1 + γ)w(J)

9: I ← (I \ J) ∪ A

10: S ← a well-chosen subset of (S \A) ∪ J

MWM alg A + submodular f → MSM alg Af (the f -extension of A)MWIS (arbitrary ground set E, independent sets I ⊆ 2E) + f → MSIS

Page 31: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Page 32: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Lemma 1: Let Ie, Se = values of I, S just before e arrives

Then Ie ∪ Se ⊇ x ∈ I1 : x ≺ e =: I1≺e (“≺”: precedes in stream)

Page 33: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Lemma 1: Let Ie, Se = values of I, S just before e arrives

Then Ie ∪ Se ⊇ x ∈ I1 : x ≺ e =: I1≺e (“≺”: precedes in stream)

So, f(I1e)− f(I1≺e) ≥ f(Ie ∪ Se + e)− f(Ie ∪ Se) (submodularity)

So, f(I1e)− f(I1≺e) = w(e) (definition of w)

Page 34: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Lemma 1: Let Ie, Se = values of I, S just before e arrives

Then Ie ∪ Se ⊇ x ∈ I1 : x ≺ e =: I1≺e (“≺”: precedes in stream)

So, f(I1e)− f(I1≺e) ≥ f(Ie ∪ Se + e)− f(Ie ∪ Se) (submodularity)

So, f(I1e)− f(I1≺e) = w(e) (definition of w)

Sum this over x ∈ I1 in stream order, telescope QED

Page 35: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Page 36: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Lemma 2: Let (Ae, Je) = augmenting pair chosen on reading e

Then w(Ae) ≥ (1 + γ)w(Je)

Page 37: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Lemma 2: Let (Ae, Je) = augmenting pair chosen on reading e

Then w(Ae) ≥ (1 + γ)w(Je) =⇒ (w(Ae)− w(Je))/γ ≥ w(Je)

Then w(Ae) ≥ (1 + γ)w(Je) =⇒ w(I1)/γ ≥∑e w(Je) (sum up)

Page 38: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Lemma 2: Let (Ae, Je) = augmenting pair chosen on reading e

Then w(Ae) ≥ (1 + γ)w(Je) =⇒ (w(Ae)− w(Je))/γ ≥ w(Je)

Then w(Ae) ≥ (1 + γ)w(Je) =⇒ w(I1)/γ ≥∑e w(Je) (sum up)

Each element in K was removed at some point

So, K ⊆ ⋃e Je =⇒ w(K) ≤∑

e w(Je) ≤ w(I1)/γ QED

Page 39: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Page 40: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Lemma 3: Similar in spirit: submodularity, telescoping sums...

But a more involved argument

Uses Lemma 1 and Lemma 2

Page 41: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Lemma 3: Similar in spirit: submodularity, telescoping sums...

But a more involved argument

Uses Lemma 1 and Lemma 2 ... uh, QED?

Page 42: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Page 43: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Conclusion: A gives Cγ-approx for MWIS, so w(I∗) ≤ Cγw(I1)

Page 44: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Analysis of MWIS Algorithm (One Pass)

Let I∗ = argmaxI∈I f(I), I1 = output at end of pass

Let K = e ∈ E : e was added to I \ I1

Lemma 1 w(I1) ≤ f(I1)

Lemma 2 w(K) ≤ w(I1)/γ

Lemma 3 f(I∗) ≤ (1/γ + 1)f(I1) + w(I∗)

Conclusion A is Cγ-approx =⇒ Af is (Cγ + 1 + 1/γ)-approx

Proof of Conclusion: A gives Cγ-approx for MWIS, so w(I∗) ≤ Cγw(I1)

So, f(I∗) ≤ (1/γ + 1)f(I1) + Cγw(I1) (by Lemma 3)

So, f(I∗) ≤ (1/γ + 1 + Cγ)f(I1) (by Lemma 1)

QED

Page 45: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Applications of the Paradigm

1. Zelke’s compliant algorithm for MWM has Cγ = 3 + 2γ + 1γ − γ

(1+γ)2

Take f -extension, set γ = 1 (optimal), get 7.75-approx to MSM

Page 46: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Applications of the Paradigm

1. Zelke’s compliant algorithm for MWM has Cγ = 3 + 2γ + 1γ − γ

(1+γ)2

Take f -extension, set γ = 1 (optimal), get 7.75-approx to MSM

2. McGregor gives multi-pass compliant MWM algorithm

Take f -extension, set γ = 1 for first pass, γ = ε/3 for other passes

Make passes until solution doesn’t improve much

Extend MWM analysis to MSM, get (3 + ε)-approx, O(ε−3) passes

Page 47: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Applications of the Paradigm

1. Zelke’s compliant algorithm for MWM has Cγ = 3 + 2γ + 1γ − γ

(1+γ)2

Take f -extension, set γ = 1 (optimal), get 7.75-approx to MSM

2. McGregor gives multi-pass compliant MWM algorithm

Take f -extension, set γ = 1 for first pass, γ = ε/3 for other passes

Make passes until solution doesn’t improve much

Extend MWM analysis to MSM, get (3 + ε)-approx, O(ε−3) passes

How good is a (3 + ε)-approx for MSM?

• Offline greedy: grow I ← I + e, maximizing f(I + e)

This gives 3-approx for MSM [Nemhauser-Wolsey’78]

Page 48: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Applications of the Paradigm

1. Zelke’s compliant algorithm for MWM has Cγ = 3 + 2γ + 1γ − γ

(1+γ)2

Take f -extension, set γ = 1 (optimal), get 7.75-approx to MSM

2. McGregor gives multi-pass compliant MWM algorithm

Take f -extension, set γ = 1 for first pass, γ = ε/3 for other passes

Make passes until solution doesn’t improve much

Extend MWM analysis to MSM, get (3 + ε)-approx, O(ε−3) passes

How good is a (3 + ε)-approx for MSM?

• Offline greedy: grow I ← I + e, maximizing f(I + e)

This gives 3-approx for MSM [Nemhauser-Wolsey’78]

• Recently: more sophisticated local search

Gives (2 + ε)-approx for MSM [Feldman-Naor-Schwartz-Ward’11]

Page 49: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Further Applications: Hypermatchings

Stream of hyperedges e1, e2, . . . , em ⊆ [n], each |ei| ≤ p

Hypermatching = subset of pairwise disjoint edges

Page 50: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Further Applications: Hypermatchings

Stream of hyperedges e1, e2, . . . , em ⊆ [n], each |ei| ≤ p

Hypermatching = subset of pairwise disjoint edges

Multi-pass MSM algorithm (compliant)

• Augment using only current edge e

• Use γ = 1 for first pass, γ = ε/(p+ 1) subsequently

• Make passes until solution doesn’t improve much

Results

• 4p-approx in one pass

• (p+ 1 + ε)-approx in O(ε−3) passes

Page 51: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Further Applications: Maximization Over Matroids

Stream of elements e1, e2, . . . , em from ground set E

Matroids (E, I1), . . . , (E, Ip), given by circuit oracles:

Given A ⊆ E, returns

, if A ∈ Iia circuit in A , otherwise

Independent sets, I =⋂

i Ii; size parameter n = maxI∈I |I |

Page 52: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Further Applications: Maximization Over Matroids

Stream of elements e1, e2, . . . , em from ground set E

Matroids (E, I1), . . . , (E, Ip), given by circuit oracles:

Given A ⊆ E, returns

, if A ∈ Iia circuit in A , otherwise

Independent sets, I =⋂

i Ii; size parameter n = maxI∈I |I |Recent MWIS algorithm (compliant) [Varadaraja’11]

• Augment using only current element e

• Remove J = x1, . . . , xp,where xi := lightest element in circuit formed in ith matroid

Page 53: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Further Applications: Maximization Over Matroids

Stream of elements e1, e2, . . . , em from ground set E

Independent sets, I =⋂

i Ii; size parameter n = maxI∈I |I |Recent MWIS algorithm (compliant) [Varadaraja’11]

• Augment using only current element e

• Remove J = x1, . . . , xp,where xi := lightest element in circuit formed in ith matroid

Page 54: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Further Applications: Maximization Over Matroids

Stream of elements e1, e2, . . . , em from ground set E

Independent sets, I =⋂

i Ii; size parameter n = maxI∈I |I |Recent MWIS algorithm (compliant) [Varadaraja’11]

• Augment using only current element e

• Remove J = x1, . . . , xp,where xi := lightest element in circuit formed in ith matroid

Follow paradigm: use f -extension of above algorithm

Results, using O(n) storage

• 4p-approx in one pass

• (p+ 1 + ε)-approx in O(ε−3) passes ∗

∗ Multi-pass analysis only works for partition matroids

Page 55: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Conclusions

• Identified framework (compliant algorithms) capturing several semi-

streaming algorithms for constrained maximization

• Using framework, extended algs from linear to submodular maximization

• Applied to (hyper)matchings, (intersection of) matroids

• Can smoothly interpolate approx factor between linear f and general

submodular f via curvature of f

Page 56: Submodular Maximization in a Data Streaming Settingrobi/Bertinoro2014_SublinearAlgorith… · Submodular Maximization in a Data Streaming Setting Amit Chakrabarti Dartmouth College

Conclusions

• Identified framework (compliant algorithms) capturing several semi-

streaming algorithms for constrained maximization

• Using framework, extended algs from linear to submodular maximization

• Applied to (hyper)matchings, (intersection of) matroids

• Can smoothly interpolate approx factor between linear f and general

submodular f via curvature of f

Open Problems

• Extend matroid multi-pass result beyond partition matroids

• Capture recent MWM algorithms that beat Zelke [Crouch-Stubbs’14]

• Lower bounds??? Is MSM harder to approximate than MWM?