Table of Contents
Fetching ...

Nearest Neighbor Searching in a Dynamic Simple Polygon

Sarita de Berg, Frank Staals

TL;DR

This work tackles nearest-neighbor search in a dynamic polygonal domain where both the site set and the domain itself can change. The authors develop a two-part data structure: a dynamic shortest-path component that stays up-to-date with polygon updates, and a static Cone Query component rebuilt after a bounded number of updates to answer bounded NN queries efficiently. The approach achieves near-linear space with sublinear amortized update and query times, enabling updates that insert barrier segments and new sites, while preserving query capability in the evolving domain. The construction blends dynamic planar subdivision techniques with a multilevel cone-query framework and leverages geodesic Voronoi theory to handle shortest-path distances within subpolygons, offering a first step toward dynamic NN in polygonal domains and opening avenues for extensions to deletions and more complex domain updates.

Abstract

In the nearest neighbor problem, we are given a set $S$ of point sites that we want to store such that we can find the nearest neighbor of a (new) query point efficiently. In the dynamic version of the problem, the goal is to design a data structure that supports both efficient queries and updates, i.e. insertions and deletions in $S$. This problem has been widely studied in various settings, ranging from points in the plane to more general distance measures and even points within simple polygons. When the sites do not live in the plane but in some domain, another dynamic problem arises: what happens if not the sites, but the domain itself is subject to updates? Updating sites often results in local changes to the solution or data structure, while updating the domain may incur many global changes. For example, in the closest pair problem, inserting a point only requires us to check if this point is in the new closest pair, while updating the domain might change the distances between most pairs of points in our set. Presumably, this is the reason that this form of dynamization has received much less attention. Only some basic problems, such as shortest paths and ray shooting, have been studied in this setting. Here, we tackle the nearest neighbor problem in a dynamic simple polygon. We allow insertions into both the set of sites and the polygon. An insertion in the polygon is the addition of a line segment starting at the boundary of the polygon. We present a near-linear size --in both the number of sites and the complexity of the polygon-- data structure with sublinear update and query time. This is the first nearest neighbor data structure that allows for updates to the domain.

Nearest Neighbor Searching in a Dynamic Simple Polygon

TL;DR

This work tackles nearest-neighbor search in a dynamic polygonal domain where both the site set and the domain itself can change. The authors develop a two-part data structure: a dynamic shortest-path component that stays up-to-date with polygon updates, and a static Cone Query component rebuilt after a bounded number of updates to answer bounded NN queries efficiently. The approach achieves near-linear space with sublinear amortized update and query times, enabling updates that insert barrier segments and new sites, while preserving query capability in the evolving domain. The construction blends dynamic planar subdivision techniques with a multilevel cone-query framework and leverages geodesic Voronoi theory to handle shortest-path distances within subpolygons, offering a first step toward dynamic NN in polygonal domains and opening avenues for extensions to deletions and more complex domain updates.

Abstract

In the nearest neighbor problem, we are given a set of point sites that we want to store such that we can find the nearest neighbor of a (new) query point efficiently. In the dynamic version of the problem, the goal is to design a data structure that supports both efficient queries and updates, i.e. insertions and deletions in . This problem has been widely studied in various settings, ranging from points in the plane to more general distance measures and even points within simple polygons. When the sites do not live in the plane but in some domain, another dynamic problem arises: what happens if not the sites, but the domain itself is subject to updates? Updating sites often results in local changes to the solution or data structure, while updating the domain may incur many global changes. For example, in the closest pair problem, inserting a point only requires us to check if this point is in the new closest pair, while updating the domain might change the distances between most pairs of points in our set. Presumably, this is the reason that this form of dynamization has received much less attention. Only some basic problems, such as shortest paths and ray shooting, have been studied in this setting. Here, we tackle the nearest neighbor problem in a dynamic simple polygon. We allow insertions into both the set of sites and the polygon. An insertion in the polygon is the addition of a line segment starting at the boundary of the polygon. We present a near-linear size --in both the number of sites and the complexity of the polygon-- data structure with sublinear update and query time. This is the first nearest neighbor data structure that allows for updates to the domain.

Paper Structure

This paper contains 24 sections, 17 theorems, 1 equation, 6 figures.

Key Result

Theorem 2

A Dynamic Shortest Path data structure maintains a dynamic simple polygon with $O(\log^2m)$ update time using $O(m)$ space such that for a query point $q$ a set of $O(k)$ bounded nearest neighbor queries that together find the nearest neighbor of $q$ in $P$ among $\tilde{S}$ in $P$ can be computed i

Figures (6)

  • Figure 1: After inserting the green segments, the orange site is the nearest neighbor of $q$.
  • Figure 2: Two bounded nearest neighbor queries: a geodesic triangle ($R_1$) and a geodesic cone ($R_2$).
  • Figure 3: Overview of the Cone Query data structure. For each node in the geodesic triangulation (level 1) we store a partition tree and for each edge we store some restricted Voronoi diagram (level 2). For each node in the partition tree we store three Voronoi based data structures (level 3). Nodes of the geodesic triangulation whos deltoid is empty are omitted.
  • Figure 7: The three data structures stored for the orange cell $\blacktriangle(\mu)$ for answering type (a) queries. The first is used for a query point inside $\blacktriangle(\mu)\cap \Delta$, the second for a query point outside $\blacktriangle(\mu)$, and the third for a query point that is in $\blacktriangle(\mu)$ but outside of $\Delta$.
  • Figure 10: $P_1$ is the green subpolygon.
  • ...and 1 more figures

Theorems & Definitions (19)

  • Definition 1: Figure \ref{['fig:region_types']}
  • Theorem 2
  • Theorem 3
  • Theorem 4
  • Lemma 4
  • Lemma 4
  • Lemma 5
  • Definition 6
  • Lemma 6
  • Lemma 6
  • ...and 9 more