Approximating Graph Spanners

Similar documents
On the Locality of Distributed Sparse Spanner Constructions

Distributed Distance-Bounded Network Design Through Distributed Convex Programming

Kernelization Lower Bounds: A Brief History

An Overview on Compact Routing

Steiner Transitive-Closure Spanners of Low-Dimensional Posets

CMPUT 675: Approximation Algorithms Fall 2014

Distributed Approximate Single-Source Shortest Paths

Proving lower bounds in the LOCAL model. Juho Hirvonen, IRIF, CNRS, and Université Paris Diderot

Distributed primal-dual approximation algorithms for network design problems

Collective Tree Spanners of Unit Disk Graphs with Applications to Compact and Low Delay Routing Labeling Schemes. F.F. Dragan

Sparse Fault-Tolerant BFS Trees. Merav Parter and David Peleg Weizmann Institute Of Science BIU-CS Colloquium

Fault-Tolerant Spanners: Better and Simpler

Scribes: Po-Hsuan Wei, William Kuzmaul Editor: Kevin Wu Date: October 18, 2016

FPT hardness for Clique and Set Cover with super exponential time in k

Approximating Minimum-Power Degree and Connectivity Problems

Light Spanners. 1 Introduction. Michael Elkin Ofer Neiman Shay Solomon

Lecture 20: Course summary and open problems. 1 Tools, theorems and related subjects

Fault-Tolerant Spanners for General Graphs

Topic: Balanced Cut, Sparsest Cut, and Metric Embeddings Date: 3/21/2007

Finding Large Induced Subgraphs

16.1 Min-Cut as an LP

On the Positive-Negative Partial Set Cover. Problem

Geometric Problems in Moderate Dimensions

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 17: Combinatorial Problems as Linear Programs III. Instructor: Shaddin Dughmi

New algorithms for Disjoint Paths and Routing Problems

On the Fixed Cost k-flow Problem and related problems

Improved Approximating Algorithms for Directed Steiner Forest

Approximating connectivity augmentation problems

The Densest k-subhypergraph Problem

Approximating maximum satisfiable subsystems of linear equations of bounded width

Non-Uniform Graph Partitioning

Bhaskar DasGupta. March 28, 2016

Lower Bounds for Dynamic Connectivity (2004; Pǎtraşcu, Demaine)

Welfare Maximization with Friends-of-Friends Network Externalities

Spanners and emulators with sublinear distance errors

On Fixed Cost k-flow Problems

On subexponential running times for approximating directed Steiner tree and related problems

On the hardness of losing width

Transactions on Algorithms. Two-stage Robust Network Design with Exponential Scenarios

Label Cover Algorithms via the Log-Density Threshold

arxiv: v1 [cs.cc] 27 Feb 2011

Notes 6 : First and second moment methods

Order of Authors: Guy Kortsarz, Ph. D.; Guy Kortsarz, Ph. D.; Vahab Mirrokni, Ph. D.; Zeev Nutov, Ph. D.; Elena Tsanko, M. Sc.

Distributed Deterministic Graph Coloring

Finite Metric Spaces & Their Embeddings: Introduction and Basic Tools

The maximum edge-disjoint paths problem in complete graphs

A 1.8 approximation algorithm for augmenting edge-connectivity of a graph from 1 to 2

The 4/3 Additive Spanner Exponent Is Tight

Project Summary. Approximating Network Design Problems on Directed and Undirected Graphs

Approximation algorithms for cycle packing problems

Approximability of Packing Disjoint Cycles

Approximating connectivity augmentation problems

Dual fitting approximation for Set Cover, and Primal Dual approximation for Set Cover

Increasing the Span of Stars

Approximating minimum cost connectivity problems

An Improved Approximation Algorithm for Requirement Cut

Prize-collecting Survivable Network Design in Node-weighted Graphs. Chandra Chekuri Alina Ene Ali Vakilian

ABHELSINKI UNIVERSITY OF TECHNOLOGY

On the hardness of losing width

Dominating Set. Chapter 7

On Notions of Distortion and an Almost Minimum Spanning Tree with Constant Average Distortion

Cutting Plane Methods II

