SlideShare a Scribd company logo
1 of 49
Download to read offline
Maksym Zavershynskyi
joint work with
Evanthia Papadopoulou
Università della Svizzera Italiana
Lugano, Switzerland
Supported in part by the Swiss National Science Foundation (SNF) grant 200021-127137.
Also by SNF grant 20GG21-134355 within the collaborative research project EuroGIGA/VORONOI of the European Science Foundation.
A Sweepline Algorithm for
Higher OrderVoronoi Diagrams
Tuesday, July 16, 2013
Nearest NeighborVoronoi Diagram
The nearest neighborVoronoi diagram is the
partitioning of the plane into regions, such that all
points within a region have the same closest site.
Tuesday, July 16, 2013
Higher OrderVoronoi Diagram
The order-kVoronoi diagram is the partitioning of
the plane into regions, such that all points within an
order-k region have the same k nearest sites.
V2({s1, s2}, S)
s1 s2
Tuesday, July 16, 2013
Related Work
• Structural complexity of the order-kVoronoi
diagram:
• for points [Lee’82]
• line segments [Papadopoulou&Zavershynskyi’12]
O(k(n − k))
O(k(n − k))
Tuesday, July 16, 2013
Related Work
• Iterative construction algorithm:
• Time
• Space
• Can be used to construct all order-iVoronoi
diagrams, for
O

k2
n log n

O

k2
(n − k)

i = 1, . . . , k
Tuesday, July 16, 2013
Construction Algorithms
Construction Time Reference
ChazelleEdelsbrunner’87
Clarkson’87
Aurenhammer’90
Mulmuley’91
Boissonnat et al.’93
Agarwal et al.’98
Chan’98
Ramos’99
O

n2
+ b log2
n

O

n1+
k

O

nk2
+ n log n

O

nk3
+ n log n

O

n log3
n + nk log n

O (n log n + nk log n)
O

n log n + nk2c log∗
k

O

nk2
log n

Tuesday, July 16, 2013
Construction Algorithms
Construction Time Reference
ChazelleEdelsbrunner’87
Clarkson’87
Aurenhammer’90
Mulmuley’91
Boissonnat et al.’93
Agarwal et al.’98
Chan’98
Ramos’99
O

n2
+ b log2
n

O

n1+
k

O

nk2
+ n log n

O

nk3
+ n log n

O

n log3
n + nk log n

O (n log n + nk log n)
O

n log n + nk2c log∗
k

O

nk2
log n

Expected
For Points!
Tuesday, July 16, 2013
Construction Algorithms
• Based on Fortune’s algorithm
• For points and line segments
• Deterministic
• Simple
• Easy to implement
Sweepline approach?
Tuesday, July 16, 2013
The Algorithm
Tuesday, July 16, 2013
The Idea
• Consider horizontal line l
• Wave-curve w(s) is the locus of points equidistant
from l to s
Tuesday, July 16, 2013
• Let be the set of line segments that intersect the
upper halfplane.
• Consider an arrangement of wave-curves
	

 	

 The Idea
S
w(s), s ∈ S
Tuesday, July 16, 2013
The Idea
• Consider k-level Ak
• Lower envelope is 1-level
Ak
Tuesday, July 16, 2013
The Idea
• Consider k-level Ak
• Lower envelope is 1-level
Breakpoint
Wave
Tuesday, July 16, 2013
The Idea
• While the horizontal line moves down, the
breakpoints of Ak and Ak+1 levels move along the
edges of the order-kVoronoi diagram.
Tuesday, July 16, 2013
The Events
• Simulate 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
Tuesday, July 16, 2013
Site Events
• Occur when the line hits a new line segment.
• We insert the corresponding wave-curve and
update all levels.
Tuesday, July 16, 2013
Site Events
a1, am1. . . ,
b1, bm2. . . ,
c1, cm3
. . . ,
. . . ,
d1, dm4
A1 :
A2 :
A3 :
A4 :
A1
A2
A3
A4
. . . ,
. . . ,
. . . ,
. . . ,
ai,
bj,
cr,
ds,
Adjacency relations:
x
Tuesday, July 16, 2013
Site Events
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,
Tuesday, July 16, 2013
Circle Events
• Occur when 3 wave-curves intersect at
a common point
a
b
c
Tuesday, July 16, 2013
Circle Events
• Occur when 3 wave-curves intersect at
a common point
a
b
c
Tuesday, July 16, 2013
Circle Events
• Occur when 3 wave-curves intersect at
a common point
a
b
c
Tuesday, July 16, 2013
Circle Events
a
b
c
Ai :
Ai+1 :
Ai+2 :
a, b,
c,
c
b, a, b
c, a
Adjacency relations:
Tuesday, July 16, 2013
Circle Events
a
b
c
Ai :
Ai+1 :
Ai+2 :
a,
b,
c,
c
b, a, b
c, a
Adjacency relations:
Tuesday, July 16, 2013
Circle Events
• 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
Tuesday, July 16, 2013
Maintaining the ≤k-level
• The breakpoints of k-level and (k+1)-level move
along the edges of the order-kVoronoi 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!
Tuesday, July 16, 2013
Data Structures
• 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.
Tuesday, July 16, 2013
Time and Space Analysis
Tuesday, July 16, 2013
Maximum Size of the ≤k-level?
• The complexity of the ≤k-level in arrangement
of Jordan curves [SharirAgarwal’95, Clarkson’87]
• Complexity of the lower envelope [Fortune’87]
• Therefore the complexity of the ≤k-level is:
g≤k(n) = O

