additive spanners for k -chordal graphs

40
Additive Spanners for Additive Spanners for k k -Chordal Graphs -Chordal Graphs V. D. Chepoi, F.F. Dragan , C. Yan University Aix-Marseille II, France Kent State University, Ohio, USA

Upload: bachyen-nguyen

Post on 31-Dec-2015

55 views

Category:

Documents


0 download

DESCRIPTION

Additive Spanners for k -Chordal Graphs. V. D. Chepoi, F.F. Dragan , C. Yan. University Aix-Marseille II, France Kent State University, Ohio, USA. Sparse t -Spanner Problem. Given unweighted undirected graph G=(V,E) and integers t, m. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Additive Spanners for  k -Chordal Graphs

Additive Spanners for Additive Spanners for

kk-Chordal Graphs-Chordal Graphs

V. D. Chepoi, F.F. Dragan, C. Yan

University Aix-Marseille II, France

Kent State University, Ohio, USA

Page 2: Additive Spanners for  k -Chordal Graphs

G multiplicative 2- and additive 1-spanner of G

Sparse t -Spanner Problem Given unweighted undirected graph G=(V,E) and integers t, m. Does G admit a spanning graph H =(V,E’) with |E’| m such that

),(),(,, uvdisttuvdistVvu GH

tvudistvudistVvu GH ),(),(,,

(a multiplicative t-spanner of G) or

(an additive t-spanner of G)?

Page 3: Additive Spanners for  k -Chordal Graphs

G multiplicative 2- and additive 1-spanner of G

Sparse t -Spanner Problem Given unweighted undirected graph G=(V,E) and integers t, m. Does G admit a spanning graph H =(V,E’) with |E’| m such that

),(),(,, uvdisttuvdistVvu GH

tvudistvudistVvu GH ),(),(,,

(a multiplicative t-spanner of G) or

(an additive t-spanner of G)?

Page 4: Additive Spanners for  k -Chordal Graphs

Applications

in distributed systems and communication networks– synchronizers in parallel systems

• Close relationship were established between the quality of spanners for a given undirected graph (in terms of the stretch factor t and the number of edges |E’|), and the time and communication complexities of any synchronizer for the network based on this graph

– topology for message routing• efficient routing schemes can use only the

edges of the spanner

G

2-spanner for G

Page 5: Additive Spanners for  k -Chordal Graphs

Applications

in distributed systems and communication networks– synchronizers in parallel systems

• Close relationship were established between the quality of spanners for a given undirected graph (in terms of the stretch factor t and the number of edges |E’|), and the time and communication complexities of any synchronizer for the network based on this graph

– topology for message routing• efficient routing schemes can use only the

edges of the spanner

G

2-spanner for G

Page 6: Additive Spanners for  k -Chordal Graphs

Some Known Results

• general graphs [Peleg&Schaffer’89]– given a graph G=(V, E) and two integers t, m1, whether G has a

t-spanner with m or fewer edges, is NP-complete

• chordal graphs [Peleg&Schaffer’89]

G is chordal if it has no chordless cycles of length >3– every n-vertex chordal graph G=(V, E) admits a 2-spanner with

O(n1.5) edges– there exist (infinitely many) n-vertex chordal graphs G=(V, E) for

which every 2-spanner requires (n1.5) edges– every n-vertex chordal graph G=(V, E) admits a 3-spanner with

O(n logn) edges– every n-vertex chordal graph G=(V, E) admits a 5-spanner with at

most 2n-2 edges

(multiplicative case)

Page 7: Additive Spanners for  k -Chordal Graphs

Some Known Results

• general graphs [Peleg&Schaffer’89]– given a graph G=(V, E) and two integers t, m1, whether G has a

t-spanner with m or fewer edges, is NP-complete

• chordal graphs [Peleg&Schaffer’89]

G is chordal if it has no chordless cycles of length >3– every n-vertex chordal graph G=(V, E) admits a 3-spanner with

O(n logn) edges– every n-vertex chordal graph G=(V, E) admits a 5-spanner with at

most 2n-2 edges

• tree spanner [BDLL’2002] – given a chordal graph G=(V, E) and an integer t>3, whether G has

a t-spanner with n-1 edges (tree t-spanner), is NP-complete

(multiplicative case)

Page 8: Additive Spanners for  k -Chordal Graphs

Some Known Results

• general graphs [Peleg&Schaffer’89]– given a graph G=(V, E) and two integers t, m1, whether G has a

t-spanner with m or fewer edges, is NP-complete

• chordal graphs [Peleg&Schaffer’89]

G is chordal if it has no chordless cycles of length >3– every n-vertex chordal graph G=(V, E) admits a 3-spanner with

O(n logn) edges– every n-vertex chordal graph G=(V, E) admits a 5-spanner with at

most 2n-2 edges 2-appr. algorithm for any t 5

• tree spanner [BDLL’2002] – given a chordal graph G=(V, E) and an integer t>3, whether G has

a t-spanner with n-1 edges (tree t-spanner), is NP-complete

(multiplicative case)

Page 9: Additive Spanners for  k -Chordal Graphs

This Talk• From multiplicative to additive

– every chordal graph admits an additive 4-spanner with at most 2n-2 edges which can be constructed in linear time

– every chordal graph admits an additive 3-spanner with O(n logn) edges which can be constructed in polynomial time

• Extension to k-chordal graphs G is k-chordal if it has no chordless cycle of length >k– Every k-chordal graph admits an additive (k+1)-spanner with at

most 2n-2 edges which can be constructed in O(nk+m)

• Better bounds for subclasses of 4-chordal graphs – Every HH-free graph (or chordal bipartite graph) admits an

additive 4-spanner with at most 2n-2 edges which can be constructed in linear time

• Note that any additive t-spanner is a multiplicative (t+1)-spanner

Page 10: Additive Spanners for  k -Chordal Graphs

Method:Constructing Additive 4-

Spanner• Given a chordal graph G=(V, E) and an arbitrary vertex u

u

Page 11: Additive Spanners for  k -Chordal Graphs

BFS-Ordering and BFS-Tree up-phase

• We start from u and construct a BFS tree. The red edges are tree edges.

• First layer.

17 15

16

18 u

Page 12: Additive Spanners for  k -Chordal Graphs

BFS-Ordering and BFS-Tree up-phase

• Second layer

1114

17 15

16

12

13

18 u

Page 13: Additive Spanners for  k -Chordal Graphs

BFS-Ordering and BFS-Tree up-phase

• Third layer

5

11

78

14

17 15

16

12

13

18

6910

u

Page 14: Additive Spanners for  k -Chordal Graphs

BFS-Ordering and BFS-Tree up-phase

• Fourth Layer

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

u

Page 15: Additive Spanners for  k -Chordal Graphs

Constructing Spanner down-phase

• Start from the last layer. For vertices of each connected component in the layer create a star for the fathers.

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

u

connected components

Page 16: Additive Spanners for  k -Chordal Graphs

Constructing Spanner down-phase

• Third Layer

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

u

connected components

Page 17: Additive Spanners for  k -Chordal Graphs

Constructing Spanner down-phase

• Second layer

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

u

connected components

Page 18: Additive Spanners for  k -Chordal Graphs

Final Spanner• The final spanner is showed in red

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

u

Page 19: Additive Spanners for  k -Chordal Graphs

Final Spanner• The final spanner is showed in red

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

u

1 vs 3

4 vs 5

Page 20: Additive Spanners for  k -Chordal Graphs

Analysis Of The Algorithm• Given a chordal graph G=(V, E), we produce a

spanning graph H=(V,E’) such that – H is an additive 4-spanner of G

– H contains at most 2n-2 edges

– H can be constructed in O(n+m) time

Page 21: Additive Spanners for  k -Chordal Graphs

Analysis Of The Algorithm• Given a chordal graph G=(V, E), we produce a

spanning graph H=(V,E’) such that – H is an additive 4-spanner of G

– H contains at most 2n-2 edges

– H can be constructed in O(n+m) timex

y

u

Layer i

Layer i-1c

Page 22: Additive Spanners for  k -Chordal Graphs

Constructing Additive 3-Spanner

• G is a chordal graph with n vertices and with a BFS ordering (started at u)– Take all the edges of the

additive 4-spanner– in each connected

component S induced by layer r, we run the algorithm presented in [Peleg&Schaffer’89], to construct a multiplicative 3-spanner for S

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

Page 23: Additive Spanners for  k -Chordal Graphs

Constructing Additive 3-Spanner

• G is a chordal graph with n vertices and with a BFS ordering (started at u)– Take all the edges of the

additive 4-spanner– in each connected

component S induced by layer r, we run the algorithm presented in [Peleg&Schaffer’89], to construct a multiplicative 3-spanner for S

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

Page 24: Additive Spanners for  k -Chordal Graphs

Analysis Of The Algorithm

• Given a chordal graph G=(V, E) with n vertices and m edges, we produce a spanning graph H=(V,E’) such that – H is an additive 3-spanner of G – H contains O(n logn) edges– H can be constructed in polynomial time

Page 25: Additive Spanners for  k -Chordal Graphs

Method:Constructing Additive (k+1)-Spanner

u

Given a k-chordal graph G=(V, E) and an arbitrary vertex u

Page 26: Additive Spanners for  k -Chordal Graphs

BFS-Ordering and BFS-Tree up-phase

• We start from u and construct a BFS tree. The red edges are tree edges.

5

1

4

8 97

3

6

10

2

u12

11

Page 27: Additive Spanners for  k -Chordal Graphs

Constructing Spanner down-phase

• Start from the last layer. For vertices of each component,choose the smallest one. Then try to connect others to it or its ancestor.

5

1

4

8 97

3

6

10

2

u12

11

3

a component on layer 3

Page 28: Additive Spanners for  k -Chordal Graphs

Constructing Spanner down-phase

• Start from the last layer. For vertices of each component,choose the smallest one. Then try to connect others to it or its ancestor.

edge used toconnect 3 and 5

5

1

4

8 97

3

6

10

2

u12

11

5

97

3

a component on layer 3

Page 29: Additive Spanners for  k -Chordal Graphs

Constructing Spanner down-phase

5

1

4

8 97

3

6

10

2

u12

11

a component on layer 3

• Start from the last layer. For vertices of each component,choose the smallest one. Then try to connect others to it or its ancestor.

edge used toconnect 3 and 5

Page 30: Additive Spanners for  k -Chordal Graphs

Final Spanner

• Final spanner is shown in red.

5

1

4

8 97

3

6

10

2

u12

11

Page 31: Additive Spanners for  k -Chordal Graphs

Analysis Of The Algorithm

• G is k-chordal if it has no chordless cycles of length >k• The spanner constructed by the above algorithm has the

following properties– It is an additive (k+1)-spanner– It contains at most 2n-2 edges– It can be constructed in O(k·n+m) time

Page 32: Additive Spanners for  k -Chordal Graphs

Open questions and future directions

• Can these ideas be applied to other graph families to obtain good sparse additive spanners?

• Can one get a constant approximation for the additive 3-spanner problem on chordal graphs?– so far,

• only a log-approximation for t=3

• 2-approximation for t>3

• What about t=2 (additive)? – so far, (from Peleg&Schaffer’89)

• a log-approximation for multiplicative 3-spanner

• for t=1, the lower bound is (n1.5) edges (as multiplicative 2-spanner)

Page 33: Additive Spanners for  k -Chordal Graphs

Thank You

Page 34: Additive Spanners for  k -Chordal Graphs

Layering

• Given a graph G=(V, E) and an arbitrary vertex uV, the

sphere of u is defined as

}),(:{)( rvudistVvuN Gr

• The ball of radius centered at u is defined as

}),(:{)( rvudistVvuB Gr

• A layering of G with respect to some vertex u is a partition of V into the spheres

r

thr

Page 35: Additive Spanners for  k -Chordal Graphs

BFS Ordering

• G=(V, E) is a graph with n vertices • In Breadth-First-Search (BFS), started at vertex u, we

number the vertices from n to 1 as follows– u is numbered by n and is put on an initially empty queue– a vertex v is repeatedly removed from the head of the queue and

the neighbors of v which are still unnumbered are consequently numbered and placed onto the queue

– we call v the father of those vertices which are placed onto the queue when v is removed from the queue. We use f(v) to denote the father of v

• An ordering generated by BFS is called BFS-ordering

Page 36: Additive Spanners for  k -Chordal Graphs

Layering and BFS-ordering, an example

• The vertices are numbered in BFS-ordering and the BFS tree is shown in red

10

7

3

6

9 8

1

5 4

2

Layer 0

Layer 1

Layer 2

Layer 3

Page 37: Additive Spanners for  k -Chordal Graphs

Constructing Additive 4-Spanner

• Method of constructing spanner H=(V, E’)– let be arbitrary vertex of G and ,

we use Breadth-First-Search (BFS) rooted at to label all the vertices of G.

– start from the layer of , for each vertex we add into

– start from the layer and for each connected component induced by we find its projection on layer and make it star and put all the edges in the star into

}:),(max{ Vvvudq G

thq v)(vvf 'E

thq

u

u

)(uN rth)1( r

'E

u

Page 38: Additive Spanners for  k -Chordal Graphs

Example• The following is an example. The think red lines consists the spanners for the chordal graph

5

11

78

14

17 15

16

12

13

18

4 3 2 1

6910

Page 39: Additive Spanners for  k -Chordal Graphs

Definitions and Symbols for k-chordal graph

• G is k-chordal if it has no chordless cycles of length>k• Let u be an arbitrary vertex of G. We define a graph

with the lth sphere as a vertex set. Two vertices are adjacent in if and only if they can be connected by a path outside the ball . We use to denote all the connected component of

• Also we define

lQ

)(uN l yx,lQ

)(1 uBl lp

l

lQQ ,,1

lQ

}:),(max{ Vvvudq G

Page 40: Additive Spanners for  k -Chordal Graphs

Constructing Spanners

• G is k-chordal if it has no chordless cycles of length>k• Method of constructing a spanner H=(V, E’)

1. for each vertex , we add into E’

2. for each connected component we identify a vertex such that is the minimum in BFS-ordering among all vertices in

3. check if then we add to

4. check if then we add to

5. If none of the above is true, we let and repeat 3 and 4

liQ

liQc

cliQ

v )(vvf

)(GEvc

)()( GEcvf

vc )(GE

)(cvf )(GE

)(),( cfcvfv