a randomized linear time algorithm for graph spanners surender baswana postdoctoral researcher max...

77
A randomized linear time A randomized linear time algorithm for algorithm for graph spanners graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken, Germany

Upload: madison-harrington

Post on 18-Jan-2018

227 views

Category:

Documents


0 download

DESCRIPTION

Graph Spanners Definition : Given a graph G=(V,E), a spanner is a sub-graph G=(V,E s ) which has the following two crucial properties 1. sparse

TRANSCRIPT

Page 1: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

A randomized linear time algorithm A randomized linear time algorithm forfor

graph spannersgraph spanners

Surender Baswana

Postdoctoral Researcher Max Planck Institute for Computer Science

Saarbruecken, Germany

Page 2: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Graph SpannersGraph SpannersDefinition :

Given a graph G=(V,E), a spanner is a sub-graph G=(V,Es) which has the following two crucial properties

Page 3: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Graph SpannersGraph SpannersDefinition :

Given a graph G=(V,E), a spanner is a sub-graph G=(V,Es) which has the following two crucial properties

1. sparse

Page 4: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Graph SpannersGraph SpannersDefinition :

Given a graph G=(V,E), a spanner is a sub-graph G=(V,Es) which has the following two crucial properties

1. sparse

2. preserves approximate distances pair-wise.

Page 5: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Graph SpannersGraph SpannersDefinition :

Given a graph G=(V,E), a spanner is a sub-graph G=(V,Es) which has the following two crucial properties

1. sparse

2. preserves approximate distances pair-wise.

δ(u,v) ≤ δs(u,v) ≤ t δ(u,v) for some constant t ≥ 1

Page 6: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Graph SpannersGraph SpannersDefinition :

Given a graph G=(V,E), a spanner is a sub-graph G=(V,Es) which has the following two crucial properties

1. sparse

2. preserves approximate distances pair-wise.

δ(u,v) ≤ δs(u,v) ≤ t δ(u,v) for some constant t ≥ 1

t : stretch of the spanner

Page 7: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Communication network :Communication network :Motivation for spannersMotivation for spanners

Page 8: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Communication network :Communication network :Motivation for spannersMotivation for spanners

Each edge has• cost• weight (length)

Page 9: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Communication network :Communication network :Motivation for spannersMotivation for spanners

Minimizing the total cost : sparseness is desirable

Page 10: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Communication network :Communication network :Motivation for spannersMotivation for spanners

Minimizing the total cost : sparseness is desirable

u

v

Page 11: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Communication network :Communication network :Motivation for spannersMotivation for spanners

Minimizing the pair-wise distances : small stretch is desirable

Page 12: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Communication network :Communication network :Motivation for spannersMotivation for spanners

Minimizing the pair-wise distances : small stretch is desirable

Page 13: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Graph spannersGraph spanners A trade off between sparseness and stretch

Page 14: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Graph spannersGraph spanners A trade off between sparseness and stretch

Sparse

δ(u,v) ≤ δs(u,v) ≤ t δ(u,v)

Page 15: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Graph spannersGraph spanners A trade off between sparseness and stretch

Sparse

δ(u,v) ≤ δs(u,v) ≤ t δ(u,v)

t-Spanner

Page 16: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Aim :

To compute the sparsest spanner of a weighted graph with stretch t.

Page 17: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Applications of Graph SpannerApplications of Graph Spanner Distributed Computing

Design of Synchronizers Compact routing tables

Computational Biology Reconstruction of Phylogenetic trees

All-pairs Approximate Shortest Paths

Page 18: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Organization of the talkOrganization of the talk

Optimal size of a t-spanner

Earlier algorithms

A algorithm

Page 19: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of a t-spanner

Page 20: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of aOptimal size of a tt--spannerspanner

u v

Page 21: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of aOptimal size of a tt--spannerspanner

u v

Page 22: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of aOptimal size of a tt--spannerspanner

u v

???Length of Smallest cycle= t

Page 23: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of aOptimal size of a tt--spannerspanner

u v

stretch ≥ t-1Length of Smallest cycle= t

Page 24: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of aOptimal size of a tt--spannerspanner

u v

stretch ≥ t-1Length of Smallest cycle= t

How dense can a graph with shortest cycle length ≥ t be ?

Page 25: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of aOptimal size of a tt--spannerspanner

u v

stretch ≥ t-1

Girth Conjecture [Erdös[1960], Bondy & Simonovits [1974], Bollobas [1978]]There are graph with shortest cycle length > 2k and Ω(n1+1/k) edges

Length of Smallest cycle= t

Page 26: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of aOptimal size of a tt--spannerspannerLet k be any positive integer

