Download presentation

Presentation is loading. Please wait.

Published byBlake Presswood Modified over 2 years ago

1
Rahnuma Islam Nishat Debajyoti Mondal Md. Saidur Rahman Graph Drawing and Information Visualization Laboratory Department of Computer Science and Engineering Bangladesh University of Engineering and Technology (BUET) Dhaka-1000, Bangladesh Point-Set Embeddings of Plane 3-Trees

2
a b i h f e d c g g a c b i h e f d Point-Set Embedding A Plane Graph G A Point-Set S Point-Set Embedding of G GD 2010, Konstanz, GermanySeptember 24, 2010 Vertices are mapped to points, edges are drawn as straight-line segments

3
a b c d e f Point-Set Embedding A triangle with 2 points No triangle with 2 points a bc d a b c d d a b c There exists no embedding of this graph on this point set GD 2010, Konstanz, GermanySeptember 24, 2010

4
Previous Results Graph ClassResults Bose et al. [1995] Trees Gritzmann et. al. [1991] Outerplanar Graphs O(n 2 ) O(n log n) P. Bose [2002] Outerplanar Graphs O(n log 3 n) S. Cabello [2006] General Planar Graphs, 2-Outerplanar Graphs NP-Complete Garcia et al. [2009] 3-connected cubic plane graphs Ikebe et al. [1994] Necessary and Sufficient Condition Trees O(n 2 ) GD 2010, Konstanz, GermanySeptember 24, 2010

5
Our Results ProblemsResults Plane 3-Tree of n vertices, point set of n points Balanced Plane 3-Tree O(n log 2 n) O(n 2 log n) Lower bound O(n log n) Plane 3-Tree of n vertices, point set of more than n points nk 8 GD 2010, Konstanz, GermanySeptember 24, 2010

6
Our Results ProblemsResults Plane 3-Tree of n vertices, point set of n points O(n 2 log n) Lower bound O(n log n) Plane 3-Tree of n vertices, point set of k points where k > n. nk 8 GD 2010, Konstanz, GermanySeptember 24, 2010

7
a b c d e f A triangulated plane graph Plane 3-Trees a b c Base case : a triangle d a b c Insert vertex d a b c d e Insert vertex e Insert vertex f GD 2010, Konstanz, GermanySeptember 24, 2010

8
Representative Vertex of a Plane 3-Tree Plane 3-Tree Representative Vertex a b c d e f In a Plane 3-Tree there is an unique inner vertex which is the neighbor of all the three outer vertices b c e d a d b f d c a GD 2010, Konstanz, GermanySeptember 24, 2010

9
Outline of Algorithm a b c d e If G has a point-set embedding on S then the convex hull of S has exactly 3 points of S Convex Hull f g h A Plane 3-Tree G A Point-Set S GD 2010, Konstanz, GermanySeptember 24, 2010

10
Outline of Algorithm b c d e A Plane 3-Tree G A Point-Set S a f g h c a b GD 2010, Konstanz, GermanySeptember 24, 2010

11
Outline of Algorithm b c d e a c b a 3 C 2 = 6 ways to map the outer vertices of G to the 3 points on the convex hull of S f g h A Plane 3-Tree G A Point-Set S GD 2010, Konstanz, GermanySeptember 24, 2010

12
d Outline of Algorithm b c d e a a c b n 1 =1 n 2 =1 n 3 =2 0 3 1 The number of points in each of the three regions can be counted in O(n) time. f g h Map the Representative Vertex Valid mapping?? GD 2010, Konstanz, GermanySeptember 24, 2010

13
Outline of Algorithm b c d e a a c b d 1 1 2 The mapping of the representative vertex is unique Finding a valid mapping of the representative vertex takes O(n 2 ) time. f g h Map the Representative Vertex n 1 =1 n 2 =1 n 3 =2 GD 2010, Konstanz, GermanySeptember 24, 2010

14
Outline of Algorithm b c d e a a c b d f g h e h f g The mapping of the other vertices are obtained recursively The algorithm computes the embedding of G in O(n 3 ) time. Map the other vertices Recursively GD 2010, Konstanz, GermanySeptember 24, 2010

15
Outline of Algorithm b c d e a a c b d f g h e h f g The mapping of the other vertices are obtained recursively The algorithm computes the embedding of G in O(n 3 ) time. Map the other vertices Recursively How to reduce the time complexity ?? GD 2010, Konstanz, GermanySeptember 24, 2010

