1
Probability and Delaunay triangulations 1 Randomized algorithms for - - PowerPoint PPT Presentation
Probability and Delaunay triangulations 1 Randomized algorithms for - - PowerPoint PPT Presentation
Probability and Delaunay triangulations 1 Randomized algorithms for Delaunay triangulations Poisson Delaunay triangulation 2 - 1 Randomized algorithms for Delaunay triangulations Randomized backward analysis of binary trees Randomized
2 - 1
Randomized algorithms for Delaunay triangulations Poisson Delaunay triangulation
2 - 2
- Randomized backward analysis of binary trees
- Randomized incremental construction of Delaunay
- Jump and walk
- The Delaunay hierarchy
- Biased randomized incremental order
- Chew algorithm for convex polygon
Randomized algorithms for Delaunay triangulations Poisson Delaunay triangulation
- Poisson distribution
- Slivnyak-Mecke formula
- Blaschke-Petkanschin variables substitution
- Stupid analysis of the expected degree
- Straight walk expected analysis
- Catalog of properties
3 - 1 1 1
Sorting
3 - 2 1 1
Sorting
4 - 1
Binary tree
8
Sorting
4 - 2
Binary tree
8
Sorting
4 - 3
Binary tree
8
8 > 8 Sorting
4 - 4
Binary tree
8 4
Sorting
4 - 5
Binary tree
8 4 7
Sorting
4 - 6
Binary tree
8 4 7 14
Sorting
4 - 7
Binary tree
8 4 7 14 12
Sorting
4 - 8
Binary tree
8 4 7 14 12 1
Sorting
4 - 9
Binary tree
8 4 7 14 12 1 11
Sorting
4 - 10
Binary tree
8 4 7 14 12 1 11 ] 1, 1]
Sorting
4 - 11
Binary tree
8 4 7 14 12 1 11 ] 1, 1] ]1, 4]
Sorting
4 - 12
Binary tree
8 4 7 14 12 1 11 1 1 8 4 7 14 12 1 11
Sorting Sorting Sorting
5 - 1 8 time new drawing
1
Sorting
5 - 2 8 4 time new drawing
1 2
Sorting
5 - 3 8 4 7 time new drawing
1 2 3
Sorting
5 - 4 8 4 7 14 time new drawing
1 2 3 4
Sorting
5 - 5 8 4 7 14 12 time new drawing
1 2 3 4 5
Sorting
5 - 6 8 4 7 14 12 1 time new drawing
1 2 3 4 5 6
Sorting
5 - 7 8 4 7 14 12 1 11 time new drawing
1 2 3 4 5 6 7
Sorting
5 - 8 8 4 7 14 12 1 11 time new drawing
1 2 3 4 5 6 7
1 1 8 4 7 14 12 1 11
Sorting
5 - 9 8 4 7 14 12 1 11 time new drawing
1 2 3 4 5 6 7
1 1 8 4 7 14 12 1 11
Sorting
6 - 1 time
Sorting
6 - 2 time 1 1
Sorting
6 - 3 time 1 1
k
Sorting
6 - 4 time 1 1
k
Sorting
6 - 5 time 1 1
k n Localisation
Sorting
6 - 6 time 1 1
k n Localisation
Sorting
6 - 7 time 1 1
k n Localisation
Sorting
6 - 8 time 1 1
k n Localisation
Sorting
6 - 9 time 1 1
k n Localisation
Sorting
E []visited nodes] O( 2
k)
6 - 10 time 1 1
k n Localisation
Total insertion : X
k
2 k ' 2 log n
Sorting
E []visited nodes] O( 2
k)
6 - 11 time 1 1
k n Localisation
Total insertion : X
k
2 k ' 2 log n
Sorting
Total construction : X
k
2 log k ' 2n log n
E []visited nodes] O( 2
k)
7 - 1 new drawing
] 1, 1[ conflict graph
Sorting
1 1 8 4 7 14 12 1 11
7 - 2 8
] 1, 8[ ]8, 1[
Sorting
1 1 8 4 7 14 12 1 11
7 - 3 8 4
] 1, 8[ ]8, 1[
14
] 1, 4[ ]4, 8[ ]8, 14[ ]14, 1[
Sorting
1 1 8 4 7 14 12 1 11
8
Quicksort Unbalanced binary tree History graph Conflict graph Same analysis O(n log n) Backwards analysis Analyse last insertion and sum Last object is a random object
Sorting
9
Randomization
Backwards analysis for Delaunay triangulation
10 - 1
Delaunay triangulation ] of triangles during incremental construction?
10 - 2
Delaunay triangulation ] of triangles during incremental construction?
10 - 3
Delaunay triangulation ] triangles created/incident to last point? ] of triangles during incremental construction?
10 - 4
Delaunay triangulation ] triangles created/incident to last point?
Last point?
] of triangles during incremental construction?
10 - 5
1 n n
X
i=1
d(pi) 6
10 - 6
1 n n
X
i=1
d(pi) 6
P 6 = 6n
11 - 1 Alternative analysis Triangle ∆ with j stoppers
11 - 2 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists in the triangulation of a sample of size ↵n
' ↵3(1 ↵)j ↵3(1 ↵)
1 α 1
4↵3
if 2 j 1
α
11 - 3 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists in the triangulation of a sample of size ↵n
' ↵3(1 ↵)j ↵3(1 ↵)
1 α 1
4↵3
Size of the triangulation of the sample
=
n
X
j=0
P[∆withj stoppersisthere] ⇥ ]∆withj stoppers
if 2 j 1
α
11 - 4 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists in the triangulation of a sample of size ↵n
' ↵3(1 ↵)j ↵3(1 ↵)
1 α 1
4↵3
Size of the triangulation of the sample
=
n
X
j=0
P[∆withj stoppersisthere] ⇥ ]∆withj stoppers
- 1/α
X
j=0
↵3 4 ⇥ ]∆ with j stoppers if 2 j 1
α
11 - 5 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists in the triangulation of a sample of size ↵n
' ↵3(1 ↵)j ↵3(1 ↵)
1 α 1
4↵3
Size of the triangulation of the sample
=
n
X
j=0
P[∆withj stoppersisthere] ⇥ ]∆withj stoppers
- 1/α
X
j=0
↵3 4 ⇥ ]∆ with j stoppers= ↵3]∆ with 1
α stoppers
if 2 j 1
α
11 - 6 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists in the triangulation of a sample of size ↵n
' ↵3(1 ↵)j ↵3(1 ↵)
1 α 1
4↵3
Size of the triangulation of the sample
=
n
X
j=0
P[∆withj stoppersisthere] ⇥ ]∆withj stoppers
- 1/α
X
j=0
↵3 4 ⇥ ]∆ with j stoppers= ↵3]∆ with 1
α stoppers
= O(↵n) if 2 j 1
α
11 - 7 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists in the triangulation of a sample of size ↵n
' ↵3(1 ↵)j ↵3(1 ↵)
1 α 1
4↵3
Size of the triangulation of the sample
=
n
X
j=0
P[∆withj stoppersisthere] ⇥ ]∆withj stoppers
- 1/α
X
j=0
↵3 4 ⇥ ]∆ with j stoppers= ↵3]∆ with 1
α stoppers
= O(↵n) Size (order k Voronoi) αn
α3 = nk2
if 2 j 1
α
11 - 8 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
11 - 9 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
=
n
X
j=0
P[∆ with j stoppers appears] ⇥ ]∆ with j stoppers
] of created triangles
11 - 10 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
=
n
X
j=0
P[∆ with j stoppers appears] ⇥ ]∆ with j stoppers
] of created triangles
=
n
X
j=0
(P[∆ with j] P[∆ with j + 1]) ⇥ ]∆ with j stoppers
11 - 11 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
=
n
X
j=0
P[∆ with j stoppers appears] ⇥ ]∆ with j stoppers
] of created triangles
=
n
X
j=0
(P[∆ with j] P[∆ with j + 1]) ⇥ ]∆ with j stoppers '
n
X
j=0
18 j4 ⇥ nj2 = O(n X 1 j2 ) = O(n)
11 - 12 Alternative analysis Triangle ∆ with j stoppers
It remains to analyze conflict location Conflict graph / History graph
11 - 13 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
=
n
X
j=0
j ⇥ P[∆ with j stoppers appears] ⇥ ]∆ with j stoppers
] of conflicts occuring
11 - 14 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
=
n
X
j=0
j ⇥ P[∆ with j stoppers appears] ⇥ ]∆ with j stoppers
] of conflicts occuring
=
n
X
j=0
j ⇥ (P[∆ with j] P[∆ with j + 1]) ⇥ ]∆ with j stoppers
11 - 15 Alternative analysis Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
=
n
X
j=0
j ⇥ P[∆ with j stoppers appears] ⇥ ]∆ with j stoppers
] of conflicts occuring
=
n
X
j=0
j ⇥ (P[∆ with j] P[∆ with j + 1]) ⇥ ]∆ with j stoppers '
n
X
j=0
j ⇥ 18 j4 ⇥ nj2 = O(n X 1 j ) = O(nlog n)
12 - 1
History graph
12 - 2
History graph
12 - 3
History graph
12 - 4
Father Stepfather History graph
13 - 1
Father Stepfather (Delaunay tree) History graph
13 - 2
Father Stepfather (Delaunay tree) if conflict there was a conflict with the father
- r the stepfather
- r both
History graph
14 - 1 Conflict graph
14 - 2 Conflict graph
14 - 3 Conflict graph
14 - 4 Conflict graph Insert
14 - 5 Conflict graph
14 - 6 Conflict graph
14 - 7 Conflict graph
15 - 1 Walk
15 - 2 Walk
15 - 3 Walk
15 - 4 Walk Complexity O(n)
15 - 5 Walk Complexity O(n) T e a s e r p r
- b
a b i l i t y l e c t u r e Better bounds for random points
16 - 1 Jump and walk
16 - 2 Jump and walk
16 - 3 Jump and walk
16 - 4 Jump and walk Hopefully shorter walk Designed for random points O( 3 pn) expected location time
17 - 1 Jump and walk (no distribution hypothesis)
17 - 2 Jump and walk (no distribution hypothesis) E [] of in ] = n
k
17 - 3 Jump and walk (no distribution hypothesis) choose k =
2
pn Walk length = O n
k
- E [] of
in ] = n
k
17 - 4 Jump and walk (no distribution hypothesis) choose k =
2
pn Delaunay hierarchy Walk length = O n
k
- E [] of
in ] = n
k
17 - 5 Jump and walk (no distribution hypothesis) choose k =
2
pn Delaunay hierarchy
n k1
Walk length = O n
k
- E [] of
in ] = n
k
17 - 6 Jump and walk (no distribution hypothesis) choose k =
2
pn Delaunay hierarchy
n k1 + k1 k2
Walk length = O n
k
- E [] of
in ] = n
k
17 - 7 Jump and walk (no distribution hypothesis) choose k =
2
pn Delaunay hierarchy
n k1 + k1 k2
Walk length = O n
k
- E [] of
in ] = n
k
+ k2
k3 + . . .
17 - 8 Jump and walk (no distribution hypothesis) choose k =
2
pn Delaunay hierarchy
n k1 + k1 k2
Walk length = O n
k
- E [] of
in ] = n
k
+ k2
k3 + . . .
choose
ki ki+1 = ↵
17 - 9 Jump and walk (no distribution hypothesis) choose k =
2
pn Delaunay hierarchy
n k1 + k1 k2
Walk length = O n
k
- E [] of
in ] = n
k
+ k2
k3 + . . .
choose
ki ki+1 = ↵
point location in O (↵ logα n)
17 - 10 Jump and walk (no distribution hypothesis) choose k =
2
pn Delaunay hierarchy
n k1 + k1 k2
Walk length = O n
k
- E [] of
in ] = n
k
+ k2
k3 + . . .
choose
ki ki+1 = ↵
point location in O (↵ logα n) point location in O (p↵ logα n)
18 - 1 Technical detail Walk length = O ] of in
( ) = O
n
k
18 - 2 Technical detail Walk length = O ] of in
( ) = O
n
k
- random point
not a random point
18 - 3 Technical detail Walk length = O ] of in
( ) = O
n
k
- random point
not a random point E [d ] = 1 n X
q
dNN(q) = 1 n X
q
X
v=NN(q)
dv = 1 n X
v
X
q;v=NN(q)
dv 1 n X
v
6dv 36
18 - 4 Technical detail Walk length = O ] of in
( ) = O
n
k
- random point
not a random point E [d ] = 1 n X
q
dNN(q) = 1 n X
q
X
v=NN(q)
dv = 1 n X
v
X
q;v=NN(q)
dv 1 n X
v
6dv 36 P d
19 How many randomness is necessary? If the data are not known in advance shuffle locally
Randomization
20
Drawbacks of random order non locality of memory access data structure for point location Hilbert sort
Randomization
21 - 1
21 - 2
21 - 3
21 - 4
22
Drawbacks of random order non locality of memory access data structure for point location Hilbert sort Last point is not at all a random point Walk should be fast no control of degree of last point
23 - 1
23 - 2
23 - 3
23 - 4
23 - 5
23 - 6
24 - 1 Triangle ∆ with j stoppers
24 - 2 Triangle ∆ with j stoppers Size (order k Voronoi) αn
α3 = nk2
24 - 3 Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
24 - 4 Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
remains Θ(j3)
24 - 5 Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
=
n
X
j=0
P[∆ with j stoppers appears] ⇥ ]∆ with j stoppers
] of created triangles
' O( X nj2 j4 ) = O(n)
remains Θ(j3)
24 - 6 Triangle ∆ with j stoppers
Probability that it exists during the construction
=
3 j+3 2 j+2 1 j+1
=
n
X
j=0
j ⇥ P[∆ with j stoppers appears] ⇥ ]∆ with j stoppers
] of conflicts occuring
' O( X j nj2 j4 ) = O(nlog n)
remains Θ(j3)
25 - 1 random order (visibility walk) x-order Hilbert order Biased order (Spatial sorting) locate using Delaunay hierarchy
0.7 seconds 157 seconds 3 seconds 0.8 seconds 6 seconds
Delaunay 2D 1M random points
25 - 2 random order (visibility walk) x-order Hilbert order Biased order (Spatial sorting) locate using Delaunay hierarchy
Delaunay 2D 100K parabola points
128 seconds 632 seconds 46 seconds 0.3 seconds 0.3 seconds
48