Next Article in Journal
Experimental and Numerical Resistance Analysis for a Cruise Ship W/O Fin Stabilizers
Next Article in Special Issue
Robust Optimization Design for Path Planning of Bionic Robotic Fish in the Presence of Ocean Currents
Previous Article in Journal
Effects of Tsunami Shelters in Pandeglang, Banten, Indonesia, Based on Agent-Based Modelling: A Case Study of the 2018 Anak Krakatoa Volcanic Tsunami
Previous Article in Special Issue
Research on AUV Energy Saving 3D Path Planning with Mobility Constraints
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Occupancy Grid-Based AUV SLAM Method with Forward-Looking Sonar

1
Science and Technology on Underwater Vehicle Technology Laboratory, Harbin Engineering University, Harbin 150001, China
2
Qingdao Innovation and Development Center, Harbin Engineering University, Qingdao 266000, China
*
Author to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2022, 10(8), 1056; https://0-doi-org.brum.beds.ac.uk/10.3390/jmse10081056
Submission received: 20 June 2022 / Revised: 21 July 2022 / Accepted: 27 July 2022 / Published: 31 July 2022

Abstract

:
Simultaneous localization and mapping (SLAM) is an active localization method for Autonomous Underwater Vehicle (AUV), and it can mainly be used in unknown and complex areas such as coastal water, harbors, and wharfs. This paper presents a practical occupancy grid-based method based on forward-looking sonar for AUV. The algorithm uses an extended Kalman filter (EKF) to estimate the AUV motion states. First, the SLAM method fuses the data coming from the navigation sensors to predict the motion states. Subsequently, a novel particle swarm optimization genetic algorithm (PSO-GA) scan matching method is employed for matching the sonar scan data and grid map, and the matching pose would be used to correct the prediction states. Lastly, the estimated motion states and sonar scan data would be used to update the grid map. The experimental results based on the field data have validated that the proposed SLAM algorithm is adaptable to underwater conditions, and accurate enough to use for ocean engineering practical applications.

1. Introduction

Autonomous Underwater Vehicle (AUV) is an essential piece of equipment for ocean exploration, and accurate navigation is crucial for AUV to perform various missions. Achieving precise localization in an unknown and complex environment is challenging for the development of AUV. Simultaneous localization and mapping (SLAM) is an active method for this scenario where it can realize localization while constructing the environment map. Therefore, the research on the SLAM technology of AUV is of great significance for ocean engineering applications.
SLAM needs sensors that can explore the external environment. The sensors used in underwater SLAM mainly include the camera, laser scanner, side-scan sonar, multi-beam sounder, and forward-looking sonar [1,2]. An amount of research has been focused on the above SLAM technology. The underwater camera can obtain a high-definition image, and the accuracy of AUV motion can be estimated through image matching. However, the optical signal is sensitive to the water quality, which leads to the detection range being not long, especially when the water is turbid [3,4]. The laser scanner can obtain high-resolution point cloud data. The point cloud data can accurately describe the contour information of the environment. A large amount of data leads to a high computational complexity when applied to a large-scale map. Therefore, the SLAM using a laser scanner is suitable for small scenes [5,6]. The side-scan sonar transmits sound waves to the seafloor and receives the echo. According to the wave intensity, the side-scan sonar can obtain seafloor geomorphic features. Because of the principle of side-scan sonar, it needs to move forward continuously to obtain the geomorphic image. Therefore, SLAM can only be realized by planning the path that can repeatedly observe the target [7,8]. The working model of the multi-beam sounder is similar to that of the side-scan sonar. It can obtain the terrain information when the AUV is moving forward. Similarly, SLAM can only be achieved by planning the path of the repeated course [9,10]. Forward-looking sonar transmits sound waves and estimates the front environment information according to the echo intensity. The forward-looking sonar can get a relatively low resolution but continuous target information during the cursing state of the AUV, so it is suitable for the SLAM navigation system in a complex environment [11,12,13].
Map construction is one of the core functions of SLAM. To realize mapping based on the environment sensor, a proper description of the environment is needed. The main presentation includes a feature map, a topology map, and a grid map [14,15]. Among them, The description of the feature map is the most intuitive, and it can better describe the appearance information of the observed features [16,17]. However, both point features and line features are more dependent on the sensor’s accuracy, and the measurement noise of the sensor itself will also seriously interfere with the feature extraction effect. The designed SLAM navigation system obtains environmental information through the forward-looking sonar. Due to the low signal-to-noise ratio of the sonar image, the error of the feedback distance and angle information is relatively large, and the SLAM based on the feature map performs poorly in a complex underwater environment. A topology map is another way to abstract the representation of the environment. The method uses nodes to represent environmental information collected by sensors and record the relationships between different nodes, including the relative position, orientation, overlap, and inclusion [18,19]. How to convert environmental information into nodes is the main problem in the topology map, especially in the complex underwater scenario.
By dividing the territory into small grids, the grid map can construct a rough map [20]. As each grid represents whether there is a target in this region, this method can work appropriately with a relatively low accuracy sensor. Especially for point features, raster images occupy fewer system resources. Since the grid composition method divides the environmental map into small grids of each region, the requirements for the accuracy of environmental sensors are relatively low, so it is suitable for sensing using sensors such as forward-looking sonar. Compared to the feature map, this method could perform well with insufficient storage space and is convenient for future AUV path planning [21]. Therefore, it is suitable for underwater map construction.
The main grid map-based SLAM methods include Gmapping, Hector SLAM, Cartographer, etc. [22,23]. Despite many successful applications of the above SLAM methods, they are still not suitable for AUV navigation. Gmapping is based on a particle filter, which needs more computing resources in large scenarios [24,25,26]. Hector SLAM only employs sensing data and does not rely on other sensors. Therefore, it is unsuitable for the AUV SLAM system [27,28]. Like the Hector SLAM, the Cartographer uses sensing data to correct the AUV motion. Accuracy sensing is required, but the other sensors of the AUV navigation system cannot be fully utilized [29,30,31].
In this paper, a computationally inexpensive and practical AUV SLAM navigation method is studied. The occupied grid map is employed to describe the environment based on the data from the forward-looking sonar. The algorithm employs a Kalman filter for state estimation. The sonar scan data is used to build a grid scan map and extracts a local submap from the environment map according to the area of the grid map. The grid scan map and the local submap are matched by the particle swarm optimization genetic algorithm (PSO-GA). The matched pose is selected as the observation of the filter to correct the navigation information. The experimental results based on AUV actual field data verified the effectiveness of the proposed SLAM method. The remainder of this paper is organized as follows: Section 2 introduces the fundamental of the studied SLAM system, including the AUV platform and the occupancy grid map. The details of the proposed algorithm are presented in Section 3. The experimental results based on AUV field data are analyzed in Section 4. Finally, Section 5 summarizes the principal conclusion of this work.