k2
g1(n/k)

g1(n) = O(n)
g≤k(n) = O(kn)
Tuesday, July 16, 2013
Maximum Size of the Event Queue?
• Event Queue:
• Site Events
• Circle Events
Each Circle Event corresponds to a triple of
consecutive waves in ≤k-level
O(n)
O(kn)
Tuesday, July 16, 2013
Time Complexity?
• 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)
Tuesday, July 16, 2013
Number of Circle Events
• Every processed Circle Event corresponds to
some order-iVoronoi 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

k2
n

Tuesday, July 16, 2013
Time Complexity
• Circle Event
• Remove Circle Event from the queue
• Update adjacency relations relations
on 3 levels:
• For all Circle Events:
O

log O

k2
n

= O(log n)
3O(log n) = O(log n)
O(k2
n)O(log n) = O(k2
n log n)
Tuesday, July 16, 2013
Results
• Time complexity
• Space complexity
O(k2
n log n)
O(kn)
Tuesday, July 16, 2013
Line Segments Forming
a Planar Straight-Line Graph
Tuesday, July 16, 2013
Planar Straight-Line Graph
• Weak general position assumption:
“No more than 3 elementary sites touch the
same circle”
Tuesday, July 16, 2013
Planar Straight-Line Graph
Bisectors containing 2-dimensional portion
d the maxi-
A1, . . . , Ak.
wing bound
(2)
of levels
exity of the
envelope of
Voronoi di-
e maximum
s1 s2
b(s1, s2)
b(s1, s2)
Fig. 3: Bisector containing 2-dimensional portion
Tuesday, July 16, 2013
Planar Straight-Line Graph
Bisectors intersecting non-transversely
A1, . . . , Ak.
owing bound
(2)
of levels
exity of the
envelope of
Voronoi di-
e maximum
nk).
rcle-event in
ent waves at
er of circle-
A1, . . . , Ak,
ed to run in
ertion of the
mber of site-
n). When a
insert it in
on every list
s1 s2
b(s1, s2)
Fig. 3: Bisector containing 2-dimensional portion
s1
s2
s3
s4
b(s1, s4)
b(s2, s4)
b(s3, s4)b(s1, s4)
b(s2, s4), b(s3, s4)
Fig. 4: Bisectors intersecting non-transversely
Tuesday, July 16, 2013
Planar Straight-Line Graph
We want to keep the information on the shared
endpoints without altering the structure of the order-k
Voronoi diagram of disjoint line segments.
Tuesday, July 16, 2013
Planar Straight-Line Graph
• - a minimal disk centered at point x that
intersects at least k line segments, where p is
an elementary site that touches the disk.
Dp
k(x)
x
Tuesday, July 16, 2013
Planar Straight-Line Graph
• - a minimal disk centered at point x that
intersects at least k line segments, where p is
an elementary site that touches the disk.
Dp
k(x)
x
p
Dp
3(x)
Sk(x)
Tuesday, July 16, 2013
Generalized Definition
Definition: A set is called an order-k subset if
type-1:
type-2: and there exists a proper order-k
disk , where p is an endpoint common
at least two segments, that intersects exactly
all line segments in .
p - the representative of
H, H ⊆ S
|H| = k
|H|  k
Dp
k(x)
Hp
H
Tuesday, July 16, 2013
Generalized Definition
The order-k Voronoi region defined:
type-1 - in the ordinary way.
type-2 :
Vk(Hp, S) = {x | ∃Dp
k(x) ∩ Sk(x) = Hp}
Tuesday, July 16, 2013
Generalized Definition
Order-1
1
2
3
45
6
7
8
V (a)
V (d)
V (f) V (g)
V (b)
V (5) V (4)
V (3)
V (2)
V (1)
V (6)
V (7)
V (8)
V (c)V (e)
a
b
c
d
e
f g
Tuesday, July 16, 2013
Generalized Definition
Order-2
1
2
3
456
7
8
V (1, 2)
V (6, 5) V (3, 4)
V (3, 8)
V (2, 8)
V (4, 5)
V (7, 5)
V (7, 8)
V (c, 3)
V (c, 8)
V (e, 5)
V (2, 7)
V (d)
V (g)
V (1, 7)
V (6, 7)
a b
c
d
e
f g
Tuesday, July 16, 2013
Generalized Definition
Order-3
1
2
3
456
7
8
V (2, 3, 8)
V (3, 4, 8)
V (3, 4, 5)
V (4, 5, 6)V (d, 5)
V (5, 6, 7)
V (1, 6, 7)
V (d, 2)
V (g, 1)
V (1, 2, 8)
V (1, 2, 7)
V (2, 7, 8)
V (1, 7, 8)
V (3, 7, 8)
V (4, 5, 8)
V (4, 5, 7)
V (5, 7, 8)
V (6, 7, 8)
V (c, 7, 8)
V (c, 3, 8)
a b
c
d
e
f g
V (e, 4, 5)
Tuesday, July 16, 2013
How we define the k-level?
x
a, b
c
d
e
π(x) = π−
(x), π0
(x), π+
(x)
π(x) = {a}, {b, c, d}, {e}
Tuesday, July 16, 2013
How we define the k-level?
x
a, b
c
d
e
π(x) = π−
(x), π0
(x), π+
(x)
Definition: k-level is a set of points x such that
and|π−
(x)|  k |π−
(x) ∪ π0
(x)| ≥ k
A3
Tuesday, July 16, 2013
The Idea
1
2
3
456
7
8
a
b
c
d
e
f g
A1
A2
A3
l
x
Fig. 8: Constructing order-3 Voronoi diagram via sweepline
technique. Point x belongs to the order-k Voronoi region
Maintain the ≤k-level!
Tuesday, July 16, 2013
SUMMARY
We have developed an algorithm that constructs
the order-kVoronoi diagram of line segments in
time and space.
• Simple
• Easy to implement
• Sweepline
• Can output all order-iVoronoi diagrams for i = 1,...,k
• Generalized to the case of line segments forming
a planar straight-line graph.
O(k2
n log n) O(kn)
Tuesday, July 16, 2013

