Given a point $s$ and a set of $h$ pairwise disjoint polygonal obstacles oftotally $n$ vertices in the plane, we present a new algorithm for building an$L_1$ shortest path map of size O(n) in $O(T)$ time and O(n) space such thatfor any query point $t$, the length of the $L_1$ shortest obstacle-avoidingpath from $s$ to $t$ can be reported in $O(log n)$ time and the actualshortest path can be found in additional time proportional to the number ofedges of the path, where $T$ is the time for triangulating the free space. Itis currently known that $T=O(n+hlog^{1+epsilon}h)$ for an arbitrarily smallconstant $epsilon>0$. If the triangulation can be done optimally (i.e.,$T=O(n+hlog h)$), then our algorithm is optimal. Previously, the bestalgorithm computes such an $L_1$ shortest path map in $O(nlog n)$ time andO(n) space. Our techniques can be extended to obtain improved results for otherrelated problems, e.g., computing the $L_1$ geodesic Voronoi diagram for a setof point sites in a polygonal domain, finding shortest paths with fixedorientations, finding approximate Euclidean shortest paths, etc.
展开▼
机译:给定一个点$ s $和平面中总共$ n $个顶点的一组$ h $成对不相交的多边形障碍,我们提出了一种新算法,用于在$ O()中构建大小为O(n)的$ L_1 $最短路径图T)$时间和O(n)空间,以便对于任何查询点$ t $,从$ s $到$ t $的最短避障路径$ L_1 $的长度可以在$ O( log n)$中报告时间和实际最短路径可以在与路径边缘数量成比例的额外时间中找到,其中$ T $是对可用空间进行三角剖分的时间。当前已知对于任意小的常数$ ε> 0 $,$ T = O(n + h log ^ {1+ epsilon} h)$。如果可以最佳地进行三角剖分(即$ T = O(n + h log h)$),则我们的算法是最佳的。以前,最佳算法在$ O(n log n)$时间和O(n)空间中计算这样的$ L_1 $最短路径映射。我们的技术可以扩展以获得其他相关问题的改进结果,例如,为多边形域中的一组点站点计算$ L_1 $测地Voronoi图,找到具有固定方向的最短路径,找到近似欧几里得最短路径等。
展开▼