![Page 1: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/1.jpg)
Ph.D. Defense
Maksym Zavershynskyi
Supervisor: Prof. Evanthia PapadopoulouDate: Lugano, 24 November 2014
Higher-OrderVoronoi Diagramsof Polygonal Objects
![Page 2: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/2.jpg)
Voronoi Diagram
Voronoi DiagramNearest neighbor Voronoi diagram of sites S is the partitioning of the plane into regions, such that every point within a fixed region has the same nearest site.
![Page 3: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/3.jpg)
Higher-Order Voronoi Diagram
Higher-Order Voronoi DiagramOrder-k Voronoi diagram of sites S is the partitioning of the plane into regions, such that every point within a fixed region has the same closest k sites.
Complexity
Lee’82
![Page 4: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/4.jpg)
Voronoi Diagram of Line Segments
Voronoi Diagram of Line SegmentsThe distance to a line segment is measured as the minimum distance.
![Page 5: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/5.jpg)
Higher-Order Voronoi Diagram of Line Segments
Higher-Order Voronoi Diagram of Line SegmentsThe higher-order Voronoi diagram of points is the only concrete higher-order Voronoi diagram that has been studied so far!
2-order Voronoi diagram of line segments
![Page 6: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/6.jpg)
Motivation
Motivation?
1.It is a fascinating combinatorial problem to study!
2.It is motivated by applications
![Page 7: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/7.jpg)
Timeline
Higher-Order Voronoi Diagrams Timeline
1975 - Introduced by Shamos and Hoey
1975 1985 1995 2005 2014
1982 - Structural bound and first algorithm by Lee
1985-2000 - Around 15 Algorithms Discovered 2006 - Farthest Line Segment Voronoi
Diagram Studied by Aurenhammer et al.
2011 - Farthest Polygon Voronoi Diagram Studied by Cheong et al.
2010-2014 Our Research!
![Page 8: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/8.jpg)
Algorithms for Higher-Order Voronoi Diagrams
Lee
Aggarwal et al.
Rosenberger
Edelsbrunner
Chazelle and Edelsbrunner
Chazelle and Edelsbrunner
Boissonat et al.
Algorithms for Higher-Order Voronoi Diagrams
![Page 9: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/9.jpg)
Algorithms for Higher-Order Voronoi Diagrams
Aurenhammer
Aurenhammer and Schwarzkopf
Mulmuley
Clarkson
Agarwal et al.
Chan
Ramos
Chan
Algorithms for Higher-Order Voronoi Diagrams
Almost !
![Page 10: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/10.jpg)
Outline
Contributions of this Dissertation
1.Higher-Order Voronoi Diagrams of Line Segments
2.Higher-Order Voronoi Diagrams of a Planar Straight-Line Graph
3.Sweepline Algorithm
4.Algorithms for Higher-Order Abstract Voronoi Diagrams
![Page 11: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/11.jpg)
Higher-OrderVoronoi Diagramsof Line Segments
![Page 12: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/12.jpg)
Higher-Order Voronoi Diagram of Line Segments
Higher-Order Voronoi Diagram of Line SegmentsOrder-k Voronoi diagram of sites S is the partitioning of the plane into regions, such that every point within a fixed region has the same closest k sites.
![Page 13: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/13.jpg)
Disconnected Regions
Disconnected RegionsA single order-k Voronoi region can disconnect into Ω(n) faces, k>1.
2-order Voronoi diagram of line segments
This does not happen for points!
![Page 14: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/14.jpg)
1.In the case of points the faces are convex polygons:
In the case of line segments not convex and not polygons:
2.In the case of points we have k-set theory
In the case of line segments we have to use more general structures
3.In the case of points
In the case of line segments
Points vs Line Segments
Points vs Line Segments
![Page 15: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/15.jpg)
Structural Complexity
Despite all these difficulties we proved that the structural complexity of the order-k Voronoi diagram of disjoint line segments is
same as for the points!
![Page 16: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/16.jpg)
Kirkpatrick’79The structural complexity of the order-1 Voronoi diagram is:
The structural complexity of the order-(n-1) Voronoi diagram is:
Intersecting Line Segments
Intersecting Line Segments
We proved that the structural complexity of the higher-order Voronoi diagram of intersecting line segments is
Aurenhammer et al.’06
![Page 17: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/17.jpg)
We have extended our results to Lp metrics, 1≤p≤∞
Intersecting Line Segments
In Lp Metrics
For disjoint line segments in L1 and L∞ we proved tighter bounds:
![Page 18: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/18.jpg)
Higher-OrderVoronoi Diagramsof a Planar Straight-Line Graph
![Page 19: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/19.jpg)
Planar Straight-Line Graph
Planar Straight-Line Graph
![Page 20: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/20.jpg)
Planar Straight-Line Graph
Planar Straight-Line Graph
s1 s2
b(s1, s2)
b(s1, s2)
2-dimensional bisectors
s1
s2s3
s4
b(s1, s4)b(s2, s4)b(s3, s4)b(s1, s4)
b(s2, s4), b(s3, s4)
non-transversal intersections
![Page 21: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/21.jpg)
Augmenting the Definition of a Voronoi Region
Augmenting the Definition of a Voronoi Region
Order-k subset H of S:
Type-1:
Type-2: and there is a proper order-k disk such that
p - is the representative of
An order-k disk - the disk of minimum radius that intersects at least k line segments.
- segments intersected by
![Page 22: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/22.jpg)
Augmenting the Definition of a Voronoi Region
Augmenting the Definition of a Voronoi Region
Type-1 order-k Voronoi region:
Type-2 order-k Voronoi region:
![Page 23: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/23.jpg)
Order-k Voronoi Diagram of a Planar Straight-Line Graph
Order-k Voronoi Diagram of a PSLG
s1
s2
s3
s4s5s6
s7
s8
V1({s5, s6}a, S)
V1({s1, s6, s7}d, S)
V1({s1, s2}f , S) V1({s2, s3}g , S)
V1({s3, s4}b, S)
V1({s5}, S) V1({s4}, S)
V1({s3}, S)
V1({s2}, S)
V1({s1}, S)
V1({s6}, S)
V1({s7}, S)
V1({s8}, S)
V1({s4, s5}c, S)V1({s7, s8}e, S)
ab
c
d
e
f gV2({s1, s2}, S)
V2({s6, s5}, S) V2({s3, s4}, S)
V2({s3, s8}, S)
V2({s2, s8}, S)
V2({s4, s5}, S)
V2({s7, s5}, S)
V2({s7, s8}, S)
V2({s3, s4, s5}c, S)
V2({s4, s5, s8}c, S)
V2({s5, s7, s8}e, S)
V2({s2, s7}, S)
V2({s1, s6, s7}d, S)
V2({s2, s3, s8}g , S)
V2({s1, s7}, S)
V2({s6, s7}, S)
s1
s2
s3
s4s5s6
s7
s8
ab
c
d
e
fg
![Page 24: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/24.jpg)
Structural Complexity
Structural Complexity
We proved that the structural complexity is
We have extended the iterative algorithm to construct the order-k Voronoi
diagram of a PSLG, with the following time complexity:
![Page 25: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/25.jpg)
Publications
Publications
• Papadopoulou, E. and Zavershynskyi, M. The higher-order Voronoi diagram of line segments. To appear in Algorithmica journal.
• Papadopoulou, E. and Zavershynskyi, M. [2012] On higher-order Voronoi diagrams of line segments, in Chao, K.-M., Hsu, T.-s., Lee, D.-T. (eds), ISAAC, Vol. 7676 of LNCS, Springer, pp. 177-186
•Extended abstract: Papadopoulou, E. and Zavershynskyi, M. [2012] On higher-order Voronoi diagrams of line segments. EuroCG 2012, pp. 232-236
![Page 26: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/26.jpg)
Sweepline Algorithmfor Higher-Order Voronoi Diagramsof Line Segments
![Page 27: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/27.jpg)
The Idea of the Sweepline Algorithm
The IdeaAs the horizontal line moves down we maintain k x-monotone curves.
�
x
s
![Page 28: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/28.jpg)
Time and Space Complexity
Time and Space Complexity
•Time complexity:
•Space complexity:
•Can be used to construct all order-i Voronoi diagrams, for i≤k
•Can be used for on-the-fly computations
•Memory efficient
•Easy to implement
![Page 29: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/29.jpg)
Sweepline Algorithm for a Planar Straight-Line Graph
Sweepline Algorithm for PSLG
A0
A1
A2
�
•Can be generalized to construct the order-k Voronoi diagram of a planar straight-line graph•The body of the algorithm is essentially the same as of disjoint line segments•However, the discrete event points that change the topology of the arrangement during the sweeping are harder to process
![Page 30: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/30.jpg)
Publications
Publications
•Zavershynskyi, M. and Papadopoulou, E. A sweepline algorithm for higher-order Voronoi diagrams of line segments. To be submitted to a journal.
•Zavershynskyi, M. and Papadopoulou, E. [2013] A sweepline algorithm for higher-order Voronoi diargams, ISVD, IEEE, pp. 16-22
•Extended abstract: Zavershynskyi, M. and Papadopoulou, E. [2013] A sweepline algorithm for higher-order Voronoi diagrams. EuroCG 2013, pp. 233-236
![Page 31: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/31.jpg)
Algorithms forHigher-OrderAbstract Voronoi Diagrams
![Page 32: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/32.jpg)
Voronoi Diagram
Abstract Voronoi Diagrams•Does not use the geometry of sites or distance functions•All we know is the set of bisectors
Klein’89, Klein et al.’09
![Page 33: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/33.jpg)
Voronoi Diagram
Abstract Voronoi Diagrams•Does not use the geometry of sites or distance functions•All we know is the set of bisectors
Klein’89, Klein et al.’09
![Page 34: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/34.jpg)
Voronoi Diagram
Abstract Voronoi Diagrams•Does not use the geometry of sites or distance functions•All we know is the set of bisectors
Klein’89, Klein et al.’09
![Page 35: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/35.jpg)
Voronoi Diagram
Abstract Voronoi Diagrams•Does not use the geometry of sites or distance functions•All we know is the set of bisectors
?
?
Klein’89, Klein et al.’09
![Page 36: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/36.jpg)
Abstract Voronoi Diagrams
Abstract Voronoi DiagramsVoronoi Region:
Voronoi Diagram:
For any
(A1) Each region is path-wise connected
(A2) Each point on the plane belongs to the closure of some Voronoi region
Klein’89, Klein et al.’09
![Page 37: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/37.jpg)
Higher-Order Abstract Voronoi Diagrams
Higher-Order Abstract Voronoi DiagramsOrder-k Voronoi Region:
Order-k Voronoi Diagram:
For any
(A3) No first-order Voronoi region is empty
(A4) Each curve is unbounded. After a stereographic projection to the sphere, it can be
completed to be a closed Jordan curve through the north pole
(A5) Any two curves and have only finitely many intersection points, and these
intersections are transversalBohler et al.’14
![Page 38: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/38.jpg)
Structural Complexity
Structural ComplexityThe number of faces:
Construction algorithms available for:
•order-1 abstract Voronoi diagram
•order-(n-1) abstract Voronoi diagram
Open problem:
Incremental construction algorithm for higher-order abstract
Voronoi diagrams based on Clarkson-Shor technique.
Bohler et al.’14
Klein et al.’91
Mehlhorn et al.’01
Mehlhorn et al.’91
![Page 39: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/39.jpg)
Concrete Voronoi Diagrams that Satisfy the Axioms
Concrete Voronoi Diagrams that Satisfy the Axioms
1. Disjoint line segments in Lp metric 1≤p≤∞
2. Disjoint convex polygons
3.Additively weighted points
4.Power diagrams
etc
Aurenhammer et al.’13
![Page 40: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/40.jpg)
Structural Complexity
Our Three Construction Algorithms
1.Randomized Iterative Algorithm
2.Random Walk Algorithm
3.Randomized Divide and Conquer Algorithm
(A6) A bisector has points of vertical tangency
![Page 41: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/41.jpg)
Randomized Iterative Algorithm
Randomized Iterative Algorithm•Expected time complexity:
•Space complexity:
•Can be used to construct all order-i Voronoi diagrams, for i≤k
•Simple
•Easy to implement
![Page 42: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/42.jpg)
Random Walk Algorithm
Random Walk Algorithm
Influence region of a site
Influence region of site s is the union of all order-k Voronoi regions induced by the site s
Chazelle&Edelsbrunner’87
![Page 43: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/43.jpg)
Random Walk Algorithm
Random Walk Algorithm
Influence region of a site
•We can construct the influence region of a site using Har-Peled’s random walk algorithm.
•This takes expected time per site.O(n2α(n) log n)
Har-Peled’00
![Page 44: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/44.jpg)
Random Walk Algorithm
Random Walk Algorithm•Based on the idea of Chazelle&Edelsbrunner
•Uses Har-Peled’s random walk method
•Easy to implement (Har-Peled’s implementation is available)
•Expected time complexity:
less than 6 for any practical number
![Page 45: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/45.jpg)
Divide and Conquer in Abstract Setting
Divide and Conquer in Abstract SettingHow do we perform divide and conquer when the sites are abstract?
?
??
?
?
??
?
?
??
?
?? ?
?
?
?
?
???
??
? ?
?? ?
?
?
?
? ?
?
??
???
![Page 46: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/46.jpg)
Select Random Sample
Select Random SampleSelect a random sample of constant size such that it is a “good predictor” of all sites
?
??
?
?
??
?
?
??
?
?? ?
?
?
?
?
???
??
? ?
?? ?
?
?
?
? ?
?
??
???
![Page 47: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/47.jpg)
Divide
Divide StepConstruct order-β Voronoi diagram of using randomized iterative algorithm, where
?
?
??
??
![Page 48: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/48.jpg)
Divide
Divide StepConstruct order-β Voronoi diagram of using randomized iterative algorithm, whereConstruct order-(β+1) Voronoi diagram of
?
?
??
??
![Page 49: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/49.jpg)
Weak Conflict
The Trick is to Find a Conflict Relation!•The notion of conflict comes from the Clarkson-Shor technique
•Site weakly conflicts if
?
?
![Page 50: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/50.jpg)
Conquer
Conquer Step•Consider only those sites that are in weak conflict with the trapezoid•Recursively solve the problem•If the problem is small enough solve it with random walk algorithm
??
?
? ??
?
?
![Page 51: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/51.jpg)
The Conflicts “Bracket” the Abstract Sites
The Conflicts “Bracket” the Abstract Sites•Upper bound the number of weak conflicts per trapezoid - is used to bound the size of the recursive input•Lower bound the number of strong conflicts per trapezoid - is used to bound the depth of the recursion
Weak conflict Strong conflict
?
?
?
?
![Page 52: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/52.jpg)
Randomized Divide and Conquer Algorithm
Randomized Divide and Conquer Algorithm
•Establishes connection between two mathematical abstractions:
higher-order abstract Voronoi diagrams and Clarkson-Shor framework
•Time complexity:
for any constant
•Uses two other algorithms for subroutines
![Page 53: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/53.jpg)
Publications
Publications
•Bohler, C., Liu, C.-H., Papadopoulou, E. and Zavershynskyi, M. A randomized divide and conquer algorithm for higher-order abstract Voronoi diagrams. To be submitted to a journal.
•Bohler, C., Liu, C.-H., Papadopoulou, E. and Zavershynskyi, M. [2014] A randomized divide and conquer algorithm for higher-order abstract Voronoi diagrams. To appear in the conference proceedings, ISAAC 2014.
•Abstract: Bohler, C., Liu, C.-H., Papadopoulou, E. and Zavershynskyi, M. [2014] Randomized algorithms for higher-order abstract Voronoi diagrams. Booklet of abstracts of EuroGIGA conference in Berlin.
![Page 54: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/54.jpg)
Conclusions
![Page 55: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/55.jpg)
Conclusions
•higher-order Voronoi diagram of disjoint line segments
•higher-order Voronoi diagram of intersecting line segments
•higher-order Voronoi diagram of line segments in Lp metrics
for disjoint line segments in L1/L∞ :
We have extended the definitions to planar straight-line graph and studied structural
and combinatorial properties:
We have studied properties of:
![Page 56: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/56.jpg)
Conclusions
•Iterative algorithm for line segments and PSLG:
•Sweepline algorithm for line segments and PSLG:
•Randomized iterative algorithm for higher-order abstract Voronoi diagrams:
•Random walk algorithm for higher-order abstract Voronoi diagrams:
•Randomized divide and conquer algorithm for higher-order abstract Voronoi diagrams:
We have developed construction algorithms:
![Page 57: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/57.jpg)
Date: Lugano, 24 November 2014
Thanks!
![Page 58: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/58.jpg)
(1) Papadopoulou, E. and Zavershynskyi, M. The higher-order Voronoi diagram of line segments. To appear in Algorithmica journal.(2) Papadopoulou, E. and Zavershynskyi, M. [2012] On higher-order Voronoi diagrams of line segments, in Chao, K.-M., Hsu, T.-s., Lee, D.-T. (eds), ISAAC, Vol. 7676 of LNCS, Springer, pp. 177-186
•Extended abstract: Papadopoulou, E. and Zavershynskyi, M. [2012] On higher-order Voronoi diagrams of line segments. EuroCG 2012, pp. 232-236
(3) Zavershynskyi, M. and Papadopoulou, E. A sweepline algorithm for higher-order Voronoi diagrams of line segments. To be submitted to a journal.(4) Zavershynskyi, M. and Papadopoulou, E. [2013] A sweepline algorithm for higher-order Voronoi diargams, ISVD, IEEE, pp. 16-22
•Extended abstract: Zavershynskyi, M. and Papadopoulou, E. [2013] A sweepline algorithm for higher-order Voronoi diagrams. EuroCG 2013, pp. 233-236
(5) Bohler, C., Liu, C.-H., Papadopoulou, E. and Zavershynskyi, M. A randomized divide and conquer algorithm for higher-order abstract Voronoi diagrams. To be submitted to a journal.(6) Bohler, C., Liu, C.-H., Papadopoulou, E. and Zavershynskyi, M. [2014] A randomized divide and conquer algorithm for higher-order abstract Voronoi diagrams. To appear in the conference proceedings, ISAAC 2014.
•Abstract: Bohler, C., Liu, C.-H., Papadopoulou, E. and Zavershynskyi, M. [2014] Randomized algorithms for higher-order abstract Voronoi diagrams. Booklet of abstracts of EuroGIGA conference in Berlin.
(7) Bohler, C., Cheilaris, P., Klein, R., Liu, C.-H., Papadopoulou, E. and Zavershynskyi, M. On the complexity of higher- order abstract Voronoi diagrams. Submitted to CGTA journal, first round of the revision.(8) Bohler, C., Cheilaris, P., Klein, R., Liu, C.-H., Papadopoulou, E. and Zavershynskyi, M. [2014] On the complexity of higher-order abstract Voronoi diagrams, in Fomin, F.V., Freivalds, R., Kwiatkowska, M.Z. and Peleg, D. (eds), ICALP (1), Vol. 7965 of LNCS, pp. 208-219
Our publications
![Page 59: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/59.jpg)
Backup Slides
Disconnected Regions
Complexity Analysis for Line Segments
Vertices in PSLG
Iterative Algorithm for PSLG
Sweepline Algorithm
Randomized Divide and Conquer Algorithm in Abstract Setting
Clarkson’s Algorithm for Points
![Page 60: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/60.jpg)
Disconnected Regions
![Page 61: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/61.jpg)
Disconnected Regions
Disconnected Regions
Back
An order-k Voronoi region may disconnect to bounded faces. For
!"#$"%&'()")*)+'#+,"-,.')/'0'1+*$%2$-.$*32'
![Page 62: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/62.jpg)
Disconnected Regions
Disconnected Regions
Back
An order-k Voronoi region may disconnect to unbounded faces. For
!"#$"%&'()")*)+'#+,"-,.')/'0'1+*$%2$-.$*32'4'5$*$",1+6+*-'789"$*:,..$"'$3',1';<=>'
k
n-k
![Page 63: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/63.jpg)
Disconnected Regions
Disconnected Regions
Back
An order-k Voronoi region may disconnect to unbounded faces. For
F1
F2
F3
F4
!"#$"%&'()")*)+'#+,"-,.')/'0'1+*$%2$-.$*32'4'5$*$",1+6+*-'789"$*:,..$"'$3',1';<=>'
?+*$%2$-.$*32'@,*'A$'9*3,*-1$#B'
![Page 64: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/64.jpg)
Complexity Analysis for Line Segments
![Page 65: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/65.jpg)
Structural Complexity Analysis for Line SegmentsBack
1.First we calculate the number of faces:
2.Second we calculate the total number of unbounded faces:
3.Finally we bound the number of unbounded faces:
... and prove the bound
Structural Complexity Analysis for Line Segments
![Page 66: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/66.jpg)
Vertices in PSLG
![Page 67: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/67.jpg)
Vertices in PSLG
Vertices in PSLG
Back
! Type-2 Voronoi regions create configurations that are non-standard in an order-k Voronoi diagram of disjoint sites.
! As k increases type-2 Voronoi regions spread their influence on neighboring regions.
16 Evanthia Papadopoulou, Maksym Zavershynskyi
p
1 2
V1(p)
V1(1) V1(2)
p
1 2
V2(p)
V2(p, 1) V2(p, 2)
V2(1, 2)
p
1 2
Vi(p)
Vi(p, 1) Vi(p, 2)
Vi(p, 1, 2)
p
1 2
Vi(p, 1) Vi(p, 2)
Vi(p, 1, 2)
Fig. 9: For brevity we denote Voronoi region of the representative p as V (p). (a) A Voronoivertex of an order-1 Voronoi diagram. The disk depicts the distance to the farthest site; (b)A Voronoi vertex of an order-2 Voronoi diagram; (c) A Voronoi vertex of an order-i Voronoidiagram, 2 < i ≤ |I(p)|. At order-|I(p)| Voronoi region Vi(p) becomes type-1; (d) A Voronoivertex of an order-|I(p)|+ 1 Voronoi diagram.
It shows how the region and its incident Voronoi vertex evolve as the orderof the diagram increases until the region becomes a type-1 region and itsincident vertex an ordinary Voronoi vertex of degree 3. Note that despitethe weak general position assumption, Voronoi vertices incident to a type-2Voronoi region may have degree higher than three (see e.g., Fig. 9b,c). Inmore detail, in Fig. 9a a Voronoi vertex v is incident to one type-2 Voronoiregion Vi(Hp, S) and two type-1 Voronoi regions Vi(Q,S) and Vi(R,S). As weincrease i, it may be seen as the type-2 Voronoi region “spreads” its influenceon neihgboring regions and more neighboring regions become type-2. In theorder-(i + 1) Voronoi diagram, v will be incident to type-2 Voronoi regionsVi+1(Hp, S), Vi+1(Hp ∪Q,S) and Vi+1(Hp ∪R,S) and type-1 Voronoi regionVi+1(Q∪R,S) (see Fig. 9b). Fig. 10a illustrates an example of a vertex incidentto 3 type-2 Voronoi regions with representatives p, r and q. Notice that asorder increases Voronoi region of q becomes type-1 and in the next order isbeen split between two type-2 Voronoi regions of representatives r and p, Fig.10b. Eventually this process may create a Voronoi vertex incident up to sixedges, defined by three bisectors.
p
qr
V (q)V (r)
V (p)
V (p, I(q))
V (r, I(q))
V (r)
V (p)
p
qr
V (p, I(q))
V (r, I(q))V (q, I(r))
V (p, I(r))
V (p)
p
qr
Fig. 10: (a) A Voronoi vertex incident to three type-2 regions; (b) In the order-j Voronoidiagram, j = |I(q)| + 1, the Voronoi region with representative q is split into two regions;(c) In the order-r Voronoi diargam, r = |I(r)|+ 1, the Voronoi region with representative ris split into two regions.
![Page 68: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/68.jpg)
Vertices in PSLG
Vertices in PSLG
Back
! Voronoi vertex has degree between 3 and 6.
! Voronoi vertex can be an intersection point of only 2 bisectors that define 4 edges.
16 Evanthia Papadopoulou, Maksym Zavershynskyi
p
1 2
V1(p)
V1(1) V1(2)
p
1 2
V2(p)
V2(p, 1) V2(p, 2)
V2(1, 2)
p
1 2
Vi(p)
Vi(p, 1) Vi(p, 2)
Vi(p, 1, 2)
p
1 2
Vi(p, 1) Vi(p, 2)
Vi(p, 1, 2)
Fig. 9: For brevity we denote Voronoi region of the representative p as V (p). (a) A Voronoivertex of an order-1 Voronoi diagram. The disk depicts the distance to the farthest site; (b)A Voronoi vertex of an order-2 Voronoi diagram; (c) A Voronoi vertex of an order-i Voronoidiagram, 2 < i ≤ |I(p)|. At order-|I(p)| Voronoi region Vi(p) becomes type-1; (d) A Voronoivertex of an order-|I(p)|+ 1 Voronoi diagram.
It shows how the region and its incident Voronoi vertex evolve as the orderof the diagram increases until the region becomes a type-1 region and itsincident vertex an ordinary Voronoi vertex of degree 3. Note that despitethe weak general position assumption, Voronoi vertices incident to a type-2Voronoi region may have degree higher than three (see e.g., Fig. 9b,c). Inmore detail, in Fig. 9a a Voronoi vertex v is incident to one type-2 Voronoiregion Vi(Hp, S) and two type-1 Voronoi regions Vi(Q,S) and Vi(R,S). As weincrease i, it may be seen as the type-2 Voronoi region “spreads” its influenceon neihgboring regions and more neighboring regions become type-2. In theorder-(i + 1) Voronoi diagram, v will be incident to type-2 Voronoi regionsVi+1(Hp, S), Vi+1(Hp ∪Q,S) and Vi+1(Hp ∪R,S) and type-1 Voronoi regionVi+1(Q∪R,S) (see Fig. 9b). Fig. 10a illustrates an example of a vertex incidentto 3 type-2 Voronoi regions with representatives p, r and q. Notice that asorder increases Voronoi region of q becomes type-1 and in the next order isbeen split between two type-2 Voronoi regions of representatives r and p, Fig.10b. Eventually this process may create a Voronoi vertex incident up to sixedges, defined by three bisectors.
p
qr
V (q)V (r)
V (p)
V (p, I(q))
V (r, I(q))
V (r)
V (p)
p
qr
V (p, I(q))
V (r, I(q))V (q, I(r))
V (p, I(r))
V (p)
p
qr
Fig. 10: (a) A Voronoi vertex incident to three type-2 regions; (b) In the order-j Voronoidiagram, j = |I(q)| + 1, the Voronoi region with representative q is split into two regions;(c) In the order-r Voronoi diargam, r = |I(r)|+ 1, the Voronoi region with representative ris split into two regions.
![Page 69: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/69.jpg)
Iterative Algorithm for PSLG
![Page 70: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/70.jpg)
Iterative Algorithm for PSLG
Iterative Algorithm for PSLG
Back
•Construct order-1 Voronoi diagram•For i=1,...,k-1 do✴Partition each Type-1 face of order-i Voronoi diagram✴Remove unnecessary edges
s1
s2
s3
s4
s5
s6
s7
s8
a
b
c
d
e
f
g
V1({s4, s5}c, SF )
V1({s5}, SF )
V1({s6}, SF )V1({s1}, SF )
V1({s2}, SF )
V1({s3}, SF )V3({s2, s3, s8}, S)
V3({s3, s4, s8}, S)V3({s3, s4, s5}, S)
V3({s4, s5, s6}, S)
V3({s1, s5, s6, s7}d, S)
V3({s5, s6, s7}, S)
V3({s1, s6, s7}, S)V3({s1, s2, s6, s7}d, S)
V3({s1, s2, s3, s8}g , S)V3({s1, s2, s8}, S)
V3({s1, s2, s7}, S)
V3({s2, s7, s8}, S)
V3({s1, s7, s8}, S)
V3({s3, s7, s8}, S)V3({s4, s5, s8}, S)
V3({s4, s5, s7}, S)
V3({s5, s7, s8}, S)
V3({s6, s7, s8}, S)
V3({s4, s5, s7, s8}e, S)
V3({s3, s4, s5, s8}c, S)
s1
s2
s3
s4
s5
s6
s7
s8
a
b
c
d
e
f
gV3({s4, s5, s7, s8}c, S)
order-2 order-3
![Page 71: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/71.jpg)
Clarkson’s Algorithm for Points
![Page 72: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/72.jpg)
Clarkson’s Algorithm For Points
Clarkson’s Algorithm for Points
Back
projection
![Page 73: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/73.jpg)
Clarkson’s Algorithm For Points
Clarkson’s Algorithm for Points
Back
planes that correspond to extremal positions of k-sets
![Page 74: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/74.jpg)
Clarkson’s Algorithm For Points
Clarkson’s Algorithm for Points
Back
planes that correspond to extremal positions of k-sets
![Page 75: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/75.jpg)
Clarkson’s Algorithm For Points
Clarkson’s Algorithm for Points
Back
planes that correspond to extremal positions of k-sets
normals
![Page 76: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/76.jpg)
Clarkson’s Algorithm For Points
Clarkson’s Algorithm for Points
Back
planes that correspond to extremal positions of k-sets
normals
![Page 77: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/77.jpg)
Clarkson’s Algorithm For Points
Clarkson’s Algorithm for Points
Back
planes that correspond to extremal positions of k-sets
normals
triangulation of the cone
![Page 78: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/78.jpg)
Clarkson’s Algorithm For Points
Clarkson’s Algorithm for Points
Back
normals
points that belong to the union of the halfplanes - analog of weak conflictpoints that belong to the intersection of the halfplanes - analog of strong conflict
![Page 79: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/79.jpg)
Randomized Divide and Conquer Algorithm for Higher-Order Abstract Voronoi Diagrams
![Page 80: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/80.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
Vertical decomposition of :
1.Consider
2. Shoot vertical rays from each vertex and vertical tangent point.
Vk(S)
Vk(S)
Vk(S) ∪ Vk+1(S)
![Page 81: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/81.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
Vertical decomposition of :
1.Consider
2. Shoot vertical rays from each vertex and vertical tangent point.
Vk(S)
Vk(S) ∪ Vk+1(S)
Vk(S) ∪ Vk+1(S)
![Page 82: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/82.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
Vertical decomposition of :
1.Consider
2. Shoot vertical rays from each vertex and vertical tangent point.
Vk(S)
Vk(S) ∪ Vk+1(S)
Vk(S) ∪ Vk+1(S)
![Page 83: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/83.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
Draw random sample such that it is a good predictor of .
R
S
Trapezoid is defined by at most elements of Rd
e.g.: d = 5s1
s2
s3
s4
p - dominatorp�
�
[Clarkson’87]
![Page 84: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/84.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
Site strongly conflicts with if
d = 5s1
s2
s3
s4
p - dominatorp�
s � � ⊂ D(s, p)
D(s, p)
![Page 85: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/85.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
Site weakly conflicts with if
d = 5s1
s2
s3
s4
p - dominatorp�
s �
D(s, p)
�∩D(s, p) �= ∅
![Page 86: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/86.jpg)
Lemma 1
For a random sample , with probability at least
1) number of strong conflicts with is
2) number of weak conflicts with is
for each trapezoid in vert. decomposition of
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
�
R 1/2
S
≤ α|S|S
≥ |S|/(r − 5)
r = |R|,α = O(log r),β = O(log r/ log log r)
Allows to efficiently “bracket” the space!
[Clarkson’87]
Vβ(R)
![Page 87: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/87.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
r = |R|,α = O(log r),β = O(log r/ log log r)[Clarkson’87]
- set of sitesS
Vk(S) - order-k diagramv - vertex
v
![Page 88: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/88.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
r = |R|,α = O(log r),β = O(log r/ log log r)[Clarkson’87]
- set of sitesS
- random sampleR ⊂ S
where each in vert. decomp. of has strong conflicts
Vβ(R)
Vk(S) - order-k diagram
�
≥ k
v - vertex
v
![Page 89: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/89.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
r = |R|,α = O(log r),β = O(log r/ log log r)[Clarkson’87]
- set of sitesS
- random sampleR ⊂ S
where each in vert. decomp. of has strong conflicts
Vβ(R)
Vk(S) - order-k diagram
�
v - vertex
S� ⊂ S- sites in weak conflictVk(S
�)then is vertex ofv
v
Allows to perform divide-n-conquer!
≥ k
![Page 90: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/90.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
Construction of can be reduced to finding all the vertices of .
Vk(S)
Vk(S)
[Clarkson’87]
![Page 91: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/91.jpg)
Randomized Divide and Conquer Algorithm in Abstract Setting
Randomized Divide and Conquer in Abstract Setting
Back
If then use random walk algorithm.
Else choose “suitable” random sample .
• Construct and the decomposition, using iterative algorithm.
• For each trapezoid in the decomposition recursively compute vertices in .
R
|S| ≤ k(r − 5)
Vβ(R)
�Vk(S
�)
where - the sites in weak conflict with .S� ⊂ S �[Clarkson’87]
![Page 92: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/92.jpg)
Sweepline Algorithm for Higher-Order Voronoi Diagrams of Line Segments
![Page 93: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/93.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Consider horizontal line l
• Wave-curve w(s) is the locus of points equidistant from l to s
![Page 94: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/94.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Let be the set of line segments that intersect the upper halfplane.
• Consider an arrangement of wave-curves
S�
w(s), s ∈ S�
![Page 95: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/95.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Consider k-level Ak
• Lower envelope is 1-level
Ak
![Page 96: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/96.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Consider k-level Ak
• Lower envelope is 1-level
Breakpoint
Wave
![Page 97: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/97.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• While the horizontal line moves down, the breakpoints of Ak and Ak+1 levels move along the edges of the order-k Voronoi diagram.
�
x
s
![Page 98: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/98.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Compute the discrete event points that change the topological structure of k-level while line l moves down.
• We store the adjacency relations!
Site Events Circle Events
![Page 99: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/99.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Occur when the line hits a new line segment.
• We insert the corresponding wave-curve and update all levels.
![Page 100: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/100.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
a1, am1. . . ,
b1, bm2. . . ,
c1, cm3
. . . ,
. . . ,
d1, dm4
A1 :
A2 :
A3 :
A4 :
A1
A2
A3
A4
. . . ,
. . . ,
. . . ,
. . . ,
ai,
bj ,
cr,
ds,
Adjacency relations:
x
![Page 101: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/101.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
a1, am1. . . ,
b1, bm2. . . ,
c1, cm3
. . . ,
. . . ,
d1, dm4
A1 :
A2 :
A3 :
A4 :
A1
A2
A3
. . . ,
. . . ,
. . . ,
. . . ,
ai,
bj ,
cr,
ai, , ai,
bj , bj ,
cr, cr,
ds, ds,
Adjacency relations:
x, x,
x, x,
x, x,
x
A4
A5 : x, xds,
![Page 102: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/102.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Occur when 3 wave-curves intersect at a common point
a
bc
![Page 103: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/103.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Occur when 3 wave-curves intersect at a common point
a
bc
![Page 104: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/104.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Occur when 3 wave-curves intersect at a common point
a
b
c
![Page 105: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/105.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
a
bc Ai :
Ai+1 :
Ai+2 :
a, b,
c,
c
b, a, b
c, a
Adjacency relations:
![Page 106: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/106.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
a
b
c
Ai :
Ai+1 :
Ai+2 :
a,
b,
c,
c
b, a, b
c, a
Adjacency relations:
![Page 107: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/107.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Precompute the circle events of all triples of the consecutive waves.
• A new triple appears - create the circle event
• An old triple disappears - remove the circle event
![Page 108: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/108.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
![Page 109: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/109.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• The breakpoints of k-level and (k+1)-level move along the edges of the order-k Voronoi diagram
![Page 110: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/110.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• The breakpoints of k-level and (k+1)-level move along the edges of the order-k Voronoi diagram
• We need to keep track of k-level!
![Page 111: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/111.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• The breakpoints of k-level and (k+1)-level move along the edges of the order-k Voronoi diagram
• We need to keep track of k-level!
• A new wave may be introduced to k-level:
![Page 112: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/112.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• The breakpoints of k-level and (k+1)-level move along the edges of the order-k Voronoi diagram
• We need to keep track of k-level!
• A new wave may be introduced to k-level:
• By Site Events
![Page 113: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/113.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• The breakpoints of k-level and (k+1)-level move along the edges of the order-k Voronoi diagram
• We need to keep track of k-level!
• A new wave may be introduced to k-level:
• By Site Events
• From (k-1)-level and (k-2)-level by Circle Events
![Page 114: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/114.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• The breakpoints of k-level and (k+1)-level move along the edges of the order-k Voronoi diagram
• We need to keep track of k-level!
• A new wave may be introduced to k-level:
• By Site Events
• From (k-1)-level and (k-2)-level by Circle Events
• We need to maintain ≤k-level!
![Page 115: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/115.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Event queue:
• Queue: Site Events, sorted by y-coordinate.
• Balanced Binary Tree: Circle Events, sorted by y-coordinate of the bottom-most point of the circle.
• Levels 1,...,k:
• Balanced Binary Tree for each level:Sequence of waves that constitute the level.
![Page 116: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/116.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• The complexity of the ≤k-level in arrangement of Jordan curves [Sharir&Agarwal’95, Clarkson’87]
• Complexity of the lower envelope [Fortune’87]
• Therefore the complexity of the ≤k-level is:
g≤k(n) = O�k2g1(n/k)
�
g1(n) = O(n)
g≤k(n) = O(kn)
![Page 117: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/117.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Event Queue:
• Site Events
• Circle EventsEach Circle Event corresponds to a triple of consecutive waves in ≤k-level
O(n)
O(kn)
![Page 118: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/118.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Site Event
• For each i-level, i = 1,...,k
• Find insertion point
• Update adjacency relations at the point
• For all Site Events:
O(log |Ai|) ≤ O(log (i(n− i))) ≤ O(log n)
O(nk)O(log n) = O(nk log n)
![Page 119: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/119.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Every processed Circle Event corresponds to some order-i Voronoi vertex, i = 1,...,k
• Therefore total number of processed Circle Events is the total complexity of order-i Voronoi diagrams, i = 1,...,k
k�
i=1
i(n− i) = O�k2n�
![Page 120: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/120.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Circle Event
• Remove Circle Event from the queue
• Update adjacency relations relations on 3 levels:
• For all Circle Events:
O�logO
�k2n��
= O(log n)
3O(log n) = O(log n)
O(k2n)O(log n) = O(k2n log n)
![Page 121: Higher-Order Voronoi Diagrams of Polygonal Objects. Dissertation](https://reader031.vdocuments.us/reader031/viewer/2022032002/55a982731a28ab65458b46cd/html5/thumbnails/121.jpg)
Sweepline Algorithm
Sweepline Algorithm
Back
• Time complexity
• Space complexity
O(k2n log n)
O(kn)