All Rights Reserved © Alcatel-Lucent 2006, ##### Matthew Andrews, Alcatel-Lucent Bell Labs Princeton Approximation Workshop June 15, 2011 Edge-Disjoint.

Slides:



Advertisements
Similar presentations
Routing in Undirected Graphs with Constant Congestion Julia Chuzhoy Toyota Technological Institute at Chicago.
Advertisements

Cuts, Trees, and Electrical Flows Aleksander Mądry.
Vertex sparsifiers: New results from old techniques (and some open questions) Robert Krauthgamer (Weizmann Institute) Joint work with Matthias Englert,
Poly-Logarithmic Approximation for EDP with Congestion 2
Dynamic Graph Algorithms - I
All-or-Nothing Multicommodity Flow Chandra Chekuri Sanjeev Khanna Bruce Shepherd Bell Labs U. Penn Bell Labs.
Information Networks Graph Clustering Lecture 14.
Online Social Networks and Media. Graph partitioning The general problem – Input: a graph G=(V,E) edge (u,v) denotes similarity between u and v weighted.
Approximation Algorithms Chapter 5: k-center. Overview n Main issue: Parametric pruning –Technique for approximation algorithms n 2-approx. algorithm.
Hierarchical Decompositions for Congestion Minimization in Networks Harald Räcke 1.
Lectures on Network Flows
Routing and Treewidth (Recent Developments) Chandra Chekuri Univ. of Illinois, Urbana-Champaign.
Approximation Algorithms for Non-Uniform Buy-at-Bulk Network Design Problems Mohammad R. Salavatipour Department of Computing Science University of Alberta.
Graph Clustering. Why graph clustering is useful? Distance matrices are graphs  as useful as any other clustering Identification of communities in social.
Graph Sparsifiers by Edge-Connectivity and Random Spanning Trees Nick Harvey University of Waterloo Department of Combinatorics and Optimization Joint.
On Approximating the Average Distance Between Points Kfir Barhum, Oded Goldreich and Adi Shraibman Weizmann Institute of Science.
Sparsest Cut S S  G) = min |E(S, S)| |S| S µ V G = (V, E) c- balanced separator  G) = min |E(S, S)| |S| S µ V c |S| ¸ c ¢ |V| Both NP-hard.
A Constant Factor Approximation Algorithm for the Multicommodity Rent-or-Buy Problem Amit Kumar Anupam Gupta Tim Roughgarden Bell Labs CMU Cornell joint.
Network Design with (Dis)economies of Scale Lisa Zhang Joint with Matthew Andrews, Spyridon Antonakopoulos and Steve Fortune.
A general approximation technique for constrained forest problems Michael X. Goemans & David P. Williamson Presented by: Yonatan Elhanani & Yuval Cohen.
Sublinear Algorithms for Approximating Graph Parameters Dana Ron Tel-Aviv University.
Robust Network Design with Exponential Scenarios By: Rohit Khandekar Guy Kortsarz Vahab Mirrokni Mohammad Salavatipour.
Maximum Flows Lecture 4: Jan 19. Network transmission Given a directed graph G A source node s A sink node t Goal: To send as much information from s.
CISS Princeton, March Optimization via Communication Networks Matthew Andrews Alcatel-Lucent Bell Labs.
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Randomness in Computation and Communication Part 1: Randomized algorithms Lap Chi Lau CSE CUHK.
A General Approach to Online Network Optimization Problems Seffi Naor Computer Science Dept. Technion Haifa, Israel Joint work: Noga Alon, Yossi Azar,
CPSC 411, Fall 2008: Set 4 1 CPSC 411 Design and Analysis of Algorithms Set 4: Greedy Algorithms Prof. Jennifer Welch Fall 2008.
Packing Element-Disjoint Steiner Trees Mohammad R. Salavatipour Department of Computing Science University of Alberta Joint with Joseph Cheriyan Department.
Approximation Algorithms for Graph Routing Problems Julia Chuzhoy Toyota Technological Institute at Chicago.
Randomized Algorithms Morteza ZadiMoghaddam Amin Sayedi.
June 10, 2003STOC 2003 Optimal Oblivious Routing in Polynomial Time Harald Räcke Paderborn Edith Cohen AT&T Labs-Research Yossi Azar Amos Fiat Haim Kaplan.
All Rights Reserved © Alcatel-Lucent 2006, ##### Matthew Andrews Show-and-Tell April 20, 2010 Edge Disjoint Paths via Räcke Decompositions.
Graph Coalition Structure Generation Maria Polukarov University of Southampton Joint work with Tom Voice and Nick Jennings HUJI, 25 th September 2011.
Kernel Bounds for Structural Parameterizations of Pathwidth Bart M. P. Jansen Joint work with Hans L. Bodlaender & Stefan Kratsch July 6th 2012, SWAT 2012,
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Primal-Dual Algorithms for Connected Facility Location Chaitanya SwamyAmit Kumar Cornell University.
Graph Sparsifiers Nick Harvey Joint work with Isaac Fung TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A.
Approximation Algorithms
Data Structures & Algorithms Graphs
A deterministic near-linear time algorithm for finding minimum cuts in planar graphs Thank you, Steve, for presenting it for us!!! Parinya Chalermsook.
Data Structures and Algorithms in Parallel Computing Lecture 2.
Multicommodity flow, well-linked terminals and routing problems Chandra Chekuri Lucent Bell Labs Joint work with Sanjeev Khanna and Bruce Shepherd Mostly.
Orienteering and related problems: mini-survey and open problems Chandra Chekuri University of Illinois (UIUC)
Approximating the k Steiner Forest and Capacitated non preemptive dial a ride problems, with almost uniform weights Guy Kortsarz Joint work with Dinitz.
New algorithms for Disjoint Paths and Routing Problems
Julia Chuzhoy (TTI-C) Yury Makarychev (TTI-C) Aravindan Vijayaraghavan (Princeton) Yuan Zhou (CMU)
Complexity and Efficient Algorithms Group / Department of Computer Science Testing the Cluster Structure of Graphs Christian Sohler joint work with Artur.
Approximating Buy-at-Bulk and Shallow-Light k-Steiner Trees Mohammad T. Hajiaghayi (CMU) Guy Kortsarz (Rutgers) Mohammad R. Salavatipour (U. Alberta) Presented.
Lecture. Today Problem set 9 out (due next Thursday) Topics: –Complexity Theory –Optimization versus Decision Problems –P and NP –Efficient Verification.
Sketching complexity of graph cuts Alexandr Andoni joint work with: Robi Krauthgamer, David Woodruff.
Multiroute Flows & Node-weighted Network Design Chandra Chekuri Univ of Illinois, Urbana-Champaign Joint work with Alina Ene and Ali Vakilian.
New Algorithms for Disjoint Paths Problems Sanjeev Khanna University of Pennsylvania Joint work with Chandra Chekuri Bruce Shepherd.
TU/e Algorithms (2IL15) – Lecture 8 1 MAXIMUM FLOW (part II)
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
Approximating k-route cuts
A Polynomial-time Tree Decomposition for Minimizing Congestion
Chapter 5. Optimal Matchings
Algorithms for Routing Node-Disjoint Paths in Grids
Approximating k-route cuts
1.3 Modeling with exponentially many constr.
Planarity Testing.
CIS 700: “algorithms for Big Data”
Bart M. P. Jansen June 3rd 2016, Algorithms for Optimization Problems
Instructor: Shengyu Zhang
Graph Partitioning Problems
CSCI B609: “Foundations of Data Science”
Introduction Wireless Ad-Hoc Network
Sampling in Graphs: node sparsifiers
Embedding Metrics into Geometric Spaces
Presentation transcript:

