We devise a data structure that can answer shortest path queries for two query points in a polygonal domain $P$ on $n$ vertices. For any $\varepsilon > 0$, the space complexity of the data structure is $O(n^{10+\varepsilon })$ and queries can be answered in $O(\log n)$ time. Alternatively, we can achieve a space complexity of $O(n^{9+\varepsilon })$ by relaxing the query time to $O(\log^2 n)$. This is the first improvement upon a conference paper by Chiang and Mitchell from 1999. They present a data structure with $O(n^{11})$ space complexity and $O(\log n)$ query time. Our main result can be extended to include a space-time trade-off. Specifically, we devise data structures with $O(n^{9+\varepsilon}/\hspace{1pt} \ell^{4 + O(\varepsilon )})$ space complexity and $O(\ell \log^2 n )$ query time, for any integer $1 \leq \ell \leq n$. Furthermore, we present improved data structures with $O(\log n)$ query time for the special case where we restrict one (or both) of the query points to lie on the boundary of $P$. When one of the query points is restricted to lie on the boundary, and the other query point is unrestricted, the space complexity becomes $O(n^{6+\varepsilon})$. When both query points are on the boundary, the space complexity is decreased further to $O(n^{4+\varepsilon })$, thereby improving an earlier result of Bae and Okamoto.
翻译:我们设计了一种数据结构,用于在具有$n$个顶点的多边形域$P$中回答两个查询点的最短路径查询。对于任意$\varepsilon > 0$,该数据结构的空间复杂度为$O(n^{10+\varepsilon })$,查询可在$O(\log n)$时间内完成。或者,通过将查询时间放宽至$O(\log^2 n)$,我们可以实现$O(n^{9+\varepsilon })$的空间复杂度。这是对Chiang和Mitchell于1999年发表的会议论文的首次改进。他们提出的数据结构具有$O(n^{11})$的空间复杂度和$O(\log n)$的查询时间。我们的主要结果可扩展至包含时空权衡。具体而言,针对任意整数$1 \leq \ell \leq n$,我们设计了空间复杂度为$O(n^{9+\varepsilon}/\hspace{1pt} \ell^{4 + O(\varepsilon )})$、查询时间为$O(\ell \log^2 n )$的数据结构。此外,针对一个(或两个)查询点限制在$P$边界上的特殊情况,我们提出了查询时间为$O(\log n)$的改进数据结构。当一个查询点限制在边界上而另一个查询点无限制时,空间复杂度变为$O(n^{6+\varepsilon})$。当两个查询点均在边界上时,空间复杂度进一步降低至$O(n^{4+\varepsilon })$,从而改进了Bae和Okamoto的先前结果。