Graph Search-Based Exploration Method Using a Frontier-Graph Structure for Mobile Robots
<p>Overview of the proposed integrated exploration algorithm using a frontier-graph structure and graph search-based decision.</p> "> Figure 2
<p>Examples of frontier segmentation. Medium gray indicates unknown cells; black indicates occupied cells; very light gray indicates empty cells; red stars are detected frontier cells; cyan dots are representative nodes; red dots are current nodes; yellow dots are unexplored next targets; the blue dot is the next explored target; cyan lines show the solution to the traveling salesman problem (TSP) for the current node and its child nodes: (<b>a</b>) Local map constructed at the root node (<b>b</b>) local map constructed at the root node’s first child node (<b>c</b>) local map constructed at the root node’s third child node (<b>d</b>). A single map is used at the root node to discriminate real frontiers. (<b>e</b>) The local maps of the current and parent nodes are merged. The previous node is the parent node. The root/parent node’s second child node is not at the frontier area in the merged map, and is eliminated from the exploration target list to obtain a new observation. (<b>f</b>) The local maps of the current, parent, and previous nodes are merged. The previous node is the sibling node.</p> "> Figure 3
<p>Frontier cell detection: (<b>a</b>) Local grid map. (<b>b</b>) Empty region of local grid map. (<b>c</b>) Internal boundary of empty region extracted by morphological operations. (<b>d</b>) Safe frontier cells (red stars) on merged map.</p> "> Figure 4
<p>Registering the edges between the current and revisited nodes’ neighbors in the frontier node DB after accidental loop-closing.</p> "> Figure 5
<p>The environment and 80 starting positions.</p> "> Figure 6
<p>Simulation results. Maximum range of the LRF is 4 m: (<b>a</b>) Number of exploration steps until the exploration is completed. (<b>b</b>) Total number of registered frontier nodes in the frontier-graph. (<b>c</b>) Number of active nodes. (<b>d</b>) Total traveling distance.</p> "> Figure 7
<p>Simulation results. Maximum range of the LRF is 8 m: (<b>a</b>) Number of exploration steps until completion of exploration. (<b>b</b>) Total number of registered frontier nodes in the frontier-graph. (<b>c</b>) Number of active nodes. (<b>d</b>) Total traveling distance.</p> "> Figure 8
<p>Resulting frontier-graph structure on the final grid map by the BFS exploration. The number is the ID of each frontier node. Red lines are edges between the parent and child nodes. Dotted green lines are edges between sibling nodes. Blue circles are active nodes, and white circles are inactive nodes: (<b>a</b>) Frontier-graph from 4 m LRF. (<b>b</b>) Frontier-graph from 8 m LRF.</p> "> Figure 9
<p>Frontier-graph structure on the final grid map obtained from BFS exploration. The numbers indicate the ID of each frontier node. Red lines are edges between the parent and child nodes. Dotted green lines are edges between sibling nodes. Blue circles are active nodes, and white circles are inactive nodes.</p> ">
Abstract
:1. Introduction
2. Related Work
3. Frontier-Graph Structure
3.1. Constructing Frontier-Graph Structure Using Local Maps
3.1.1. Frontier-Graph Database
3.1.2. Frontier Segmentation
Algorithm 1 Registration of new nodes by frontier segmentation |
|
1: add into |
2: obtain by merging the adjacent local maps, , , , |
3: Detect-Frontier-Cell ▹ is the number of rows and . ▹ is the number of columns and . |
4: for to do |
5: for to do |
6: if then |
7: |
8: if Inspect-Safe-Frontier-Cell then |
9: |
10: end if |
11: end if |
12: end for |
13: end for |
14: |
15: if then |
16: |
17: |
18: for all do |
19: ←Initialize-New-Node |
20: |
21: |
22: end for |
23: |
24: |
25: |
26: |
27: end if |
Algorithm 2 Frontier cell detection |
Require: , |
Ensure: |
1: function Detect-Frontier-Cell(, ) |
2: set |
3: set |
4: for all do |
5: if then |
6: |
7: end if |
8: end for |
9: |
10: |
11: |
12: for all do |
13: if then |
14: ←Inspect-Safe-Frontier-Cell |
15: end if |
16: end for |
17: return |
18: end function |
Algorithm 3 Safety inspection of a frontier cell |
Require: empty cell position , size of window for detecting safe frontier cells , |
Ensure: |
1: function Inspect-Safe-Frontier-Cell(, , ) |
2: |
3: |
4: |
5: for to do |
6: for to do |
7: if then |
8: |
9: else if then |
10: |
11: end if |
12: end for |
13: end for |
14: if and then |
15: |
16: end if |
17: return |
18: end function |
Algorithm 4 New node initialization |
Require: cell positions of one frontier segment , the current node’s ID , a new frontier node’s ID |
Ensure: , |
1: function Initialize-New-Node(, , ) |
2: |
3: |
4: |
5: |
6: |
7: for all do |
8: |
9: |
10: end for |
11: |
12: return |
13: end function |
3.2. Updating Frontier-Graph Structure by Loop-Closing
4. Graph-Search-Based Exploration for Frontier-Graph Structure
Algorithm 5 Breadth-first search (BFS) exploration to decide the next target node | |
Require: node DB , the current node’ ID , local map DB | |
Ensure: the next target node | |
1: | |
2: if then | |
3: Find-Next-Node-In-TSP-Solution | |
4: else if then | |
5: | |
6: else if then | |
7: | |
8: Find-Next-Node-In-TSP-Solution | |
9: else | |
10: | |
11: if then | |
12: Find-Next-Node-In-TSP-Solution | |
13: else | |
14: | |
15: if then | |
16: Find-Next-Node-In-TSP-Solution | |
17: else | |
18: | |
19: if then | |
20: | |
21: else | |
22: | ▹ The exploration has been completed. |
23: end if | |
24: end if | |
25: end if | |
26: end if |
Algorithm 6 Next node selection in the solution to the traveling salesman problem (TSP) | |
Require: , the reference node’s ID | |
Ensure: | |
1: function Find-Next-Node-In-TSP-Solution() | |
2: | |
3: | |
4: if then | ▹N: the number of components in |
5: component of | |
6: else | |
7: the first component of | |
8: end if | |
9: return | |
10: end function |
5. Simulation Results
6. Conclusions
Funding
Conflicts of Interest
References
- Debeunne, C.; Vivet, D. A Review of Visual-LiDAR Fusion based Simultaneous Localization and Mapping. Sensors 2020, 20, 2068. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Esparza-Jiménez, J.O.; Devy, M.; Gordillo, J.L. Visual ekf-slam from heterogeneous landmarks. Sensors 2016, 16, 489. [Google Scholar] [CrossRef] [PubMed]
- Latif, Y.; Cadena, C.; Neira, J. Robust loop closing over time for pose graph SLAM. Int. J. Robot. Res. 2013, 32, 1611–1626. [Google Scholar] [CrossRef]
- Yamauchi, B. Frontier-based exploration using multiple robots. In Proceedings of the Second International Conference on Autonomous Agents, Minneapolis, MN, USA, 9–13 May 1998; pp. 47–53. [Google Scholar]
- Shade, R.; Newman, P. Choosing where to go: Complete 3D exploration with stereo. In Proceedings of the 2011 IEEE International Conference on Robotics and Automation, Shanghai, China, 9–13 May 2011; pp. 2806–2811. [Google Scholar]
- Freda, L.; Oriolo, G. Frontier-based probabilistic strategies for sensor-based exploration. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain, 18–22 April 2005; pp. 3881–3887. [Google Scholar]
- Murtra, A.C.; Tur, J.M.M.; Sanfeliu, A. Action evaluation for mobile robot global localization in cooperative environments. Robot. Auton. Syst. 2008, 56, 807–818. [Google Scholar] [CrossRef] [Green Version]
- Gottipati, S.K.; Seo, K.; Bhatt, D.; Mai, V.; Murthy, K.; Paull, L. Deep active localization. IEEE Robot. Autom. Lett. 2019, 4, 4394–4401. [Google Scholar] [CrossRef] [Green Version]
- Makarenko, A.A.; Williams, S.B.; Bourgault, F.; Durrant-Whyte, H.F. An experiment in integrated exploration. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Lausanne, Switzerland, 30 September–4 October 2002; Volume 1, pp. 534–539. [Google Scholar]
- Stachniss, C.; Grisetti, G.; Burgard, W. Information gain-based exploration using rao-blackwellized particle filters. Robot. Sci. Syst. 2005, 2, 65–72. [Google Scholar]
- Valencia, R.; Miró, J.V.; Dissanayake, G.; Andrade-Cetto, J. Active Pose SLAM. In Proceedings of the 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, Algarve, Portugal, 7–12 October 2012; pp. 1885–1891. [Google Scholar]
- Carrillo, H.; Dames, P.; Kumar, V.; Castellanos, J.A. Autonomous robotic exploration using occupancy grid maps and graph slam based on shannon and rényi entropy. In Proceedings of the 2015 IEEE International Conference on Robotics and Automation (ICRA), Seattle, WA, USA, 26–30 May 2015; pp. 487–494. [Google Scholar]
- Juliá, M.; Gil, A.; Reinoso, O. A comparison of path planning strategies for autonomous exploration and mapping of unknown environments. Auton. Robot. 2012, 33, 427–444. [Google Scholar] [CrossRef]
- Sim, R.; Roy, N. Global a-optimal robot exploration in slam. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain, 18–22 April 2005; pp. 661–666. [Google Scholar]
- Carrillo, H.; Reid, I.; Castellanos, J.A. On the comparison of uncertainty criteria for active SLAM. In Proceedings of the 2012 IEEE International Conference on Robotics and Automation, Saint Paul, MN, USA, 14–18 May 2012; pp. 2080–2087. [Google Scholar]
- Amigoni, F.; Caglioti, V. An information-based exploration strategy for environment mapping with mobile robots. Robot. Auton. Syst. 2010, 58, 684–699. [Google Scholar] [CrossRef]
- Bourgault, F.; Makarenko, A.A.; Williams, S.B.; Grocholsky, B.; Durrant-Whyte, H.F. Information based adaptive robotic exploration. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Lausanne, Switzerland, 30 September–4 October 2002; Volume 1, pp. 540–545. [Google Scholar]
- Vallvé, J.; Andrade-Cetto, J. Potential information fields for mobile robot exploration. Robot. Auton. Syst. 2015, 69, 68–79. [Google Scholar] [CrossRef] [Green Version]
- Grisetti, G.; Kümmerle, R.; Stachniss, C.; Burgard, W. A tutorial on graph-based SLAM. IEEE Intell. Transp. Syst. Mag. 2010, 2, 31–43. [Google Scholar] [CrossRef]
- Dai, J.; Yan, L.; Liu, H.; Chen, C.; Huo, L. An Offline Coarse-To-Fine Precision Optimization Algorithm for 3D Laser SLAM Point Cloud. Remote Sens. 2019, 11, 2352. [Google Scholar] [CrossRef] [Green Version]
- Jadidi, M.G.; Miro, J.V.; Dissanayake, G. Gaussian processes autonomous mapping and exploration for range-sensing mobile robots. Auton. Robot. 2018, 42, 273–290. [Google Scholar]
- Viseras, A.; Shutin, D.; Merino, L. Robotic Active Information Gathering for Spatial Field Reconstruction with Rapidly-Exploring Random Trees and Online Learning of Gaussian Processes. Sensors 2019, 19, 1016. [Google Scholar] [CrossRef] [Green Version]
- Zhu, D.; Li, T.; Ho, D.; Wang, C.; Meng, M.Q.H. Deep reinforcement learning supervised autonomous exploration in office environments. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, Australia, 21–25 May 2018; pp. 7548–7555. [Google Scholar]
- Bai, S.; Chen, F.; Englot, B. Toward autonomous mapping and exploration for mobile robots through deep supervised learning. In Proceedings of the 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, Canada, 24–28 September 2017; pp. 2379–2384. [Google Scholar]
- Krause, A.; Guestrin, C. Nonmyopic active learning of gaussian processes: An exploration-exploitation approach. In Proceedings of the 24th International Conference on Machine Learning, Corvallis, OR, USA, 20–24 June 2007; pp. 449–456. [Google Scholar]
- Keidar, M.; Kaminka, G.A. Efficient frontier detection for robot exploration. Int. J. Robot. Res. 2013, 33. [Google Scholar] [CrossRef]
- Bailey, T.; Nieto, J.; Guivant, J.; Stevens, M.; Nebot, E. Consistency of the EKF-SLAM algorithm. In Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems, Beijing, China, 9–15 October 2006; pp. 3562–3568. [Google Scholar]
- Ryu, H.; Chung, W.K. Local map-based exploration for mobile robots. Intell. Serv. Robot. 2013, 6, 199–209. [Google Scholar] [CrossRef]
- Ryu, H.; Chung, W.K. Local map-based exploration using a breadth-first search algorithm for mobile robots. Int. J. Precis. Eng. Manuf. 2015, 16, 2073–2080. [Google Scholar] [CrossRef]
- He, L.; Ren, X.; Gao, Q.; Zhao, X.; Yao, B.; Chao, Y. The connected-component labeling problem: A review of state-of-the-art algorithms. Pattern Recognit. 2017, 70, 25–43. [Google Scholar] [CrossRef]
- Smith, R.; Self, M.; Cheeseman, P. Estimating uncertain spatial relationships in robotics. In Autonomous Robot Vehicles; Springer: New York, NY, USA, 1990; pp. 167–193. [Google Scholar]
- Botea, A.; Müller, M.; Schaeffer, J. Near Optimal Hierarchical Path-Finding. J. Game Dev. 2004, 1, 1–30. [Google Scholar]
- Ryu, H. A Revisiting Method Using a Covariance Traveling Salesman Problem Algorithm for Landmark-Based Simultaneous Localization and Mapping. Sensors 2019, 19, 4910. [Google Scholar] [CrossRef] [Green Version]
- Applegate, D.L.; Bixby, R.E.; Chvatal, V.; Cook, W.J. The Traveling Salesman Problem: A Computational Study; Princeton University Press: Princeton, NJ, USA, 2006. [Google Scholar]
- Howard, A. The Robotics Data Set Repository (Radish). 2003. Available online: http://radish. sourceforge. net/ (accessed on 2 November 2020).
- Thrun, S. Learning occupancy grid maps with forward sensor models. Auton. Robot. 2003, 15, 111–127. [Google Scholar] [CrossRef]
- Katevas, N.I.; Tzafestas, S.G.; Pnevmatikatos, C.G. The approximate cell decomposition with local node refinement global path planning method: Path nodes refinement and curve parametric interpolation. J. Intell. Robot. Syst. 1998, 22, 289–314. [Google Scholar] [CrossRef]
Frontier node DB: |
Local map DB: |
N: the number of frontier nodes |
n: the number of child nodes |
f: the number of frontier cells in ’s frontier segment |
M: the number of local maps |
m: the number of frontier nodes that share |
: the pose of in the local map |
: |
: the shortest distance between and |
Before loop-closing: |
After loop-closing: |
DFS Exp. | BFS Exp. | |||||
---|---|---|---|---|---|---|
Min. | Avg. (Std.) | Max. | Min. | Avg. (Std.) | Max. | |
# of exp. steps | 46 | 128.4 (85.9) | 663 | 44 | 55.6 (10.4) | 115 |
# of frontier nodes | 62 | 143.9 (72.5) | 555 | 23 | 29.9 (4.5) | 53 |
# of active nodes | 36 | 80.9 (41.1) | 332 | 19 | 21.5 (3.0) | 38 |
Travel distance (cells) | 1929 | 4401.8 (2754.8) | 22278 | 1173 | 1500.3 (258.4) | 2852 |
DFS Exp. | BFS Exp. | |||||
---|---|---|---|---|---|---|
Min. | Avg. (Std.) | Max. | Min. | Avg. (Std.) | Max. | |
# of exp. steps | 42 | 78.3 (35.3) | 267 | 15 | 23.7 (5.2) | 47 |
# of frontier nodes | 95 | 194.9 (74.2) | 466 | 19 | 26.3 (3.9) | 47 |
# of active nodes | 31 | 55.6 (18.6) | 135 | 8 | 11.0 (1.7) | 20 |
Travel distance (cells) | 1617 | 3142.4 (1054.8) | 7203 | 809 | 1082.8 (139.2) | 1383 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2020 by the author. 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 (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Ryu, H. Graph Search-Based Exploration Method Using a Frontier-Graph Structure for Mobile Robots. Sensors 2020, 20, 6270. https://doi.org/10.3390/s20216270
Ryu H. Graph Search-Based Exploration Method Using a Frontier-Graph Structure for Mobile Robots. Sensors. 2020; 20(21):6270. https://doi.org/10.3390/s20216270
Chicago/Turabian StyleRyu, Hyejeong. 2020. "Graph Search-Based Exploration Method Using a Frontier-Graph Structure for Mobile Robots" Sensors 20, no. 21: 6270. https://doi.org/10.3390/s20216270
APA StyleRyu, H. (2020). Graph Search-Based Exploration Method Using a Frontier-Graph Structure for Mobile Robots. Sensors, 20(21), 6270. https://doi.org/10.3390/s20216270