All Rights Reserved © Alcatel-Lucent 2006, ##### Matthew Andrews, Alcatel-Lucent Bell Labs Princeton Approximation Workshop June 15, 2011 Edge-Disjoint Paths with Congestion

Edge Disjoint Paths (EDP) This talk –Routing on Edge-Disjoint Paths –Useful primitive for many industrial routing problems

Edge Disjoint Paths (EDP) Input –Graph G (M edges, N nodes); –A set of demands, (s i, t i ); Output –A subset of demands routed on edge-disjoint paths; –Maximize such a subset s t t s OPT = 1

Edge Disjoint Paths (EDP) Input –Graph G (M edges, N nodes); –A set of demands, (s i, t i ); Output –A subset of demands routed on edge-disjoint paths; –Maximize such a subset s t t s OPT = 1 NP-hard problem One of the first!! (Karp’s list)

Congestion Minimization Input –Graph G (M edges, N nodes); –A set of demands, (s i, t i ); Output –Route all demands; –Minimize max number of demand routes per edge. s t t s OPT = 2

Edge Disjoint Paths with Congestion (EDPwC) Input –Graph G (M edges, N nodes); –A set of demands, (s i, t i ); –Congestion parameter c; Output –A subset of demands routed such that max congestion  c –If ALG can route X/  demands with congestion c whenever OPT can route X demands with congestion 1 then ALG is an  -approx with congestion c s t t s