Graph Sparsifiers. Smaller graph that (approximately) preserves the values of some set of graph parameters. Graph Sparsification

Capacitated Network Design on Undirected Graphs

Lecture 6: September 22

Part V. Matchings. Matching. 19 Augmenting Paths for Matchings. 18 Bipartite Matching via Flows

Complexity Theory of Polynomial-Time Problems

APPROXIMATING MAXIMUM SUBGRAPHS WITHOUT SHORT CYCLES

CS675: Convex and Combinatorial Optimization Fall 2014 Combinatorial Problems as Linear Programs. Instructor: Shaddin Dughmi

Approximating Longest Directed Path

The Generalized Regenerator Location Problem

3.4 Relaxations and bounds

Approximating some network design problems with node costs

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

High Dimensional Geometry, Curse of Dimensionality, Dimension Reduction

Approximation Algorithms and Hardness of Approximation. IPM, Jan Mohammad R. Salavatipour Department of Computing Science University of Alberta

Discrete Optimization 2010 Lecture 2 Matroids & Shortest Paths

Hardness of MST Construction

Approximating Minimum-Power Edge-Covers and 2, 3-Connectivity

Constant Arboricity Spectral Sparsifiers

Monotone Submodular Maximization over a Matroid

Multicriteria approximation through decomposition

Graph Sparsifiers: A Survey

On the approximability of some degree-constrained subgraph problems

Lecture Notes 4. Issued 8 March 2018

A 1.8 approximation algorithm for augmenting edge-connectivity of a graph from 1 to 2

The Polymatroid Steiner Problems

Iterative Rounding and Relaxation

Efficient Primal- Dual Graph Algorithms for Map Reduce

6.889 Lecture 4: Single-Source Shortest Paths

Data Structures in Java

Hanna Furmańczyk EQUITABLE COLORING OF GRAPH PRODUCTS

LP-relaxations for Tree Augmentation

Balanced Allocation Through Random Walk

AN IMPLICIT COVER PROBLEM IN WILD POPULATION STUDY

Lecture 10 February 4, 2013

PCPs and Inapproximability Gap-producing and Gap-Preserving Reductions. My T. Thai

A An Overview of Complexity Theory for the Algorithm Designer

Iterative rounding approximation algorithms for degree-bounded node-connectivity network design

arxiv: v1 [cs.ds] 20 Nov 2016

Transcription:

Approximating Graph Spanners Michael Dinitz Johns Hopkins University Joint work with combinations of Robert Krauthgamer (Weizmann), Eden Chlamtáč (Ben Gurion), Ran Raz (Weizmann), Guy Kortsarz (Rutgers-Camden) 1

Graph Spanners 2

Graph Spanners Graph G = (V, E) 2

Graph Spanners Graph G = (V, E) Can we compress the graph while preserving distances? 2

Graph Spanners Graph G = (V, E) Can we compress the graph while preserving distances? k-spanner: subgraph G in which d G (u,v) k d G (u,v) for all u,v V 2

Graph Spanners Graph G = (V, E) Can we compress the graph while preserving distances? Stretch k-spanner: subgraph G in which d G (u,v) k d G (u,v) for all u,v V 2

Graph Spanners Graph G = (V, E) Can we compress the graph while preserving distances? Stretch k-spanner: subgraph G in which d G (u,v) k d G (u,v) for all u,v V 2

History First developed in late 80 s for distributed computing: Peleg-Schaffer 89, Peleg-Ullman 89 Many applications: Distance oracles / compact routing Property testing Preprocessing approximation algorithms Maximizing influence spread in social networks Biomedical image segmentation Many papers 3

Fundamental Tradeoff Theorem [ADDJS 93]: For all k 1, every graph G has a (2k-1)-spanner with at most n 1+1/k edges 4

Fundamental Tradeoff Theorem [ADDJS 93]: For all k 1, every graph G has a (2k-1)-spanner with at most n 1+1/k edges Very simple greedy algorithm Tight (assuming Erdős girth conjecture) Lots of followup work extending tradeoff to weight, diameter, hop count, and proving stronger/different tradeoffs for special classes 4

What Else? 5

What Else? Great! Tradeoff means applications using spanners can always find sparse spanners 5