There are graphs whose (2k-1)-spanner (a 2k-spanner) must have Ω(n1+1/k) edges

Page 27: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Optimal size of aOptimal size of a tt--spannerspannerLet k be any positive integer

There are graphs whose (2k-1)-spanner (a 2k-spanner) must have Ω(n1+1/k) edges

4- spanner and 3-spanner : Ω(n3/2)

6-spanner and 5-spanner : Ω(n5/4)

8-spanner and 7-spanner : Ω(n7/6)

Page 28: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Aim of an AlgorithmistAim of an Algorithmist To design an algorithm A A such that

AAG=(V, E) G=(V, Es)

|ES| = O (minimum (m , n1+1/k))

Input Graph (2k-1)-Spanner

Page 29: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Earlier algorithms for (2k-1)-spanner

Page 30: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Earlier algorithms for graph Earlier algorithms for graph spannersspanners

Althofer, Das, Dobkin,Joseph, Soares

DCG 1993 2k-1 O(mn1+1/k) O(n1+1/k)

Cohen SIAM J. Computing1998

(2k-1)(1+ε)

O(mn1/k) O(n1+1/k)

Thorup, Zwick

JACM 2005

2k-1 O(mn1/k) (randomized)

O(n1+1/k)

Stretch ConstructionTime

Size

Page 31: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Althofer, Das, Dobkin,Joseph, Soares

DCG 1993 2k-1 O(mn1+1/k) O(n1+1/k)

Cohen SIAM J. Computing 1998

(2k-1)(1+ε)

O(mn1/k) O(n1+1/k)

Thorup, Zwick

JACM 2005

2k-1 O(mn1/k) (randomized)

O(n1+1/k)

Stretch ConstructionTime

Size

Can we Compute Can we Compute (2k-1)-(2k-1)-spanners in linear time ?spanners in linear time ?

Page 32: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

A algorithm

Computing a Computing a (2k-1)-(2k-1)-spanner in expectedspanner in expected O(m)O(m) timetime

Page 33: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Local approachLocal approachLet G=(V,ES) be a spanner of G=(V,E)

Edge in Spanner

Edge not in Spanner

Page 34: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Local approachLocal approachLet G=(V,ES) be a spanner of G=(V,E)

Edge in Spanner

Edge not in Spanner

Page 35: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Local approachLocal approachLet G=(V,ES) be a spanner of G=(V,E)

2

1 t-1≤w

≤w ≤w

≤w

w

Pt : For each edge not in the spanner , there is a path in the spanner connecting its endpoints

• with at-most t edges• none heavier than the edge

Edge not in Spanner

Edge in Spanner

Page 36: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Local approachLocal approachLet G=(V,ES) be a spanner of G=(V,E)

u v

2

1 t-1≤w

≤w ≤w

≤w

w

Pt : For each edge not in the spanner , there is a path in the spanner connecting its endpoints

• with at-most t edges• none heavier than the edge

Edge not in Spanner

Edge in Spanner

Page 37: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Local approachLocal approachLet G=(V,ES) be a spanner of G=(V,E)

u v

2

1 t-1≤w

≤w ≤w

≤w

w

Pt : For each edge not in the spanner , there is a path in the spanner connecting its endpoints

• with at-most t edges• none heavier than the edge

Edge not in Spanner

Edge in Spanner

t-spanner

Page 38: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

NewNew Algorithms for ( Algorithms for (2k-12k-1)-)-spannerspanner

An External-memory algorithm for (2k-1)-spanner

Time complexity : Integer sorting

Page 39: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

NewNew Algorithms for ( Algorithms for (2k-12k-1)-)-spannerspanner

A distributed algorithm for (2k-1)-spanner :

Number of Rounds : O(1) , Communication complexity : O(m) (linear)

Page 40: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

NewNew Algorithms for ( Algorithms for (2k-12k-1)-)-spannerspanner

A streaming algorithm for (2k-1)-spanner Number of passes : O(1) Processing time per edge : O(1)

Page 41: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spanner

Page 42: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerEasy caseEasy case : fewer than : fewer than n½ edges edges

Page 43: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerDifficult caseDifficult case : much more than : much more than n½ edges edges

Page 44: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerDifficult caseDifficult case : much more than : much more than n½ edges edges

Which n½ edges to select ?

Page 45: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spanner Phase 1 : Clustering

Phase 2 : Adding edges between vertices and clusters

Initially all edges are Red

Page 46: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spanner Phase 1 : Clustering

Phase 2 : Adding edges between vertices and clusters

center

Initially all edges are Red

Page 47: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p.

Page 48: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p.

2. Process each v Є V \S as follows

Page 49: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p.

2. Process each v Є V \S as follows1. If v is not adjacent to any sampled vertex