2. Fundamental of the Studied SLAM System

2.1. Platform Introduction

The structure of the experiment platform is shown in Figure 1. The sensors and devices of the navigation system include a global position system (GPS), Doppler velocity log (DVL), inertial measurement unit (IMU), and depth meter (DM). Figure 2 is the deployment scenario of the experiment platform. Due to the advantages of forward-looking sonar in a complex environment, the SLAM system uses a head-mounted forward-looking sonar for environment sensing.
The GPS equipment includes the antenna and receiver. The antenna is on the top of AUV and can receive the satellite signals when the AUV floats on the surface. Then, the GPS receiver would calculate the position information according to the satellite signals. As the GPS position has no accumulation errors, the GPS information usually can be trusted when the AUV is on the surface.
The DVL is mounted at the bottom of the AUV. It can transmit short sound information, and the DVL can obtain the vehicle velocity information according to the Doppler shift. The velocity of DVL is relatively accurate, but it is easy to be interfered with by the surrounding environment.
The IMU is mounted in the middle of the vehicle. It contains three gyroscopes and accelerometer. According to the raw angular speed and accelerometer, the IMU can integrate precise attitude angle and yaw information of AUV. However, the accuracy of IMU will diverge with time.
The DM is a water pressure sensor. According to properties such as density and pressure value of seawater, it can obtain an accurate absolute depth. Consequently, the SLAM can be converted into a two-dimensional (2D) situation, and the following content is the 2D position estimation and map construction.

2.2. Occupancy Grid Map

As the underwater SLAM can be regarded as the position and mapping in the 2D horizontal plane, the map used by the SLAM system studied in this paper is a 2D occupancy grid map, which is divided into a finite number of units according to the scale. The occupancy grid map is expressed in Equation (1).
M = { m i }
where m i represents the grid map with index i. The probability of occupation is expressed as P ( m i ) . Since the occupation only includes whether grid cell is occupied or not, the probability of occupation is as follows.
p ( m i = 0 ) + p ( m i = 1 ) = 1
The posterior probability represents the occupancy probability in the SLAM algorithm, as shown in Equation (3).
p ( m i | Z i : t , X i : t )
where Z represents the observation and X represents the vehicle state. The map is constructed as the occupancy probability of each grid cell, which is represented by binary Bayes. This method is expressed as the odds ratio of the occurrence and non-occurrence probability. As Equation (4) shows:
p m i = 1 p m i = 0 = p m i = 1 1 p m i = 1
During the process of SLAM, the posterior probability of the occupancy grid is constantly updated by the measurement, and the value of probability is always between [0, 1]. Therefore, the logarithm is introduced in the process of probability update, and the expression of the logarithm probability is as follows:
l t , i = log p m i Z i : t , X i : t 1 p m i Z i : t , X i : t
The logarithmic probability of each grid cell is shown in Equation (6).
l t , i = l t 1 , i + inverse _ sensor _ model m i , X t , Z t l 0
where l t , i represents the logarithmic probability of grid cell i at time t, and l 0 is the initial value of the logarithmic probability. The inverse_sensor_model also uses logarithmic form and is expressed as follows:
inverse _ sensor _ model m i , X t , Z t = log p m i X t , Z t 1 p m i X t , Z t
The Bresenham algorithm is used to judge whether the grid cell is occupied. Figure 3 shows an example of the inverse measurement model. The gray grid cell indicates that this cell is not detected, the black grid suggests that this cell is detected, and the white grid indicates no target area.
The logarithmic probability of each cell can be updated according to Equations (6) and (7), and then converted into the occupancy probability. The conversion function is shown in Equation (8).
p m i Z i : t , X i : t = 1 1 1 + exp l t , i
The occupancy grid map represents the probability of the existence of targets in the cell. In the SLAM process, the probability needs to be binarized, and the cells with high possibility are considered the occupied cell, while the remaining cells are not occupied.