More Related Content

What's hot

Graph applications chapter
Graph applications chapterGraph applications chapter
Graph applications chapterSavit Chandra
 
LexBFS-Minimal VertexSeparators Final Presentation
LexBFS-Minimal VertexSeparators Final PresentationLexBFS-Minimal VertexSeparators Final Presentation
LexBFS-Minimal VertexSeparators Final Presentationnazlitemu
 
Prestation_ClydeShen
Prestation_ClydeShenPrestation_ClydeShen
Prestation_ClydeShenClyde Shen
 
14 chapter9 graph_algorithmstopologicalsort_shortestpath
14 chapter9 graph_algorithmstopologicalsort_shortestpath14 chapter9 graph_algorithmstopologicalsort_shortestpath
14 chapter9 graph_algorithmstopologicalsort_shortestpathSSE_AndyLi
 
Graph Theory,Graph Terminologies,Planar Graph & Graph Colouring
Graph Theory,Graph Terminologies,Planar Graph & Graph ColouringGraph Theory,Graph Terminologies,Planar Graph & Graph Colouring
Graph Theory,Graph Terminologies,Planar Graph & Graph ColouringSaurabh Kaushik
 
Shortest path (Dijkistra's Algorithm) & Spanning Tree (Prim's Algorithm)
Shortest path (Dijkistra's Algorithm) & Spanning Tree (Prim's Algorithm)Shortest path (Dijkistra's Algorithm) & Spanning Tree (Prim's Algorithm)
Shortest path (Dijkistra's Algorithm) & Spanning Tree (Prim's Algorithm)Mohanlal Sukhadia University (MLSU)
 
Shortest path problem
Shortest path problemShortest path problem
Shortest path problemIfra Ilyas
 