What Else? Great! Tradeoff means applications using spanners can always find sparse spanners Not so fast 5

What Else? Great! Tradeoff means applications using spanners can always find sparse spanners Not so fast Tradeoffs don t always exist (2- spanner, directed, max degree) 5

What Else? Great! Tradeoff means applications using spanners can always find sparse spanners Not so fast Tradeoffs don t always exist (2- spanner, directed, max degree) Even if they do, still want to find best spanner 5

Optimization 6

Optimization Given graph G and value k, can we find the best k-spanner? 6

Optimization Given graph G and value k, can we find the best k-spanner? Best : Minimum number of edges Minimum total weight Minimum max degree 6

Optimization Given graph G and value k, can we find the best k-spanner? Best : Minimum number of edges Minimum total weight Minimum max degree This talk: some results, some open questions Still much to do! 6

Basic k-spanner 7

Basic k-spanner Most basic version: given undirected G, integer k, find k-spanner with minimum # edges 7

Basic k-spanner Most basic version: given undirected G, integer k, find k-spanner with minimum # edges k = 2: Tight O(log n)-approximation [Kortsarz-Peleg 92] k 3: Basic tradeoff gives O(n 2/(k+1) )-approximation (odd k) or O(n 2/k )-approximation (even k) k = 3: Õ(n 1/3 )-approximation [BBMRY 11] 7

Basic k-spanner Most basic version: given undirected G, integer k, find k-spanner with minimum # edges k = 2: Tight O(log n)-approximation [Kortsarz-Peleg 92] k 3: Basic tradeoff gives O(n 2/(k+1) )-approximation (odd k) or O(n 2/k )-approximation (even k) k = 3: Õ(n 1/3 )-approximation [BBMRY 11] Open Question: is it possible to beat the ADDJS bound for stretch values larger than 3? 7

Strong Hardness Can we hope for an O(log n)-approx? 8

Strong Hardness Can we hope for an O(log n)-approx? Theorem [D-Kortsarz-Raz ICALP 12]:! There is no polynomial-time algorithm that can approximate Basic k-spanner better than 2 (log n)^(1-ε) / k unless NP BPTIME(n polylog(n) ) 8

Techniques for Hardness 9

Techniques for Hardness [Elkin-Peleg ICALP 00] framework: Label Cover Label Cover with girth k Basic k-spanner 9

Techniques for Hardness [Elkin-Peleg ICALP 00] framework: Label Cover Label Cover with girth k Basic k-spanner Second reduction straightforward: how to do first? 9

Techniques for Hardness [Elkin-Peleg ICALP 00] framework: Label Cover Label Cover with girth k Basic k-spanner Second reduction straightforward: how to do first? Key idea: random subsampling 9

Techniques for Hardness [Elkin-Peleg ICALP 00] framework: Label Cover Label Cover with girth k Basic k-spanner Second reduction straightforward: how to do first? Key idea: random subsampling 9

Techniques for Hardness [Elkin-Peleg ICALP 00] framework: Label Cover Label Cover with girth k Basic k-spanner Second reduction straightforward: how to do first? Key idea: random subsampling Takeaway: hardness degree Improvement over parallel repetition: apply repetition, then sample Same hardness, smaller degree/fewer edges 9

Directed Spanners 10

Directed Spanners No tradeoff possible 10

Directed Spanners No tradeoff possible Hard to approximate better than 2 (log n)^(1-ε) [Elkin-Peleg STACS 00] 10

Directed Spanners No tradeoff possible Hard to approximate better than 2 (log n)^(1-ε) [Elkin-Peleg STACS 00] Upper bounds: Õ(n 1-1/k ) [BGJRW SODA 09] Õ(n 2/3 ) [D-Krauthgamer STOC 11] Õ(n 1/2 ) [BBMRY ICALP 11] 10

Directed Spanners No tradeoff possible Hard to approximate better than 2 (log n)^(1-ε) [Elkin-Peleg STACS 00] Upper bounds: Õ(n 1-1/k ) [BGJRW SODA 09] Õ(n 2/3 ) [D-Krauthgamer STOC 11] Õ(n 1/2 ) [BBMRY ICALP 11] Stretch 3: Õ(n 1/2 ) [DK STOC 11], Õ(n 1/3 ) [BBMRY ICALP 11] 10