16
Mapping of the representative vertex takes O(n 2 ) time O(n log n) time O(n 3 ) O(n 2 log n) GD 2010, Konstanz, GermanySeptember 24, 2010

17
Our Idea We formulate a set of linear equations to obtain the unique mapping of the representative vertex in O(n log n) time GD 2010, Konstanz, GermanySeptember 24, 2010

18
Our Idea u1u1 a b u2u2 u3u3 u4u4 u5u5 u1u1 u2u2 u5u5 u3u3 u4u4 u5u5 u2u2 u4u4 u3u3 u1u1 12345 AbAb c Sort the points according to their slopes We use this array A b to find the number of points above or below the slope of a point GD 2010, Konstanz, GermanySeptember 24, 2010

19
Our Idea Sort the points according to their slopes u1u1 a c b u2u2 u3u3 u4u4 u5u5 u1u1 u2u2 u3u3 u 4, u 5 u4u4 u5u5 u2u2 u1u1 u3u3 1(1)2345 AaAa We use this array A a to find the number of points on the left or on the right of the slope of a point GD 2010, Konstanz, GermanySeptember 24, 2010

20
Our Idea u1u1 a b u2u2 u3u3 u4u4 u5u5 u1u1 u5u5 u3u3 u 2,u 4 u3u3 u1u1 u2u2 u4u4 u5u5 123(1)45 AcAc c Sort the points according to their slopes We use this array A c to find the number of points above or below the slope of a point GD 2010, Konstanz, GermanySeptember 24, 2010

21
Counting Number of Points u1u1 a b u2u2 u3u3 u4u4 u5u5 c GD 2010, Konstanz, GermanySeptember 24, 2010

22
Counting Number of Points u1u1 a b u2u2 u3u3 u4u4 u5u5 c The interior of the convex hull is divided into 9 disjoint regions Identify the disjoint regions x5x5 x3x3 x4x4 x6x6 x2x2 x9x9 x7x7 x8x8 x1x1 GD 2010, Konstanz, GermanySeptember 24, 2010

23
Counting Number of Points x5x5 a b x3x3 x4x4 x6x6 x2x2 c x 1 +x 7 +x 6 = n 1 x 2 +x 8 +x 3 = n 2 x 4 +x 9 +x 5 = n 3 x9x9 x7x7 x8x8 x1x1 u 2 = d b c d e a f g h n 1 =1 n 2 =1 n 3 =2 Formulate 3 constraints GD 2010, Konstanz, GermanySeptember 24, 2010

24
Counting Number of Points Formulate 9 linear equations x5x5 a x3x3 x4x4 x6x6 x2x2 c x9x9 x7x7 x8x8 x1x1 u 2 = d x 2 +x 1 +x 7 +x 6 = 2 x 5 +x 9 +x 4 +x 3 = 2 x 8 = 0 u4u4 u5u5 u2u2 u1u1 u3u3 1(1)2345 AaAa b GD 2010, Konstanz, GermanySeptember 24, 2010

25
u5u5 u2u2 u4u4 u3u3 u1u1 12345 AbAb Set of Linear Equations Formulate 9 linear equations x5x5 a x3x3 x4x4 x6x6 x2x2 c x9x9 x7x7 x8x8 x1x1 u 2 = d x 2 +x 8 +x 3 +x 4 = 1 x 1 +x 7 +x 6 +x 5 = 3 x 9 = 0 b GD 2010, Konstanz, GermanySeptember 24, 2010

26
AcAc Set of Linear Equations Formulate 9 linear equations x5x5 a x3x3 x4x4 x6x6 x2x2 c x9x9 x7x7 x8x8 x1x1 u 2 = d x 6 +x 5 +x 9 +x 4 = 2 x 1 +x 2 +x 8 +x 3 = 1 x 7 = 1 b u3u3 u1u1 u2u2 u4u4 u5u5 123(1)45 GD 2010, Konstanz, GermanySeptember 24, 2010