Unit26 shortest pathalgorithm
Unit26 shortest pathalgorithmUnit26 shortest pathalgorithm
Unit26 shortest pathalgorithmmeisamstar
 
Topological Sort and Shortest Path in Directed Acyclic Graph with Single Source
Topological Sort and Shortest Path in Directed Acyclic Graph with Single SourceTopological Sort and Shortest Path in Directed Acyclic Graph with Single Source
Topological Sort and Shortest Path in Directed Acyclic Graph with Single SourceOğuzhan OSMA
 
Block diagrams and signal flow graphs
Block diagrams and signal flow graphsBlock diagrams and signal flow graphs
Block diagrams and signal flow graphsHussain K
 

What's hot (19)

Graph applications chapter
Graph applications chapterGraph applications chapter
Graph applications chapter
 
LexBFS-Minimal VertexSeparators Final Presentation
LexBFS-Minimal VertexSeparators Final PresentationLexBFS-Minimal VertexSeparators Final Presentation
LexBFS-Minimal VertexSeparators Final Presentation
 
Prestation_ClydeShen
Prestation_ClydeShenPrestation_ClydeShen
Prestation_ClydeShen
 
Graphs Algorithms
Graphs AlgorithmsGraphs Algorithms
Graphs Algorithms
 
Data structure
Data structureData structure
Data structure
 
14 chapter9 graph_algorithmstopologicalsort_shortestpath
14 chapter9 graph_algorithmstopologicalsort_shortestpath14 chapter9 graph_algorithmstopologicalsort_shortestpath
14 chapter9 graph_algorithmstopologicalsort_shortestpath
 
Lecture24
Lecture24Lecture24
Lecture24
 
Programming Exam Help
Programming Exam Help Programming Exam Help
Programming Exam Help
 
Graph Theory,Graph Terminologies,Planar Graph & Graph Colouring
Graph Theory,Graph Terminologies,Planar Graph & Graph ColouringGraph Theory,Graph Terminologies,Planar Graph & Graph Colouring
Graph Theory,Graph Terminologies,Planar Graph & Graph Colouring
 
Optimisation random graph presentation
Optimisation random graph presentationOptimisation random graph presentation
Optimisation random graph presentation
 
Shortest path (Dijkistra's Algorithm) & Spanning Tree (Prim's Algorithm)
Shortest path (Dijkistra's Algorithm) & Spanning Tree (Prim's Algorithm)Shortest path (Dijkistra's Algorithm) & Spanning Tree (Prim's Algorithm)
Shortest path (Dijkistra's Algorithm) & Spanning Tree (Prim's Algorithm)
 
Shortest path problem
Shortest path problemShortest path problem
Shortest path problem
 
The Floyd–Warshall algorithm
The Floyd–Warshall algorithmThe Floyd–Warshall algorithm
The Floyd–Warshall algorithm
 
SINGLE-SOURCE SHORTEST PATHS
SINGLE-SOURCE SHORTEST PATHS SINGLE-SOURCE SHORTEST PATHS
SINGLE-SOURCE SHORTEST PATHS
 
Unit26 shortest pathalgorithm
Unit26 shortest pathalgorithmUnit26 shortest pathalgorithm
Unit26 shortest pathalgorithm
 
Topological Sort and Shortest Path in Directed Acyclic Graph with Single Source
Topological Sort and Shortest Path in Directed Acyclic Graph with Single SourceTopological Sort and Shortest Path in Directed Acyclic Graph with Single Source
Topological Sort and Shortest Path in Directed Acyclic Graph with Single Source
 
Dirac texture
Dirac texture Dirac texture
Dirac texture
 
Topological Sort
Topological SortTopological Sort
Topological Sort
 
Block diagrams and signal flow graphs
Block diagrams and signal flow graphsBlock diagrams and signal flow graphs
Block diagrams and signal flow graphs
 

Similar to A Sweepline Algorithm for Higher Order Voronoi Diagrams

Fine Grained Complexity of Rainbow Coloring and its Variants
Fine Grained Complexity of Rainbow Coloring and its VariantsFine Grained Complexity of Rainbow Coloring and its Variants
Fine Grained Complexity of Rainbow Coloring and its VariantsAkankshaAgrawal55
 
On the 1-2-3-edge weighting and Vertex coloring of complete graph
On the 1-2-3-edge weighting and Vertex coloring of complete graphOn the 1-2-3-edge weighting and Vertex coloring of complete graph
On the 1-2-3-edge weighting and Vertex coloring of complete graphijcsa
 
