A high-efficiency, information-based exploration path planning method for active simultaneous localization and mapping

The efficiency of exploration in an unknown scene and full coverage of the scene are essential for a robot to complete simultaneous localization and mapping actively. However, it is challenging for a robot to explore an unknown environment with high efficiency and full coverage autonomously. In this article, we propose a novel exploration path planning method based on information entropy. An information entropy map is first constructed, and its boundary features are extracted. Then a Dijkstra-based algorithm is applied to generate candidate exploration paths based on the boundary features. The dead-reckoning algorithm is used to predict the uncertainty of the robot’s pose along each candidate path. The exploration path is selected based on exploration efficiency and/or high coverage. Simulations and experiments are conducted to evaluate the proposed method’s effectiveness. The results demonstrated that the proposed method achieved not only higher exploration efficiency but also a larger coverage area.


Introduction
In recent years, autonomous exploration path planning and simultaneous localization and mapping (SLAM) in an unknown environment has drawn increasing attention from robotics and computer vision communities. [1][2][3][4][5][6] In the research fields of driverless cars, 7-9 unmanned aerial vehicles, bionic robot, 10 and household robot, a real-time, highprecision environmental map is the basis for these applications to achieve other high-level jobs such as navigation, surveying, and picking and dropping items. However, the actual application scenarios are ever-changing, and it is impossible to preestablish maps for each scene. The lack of autonomous environmental exploration capabilities will significantly limit the widespread use of robot technology. Therefore, many scholars began to study the robot's autonomous exploration path planning problem in an unknown environment, enabling the robot to explore and establish the map actively. [11][12][13][14][15][16][17][18][19][20][21] They combine the local observation data with a partially established map to get an optimal exploration trajectory. The robot autonomously conducts mapping and navigation along this trajectory. Some scholars have also considered the optimization of the sensor's pose during the exploration. [22][23][24] The classic frontier-based approach 11,14,25 can achieve a full coverage observation of the environment by selecting the nearest accessible and unvisited frontier, but it is a one-step greedy method and cannot guarantee that the final exploration trajectory is optimal. The exploration efficiency may decrease significantly due to frequent retrace the route and the fragmentation of the unexplored region. The possibility of positioning loss will also increase without constraints of the uncertainty in the robot's location. Some scholars have adopted an optimization-based multistep approach to obtain the optimal path by maximizing the information gain during the exploration. 15,23,[26][27][28][29][30] However, the computation cost increases significantly as the length of the generated path increases. As a result, the path length has to be limited, or the map resolution is reduced. The optimization-based methods tend to have a high efficiency of exploration at the beginning, but at the end of the exploration, as the fragmentation of the exploration environment increases, the exploration efficiency reduces drastically.
In this article, a novel exploration path planning method based on information entropy has been proposed. The proposed method tries to follow the boundary of the unexplored space and the explored space, avoid breaking the unexplored region into pieces and maintain the integrity of the unexplored area. This mechanism achieves a higher and more stable exploration efficiency throughout the exploration process. Information entropy can fully reflect the quantity of information, which is more accurate and has more advantages than the semantic concepts in the frontierbased methods. First, this representation for the environment makes the proposed method not only has the same global convergence as the typical frontier-based methods but also overcomes the disadvantage of the efficiency reduction due to the fragmentation. Second, the representation simplifies the calculation of information gain. The information entropy gain can be obtained by a more straightforward summation operation rather than a large number of multiplication operations as needed to calculate the posterior probability. A Dijkstra algorithm-based exploration path generation strategy is proposed to get a set of candidate paths under the consideration of the robot's pose uncertainty along these paths. Then an efficiency-optimal selection strategy is used to choose the final exploration path. The results of simulations and experiments show that the proposed method has a significant improvement compared to two classic exploration methods.
The main contributions of this article are summarized as follows: (1) A path generation method based on information entropy maps and boundary features is proposed to generate efficient exploration paths. (2) Uncertainty changes in the pose of the robot are also taken into account in the candidate exploration paths. (3) Practical validation of the proposed method on a mobile robot.

