Download presentation
Presentation is loading. Please wait.
Published byLee McGee Modified over 8 years ago
1
Compact Encodings of Graphs Shin-ichi Nakano (Gunma Univ.) Gunma
2
Compact Encodings of Graphs Shin-ichi Nakano (Gunma Univ.) Gunma Nagano Tokyo Olympic 1998
3
Compact Encodings of Graphs Shin-ichi Nakano (Gunma Univ.) Gunma Nagano Tokyo Olympic 1998
4
Compact Encodings of Graphs Shin-ichi Nakano (Gunma Univ.) Gunma Nagano Tokyo Olympic 1998 なかの ながの
5
Compact Encodings of Graphs Shin-ichi Nakano (Gunma Univ.) Gunma
6
Why we need Compact Encodings for Graphs? Although the computation power increase The size of graphs increase more quickly Internet link graphFine 3D meshEtc.
7
reversible Irreversible reversible encoding one can reproduce the original Irreversible encoding one cannot reproduce the original graph spanner remove unimportant edges for Movie Music
8
reversible Irreversible reversible encoding one can reproduce the original graph Irreversible encoding one cannot reproduce the original graph
9
Compact encoding 0 0 0 0 1 1 1 0 0 1 1 0 1 1 1 0 0 1 1 0 0 1 1 1 0 0 1 0 1 0 1 1 0 1 1 0 0 1 1 0 0 1 Simple Data Structure ( Adjacency list or Adjacency matrix) encode Compact string save memory space save transmission costs decode
10
Compact encoding with Query Support 0 0 0 0 1 1 1 0 0 1 1 0 1 1 1 0 0 1 1 0 0 1 1 1 0 0 1 0 1 0 1 1 0 1 1 0 0 1 1 0 0 1 Simple Data Structure ( Adjacency list or Adjacency matrix) encode Compact string save processing time (use only main memory) (no page fault) What is the degree of Vertex v 4 ? 5 Query decode
11
In this talk I will show you compact encodings for (ordered) Trees Floor plans Triangulations Compact Encodings:
12
Compact Encodings: Trees Ordered trees with 4 vertices ordered = the left-to-right ordering matters # of ordered trees with n vertices = n-th Catalan number =
13
Number of Trees num of vertices num of trees 45 514 642 7132 8429 91430 104862
14
A lower bound of the length of code If the num of objects is 8 then at least 3 = log 8 bits are needed to encode them we need to assign a different code for each object 000 001 010 011 100 101 110 111
15
A lower bound of the length Since the num of trees is C n, at least log C n bits are needed to encode a tree with n vertices log C n = 2n - o(n)
16
Compact Encodings: Trees D Start DU U U D 2m bit = 2n-2 bit encoding Optimal ( simple & best!) D D U U D U [ [ ] ] [ ] Nested parenthsis structure query support o(n) bit table Depth First Traversal
17
Query Jacobson[1989] Munro and Raman[2001] …. Rank(x) return the position of node x in preorder Select(i) return the i-th node in preorder Child(x,i) return the i-th child of node x Deg(x) return the num of child nodex of x ….. (see Geary et.al. [2006])(search with keyword “succinct”) O(1) time
18
In this talk I will show you compact encodings for (ordered) Trees Floor plans [Yamanaka & Nakano 2006, 2007] Triangulations Compact Encodings:
19
Compact Encodings: Floor plans A floorplan is a plane drawing in which every face is a rectangle Applications VLSI, etc.
20
Compact Encodings: Floor plans break each SW corner vertex
21
Compact Encodings: Floor plans break each SW corner vertex
22
Compact Encodings: Floor plans break each SW corner vertex A tree is derived
23
Compact Encodings: Floor plans break each SW corner vertex A tree is derived
24
Compact Encodings: Floor plans break each SW corner vertex A tree is derived add two more vertices at the bottom
25
Compact Encodings: Floor plans Depth First Traversal from the NW corner next ? Start wall or fence
26
Compact Encodings: Floor plans Depth First Traversal from the NW corner next ? Start
27
Compact Encodings: Floor plans Always we have only two choices for the next edge Start
28
Compact Encodings: Floor plans Always we have only two choices for the next edge Start 2m = (3n -4) bit encoding 0 0 0 0 1 1 1 1 0 0 0 0 1 10
29
Compact Encodings: Floor plans Are there more compact encodings? YES !
30
More Compact Encodings: Floor plans
31
North South WestEast
32
More Compact Encodings: Floorplans
33
Rectangular Dual Floorplan
34
More Compact Encodings: Floorplans v parent of v The parent of v is the westmost one among the north neighbor Spanning Tree
35
More Compact Encodings: Floorplans [[ ] ][][ ]]] []] [] [[] ][ []
36
More Compact Encodings: Floorplans [[ ] ][][ ]]] []] [] [[] [ [] ] 1 [] [] 2 3 5 4 7 6 9 10 12 11 8 8 8E8W 6
37
More Compact Encodings: Floorplans [[ ] ][][ ]]] []] [] [[] [ [] ] 1 [] [] 2 3 5 4 7 6 9 10 12 11 8 8 8E8W 6
38
More Compact Encodings: Floorplans [] [] 8E8W 6 2W3W3E2E5W4E6W7W7E8W9W1W4W5E9E 10W10E [ [ ] ] [ [[ ] ] [[ ] ] [ ] [ 8E 1 2 3 4 6 7 9 10 12 11 8 5 8 Nested parenthsis structure
39
More Compact Encodings: Floorplans [] [] 8E8W 6 2W3W3E2E5W4E6W7W7E8W9W1W4W5E9E 10W10E [ [ ] ] [ [[ ] ] [[ ] ] [ ] [ 8E 1 2 3 4 6 7 9 10 12 11 8 5 8 Nested parenthsis structure
40
More Compact Encodings: Floorplans [] [] 8E8W 6 2W3W3E2E5W4E6W7W7E8W9W1W4W5E9E 10W10E [ [ ] ] [ [[ ] ] [[ ] ] [ ] [ 8E 1 2 3 4 6 7 9 10 12 11 8 5 8 Nested parenthsis structure
41
More Compact Encodings: Floorplans
43
D D U U Tree DDUUDDUUDDUD….. 2m = 2n -2 bit
44
More Compact Encodings: Floorplans D D U U Tree DDUUDDUUDDUD….. 2 bit for each edge Nested parenthsis [ [ ] ] [ [ [ ] ] [ [ ] ] [ ] ] ….. 0111101110111101 ….. 2 bit for each edge
45
More Compact Encodings: Floorplans D D U U Tree DDUUDDUUDDUD….. 2 bit for each edge Nested parenthsis [ [ ] ] [ [ [ ] ] [ [ ] ] [ ] ] ….. 0111101110111101 ….. 2 bit for each edge
46
More Compact Encodings: Floorplans D D U U Tree DDUUDDUUDDUD….. 2 bit for each edge Nested parenthsis [ [ ] ] [ [ [ ] ] [ [ ] ] [ ] ] ….. 0111101110111101 ….. 2 bit for each edge0 bit for each edge 5m/3 bit encoding
47
More Compact Encodings: Floorplans D D U U Tree DDUUDDUUDDUD….. 2 bit for each edge Nested parenthsis [ [ ] ] [ [ [ ] ] [ [ ] ] [ ] ] ….. 0111101110111101 ….. 2 bit for each edge0 bit for each edge 5m/3 bit encoding query support o(n) bit table
48
In this talk I will show you compact encodings for (ordered) Trees Floor plans Triangulations [Yamanaka & Nakano 2005] Compact Encodings:
49
Compact Encodings: Triangulations
50
Realizer: partition of inner edges into 3 trees Red RootBlue Root Green Root to Green Root to Red Rootto Blue Root
51
Compact Encodings: Triangulations Realizer Red RootBlue Root Green Root to Green Root to Red Rootto Blue Root
52
Compact Encodings: Triangulations Realizer Blue + Red = Purple Green Spanning Tree to Green Root to Red Rootto Blue Root
53
Compact Encodings: Triangulations Realizer Blue + Red = Purple Green Spanning Tree to Green Root to Red Rootto Blue Root
54
Compact Encodings: Triangulations 1W2W2E3W4W4E3E5W6W6E7W7E5E8W9W 10W10E 1 3 2 4 5 6 7 8 9 10 11 12 13
55
Compact Encodings: Triangulations Tree DUDDUUDDUDUUDD… 2 bit for each edge Nested parenthsis [ [ [ [ [ ] ] [ [ [ [ ] ] ] [ ] ] ] [.. 0000111001101110011. 2 bit for each edge 2m bit encoding query support o(n) bit table
56
Compact Encodings: Triangulations Are there more compact encodings? YES ! 4.35n +o(n) bits (with query support) a complete list of all possible triangulations having at most (log n) /4 nodes L. C. Aleardi, O. Devillers and G. Schaeffer[2005] 4m/3-1 bit (without query support) X. He, M. Y. Kao and H. I. Lu [1999]
57
Compact Encodings: Triangulations Are there more compact encodings? May be! Let’s try together!
58
Compact Encodings: Triangulations
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.