topological_sort_strongly Connected Components
topological_sort_strongly Connected Componentstopological_sort_strongly Connected Components
topological_sort_strongly Connected ComponentsJahidulIslam47153
 
Phys111_lecture11.ppt
Phys111_lecture11.pptPhys111_lecture11.ppt
Phys111_lecture11.pptMiaKhalifa77
 
Trace Complexity of Network Inference
Trace Complexity of Network InferenceTrace Complexity of Network Inference
Trace Complexity of Network InferenceBruno Abrahao
 
Odd Harmonious Labelings of Cyclic Snakes
Odd Harmonious Labelings of Cyclic SnakesOdd Harmonious Labelings of Cyclic Snakes
Odd Harmonious Labelings of Cyclic SnakesGiselleginaGloria
 
A Tutorial on Computational Geometry
A Tutorial on Computational GeometryA Tutorial on Computational Geometry
A Tutorial on Computational GeometryMinh-Tri Pham
 
Differential geometry three dimensional space
Differential geometry   three dimensional spaceDifferential geometry   three dimensional space
Differential geometry three dimensional spaceSolo Hermelin
 
Run Or Walk In The Rain? (Orthogonal Projected Area of Ellipsoid)
Run Or Walk In The Rain? (Orthogonal Projected Area of Ellipsoid)Run Or Walk In The Rain? (Orthogonal Projected Area of Ellipsoid)
Run Or Walk In The Rain? (Orthogonal Projected Area of Ellipsoid)iosrjce
 
Approximation Algorithms for the Directed k-Tour and k-Stroll Problems
Approximation Algorithms for the Directed k-Tour and k-Stroll ProblemsApproximation Algorithms for the Directed k-Tour and k-Stroll Problems
Approximation Algorithms for the Directed k-Tour and k-Stroll ProblemsSunny Kr
 
On the Odd Gracefulness of Cyclic Snakes With Pendant Edges
On the Odd Gracefulness of Cyclic Snakes With Pendant EdgesOn the Odd Gracefulness of Cyclic Snakes With Pendant Edges
On the Odd Gracefulness of Cyclic Snakes With Pendant EdgesGiselleginaGloria
 
Electromagnetic theory EMT lecture 1
Electromagnetic theory EMT lecture 1Electromagnetic theory EMT lecture 1
Electromagnetic theory EMT lecture 1Ali Farooq
 
Section 4 3_the_scattering_matrix_package
Section 4 3_the_scattering_matrix_packageSection 4 3_the_scattering_matrix_package
Section 4 3_the_scattering_matrix_packageJamal Kazazi
 
Regularized Estimation of Spatial Patterns
Regularized Estimation of Spatial PatternsRegularized Estimation of Spatial Patterns
Regularized Estimation of Spatial PatternsWen-Ting Wang
 
Generarlized operations on fuzzy graphs
Generarlized operations on fuzzy graphsGenerarlized operations on fuzzy graphs
Generarlized operations on fuzzy graphsAlexander Decker
 

Similar to A Sweepline Algorithm for Higher Order Voronoi Diagrams (20)

Fine Grained Complexity of Rainbow Coloring and its Variants
Fine Grained Complexity of Rainbow Coloring and its VariantsFine Grained Complexity of Rainbow Coloring and its Variants
Fine Grained Complexity of Rainbow Coloring and its Variants
 
On the 1-2-3-edge weighting and Vertex coloring of complete graph
On the 1-2-3-edge weighting and Vertex coloring of complete graphOn the 1-2-3-edge weighting and Vertex coloring of complete graph
On the 1-2-3-edge weighting and Vertex coloring of complete graph
 
topological_sort_strongly Connected Components
topological_sort_strongly Connected Componentstopological_sort_strongly Connected Components
topological_sort_strongly Connected Components
 
Phys111_lecture11.ppt
Phys111_lecture11.pptPhys111_lecture11.ppt
Phys111_lecture11.ppt
 
Trace Complexity of Network Inference
Trace Complexity of Network InferenceTrace Complexity of Network Inference
Trace Complexity of Network Inference
 
Odd Harmonious Labelings of Cyclic Snakes
Odd Harmonious Labelings of Cyclic SnakesOdd Harmonious Labelings of Cyclic Snakes
Odd Harmonious Labelings of Cyclic Snakes
 
Estrada Index of stars
Estrada Index of starsEstrada Index of stars
Estrada Index of stars
 
A Tutorial on Computational Geometry
A Tutorial on Computational GeometryA Tutorial on Computational Geometry
A Tutorial on Computational Geometry
 