Frontier-based exploration methods
The frontier-based exploration methods 11,14,25,38,42 in unknown scenes can be traced back to the seminal work of Yamauchi. 11 The frontier refers to the boundary between the open space and unexplored space. The robot explores new areas by moving to the nearest frontier until all the frontier in the environment has been explored. They also extern the frontier-based methods to multiple robots. 42 Freda and Oriolo mainly use a data structure that they called the Sensor-based Random Tree (SRT) to create the exploration path and uses the frontier to guide the growth of the SRT toward unexplored areas. 14 Mobarhani et al. propose a histogram-based evaluation method to cluster the frontier cell and select the optimal target. They evaluate each cluster by calculating the distance from each cluster center to the robot, and the number of cells included in each cluster. 25 By using the frontier-based method, the order of observations is not constrained, which results in the area to be explored that may be gradually divided into more and more small areas. In order to achieve full coverage of the environment, the robot has to jump back and forth between these small areas. However, the classic frontier-based method tends to cause an increase in the fragmentation of the unexplored region. We propose a method of exploration path planning based on boundary features. The proposed method can avoid dividing the region into multiple small pieces and reducing the fragmentation.

Environmental characteristics-based method
Mu et al. use the features extracted from the environment to construct the geometric representation of the environment, which they called topological feature graph (TFG). 43 They use a sampling-based method to generate the exploration path with TFG. Xu et al. use the time-varying tensor field to represent the environment and guide the robot to move. 23 At the same time, an RGB-D camera is attached to the robot arm to scan the environment, and the camera's 3-D trajectory is optimized simultaneously to move smoothly to obtain high-quality scans. Vallvé et al. build potential information filed by evaluating the path and map entropy reduction. Then they compute an exploration path in the gradient descent direction of the potential information filed. 28 We extract the boundary features of the environment to generate the exploration path. The boundary feature is stable and has lower computational complexity than the method 11 and the method. 29 Information-theoretic methods Leung et al. treat the robot's exploration path planning in an unknown environment as an optimal path planning. 26 They assume that the features in the environment are static, and use model predictive control to obtain a control sequence of a robot by maximizing the information entropy gain. Vallvé et al. propose a method based on rapidly exploring random tree (RRT). 40 They use RRT to generate a set of candidate paths, and then they use POSE SLAM to evaluate these candidate paths by predicting changes in the uncertainty of the robot's path and the information entropy of the map to select the final exploration path. Stachniss et al. use a particle filter to predict changes in maps and robot's poses after moved to each possible position. 37 They proposed a method to select the exploration actions by trading off between the expected information gain and the possible sensor observation. Bourgault et al. propose a weighted utility evaluation function based on the uncertainty of the localization and information gain, and used the optimization method to obtain the path of exploration. 15 As the length of the planning path increases, the computational cost will increase dramatically. Bai et al. propose a Bayesian optimization-based approach. 29 Firstly, some random exploration targets around the robot are generated, and mutual information at these targets are calculated.
Moreover, a Gaussian process (GP) is trained to predict the distribution of mutual information. After obtaining the initial GP model, they use the Bayesian optimization and the GP model to find the best exploration target, and the mutual information moving to it and add them to the training data set to train a new GP model. Then they use this model to calculate the best target and mutual information. This iterative process is repeated several times. Finally, the final exploration goal is obtained. Since the acquisition of the posterior probability is a computationally complex calculation, the existing methods mostly address this problem by using a shorter planning path or reducing the resolution of the map. However, the boundary features used in this article cover only a small portion of the map. Therefore, the number of planning paths is significantly reduced.

