Neuro-Explorer: Efficient and Scalable Exploration Planning via Learned Frontier Regions

Ewha Womans University
IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2024

*Indicates Corresponding Author

In this video, we demonstrate the effectiveness of our Neuro-Explorer in a large-scale simulation environment.

Abstract

We present an efficient and scalable learning-based autonomous exploration system for mobile robots navigating unknown indoor environments. Our system incorporates three network models trained to identify the frontier region (FR), the boundary between known and unknown regions, in the input grid map (FR-Net) and to evaluate the detected FR regions based on their proximity to the robot (A*-Net) and the coverage reward at the FR regions (Viz-Net). Our method employs an active window of the map that moves along with the robot, offering scalable exploration capabilities while maintaining a high rate of exploration coverage owing to the two exploratory measures utilized by A*-Net (proximity) and Viz-Net (coverage). Consequently, Our system completes over 99% coverage in a large-scale benchmarking world, scaling up to 135 m X 80 m. In contrast, other state-of-the-art approaches completed only less than 40% of the same world with a 30% slower exploration speed than ours.

Our Approach

OverView

The primary application of this package is reminiscent of our previous work, AutoExplorer, an autonomous exploration system for 2D LiDAR-based mobile robots. However, while AutoExplorer employs a simple greedy exploration strategy, Neuro-Explorer utilizes a more deliberative approach by considering coverage rewards at frontier candidates. To design this deliberative strategy, we estimated the visibility at each frontier cell, combined this with distance estimates from the robot's position to the frontier cell, and then evaluated each frontier cell accordingly.

Optimal Frontier Point from trained artificial neural networks (ANN)

To implement our approach, we introduce three artificial neural networks: FR-Net, A-Net*, and VizNet, trained for predicting frontier region, inverted A* cost, and visibility score, respectively. The architecture of the three ANNs are shown as below.

This figure illustrates that our A*-Net predicts the inverted A* cost $\tilde{\mathrm{F}}$ for the frontier regions identified by FR-Net. The inverted A* cost is defined as the complement of A* cost $\mathrm{F}$ : $\tilde{\mathrm{F}} = 1 - \mathrm{F}$. Furthermore, VizNet learns to predict the visibility score $\mathrm{V}$, for each cell belong to the frontier region. The visibility of a frontier cell refers to the potential number of new cells discovered in the frontier cell if the cell is visited. Finally, the optimal frontier point $f^*$ is computed by combining the predictions from both A*-Net and VizNet by,

$f^*= \underset{i}{\mathrm{argmax}}\, (\lambda\mathrm{\tilde{\mathrm{F}}_i} + (1-\lambda)\mathrm{V}_i), \;\; \exists \lambda \in [0, 1]$

where $\lambda$ can be interpreted as a relative strength of the exploitation strategy, e.g., $\lambda=1$ makes the system behave as a greedy exploration.

Real-time exploration using a ROS-integrated system

Similar to AutoExplorer, Neuro-Explorer is a ROS compatible system that integrates ROS navigation packages to create a fully integrated mobile navigation SW system. The ROS navigation packages consists of essential components for localization, mapping, and plannings which enpowers the fully autonomous navigation capabilities for mobile robots. To utilize the pre-trained ANNs, Neuro-Explorer employs Tensorflow C API to read GPU ouputs from the ANNs into C/C++ APIs. The figure below illustrates the achitecture of Neuro-Explorer during the deployment phase.

Results

1. Exploration (VizNet) vs Exploitation (A*-Net)

Overall, the best exploration performance was obtained when lambda=0.2 ~ 0.4 by emphasizing the exploration strategy (Viz-Net) over the exploitation strategy (A*-Net). In other words, this experiment signifies that the optimal frontier point is not necessarily the closest relative to the current robot position. Thus, simple imitation learning based on traditional greedy frontier detection is not the best strategy.

lambda_analysis
Lambda analysis


2. Large-Scale Exploration

We created a large-scale simulation environment called WGx3, which was generated by concatenating the Willow Garage world three times. We then conducted multiple exploration tasks in this environment. We observed that Neuro-Explorer is capable of exploring the entire space within a finite time. Note that the exploration performance was fairly consistent even without ground-truth pose information. Neuro-Explorer was still able to complete the exploration using estimated position data computed by third-party SLAM software.


WGx3

WGx3 world snapshot

WGx3

The exploration result with exact localization

WGx3

The exploration with estimated localization using a SLAM SW




3. Comparisons Against Other Methods

To objectively evaluate our method, we quantitatively compared the exploration time against other state-of-the-art approaches: (1) AutoExplorer and (2) SMMR-Explorer. Additionally, we included the FRNet-Random approach to highlight the importance of exploration planning. AutoExplorer and SMMR-Explorer are recently published state-of-the-art exploration systems for 2D indoor robots. FRNet-Random utilizes the FRNet component of Neuro-Explorer with a random planning policy. As shown in the table below, our Neuro-Explorer is significantly faster than FRNet-Random, while the other two approaches encountered difficulties completing the exploration of the WGx3 world.

exploration_res
Comparisons of exploration time spent for different methods in WGx2 and WGx3 worlds: */* in each cell indicates the time taken in WGx2 and WGx3, respectively, and - means no available data due to incomplete exploration.

BibTeX


  @inproceedings{hankim2024_iros,
  author = {Kyung Min Han and Young J. Kim},
  title = {Neuro-Explorer: Efficient and Scalable Exploration Planning via Learned Frontier Regions},
  year = {2024},
  pages = {1--6},
  booktitle = {Proc. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
}