A Pathfinding Algorithm for Large-Scale Complex Terrain Environments in the Field
Abstract
:1. Introduction
1.1. Background and Significance
1.2. Literature Review
- The total cost of generating paths is higher than the optimal paths computed by A*, and it cannot be directly applied to vehicles traveling in off-road environments.
- The terrain in off-road environments has continuity, which means that there are many continuous equal-weighted accessible areas (e.g., grassland). HPA* uses fixed-size clusters to construct the abstract map, which splits these areas into multiple clusters, generating a large number of unnecessary nodes and reducing the pathfinding efficiency in these areas.
1.3. Research Objective
2. Materials and Methods
2.1. RHA* Algorithm Architecture Design
- In the offline preprocessing stage, the original map is abstracted hierarchically using multi-scale rectangular regions. The number of nodes and edges is reduced by optimizing node selection. This creates an abstract map of nodes, edges, and travel costs for real-time pathfinding.
- In the real-time pathfinding stage, different algorithms are selected to compute the optimal abstract paths based on the given start and end locations, and then the generated paths are refined by looking up the table.
2.2. Offline Preprocessing
2.2.1. Regular Clusters Construction
2.2.2. Multi-Scale Rectangular Regions Construction
- All the clusters have the same type:
- One region contains at least one cluster, i.e., n ≥ 1.
- The interior of a region does not contain any inaccessible area.
- The region is a rectangle.
- For nodes that are completely inside the region, just discard them.
- For nodes on the region boundary, they need to be processed according to the number and type of adjacent regions. The basic principle is to discard one of the two adjacent nodes on the region boundary as much as possible while maintaining the complete connectivity of the abstract map. See Appendix D for detailed processing steps.
2.2.3. Edges Calculation
2.3. Real-Time Pathfinding
2.3.1. Abstract Path Calculation
- Points S and E lie in the same equal-weighted region. The equal-weighted region is a rectangular equal-weighted accessible area, so a straight line between S and E is the optimal path. The total cost between S and E is calculated using Equation (2). This situation is more likely to occur when the region’s size is larger.
- Points S and E are not in the same region. S and E need to be added to the abstract map first. For S within the unequally weighted region, use the A* algorithm to compute the edges from S to each node at the boundary of the region and add them to the abstract map. For S within an equal-weighted region, the edges from S to each node are calculated based on the straight-line distance from S to the boundary node and added to the abstract map. The same process is performed for E. Then, based on the complete abstract map, the A* algorithm is used to search for paths starting from S. The search process is performed by using the formula to select the next search node:
2.3.2. Path Refinement
3. Experiment and Results
3.1. Experiment Setup
3.2. Experiment Steps
3.2.1. Offline Preprocessing
3.2.2. Real-Time Pathfinding
3.3. Result Analysis
4. Discussion
4.1. Optimization of Real-Time Pathfinding Efficiency
4.2. Improvement in the Quality of Generated Paths
5. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
Appendix A
Appendix B
Appendix C
- Judge whether currentCluster.regionID is equal to −1: Yes means the cluster is not aggregated, and go to the second step of judgment; No means the cluster has been aggregated, and jump out of the loop to traverse the next cluster.
- Judge whether currentCluster.type is greater than 0: Yes means that the cluster is an equal-weighted accessible area, and go to the third step; No means that the cluster is an inaccessible area or a mixed area, so there is no need to aggregate, so jump out of the loop and traverse the next cluster.
- From the current position of currentCluster, keep finding the neighboring clusters to the right, and judge whether the types are the same, until we find the clusters with different types. This gives the maximum number of neighboring clusters of the same type in the row and is recorded in the maxWidth array. Use the same method to iterate over the next row until the maximum number of adjacent same-type clusters in a row is 0 to stop iterating and go to step four.
- Starting from the current row of currentCluster, expand downward. Based on the maxWidth array which records the maximum number of neighboring same-type clusters in each row, and the number of expansion rows, derive the maximum rectangular area that can be formed when expanding to each row. Select the rectangular area with the largest area as the currentRegion corresponding to the current cluster.
- Set the regionID of other clusters contained in currentRegion to the id of currentRegion, and iteratively traverse the next cluster.
Appendix D
- If the nodes node3 and node4, which are symmetric to node1 and node2, are in the same equal-weighted region B, node1 and node3 are deleted directly, or node2 and node4 are deleted.
- If the nodes node3 and node4 symmetric to node1 and node2 are in two regions B and C, respectively, node1 (or node2) is deleted and an edge is added between node2 (or node1) and node3 to maintain the integrity of the abstract map.
References
- Wang, Y.; Cao, W. A global path planning method for mobile robot based on a three-dimensional-like map. Robotica 2014, 32, 611–624. [Google Scholar] [CrossRef]
- Silver, D.; Bagnell, J.A.; Stentz, A. Learning from demonstration for autonomous navigation in complex unstructured terrain. Int. J. Robot. Res. 2010, 29, 1565–1592. [Google Scholar] [CrossRef]
- Bagnell, J.A.; Bradley, D.; Silver, D.; Sofman, B. Learning for Autonomous Navigation. IEEE Robot. Autom. Mag. 2010, 17, 74–84. [Google Scholar] [CrossRef]
- Rankin, A.L.; Huertas, A.; Matthies, L.H. Stereo-vision-based terrain mapping for off-road autonomous navigation. In Unmanned Systems Technology XI; SPIE: Orlando, FL, USA, 2009; Volume 7332, pp. 253–269. [Google Scholar]
- Huertas, A.; Matthies, L.; Rankin, A. Stereo-based tree traversability analysis for autonomous off-road navigation. In Proceedings of the Seventh IEEE Workshops on Application of Computer Vision, Washington, DC, USA, 5–7 January 2005; Volume 1, pp. 210–217. [Google Scholar]
- Carsten, J.; Ferguson, D.; Stentz, A. 3D Field D*: Improved path planning and replanning through three dimensions. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Beijing, China, 9–15 October 2006; pp. 3381–3386. [Google Scholar]
- Lacaze, A.; Murphy, K.; DelGiono, M. Autonomous mobility for the Demo III experimental unmanned vehicles. In Proceedings of the AUVSI Conference, Orlando, FL, USA, 8–12 July 2002. [Google Scholar]
- Kelly, A.; Stentz, A.; Amidi, O.; Bode, M.; Bradley, D.; Diaz-Calderon, A.; Happold, M.; Herman, H.; Mandelbaum, R.; Pilarski, T.; et al. Toward reliable off road autonomous vehicles operating in challenging environments. Int. J. Robot. Res. 2006, 25, 449–483. [Google Scholar] [CrossRef]
- Kavraki, L.E.; Svestka, P.; Latombe, J.C.; Overmars, M.H. Probabilistic roadmaps for path planning in high-dimensional configuration spaces. IEEE Trans. Robot. Autom. 2006, 12, 566–580. [Google Scholar] [CrossRef]
- LaValle, S.M. Rapidly-Exploring Random Tree: A New Tool for Path Planning. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Leuven, Belgium, 16–20 May 1998; Volume 3. [Google Scholar]
- Karaman, S.; Frazzoli, E. Incremental sampling-based algorithms for optimal motion planning. arXiv 2011, 1105–1186. [Google Scholar] [CrossRef]
- Jordan, M.; Perez, A. Optimal Bidirectional Rapidly-Exploring Random Trees. Computer Science and Artificial Intelligence Laboratory Technical Report 2013. Available online: https://dspace.mit.edu/handle/1721.1/79884 (accessed on 26 April 2024).
- Esposito, J.M.; Wright, J.N. Matrix completion as a post-processing technique for probabilistic roadmaps. Int. J. Robot. Res. 2019, 38, 388–400. [Google Scholar] [CrossRef]
- Dijkstra, E.W. A note on two problems in connexion with graphs. Numer. Math. 1959, 1, 269–271. [Google Scholar] [CrossRef]
- Hart, P.E.; Nilsson, N.J.; Raphael, B. A formal basis for the heuristic determination of minimum cost paths. IEEE Trans. Syst. Sci. Cybern. 1968, 4, 2829. [Google Scholar] [CrossRef]
- Harabor, D.; Grastien, A. Online graph pruning for pathfinding on grid maps. In Proceedings of the AAAI Conference on Artificial Intelligence, San Francisco, CA, USA, 7–11 August 2011; Volume 25, pp. 1114–1119. [Google Scholar]
- Rabin, S. A* Speed Optimizations. In Game Programming Gems; Deloura, M., Ed.; Charles River Media: Needham, MA, USA, 2000; pp. 272–287. [Google Scholar]
- Holte, R.C.; Perez, M.B.; Zimmer, R.M.; MacDonald, A.J. Hierarchical A*: Searching abstraction hierarchies efficiently. In Proceedings of the AAAI Conference on Artificial Intelligence, Portland, OR, USA, 4–8 August 1996; Available online: https://aaai.org/papers/079-aaai96-079-hierarchical-a-searching-abstraction-hierarchies-efficiently (accessed on 26 April 2024).
- Botea, A.; Müller, M.; Schaeffer, J. Near-Optimal Hierarchical Pathfinding. J. Game Dev. 2004, 1, 1–30. [Google Scholar]
- Samet, H. An Overview of Quadtrees, Octrees, and Related Hierarchical Data Structures. Theor. Found. Comput. Graph. CAD 1988, F40, 51–68. [Google Scholar]
- Yahja, A.; Stentz, A.; Singh, S.; Brumitt, B.L. Framed-quadtree path planning for mobile robots operating in sparse environments. In Proceedings of the 1998 IEEE International Conference on Robotics and Automation, Leuven, Belgium, 16–20 May 1998; Volume 1, pp. 650–655. [Google Scholar]
A* | HPA* | RHA* | |
---|---|---|---|
Total cost of paths | 399.5 | 415.94 | 399.63 |
Deviation e | - | 4.12% | 0.033% |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Kui, L.; Yu, X. A Pathfinding Algorithm for Large-Scale Complex Terrain Environments in the Field. ISPRS Int. J. Geo-Inf. 2024, 13, 251. https://doi.org/10.3390/ijgi13070251
Kui L, Yu X. A Pathfinding Algorithm for Large-Scale Complex Terrain Environments in the Field. ISPRS International Journal of Geo-Information. 2024; 13(7):251. https://doi.org/10.3390/ijgi13070251
Chicago/Turabian StyleKui, Luchao, and Xianwen Yu. 2024. "A Pathfinding Algorithm for Large-Scale Complex Terrain Environments in the Field" ISPRS International Journal of Geo-Information 13, no. 7: 251. https://doi.org/10.3390/ijgi13070251
APA StyleKui, L., & Yu, X. (2024). A Pathfinding Algorithm for Large-Scale Complex Terrain Environments in the Field. ISPRS International Journal of Geo-Information, 13(7), 251. https://doi.org/10.3390/ijgi13070251