by Li, F and Klette, R
Abstract:
Since 1987 it is known that the Euclidean shortest path problem is NP-hard. However, if the 3D world is subdivided into cubes, all of the same size, defining obstacles or possible spaces to move in, then the Euclidean shortest path problem has a linear-time solution, if all spaces to move in form a simple cube-curve. The shortest path through a simple cube-curve in the orthogonal 3D grid is a minimum-length polygonal curve (MLP for short). So far only one general and linear (only with respect to measured run times) algorithm, called the rubberband algorithm, was known for an approximative calculation of an MLP. The algorithm is basically defined by moves of vertices along critical edges (i.e., edges in three cubes of the given cube-curve). A proof, that this algorithm always converges to the correct MLP, and if so, then always (provable) in linear time, was still an open problem so far (the authors had successfully treated only a very special case of simple cube-curves before). In a previous paper, the authors also showed that the original rubberband algorithm required a (minor) correction. This paper finally answers the open problem: by a further modification of the corrected rubberband algorithm, it turns into a provable linear-time algorithm for calculating the MLP of any simple cube-curve. The paper also presents an alternative provable linear-time algorithm for the same task, which is based on moving vertices within faces of cubes. For a disticntion, we call the modified original algorithm now the edge-based rubberband algorithm, and the second algorithm is the face-based rubberband algorithm; the time complexity of both is in O(m), where m is the number of critical edges of the given simple cube-curve. © Springer-Verlag Berlin Heidelberg 2006.
Reference:
Shortest paths in a cuboidal world (Li, F and Klette, R), In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), Springer Verlag, volume 4040 LNCS, 2006.
Bibtex Entry:
@inproceedings{li2006shortestworld, author = "Li, F and Klette, R", booktitle = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)", pages = "415--429", publisher = "Springer Verlag", title = "Shortest paths in a cuboidal world", volume = "4040 LNCS", year = "2006", abstract = "Since 1987 it is known that the Euclidean shortest path problem is NP-hard. However, if the 3D world is subdivided into cubes, all of the same size, defining obstacles or possible spaces to move in, then the Euclidean shortest path problem has a linear-time solution, if all spaces to move in form a simple cube-curve. The shortest path through a simple cube-curve in the orthogonal 3D grid is a minimum-length polygonal curve (MLP for short). So far only one general and linear (only with respect to measured run times) algorithm, called the rubberband algorithm, was known for an approximative calculation of an MLP. The algorithm is basically defined by moves of vertices along critical edges (i.e., edges in three cubes of the given cube-curve). A proof, that this algorithm always converges to the correct MLP, and if so, then always (provable) in linear time, was still an open problem so far (the authors had successfully treated only a very special case of simple cube-curves before). In a previous paper, the authors also showed that the original rubberband algorithm required a (minor) correction. This paper finally answers the open problem: by a further modification of the corrected rubberband algorithm, it turns into a provable linear-time algorithm for calculating the MLP of any simple cube-curve. The paper also presents an alternative provable linear-time algorithm for the same task, which is based on moving vertices within faces of cubes. For a disticntion, we call the modified original algorithm now the edge-based rubberband algorithm, and the second algorithm is the face-based rubberband algorithm; the time complexity of both is in O(m), where m is the number of critical edges of the given simple cube-curve. © Springer-Verlag Berlin Heidelberg 2006.", isbn = "3540351531", isbn = "9783540351535", issn = "0302-9743", eissn = "1611-3349", language = "eng", }