3. Occupancy Grid-Based AUV SLAM Method

This paper proposed an occupancy grid-based SLAM algorithm for AUV. Figure 4 shows the flow chart of the proposed method. This method employs an extended Kalman filter (EKF) to estimate the AUV state. According to the occupancy grid map method described in the previous section, the system first initializes the pose and map. As the data frequency of multi-beam forward-looking sonar is lower than that of other navigation sensors, the state and covariance of the system are predicted by the time update process of EKF. When the sonar data are updated, the feature points in the sonar data are extracted to map the detected feature into a scanning grid map, and the sub-map is extracted in the detected target area from the whole grid map. The scanning grid map and sub-map realize the pose estimation of AUV by the matching method, and the estimated AUV pose is used as the measurement to update the system state and covariance. Finally, the system transforms the sonar data into the navigation coordinate system according to the estimated pose.

3.1. Time Update Process

The dead reckoning algorithm is used to predict the state of the AUV system status. The orientation of IMU and velocity of DVL in the horizontal plane are employed for state estimation. In this study, the system state can be represented by the horizontal position and orientation. Equation (9) is the kinematics equation used for the time update.
X k + 1 = f X k , U k x y ψ k + 1 = x + u cos ψ I t v sin ψ I t y + u sin ψ I t + v cos ψ I t ψ I k
The system state of AUV is X = [ x , y , ψ ] T in the “north-east” navigation coordinate system, where x and y represent the vehicle location on the north and east axes, respectively, and ψ is the orientation angle of the AUV, zero degrees to the north and positive clockwise. The control input is U = [ u , v , ψ I ] T , where u and v respectively represent the forward and lateral velocity of the DVL in the airborne coordinate system. ψ I is the orientation angle from IMU. t is the time interval of the time update. Since the time update includes the system state and control input, the Jacobian matrix should be calculated. Equations (10) and (11) are the Jacobian matrix of the system state and control input, respectively.
F X = 1 0 0 0 1 0 0 0 0
F U = cos ψ I t sin ψ I t u sin ψ I t v cos ψ I t sin ψ I t cos ψ I t u cos ψ I t v sin ψ I t 0 0 1
The system state covariance can be calculated by Equation (12).
P k + 1 k = F X P k F X T + F U Q F U T

3.2. Sonar and Map Data Processing

The data of the sonar and map need to be processed before being used to optimize the AUV state. The processing process is as follows. As sonar data are noisy, effective features should be extracted. The forward-looking sonar can obtain the echo intensity from different beams. The intensity of the echo reflects the possibility of the target within the detection range. As the closer-range data are more reliable than the further data, the first point of each beam greater than the threshold is the feature point. The features extraction effect of sonar data is shown in Figure 5.
The sonar data are based on the airborne coordinate system, which needs to be converted to the navigation coordinate system. The rotation and translation formula is depicted in Equation (13).
T w x T w y = cos ( ψ ) sin ( ψ ) sin ( ψ ) cos ( ψ ) T s x T s y + x y
where T w x and T w y are the positions of feature points in the navigation coordinate system, and T s x and T s y are the positions in the sonar airborne coordinate system. The sonar scanning grid map is constructed according to the specific position of sonar feature points. The scope of each scan grid map constructed is much smaller than the overall map constructed by the SLAM system. The matching between the scanning map and the entire map would cost much unnecessary calculation. Therefore, an appropriate sub-map from the whole map should be extracted to improve the efficiency of the SLAM execution. The sub-map is selected by the distribution area of feature points from the scan data. Local submap by probability values are binarized to indicate whether grid cells are occupied or not.

3.3. Grid Map Matching Method