27
Set of Linear Equations All the linear equations are given below Linear Equations : x 2 +x 1 +x 7 +x 6 = 2x 2 +x 8 +x 3 +x 4 = 1x 6 +x 5 +x 9 +x 4 = 2 x 5 +x 9 +x 4 +x 3 = 2x 1 +x 7 +x 6 +x 5 = 3x 1 +x 2 +x 8 +x 3 = 1 x 8 = 0x 9 = 0x 7 = 1 Constraints : x 1 +x 7 +x 6 = n 1 x 2 +x 8 +x 3 = n 2 x 4 +x 9 +x 5 = n 3 Solving these linear equations we find whether this is a valid mapping in O(1) time GD 2010, Konstanz, GermanySeptember 24, 2010

28
Complexity Analysis Given the slope lists, a representative vertex can be found in O(n) time Slope lists can be constructed for each representative vertex in O(n log n) time, which we use recursively to find subsequent representative vertices Complexity at each step is O(n log n+ n) =O(n log n) Total complexity for n steps is = O(n) x O(n log n) =O(n 2 log n) This time complexity can be further improved to O(n 2 ) if the points are in general position GD 2010, Konstanz, GermanySeptember 24, 2010

29
Lower Bound SORTING: A list of unsorted integers X={x 1, x 2, x 3, …, x n }, |X| = n A set of n+2 points S = {(x 1, x 1 2 ), (x 2, x 2 2 ), (x 3, x 3 2 ),…, (x n, x n 2 ), (0,0), (x max,0)} POINT-SET EMBEDDING A plane 3-tree G with exactly one inner vertex of degree three such that deletion of the outer vertices gives a path of n-1 vertices GD 2010, Konstanz, GermanySeptember 24, 2010

30
Lower Bound : Example A set of 4+2=6 points S = {(5, 5 2 ), (2, 2 2 ), (3, 3 2 ),(9, 9 2 ), (0,0), (x max =9,0)} Let the list of unsorted integers be {5, 2, 3, 9} where n = 4 (2, 2 2 ) (3, 3 2 ) (5, 5 2 ) (0,0) (9,0) (9, 9 2 ) GD 2010, Konstanz, GermanySeptember 24, 2010

31
Lower Bound : Example G Exactly one inner vertex of degree three a b c d e f S (2, 2 2 ) (3, 3 2 ) (5, 5 2 ) (0,0) (9,0) (9, 9 2 ) A plane 3-tree G with exactly one inner vertex of degree three GD 2010, Konstanz, GermanySeptember 24, 2010

32
Lower Bound : Example A path of n-1=3 vertices a c d e f b G S (2, 2 2 ) (3, 3 2 ) (5, 5 2 ) (0,0) (9,0) (9, 9 2 ) A plane 3-tree G with exactly one inner vertex of degree three Deletion of the outer vertices gives a path of n-1 = 3 vertices GD 2010, Konstanz, GermanySeptember 24, 2010

33
Lower Bound : Example G a b c d e f S (2, 2 2 ) (3, 3 2 ) (5, 5 2 ) (0,0) (9,0) (9, 9 2 ) We can show that from the point-set embedding of G we can find a sorted order of the points G always has an embedding on S GD 2010, Konstanz, GermanySeptember 24, 2010

34
Lower Bound : Example G a b c d e f S (2, 2 2 ) (3, 3 2 ) (5, 5 2 ) (0,0) (9,0) (9, 9 2 ) convex-hull of S contains {(x max =9, 9 2 ), (x max =9,0), (0,0)} Find the convex hull of S GD 2010, Konstanz, GermanySeptember 24, 2010

35
c a b Lower Bound : Example a b c d e f We show two mapping of the outer vertices a, b, c Map the outer vertices of G a b c GD 2010, Konstanz, GermanySeptember 24, 2010

36
c a b Lower Bound : Example a b c d e f Map the representative vertex d a b c a a b b c c 0 0 2 d d GD 2010, Konstanz, GermanySeptember 24, 2010

37
c a b Lower Bound : Example a b c d e f Map the representative vertex d a b c a a b b c c 0 0 2 d d Representative vertex d can be mapped to the point with second smallest x-coordinate or second largest x-coordinate GD 2010, Konstanz, GermanySeptember 24, 2010

38
c a b Lower Bound : Example a b c d e f Map the other vertices recursively a b c a a b b c c d d ee f f GD 2010, Konstanz, GermanySeptember 24, 2010

39
c a b Lower Bound : Example a b c d e f a b c a a b b c c d d ee f f The order in which the inner vertices are mapped gives the sorted order of the numbers ascending descending GD 2010, Konstanz, GermanySeptember 24, 2010

