An Approximation Algorithm for Computing Shortest Paths in Weighted 3-d Domains (original) (raw)

Approximating Shortest Paths on Weighted Polyhedral Surfaces

Algorithmica, 2001

One common problem in computational geometry is that of computing shortest paths between two points in a constrained domain. In the context of Geographical Information Systems (GIS), terrains are often modeled as Triangular Irregular Networks (TIN) which are a special class on non-convex polyhedra. It is often necessary to compute shortest paths on the TIN surface which takes into account various weights according to the terrain features. We have developed algorithms to compute approximations of shortest paths on non-convex polyhedra in both the unweighted and weighted domain. The algorithms are based on placing Steiner points along the TIN edges and then creating a graph in which we apply Dijkstra's shortest path algorithm. For two points s and t on a non-convex polyhedral surface P, our analysis bounds the approximate weighted shortest path cost as (s, t) ≤ (s, t) + W |L|, where L denotes the longest edge length of P and W denotes the largest weight of any face of P. The worst case time complexity is bounded by O(n 5 ). An alternate algorithm, based on geometric spanners, is also provided and it ensures that (s, t) ≤ β( (s, t) + W |L|) for some fixed constant β > 1, and it runs in O(n 3 log n) worst case time. We also present detailed experimental results which show that the algorithms perform much better in practice and the accuracy is near-optimal.

Determining approximate shortest paths on weighted polyhedral surfaces

Journal of the ACM, 2005

In this article, we present an approximation algorithm for solving the single source shortest paths problem on weighted polyhedral surfaces. We consider a polyhedral surface P as consisting of n triangular faces, where each face has an associated positive weight. The cost of travel through a face is the Euclidean distance traveled, multiplied by the face's weight. For a given parameter ε, 0 < ε < 1, the cost of the computed paths is at most 1 + ε times the cost of corresponding shortest paths. Our algorithm is based on a novel way of discretizing polyhedral surfaces and utilizes a generic greedy approach for computing shortest paths in geometric graphs obtained by such discretization. Its running time is O(C(P) n √ ε log n ε log 1 ε) time, where C(P) captures geometric parameters and the weights of the faces of P.

Approximate Euclidean Shortest Paths in Polygonal Domains

2019

Given a set mathcalP\mathcal{P}mathcalP of hhh pairwise disjoint simple polygonal obstacles in mathbbR2\mathbb{R}^2mathbbR2 defined with nnn vertices, we compute a sketch Omega\OmegaOmega of mathcalP\mathcal{P}mathcalP whose size is independent of nnn, depending only on hhh and the input parameter epsilon\epsilonepsilon. We utilize Omega\OmegaOmega to compute a (1+epsilon)(1+\epsilon)(1+epsilon)-approximate geodesic shortest path between the two given points in O(n+h((lgn)+(lgh)1+delta+(frac1epsilonlgfrachepsilon)))O(n + h((\lg{n}) + (\lg{h})^{1+\delta} + (\frac{1}{\epsilon}\lg{\frac{h}{\epsilon}})))O(n+h((lgn)+(lgh)1+delta+(frac1epsilonlgfrachepsilon))) time. Here, epsilon\epsilonepsilon is a user parameter, and delta\deltadelta is a small positive constant (resulting from the time for triangulating the free space of calP\cal PcalP using the algorithm in \cite{journals/ijcga/Bar-YehudaC94}). Moreover, we devise a (2+epsilon)(2+\epsilon)(2+epsilon)-approximation algorithm to answer two-point Euclidean distance queries for the case of convex polygonal obstacles.

Approximation algorithms for geometric shortest path problems

2000

We consider the classical geometric problem of determining a shortest path through a weighted domain. We present approximation algorithms that compute e-short paths, i.e., paths whose costs are within a factor of 1 + e of the shortest path costs, for an arbitrary constant e > O, for the following geometric configurations: SPPS Problem: We are given a polyhedron 79 consisting of n convex faces 1 and each face has a positive non-zero real valued weight. The shortest path on polyhedral surface problem (SPPS) is to compute a path of least cost that remains on the surface of 79 between any two vertices, where the cost of the path is defined to be the weighted sum of Euclidean lengths of the sub-paths within each face. Our algorithm runs in O(~ lo 1, 1 g ;t~ + logn)) time for 0 < e < 1. The run time improves to O(n log n) for e >_ 1 and to O(~ log ~ log n) when all weights are equal. WRP-3D Problem: We are given a subdivision of N3 consisting of n convex regions. Each face has associated with it a positive non-zero real valued weight. The shortest path problem in three dimensions (SP3D) is to compute a path of least cost between any two vertices, where the cost of the path is defined to be the weighted sum of Euclidean lengths of the sub-paths within each region. We present the first polynomial time approximation scheme. Our algorithm O n 1 1 runs in (~ log ; (~ +log n)) time. The run time improves to O(;~-log ~logn)) when all weights are equal. This can be used to solve the shortest path problem amidst obstacles in 3-dimensional Euclidean space (ESP-3D). *Research supported by NSERC and NCE GEOIDE. 1For ease of notation we assume throughout the SPPS portion of this paper that the number of faces is proportional to the number of vertices although our algorithms are stated in the general sense.

An ε — Approximation algorithm for weighted shortest paths on polyhedral surfaces

Lecture Notes in Computer Science, 1998