High-Level Framework [BGJRW 09] k=3 u v 11

High-Level Framework [BGJRW 09] k=3 u v N(u,v) = {w : stretch-k u-v path containing w} 11

High-Level Framework [BGJRW 09] k=3 u v Local Neighborhood N(u,v) = {w : stretch-k u-v path containing w} 11

High-Level Framework [BGJRW 09] k=3 u v Local Neighborhood N(u,v) = {w : stretch-k u-v path containing w} 11

High-Level Framework [BGJRW 09] k=3 u v Local Neighborhood N(u,v) = {w : stretch-k u-v path containing w} Two algorithms: one for small N(u,v), one for large 11

Small N(u,v) 12

Small N(u,v) Linear Program [DK 11]: 12

Small N(u,v) Linear Program [DK 11]: min X x e e2ex s.t. P 2P u,v :e2p X f P apple x e 8(u, v) 2 E, 8e 2 E f P 1 8(u, v) 2 E P 2P u,v x e 0 8e 2 E f P 0 8(u, v) 2 E, 8P 2P u,v 12

Small N(u,v) Linear Program [DK 11]: Stretch k u-v paths min X x e e2ex s.t. P 2P u,v :e2p X f P apple x e 8(u, v) 2 E, 8e 2 E f P 1 8(u, v) 2 E P 2P u,v x e 0 8e 2 E f P 0 8(u, v) 2 E, 8P 2P u,v 12

Small N(u,v) Linear Program [DK 11]: Stretch k u-v paths min X x e e2ex s.t. P 2P u,v :e2p X f P apple x e 8(u, v) 2 E, 8e 2 E f P 1 8(u, v) 2 E P 2P u,v x e 0 8e 2 E f P 0 8(u, v) 2 E, 8P 2P u,v Take e with probability t*xe [BBRMY 11]: spans all (u,v) where N(u,v) t Analysis: union over all cuts 12

Small N(u,v) Linear Program [DK 11]: Stretch k u-v paths min X x e e2ex s.t. P 2P u,v :e2p X f P apple x e 8(u, v) 2 E, 8e 2 E f P 1 8(u, v) 2 E P 2P u,v x e 0 8e 2 E f P 0 8(u, v) 2 E, 8P 2P u,v Take e with probability t*xe [BBRMY 11]: spans all (u,v) where N(u,v) t Analysis: union over all cuts Improves over threshold rounding [DK 11] 12

Large N(u,v) 13

Large N(u,v) β times: randomly choose w, build shortest-path in- and out-arborescences If w N(u,v) we win 13

Large N(u,v) β times: randomly choose w, build shortest-path in- and out-arborescences If w N(u,v) we win u v 13

Large N(u,v) β times: randomly choose w, build shortest-path in- and out-arborescences If w N(u,v) we win u w v 13

Large N(u,v) β times: randomly choose w, build shortest-path in- and out-arborescences If w N(u,v) we win u w v 13

Large N(u,v) β times: randomly choose w, build shortest-path in- and out-arborescences If w N(u,v) we win u w v If N(u,v) n/β, span (u,v) w.h.p. 13

Large N(u,v) β times: randomly choose w, build shortest-path in- and out-arborescences If w N(u,v) we win u w v If N(u,v) n/β, span (u,v) w.h.p. Cost at most β*2n O(β * OPT) 13

Combined 14

Combined Tradeoff between LP rounding and arborescence sampling: rounding for N(u,v) n, arborescence sampling for N(u,v) n Õ(n 1/2 )-approx 14

Combined Tradeoff between LP rounding and arborescence sampling: rounding for N(u,v) n, arborescence sampling for N(u,v) n Õ(n 1/2 )-approx Stretch 3: LP rounding to to handle N(u,v) t with cost only O(t 1/2 ) O(n 1/2 ) by t=n (without arborescence sampling) [DK 11] O(n 1/3 ) with arborescence sampling [BBMRY 11] 14

