Minimum cuts via Breadth-First search R. Ravi ravi@cmu.edu - - PowerPoint PPT Presentation

β–Ά
minimum cuts via breadth first search
SMART_READER_LITE
LIVE PREVIEW

Minimum cuts via Breadth-First search R. Ravi ravi@cmu.edu - - PowerPoint PPT Presentation

Minimum cuts via Breadth-First search R. Ravi ravi@cmu.edu Outline Minimum s-t cut in digraphs (folklore) Multiway-cuts in undirected graphs (folklore) Multiway-cuts in digraphs (Chekuri & Madan) Multicuts in undirected


slide-1
SLIDE 1

Minimum cuts via Breadth-First search

  • R. Ravi

ravi@cmu.edu

slide-2
SLIDE 2

Outline

  • Minimum s-t cut in digraphs (folklore)
  • Multiway-cuts in undirected graphs (folklore)
  • Multiway-cuts in digraphs (Chekuri & Madan)
  • Multicuts in undirected graphs (Calinescu, Karloff & Rabani)
slide-3
SLIDE 3

Minimum s-t cut problem

Given digraph G=(V,A), with nonnegative costs/capacities on arcs, a source s and a sink t, find minimum cost arc set blocking all s-t paths 𝑨"# = min ) π‘₯+, 𝑦+,

  • /012 +,

s.t. βˆ‘ 𝑦+,

  • +,∈#

β‰₯ 1 βˆ€ 𝑄 s-t paths 𝑦+,β‰₯ 0 βˆ€π‘£π‘€ arcs

slide-4
SLIDE 4

Compact LP formulation

𝑨"# = min ) π‘₯+, 𝑦+,

  • /012 +,

s.t. 𝑒, ≀ 𝑒+ + 𝑦+, βˆ€π‘£π‘€ 𝑒2 = 0 𝑒? β‰₯ 1 𝑦+,β‰₯ 0 βˆ€π‘£π‘€

slide-5
SLIDE 5

Djikstra’s algorithm to generate level cuts

  • Pick random cutting radius 𝑠 ∈ 0,1
  • Remove edges leaving the ball 𝐢(𝑑, 𝑠) of nodes contained within a radius
  • f 𝑠 around the source 𝑑 with respect to the distances 𝑦+, on arcs 𝑣𝑀 ∈

𝐡 𝐻

slide-6
SLIDE 6

Every level cut is an optimal cut!

  • Pick random cutting radius 𝑠 ∈ 0,1
  • Cut edges leaving the ball 𝐢(𝑑, 𝑠) of nodes contained within a radius
  • f 𝑠 around the source 𝑑 with respect to the distances 𝑦+, on arcs

𝑣𝑀 ∈ 𝐡 𝐻

  • Output πœ€I 𝐢 𝑑, 𝑠

≝ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒0 Claim: 𝑄 𝑣𝑀 ∈ 𝑑𝑣𝑒 ≀ 𝑦+, Corollary: 𝐹 π‘₯ 𝑑𝑣𝑒 ≀ βˆ‘ π‘₯+,𝑄 𝑣𝑀 ∈ 𝑑𝑣𝑒 ≀

+,

𝑨"# π‘₯ π‘›π‘—π‘œπ‘‘π‘£π‘’ ≀ min

ST,TS2 π‘₯ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒 ≀ 𝐹 π‘₯ 𝑑𝑣𝑒

≀ 𝑨"# ≀ π‘₯(π‘›π‘—π‘œπ‘‘π‘£π‘’)

slide-7
SLIDE 7

Outline

  • Minimum s-t cut in digraphs (folklore)
  • Multiway-cuts in undirected graphs (folklore)
  • Multiway-cuts in digraphs (Chekuri & Madan)
  • Multicuts in undirected graphs (Calinescu, Karloff & Rabani)
slide-8
SLIDE 8

Multiway cut in undirected graphs