Let P be a simple polyhedron, possibly non-convex, whose boundary is composed of n triangular faces, and in which each face has an associated positive weight. The cost of travel through each face is the distance traveled multiplied by the face's weight. We present anapproximation algorithm for computing a weighted shortest path on P, i.e. the ratio of the length of the computed path with respect to the length of an optimal path is bounded by (1 + ), for a given > 0.We give a detailed analysis to determine the exact constants for the approximation factor. The running time of the algorithm is O(mn log mn + nm 2 ). The total number of Steiner points, m, added to obtain the approximation depends on various parameters of the given polyhedron such as the length of the longest edge, the minimum angle between any two adjacent edges of P and the minimum distance from any vertex to the boundary of the union of its incident faces and the ratio of the largest ( nite) to the smallest face weights of P. Lastly, we present an approximation algorithm with an improved running time of O(mn log mn), at the cost of trading o the constants in the path accuracy. Our results present an improvement in the dependency on the number of faces, n, to the recent results of Mata and Mitchell 10] by a multiplicative factor of n 2 = log n, and to that of Mitchell and Papadimitriou 11] by a factor of n 7 .

An epsilon-Approximation for Weighted Shortest Paths on Polyhedral Surfaces

Scandinavian Workshop on Algorithm Theory, 1998

Let P be a simple polyhedron, possibly non-convex, whose boundary is composed of n triangular faces, and in which each face has an associated positive weight. The cost of travel through each face is the distance traveled multiplied by the face's weight. We present anapproximation algorithm for computing a weighted shortest path on P, i.e. the ratio of the length of the computed path with respect to the length of an optimal path is bounded by (1 + ), for a given > 0.We give a detailed analysis to determine the exact constants for the approximation factor. The running time of the algorithm is O(mn log mn + nm 2 ). The total number of Steiner points, m, added to obtain the approximation depends on various parameters of the given polyhedron such as the length of the longest edge, the minimum angle between any two adjacent edges of P and the minimum distance from any vertex to the boundary of the union of its incident faces and the ratio of the largest ( nite) to the smallest face weights of P. Lastly, we present an approximation algorithm with an improved running time of O(mn log mn), at the cost of trading o the constants in the path accuracy. Our results present an improvement in the dependency on the number of faces, n, to the recent results of Mata and Mitchell 10] by a multiplicative factor of n 2 = log n, and to that of Mitchell and Papadimitriou 11] by a factor of n 7 .

An epsilon-Approximation Algorithm for Weighted Shortest Path Queries on Polyhedral Surfaces

European Workshop on Computational Geometry, 1998

Let P be a simple polyhedron, possibly non-convex, whose boundary is composed of n triangular faces, and in which each face has an associated positive weight. The cost of travel through each face is the distance traveled multiplied by the face's weight. We present anapproximation algorithm for computing a weighted shortest path on P, i.e. the ratio of the length of the computed path with respect to the length of an optimal path is bounded by (1 + ), for a given > 0.We give a detailed analysis to determine the exact constants for the approximation factor. The running time of the algorithm is O(mn log mn + nm 2 ). The total number of Steiner points, m, added to obtain the approximation depends on various parameters of the given polyhedron such as the length of the longest edge, the minimum angle between any two adjacent edges of P and the minimum distance from any vertex to the boundary of the union of its incident faces and the ratio of the largest ( nite) to the smallest face weights of P. Lastly, we present an approximation algorithm with an improved running time of O(mn log mn), at the cost of trading o the constants in the path accuracy. Our results present an improvement in the dependency on the number of faces, n, to the recent results of Mata and Mitchell 10] by a multiplicative factor of n 2 = log n, and to that of Mitchell and Papadimitriou 11] by a factor of n 7 .

A near optimal algorithm for finding Euclidean shortest path in polygonal domain

ArXiv, 2010

We present an algorithm to find an {\it Euclidean Shortest Path} from a source vertex sss to a sink vertex ttt in the presence of obstacles in Re2\Re^2Re2. Our algorithm takes O(T+m(lgm)(lgn))O(T+m(\lg{m})(\lg{n}))O(T+m(lgm)(lgn)) time and O(n)O(n)O(n) space. Here, O(T)O(T)O(T) is the time to triangulate the polygonal region, mmm is the number of obstacles, and nnn is the number of vertices. This bound is close to the known lower bound of O(n+mlgm)O(n+m\lg{m})O(n+mlgm) time and O(n)O(n)O(n) space. Our approach involve progressing shortest path wavefront as in continuous Dijkstra-type method, and confining its expansion to regions of interest.

Efficient computation of geodesic shortest paths

This paper describes an ecient algorithm for the geodesic shortest path problem, i.e. the problemof nding shortest paths between pairs of points on the surface of a 3-dimensional polyhedron suchthat the path is constrained to lie on the surface of the polyhedron. We use the wavefront methodand show an O(nlog2n) time bound for this problem, when there are O(n) vertices and edges on thepolyhedron.1

Approximate Shortest Path Queries on Weighted Polyhedral Surfaces

Lecture Notes in Computer Science, 2006

We consider the classical geometric problem of determining shortest paths between pairs of points lying on a weighted polyhedral surface P consisting of n triangular faces. We present query algorithms that compute approximate distances and/or approximate (weighted) shortest paths. Our algorithm takes as input an approximation parameter ε ∈ (0, 1) and a query time parameter q and builds a data structure APQ(P, ε; q) which is then used for answering -approximate distance queries in O(q) time. This algorithm is source point independent and improves significantly on the best previous solution.