Abstract

Let s be a point in a polygonal domain $${\mathcal {P}}$$ of $$h-1$$ holes and n vertices. We consider a quickest visibility query problem. Given a query point q in $${\mathcal {P}}$$ , the goal is to find a shortest path in $${\mathcal {P}}$$ to move from s to seeq as quickly as possible. Previously, Arkin et al. (SoCG 2015) built a data structure of size $$O(n^22^{\alpha (n)}\log n)$$ that can answer each query in $$O(K\log ^2 n)$$ time, where $$\alpha (n)$$ is the inverse Ackermann function and K is the size of the visibility polygon of q in $${\mathcal {P}}$$ (and K can be $$\varTheta (n)$$ in the worst case). In this paper, we present a new data structure of size $$O(n\log h + h^2)$$ that can answer each query in $$O(h\log h\log n)$$ time. Our result improves the previous work when h is relatively small. In particular, if h is a constant, then our result even matches the best result for the simple polygon case (i.e., $$h=1$$ ), which is optimal. As a by-product, we also have a new algorithm for a shortest-path-to-segment query problem. Given a query line segment $$\tau $$ in $${\mathcal {P}}$$ , the query seeks a shortest path from s to all points of $$\tau $$ . Previously, Arkin et al. gave a data structure of size $$O(n^22^{\alpha (n)}\log n)$$ that can answer each query in $$O(\log ^2 n)$$ time, and another data structure of size $$O(n^3\log n)$$ with $$O(\log n)$$ query time. We present a data structure of size O(n) with query time $$O\big (h\log \frac{n}{h}\big )$$ , which also favors small values of h and is optimal when $$h=O(1)$$ .

Highlights

  • Let P be a polygonal domain with h − 1 holes and a total of n vertices, i.e., there is an outer simple polygon containing h − 1 pairwise disjoint holes and each hole itself is a simple polygon

  • For any point q in P, its visibility polygon consists of all points of P visible to q, denoted by Vis(q)

  • We present a new data structure of O(n log h + h2) size with O(h log h log n) query time

Read more

Summary

Introduction

Let P be a polygonal domain with h − 1 holes and a total of n vertices, i.e., there is an outer simple polygon containing h − 1 pairwise disjoint holes and each hole itself is a simple polygon. Given any point q in P, the query asks for a path to move from s to see q as quickly as possible Such a “quickest path” is a shortest path from s to all points of Vis(q). 61:2 Quickest Visibility Queries in Polygonal Domains interesting in that when h = O(1), the data structure has O(n) size and O(log n) query time, which matches the result for the simple polygon case [1] and is optimal. Given any line segment τ in P, the segment query asks for a shortest path from s to all points of τ. Given the shortest path map of s, our quickest visibility query data structure can be built in O(n log h + h2 log h) time and our segment query data structure can be built in O(n) time. Throughout the paper, whenever we talk about a query related to paths in P, the query time always refers to the time for computing the path length, and to output the actual path, it needs additional time linear in the number of edges of the path by standard techniques

Related Work
Our Techniques
Preliminaries
The Decomposition D and the Segment Queries
The Quickest Visibility Queries
The Algorithm Overview
Observations
A Pruning Algorithm for Pruning the Segments of W
The Set of Regions R
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call