Due to the error in the AUV state estimation during the time update process, the scanning grid map is deviated from the local submap. The purpose of map matching is to find an appropriate rotation and translation from the scanning grid map to the local map. The exhaustion Method can solve this problem. However, to obtain an exact optimal solution, a large number of solutions needs to be set up in advance. Considering the calculation time and accuracy, it is difficult to obtain an accurate pose by the exhaustive method. At present, the branch and bound method is a general grid map matching algorithm, which has been successfully applied to land robots. Nevertheless, the measurement accuracy of sonar is much lower than that of sensors on land, and the branch-and-bound method can easily fall into optimal local values and results in the SLAM failure. Therefore, a global optimization strategy should be used for grid map matching of sonar data. The genetic algorithm is one of the global optimization methods [32,33]. According to the competition mechanism between target groups, the individuals far away from the optimal solution would be eliminated, and crossover and mutation operations are carried out among the remaining populations. After the above iterative process, the most suitable individuals are selected as the optimal solution. Although the genetic algorithm can quickly converge the pose in the initial process, it is difficult to approach the optimal pose of AUV only through its mutation mechanism. To solve this question, particle swarm optimization (PSO) [34,35,36] was introduced into the mutation process of the genetic algorithm (GA). The flow chart of the developed PSO-GA is shown in Figure 6.
The population of the GA is initialized first. The gene of each individual includes the horizontal position and orientation X i = [ x i , y i , ψ i ] T , where i represents the index of the individual. The fitness function of the GA indicates the difference between the the scanning grid map generated by the individual and the local submap. The smaller the difference, the higher the fitness of the individual.
Half of the individuals with low fitness are abandoned during the iterative process, and the other would be selected for gene crossover. Each individual contains only three genes, and a new generation of the population is generated using a single point crossover operator.
Based on the new generation of the population, due to the randomness of the PSO, the fitness of some individuals will be improved, and these individuals will be selected as the variable individuals, while the rest of the individuals remain in the state before being optimized by the PSO. The new generation population optimized by the PSO continues to iterate until the optimal solution is found. Figure 7 shows the effect of grid map matching using the proposed PSO-GA algorithm.

3.4. Measurement Update Process

The map matching between the grid map and the local sub-map can find an appropriate AUV state, and the state is the observation in the measurement update process of the EKF. The expression of the observation is as follows:
Z = x y ψ T
Since the observation vector has a linear relationship with the system state, the observation model is linear, which is as follows:
H = I 3 × 3
After the measurement update process, the EKF estimation would be used to transform the feature points to the navigation coordinate system and update the probability value of the grid map according to Equations (6) and (8). The updated grid map is used for the next map matching.

4. Experimental Result and Analysis

To verify the validity of the occupancy grid-based SLAM algorithm, experiments based on AUV field data were carried out. The field data were collected near Tuandao Bay wharf in Qingdao. Figure 8 shows the sea trail environment, including walls, bridge holes, rocks, and barges. The AUV moved clockwise on the water surface in the harbor, and the GPS position was used as the ground truth to evaluate the performance of different methods. The distribution of feature points collected by the forward-looking sonar is shown in Figure 9. The red lines in the figure are GPS trajectories, and the blue points are the feature points.
The experimental analysis included the performance of the proposed SLAM framework in different grid map matching methods, and under EKF and UKF.

4.1. Experimental Results and Analysis under Different Grid Map Matching Methods

In this section, the exhaustive method, GA, and the developed PSO-GA for grid map matching are examined. Figure 10 shows the AUV trajectories optimized by different matching methods. The black lines are the ground truth, red lines are the dead reckoning trajectory, blue lines are the SLAM trajectory based on the exhaustive method, green lines are the SLAM trajectory based on the developed GA, and purple lines are the SLAM trajectory based on the developed PSO-GA.
In Figure 10, the position deviation of DR would increase faster without the SLAM algorithm. The abscissa represents the number of software runs, with a step size of 100 ms. Since the exhaustive method can approximately modify the AUV state, the position error accumulation can be limited to a certain extent. The exhaustive method cannot achieve the optimal matching, so there still exists a large error in the trajectory. The developed PSO-GA can ensure that the matching effect approximates the optimal solution, so as to obtain a better AUV trajectory.
Figure 11 shows the positioning errors by different algorithms, where the red lines are the error of dead reckoning, blue lines are the SLAM localization error based on the exhaustive method, green lines are the position error of SLAM based on the GA, and purple lines are the position error of SLAM based on the PSO-GA. The error results show that the developed PSO-GA can effectively reduce the positioning error. Table 1 shows the root mean squared error (RMSE) of the position under different algorithms.
Figure 12 shows the probability grid map constructed by the SLAM algorithm based on PSO-GA. The probability of each grid is expressed as the gray value. By comparing the grid map and the feature points, it can be seen that the SLAM algorithm could effectively construct the map of the wall and bridge holes that the AUV passed. The underwater rocks are ignored in map construction because they do not affect AUV motion. Due to the waterline of barges being shallow, the composition of the barges is poor.