Differential geometry three dimensional space
Differential geometry   three dimensional spaceDifferential geometry   three dimensional space
Differential geometry three dimensional space
 
Run Or Walk In The Rain? (Orthogonal Projected Area of Ellipsoid)
Run Or Walk In The Rain? (Orthogonal Projected Area of Ellipsoid)Run Or Walk In The Rain? (Orthogonal Projected Area of Ellipsoid)
Run Or Walk In The Rain? (Orthogonal Projected Area of Ellipsoid)
 
Dsp lecture vol 1 introduction
Dsp lecture vol 1 introductionDsp lecture vol 1 introduction
Dsp lecture vol 1 introduction
 
Approximation Algorithms for the Directed k-Tour and k-Stroll Problems
Approximation Algorithms for the Directed k-Tour and k-Stroll ProblemsApproximation Algorithms for the Directed k-Tour and k-Stroll Problems
Approximation Algorithms for the Directed k-Tour and k-Stroll Problems
 
On the Odd Gracefulness of Cyclic Snakes With Pendant Edges
On the Odd Gracefulness of Cyclic Snakes With Pendant EdgesOn the Odd Gracefulness of Cyclic Snakes With Pendant Edges
On the Odd Gracefulness of Cyclic Snakes With Pendant Edges
 
Electromagnetic theory EMT lecture 1
Electromagnetic theory EMT lecture 1Electromagnetic theory EMT lecture 1
Electromagnetic theory EMT lecture 1
 
On Cubic Graceful Labeling
On Cubic Graceful LabelingOn Cubic Graceful Labeling
On Cubic Graceful Labeling
 
Minimum spanning tree
Minimum spanning treeMinimum spanning tree
Minimum spanning tree
 
Section 4 3_the_scattering_matrix_package
Section 4 3_the_scattering_matrix_packageSection 4 3_the_scattering_matrix_package
Section 4 3_the_scattering_matrix_package
 
Regularized Estimation of Spatial Patterns
Regularized Estimation of Spatial PatternsRegularized Estimation of Spatial Patterns
Regularized Estimation of Spatial Patterns
 
Graph
GraphGraph
Graph
 
Generarlized operations on fuzzy graphs
Generarlized operations on fuzzy graphsGenerarlized operations on fuzzy graphs
Generarlized operations on fuzzy graphs
 

Recently uploaded

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