Approach overview
We refer to the problem that a robot plans exploration paths autonomously in an unknown environment and performs simultaneous mapping and localization as the active SLAM. The active SLAM can be separated into two subproblems, SLAM and the active exploration path planning. The traditional SLAM approach passively receives observation data and solves the problem of localization and mapping. Based on the partial information of the existing environment, the active algorithm plans an efficient path for the next exploration steps. This path must be traded off between the benefits of exploring new areas and revisiting areas to improve accuracy.
In order to ensure that the exploration process does not fail, the uncertainty of the robot's pose will also be added to the constraints of the exploration path planning. Figure 1 shows the pipeline of our proposed method. In this article, an open-source SLAM 44 has been used to provide an occupied grid map, robot positioning, and the  uncertainty estimation of the robot's pose. In Figure 1(a), the local grid map and sensor data are used to update the information entropy map incrementally. Changes in the grid map will be updated synchronously to the information entropy map. The steps for generating the candidate paths are as shown in Figure 1(b). First, the boundary features in the grid map and the information entropy map will be extracted by a convolution operation and a threshold segmentation algorithm. Then, a path generation algorithm based on the extracted boundary features will be used to generate a set of candidate exploration paths. The length and number of these candidate paths are modified by the candidate path correction module to produce a set of candidate exploration paths that cover the unexplored area. In Figure 1(c), the candidate paths obtained from Figure 1(b) are evaluated by the proposed comprehensive path selection strategy, and finally, an optimal exploration path is obtained. We repeat the above process until the information entropy of all the grids in the information entropy map is reduced to a sufficiently low threshold.

Information entropy map
We construct a grid information entropy map form the occupied grid map and the sensor data. The entropy map is used to represent the perception of the environment. The occupied grid map can only give a state of each grid its occupied or idle state, and it is susceptible to noise as the state of the grid changes too fast with the observed data, which has a significant impact on the path planning processing. A continuous information entropy map is created and updated synchronously with the SLAM process to solve the issue. The entropy of a grid is gradually and smoothly updated as the observation progresses, which reflects the average state of the observations, and thus, the grid information entropy map is less sensitive to noise. Information entropy is a quantitative measure of information. For a discrete random variable X with possible values x 1 ; x 2 ; :::; x n , and probability mass function, the information entropy of the random variable X is defined aŝ For each grid, its information entropy is calculated and continuously updated as the observation progresses. There are only two states in each grid, that is, idle or occupied, so the information entropy in this article is defined aŝ where Pðc i Þ refers to the probability that the grid cell c i is occupied. The information entropy map is continuously updated with the smoothed entropy value using equation (3) where H t ðc i Þ is the entropy of the grid cell c i in the grid information entropy map at time step t andĤ t ðc i Þ is the estimated entropy value for cell c i , H tþ1 ðc i Þ is the updated entropy for the grid cell c i . k is an updated coefficient that determines the update weights of the actual entropy and the observations.

Candidate exploration path generation
The active SLAM is mainly concerned with how to use local observation information to plan the exploration path, and simultaneously locate itself and establish a complete environment map with or without a prior environmental map. In this section, we will first introduce the candidate path generation method based on the local observation information, and then we will give the final optimal exploration selection strategy in the next section.