4.2. Experimental Results and Analysis under Different Filters

The SLAM algorithm proposed in this paper is based on EKF for state estimation. As the EKF algorithm ignores the higher-order terms when calculating the Jacobian matrix, which leads to model error in the filter system, the unscented Kalman filter (UKF) was introduced to solve the problem. In this section, the UKF and the EKF SLAM algorithm are employed. The experimental results are shown in Figure 13, where black lines are the ground truth, red lines are the SLAM position estimated by EKF, and blue lines are that of UKF. According to the experimental results, the performance of SLAM under the two filters was almost the same. Although the UKF is more suitable for nonlinear systems than EKF, the nonlinearity of the proposed SLAM is weak, and the UKF has no significant improvement in this work. Considering the limitation of computational resources, the proposed EKF filter-based SLAM algorithm can meet practical applications. Figure 14 shows the localization errors of the two filters. The red lines are SLAM using EKF, and the blue lines are the errors of UKF. Table 2 shows the RMSE of AUV localization under the two filters.

5. Conclusions

This paper proposed an occupancy grid-based SLAM algorithm for AUV. Each sonar scan is processed as a scanning grid map to match the local map extracted from the whole map. Subsequently, the PSO-GA is used to optimize the map matching process. Then, the position and orientation obtained by the matching method are used to correct the AUV status. Lastly, the modified AUV status transforms the sonar data into the global coordinate and updates the grid map.
To verify the validity of the occupancy grid-based SLAM algorithm, we conducted a sea trial near Tuandao Bay wharf in Qingdao. The experimental results indicate that the proposed SLAM method can effectively improve the accuracy of AUV position and construct an accurate grid map. We expect that the grid map generated by our SLAM algorithm can also be a resource for path planning, obstacle avoidance and other tasks for AUV. The above algorithms were solved on a 2.9 GHz R7-4800H processor that has 16 GB ram and the GPU was NVIDIA GeForce GTX 1650. Matching a picture of sonar scan data took an average of 40 ms.
In the future, we will still focus on the AUV SLAM algorithm, and loop closure detection will be added to improve the AUV SLAM system we proposed. We will study the application of the swarm intelligence algorithm in particle filter SLAM to enhance the accuracy of underwater environment positioning and mapping further.

Author Contributions

Conceptualization, methodology, X.M.; software, validation, and formal analysis, X.M. and G.Y.; writing—original draft preparation, X.M.; writing—review and editing, G.Y. and N.Z.; visualization, C.C.; supervision and funding acquisition, X.M. All authors have read and agreed to the published version of the manuscript.

Funding

