This paper presents an approximation algorithm for finding a shortest path between two points $s$ and $t$ in a weighted planar subdivision $\PS$. Each face $f$ of $\PS$ is associated with a weight $w_f$, and the cost of travel along a line segment on $f$ is $w_f$ multiplied by the Euclidean norm of that line segment. The cost of a path which traverses across several faces of the subdivision is the sum of the costs of travel along each face. Our algorithm progreeses the discretized shortest path wavefront from source $s$, and takes polynomial time in finding an $\epsilon$-approximate shortest path.
Let P be a planar subdivision, specified by n vertices and O(n) faces. We assume, w.l.o.g., that the faces are triangles. Each face f has a weight, α f ∈ Z + , associated with it. This weight specifies the cost per unit distance of traversing the face f . For simplicity, we assume that the cost of traversing a unit distance along an edge e, say α e , which bounds faces f 1 and f 2 is min{α f 1 , α f 2 }. The cost of a straight line path between two points p and q on face f is α f pq . And the weighted length of a path passing through a number of faces is the sum of the weighted lengths of its sub-paths through each face. Let s and t, respectively, be the source and destination points on P. The weighted shortest path problem is to find a path having the minimum weighted length from s to t. The path we need to find is geodesic in the sense that it is locally optimal and cannot, therefore, be shortened by slight perturbations. An optimal path is a geodesic path that is globally optimal. A corresponding problem can also be defined when the domain, P is the surface of a polyhedron. The applications of this problem are rich and varied, ranging from motion planning, to graphics, injection molding and computer-assisted surgery [3,7].
While there has been previous work on this problem (see Table 1), a polynomial solution which tackled the problem in a systematic way was designed by Mitchell and Papadimitriou [7]. Their algorithm uses Snell’s Law and a continuous Dijkstra method to give an optimal-path map for any given source point s. Because of numerical precision issues, the algorithm [7] finds an ǫ-approximation to an optimal path. In this paper too, we consider ǫ-approximate paths i.e., the weighted approximate shortest path from s to t is of length at most (1 + ǫ) times the weighted distance between s to t of an optimal path.
Given the higher order polynomial solution for this problem, approximation algorithms are provided by Agarwal et al. [1], Cheng S.-W. et al. [4], Aleksandrov et al. [3], and Reif et al. [8,9] whose time complexities rely on geometric parameters that are outside the logarithm. However, the time complexities of these algorithms are pseudo-polynomial (running time is polynomial in the numeric value of the input i.e., exponential in the length of the number of bits in the input). The algorithm by [4] has a smaller dependence on n as compared with [7] but a higher dependece on ǫ and ρ (defined in Table 1). Previous algorithms by Lanthier et al. [5] and Aleksandrov et al. [3] took a discretization approach by introducing Steiner points on each edge. A discrete graph is constructed by adding edges connecting Steiner points in the same triangular region and an optimal path is computed in the resulting discrete graph using Dijkstra’s algorithm. To avoid incurring high time complexity, they have used a subgraph of the complete graph in each triangular region.
In this paper, we design an efficient polynomial time approximation algorithm for finding ǫ-approximate paths in weighted planar subdivisions. Previous schemes for this problem either discretize the space using Steiner vertices [3] or partition the space around a point into cones [6] and process all the discrete objects created. Our approach discretizes the wavefront in the continuous-Dijkstra’s approach by initiating a set of rays from s, and the rays are generated uniformly around a source point. Since the approach of maintaining the wavefront exactly is complicated, we do not use it in this paper. Rather, in our approach, we utilize only a subset of rays to guide the progress of the wavefront as it expands from the source. When two rays together yield an ǫ-approximate shortest distance from s to a vertex v, we initiate another discretized wavefront from v. Thus our propagation Algorithm Time Complexity This paper O(n 6 lg( 1 ǫ ′ ) + n 4 lg( W wǫ ′ )) Mitchell and Papadimitriou [7] O(n 8 lg( nN W wǫ )) Aleksandrov et al. [3] O( nK √ ǫ lg( N W w ) lg n ǫ lg 1 ǫ ) Cheng et al. [4] O( ρ lg ρ ǫ n 3 lg ρn ǫ ), where ρ ∈ [1, W ] ∪ {∞} Reif and Sun [9] O( nN 2 ǫ lg( N W w ) lg n ǫ lg 1 ǫ ) Aleksandrov et al. [2] O(
Table 1: Comparison of Weighted Shortest Path Algorithms processes discrete wavefronts from every vertex and can also be used to solve the all-pairs shortest path problem in the domain. This method is also applicable in finding geodesic shortest path between two given points such that the shortest path lies on the surface of a 2-manifold whose faces are associated with positive weights. Our solution uses several of the Lemmas and Theorems proved in Mitchell and Papadimitriou [7], and extends their solution to obtain a better bound.
The current best known algorithm [3] to solve this problem requires O(K n √ ǫ lg ( N W w ) lg n ǫ lg 1 ǫ ) time, where K captures geometric parameters and the weights of the faces. This paper describes an algorithm with O(n 6 lg( 1 ǫ ′ )+ n 4 lg( W wǫ ′ )) time complexity, where ǫ ′ = ǫ n(n 2 +LW ) , n is
This content is AI-processed based on open access ArXiv data.