efficiently navigating a random delaunay triangulation
play

Efficiently navigating a random Delaunay triangulation Nicolas - PowerPoint PPT Presentation

Efficiently navigating a random Delaunay triangulation Nicolas Broutin, Olivier Devillers, Ross Hemsley The Delaunay Triangulation Take some points (Assume no 4 points on circle, or 3 points on line) The Delaunay Triangulation Add all


  1. Efficiently navigating a random Delaunay triangulation Nicolas Broutin, Olivier Devillers, Ross Hemsley

  2. The Delaunay Triangulation Take some points (Assume no 4 points on circle, or 3 points on line)

  3. The Delaunay Triangulation Add all triangles having empty circumcircles

  4. The Delaunay Triangulation Result: Delaunay Triangulation

  5. The Delaunay Triangulation Useful for Interpolation Surface Reconstruction Routing ... Easily extends to higher dimensions

  6. The Problem: Point Location

  7. Input: Delaunay Triangulation

  8. Input: Delaunay Triangulation , Point

  9. Output: Triangle containing point

  10. A Possible Solution (1) Choose arbitrary start vertex

  11. A Possible Solution (2) Move to neighbour that is closest to destination

  12. A Possible Solution (2) Move to neighbour that is closest to destination...

  13. A Possible Solution (2) Move to neighbour that is closest to destination...

  14. A Possible Solution (2) Move to neighbour that is closest to destination...

  15. A Possible Solution (3) Terminate when we cannot advance

  16. Call this: Vertex Walk - No (non-trivial) analysis - Very effective in practice Idea: Analyse for n random points in unit disc? Conjecture: Θ( | zq |√ n ) (expectation for random z, q )

  17. Why is it tricky to analyse? Next step depends non-trivially on previous steps.

  18. Our Contribution: A similar algorithm can give the properties we want

  19. Introducing Cone Walk “Search Cone” “Search Disc”

  20. Far from destination ⇒ cones do not intersect R i q Z i ⇒ progress for each step is iid r.v

  21. R i q Z i How does this relate to Delaunay... ?

  22. Lemma Always a path from Z i to Z i +1 in DT ∩ search disc.

  23. Lemma Always a path from Z i to Z i +1 in DT ∩ search disc. Proof By ‘growing circles’

  24. Lemma Always a path from Z i to Z i +1 in DT ∩ search disc. Proof By ‘growing circles’

  25. Lemma Always a path from Z i to Z i +1 in DT ∩ search disc. Proof By ‘growing circles’

  26. Lemma Always a path from Z i to Z i +1 in DT ∩ search disc. Proof By ‘growing circles’

  27. Cone Walk on the Delaunay Triangulation q Algorithm gives a path, like vertex walk

  28. Vertex Walk Cone Walk Competitve No Yes ( < 3.7) O p ( √ n log log n ) Worst case complexity O ( n ) No ⋆ Memoryless Yes [see paper] O p ( | zq |√ n log log n + 5 | zq | log 6 n ) � Worst Complexity ∀ z, q O ( n ) O p ( | zq |√ n + 5 | zq | log 6 n ) � Vertices on Path ∀ z, q O ( n ) All bounds are best known bounds For n uniform points in a unit disc

  29. Vertex Walk Cone Walk Competitve No Yes ( < 3.7) O p ( √ n log log n ) Worst case complexity O ( n ) No ⋆ Memoryless Yes [see paper] O p ( | zq |√ n log log n + 5 | zq | log 6 n ) � Worst Complexity ∀ z, q O ( n ) O p ( | zq |√ n + 5 | zq | log 6 n ) � Vertices on Path ∀ z, q O ( n ) All bounds are best known bounds For n uniform points in a unit disc

  30. Bounding Vertices Accessed Assume: - Know behaviour within discs - Pointset has no border - Planar Poisson process (intensity 1) [random points with average density 1 on R 2 ]

  31. Bounding Vertices Accessed q Consider some walk z

  32. Bounding Vertices Accessed q Consider some walk z It accesses all points in discs

  33. Bounding Vertices Accessed q Consider some walk z It accesses all points in discs + 1-neighbourhood

  34. Bounding Vertices Accessed q Consider some walk Outputs path z It accesses all points in discs + 1-neighbourhood

  35. Bounding Vertices Accessed q z

  36. Bounding Vertices Accessed q z

  37. Bounding Vertices Accessed Crossing Edges + Accessed ≤ Blue

  38. Bounding Vertices Accessed How many crossing edges? x

  39. Bounding Vertices Accessed How many crossing edges? Wheel [Devroye et al.]

  40. Bounding Vertices Accessed How many crossing edges? x in 1-neighbourhood ⇒ ≥ 1 × empty (because of Delaunay property)

  41. Bounding Vertices Accessed How many crossing edges? | xW | � − π 32 | xW | 2 � P ( x a border point ) = 24 exp [we assume input is R 2 for now]

  42. Bounding Vertices Accessed How many crossing edges? � E [# border points ] = P ( x a border point ) λ ( dx ) R 2 \ W | xW | � − π 32 | xW | 2 � P ( x a border point ) = 24 exp [we assume input is R 2 for now]

  43. Bounding Vertices Accessed Slivnyak-Mecke Formula How many crossing edges? � E [# border points ] = P ( x a border point ) λ ( dx ) R 2 \ W | xW | � − π 32 | xW | 2 � P ( x a border point ) = 24 exp [we assume input is R 2 for now]

  44. Bounding Vertices Accessed How many crossing edges? � − π � 32 | xW | 2 � E [# border points ] = 24 exp λ ( dx ) R 2 \ W | xW | � − π 32 | xW | 2 � P ( x a border point ) = 24 exp [we assume input is R 2 for now]

  45. Bounding Vertices Accessed How many crossing edges? � − π � 32 | xW | 2 � E [# border points ] = 24 exp λ ( dx ) R 2 \ W | xW | ∞ � − π � 32 i 2 � � ≤ 24 exp λ ( dx ) U 1 U i i =0 U 2 � − π 32 | xW | 2 � P ( x a border point ) = 24 exp [we assume input is R 2 for now]

  46. Bounding Vertices Accessed How many crossing edges? � − π � 32 | xW | 2 � E [# border points ] = 24 exp λ ( dx ) R 2 \ W | xW | ∞ � − π � 32 i 2 � � ≤ 24 exp λ ( dx ) U 1 U i i =0 ∞ − π � 32 i 2 � � ≤ λ ( U i ) 24 exp i =0 U 2 � − π 32 | xW | 2 � P ( x a border point ) = 24 exp [we assume input is R 2 for now]

  47. Bounding Vertices Accessed How many crossing edges? � − π � 32 | xW | 2 � E [# border points ] = 24 exp λ ( dx ) R 2 \ W | xW | ∞ � − π � 32 i 2 � � ≤ 24 exp λ ( dx ) U 1 U i i =0 ∞ − π � 32 i 2 � � ≤ λ ( U i ) 24 exp i =0 U 2 ∞ κ − 1 − π � − π 32 | xW | 2 � P ( x a border point ) = 24 exp � 32 i 2 � � � ≤ 24 π (2( R j + i ) + 1) exp [we assume input is R 2 for now] i =0 j =0

  48. Bounding Vertices Accessed How many crossing edges? | zq | , log 6 n � � E [# border points ] ≤ C · max

  49. Bounding Vertices Accessed How many crossing edges? | zq | , log 6 n � � E [# border points ] ≤ C · max Recall q z

  50. Bounding Vertices Accessed How many crossing edges? | zq | , log 6 n � � E [# border points ] ≤ C · max Recall q z

  51. Bounding Vertices Accessed How many crossing edges? | zq | , log 6 n � � E [# border points ] ≤ C · max Recall q z Euler Relation: � � # crossing ≤ 3 × border + blue

  52. Bounding Vertices Accessed From expectation to concentration

  53. Bounding Vertices Accessed From expectation to concentration Recall: � # border = 1 { x a border point } x ∈ X

  54. Bounding Vertices Accessed From expectation to concentration Sum of dependent r.v’s Recall: � # border = 1 { x a border point } x ∈ X

  55. Bounding Vertices Accessed From expectation to concentration Sum of dependent r.v’s Recall: � # border = 1 { x a border point } x ∈ X 2 t 2 � � �� P (# border points ≥ E [# border points ] + t ) ≤ E exp − χ · | X ∩ W ∂ |

  56. Bounding Vertices Accessed From expectation to concentration Sum of dependent r.v’s Recall: � # border = 1 { x a border point } x ∈ X Janson 2 t 2 � � �� P (# border points ≥ E [# border points ] + t ) ≤ E exp − χ · | X ∩ W ∂ |

  57. Bounding Vertices Accessed From expectation to concentration Sum of dependent r.v’s Recall: � # border = 1 { x a border point } x ∈ X Janson 2 t 2 � � �� P (# border points ≥ E [# border points ] + t ) ≤ E exp − χ · | X ∩ W ∂ | max. # overlapping ‘wheels’

  58. Bounding Vertices Accessed From expectation to concentration Sum of dependent r.v’s Recall: � # border = 1 { x a border point } x ∈ X Janson 2 t 2 � � �� P (# border points ≥ E [# border points ] + t ) ≤ E exp − χ · | X ∩ W ∂ | max. # overlapping ‘wheels’ Special region with ‘all’ border points

  59. Bounding Vertices Accessed Bounding the worst case (in brief)

  60. Bounding Vertices Accessed Bounding the worst case (in brief) 1) At most n 4 walks on n points

  61. Bounding Vertices Accessed Bounding the worst case (in brief) 1) At most n 4 walks on n points 2) Generate ‘small’ sample containing them all

  62. Bounding Vertices Accessed Bounding the worst case (in brief) 1) At most n 4 walks on n points 2) Generate ‘small’ sample containing them all 2) Concentration inequalities overwhelm sample size

  63. Thanks

  64. Contributes O ( | pq |√ n ) q p | pq | 1 D

Recommend


More recommend