This work has been supported by a research fund from the Science and Technology on Underwater Vehicle Technology Laboratory (2021JCJQ-SYSJJ-LB06911), and the Postdoctoral Applied Research Project of Qingdao (79002002/006).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Hidalgo, F.; Bräunl, T. Review of underwater SLAM techniques. In Proceedings of the 2015 6th International Conference on Automation, Robotics and Applications (ICARA), Queenstown, New Zealand, 17–19 February 2015; pp. 306–311. [Google Scholar] [CrossRef]
  2. Jiang, M.; Song, S.; Li, Y.; Jin, W.; Liu, J.; Feng, X. A survey of underwater acoustic SLAM system. In International Conference on Intelligent Robotics and Applications; Springer: Cham, Switzerland, 2019; pp. 159–170. [Google Scholar] [CrossRef]
  3. Gu, C.; Cong, Y.; Sun, G. Environment Driven Underwater Camera-IMU Calibration for Monocular Visual-Inertial SLAM. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 2405–2411. [Google Scholar] [CrossRef]
  4. Jung, J.; Lee, Y.; Kim, D.; Lee, D.; Myung, H.; Choi, H.T. AUV SLAM using forward/downward looking cameras and artificial landmarks. In Proceedings of the 2017 IEEE Underwater Technology (UT), Busan, Korea, 21–24 February 2017; pp. 1–3. [Google Scholar] [CrossRef]
  5. Palomer, A.; Ridao, P.; Ribas, D. Inspection of an underwater structure using point-cloud SLAM with an AUV and a laser scanner. J. Field Robot. 2019, 36, 1333–1344. [Google Scholar] [CrossRef]
  6. Vila, A.P. 3D Underwater SLAM Using Sonar and Laser Sensors. Ph.D. Thesis, Universitat de Girona, Catalonia, Spain, 2018. [Google Scholar] [CrossRef]
  7. Wang, W.; Cheng, B. Augmented EKF based SLAM system with a side scan sonar. In Proceedings of the 2020 12th International Conference on Intelligent Human-Machine Systems and Cybernetics (IHMSC), Hangzhou, China, 22–23 August 2020; Volume 1, pp. 71–74. [Google Scholar] [CrossRef]
  8. Al-Rawi, M.; Galdran, A.; Elmgren, F.; Rodriguez, J.; Bastos, J.; Pinto, M. Landmark detection from sidescan sonar images. In Proceedings of the 2017 IEEE Jordan Conference on Applied Electrical Engineering and Computing Technologies (AEECT), Aqaba, Jordan, 11–13 October 2017; pp. 1–6. [Google Scholar] [CrossRef]
  9. Bore, N.; Torroba, I.; Folkesson, J. Sparse gaussian process slam, storage and filtering for auv multibeam bathymetry. In Proceedings of the 2018 IEEE/OES Autonomous Underwater Vehicle Workshop (AUV), Porto, Portugal, 6–9 November 2018; pp. 1–6. [Google Scholar] [CrossRef] [Green Version]
  10. Teng, M.; Ye, L.; Yuxin, Z.; Yanqing, J.; Qianyi, Z.; Pascoal, A.M. Efficient bathymetric SLAM with invalid loop closure identification. IEEE/ASME Trans. Mechatron. 2020, 26, 2570–2580. [Google Scholar] [CrossRef]
  11. Rahman, S.; Li, A.Q.; Rekleitis, I. Sonar visual inertial slam of underwater structures. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, Australia, 21–25 May 2018; pp. 5190–5196. [Google Scholar] [CrossRef]
  12. Sandøy, S.S.; Matsuda, T.; Maki, T.; Schjølberg, I. Rao-blackwellized particle filter with grid-mapping for AUV SLAM using Forward-Looking Sonar. In Proceedings of the 2018 OCEANS-MTS/IEEE Kobe Techno-Oceans (OTO), Kobe, Japan, 28–31 May 2018; pp. 1–9. [Google Scholar] [CrossRef]
  13. Chen, L.; Yang, A.; Hu, H.; Naeem, W. RBPF-MSIS: Toward rao-blackwellized particle filter SLAM for autonomous underwater vehicle with slow mechanical scanning imaging sonar. IEEE Syst. J. 2019, 14, 3301–3312. [Google Scholar] [CrossRef] [Green Version]
  14. Taheri, H.; Xia, Z.C. SLAM; definition and evolution. Eng. Appl. Artif. Intell. 2021, 97, 104032. [Google Scholar] [CrossRef]
  15. Alamleh, H.; AlQahtani, A.A.S.; Al Smadi, B. Comparative Analysis of Underwater Positioning and Navigation Systems. In Proceedings of the 2021 IEEE 12th Annual Ubiquitous Computing, Electronics Mobile Communication Conference (UEMCON), New York, NY, USA, 1–4 December 2021; pp. 0763–0767. [Google Scholar] [CrossRef]
  16. Jia, S.; Wang, K.; Li, X. Mobile robot simultaneous localization and mapping based on a monocular camera. J. Robot. 2016, 2016, 7630340. [Google Scholar] [CrossRef] [Green Version]
  17. Titov, R.; Motorin, A. Slam Algorithms for Different Map Representations. IOP Conf. Ser. Mater. Sci. Eng. 2022, 1215, 012007. [Google Scholar] [CrossRef]
  18. Wu, C.; Ge, F.; Shang, G.; Wu, L.; Guo, H.; Zhao, M.; Wang, G. Research on SLAM of Large-scale Space Point Cloud Topological Robot. J. Phys. Conf. Ser. 2021, 1748, 022007. [Google Scholar] [CrossRef]
  19. Chen, Y.; Huang, S.; Fitch, R.; Zhao, L.; Yu, H.; Yang, D. On-line 3D active pose-graph SLAM based on key poses using graph topology and sub-maps. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 169–175. [Google Scholar] [CrossRef]
  20. Alsadik, B.; Karam, S. The simultaneous localization and mapping (SLAM)-An overview. Surv. Geospat. Eng. J. 2021, 2, 1–12. [Google Scholar] [CrossRef]
  21. Song, Y.S.; Arshad, M.R. Coverage path planning for underwater pole inspection using an autonomous underwater vehicle. In Proceedings of the 2016 IEEE International Conference on Automatic Control and Intelligent Systems (I2CACIS), Selangor, Malaysia, 22–22 October 2016; pp. 230–235. [Google Scholar] [CrossRef]
  22. Lombard, C.D.; van Daalen, C.E. Stochastic triangular mesh mapping: A terrain mapping technique for autonomous mobile robots. Robot. Auton. Syst. 2020, 127, 103449. [Google Scholar] [CrossRef] [Green Version]
  23. Aitken, J.M.; Evans, M.H.; Worley, R.; Edwards, S.; Zhang, R.; Dodd, T.; Mihaylova, L.; Anderson, S.R. Simultaneous localization and mapping for inspection robots in water and sewer pipe networks: A review. IEEE Access 2021, 9, 140173–140798. [Google Scholar] [CrossRef]
  24. Grisettiyz, G.; Stachniss, C.; Burgard, W. Improving grid-based slam with rao-blackwellized particle filters by adaptive proposals and selective resampling. In Proceedings of the Proceedings of the 2005 IEEE international conference on robotics and automation, Barcelona, Spain, 18–22 April 2005; pp. 2432–2437. [Google Scholar] [CrossRef]
  25. Teame, W.G.; Zhongmin, W.; Yu, Y. Optimization of SLAM gmapping based on simulation. Int. J. Eng. Res. Technol. 2020, 9, 74–81. [Google Scholar] [CrossRef]
  26. Cheng, C.; Wang, C.; Yang, D.; Liu, W.; Zhang, F. Underwater SLAM Based on Forward-Looking Sonar. In International Conference on Cognitive Systems and Signal Processing; Sun, F., Liu, H., Fang, B., Eds.; Springer: Singapore, 2021; pp. 584–593. [Google Scholar] [CrossRef]
  27. Kohlbrecher, S.; Von Stryk, O.; Meyer, J.; Klingauf, U. A flexible and scalable SLAM system with full 3D motion estimation. In Proceedings of the 2011 IEEE international symposium on safety, security, and rescue robotics, Kyoto, Japan, 1–5 November 2011; pp. 155–160. [Google Scholar] [CrossRef] [Green Version]
  28. Olalekan, A.F.; Sagor, J.A.; Hasan, M.H.; Oluwatobi, A.S. Comparison of Two SLAM Algorithms Provided by ROS (Robot Operating System). In Proceedings of the 2021 2nd International Conference for Emerging Technology (INCET), Belagavi, India, 21–23 May 2021; pp. 1–5. [Google Scholar] [CrossRef]
  29. Hess, W.; Kohler, D.; Rapp, H.; Andor, D. Real-time loop closure in 2D LIDAR SLAM. In Proceedings of the 2016 IEEE international conference on robotics and automation (ICRA), Stockholm, Sweden, 16–21 May 2016; pp. 1271–1278. [Google Scholar] [CrossRef]
  30. Xu, B.; Liu, Z.; Fu, Y.; Zhang, C. Research of cartographer laser SLAM algorithm. In LIDAR Imaging Detection and Target Recognition 2017; SPIE: Bellingham, WA, USA, 2017; Volume 10605, pp. 49–57. [Google Scholar] [CrossRef]
  31. Dwijotomo, A.; Abdul Rahman, M.A.; Mohammed Ariff, M.H.; Zamzuri, H.; Wan Azree, W.M.H. Cartographer slam method for optimization with an adaptive multi-distance scan scheduler. Appl. Sci. 2020, 10, 347. [Google Scholar] [CrossRef] [Green Version]
  32. Katoch, S.; Chauhan, S.S.; Kumar, V. A review on genetic algorithm: Past, present, and future. Multimed. Tools Appl. 2021, 80, 8091–8126. [Google Scholar] [CrossRef] [PubMed]
  33. Wang, R.; Hao, K.; Chen, L.; Wang, T.; Jiang, C. A novel hybrid particle swarm optimization using adaptive strategy. Inf. Sci. 2021, 579, 231–250. [Google Scholar] [CrossRef]
  34. Tchapda, G.Y.G.; Wang, Z. Improved particle swarm optimization based on cuckoo search operations and its application. In Proceedings of the 2017 2nd International Conference on Robotics and Automation Engineering (ICRAE), Shanghai, China, 29–31 December 2017; pp. 290–294. [Google Scholar] [CrossRef]
  35. Ghamisi, P.; Benediktsson, J.A. Feature Selection Based on Hybridization of Genetic Algorithm and Particle Swarm Optimization. IEEE Geosci. Remote. Sens. Lett. 2015, 12, 309–313. [Google Scholar] [CrossRef] [Green Version]
  36. Nobile, M.S.; Cazzaniga, P.; Besozzi, D.; Colombo, R.; Mauri, G.; Pasi, G. Fuzzy Self-Tuning PSO: A settings-free algorithm for global optimization. Swarm Evol. Comput. 2018, 39, 70–85. [Google Scholar] [CrossRef]