Given undirected graph G=(V,E), with nonnegative costs on edges, a source set S = {𝑑U, … , 𝑑W} , find minimum cost edge set blocking all 𝑑X βˆ’ 𝑑

Z paths

𝑨[\]^ = min ) π‘₯+, 𝑦+,

  • T_`T2 +,

s.t. βˆ‘ 𝑦+,

  • +,∈#

β‰₯ 1 βˆ€ 𝑄 𝑑X βˆ’ 𝑑

Z paths

𝑦+, β‰₯ 0 βˆ€π‘£π‘€ edges

slide-9
SLIDE 9

Natural generalization of level cuts

  • Pick random cutting radius 𝑠 ∈ 0,

U d

  • Cut edges leaving the ball 𝐢(𝑑X, 𝑠) of nodes contained within a radius
  • f 𝑠 around the each source 𝑑X with respect to the distances 𝑦+, on

edges 𝑣𝑀 ∈ 𝐹 𝐻

  • Output all but the heaviest cut in βˆͺX πœ€ 𝐢 𝑑X, 𝑠

≝ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒0

slide-10
SLIDE 10

A 2-approximation algorithm

Claim: 𝑄 𝑣𝑀 ∈ 𝑑𝑣𝑒 ≀

fgh

i j

= 2𝑦+, Corollary: 𝐹 π‘₯ 𝑑𝑣𝑒 ≀ 2𝑨[\]^ min

ST,TS2 0 π‘₯ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒0 ≀ 1 βˆ’ 1

𝑙 𝐹 π‘₯ 𝑑𝑣𝑒 ≀ 2 1 βˆ’

U W 𝑨[\]^

≀ 2 1 βˆ’

U W π‘₯ min π‘›π‘£π‘šπ‘’π‘—π‘₯𝑏𝑧 𝑑𝑣𝑒

slide-11
SLIDE 11

Outline

  • Minimum s-t cut in digraphs (folklore)
  • Multiway-cuts in undirected graphs (folklore)
  • Multiway-cuts in digraphs (Chekuri & Madan)
  • Multicuts in undirected graphs (Calinescu, Karloff & Rabani)
slide-12
SLIDE 12

Multiway cuts in digraphs

Given directed graph G=(V,A), with nonnegative costs on arcs, a source set S = {𝑑U, … , 𝑑W} , find minimum cost arc set blocking all 𝑑X β†’ 𝑑

Z paths

for all ordered pairs of sources 𝑗 β‰  π‘˜. Note: Min multiway cut for S = {𝑑U, 𝑑d} is NP-hard so does not specialize to regular min-cut (Also need to cut all reverse paths)

slide-13
SLIDE 13

Multiway cuts in digraphs

Given directed graph G=(V,A), with nonnegative costs on arcs, a source set S = {𝑑U, … , 𝑑W} , find minimum cost arc set blocking all 𝑑X β†’ 𝑑

Z paths for all

  • rdered pairs of sources 𝑗 β‰  π‘˜.
  • In digraphs, node weights can be represented as arc weights by dividing

nodes

  • Generalizes node-weighted multiway cut in undirected graphs:

Given undirected graph G=(V,E), a source set S = {𝑑U, … , 𝑑W} , and nonnegative costs on non-source nodes, find minimum cost node set blocking all 𝑑X βˆ’ 𝑑

Z paths

  • In undirected graphs, node weights generalize edge weights by subdividing
slide-14
SLIDE 14

Multiway cuts in digraphs

Given directed graph G=(V,A), with nonnegative costs on arcs, a source set S = {𝑑U, … , 𝑑W} , find minimum cost arc set blocking all 𝑑X β†’ 𝑑

Z paths

for all ordered pairs of sources 𝑗 β‰  π‘˜. Theorem (Naor-Zosin, FOCS’97): 2-approximation for multiway cuts in digraphs by exactly rounding a relaxed multiway flow relaxation which is within factor 2 of natural relaxation

slide-15
SLIDE 15

Multiway cuts in digraphs (Chekuri & Madan, SODA β€˜16)

Theorem: Level-cutting algorithm on the above LP gives a 2- approximation 𝑨[\]^ = min ) π‘₯+, 𝑦+,

  • T_`T2 +,

