Everything you always wanted to know about spanners * *But were afraid to ask Seth Pettie University of Michigan, Ann Arbor.

Slides:



Advertisements
Similar presentations
Lower Bounds for Additive Spanners, Emulators, and More David P. Woodruff MIT and Tsinghua University To appear in FOCS, 2006.
Advertisements

Great Theoretical Ideas in Computer Science
all-pairs shortest paths in undirected graphs
Lower Bound for Sparse Euclidean Spanners Presented by- Deepak Kumar Gupta(Y6154), Nandan Kumar Dubey(Y6279), Vishal Agrawal(Y6541)
Approximate Distance Oracles and Spanners with sublinear surplus Mikkel Thorup AT&T Research Uri Zwick Tel Aviv University.
Competitive fault tolerant Distance Oracles and Routing Schemes Weizmann Open U Weizmann Bar Ilan Shiri Chechik Michael Langberg David Peleg Liam Roditty.
Great Theoretical Ideas in Computer Science for Some.
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture10.
Compact and Low Delay Routing Labeling Scheme for Unit Disk Graphs Chenyu Yan, Yang Xiang, and Feodor F. Dragan (WADS 2009) Kent State University, Kent,
 Graph Graph  Types of Graphs Types of Graphs  Data Structures to Store Graphs Data Structures to Store Graphs  Graph Definitions Graph Definitions.
