Schnyder woods: from graph encoding to graph drawing v 2 INF562, 9 f´ evrier 2016 Luca Castelli Aleardi v 0 v 1
Some facts about planar graphs (”As I have known them”)
Some facts about planar graphs Thm (Schnyder, Trotter, Felsner) G planar if and only if dim ( G ) ≤ 3 Thm (Kuratowski, excluded minors) G planar if and only if G contains neither K 5 nor K 3 , 3 as minors Thm (Y. Colin de Verdi` ere) G planar if and only if µ ( G ) ≤ 3 Thm (Koebe-Andreev-Thurston) ( µ ( G ) = multiplicity of λ 2 of a generalized laplacian) Every planar graph with n vertices is isomorphic to the intersection graph of n disks in the plane. 4 − 1 . . . . . . 0 deg ( v i ) L G [ i, k ] = { − A G [ i, j ] . . . − 1 5 L G = . . . . . . . . . . . . . . . 0 3 v N S 2 v N M
Using circles to measure distances Thm (Koebe-Andreev-Thurston) Every planar graph with n vertices is isomorphic to the intersection graph of n disks in the plane. (images by N. Bonichon)
Using circles to measure distances Thm (Koebe-Andreev-Thurston) Every planar graph with n vertices is isomorphic to the intersection graph of n disks in the plane. (images by R. Silveira) (images by N. Bonichon) Not every planar triangulation is Delaunay realizable
Using triangles to measure distances Thm (de Fraysseix, Ossona de Mendez, Rosenstiehl, ’94) (images by S. Felsner) Chew, ’89 TD-Delaunay: triangular distance Delaunay triangulations (images by N. Bonichon) Every planar triangulation is TD-Delaunay realizable
Planar triangulations e = 3 n − 6 n − e + f = 2 φ = (1 , 2 , 3 , 4)(17 , 23 , 18 , 22)(5 , 10 , 8 , 12)(21 , 19 , 24 , 15) . . . α = (2 , 18)(4 , 7)(12 , 13)(9 , 15)(14 , 16)(10 , 23) . . . 17 23 22 18 20 2 10 19 6 3 8 24 11 1 5 21 14 4 12 15 7 16 13 9 S 2
Schnyder woods and canonical orderings: overview of applications ( graph drawing , graph encoding , succinct representations, compact data structures, exhaustive graph enumeration, bijective counting, greedy drawings, spanners, contact representations, planarity testing, untangling of planar graphs, Steinitz representations of polyhedra, . . . )
Some (classical) applications (Chuang, Garg, He, Kao, Lu, Icalp’98) (He, Kao, Lu, 1999) Graph encoding 11 1 0 T 2 10 7 3 6 5 T 1 2 9 8 4 5 T 0 5 4 8 2 1 8 9 7 6 6 10 3 3 9 2 1 0 0 4 7 S ( ( [ [ [ [ ) ( ] ( ] ( ] { [ [ ) { ) ( } ] { ) ( } ] { [ [ [ [ ) { ) ( } ] { ) ( } ] ( ] { { ) ) ( } } { ) ( } } } ] ) ) ] Thm (Schnyder ’90) (Poulalhon-Schaeffer, Icalp 03) planar straight-line grid drawing (on a O ( n × n ) grid) bijective counting, random generation 2(4 n +1)! c n = (3 n +2)!( n +1)! ⇒ optimal encoding ≈ 3 . 24 bits/vertex
More (”recent”) applications Schnyder woods, TD-Delaunay graphs, orthogonal surfaces and Half- Θ 6 -graphs [ Bonichon et al., WG’10, Icalp ’10, ...] Greedy routing u b v a Every planar triangulation admits a greedy drawing (Dhandapani, Soda08) (conjectured by Papadimitriou and Ratajczak for 3-connected planar graphs)
Schnyder woods (the definition)
Schnyder woods: (planar) definition [Schnyder ’90] v 2 rooted triangulation on n nodes A Schnyder wood of a (rooted) planar triangulation is partition of all inner edges into three sets T 0 , T 1 and T 2 such that v 0 v 1 i) edge are colored and oriented in such a way that each inner nodes has exaclty one outgoing edge of each color ii) colors and orientations around each inner node must respect the local Schnyder condition
Schnyder woods: equivalent formulation v 2 [ 3 -orientation] 2 2 2 2 0 1 0 1 0 1 1 2 2 2 1 2 2 1 0 1 0 1 0 1 2 0 1 0 0 2 1 2 0 1 1 2 1 2 0 0 1 0 v 1 v 0 [normal labeling] 3 -connected graphs [Felsner] 1 2 0
Schnyder woods: spanning property [Schnyder ’90] v 2 T 2 T 0 v 2 v 0 v 1 v 0 T 1 Theorem The three sets T 0 , T 1 , T 2 are spanning v 1 trees of the inner vertices of T (each rooted at vertex v i )
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. v 1 v 0
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. v n − 1 perform a vertex conquest at each step v k G k ⇓ G k − 1 v 1 v 0
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. perform a vertex conquest at each step v k v n − 2 G k ⇓ w G k − 1 v 1 v 0
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. perform a vertex conquest at each step v k G k v n − 3 ⇓ G k − 1 v 1 v 0
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. perform a vertex conquest at each step v k G k ⇓ G k − 1 v 1 v 0
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. Invariant: v k u v 1 v 0
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. Invariant: v k u v 1 v 0
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. Invariant: v k u v 1 v 0
Schnyder woods: existence (algorithm I) [incremental vertex shelling, Brehm’s thesis] The traversal starts from the root face Theorem Every planar triangulation admits a Schnyder wood, which can be computed in linear time. Invariant: v k u v 2 v 1 v 0
Canonical orderings (the definition)
Canonical orderings: definition [de Fraysseix Pach Pollack] G 1 = { 0 , 1 , 2 } G 3 G 2 4 3 2 0 1 e e e G = G 7 G 4 G 5 6 8 5 7 e e
Planar straight-line drawings (of planar graphs)
Planar straight-line drawings [Wagner’36] ⇒ [Fary’48]
Planar straight-line drawings existence of straight-line drawing [Wagner’36] ⇒ [Fary’48] [Stein’51] Classical algorithms: [Tutte’63] [De Fraysseix, Pach, Pollack 89] [Schnyder’90] spring-embedding face-counting principle incremental ( Shift-algorithm )
Planar straight-line drawings [Wagner’36] ⇒ [Fary’48]
Planar straight-line grid drawings i h g [Wagner’36] ⇒ e [Fary’48] f d c a b Output Input of the problem geometric coordinates of vertices set of triangle faces A (a, b, c) (d, e, g) (i, g, b) (a, c, d) (e, b, g) (i, b, a) D (d, c, e) (a, f, h) F G (c, b, e) (a, h, i) E C (a, d, f) (i, h, f) (f, d, g) (i, f, g) B
Barycentric representation of a planar graph
Barycentric representation of a planar graph Barycentric representation def: → ( v 0 , v 1 , v 2 ) ∈ R 3 f ( v ) − c v 0 + v 1 + v 2 = 1 , for each vertex v for each edge ( x, y ) ∈ E and each vertex v 1 v 0 z / ∈ { x, y } there is an index k ∈ { 0 , 1 , 2 } v v 2 such that a x k < z k b v = v 0 a + v 1 b + v 2 c y k < z k where v i is the normalized area
Barycentric representation of a planar graph Barycentric representation def: → ( v 0 , v 1 , v 2 ) ∈ R 3 f ( v ) − v 0 + v 1 + v 2 = 1 , for each vertex v (0 , 0 , 1) c (0 , 1 , 0) (1 , 0 , 0) a b
Barycentric representation of a planar graph Barycentric representation def: → ( v 0 , v 1 , v 2 ) ∈ R 3 f ( v ) − v 0 + v 1 + v 2 = 1 , for each vertex v (0 , 0 , 1) for each edge ( x, y ) ∈ E and each vertex z / ∈ { x, y } there is an index k ∈ { 0 , 1 , 2 } such that x k < z k (0 , 1 , 0) y k < z k (0 , 0 , 1) max( x 2 , y 2 ) (1 , 0 , 0) f ( x ) no vertex z in the gray triangle f ( y ) defined by f ( x ) , f ( y ) f ( z ) (0 , 1 , 0) max( x 0 , y 0 ) (1 , 0 , 0)
Barycentric representation of a planar graph Theorem A barycentric representation defines a planar straight-line drawing of G , in the plane spanned by (1 , 0 , 0) , (0 , 1 , 0) and (0 , 0 , 1) . for each edge ( x, y ) ∈ E and each vertex (0 , 0 , 1) z / ∈ { x, y } , f ( z ) cannot lie on ( f ( x ) , f ( y )) max( x 2 , y 2 ) f ( z ) = tf ( x ) + (1 − t ) f ( y ) , for t ∈ [0 , 1] f ( x ) f ( y ) z k = tx k + (1 − t ) y k ) < tz k + (1 − t ) z k = z k f ( z ) (0 , 1 , 0) for k ∈ { 0 , 1 , 2 } max( x 0 , y 0 ) (1 , 0 , 0)
Recommend
More recommend