Page 50: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p .

2. Process each v Є V \S as follows1. If v is not adjacent to any sampled vertex.

v

S

V \S

Page 51: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p .

2. Process each v Є V \S as follows1. If v is not adjacent to any sampled vertex. add all its

edges.

v

S

V \S

Page 52: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p.

2. Process each v Є V \S as follows1. If v is not adjacent to any sampled vertex. add all its

edges.2. If v is adjacent to some sampled vertex

S

V \S

Page 53: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p .

2. Process each v Є V \S as follows1. If v is not adjacent to any sampled vertex. add all its

edges.2. If v is adjacent to some sampled vertex.

weights

v

x

S

V \S

Page 54: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p.

2. Process each v Є V \S as follows1. If v is not adjacent to any sampled vertex. add all its

edges.2. If v is adjacent to some sampled vertex.

weights

v

x

S

V \S

Page 55: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p2. Process each v Є V \S as follows

1. If v is not adjacent to any sampled vertex. add all its edges.

2. If v is adjacent to some sampled vertex.

weights

v

x

S

V \S

Page 56: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

1. S : select each vertex independently with probability p2. Process each v Є V \S as follows

1. If v is not adjacent to any sampled vertex. add all its edges.

2. If v is adjacent to some sampled vertex.

weights

x

v

S

V \S

Page 57: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

G=(V,E) G=(V1,E1)Phase 1

Spanner (partial)

RemainingRed edges

Red edges

Page 58: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

G=(V,E) G=(V1,E1)

Every v Є V1 is clustered

v o

Phase 1

Spanner (partial)

RemainingRed edges

Red edges

Page 59: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

G=(V,E) G=(V1,E1)

Every v Є V1 is clustered Every red edge (w-v) Є E1 is ......

v o

Phase 1

Spanner (partial)

RemainingRed edges

Red edges

Page 60: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

G=(V,E) G=(V1,E1)

Every v Є V1 is clustered Every red edge (w-v) Є E1 is at-least as heavy as (v-o)

v o

Phase 1

Spanner (partial)

RemainingRed edges

Red edges

Page 61: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 1 : Phase 1 : ClusteringClustering

G=(V,E) G=(V1,E1)

Every v Є V1 is clustered Every red edge (w-v) Є E1 is at-least as heavy as (v-o)

v o

Phase 1

Spanner (partial)

Observation I

Red edges RemainingRed edges

Page 62: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerDifficult caseDifficult case : much more than : much more than n½ edges edges

Which n½ edges to select ?

Page 63: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerDifficult caseDifficult case : much more than : much more than n½ edges edges

v

Page 64: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for 3-spannerAlgorithm for 3-spannerPhase 2 : Phase 2 : adding edges between vertices and adding edges between vertices and

clustersclusters

v

Page 65: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Analysis of the algorithmAnalysis of the algorithm

Size of the spanner

Edges added during Phase 1 + Edges added during Phase 2 n/p + n2p = n3/2 , for p = 1/√n

Correctness ??

Page 66: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Spanner has stretch 3Spanner has stretch 3PropertyProperty P3 holdsholds

x y

Page 67: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Spanner has stretch 3Spanner has stretch 3PropertyProperty P3 holdsholds

x y

Both x and y are clustered

Page 68: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Spanner has stretch 3Spanner has stretch 3PropertyProperty P3 holdsholds

x y

yx

Page 69: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Spanner has stretch 3Spanner has stretch 3PropertyProperty P3 holdsholds

x y

yxObservation I

Page 70: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Spanner has stretch 3Spanner has stretch 3PropertyProperty P3 holdsholds

x y

yx yxo

Page 71: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Spanner has stretch 3Spanner has stretch 3PropertyProperty P3 holdsholds

x y

yx yxo

ß

α

z

Page 72: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Spanner has stretch 3Spanner has stretch 3PropertyProperty P3 holdsholds

x y

yx yxo

ß

α

z

Observation I

Page 73: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for (Algorithm for (2k-12k-1)-spanner)-spanner

Page 74: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for (Algorithm for (2k-12k-1)-spanner)-spanner

n

n1-1/k

n1/k

V0

V1

Vk-1

#Vertices #Clusters

Page 75: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Algorithm for (Algorithm for (2k-12k-1)-spanner)-spanner Invariant : At level i, we have graph G=(Vi,Ei)

Every vertex in Vi is clustered For every edge e Є Ei

i edges

e

Page 76: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

An openAn open problemproblem

Fully Dynamic algorithm for (2k-1)-spanner ?

Page 77: A randomized linear time algorithm for graph spanners Surender Baswana Postdoctoral Researcher Max Planck Institute for Computer Science Saarbruecken,

Thank you Thank you