s.t. βˆ‘ 𝑦+,

  • +,∈#

β‰₯ 1 βˆ€ 𝑄 𝑑X β†’ 𝑑

Z paths

𝑦+, β‰₯ 0 βˆ€π‘£π‘€ arcs

slide-16
SLIDE 16

Level cuts – Attempt 1

  • Pick random cutting radius 𝑠 ∈ 0,1
  • Cut arcs leaving the ball 𝐢(𝑑X, 𝑠) of nodes contained within a radius
  • f 𝑠 around the each source 𝑑X with respect to the distances 𝑦+, on

arcs 𝑣𝑀 ∈ 𝐡 𝐻

  • Output βˆͺX πœ€I 𝐢 𝑑X, 𝑠

≝ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒0 for a random 𝑠

  • Argue no arc is overused by more than factor 2 in expectation?
slide-17
SLIDE 17

Level cuts – Attempt 1 fails

slide-18
SLIDE 18

Level cuts of Chekuri and Madan

slide-19
SLIDE 19

A 2-approximation algorithm

For arc 𝑣𝑀 order sources so that 𝑒 𝑑U, 𝑣 ≀ 𝑒 𝑑d, 𝑣 ≀ β‹― ≀ 𝑒 𝑑W, 𝑣 Note that 𝑒 𝑒d, 𝑣 = 𝑒 𝑒w, 𝑣 = β‹― = 𝑒 𝑒W, 𝑣 = 𝑒 𝑑U, 𝑣 If one of these balls cut 𝑣𝑀 then all of them do Thus 𝑣𝑀 is either cut by the ball around 𝑒U or by the above set of balls. 𝑄 𝑣𝑀 ∈ 𝑑𝑣𝑒 ≀ 2𝑦+, min

ST,TS2 0 π‘₯ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒0 ≀ 2π‘₯ min π‘›π‘£π‘šπ‘’π‘—π‘₯𝑏𝑧 𝑑𝑣𝑒

slide-20
SLIDE 20

Outline

  • Minimum s-t cut in digraphs (folklore)
  • Multiway-cuts in undirected graphs (folklore)
  • Multiway-cuts in digraphs (Chekuri & Madan)
  • Multicuts in undirected graphs (Calinescu, Karloff & Rabani)
slide-21
SLIDE 21

Multicuts in undirected graphs