Boundary feature extraction
After obtaining data from the sensor, we update the probability estimations in the occupied grid map I g and the related information entropy map I e . The maps are shown in Figure 2(a) and (b), respectively. We obtain candidate exploration paths based on two kinds of boundary features. The entropy map boundary feature B e in this article refers to the grids in the high entropy region are adjacent to the low entropy region. The entropy grid map boundary feature B g is the grids in the free area and adjacent to the occupied grids in the grid map. It should be noted that the grid map here is obtained from GMapping 44 and has been inflated. The boundary features can be extracted from the information entropy map I g or the inflated grid map I e , respectively. The boundary feature is shown in Figure 2(c). It is a bit like frontier but different. Firstly, the source of boundary features is different. The boundary features come from the information entropy map and the occupied grid map. Secondly, the use of features is different. The boundary features are not used to find an exploring goal, but to plan the candidate path for exploration. Unlike frontier-based methods, our approach can plan the path back to the previous area to limit the uncertainty of the robot's pose.
We first select an appropriate partition threshold to divide the information entropy map into high information entropy areas and low information entropy areas. A convolution kernel M ¼ will be used to convolve the map I e and get the convolution map I ec . Similarly, we can also get the map I gc from the grid map convolution. Then the boundary feature B e and B g are extracted through the following formula B e ¼ fX jI ec ðX Þ < n 2 ; I e ðX Þ > 0; I g ðX Þ 6 ¼ 1g where n is the dimension of the convolution kernel M, X is the coordinate on the grid. The frontier-based method moves toward to the frontier to explore, and the proposed method is to try to explore along with the proposed boundary feature. Different from the classic frontier concept, we have a boundary feature that is not available in frontier-based methods, that is, the boundary feature extracted from the grid map B g . These two kinds of boundary features allow us to not only explore the unknown region but also return to the previous area to relocate or improve the quality of the existed map.
Different direction selection strategies result in significant efficiency differences. The proposed method tends to plan a path that tries to surround the unexplored area, rather than directly go toward the unexplored areas and fragment it. Hence, we have fewer repetitive observations to improve coverage and keep a higher exploration efficiency. Simultaneously, we consider the optimal distance of observation and the robot's positioning uncertainty in path planning.
dpi is an abbreviation for dots per inch, which is a measure of sensor scanner dot density. For multiline laser sensors, the scanned laser beams are not necessarily parallel but always arranged at a certain angle q.
We define an analogous parameter S dpi to reflect the scanner density in equation (5) where q is the angle between the two scan beams. D is the distance between the object and the laser sensor. It is shown in Figure 3. It should be declared that the observation of the sensor is not all effective. Here the effective observation radius R e is defined as where x is the sensor point in the robot base coordinate system, x 0 is the origin of the coordinate. The closer to the laser sensor, the scanning points are denser, and the farther they will be sparser. Only about half of the area is unexplored when exploring along the boundary, which is shown in Figure 4. The overlapping areas were observed almost twice. It is generally not optimal to use boundary features for candidate path generation. Thus we introduced a parameter a to handle the overlap problem. We use an extern radius R u ¼ aR e to update the information entropy map I e . We found that there is a close relationship between the updated radius of R u and the overlap. The coefficient a can directly adjust the overlap, which in turn affects the efficiency of the exploration.
When the updated radius is twice the effective observations radius, that is, R u ¼ 2R e , half of the updated information entropy map overlaps. The area marked in red in Figure 4 shows the overlapping area between adjacent observations. In the lower part of Figure 4, we can see that the overlap between adjacent observations has disappeared. If we adjust the coefficient a to make that R u ¼ aR e , then the overlap between adjacent observation areas also changes, and the exploration efficiency is correspondingly affected. The relationship between overlapping area ratio R ov and parameter a is defined as equation (7) R When we increase the value of a, the overlapping area ratio R ov will decrease, but the exploration efficiency will increase, and vice versa. Therefore, by selecting the coefficient a, we can balance the efficiency and quality of the exploration.

