Algorithms for Computing Closest Points for Segments
Haitao Wang
TL;DR
The paper tackles the segment-closest-point problem: given $n$ points $P$ and $n$ segments $S$ in the plane, compute for every segment its closest point in $P$. It introduces a $O(n^{4/3})$ deterministic algorithm, optimal under Erickson's partition model, by leveraging a new $\Gamma$-algorithm framework to bound algebraic decision-tree complexity and by developing a novel outside-hull-query routine that fits this framework. It also develops online data structures for the line- and segment-query problems, achieving efficient preprocessing and query-time trade-offs through multiple geometric techniques (cuttings, duality, trunked hulls, and fractional cascading). The results substantially improve prior work, unify several lines of research on closest-point problems and ray-shooting, and provide practical online solutions with strong worst-case guarantees. Overall, the work demonstrates the power of the $\Gamma$-algorithm framework in computational geometry and yields near-optimal, scalable solutions for a class of segment-query problems.
Abstract
Given a set $P$ of $n$ points and a set $S$ of $n$ segments in the plane, we consider the problem of computing for each segment of $S$ its closest point in $P$. The previously best algorithm solves the problem in $n^{4/3}2^{O(\log^*n)}$ time [Bespamyatnikh, 2003] and a lower bound (under a somewhat restricted model) $Ω(n^{4/3})$ has also been proved. In this paper, we present an $O(n^{4/3})$ time algorithm and thus solve the problem optimally (under the restricted model). In addition, we also present data structures for solving the online version of the problem, i.e., given a query segment (or a line as a special case), find its closest point in $P$. Our new results improve the previous work.
