28
Minimum Cut and Minimum k-Cut in Hypergraphs via Branching Contractions A joint work with Kyle Fox (UT-Dallas) and Debmalya Panigrahi (Duke) Fred Zhang (Harvard)

Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Minimum Cut and Minimum k-Cut in Hypergraphs via Branching Contractions

A joint work with Kyle Fox (UT-Dallas) and Debmalya Panigrahi (Duke)

Fred Zhang (Harvard)

Page 2: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Graphs and Cuts

Page 3: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Graphs and Cuts

Min-Cut: minimal set of edges whose removal disconnects the graph

Page 4: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Graphs and Cuts

Min-Cut: minimal set of edges whose removal disconnects the graph

Min-k-Cut: minimal set of edges whose removal disconnects the graph into k components

Page 5: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Hypergraphs and Cuts

Goal: Compute min-k-cut of a (weighted) hypergraph

Page 6: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Previous works (weighted setting)

Given a hypergraph with n vertices, m edges, and p = Σ |e|,

Page 7: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Min-Cut in time O(pn+n2λ) , where λ is the min-cut size [Klimmek-Wagner, '96] [Mak-Wong, ’00]

Previous works (weighted setting)

Given a hypergraph with n vertices, m edges, and p = Σ |e|,

Page 8: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Min-Cut in time O(pn+n2λ) , where λ is the min-cut size [Klimmek-Wagner, '96] [Mak-Wong, ’00]

Previous works (weighted setting)

Given a hypergraph with n vertices, m edges, and p = Σ |e|,

Min-k-Cut in time O(pn2k-1) for constant k [Chandrasekaran-Xu-Yu, ’18]

Page 9: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Min-Cut in time O(pn+n2λ) , where λ is the min-cut size [Klimmek-Wagner, '96] [Mak-Wong, ’00]

Previous works (weighted setting)

Given a hypergraph with n vertices, m edges, and p = Σ |e|,

Min-k-Cut in time O(pn2k-1) for constant k [Chandrasekaran-Xu-Yu, ’18]

Our main theorem

Hypergraph Min-k-Cut in time O(mn2(k-1)) for constant k

— Implies Min-Cut in time O(mn2)

— Improves upon [Chandrasekaran-Xu-Yu, ’18] for Min-k-Cut

Page 10: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Random Contraction for Graph Cuts

RandomizedMinCut(G) [Karger, SODA ’93]

Contract random edges until n = 2 Return the only cut

Page 11: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Random Contraction for Graph Cuts

RandomizedMinCut(G) [Karger, SODA ’93]

Contract random edges until n = 2 Return the only cut

— Success probability: Ω(1/n2). Run-time: O(n4)

— For hypergraphs

— uniform contraction doesn’t work [Kogan-Krauthgamer, ’15]

— by non-uniform contraction

• Min-Cut: O(pn2) [Ghaffari-Karger-Panigrahi, ’18]

• Min-k-Cut: O(pn2k-1) [Chandrasekaran-Xu-Yu, ’18]

Page 12: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Branching Contraction for Graph Cuts

RecursiveMinCut(G) [Karger-Stein, J. ACM ’96]

G’ ← Contract random edges until n/√2 vertices Repeat twice RecursiveMinCut(G’) Return the smaller cut from the 2 recursive calls

— Success probability: Ω(1/log n). Run-time: O(n2).

— Key challenge for hypergraphs: contracting large edges

— Conceptual contribution of our work:

a Karger-Stein-type algorithm for hypergraphs

Page 13: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Non-branching Contraction for Hypergraph k Cuts

Simple(H) Repeat Pick a random edge With probability , return Simple(H/e)

zn(e) = 1 −(n − |e |

k − 1 )(n − 1

k − 1)

1 − zn(e)

Let be the rejection probability

Page 14: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Non-branching Contraction for Hypergraph k Cuts

Simple(H) Repeat Pick a random edge With probability , return Simple(H/e)

zn(e) = 1 −(n − |e |

k − 1 )(n − 1

k − 1)

1 − zn(e)

Let be the rejection probability

— An alternative interpretation of [Chandrasekaran-Xu-Yu, ’18]

— To show: success probability is Ω(1/n2k-2) (for a fixed k cut) — Each run takes time O(pn) — Yields O(pn2k-1) time bound [Chandrasekaran-Xu-Yu, ’18]

Page 15: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Non-branching Contraction for Hypergraph k Cuts

Proof: Let qn denote the minimum success probability over all n-vertex hypergraphs.

Show by induction

qn ≥k

(n − 1k − 1) ( n

k − 1)

— Success case 1: picks an edge, rejects, then succeeds

— Success case 2: picks an edge not in the cut, contracts, then succeeds

Page 16: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Non-branching Contraction for Hypergraph k Cuts

— Success case 1: picks an edge, rejects, then succeeds

Happens with probability ( 1m ∑

e

zn(e)) qn

— Success case 2: picks an edge not in the cut, contracts, then succeeds.

Lemma: Let C be a minimum k-cut. We have

|C | ≤ ∑e

zn(e)

[Chandrasekaran-Xu-Yu, ’18]

Page 17: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

— Success case 2: picks an edge not in the cut, contracts, then succeeds.

Lemma: Let C be a minimum k-cut. We have

|C | ≤ ∑e

zn(e) [Chandrasekaran-Xu-Yu, ’18]

Non-branching Contraction for Hypergraph k Cuts

Page 18: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

— Success case 2: picks an edge not in the cut, contracts, then succeeds.

Lemma: Let C be a minimum k-cut. We have

|C | ≤ ∑e

zn(e) [Chandrasekaran-Xu-Yu, ’18]

Non-branching Contraction for Hypergraph k Cuts

Implies that a random edge is not in the cut w.p. at least

1 −1m ∑

e

zn(e)

Page 19: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

— Success case 2: picks an edge not in the cut, contracts, then succeeds.

Lemma: Let C be a minimum k-cut. We have

|C | ≤ ∑e

zn(e) [Chandrasekaran-Xu-Yu, ’18]

Non-branching Contraction for Hypergraph k Cuts

Implies that a random edge is not in the cut w.p. at least

1 −1m ∑

e

zn(e)

Contraction occurs and the algorithm then succeeds w.p.1

m − |C | ∑e

(1 − zn(e)) ⋅ qn−|e|+1

Page 20: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Non-branching Contraction for Hypergraph k Cuts

Adding case 1 and case 2

qn ≥ ( 1m ∑

e

zn(e)) qn

+(1 −1m ∑

e

zn(e)) 1m − |C | ∑

e

(1 − zn(e)) ⋅ qn−|e|+1

Solving the recurrence yields

qn ≥k

(n − 1k − 1) ( n

k − 1)

Page 21: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Branching Contraction for Hypergraph k Cuts

zn(e) = 1 −(n − |e |

k − 1 )(n − 1

k − 1)Let be the branching probability

Page 22: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Branching Contraction for Hypergraph k Cuts

Branching(H) Pick a random edge With probability , return Branching(H/e) Otherwise, Branching(H/e) and Branching(H) Return the smaller cut from the 2 recursive calls

zn(e) = 1 −(n − |e |

k − 1 )(n − 1

k − 1)

1 − zn(e)

Let be the branching probability

Page 23: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Branching Contraction for Hypergraph k Cuts

Branching(H) Pick a random edge With probability , return Branching(H/e) Otherwise, Branching(H/e) and Branching(H) Return the smaller cut from the 2 recursive calls

zn(e) = 1 −(n − |e |

k − 1 )(n − 1

k − 1)

1 − zn(e)

Let be the branching probability

Theorem For constant k, the success probability is Ω(1/log n)

Page 24: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Branching Contraction for Hypergraph k Cuts

Branching(H) Pick a random edge With probability , return Branching(H/e) Otherwise, Branching(H/e) and Branching(H) Return the smaller cut from the 2 recursive calls

zn(e) = 1 −(n − |e |

k − 1 )(n − 1

k − 1)

1 − zn(e)

Let be the branching probability

Theorem For constant k, the success probability is Ω(1/log n)

Proof: Branching(H/e) succeeds + Branching(H) is called and succeeds — both succeed

Page 25: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

Run-time Analysis: Random Computation Tree

— Each computation node is a hypergraph — Creating a node of n0 vertices takes time O(mn0)

Let S(n, n0) be the number of computation nodes of n0 vertices, starting with a hypergraph of n vertices

Lemma: For any n0

S(n, n0) ≤( n

k − 1) (n − 1k − 1)

( n0

k − 1) (n0 − 1k − 1 )

= O ( nn0 )

2k−2

By the lemma, runtime is bounded byn

∑n0=k

O ( nn0 )

2k−2

⋅ O(mn0) = O (mn2k−2)

Page 26: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

More Results

Page 27: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

More Results

Low-rank hypergraphs (rank = max edge size)

Theorem Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r.

Also follows a probabilistic branching contraction scheme

Page 28: Minimum Cut and Minimum k-Cut in Hypergraphs via Branching ... · Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r. Also follows a probabilistic branching contraction

More Results

Low-rank hypergraphs

Hedgegraphs [Ghaffari-Karger-Panigrahi, ’18]

(rank = max edge size)

Theorem Min-k-Cut in time O(nmax{r, 2k-2}) for hypergraphs of constant rank r.

Also follows a probabilistic branching contraction scheme

(span = number of connected components induced by the hedge)

Theorem Min-Hedge-k-Cut in time O(m2n(s+1)(k-1)) for hedgegraphs of constant span s.

Improves upon [Chandrasekaran-Xu-Yu, ’18] for k, s ≥ 2

Fred Zhang