Given undirected graph G=(V,E), with nonnegative costs on edges, and source-sink pairs = {(𝑑U, 𝑒U), … , (𝑑W, 𝑒W)} , find minimum cost edge set blocking all 𝑑X βˆ’ 𝑒X paths 𝑨[\^ = min ) π‘₯+, 𝑦+,

  • T_`T2 +,

s.t. βˆ‘ 𝑦+,

  • +,∈#

β‰₯ 1 βˆ€ 𝑄 𝑑X βˆ’ 𝑒X paths 𝑦+, β‰₯ 0 βˆ€π‘£π‘€ edges

slide-22
SLIDE 22

Level cut algorithm – attempt 1

  • Pick random cutting radius 𝑠 ∈ 0,1
  • Cut edges leaving the ball 𝐢(𝑑X, 𝑠) of nodes contained within a radius
  • f 𝑠 around the each source 𝑑X with respect to the distances 𝑦+, on

edges 𝑣𝑀 ∈ 𝐹 𝐻

  • Output βˆͺX πœ€ 𝐢 𝑑X, 𝑠

≝ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒0

  • Argue no arc is overused by more than factor 2 in expectation?

Caution: LP has a Ξ© log 𝑙 integrality gap

slide-23
SLIDE 23

Level cuts of Calinescu, Karloff & Rabani

  • Sort source-sink pairs in random order
  • Pick random cutting radius 𝑠 ∈ 0,1
  • In sorted order, cut edges leaving the ball 𝐢(𝑑X, 𝑠) of nodes contained

within a radius of 𝑠 around the current source 𝑑X with respect to the distances 𝑦+, on edges 𝑣𝑀 ∈ 𝐹 𝐻

  • β€œProtect” edges both of whose ends are contained in earlier balls

from being cut later

  • Output the unprotected parts βˆͺX πœ€+ 𝐢 𝑑X, 𝑠

≝ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒0 for a random 𝑠

slide-24
SLIDE 24

Level cuts of Calinescu, Karloff & Rabani

slide-25
SLIDE 25

Level cuts of Calinescu, Karloff & Rabani

Is the solution feasible?

slide-26
SLIDE 26

Level cuts of Calinescu, Karloff & Rabani

Reduce cutting radius to half

slide-27
SLIDE 27

Level cuts of Calinescu, Karloff & Rabani

  • Sort source-sink pairs in random order
  • Pick random cutting radius 𝑠 ∈ 0,

U d

  • In sorted order, cut edges leaving the ball 𝐢(𝑑X, 𝑠) of nodes contained

within a radius of 𝑠 around the current source 𝑑X with respect to the distances 𝑦+, on edges 𝑣𝑀 ∈ 𝐹 𝐻

  • β€œProtect” edges both of whose ends are contained in earlier balls

from being cut later

  • Output the unprotected parts βˆͺX πœ€+ 𝐢 𝑑X, 𝑠

≝ π‘šπ‘“π‘€π‘“π‘š 𝑑𝑣𝑒0 for a random 𝑠

slide-28
SLIDE 28

A 4 ln k approximation algorithm

Fix an edge 𝑣𝑀. Order sources so that 𝑒 𝑑U, 𝑣 ≀ 𝑒 𝑑d, 𝑣 ≀ β‹― ≀ 𝑒 𝑑W, 𝑣 When does 𝑑X cut the edge from the 𝑣 side?

  • When no other 𝑑

Z for π‘˜ < 𝑗 occurs before it in the random order

  • And when 𝑣𝑀 lies in the correct range: r ∈ [𝑒 𝑑X, 𝑣 , 𝑒 𝑑X, 𝑣 + 𝑦+,]
slide-29
SLIDE 29

A 4 ln k approximation algorithm

When does 𝑑X cut the edge from the 𝑣 side?

  • When no other 𝑑

Z for π‘˜ < 𝑗 occurs before it in the random order

probability ≀

U X

  • And when 𝑣𝑀 lies in the correct range: r ∈ 𝑒 𝑑X, 𝑣 , 𝑒 𝑑X, 𝑣 + 𝑦+,

probability ≀

fgh

i j

𝑄 𝑣𝑀 ∈ 𝑑𝑣𝑒 = ) 𝑄(𝑣𝑀 𝑑𝑣𝑒 𝑐𝑧 𝑑X)

  • X

≀ 2 ) 1 𝑗

  • X

2𝑦+, ≀ 4 ln 𝑙

slide-30
SLIDE 30

A 4 ln k approximation algorithm

For the CKR cutting algorithm, 𝑄 𝑣𝑀 ∈ 𝑑𝑣𝑒 ≀ 4 ln 𝑙 Theorem (CKR): Expected cost of output multicut is 4 ln 𝑙 𝑨[\^

slide-31
SLIDE 31

Summary

  • If you need to cut a graph, write a distance

based linear program to round

  • Minimum s-t cut in digraphs (folklore)
  • Multiway-cuts in undirected graphs (folklore)
  • Multiway-cuts in digraphs (Chekuri & Madan)
  • Multicuts in undirected graphs (Calinescu, Karloff & Rabani)