Figure 1. The structure of the experiment platform.
Figure 1. The structure of the experiment platform.
Jmse 10 01056 g001
Figure 2. The deployment scenario of the experiment platform.
Figure 2. The deployment scenario of the experiment platform.
Jmse 10 01056 g002
Figure 3. Example of the inverse measurement model.
Figure 3. Example of the inverse measurement model.
Jmse 10 01056 g003
Figure 4. Occupancy grid-based AUV SLAM method.
Figure 4. Occupancy grid-based AUV SLAM method.
Jmse 10 01056 g004
Figure 5. Features extraction of sonar data. (a) Raw sonar data. (b) Sonar data after feature extraction.
Figure 5. Features extraction of sonar data. (a) Raw sonar data. (b) Sonar data after feature extraction.
Jmse 10 01056 g005
Figure 6. The grid map matching algorithm based on PSO-GA.
Figure 6. The grid map matching algorithm based on PSO-GA.
Jmse 10 01056 g006
Figure 7. Effect of grid map matching. (a) Grid sub-map. (b) Scanning grid map. (c) Scanning grid map after matching.
Figure 7. Effect of grid map matching. (a) Grid sub-map. (b) Scanning grid map. (c) Scanning grid map after matching.
Jmse 10 01056 g007
Figure 8. Sea trial environment.
Figure 8. Sea trial environment.
Jmse 10 01056 g008
Figure 9. AUV real trajectory and sonar feature points. (a) AUV real trajectories and sonar feature points in Test 1. (b) AUV real trajectories and sonar feature points in Test 2.
Figure 9. AUV real trajectory and sonar feature points. (a) AUV real trajectories and sonar feature points in Test 1. (b) AUV real trajectories and sonar feature points in Test 2.
Jmse 10 01056 g009
Figure 10. AUV positioning with different navigation methods. (a) AUV positioning with different navigation methods in Test 1. (b) AUV positioning with different navigation methods in Test 2.
Figure 10. AUV positioning with different navigation methods. (a) AUV positioning with different navigation methods in Test 1. (b) AUV positioning with different navigation methods in Test 2.
Jmse 10 01056 g010
Figure 11. Localization error of different methods. (a) Localization error of different methods in Test 1. (b) Localization error of different methods in Test 2.
Figure 11. Localization error of different methods. (a) Localization error of different methods in Test 1. (b) Localization error of different methods in Test 2.
Jmse 10 01056 g011
Figure 12. Probabilistic grid map of the SLAM navigation system. (a) Probabilistic grid map of the SLAM navigation system in Test 1. (b) Probabilistic grid map of the SLAM navigation system in Test 2.
Figure 12. Probabilistic grid map of the SLAM navigation system. (a) Probabilistic grid map of the SLAM navigation system in Test 1. (b) Probabilistic grid map of the SLAM navigation system in Test 2.
Jmse 10 01056 g012
Figure 13. Comparison of EKF and UKF SLAM algorithms. (a) Comparison of EKF and UKF SLAM algorithms in Test 1. (b) Comparison of EKF and UKF SLAM algorithms in Test 2.
Figure 13. Comparison of EKF and UKF SLAM algorithms. (a) Comparison of EKF and UKF SLAM algorithms in Test 1. (b) Comparison of EKF and UKF SLAM algorithms in Test 2.
Jmse 10 01056 g013
Figure 14. The positioning error for the EKF and UKF SLAM algorithms. (a) The positioning error for the EKF and UKF SLAM algorithms in Test 1. (b) The positioning error for the EKF and UKF SLAM algorithms in Test 2.
Figure 14. The positioning error for the EKF and UKF SLAM algorithms. (a) The positioning error for the EKF and UKF SLAM algorithms in Test 1. (b) The positioning error for the EKF and UKF SLAM algorithms in Test 2.
Jmse 10 01056 g014
Table 1. RMSE of the position under different algorithms; unit: m.
Table 1. RMSE of the position under different algorithms; unit: m.
Dead ReckoningSLAM (Exhaustive Method)SLAM (GA)SLAM (PSO-GA)
Test 1   5.99043.26073.01202.6900
Test 2   7.11853.79002.80621.6108
Table 2. RMSE of positioning under the EKF and UKF filters; unit: m.
Table 2. RMSE of positioning under the EKF and UKF filters; unit: m.
SLAM (EKF)SLAM (UKF)
Test 1   2.69002.6504
Test 2   1.61081.7131
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Mu, X.; Yue, G.; Zhou, N.; Chen, C. Occupancy Grid-Based AUV SLAM Method with Forward-Looking Sonar. J. Mar. Sci. Eng. 2022, 10, 1056. https://0-doi-org.brum.beds.ac.uk/10.3390/jmse10081056

AMA Style

Mu X, Yue G, Zhou N, Chen C. Occupancy Grid-Based AUV SLAM Method with Forward-Looking Sonar. Journal of Marine Science and Engineering. 2022; 10(8):1056. https://0-doi-org.brum.beds.ac.uk/10.3390/jmse10081056

Chicago/Turabian Style

Mu, Xiaokai, Guan Yue, Nan Zhou, and Congcong Chen. 2022. "Occupancy Grid-Based AUV SLAM Method with Forward-Looking Sonar" Journal of Marine Science and Engineering 10, no. 8: 1056. https://0-doi-org.brum.beds.ac.uk/10.3390/jmse10081056

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop