Approximat Maximum Flow in Undirctd Ntworks by Christiano, Klnr, Madry, Spilmann, Tng (STOC 2011) Kurt Mhlhorn Max Planck Institut for Informatics and Saarland Univrsity Sptmbr 28, 2011
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Th Rsult G = (V, E) undirctd graph, s sourc, t sink. u : E R 0, dg capacitis ɛ > 0 Can comput (1 ɛ)-approximat maximum flow in tim Õ(mn1/3 ɛ 11/3 ). approximat minimum cut in similar tim bound prvious bst: Õ(m nɛ 1 ) by Goldbrg and Rao (98) uss lctrical flows Kurt Mhlhorn 2/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Convrsion to Intgral Capacitis B = max P is s-t path min P u max bottlnck path in tim O(m + n log n) B max flow mb. rplac u by min(u, mb). rmoving all dgs of capacity lss than ɛb/(2m) changs max-flow by at most ɛb/2. rplac u by u ɛb/2m intgral capacitis in [1, 2m 2 /ɛ] Kurt Mhlhorn 3/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt A High-Lvl Viw of th Algorithm F = valu of maximum flow. Do binary sarch on [1, 2m 2 /ɛ]. Lt F b th currnt valu of th sarch. Hav a subroutin Flow(F) which ithr finds a flow of valu F that almost satisfis th capacity constraints or fails. if F F, it is guarantd to rturn a flow. Subroutin is ralizd via a low-lvl subroutin flow(f, w), which w discuss first. Hr, w is a wight function on th dgs. Kurt Mhlhorn 4/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Elctrical Flows and Capacitis Rsistancs can simulat capacitis Lt Q b a maximum flow. Orint dgs in th dirction of th flow, sort th graph topologically, and st For = (u, v), st p v = numbr of nods aftr v in ordring. Thn Q is th rsulting flow. R = Q /. Kurt Mhlhorn 5/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt An Obsrvation St R = 1/u 2 and lt F F. Lt Q b an lctrical flow of valu F. Thn (Q /u ) 2 = R Q 2 R (Q) 2 = (Q/u ) 2 m. Dfin th congstion of as cong := Q /u. Thn, 1 m cong 2 1 and max cong m. Kurt Mhlhorn 6/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Th Subroutin flow(f, w) 1. St R = (w + ɛw /m)/u 2, whr W = w. 2. Lt Q b an lctrical flow of valu F. 3. If R Q 2 > (1 + ɛ)w dclar failur. 4. rturn Q. Proprtis If F F, flow dos not fail If flow succds, w W cong 1 + ɛ and max cong ρ := (1 + ɛ)m. ɛ Kurt Mhlhorn 7/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Proof St R = (w + ɛw /m)/u 2, whr W = w. Lt Q b an lctrical flow of valu F. If F F thn R Q 2 R (Q ) 2 = (w + ɛw ( ) Q 2 m ) (1 + ɛ)w. u If thn (w + ɛw m ) ( Q u w W cong2 ) 2 = R Q 2 (1 + ɛ)w 1 + ɛ and max cong (1 + ɛ)m. ɛ Kurt Mhlhorn 8/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt From avrag squard congstion to avrag congstion w cong = w 1/2 w 1/2 cong ( ) 1/2 ( w w cong 2 ) 1/2 W 1/2 ((1 + ɛ)w ) 1/2 (1 + ɛ)w. Kurt Mhlhorn 9/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt From flow to Flow Flow(F) st w (1) = 1 for all ; for i = 1 T do {T = O(m 1/2 ɛ 5/2 suffics} Q (i) = flow(f, w); {if call fails, fail} = Q (i) /u for all = w (i) (1 + ɛcong (i) /ρ) for all ; cong (i) w (i+1) nd for rturn Q := 1 T 1 i T Q (i) Kurt Mhlhorn 10/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Proprtis of Flow Q is a flow of valu F and if F F, Q xists. Q = 1 T 1 i T Q (i) = 1 T 1 i T u cong (i) = u cong W (i+1) = w (i) (1 + ɛcong (i) /ρ) (1 + ɛ(1 + ɛ)/ρ)w (i) W (T +1) xp(((1 + ɛ)ɛ/ρ)t ) m Kurt Mhlhorn 11/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Proprtis of Flow w (i+1) = w (i) (1 + ɛcong (i) /ρ) w (i) xp((1 ɛ)ɛcong (i) /ρ) (T +1) w xp((1 ɛ)ɛcong /ρ)t ) cong ((1 ɛ)ɛcong /ρ)t ln m + (ɛ(1 + ɛ)/ρ)t ρ ln m (1 ɛ)ɛt + 1 + ɛ 1 ɛ ɛ (1 ɛ) + 1 + ɛ 1 ɛ 1 + 4ɛ for T = (ρ ln m)/ɛ 2 = Õ(m1/2 ɛ 5/2 ) Kurt Mhlhorn 12/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Putting it togthr Õ(m 1/2 ɛ 5/2 ) itrations suffic. In ach itration w nd to solv a SSD systm and do linar xtra work. Thus an itration runs in tim Õ(m log 1/ɛ). Total running tim is Õ(m3/2 ɛ 5/2 ). But, I promisd Õ(mn1/3 ɛ 11/3 ). This is rachd in two stps: stp on rducs to Õ(m4/3 ɛ 3 ), and stp two rducs to Õ(mn1/3 ɛ 11/3 ). (Kargr (98) and Bncur/Kargr (02)) Kurt Mhlhorn 13/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Th First Stp Lt H b a hug numbr; actually H = (m ln m) 1/3 /ɛ. What dos cong H imply? Q /u H and hnc u Q /H F/H. Thus u is tiny. W can afford to dlt ɛh dgs with hug congstion without sacrificing th approximation guarant. Modification of flow: if flow succds, i.., E(Q) (1 + ɛ)w, and thr is an dg with hug congstion, dlt th dg and continu without th dg. Obsrv, that chang allows us to rplac ρ by H in th analysis. Kurt Mhlhorn 14/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Dlting Hug Edgs If flow succds, w hav E(Q) (1 + ɛ)w. If has hug congstion, r Q 2 ɛw m ( Q u ) 2 ɛh2 ɛh2 (1 + ɛ)w (1 + ɛ)m (1 + ɛ)m E(Q). Lt β = ɛh 2 /((1 + ɛ)m). If has hug congstion, accounts for a β fraction of th nrgy of th flow. Dltion of a hug dg forcs th nrgy of th flow to incras by a factor 1/(1 β). W hav an uppr bound on th final nrgy, namly (1 + ɛ)w (T +1). It is not too hard, to driv a lowr bound on th nrgy of th first flow. Putting things togthr, w obtain a bound on th numbr of hug dgs. Kurt Mhlhorn 15/16
Th Rsult High-Lvl Viw Small Obsrvations Th Subroutins Improvmnt Dlting a Hug Edg II Dltion of a hug dg incrass th nrgy of th flow by a factor 1/(1 β). Lt p b th lctrical potntials for flow of valu 1/R ff. Thn p s = 1 and p t = 0. Enrgy of this flow is qual to 1/R ff. 1 R ff = inf q; q s=1 q t =0 = uv E uv E\ (p u p v ) 2 (q u q v ) 2 r uv uv E\ (p u p v ) 2 r uv r uv 2 /r (1 β) 1 R ff Thus, E(Q ) = F 2 R ff 1 1 β F 2 R ff = E(Q). Kurt Mhlhorn 16/16