Known Results Undirected Graphs –EDP solvable in polytime if the number of demands is constant –Robertson-Seymour Directed Graphs –NP-hard even for 2 demands –Fortune-Hopcroft-Wyllie

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No log 0.5-  N - approx with congestion 1 –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No 1 - approx with congestion (log log N) 1-  –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –polylog(N) - approx with congestion poly(log log N) A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion?

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –log 61 (N)-approx with (log log N) 6 congestion A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion?

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –log 61 (N)-approx with (log log N) 6 congestion A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion? This talk

Other Known Results Planar Graphs –O(1) - approx with congestion 4 –Chekuri-Khanna-Shepherd All-or-Nothing Flow (fractional paths allowed) –polylog(N) - approx with congestion 1 –Chekuri-Khanna-Shepherd

Known Results (Directed Graphs) Positive –N 1/c - approx with congestion c –Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein Negative –No N Ω(1/c) - approx with congestion c –A-Zhang, Chuzhoy-Guruswami-Khanna-Talwar

EDPwC in Graphs with Short Paths Fractional routing –If we allow fractional paths, problem is a linear program Known result #1 –If fractional path length is polylog(N), can route with congestion loglog N –Why? –Use randomized rounding. Each edge is dependent on polylog(N) other edges –Apply Lovasz Local Lemma s t t s 1/2

Graph Expansion Out-degree –Let out(S) = set of edges with one endpoint in S –Abuse: out(S) = | out(S) | Expander –Graph G is an expander if out(S) / |S| is large whenever S is small

EDPwC in Expanders Known result #2 –EDP has polylog(N)-approx in expanders –e.g. Broder-Frieze-Upfal, Kolman-Scheideler –Even better, can connect polylog(N) fraction of ANY set of terminals using disjoint paths Why? –Using random walks, can connect any pair of terminals with paths of polylog(N) length –Produces good fractional solution –Round fractional solution via Lovasz Local Lemma

Rao-Zhou Known result #3 –(Rao-Zhou) polylog(N) –approx on disjoint paths if min-cut in graph has size polylog(N)

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –log 61 (N)-approx with (log log N) 6 congestion A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion?

Hardness of EDPwC Hardness Idea 1 –If routing is fixed then there is reduction from Max Independent Set

Hardness of EDPwC Hardness Idea 2 –Embed hardness construction into expander (high-girth!) –Terminals are close together (distance log 1/2 N ) –Each demand has only 1 short ( canonical ) path –Low congestion soln must use canonical paths –Routing component is removed –Use previous reduction from Max-Indpt-Set –Use product of regular expander (e.g. random graph) with Max-Indpt-Set example