Candidate path generation
As mentioned above, the exploration along the boundaries of information entropy is very efficient in an unknown environment. We use the Dijkstra algorithm and the constructed graph G to generate paths along the boundaries.
In this article, we use a graph structure to represent the environment, which is similar to J Vallvé's. 40 A graph GðN ; E; W Þ consists of edges and nodes, where N represents nodes, each of which is a grid cell in the grid map, E is the edge between nodes, and W refers to the edge weight.
We treat the current position of the robot on the grid map as the starting node and the grids on the boundary as the ending nodes. Then we use the Dijkstra algorithm to obtain candidate paths. In order to make planned paths along the boundary as much as possible and to actively avoid the collision, we increase the transition cost to nonboundary points and simultaneously reduce the cost to the boundary points in the graph G. This modification makes the path planning algorithm more inclined to select the path along the extracted boundary and make the generated path inherently avoid an obstacle. We adjust the weight of the edge between the node n i and its adjacent node n j where n j 2 N eighborðn i Þ and n i ; n j 2 B e [ B q ; 0 k 1 < k 2 < 1:0. The Dijkstra algorithm is very efficient and suitable for candidate path generation from the extracted boundaries because it only needs to be run once to get all the candidate paths. A case in point P 0 is shown in Figure 5. The thin yellow lines are the original candidate paths that grow along the boundaries as much as possible and have the obstacle avoiding ability. They can pass through the free space as need. So we can see that there are some connections between the different boundaries, which are shown as the yellow lines.

Correction of candidate paths based on uncertainty estimation
Rodriguez-Arevalo et al. 45 reported that the monotonicity of spatial propagation of uncertainty is preserved when the determinant of the covariance matrix is used as criteria in 2-D space. Inspired by their work, we use the dead-reckoning algorithm to estimate the covariance matrix and use the determinant of the covariance matrix as a criterion to quantify the uncertainty of the robot's pose as the robot moves. We constrain the uncertainty of the candidate path by choosing a threshold according to the monotonicity property.
The pose of the coordinate j relative to the coordinate system i can generally assume to be a Gaussian distribution. The estimated pose is a vectorX ij ¼ ðx ij ; y ij ; ij Þ and the associated covariance matrix is S ij . X jk ¼ ðx jk ; y jk ; jk Þ is another pose which is respect to coordinate j. The calculation of X ik from the state X ij and X jk is defined as The covariance matrix S ik can be approximated by Figure 4. The overlapping area between two adjacent observations. By adjusting the coefficient a, we can control the overlap. When a is set to 2.0, the overlapping areas disappear. where the Jacobian of the compounding operation in equation (10) is Let J È ¼ ½J 1È ; J 2È , and J 1È ; J 2È are given by So from equation (10) we can get Carrillo et al. 17 have reported that the monotonicity of the uncertain criteria is preserved under linearized assumptions when using the determinant of the covariance matrix as the uncertain criteria and equation (14) is established.
When the pose of the robot changes from step n À 1 to the next step n, the relative motion can be compounded with the relative pose ðnÀ1Þ x n *ðd x ; d y ; d Þ T . d x ; d y ; d is the change in distance and steering from step n À 1 to n. The position of the robot concerning the odometry frame is We assume that the distribution of ðnÀ1Þ x n is a zero-mean Gaussian with the covariance matrix V n and the associated variance for every step is defined as where ðnÞ d d is the distance traveled at step n. The covariance matrix V n reflects that the uncertainty increases as the distance increases and the angle changed in heading increases. We use GMapping to build a grid map and provide the robot's location. The initial covariance matrix S 0 is obtained by the current particle distribution in the GMapping. The current covariance matrix can be updated by the last estimation S nÀ1 and the new V n The lth of candidate exploration paths is composed of m road-mark points P l ¼ fp 1 ; p 2 ; . . . ; p m g and d d ¼ k p m À p mÀ1 k; d ¼ arctanð y p m À y p mÀ1 x p m À x p mÀ1 Þ. We use equation (16) and equation (17) to estimate the uncertainty S l as the robot moves along the lth candidate path By evaluating the uncertainty of the lth candidate path, a subpath P 0 l ¼ fp 1 ; p 2 ; . . . ; p m Ã g; 1 m Ã m is generated from the path P l according to equation (18). The robot explores the scene along the subpath P 0 l , the uncertainty estimate S m Ã of the robot's location does not exceed the threshold S max . That is Equation (19) means that if the uncertainty constraint corrects the candidate path, the uncertainty of the robot's location is guaranteed not to exceed S max .

Information gain (IG) metrics for evaluation
We use information gain as metrics to evaluate each candidate path. The information gain in this article is measured in the number of grids which are covered by a candidate path on the information entropy map I e . The amount of information gain that can be obtained by exploring along a path is an essential consideration in evaluating candidate paths.
Because we maintain a map of information entropy synchronously with the update of the occupied map, the calculation of the information entropy gain becomes very straightforward. For a certain path P ¼ fp 1 ; p 2 ; :::; p k g, the information entropy gain E g along the path is defined as where HðcÞ is the information entropy of a grid cell c 2 R 2 which is in the region of radius R e around the road-mark point p i . H 0 ðcÞ indicates the information entropy of this area updated.

Reexplore metric for evaluation
When the uncertainty of the robot positioning increases to a critical value, continuing to explore along the path of high entropy may result in the loss of positioning. Exploring alone candidate paths that are in the previously explored area will lead to a meager information entropy gain, but reexploring along these paths can improve the accuracy of the map and reduce the uncertainty of the robot's location Here we assume that the updated information entropy is the same as the predetermined entropy H 0 to calculate a virtual information entropy gain. HðcÞ is the information entropy of the grid cell c, and E r is the obtained virtual information entropy gain.

Comprehensive evaluation and selection algorithm
The exploration path planning method proposed in this article is listed in Algorithm 1. The algorithm uses a grid map I g and an information entropy map I e as its input. The grid map used in Algorithm 1 is generated from the GMapping, and the information entropy map is gradually updated as the exploration progresses. The entire exploration process can be roughly divided into three steps.
First of all, the information entropy map is initialized as the same size as the grid map and expand as the grid map. We use the convolution kernel described in the fourth section to convolve the information entropy map I e and grid map I g , and then we get the boundary B e and B g respectively according to equation (4).
Then we build a graph G from the grid map I g . The weight of the edges connected to nodes at the boundary will be reduced. The Dijkstra algorithm is applied to generate the candidate paths P GCP from the robot position to every grid lying on the boundary. After getting these candidate paths, we first use the uncertainty prediction method in the fourth section to correct the candidate paths. After the above processing, if no candidate path is generated, We will use function PathWithMaxReExpCovarage() to implement the method to select a path from the candidate path P GCP .
Finally, we first select the path with the highest information entropy gain from these paths. If the path does not exist, this indicates that we have explored all the areas, or according to the uncertainty constraints. If we continue to explore the unknown area, we will lose the location when a decrease in the average information entropy within the specified E min , the entire exploration process is completed.

Simulations and experiments
We compared the proposed algorithm with two other methods 11,29 in the simulation. We also verified our algorithm's adaptability and efficiency in three real-world experiments.

Evaluation in synthetic scenes
We use ROS-Stage package 47 and three public grid maps to set up the simulation environment. The robot used in the simulation is equipped with an odometric sensor with noise covariance V n and a single-line laser with a maximum detection range of 15 m and a field of view of 190 degrees, and its maximum movement speed is set to 0.25 m/s. The initial uncertainty of the robot pose estimate is set to S 0 . All methods are evaluated in the same simulation environment. The first exploration approach is an active SLAM exploration method that trains a GP to predict the maximum information gain under control and use Bayesian optimization to get the best exploration target. 29 Another exploration method we compared with is the classic frontier-based approach. 11 Figure 6 shows the generated map in the simulation and the recorded exploration trajectory. Figure 7 shows the information entropy changes with exploration. Table 1 represents all statistical results. It gives the total reduction of the Entropy, the final exploration Distance, and the entropy reduced nats per meter (E r ), the standard deviation of the entropy reducing rate Std(E r ), and the total area covered during the exploration process.
We performed experiments in the same simulation environment. When the robot moves forward 10 cm, we calculate and save the information entropy of the map, the pose of the robot, the covariance matrix E of the location, and the simulation time. We use the information entropy of the map over the traveled distance to evaluate the performance of each algorithm. In the beginning, the three methods have a similar exploration efficiency. We can see that the decline rate of information entropy is very close to Figure 7. As the exploration progresses, the unexplored area using the comparative methods is broken into pieces, and as a result of the efficiency of the exploration using other methods 11,29 has dropped a lot. This can be seen from different experiments is shown in Figure 7(a) to (c). As the fragmentation of the unexplored area is aggravated, the maximum information gain under control is becoming harder to predict by using Bayesian optimization. 29 This leads to a significant decline in the efficiency of exploration. When the unexplored area is broken into pieces, the robot using the classic frontier-based method wanders in some small but far apart frontier-fragments. This also leads to the same decline in the efficiency of exploration, especially in the final stage. From Figure 7, the exploration efficiency of the methods 11,29 drops more significantly as the complexity of the environment increases.  Bold face value indicates that the proposed method is better or has a greater improvement than the other two methods.
The proposed method is to explore along the boundary instead of going to the border to explore. Because the boundary-based exploration method avoids the fragmentation of the unexplored area, the efficiency of the exploration can be very and efficient constant. Table 1 shows that the average decline rate of E r in environmental information entropy is higher compared to the others. The standard deviation of the rate Std(E r ) is smaller than the others. Table 1  Under the same conditions, we conduct comparative experiments of the proposed method with the classical frontier-based approach 11 and the Bayesian optimizationbased approach. 29 Figure 8 provides a comparison plot of information entropy gain over the simulation step in three simulations, respectively. The blue circle indicates the end of the exploration. As the exploration progresses, the frontierbased exploration strategy intensifies the fragmentation of unexplored areas and has a significant impact on the efficiency of exploration. As a result, we can see that the computational speed of the method 11 is the lowest in the three simulations. The method 29 is a Bayesian optimization-based method. At each step, it needs to solve a Bayesian optimization problem to find the exploration target. The experimental results show that the proposed method has higher computational efficiency than other methods.

Evaluation in real scene
We also verify our proposed method in real scenes. The robot used in the experiment is a kobuki robot, which is equipped with a Velodyne VLP16 multiline lidar, an RDB-D camera, and an odometer. It is shown in Figure 9. The laser sensor scans the surrounding environment at a rate of 10 Hz per second. The odometer module collects information at a rate of 25 Hz per second. The driver and control system software is developed using Cþþ language on a Linux system with an i7 4-core CPU and 8 GB RAM. The grid map was built using the modified GMapping package under ROS. The algorithm for updating the information entropy map, extracting the boundary, and planning the selection of the exploration path is listed in Algorithm 1. Figure 10 shows the exploration trajectory, and the generated 3-D point cloud map in the three different real scenes. In the experiment of Figure 10(a) and (b), we set a ¼ 1:5, R e ¼ 0:75 m, and the resolution of the grid map is 0.05 m/ grid. In the experiment shown in Figure 10(c), we set a different value of a ¼ 1:0. Compared to Figure 10(a) and (b), the point cloud generated in Figure 10(c) is denser. Because we chose the smaller parameter a ¼ 1:0, which makes more overlap between adjacent observations, and the equivalent S dpi is higher than average, so we can get more scan points.
Since the proposed method is based on the path planning method, it is possible to dynamically adjust the exploration trajectory according to changes in an environment. For a dynamic object, the exploration path does not change as long as it moves outside the safe area of the robot. The exploration algorithm is triggered to replan the exploration path only when a dynamic object enters the safe area of the robot. When the dynamic object is removed, the area where the previous dynamic object located will also be considered again in the future exploration path. In Figure 10(e) and (f), we can see that there are many pedestrians in the point cloud being built, but from the exploration trajectory in the above picture, we can hardly see the impact of these pedestrians. Figure 11 shows the information entropy gain of the map over the traveled distance recorded at a specific distance interval during the exploration process. Table 2 lists the experiment results. The proposed method has a relatively stable rate of information entropy reduction in different scenarios.
We also study the effects of uncertainty constraints on the robot's exploration. From Figure 12, we can see that after adding the uncertainty constraint, the uncertainty of the localization of the robot is limited to a specific range, which significantly improves the adaptability of the algorithm to the environment.

Conclusion
In this article, we address the exploration path planning for a robot to achieve SLAM in an unknown environment. We proposed an exploration path planning method, which is based on boundary features and uncertainty estimations.   The proposed path planning method tries to generate candidate paths along the boundaries. It avoids breaking the unexplored region into pieces and can be adjusted by a to achieve a higher exploration rate or denser mapping. We use dead reckoning to estimate the uncertainty of the robot's localization along each candidate path and limit the uncertainty within a given threshold. The information entropy gain and the uncertainty estimation are simultaneously considered to trading off exploration against exploitation. Then, a path selection strategy is used to generate the optimal exploration path from these candidate paths. Three synthetic scenes and three real scenes with active SLAM tasks are considered in the simulations and experiments. The results show that the proposed method has a better performance compared to two classic methods. In our further work, we will perform more real-world experiments, and verify the ability of the proposed approach in an outdoor environment. We will study the ways for multiple robots to share perceptual information and study the mechanism of multi-robot cooperative exploration and then extend the proposed method to multiple robots to improve the overall exploration efficiency.

Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.

Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported in part by the National Natural Science