15 research outputs found

    A Static Optimality Transformation with Applications to Planar Point Location

    Full text link
    Over the last decade, there have been several data structures that, given a planar subdivision and a probability distribution over the plane, provide a way for answering point location queries that is fine-tuned for the distribution. All these methods suffer from the requirement that the query distribution must be known in advance. We present a new data structure for point location queries in planar triangulations. Our structure is asymptotically as fast as the optimal structures, but it requires no prior information about the queries. This is a 2D analogue of the jump from Knuth's optimum binary search trees (discovered in 1971) to the splay trees of Sleator and Tarjan in 1985. While the former need to know the query distribution, the latter are statically optimal. This means that we can adapt to the query sequence and achieve the same asymptotic performance as an optimum static structure, without needing any additional information.Comment: 13 pages, 1 figure, a preliminary version appeared at SoCG 201

    A static optimality transformation with applications to planar point location

    Full text link
    Proceedings of the 27th {ACM} Symposium on Computational Geometry, Paris, France, June 13-15, 2011info:eu-repo/semantics/publishe

    Distance-Sensitive Planar Point Location

    Get PDF
    Let S\mathcal{S} be a connected planar polygonal subdivision with nn edges that we want to preprocess for point-location queries, and where we are given the probability γi\gamma_i that the query point lies in a polygon PiP_i of S\mathcal{S}. We show how to preprocess S\mathcal{S} such that the query time for a point~pPip\in P_i depends on~γi\gamma_i and, in addition, on the distance from pp to the boundary of~PiP_i---the further away from the boundary, the faster the query. More precisely, we show that a point-location query can be answered in time O(min(logn,1+logarea(Pi)γiΔp2))O\left(\min \left(\log n, 1 + \log \frac{\mathrm{area}(P_i)}{\gamma_i \Delta_{p}^2}\right)\right), where Δp\Delta_{p} is the shortest Euclidean distance of the query point~pp to the boundary of PiP_i. Our structure uses O(n)O(n) space and O(nlogn)O(n \log n) preprocessing time. It is based on a decomposition of the regions of S\mathcal{S} into convex quadrilaterals and triangles with the following property: for any point pPip\in P_i, the quadrilateral or triangle containing~pp has area Ω(Δp2)\Omega(\Delta_{p}^2). For the special case where S\mathcal{S} is a subdivision of the unit square and γi=area(Pi)\gamma_i=\mathrm{area}(P_i), we present a simpler solution that achieves a query time of O(min(logn,log1Δp2))O\left(\min \left(\log n, \log \frac{1}{\Delta_{p}^2}\right)\right). The latter solution can be extended to convex subdivisions in three dimensions

    Entropy, Triangulation, and Point Location in Planar Subdivisions

    Get PDF
    A data structure is presented for point location in connected planar subdivisions when the distribution of queries is known in advance. The data structure has an expected query time that is within a constant factor of optimal. More specifically, an algorithm is presented that preprocesses a connected planar subdivision G of size n and a query distribution D to produce a point location data structure for G. The expected number of point-line comparisons performed by this data structure, when the queries are distributed according to D, is H + O(H^{2/3}+1) where H=H(G,D) is a lower bound on the expected number of point-line comparisons performed by any linear decision tree for point location in G under the query distribution D. The preprocessing algorithm runs in O(n log n) time and produces a data structure of size O(n). These results are obtained by creating a Steiner triangulation of G that has near-minimum entropy.Comment: 19 pages, 4 figures, lots of formula

    Practical Distribution-Sensitive Point Location in Triangulations

    Get PDF
    International audienceWe design, analyze, implement, and evaluate a distribution-sensitive point location algorithm based on the classical Jump & Walk, called Keep, Jump, & Walk. For a batch of query points, the main idea is to use previous queries to improve the current one. In practice, Keep, Jump, & Walk is ac- tually a very competitive method to locate points in a triangulation. We also study some constant- memory distribution-sensitive point location algorithms, which work well in practice with the classical space-filling heuristic for fast point location. Regarding point location in a Delaunay triangulation, we show how the Delaunay hierarchy can be used to answer, under some hypotheses, a query q with a O(log #(pq)) randomized expected complexity, where p is a previously located query and #(s) indicates the number of simplices crossed by the line segment s. The Delaunay hierarchy has O(nlogn) time complexity and O(n) memory complexity in the plane, and under certain realistic hypotheses these com- plexities generalize to any finite dimension. Finally, we combine the good distribution-sensitive behavior of Keep, Jump, & Walk, and the good complexity of the Delaunay hierarchy, into a novel point location algorithm called Keep, Jump, & Climb. To the best of our knowledge, Keep, Jump, & Climb is the first practical distribution-sensitive algorithm that works both in theory and in practice for Delaunay triangulations

    Self-Adapting Point Location

    Get PDF
    Point location in spatial subdivision is one of the most studied problems in computational geometry. In the case of triangulations of Rd, we revisit the problem to exploit a possible coherence between the query-points. For a single query, walking in the triangulation is a classical strategy with good practical behavior and expected complexity O(n^(1/d)) if the points are evenly distributed. For a batch of query-points, the main idea is to use previous queries to improve the current one; we compare various strategies that have an influence on the constant hidden in the big-O notation. Still regarding the complexity of a query, we show how the Delaunay hierarchy can be used to answer, under some hypotheses, a query q with a O(log #(pq) ) randomized expected complexity, where #(.) indicates the number of simplices crossed by the line pq, and p is a previously located query. The data structure has O(n log n) construction complexity and O(n) memory complexity
    corecore