Open Questions Improved bounds? Arborescence sampling is terrible! Uses a trivial lower bound on OPT Can t handle weights, not as flexible as LP Any way to remove/reduce use of arborescence sampling? Back to undirected k-spanner: Directed 3-spanner approx also best for undirected Any way to use LP for larger stretch? 15

Fault Tolerance 16

Fault Tolerance 16

Fault Tolerance 16

Fault Tolerance 16

Fault Tolerance Def [CLPR STOC 09]: H is an f- fault-tolerant k-spanner if H - F is a k-spanner of G - F for all F V with F f 16

Fault Tolerance Def [CLPR STOC 09]: H is an f- fault-tolerant k-spanner if H - F is a k-spanner of G - F for all F V with F f Note: might not be particularly well connected! k-spanner relative to G - F, not G If G a tree, H = G is n-fault tolerant 16

Fault Tolerance Def [CLPR STOC 09]: H is an f- fault-tolerant k-spanner if H - F is a k-spanner of G - F for all F V with F f Note: might not be particularly well connected! k-spanner relative to G - F, not G If G a tree, H = G is n-fault tolerant Reasonable: can t be more faulttolerant than G 16

Fault Tolerance: State of the Art Theorem [D-Krauthgamer PODC 11]: For every k, f, every graph G admits an f-fault tolerant (2k-1)-spanner with O(f 2 n 1+1/k ) edges 17

Fault Tolerance: State of the Art Theorem [D-Krauthgamer PODC 11]: For every k, f, every graph G admits an f-fault tolerant (2k-1)-spanner with O(f 2 n 1+1/k ) edges f 2 times: Sample each node with probability 1/f Build (2k-1)-spanner of size at most n 1+1/k on sample 17

Fault Tolerance: State of the Art Theorem [D-Krauthgamer PODC 11]: For every k, f, every graph G admits an f-fault tolerant (2k-1)-spanner with O(f 2 n 1+1/k ) edges f 2 times: Sample each node with probability 1/f Build (2k-1)-spanner of size at most n 1+1/k on sample Very simple to analyze 17

Fault-Tolerant: Stretch 2 18

Fault-Tolerant: Stretch 2 Non-fault tolerant: O(log n)-approx [Kortsarz-Peleg JALG 94] f-fault tolerant: O(f log n)-approx [D-Krauthgamer STOC 11] O(log n)-approx [D-Krauthgamer PODC 11] Both based on rounding LP 18

Fault-Tolerant: Stretch 2 Non-fault tolerant: O(log n)-approx [Kortsarz-Peleg JALG 94] f-fault tolerant: O(f log n)-approx [D-Krauthgamer STOC 11] O(log n)-approx [D-Krauthgamer PODC 11] Both based on rounding LP Open Question: approximate f-fault-tolerant k- spanner with no dependence on f? Tradeoff gives O(f n 1/k )-approx 18

Maximum Degree 19

Maximum Degree Max degree instead of number of edges (average degree) 19

Maximum Degree Max degree instead of number of edges (average degree) No tradeoff: 19

Maximum Degree Max degree instead of number of edges (average degree) No tradeoff: Lowest Degree k-spanner (LDkS): find k-spanner that minimizes maximum degree 19

LDkS vs Basic k-spanner Very different, much more difficult! Stretch 2: Basic 2-spanner: O(log n)-approx [Kortsarz-Peleg TALG 94] LD2S: O(Δ 1/4 )-approx [Kortsarz-Peleg SICOMP 98] Larger stretch: Basic k-spanner: O(n 2/(k+1) )-approx LDkS: Ω(log n) hardness 20

LDkS vs Basic k-spanner Very different, much more difficult! Stretch 2: Basic 2-spanner: O(log n)-approx [Kortsarz-Peleg TALG 94] LD2S: O(Δ 1/4 )-approx [Kortsarz-Peleg SICOMP 98] Larger stretch: Δ = max degree Basic k-spanner: O(n 2/(k+1) )-approx LDkS: Ω(log n) hardness 20