A Sweepline Algorithm for Higher Order Voronoi Diagrams

  • 1. Maksym Zavershynskyi joint work with Evanthia Papadopoulou Università della Svizzera Italiana Lugano, Switzerland Supported in part by the Swiss National Science Foundation (SNF) grant 200021-127137. Also by SNF grant 20GG21-134355 within the collaborative research project EuroGIGA/VORONOI of the European Science Foundation. A Sweepline Algorithm for Higher OrderVoronoi Diagrams Tuesday, July 16, 2013
  • 2. Nearest NeighborVoronoi Diagram The nearest neighborVoronoi diagram is the partitioning of the plane into regions, such that all points within a region have the same closest site. Tuesday, July 16, 2013
  • 3. Higher OrderVoronoi Diagram The order-kVoronoi diagram is the partitioning of the plane into regions, such that all points within an order-k region have the same k nearest sites. V2({s1, s2}, S) s1 s2 Tuesday, July 16, 2013
  • 4. Related Work • Structural complexity of the order-kVoronoi diagram: • for points [Lee’82] • line segments [Papadopoulou&Zavershynskyi’12] O(k(n − k)) O(k(n − k)) Tuesday, July 16, 2013
  • 5. Related Work • Iterative construction algorithm: • Time • Space • Can be used to construct all order-iVoronoi diagrams, for O k2 n log n O k2 (n − k) i = 1, . . . , k Tuesday, July 16, 2013
  • 6. Construction Algorithms Construction Time Reference ChazelleEdelsbrunner’87 Clarkson’87 Aurenhammer’90 Mulmuley’91 Boissonnat et al.’93 Agarwal et al.’98 Chan’98 Ramos’99 O n2 + b log2 n O n1+ k O nk2 + n log n O nk3 + n log n O n log3 n + nk log n O (n log n + nk log n) O n log n + nk2c log∗ k O nk2 log n Tuesday, July 16, 2013
  • 7. Construction Algorithms Construction Time Reference ChazelleEdelsbrunner’87 Clarkson’87 Aurenhammer’90 Mulmuley’91 Boissonnat et al.’93 Agarwal et al.’98 Chan’98 Ramos’99 O n2 + b log2 n O n1+ k O nk2 + n log n O nk3 + n log n O n log3 n + nk log n O (n log n + nk log n) O n log n + nk2c log∗ k O nk2 log n Expected For Points! Tuesday, July 16, 2013
  • 8. Construction Algorithms • Based on Fortune’s algorithm • For points and line segments • Deterministic • Simple • Easy to implement Sweepline approach? Tuesday, July 16, 2013
  • 10. The Idea • Consider horizontal line l • Wave-curve w(s) is the locus of points equidistant from l to s Tuesday, July 16, 2013
  • 11. • Let be the set of line segments that intersect the upper halfplane. • Consider an arrangement of wave-curves The Idea S w(s), s ∈ S Tuesday, July 16, 2013
  • 12. The Idea • Consider k-level Ak • Lower envelope is 1-level Ak Tuesday, July 16, 2013
  • 13. The Idea • Consider k-level Ak • Lower envelope is 1-level Breakpoint Wave Tuesday, July 16, 2013
  • 14. The Idea • While the horizontal line moves down, the breakpoints of Ak and Ak+1 levels move along the edges of the order-kVoronoi diagram. Tuesday, July 16, 2013
  • 15. The Events • Simulate 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 Tuesday, July 16, 2013
  • 16. Site Events • Occur when the line hits a new line segment. • We insert the corresponding wave-curve and update all levels. Tuesday, July 16, 2013
  • 17. Site Events a1, am1. . . , b1, bm2. . . , c1, cm3 . . . , . . . , d1, dm4 A1 : A2 : A3 : A4 : A1 A2 A3 A4 . . . , . . . , . . . , . . . , ai, bj, cr, ds, Adjacency relations: x Tuesday, July 16, 2013
  • 18. Site Events 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, Tuesday, July 16, 2013
  • 19. Circle Events • Occur when 3 wave-curves intersect at a common point a b c Tuesday, July 16, 2013
  • 20. Circle Events • Occur when 3 wave-curves intersect at a common point a b c Tuesday, July 16, 2013
  • 21. Circle Events • Occur when 3 wave-curves intersect at a common point a b c Tuesday, July 16, 2013
  • 22. Circle Events a b c Ai : Ai+1 : Ai+2 : a, b, c, c b, a, b c, a Adjacency relations: Tuesday, July 16, 2013
  • 23. Circle Events a b c Ai : Ai+1 : Ai+2 : a, b, c, c b, a, b c, a Adjacency relations: Tuesday, July 16, 2013
  • 24. Circle Events • 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 Tuesday, July 16, 2013
  • 25. Maintaining the ≤k-level • The breakpoints of k-level and (k+1)-level move along the edges of the order-kVoronoi 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! Tuesday, July 16, 2013
  • 26. Data Structures • 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. Tuesday, July 16, 2013
  • 27. Time and Space Analysis Tuesday, July 16, 2013
  • 28. Maximum Size of the ≤k-level? • The complexity of the ≤k-level in arrangement of Jordan curves [SharirAgarwal’95, Clarkson’87] • Complexity of the lower envelope [Fortune’87] • Therefore the complexity of the ≤k-level is: g≤k(n) = O k2 g1(n/k) g1(n) = O(n) g≤k(n) = O(kn) Tuesday, July 16, 2013
  • 29. Maximum Size of the Event Queue? • Event Queue: • Site Events • Circle Events Each Circle Event corresponds to a triple of consecutive waves in ≤k-level O(n) O(kn) Tuesday, July 16, 2013
  • 30. Time Complexity? • 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) Tuesday, July 16, 2013
  • 31. Number of Circle Events • Every processed Circle Event corresponds to some order-iVoronoi 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 k2 n Tuesday, July 16, 2013
  • 32. Time Complexity • Circle Event • Remove Circle Event from the queue • Update adjacency relations relations on 3 levels: • For all Circle Events: O log O k2 n = O(log n) 3O(log n) = O(log n) O(k2 n)O(log n) = O(k2 n log n) Tuesday, July 16, 2013
  • 33. Results • Time complexity • Space complexity O(k2 n log n) O(kn) Tuesday, July 16, 2013
  • 34. Line Segments Forming a Planar Straight-Line Graph Tuesday, July 16, 2013
  • 35. Planar Straight-Line Graph • Weak general position assumption: “No more than 3 elementary sites touch the same circle” Tuesday, July 16, 2013
  • 36. Planar Straight-Line Graph Bisectors containing 2-dimensional portion d the maxi- A1, . . . , Ak. wing bound (2) of levels exity of the envelope of Voronoi di- e maximum s1 s2 b(s1, s2) b(s1, s2) Fig. 3: Bisector containing 2-dimensional portion Tuesday, July 16, 2013
  • 37. Planar Straight-Line Graph Bisectors intersecting non-transversely A1, . . . , Ak. owing bound (2) of levels exity of the envelope of Voronoi di- e maximum nk). rcle-event in ent waves at er of circle- A1, . . . , Ak, ed to run in ertion of the mber of site- n). When a insert it in on every list s1 s2 b(s1, s2) Fig. 3: Bisector containing 2-dimensional portion s1 s2 s3 s4 b(s1, s4) b(s2, s4) b(s3, s4)b(s1, s4) b(s2, s4), b(s3, s4) Fig. 4: Bisectors intersecting non-transversely Tuesday, July 16, 2013
  • 38. Planar Straight-Line Graph We want to keep the information on the shared endpoints without altering the structure of the order-k Voronoi diagram of disjoint line segments. Tuesday, July 16, 2013
  • 39. Planar Straight-Line Graph • - a minimal disk centered at point x that intersects at least k line segments, where p is an elementary site that touches the disk. Dp k(x) x Tuesday, July 16, 2013
  • 40. Planar Straight-Line Graph • - a minimal disk centered at point x that intersects at least k line segments, where p is an elementary site that touches the disk. Dp k(x) x p Dp 3(x) Sk(x) Tuesday, July 16, 2013
  • 41. Generalized Definition Definition: A set is called an order-k subset if type-1: type-2: and there exists a proper order-k disk , where p is an endpoint common at least two segments, that intersects exactly all line segments in . p - the representative of H, H ⊆ S |H| = k |H| k Dp k(x) Hp H Tuesday, July 16, 2013
  • 42. Generalized Definition The order-k Voronoi region defined: type-1 - in the ordinary way. type-2 : Vk(Hp, S) = {x | ∃Dp k(x) ∩ Sk(x) = Hp} Tuesday, July 16, 2013
  • 43. Generalized Definition Order-1 1 2 3 45 6 7 8 V (a) V (d) V (f) V (g) V (b) V (5) V (4) V (3) V (2) V (1) V (6) V (7) V (8) V (c)V (e) a b c d e f g Tuesday, July 16, 2013
  • 44. Generalized Definition Order-2 1 2 3 456 7 8 V (1, 2) V (6, 5) V (3, 4) V (3, 8) V (2, 8) V (4, 5) V (7, 5) V (7, 8) V (c, 3) V (c, 8) V (e, 5) V (2, 7) V (d) V (g) V (1, 7) V (6, 7) a b c d e f g Tuesday, July 16, 2013
  • 45. Generalized Definition Order-3 1 2 3 456 7 8 V (2, 3, 8) V (3, 4, 8) V (3, 4, 5) V (4, 5, 6)V (d, 5) V (5, 6, 7) V (1, 6, 7) V (d, 2) V (g, 1) V (1, 2, 8) V (1, 2, 7) V (2, 7, 8) V (1, 7, 8) V (3, 7, 8) V (4, 5, 8) V (4, 5, 7) V (5, 7, 8) V (6, 7, 8) V (c, 7, 8) V (c, 3, 8) a b c d e f g V (e, 4, 5) Tuesday, July 16, 2013
  • 46. How we define the k-level? x a, b c d e π(x) = π− (x), π0 (x), π+ (x) π(x) = {a}, {b, c, d}, {e} Tuesday, July 16, 2013
  • 47. How we define the k-level? x a, b c d e π(x) = π− (x), π0 (x), π+ (x) Definition: k-level is a set of points x such that and|π− (x)| k |π− (x) ∪ π0 (x)| ≥ k A3 Tuesday, July 16, 2013
  • 48. The Idea 1 2 3 456 7 8 a b c d e f g A1 A2 A3 l x Fig. 8: Constructing order-3 Voronoi diagram via sweepline technique. Point x belongs to the order-k Voronoi region Maintain the ≤k-level! Tuesday, July 16, 2013
  • 49. SUMMARY We have developed an algorithm that constructs the order-kVoronoi diagram of line segments in time and space. • Simple • Easy to implement • Sweepline • Can output all order-iVoronoi diagrams for i = 1,...,k • Generalized to the case of line segments forming a planar straight-line graph. O(k2 n log n) O(kn) Tuesday, July 16, 2013