Bichromatic Separating Circles. Problem Given two sets of points, R and B ∈ R ² where | R | = n and | B | = m: – Find the smallest circle containing all.

Slides:



Advertisements
Similar presentations
Spatial Indexing SAMs. Spatial Indexing Point Access Methods can index only points. What about regions? Z-ordering and quadtrees Use the transformation.
Advertisements

Efficient access to TIN Regular square grid TIN Efficient access to TIN Let q := (x, y) be a point. We want to estimate an elevation at a point q: 1. should.
Nearest Neighbor Queries using R-trees
 Distance Problems: › Post Office Problem › Nearest Neighbors and Closest Pair › Largest Empty and Smallest Enclosing Circle  Sub graphs of Delaunay.
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
A (1+  )-Approximation Algorithm for 2-Line-Center P.K. Agarwal, C.M. Procopiuc, K.R. Varadarajan Computational Geometry 2003.
Convex Hulls in 3-space Jason C. Yang.
Query Processing in Databases Dr. M. Gavrilova.  Introduction  I/O algorithms for large databases  Complex geometric operations in graphical querying.
K-structure, Separating Chain, Gap Tree, and Layered DAG Presented by Dave Tahmoush.
Computational Geometry -- Voronoi Diagram
Computational Geometry and Spatial Data Mining
Nearest Neighbor. Predicting Bankruptcy Nearest Neighbor Remember all your data When someone asks a question –Find the nearest old data point –Return.
2-dimensional indexing structure
Data Transmission and Base Station Placement for Optimizing Network Lifetime. E. Arkin, V. Polishchuk, A. Efrat, S. Ramasubramanian,V. PolishchukA. EfratS.
Discussion #36 Spanning Trees
Half-Space Intersections
Course Review COMP171 Spring Hashing / Slide 2 Elementary Data Structures * Linked lists n Types: singular, doubly, circular n Operations: insert,
CSE 421 Algorithms Richard Anderson Lecture 4. What does it mean for an algorithm to be efficient?
Spatial Queries Nearest Neighbor Queries.
Voronoi Diagrams.
On the ICP Algorithm Esther Ezra, Micha Sharir Alon Efrat.
R-Trees 2-dimensional indexing structure. R-trees 2-dimensional version of the B-tree: B-tree of maximum degree 8; degree between 3 and 8 Internal nodes.
Approximate Distance Oracles for Geometric Spanner Networks Joachim Gudmundsson TUE, Netherlands Christos Levcopoulos Lund U., Sweden Giri Narasimhan Florida.
Area, buffer, description Area of a polygon, center of mass, buffer of a polygon / polygonal line, and descriptive statistics.
Well Separated Pair Decomposition 16 GigaYears and 3.3 Million Light Years Playing.
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
9/7/06CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2006 Triangulations and Guarding Art Galleries Carola Wenk.
UNC Chapel Hill M. C. Lin Point Location Reading: Chapter 6 of the Textbook Driving Applications –Knowing Where You Are in GIS Related Applications –Triangulation.
B-trees and kd-trees Piotr Indyk (slides partially by Lars Arge from Duke U)
On the union of cylinders in 3-space Esther Ezra Duke University.
C o m p u t i n g C O N V E X H U L L S. Presentation Outline 2D Convex Hulls –Definitions and Properties –Approaches: Brute Force Gift Wrapping QuickHull.
Computer Algorithms Submitted by: Rishi Jethwa Suvarna Angal.
The Lower Bounds of Problems
Computer Sciences Department1. Sorting algorithm 3 Chapter 6 3Computer Sciences Department Sorting algorithm 1  insertion sort Sorting algorithm 2.
An Optimal Cache-Oblivious Priority Queue and Its Applications in Graph Algorithms By Arge, Bender, Demaine, Holland-Minkley, Munro Presented by Adam Sheffer.
1 Efficient Obstacle-Avoiding Rectilinear Steiner Tree Construction Chung-Wei Lin, Szu-Yu Chen, Chi-Feng Li, Yao-Wen Chang, Chia-Lin Yang National Taiwan.
Neighborhood-Based Topology Recognition in Sensor Networks S.P. Fekete, A. Kröller, D. Pfisterer, S. Fischer, and C. Buschmann Corby Ziesman.
Nearest Neighbor Queries Chris Buzzerd, Dave Boerner, and Kevin Stewart.
Spanning Trees. A spanning tree for a connected, undirected graph G is a graph S consisting of the nodes of G together with enough edges of G such that:
Open Problem: Dynamic Planar Nearest Neighbors CSCE 620 Problem 63 from the Open Problems Project
Minimal Spanning Tree Problems in What is a minimal spanning tree An MST is a tree (set of edges) that connects all nodes in a graph, using.
Bin Yao (Slides made available by Feifei Li) R-tree: Indexing Structure for Data in Multi- dimensional Space.
Spatial Indexing Techniques Introduction to Spatial Computing CSE 5ISC Some slides adapted from Spatial Databases: A Tour by Shashi Shekhar Prentice Hall.
R-Trees: A Dynamic Index Structure For Spatial Searching Antonin Guttman.
UNC Chapel Hill M. C. Lin Computing Voronoi Diagram For each site p i, compute the common inter- section of the half-planes h(p i, p j ) for i  j, using.
Edge-Coloring Geometric Graphs (Problem 75) (
CSE 421 Algorithms Richard Anderson Winter 2009 Lecture 5.
Lecture 3 Sorting and Selection. Comparison Sort.
9/8/10CS 6463: AT Computational Geometry1 CS 6463: AT Computational Geometry Fall 2010 Triangulations and Guarding Art Galleries Carola Wenk.
Common Intersection of Half-Planes in R 2 2 PROBLEM (Common Intersection of half- planes in R 2 ) Given n half-planes H 1, H 2,..., H n in R 2 compute.
Computational Geometry
Computer Graphics Through OpenGL: From Theory to Experiments, Second Edition Chapter 14.
1 R-Trees Guttman. 2 Introduction Range queries in multiple dimensions: Computer Aided Design (CAD) Geo-data applications Support special data objects.
Largest Red-Blue Separating Rectangles
Spanning Trees.
Query Processing in Databases Dr. M. Gavrilova
Nearest Neighbor Queries using R-trees
Orthogonal Range Searching and Kd-Trees
(2,4) Trees 11/15/2018 9:25 AM Sorting Lower Bound Sorting Lower Bound.
Craig Schroeder October 26, 2004
Computational Geometry Capter:1-2.1
Chapter 7 Voronoi Diagrams
(2,4) Trees 12/4/2018 1:20 PM Sorting Lower Bound Sorting Lower Bound.
Computing the Visibility Polygon of an Island in a Polygonal Domain
Spatial Indexing I R-trees
(2,4) Trees 2/28/2019 3:21 AM Sorting Lower Bound Sorting Lower Bound.
An O(n log n)-Time Algorithm for the k-Center Problem in Trees
Aggregate-Max Nearest Neighbor Searching in the Plane
L1 Shortest Path Queries among Polygonal Obstacles in the Plane
Boaz BenMoshe Matthew Katz Joseph Mitchell
Presentation transcript:

Bichromatic Separating Circles

Problem Given two sets of points, R and B ∈ R ² where | R | = n and | B | = m: – Find the smallest circle containing all of R and as few points as possible from B

Example Smallest enclosing circle Smallest separating circle

Possible Applications Communications jamming Minimizing civilian casualties Data set separation

Previous Work Fisk - Pure separability in O(nm) time O’Rourke et al. - Pure separability in O(n+m) time using linear programming – Linear Programming methods taken from Meggido

Previous Work Hurtado et al. – Color grouping within axis parallel rectangles and strips Aronov et al. – Separating red and blue sets using a line

Possible Separating Circles If it contains 3 points from R the answer is the smallest enclosing circle for R Must contain at least two points from R

No Less Than Two Red Points Single red point on boundary - contradiction

Two Red Points Two red points lying on the boundary of a circle – Farthest two red points since all red points must be contained in the circle

Farthest Neighbor Voronoi Diagram An edge is the locus of all points that have the same two farthest points from R Can be thought of as a tree with the root being the center of the minimum enclosing circle of R

Finding the Boundary Center circle on farthest Neighbor Voronoi edge Find event point for each point in B Event point is defined as when a blue point enters or exits the circle

Finding the Boundary Two red points and the edge of FVD that they define

Finding the Boundary Finding the event points

Finding the Boundary

The Algorithm Compute the FVD for R For each of the O(n) edges of the diagram, we perform an event point sweep – Find event points for all blue points – Sort in order of increasing distance from the red points – Calculate # of blue points within the circle Only need to increment/decrement after first count – Constant time update

Running Time/Space Analysis (Smallest Circle) Computing the FVD for R takes O(n logn) time and uses O(n) space For each of the O(n) edges of the diagram, we perform the sweep – This uses O(m) space and O(mlogm) time Thus, overall we use O(n+m) space and O(nmlogm + nlogn) time

Event Points Sweep algorithm analyzes all event points Each edge may have O(m) event points As the circle grows, it will eventually enclose all blue points in the halfspace

Event Points Each edge may have O(m) event points

Event Points Each edge may have O(m) event points

Event Points Intersection of halfspaces Place O(m) points within this region – All of those points will cause event points for each of the edges

Exit Event Points Size of enclosing circle increases along path from root to leaf Not necessary to analyze all event points – Only analyze exit events

Exit Event Points Each edge of FVD( R) defines an exit region Exit regions are disjoint – <= m exit events

Counting Blue Points Sweeping allowed count to be found in constant time Use circular range counting

Running Time/Space Analysis (Smallest Circle) Second Algorithm Find edge of FVD( R) defining the exit region for each point in B – O(nm) time Perform O(m) circular range counting queries – O*(m 1.5 ) time and space * notation hides a polylogarithmic factor Faster than the sweeping algorithm if n=ω(√m)

Bound on the Number of Smallest Circles There are n separating circles in the worst case Lower bound

Bound on the Number of Smallest Circles There are n separating circles in the worst case Lower bound

Bound on the Number of Smallest Circles There are n separating circles in the worst case Upper bound Center of smallest enclosing circle Root to leaf path increases circle size, so smallest separating circles can only exist on disjoint root to leaf paths

Largest Separating Circle Use largest separating circle algorithm for purely separable sets as a subroutine Remove all points from B that are inside circles with the minimum number of blue points encountered during the sweep

Largest Separating Circle Subroutine takes O((n+m)log(n+m)) time Overall running time O(m(n+m)log(n+m))