Known Results (Undirected Graphs) Positive –N 1/2 - approx with congestion 1 Chekuri-Khanna-Shepherd –1-approx with congestion log n Raghavan-Thompson –N 1/c - approx with congestion c Azar-Regev, Baveja-Srinivasan, Kolliopoulos-Stein –log 61 (N)-approx with (log log N) 6 congestion A Negative –No log (1-  )/(c+1) N - approx with congestion c –A-Chuzhoy-Guruswami-Khanna-Talwar-Zhang Open Question: Is there a polylog(N)-approx with constant congestion?

Rao-Zhou Known result #3 –(Rao-Zhou) polylog(N) –approx on disjoint paths if min-cut in graph has size polylog(N)

Rao-Zhou Analysis Why? –(Khandekar-Rao-Vazirani) Can build expander on | T | terminals using polylog( | T | ) bipartite matchings

Rao-Zhou Analysis Application to EDPwC –Use max-flows to find matchings between terminals –How to bound congestion from max-flows ? (Max flows exist due to linkedness results of Chekuri-Khanna-Shepherd)

Partitioning –Randomly partition edges into polylog( | T | ) pieces –Solve max-flow in each piece –How do we know this is feasible? p-skeletons –(Karger sparsification) If min-cut in graph is large, all cuts are preserved in each component up to polylog( | T | ) factors –Can connect “enough” terminals using max-flow-min-cut thm Rao-Zhou Analysis

Build expanders –Use paths created in the previous phase to build expander on the terminals Route original demands –Now use standard polylog(N)-approx for routing in expanders Rao-Zhou Analysis

How to Attack General Case Obviously wrong approach –Solve EDPwC in expanders –Prove that every graph is an expander

So what else can we try? Divide and conquer? –Not all graphs have good expansion… –Can we partition any graph into subgraphs with good expansion? –Yes! –Use Räcke decomposition result expander

Räcke Decompositions Introduced for oblivious routing –w l (S) = # edges in S between two level l clusters –(Räcke) Can create log N levels s.t. for all small S in level l cluster U cap(S, U - S) ≥ w l +1 (S) / log N

Räcke Decompositions Introduced for oblivious routing –w l (S) = # edges in S between two level l clusters –(Räcke) Can create log N levels s.t. for all small S in level l cluster U cap(S, U - S) ≥ w l +1 (S) / log N Contract level l+1 clusters Get graph with good expansion

How to Attack General Case Different approach –Prove that every graph is an expander-of-expanders –Solve EDPwC in expanders-of-expanders ? Use Räcke decomposition result

Expanders-of-Expanders How to route in expander of expanders –Route recursively using expander routing? –Seems difficult –At each level we can route a 1/log N fraction of demands routed at higher level expander

Uniform Decomposition But do we need to recurse across all levels? –Suppose decomposition is uniform –For each cluster U either: –all subclusters S have out(S) ≤ log p N or –all subclusters S have out(S) ≥ log p N small large

Uniform Decomposition Critical clusters –Cluster U is critical if: –U is large –all subclusters S of U are small

Three Step Routing Step 1 –Shrink critical clusters to single nodes –All cuts are now large –Use Rao-Zhou

Three Step Routing Step 2 –Shrink small clusters to single nodes –Critical clusters now look like expanders –Route in critical clusters using expander routing

Three Step Routing Step 3 –Route across small clusters –Small clusters have polylog( N ) terminals –Using Rao-Zhou in small clusters gives poly( log log N ) congestion

Non-Uniform Result How can we handle non-uniform decompositions? –Basic idea: Ignore the non-uniform parts –…

Open Problems Can we lower congestion by going further down the Räcke hierarchy? Can we improve the hardness example via a hierarchical construction?

Three Step Routing Revisited Step 1 –Shrink critical clusters to single nodes –All cuts are now large –Use Rao-Zhou (incl Karger sparsification lemma) –i.e. partition edges in polylog(n) buckets using random sampling –All cuts are preserved (up to polylog(n) factors)