Our Results: LD2S: Õ(Δ 3-2 2+ε ) Õ(Δ 0.172 )-approx [Chlamtac-D- Krauthgamer FOCS 12] Improvement over O(Δ 1/4 )! LDkS: Õ(Δ (1-1/k)^2 )-approx, Ω(Δ 1/k ) hardness [Chlamtac-D APPROX 14] Improvement over Ω(log n) hardness 21

LD2S 22

LD2S Reduce to Smallest m-edge Subgraph (SmES / min-dks) 22

LD2S Reduce to Smallest m-edge Subgraph (SmES / min-dks) w 22

LD2S Reduce to Smallest m-edge Subgraph (SmES / min-dks) w w 22

LD2S Reduce to Smallest m-edge Subgraph (SmES / min-dks) 22

LD2S Reduce to Smallest m-edge Subgraph (SmES / min-dks) Not black box: LD2S LP contains n SmES LPs Need special faithful rounding SmES algorithm 22

LD2S Reduce to Smallest m-edge Subgraph (SmES / min-dks) Not black box: LD2S LP contains n SmES LPs Need special faithful rounding SmES algorithm Improved algorithm for SmES using Sherali-Adams hierarchy O(n 1/4 ) directly from DkS SmES used in past, first time improvement over DkS shown 22

LDkS: Upper Bound Straightforward LP: min s.t. d X (u,v)2e X P 2P u,v :e2p X x (u,v) apple d f P apple x e 8u 2 V 8(u, v) 2 E, 8e 2 E f P 1 8(u, v) 2 E P 2P u,v x e 0 8e 2 E f P 0 8(u, v) 2 E, 8P 2P u,v 23

LDkS: Upper Bound Straightforward LP: min s.t. d X (u,v)2e X P 2P u,v :e2p X x (u,v) apple d f P apple x e 8u 2 V 8(u, v) 2 E, 8e 2 E f P 1 8(u, v) 2 E P 2P u,v x e 0 8e 2 E f P 0 8(u, v) 2 E, 8P 2P u,v Rounding: include e with probability xe 1/k 23

LDkS: Upper Bound Straightforward LP: min s.t. d X (u,v)2e X P 2P u,v :e2p X x (u,v) apple d f P apple x e 8u 2 V 8(u, v) 2 E, 8e 2 E f P 1 8(u, v) 2 E P 2P u,v x e 0 8e 2 E f P 0 8(u, v) 2 E, 8P 2P u,v Rounding: include e with probability xe 1/k Not hard to analyze cost: trick is proving rounded solution is a k-spanner 23

LDkS: Upper Bound (II) 24

LDkS: Upper Bound (II) w u v 24

LDkS: Upper Bound (II) Pr[get u-w-v] = x{u,w} 1/2 x{v,w} 1/2 w f(u,w,v) u v 24

LDkS: Upper Bound (II) Pr[get u-w-v] = x{u,w} 1/2 x{v,w} 1/2 w f(u,w,v) u v If paths disjoint, get each path independently so Pr[span u-v] 1- w(1-f(u,w,v)) 1-1/e 24

LDkS: Upper Bound (II) Pr[get u-w-v] = x{u,w} 1/2 x{v,w} 1/2 w f(u,w,v) u v If paths disjoint, get each path independently so Pr[span u-v] 1- w(1-f(u,w,v)) 1-1/e But for stretch > 2 paths not disjoint Complicated bucketing of paths to argue lots of flow must be on nearly-disjoint paths 24

LDkS: Lower Bound Based on lower bound for Basic k-spanner Interlacing of sampling with reduction Start with hard Label Cover instance, subsample edges, apply reduction, subsample edges Need girth of Label Cover graph and reduction graph to be larger than k Leads to hardness that gets worse with k 25

LDkS: Open Question What is the right approximation? Upper bound Õ(Δ (1-1/k)^2 ) gets larger with k, lower bound Ω(Δ 1/k ) gets smaller with k 26

Conclusion Tons of work on graph spanners, very little on optimizing/approximating spanners We know a fair amount, but still many very basic open questions Beating trivial bound from tradeoff for basic k-spanner? Is any dependence on f necessary for approximating fault-tolerant spanners? Does Lowest Degree k-spanner get easier or harder as k increases? Approximating weight? Approximating geometric spanners? 27

Thanks! (Work on spanners with me!) 28