40
Lower Bound Since the lower bound of Sorting Problem is Ω(n log n) The Lower Bound of Point-Set Embedding = Ω(n log n) GD 2010, Konstanz, GermanySeptember 24, 2010

41
What if |S| > n ? b c d e a f g h A Plane 3-Tree G A Point-Set S n = 8 |S| = k = 20 The number of points in S is greater than the number of vertices of G GD 2010, Konstanz, GermanySeptember 24, 2010

42
Representative Tree b c a A Plane 3-Tree G If n=3 in G then T is a null tree Representative Tree T Base Case : n=3 GD 2010, Konstanz, GermanySeptember 24, 2010

43
Representative Tree b a A Plane 3-Tree G If n=4 in G then T has only one node with three dummy vertices Representative Tree T n=4 d c d b c a GD 2010, Konstanz, GermanySeptember 24, 2010

44
b a d c b d e Representative Tree a A Plane 3-Tree G Representative Tree T Add other nodes to T recursively c d e GD 2010, Konstanz, GermanySeptember 24, 2010

45
b d e a c b d e Representative Tree a A Plane 3-Tree G Representative Tree T Add other nodes to T recursively c d e f f GD 2010, Konstanz, GermanySeptember 24, 2010

46
d e a c f b d e Representative Tree a A Plane 3-Tree G Representative Tree T Add other nodes to T recursively c d e f g f g GD 2010, Konstanz, GermanySeptember 24, 2010

47
b d e a c f g b d e Representative Tree a A Plane 3-Tree G Representative Tree T Add other nodes to T recursively c d e f g f g h h T is an unique ternary tree whose internal nodes are the n-3 inner vertices of G and leaves are dummy nodes GD 2010, Konstanz, GermanySeptember 24, 2010

48
Our Algorithm b c d e a f g h A Plane 3-Tree G A Point-Set S Take projection of the points of S on X and Y axis GD 2010, Konstanz, GermanySeptember 24, 2010

49
Our Algorithm b c d e a f g h A Plane 3-Tree G A Point-Set S Map the outer vertices to any 3 points of S a c b GD 2010, Konstanz, GermanySeptember 24, 2010

50
Our Algorithm Representative tree T of G A Point-Set S Map the root d of T to a point inside abc a c b d(5) e(1) f(2) g(1) h(1) d GD 2010, Konstanz, GermanySeptember 24, 2010

51
Subproblems Representative tree T of G A Point-Set S Map the root d of T to a point inside abc a c b d(5) e(1) f(2) g(1) h(1) d The mapping of d along with the outer vertices divide the problem into three subproblems GD 2010, Konstanz, GermanySeptember 24, 2010

52
Recursion Solve the subproblems recursively for each mapping of d a c b d f(2) g(1) a c d GD 2010, Konstanz, GermanySeptember 24, 2010

53
Recursion Solve the subproblems recursively for each mapping of d a c b d f(2) g(1) a c d f No point for g GD 2010, Konstanz, GermanySeptember 24, 2010

54
Recursion Solve the subproblems recursively for each mapping of d a c b d f(2) g(1) a c d false GD 2010, Konstanz, GermanySeptember 24, 2010

55
Recursion Solve the subproblems recursively for each mapping of d a c b d a c d a b d b d c false GD 2010, Konstanz, GermanySeptember 24, 2010

56
Recursion Solve the subproblems recursively for each mapping of d a c b d a c d a b d b d c d(5) e(1) f(2) g(1) h(1) false GD 2010, Konstanz, GermanySeptember 24, 2010

57
Recursion Solve the subproblems recursively for each mapping of d a c d a b d b d c d(5) e(1) f(2) g(1) h(1) h e false GD 2010, Konstanz, GermanySeptember 24, 2010

58
Combine the Solutions Combine the solutions of the subproblems a c d a b d b d c false h e a c b d h e GD 2010, Konstanz, GermanySeptember 24, 2010

59
Overlapping Subproblems a c b d h e false Store the results of the Subproblems a c b d h e false The results of the subproblems can be reused in overlapping cases GD 2010, Konstanz, GermanySeptember 24, 2010

60
Complexity Analysis Total time to compute a point set embedding (if one exists) is O(nk 8 ) GD 2010, Konstanz, GermanySeptember 24, 2010

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google