Three Step Routing Revisited Step 2 –Shrink small clusters to single nodes –Critical clusters now look like expanders –Route in critical clusters using expander routing

Three Step Routing Revisited Step 3 –Route across small clusters –Small clusters have polylog( N ) terminals –Using Rao-Zhou in small clusters gives poly( log log N ) congestion – But can we go further down the hierarchy to get better congestion?

Recursive Routing Small cluster routing –New defn for critical clusters based on poly(log log n) threshold –Randomly partition edges in poly(log log n) buckets –Problem!! - Could have poly(n) critical clusters Small cluster outdegree polylog(n) Outdegree poly( loglog(n)) New critical cluster

Hardness Revisited Could we improve hardness via a hierarchical example? –Original hardness result created on expander –Hardness for congestion cannot be larger than log (diam) = log log N

Hardness Revisited Could we improve hardness via a hierarchical example? –Original hardness result created on expander –Hardness for congestion cannot be larger than log (diam) = log log N –Can we improve hardness by considering “hierarchical expander” Expander

Hierarchical Decompositions What can uniform decompositions look like? Key parameters –  l = Outdegree of level l cluster –Number of subclusters of level l cluster –Diameter of level l cluster when all subclusters are contracted

Hierarchical Decompositions Square mesh –  l = Outdegree of level l cluster = 4 x 2 l –Number of subclusters of level l cluster = 4 –Diameter of level l cluster = 2

Hierarchical Decompositions Hierarchy of Expanders –Suppose we want unique short path at each level –  l = Outdegree of level l cluster = (  l-1 ) d+1 / d –Number of subclusters of level l cluster = (  l-1 ) d –Diameter of level l cluster = d –Polynomial relationship between outdegree and size of cluster –Shortest path between s and t remains ≤ log N Expander

Hierarchical Decompositions Can we have the following in any natural decomposition? Can we handle this situation if it does occur? Better sparsification result? Outdegree of level l cluster  l  l-1  l-2  l-3 :  2  1 Number of subclusters in level l cluster exp(  l ) exp(  l-1 ) exp(  l-2 ) exp(  l-3 ) : exp(  2 ) exp(  1 )

Hierarchical Decompositions For hard examples –If outdegree of cluster is small, doesn’t make sense for the cluster to be large –Either all terminals lie within the cluster –Or most of the cluster is not useful for routing –Can we formalize this notion? Small cluster outdegree polylog(n)

Thank you

Non-Uniform Result What could a non-uniform decomposition look like? –Set of critical clusters joined by trees critical cluster

Non-Uniform Result What could a non-uniform decomposition look like? –Set of critical clusters joined by trees Not an acceptable cluster

Non-Uniform Result What could a non-uniform decomposition look like? –Set of critical clusters joined by trees

Non-Uniform Result What could a non-uniform decomposition look like? –Set of critical clusters joined by trees

Non-Uniform Result How do we deal with nodes outside critical cluster? –Replace each node in tree by an expander

Non-Uniform Result How do we deal with nodes outside critical cluster? –Use expanders to route on tree using low congestion paths

Non-Uniform Result –Use paths to join up critical clusters –Key property #1: all tree nodes are gone –Key property #2: all cuts are preserved (more or less) Use analysis for uniform decompositions!!

Non-Uniform Result But what about general non-uniform decompositions? –H = nodes that aren’t in a critical cluster H critical cluster

Non-Uniform Result But what about general non-uniform decompositions? –H = nodes that aren’t in a critical cluster H

Non-Uniform Result –Use a Räcke lemma to find small clusters around outside of H –Let H’ be the subset of H that is not in any of these clusters –|out( H’ )| ≤ |out( H )| / 2 –Can do this at most log(N) times H H’

Non-Uniform Result –Repeat log N times –Use small clusters to grow paths of logarithmic length that connect up critical clusters H

critical cluster Non-Uniform Result –So now we have critical clusters joined by paths of logarithmic length (just as in the “tree” case) –We are done… H