Approximating Distances in Graphs Uri Zwick Tel Aviv University Otwarte wykłady dla doktorantów informatyki Instytut Informatyki Uniwersytetu Warszawskiego.
1 Discrete Structures & Algorithms Graphs and Trees: II EECE 320.
1 Sadna in Algorithms Haim Kaplan and Svetlana Olonetsky Tel Aviv University, fall 07/08.
What is the first line of the proof? a). Assume G has an Eulerian circuit. b). Assume every vertex has even degree. c). Let v be any vertex in G. d). Let.
Shortest Paths Definitions Single Source Algorithms –Bellman Ford –DAG shortest path algorithm –Dijkstra All Pairs Algorithms –Using Single Source Algorithms.
1 On Dynamic Shortest Paths Problems Liam Roditty Uri Zwick Tel Aviv University ESA 2004.
Sublinear Algorithms for Approximating Graph Parameters Dana Ron Tel-Aviv University.
1 Approximate Distance Oracles Mikkel Thorup AT&T Research Uri Zwick Tel Aviv University.
CSE 780 Algorithms Advanced Algorithms Graph Algorithms Representations BFS.
Dept. of Computer Science Distributed Computing Group Asymptotically Optimal Mobile Ad-Hoc Routing Fabian Kuhn Roger Wattenhofer Aaron Zollinger.
Shortest Paths Definitions Single Source Algorithms
Lower Bounds on the Distortion of Embedding Finite Metric Spaces in Graphs Y. Rabinovich R. Raz DCG 19 (1998) Iris Reinbacher COMP 670P
Collective Tree Spanners of Graphs F.F. Dragan, C. Yan, I. Lomonosov Kent State University, USA Hiram College, USA.
Additive Spanners for k-Chordal Graphs V. D. Chepoi, F.F. Dragan, C. Yan University Aix-Marseille II, France Kent State University, Ohio, USA.
1 Exact and Approximate Distances in Graphs – A Survey Uri Zwick Tel Aviv University.
Approximate Distance Oracles for Geometric Spanner Networks Joachim Gudmundsson TUE, Netherlands Christos Levcopoulos Lund U., Sweden Giri Narasimhan Florida.
Tirgul 7 Review of graphs Graph algorithms: – BFS (next tirgul) – DFS – Properties of DFS – Topological sort.
Introduction Outline The Problem Domain Network Design Spanning Trees Steiner Trees Triangulation Technique Spanners Spanners Application Simple Greedy.
Minimum Spanning Trees. Subgraph A graph G is a subgraph of graph H if –The vertices of G are a subset of the vertices of H, and –The edges of G are a.
Improved Randomized Algorithms for Path Problems in Graphs PhD Thesis Surender Baswana Department of Computer Science & Engineering, I.I.T. Delhi Research.
Approximating the MST Weight in Sublinear Time Bernard Chazelle (Princeton) Ronitt Rubinfeld (NEC) Luca Trevisan (U.C. Berkeley)
WEIGHTED GRAPHS. Weighted Graphs zGraph G = (V,E) such that there are weights/costs associated with each edge Õw((a,b)): cost of edge (a,b) Õrepresentation:
1 Finding Sparser Directed Spanners Piotr Berman, Sofya Raskhodnikova, Ge Ruan Pennsylvania State University.
CS 3343: Analysis of Algorithms Lecture 21: Introduction to Graphs.
Transitive-Closure Spanner of Directed Graphs Kyomin Jung KAIST 2009 Combinatorics Workshop Joint work with Arnab Bhattacharyya MIT Elena Grigorescu MIT.
Near Optimal Streaming algorithms for Graph Spanners Surender Baswana IIT Kanpur.
Distance sensitivity oracles in weighted directed graphs Raphael Yuster University of Haifa Joint work with Oren Weimann Weizmann inst.
Spanning and Sparsifying Rajmohan Rajaraman Northeastern University, Boston May 2012 Chennai Network Optimization WorkshopSpanning and Sparsifying1.
Approximate Distance Oracles Mikkel Thorup and Uri Zwick Presented By Shiri Chechik.
Lower Bound for Sparse Euclidean Spanners Presented by- Deepak Kumar Gupta(Y6154), Nandan Kumar Dubey(Y6279), Vishal Agrawal(Y6541)
Eulerian Paths and Cycles. What is a Eulerian Path Given an graph. Find a path which uses every edge exactly once. This path is called an Eulerian Path.
Shortest Paths in Decremental, Distributed and Streaming Settings 1 Danupon Nanongkai KTH Royal Institute of Technology BIRS, Banff, March 2015.
Complexity and Efficient Algorithms Group / Department of Computer Science Testing the Cluster Structure of Graphs Christian Sohler joint work with Artur.
A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
Spanning Tree Definition:A tree T is a spanning tree of a graph G if T is a subgraph of G that contains all of the vertices of G. A graph may have more.
1 Approximation Algorithms for Low- Distortion Embeddings into Low- Dimensional Spaces Badoiu et al. (SODA 2005) Presented by: Ethan Phelps-Goodman Atri.
Introduction Wireless Ad-Hoc Network  Set of transceivers communicating by radio.
Spanning Trees Dijkstra (Unit 10) SOL: DM.2 Classwork worksheet Homework (day 70) Worksheet Quiz next block.
Succinct Routing Tables for Planar Graphs Compact Routing for Graphs Excluding a Fixed Minor Ittai Abraham (Hebrew Univ. of Jerusalem) Cyril Gavoille (LaBRI,
Approximating the MST Weight in Sublinear Time
Improved Randomized Algorithms for Path Problems in Graphs
A survey on approximating graph spanners Guy Kortsarz, Rutgers Camden
Spanners and emulators with sublinear distance errors
CIS 700: “algorithms for Big Data”
Graphs & Graph Algorithms 2
Randomized Algorithms CS648
Near-Optimal (Euclidean) Metric Compression
Approximate Distance Oracles and Spanners with sublinear surplus
Introduction Wireless Ad-Hoc Network
Approximating Distances in Graphs
Shortest Path Algorithms
Approximate Distance Oracles
Exact and Approximate Distances in Graphs – A Survey
Compact routing schemes with improved stretch
The Greedy Approach Young CS 530 Adv. Algo. Greedy.
Distance-preserving Subgraphs of Interval Graphs
Routing in Networks with Low Doubling Dimension
Forbidden-set labelling in graphs
More Graphs Lecture 19 CS2110 – Fall 2009.
Presentation transcript:

Everything you always wanted to know about spanners * *But were afraid to ask Seth Pettie University of Michigan, Ann Arbor

What is a spanner? Spanner (English) : wrench Spanner (German) : voyeur, peeping tom. Spanner (CS) : sparse subgraph that preserves distances up to some stretch.

Graph Spanners Peleg-Schäffer’89 Spanner : sparse subgraph that preserves distances up to some stretch. Given possibly weighted input graph G = (V, E, w) Find a sparse subgraph H = (V, E(H)) such that dist H (u,v) ≤ t∙dist(u,v) H is called a t-spanner of G

The Greedy Algorithm Althöfer, Das, Dobkin, Joseph, Soares’ 93 Greedy(G, k): (stretch 2k–1) H ←  Examine each ( u,v ) in increasing order by w(u,v). If dist H (u,v) > (2k–1)∙w(u,v) H ← H  { ( u,v ) } Return H Execution for stretch=3

Claim: the greedy spanner H has girth at least 2k+1. (girth = length of shortest cycle) Proof by contradiction. Let (u,v) ∈  H be the last edge added to form a length-2k cycle. heaviest edge on the cycle

Behavior of the Greedy Algorithm m g (n) = max # edges in graph w/n vertices, and girth  g Some observations: –| Greedy(G, k) |  m 2k+1 (n) –| Greedy(G, k) |  m 2k+1 (n) for some G –m 2k+1 (n) ≤ 2∙m 2k+2 (n)

Upper Bounds: m 2k+1 (n), m 2k+2 (n)  n 1+1/k (1) Repeatedly discard any vertex of degree  n 1/k (2) Examine k-neighborhood of any vertex:

The Girth Conjecture Erdos’63, Bondy-Simonovits’74, Bollobas’78 Conjecture: m 2k+2 (n) =  (n 1+1/k ) Confirmed for k = 1, 2, 3, 5 In general, m 2k+2 (n) =  (n 1+1/(3k/2–1) ) (Lazebnik, Ustimenko, Woldar’96)

The Girth Conjecture Conjecture: m 2k+2 (n) =  (n 1+1/k ) Confirmed for k = 1, 2, 3, 5 (  (n 2 ) edges, girth 4)

The Girth Conjecture Reiman’58, Brown’66, Erdoős-Rényi-Sós’66, Wenger’91 Conjecture: m 2k+2 (n) =  (n 1+1/k ) Confirmed for k = 1,2,3,5 (  (n 3/2 ) edges, girth 6) Incidence matrix of a projective geometry:

(1) We can’t beat the girth bound (2) We can achieve the girth bound (Althöfer et al.’93) Is there anything else to say about spanners? Computation time: –(Althöfer et al.’93) : O(mn 1+1/k ) is slow –(Baswana-Sen’03): An O(kn 1+1/k )-size (2k–1)spanner in O(km) time.

The girth bound, restated If G is an unweighted graph with girth g, the only (g–2)-spanner of G is G. –If (u,v) ∉ H, dist H (u,v) ≥ (g-1)∙dist(u,v) Why measure stretch multiplicatively? Defn. H is an f -spanner of unweighted G if dist H (u,v) ≤ f (dist(u,v)) f (d) = d +  Additive  -spanner f (d) = (1+  )d +   -spanner f (d) = d + O(d 1-  ) Sublinear additive spanner

The girth bound, restated If G is an unweighted graph with girth g, the only (g–2)-spanner of G is G. –If (u,v) ∉ H, dist H (u,v) ≥ (g-1)∙dist(u,v) What if we only care about certain vertex- pairs? Defn. H is a pairwise f -spanner for vertex pairs P dist H (u,v) ≤ f (dist(u,v)) holds for every (u,v) ∈ P. (Note: it makes sense to consider no stretch: f(d)=d.)

Additive Stretch Spanner Size Aingworth, Chekuri, Indyk, Motwani’99 +2 n 3/2 Chechik’12 +4 n 7/5 Baswana, Kavitha, Mehlhorn, Pettie’09 +6 n 4/3 A big open problem: are there +Õ(1) spanners with size n 4/3–   ?

Additive Stretch Spanner Size Aingworth, Chekuri, Indyk, Motwani’99 +2 n 3/2 Chechik’12 +4 n 7/5 Baswana, Kavitha, Mehlhorn, Pettie’09 +6 n 4/3 Baswana, Kavitha, Mehlhorn, Pettie’09 n 1 – 3  n 1+  Pettie’09 n 9/16 – 7  /8 n 1+  Chechik’12 n 1/2 – 3  /2 n 1+  + n 20/17

Assuming the girth conjecture: Any additive 2k–2 spanner has size  (n 1+1/k ) (Woodruff’06) Any additive 2k–2 spanner has size  (n 1+1/k ) Additive Stretch Spanner Size Aingworth, Chekuri, Indyk, Motwani’99 +2 n 3/2 Chechik’12 +4 n 7/5 Baswana, Kavitha, Mehlhorn, Pettie’09 +6 n 4/3

Additive Spanners: Lower Bounds

Lower Bounds on Additive Spanners Woodruff’06 Vertices in k+1 columns named: {1, …, N 1/k } k ((k+1)N total)

Lower Bounds on Additive Spanners Woodruff’06 Edges in layer i connect vertices that may only differ in their i th coordinate. (kN 1+1/k edges in total)

Spanner size  N 1+1/k  some shortest path excluded Lower Bounds on Additive Spanners Woodruff’06

Spanner path < 3k  some layer crossed just once Lower Bounds on Additive Spanners Woodruff’06

e = e (contradiction) Lower Bounds on Additive Spanners Woodruff’06

Additive Spanners: Upper Bounds

(edges not shown) Additive 6-Spanners Baswana, Kavitha, Mehlhorn, Pettie’09

Sample n 2/3 cluster centers uniformly at random. Additive 6-Spanners Baswana, Kavitha, Mehlhorn, Pettie’09

Sample n 2/3 cluster centers uniformly at random. Every vertex includes 1 edge to an adjacent center. Additive 6-Spanners Baswana, Kavitha, Mehlhorn, Pettie’09

Sample n 2/3 cluster centers uniformly at random. Put all edges adjacent to unclustered vertices in the spanner.

The Path-Buying Algorithm Baswana, Kavitha, Mehlhorn, Pettie’09 Overview (1) There are n 4/3 cluster pairs (C,C’). (2) Each pair “wants” dist H (C, C’) = dist(C, C’). (3) Each pair can “buy” O(1) edges to achieve (2). To compute an additive 6-Spanner: H ← edges selected by clustering procedure Evaluate every shortest path P If cost(P) < value(P) then H ← H ∪ P

cost(P) = number of missing edges on P (roughly number of clusters incident to P.) value(P) = number of pairs (C,C’) such that dist P (C,C’) < dist H (C,C’) The Path-Buying Algorithm Baswana, Kavitha, Mehlhorn, Pettie’09 (C u,C’) contributes 1 to value(P)

If P is bought…great! Then dist H (u,v) = dist(u,v) If P is not bought… there exist cluster C’ on P: dist(C u,C’) and dist(C’,C v ) well-approximated by H. The Path-Buying Algorithm Baswana, Kavitha, Mehlhorn, Pettie’09

Pairwise Spanners: Upper Bounds

Pairwise Distance Preservers Coppersmith, Elkin’06 Given vertex pairs P, want to find spanner H such that dist H (u,v) = dist(u,v) for all (u,v) ∈  P (Coppersmith-Elkin’06): If H is chosen in a natural way,

Pairwise Distance Preservers Coppersmith, Elkin’06 branch points for (red,blue) branch point for (green,blue) and (green,red)

Pairwise Distance Preservers Coppersmith, Elkin’06

Sublinear Additive Spanners

Sublinear Additive Error Stretch Function (d=distance) Spanner Size Thorup- Zwick’06

Sublinear Additive Error Stretch Function (d=distance) Spanner Size Thorup- Zwick’06 Pettie’09 Chechik’12

A -spanner Thorup-Zwick’06 C 1 = set of n 2/3 level-1centers. Include BFS tree from v to radius dist(v,C 1 )–1

A -spanner Thorup-Zwick’06 C 2 = set of n 1/3 level-1centers. For each v ∈  C 1, include BFS tree from v with radius dist(v,C 2 )–1. Include BFS tree from each v ∈ C 2 too all other vertices.

Why it is a -spanner Thorup-Zwick’06 The analysis: d = dist(u,v) Start walking along a shortest u–v path If you can’t walk further, you’re adjacent to a w ∈  C 1 (a) Walk steps toward v in BFS(w), if possible (b)Walk steps to an x ∈  C 2 then walk from x to v in BFS(x).

Spanners vs. Compact Routing Store Õ(n  )-size routing tables at each node Route message from A to B using only information discovered at routing tables. (Thorup-Zwick’01): Õ(n 1/k )-size tables & 4k–5 stretch. (Gavoille-Sommer’11): O(1)-additive routing is impossible: O(n  )-size tables implies  (n (1–  )/2 ) additive stretch

Spanners vs. Distance Oracles Build O(n 1+  ) -size data structure in order to answer approximate distance queries in O(1) time. (Thorup-Zwick’01): O(n 1+1/k ) size with (2k–1)d stretch. (Patrascu-Roditty’10): O(n 5/3 )-size with 2d+1 stretch. Conditional lower bound that < 2 multiplicative stretch is impossible in O(1) query time. Lot’s of followup work, alternate constructions, etc.

Graph Spanners vs. Geometric Spanners

Some open problems Existential: –Do f(k)-additive spanners exist with size O(n 1+1/k )? f(k)=2k–2 would be optimal. –Do n o(1) -additive spanners exist with size O(n)? –Are there -spanners with size O(n 1+  )? Computational –What spanners can be constructed in O(m) time? (Baswana et al.’09): (kd + k-1)-spanners with size O(n 1+1/k ). New applications of spanners? –(Kapralov-Panigrahy’12): Build Õ(n   )-size spectral sparsifiers using spanners as a “black box.”

The End