Algorithms for Subpath Convex Hull Queries and Ray-Shooting among Segments

.In this paper, we first consider the subpath convex hull query problem: Given a simple path \(\pi\) of \(n\) vertices, preprocess it so that the convex hull of any query subpath of \(\pi\) can be quickly obtained. Previously, Guibas, Hershberger, and Snoeyink [Int. J. Comput. Geom. Appl., 1 (1991), pp. 1–22; first appeared in SODA 1990] proposed a data structure of \(O(n)\) space and \(O(\log n\log \log n)\) query time; they also reduced the query time to \(O(\log n)\) by increasing the space to \(O(n\log \log n)\) . We present an improved result that uses \(O(n)\) space while achieving \(O(\log n)\) query time. Like the previous work, our query algorithm returns a compact interval tree representing the convex hull so that standard binary-search-based queries on the hull can be performed in \(O(\log n)\) time each. The preprocessing time of our data structure is \(O(n)\) after the vertices of \(\pi\) are sorted by \(x\) -coordinate. As the subpath convex hull query problem has many applications, our new result leads to improvements for several other problems. In particular, with the help of the above result, along with other techniques, we present new algorithms for the ray-shooting problem among segments. Given a set of \(n\) (possibly intersecting) line segments in the plane, preprocess it so that the first segment hit by a query ray can be quickly found. We give a data structure of \(O(n\log n)\) space that can answer each query in \((\sqrt{n}\log n)\) time. If the segments are nonintersecting or if the segments are lines, then the space can be reduced to \(O(n)\) . As a by-product, given a set of \(n\) (possibly intersecting) segments in the plane, we build a data structure of \(O(n)\) space that can determine whether a query line intersects a segment in \(O(\sqrt{n}\log n)\) time. The preprocessing time is \(O(n^{1.5})\) for all four problems, which can be reduced to \(O(n\log n)\) time by a randomized algorithm so that the query time is bounded by \(O(\sqrt{n}\log n)\) with high probability. All these are classical problems that have been studied extensively. Previously data structures of \(\widetilde{O}(\sqrt{n})\) query time were known in the early 1990s (the notation \(\widetilde{O}\) suppresses a polylogarithmic factor); nearly no progress has been made for more than two decades. For all these problems, our new results provide improvements by reducing the space of the data structures by at least a logarithmic factor while the preprocessing and query times are the same as before or even better.Keywordssubpath hull queriesconvex hullscompact interval treesray-shootingMSC codes68Q2568W4068U0565D18

Authors

Institutions

Publication Details

Journal
SIAM Journal on Computing
Published
2024-08-13
DOI
https://doi.org/10.1137/21m145118x
Citations
3
Primary Topic
Computational Geometry and Mesh Generation
Type
article
Field-Weighted Citation Impact
1.26

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Algorithms for Subpath Convex Hull Queries and Ray-Shooting among Segments

Haitao Wang
3 citations
SIAM Journal on Computing
Computational Geometry and Mesh Generation
1.26
article

Algorithms for Subpath Convex Hull Queries and Ray-Shooting among Segments

Haitao Wang
article en
3 citations

Abstract

.In this paper, we first consider the subpath convex hull query problem: Given a simple path \(\pi\) of \(n\) vertices, preprocess it so that the convex hull of any query subpath of \(\pi\) can be quickly obtained. Previously, Guibas, Hershberger, and Snoeyink [Int. J. Comput. Geom. Appl., 1 (1991), pp. 1–22; first appeared in SODA 1990] proposed a data structure of \(O(n)\) space and \(O(\log n\log \log n)\) query time; they also reduced the query time to \(O(\log n)\) by increasing the space to \(O(n\log \log n)\) . We present an improved result that uses \(O(n)\) space while achieving \(O(\log n)\) query time. Like the previous work, our query algorithm returns a compact interval tree representing the convex hull so that standard binary-search-based queries on the hull can be performed in \(O(\log n)\) time each. The preprocessing time of our data structure is \(O(n)\) after the vertices of \(\pi\) are sorted by \(x\) -coordinate. As the subpath convex hull query problem has many applications, our new result leads to improvements for several other problems. In particular, with the help of the above result, along with other techniques, we present new algorithms for the ray-shooting problem among segments. Given a set of \(n\) (possibly intersecting) line segments in the plane, preprocess it so that the first segment hit by a query ray can be quickly found. We give a data structure of \(O(n\log n)\) space that can answer each query in \((\sqrt{n}\log n)\) time. If the segments are nonintersecting or if the segments are lines, then the space can be reduced to \(O(n)\) . As a by-product, given a set of \(n\) (possibly intersecting) segments in the plane, we build a data structure of \(O(n)\) space that can determine whether a query line intersects a segment in \(O(\sqrt{n}\log n)\) time. The preprocessing time is \(O(n^{1.5})\) for all four problems, which can be reduced to \(O(n\log n)\) time by a randomized algorithm so that the query time is bounded by \(O(\sqrt{n}\log n)\) with high probability. All these are classical problems that have been studied extensively. Previously data structures of \(\widetilde{O}(\sqrt{n})\) query time were known in the early 1990s (the notation \(\widetilde{O}\) suppresses a polylogarithmic factor); nearly no progress has been made for more than two decades. For all these problems, our new results provide improvements by reducing the space of the data structures by at least a logarithmic factor while the preprocessing and query times are the same as before or even better.Keywordssubpath hull queriesconvex hullscompact interval treesray-shootingMSC codes68Q2568W4068U0565D18

SIAM Journal on ComputingVol. 53(4)
University of Utah (US)
National Science Foundation
Openalex Percentile: Top 16%
Computational Geometry and Mesh Generation
1.26
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.