Next Article in Journal
Partial Discharge Detection and Recognition in Insulated Overhead Conductor Based on Bi-LSTM with Attention Mechanism
Next Article in Special Issue
Constructing Maps for Autonomous Robotics: An Introductory Conceptual Overview
Previous Article in Journal
A Comparative Analysis of Cross-Validation Techniques for a Smart and Lean Pick-and-Place Solution with Deep Learning
Previous Article in Special Issue
Multi-Objective Immune Optimization of Path Planning for Ship Welding Robot
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Adaptive SLAM Methodology Based on Simulated Annealing Particle Swarm Optimization for AUV Navigation

1
Faculty of Information Science and Engineering, Ocean University of China, Qingdao 266100, China
2
School of Naval Architecture, Ocean and Civil Engineering, Shanghai Jiao Tong University, Shanghai 200240, China
*
Authors to whom correspondence should be addressed.
Electronics 2023, 12(11), 2372; https://doi.org/10.3390/electronics12112372
Submission received: 15 April 2023 / Revised: 20 May 2023 / Accepted: 22 May 2023 / Published: 24 May 2023
(This article belongs to the Special Issue Autonomous Robots and Systems)

Abstract

:
Simultaneous localization and mapping (SLAM) is crucial and challenging for autonomous underwater vehicle (AUV) autonomous navigation in complex and uncertain ocean environments. However, inaccurate time-varying observation noise parameters may lead to filtering divergence and poor mapping accuracy. In addition, particles are easily trapped in local extrema during the resampling, which may lead to inaccurate state estimation. In this paper, we propose an innovative simulated annealing particle swarm optimization-adaptive unscented FastSLAM (SAPSO-AUFastSLAM) algorithm. To cope with the unknown observation noise, the maximum a posteriori probability estimation algorithm is introduced into SLAM to recursively correct the measurement noise. Firstly, the Sage–Husa (SH) based unscented particle filter (UPF) algorithm is proposed to estimate time-varying measurement noise adaptively in AUV path estimation for improving filtering accuracy. Secondly, the SH-based unscented Kalman filter (UKF) algorithm is proposed to enhance mapping accuracy in feature estimation. Thirdly, SAPSO-based resampling is proposed to optimize posterior particles. The random judgment mechanism is used to update feasible solutions iteratively, which makes particles disengage local extreme values and achieve optimal global effects. The effectiveness and accuracy of the proposed algorithm are evaluated through simulation and sea trial data. The average AUV navigation accuracy of the presented SAPSO-AUFastSLAM method is improved by 18.0% compared to FastSLAM, 6.5% compared to UFastSLAM, and 5.9% compared to PSO-UFastSLAM.

1. Introduction

Autonomous underwater vehicles (AUVs) play a vital role in ocean information acquisition, requiring robust and reliable navigation performance [1,2]. With advances in autonomous robotics, the sensor configuration of autonomous vehicle provides many options for vehicle localization and navigation, such as the LiDAR/GNSS/IMU integration systems [3,4], the GNSS/on-board sensors fusion framework [5] and the GPS/INS/DVL combination systems. However, the marine environment is complex and changeable, and the navigation and positioning of AUV are very challenging. When the global navigation satellite system (GNSS) signal fails, simultaneous localization and mapping (SLAM) provides a feasible solution for AUV navigation and positioning in unknown marine environments. The acoustic ranging equipment, such as mechanical scanning imaging sonar (MSIS), equipped with the AUV can identify underwater environmental features for mapping [6,7]. The navigation devices are used for dead reckoning (DR).
The data-fusion methods in SLAM mainly include graph optimization and filtering. The former has higher precision than the latter but slower calculation speed. At present, Graph-SLAM has emerged as a promising method for land vehicles [8,9,10]. Additionally, some researchers have applied graph optimization to AUV SLAM. The novel graph-based C-SLAM algorithm is presented for multi-AUV navigation through side-scan sonar [11]. The BSLAM algorithm based on the multi-beam bathymetry system is proposed for AUV navigation, which adopts the factor graph optimization algorithm [12]. Carrasco [13] presents the integration of a stereo-vision Graph-SLAM system in the navigation and control architecture of the AUV with a stereo camera. However, the above methods are performed by acoustic or visual image registration, which does not work well in MSIS-based AUV SLAM with sparse point features. In contrast, filtering methods are increasingly used in point features SLAM.
Due to the real-time nature and characteristics of the filtering method, filter-based SLAM is widely used in underwater navigation. The Kalman filter (KF) is a classic recursive estimation algorithm that divides the navigation process into state prediction and update [14]. Currently, there are a lot of KF variants to optimize the state estimation [15,16,17,18]. However, KF is the optimal linear model estimation method, which performs poorly for the SLAM problem under the situation of a nonlinear model. The extended Kalman filter (EKF) based SLAM algorithm is proposed to approximate the nonlinear model through Taylor series expansion [19,20]. However, EKF-SLAM suffers from filtering inconsistencies due to the linearization of the model. Moreover, the computational complexity increases exponentially with filtering. The unscented Kalman filter (UKF) based SLAM algorithm is used to estimate the mean and covariance of the state variables through unscented transformation (UT), avoiding the linearization error caused by the first-order Taylor expansion [21]. However, UKF-SLAM lacks accuracy and hinders the completion of high-precision navigation and mapping.
With the advance of scientific research, FastSLAM has gradually become the mainstream algorithm for solving the SLAM problem [22,23]. State estimation is based on Monte Carlo sampling and the Rao–Blackwell particle filter (RBPF) [24]. Unlike the previous algorithms for keeping the linear Gaussian, FastSLAM can be directly applied to the nonlinear process model. The particle filter (PF) is used for posing estimation. The EKF is used to update features. The dimension of state space is limited to two dimensions, significantly reducing the amount of calculation. The development of FastSLAM has gone through two stages: FastSLAM 1.0 and FastSLAM 2.0 [25]. In FastSLAM 1.0, track points are represented by weighted particles. The features are associated and updated based on a single particle to overcome the computational complexity. In FastSLAM 2.0, observations are added to the proposed distribution. The particles in the high likelihood area are selected to improve the SLAM accuracy. However, the EKF algorithm generates linearization error due to the calculation of the multi-dimensional Jacobian matrix when the features are updated. To solve this problem, researchers proposed the UFastSLAM algorithm, in which UKF is used to update features [26,27]. The unscented particle filter (UPF) algorithm is used to construct an important probability density function, which eliminates the linearization error and enhances SLAM performance.
When AUV performs underwater tasks, high-precision navigation and mapping are necessary conditions. The traditional resampling algorithms in SLAM may reduce the diversity of the samples [28,29,30], resulting in the loss of a lot of potentially helpful information. Therefore, many researchers proposed corresponding improved algorithms to increase particle diversity and enhance position accuracy [31]. The adaptive fading UKF-based SLAM method combined with gravitational field optimization was proposed to adjust the proposal distribution [32]. The gravity search algorithm (GSA) is used to improve the resampling process in the AUV SLAM navigation so that particles tend to be in the high likelihood area of the posterior distribution to realize precise estimation [33]. The lion swarm optimization (LSO) algorithm was proposed to strengthen resampling in the rapid positioning, rescue, and mapping of mining robots [34]. However, the above methods may fall into local optimization and lack the global optimal performance, resulting in the late divergence of the filtering process. The navigation effect is not conducive to AUV remote underwater operations.
Due to the complex and variable seawater environment, sensors such as the inertial navigation system (INS), Doppler velocity log (DVL), and MSIS equipped with AUV can be subject to noise interference [35]. The default noise covariance does not fully conform to the time-varying noise distribution, leading to false observations and deviations in state and feature estimates. In recent years, some researchers have also proposed innovative ideas for the SLAM algorithm. The adaptive smoothing variable structure filter (ASVSF) was proposed to estimate measurement noise for SLAM systems, which uses the maximum a posteriori probability creation and weighted exponent concepts [36]. However, as a suboptimal estimation algorithm, the SVSF may have a mismatch between the innovation covariance matrix and the theoretical value. The system accuracy based on this algorithm is not high. The AEKF-SLAM method based on maximum likelihood estimation (MLE) and expectation–maximization (EM) creation was proposed to recursively estimate noise mean and covariance [37]. However, the proposed AEKF-SLAM method is still based on the EKF algorithm, which struggles to solve the Jacobian matrix. The variational Bayesian (VB) based UFastSLAM algorithm was presented to estimate measurement noise in UPF and UKF [38]. However, the proposed UFastSLAM algorithm heavily depends on model prior information, in which the empirical noise characteristics might reduce the stability of the filter.
Therefore, it is essential to present a method that combines particle optimization and noise estimation for AUV navigation. In this paper, we present an innovative simulated annealing particle swarm optimization–adaptive unscented FastSLAM (SAPSO-AUFastSLAM) algorithm, which can solve the particle global optimization loss problem, while estimating measurement noise mean and covariance in real time. The proposed algorithm can improve the AUV SLAM accuracy in complex and variable marine environments. The contributions of this paper are as follows:
  • To improve AUV navigation accuracy, the SAPSO-AUFastSLAM algorithm is proposed to enhance resampling while estimating time-varying measurement noise;
  • The Sage–Husa (SH) based UPF algorithm is proposed to estimate time-varying measurement noise adaptively in SLAM for improving the filtering accuracy. Meanwhile, the SH-based UKF algorithm is proposed in SLAM to enhance mapping accuracy;
  • The SAPSO-based resampling algorithm is proposed to optimize posterior particles. The random judgment mechanism is used to update feasible solutions iteratively, which makes particles disengage the local extreme values and achieves optimal global effects;
  • The proposed SAPSO-AUFastSLAM algorithm was effectively verified in simulation and sea trials. Compared with traditional algorithms, the proposed algorithm has improved accuracy and stability.
The remainder of this paper is organized as follows. The AUV SLAM model and feature extraction are introduced in Section 2. A detailed description of the proposed SAPSO-AUFastSLAM algorithm is illustrated in Section 3. Section 4 presents our AUV platform and experimental validation, and conclusions are given in Section 5.

2. AUV SLAM Model and Feature Extraction

In this section, the AUV SLAM models is reviewed, and the sonar feature extraction process is described in detail.

2.1. The Review of AUV SLAM Model

The information observed by the sensor is based on the carrier coordinate system, while the state estimation and feature update is expressed in the navigation coordinate system. It is necessary to convert the information of the carrier coordinate system to the navigation coordinate system as shown in Figure 1. The pressure sensor (PS) equipped with AUV can accurately measure absolute depth based on the seawater properties. Therefore, this paper focuses on 2D SLAM navigation.
The AUV SLAM models include the motion model and observation model, which are typical discrete nonlinear system models divided into two parts: state estimation and feature updating [39]. The 2D position and heading angle of the AUV are used to construct the SLAM state space, which can be defined as
X k = x k y k φ k T ,
where ( x k , y k ) represents the eastward and northward coordinates of the AUV in the navigation coordinate system at time k. φ k represents the yaw angle of AUV at time k.
In this research, we adopt point feature to denote features in the undersea environment. Feature points (i.e., landmarks) are extracted from sonar raw observations, which are detailed in Section 2.2. The feature space includes the 2D coordinates of each landmark as follows:
M k = m x i k m y i k T ,
where i indicates the index of particles, and ( m x i k , m y i k ) represents the 2D features position observed at time k. The observation space includes the AUV distance and angle relative to environmental features. The formula can be defined as
Z k = r k θ k T ,
where r k represents the distance between AUV and features at time k, and θ k represents the angle between AUV and features in the navigation coordinate system at time k. The motion model can achieve recursive estimation of the AUV state. The formula can be defined as
X k = f X k 1 , u k + ω k ,
where X k represents the state space variable at time k, including the AUV position and heading. The state matrix is described as (5)
x k y k φ k = x k 1 + v x · t · cos φ k 1 v y · t · sin φ k 1 x k 1 + v x · t · sin φ k 1 + v y · t · cos φ k 1 φ k 1 + σ k · t + ω k
The u k stands for AUV control information at time k, and ( v x , v y ) represents the 2D velocity, measured by sensor DVL. t represents the time interval. ω k represents the system process noise, where ω k N ( 0 , Q k ) . σ k represents the angular velocity of the AUV. The observation model is used to implement the SLAM feature update. The formula is as follows:
Z k = h X k , M + v k ,
where Z k represents the observation space variable at time k, including the relative distance and angle between the AUV and feature. The observation matrix is described as (7) as follows:
r k θ k = x k m x i k 2 + y k m y i k 2 arctan y k m y i k x k m x i k φ k + v k
Here, the relative distance and angle are calculated based on the estimated AUV position and observed feature position. Each feature observed at time k must participate in the calculation, and v k represents the observation noise of the AUV at time k, where v k N ( 0 , R k ) .

2.2. The Fusion Feature Extraction Algorithm

We arrange experiments near the coast so that point features on the coast wall can be used for sonar observations. The MSIS sensor equipped with the AUV emits sound waves to the surrounding environment, and uses the echo intensity value to identify the position of obstacles ahead. The sonar configuration information is shown in Table 1.
The measurement uncertainty is determined based on the observation covariance. In this paper, we set the initial observation noise covariance matrix to be R, which can be defined as follows:
R = σ r 2 0 0 σ p 2
where σ r 2 indicates the distance error and is defined as σ r = 0.18 . σ p 2 indicates the angle error and is defined as σ p = 0.052 . Initial parameters are determined based on sonar observation deviation and multiple test evaluations.
Due to the underwater acoustic noise and sensor error, spurious features in sonar observations may impact the accuracy of locating the real features. Furthermore, a long scan cycle can lead to motion distortion. Therefore, we present the fusion feature extraction algorithm that integrates filtering, sparsification, and coordinate transformation [40].

2.2.1. Data Preprocessing Based on Threshold Segmentation

Data preprocessing is crucial to implement efficient sampling, which can be achieved through filtering and sparsification. Here, we set the noise distance threshold based on real experiment to preliminarily filter out spurious observations. Subsequently, the intensity threshold is determined based on the binarization threshold method to further reduce erroneous feature points, which can be defined as follows:
B T h r e s h o l d = B M a x + B M i n 2 ,
where B M a x indicates the maximum intensity value of per p i n g raw sonar datum. B M i n indicates the minimum intensity value. Data within the threshold are retained, and data exceeding the threshold are discarded.
Considering the calculation speed, the filtered sonar data are sparsely processed in order to ensure that the target-related information is retained, followed by removing redundant features. We set the minimum inter-bin distance threshold according to the experimental situation and data volume. Neighboring features whose distance is less than the threshold are halved to achieve sparsification.

2.2.2. Motion Compensation Based on Coordinate Transformation

Since the AUV sails underwater, slow sonar scanning may cause data mismatch problems, resulting in the distortion of sonar images. Therefore, preprocessed features can be converted to the navigation coordinate system, compensating for the above problems. Based on current navigation data and sonar observation information, the feature coordinate transformation formula can be defined as follows:
x F , G = x R , G + ρ F cos ( θ F + ψ R , G ) y F , G = y R , G + ρ F sin ( θ F + ψ R , G ) ,
where x F , G and y F , G indicate the x-axis and y-axis feature position coordinates in the navigation coordinate system. x R , G and y R , G represent the x-axis and y-axis AUV position coordinates in the navigation coordinate system. ρ F and θ F indicate the relative distance and angle between the AUV and the feature in the carrier coordinate system. ψ R , G stands for the angle between the AUV and the east direction. It should be noted that the effects of the pitch and roll angle on the features are ignored in this experiment since the angles vary little during the mission phase.

3. Innovative SAPSO-AUFastSLAM Algorithm

To improve SLAM system accuracy and stability and then enhance AUV navigation and mapping capabilities in an unknown environment, an innovative SAPSO-AUFastSLAM algorithm is proposed in this paper. The proposed algorithm can achieve better performance than conventional methods.

3.1. Overview of the Proposed Algorithm

The proposed algorithm is based on the UFastSLAM framework [41]. The measurement noise in the importance sampling stage is estimated by the proposed SH-UPF algorithm. The measurement noise mean and covariance in the feature estimation stage are approximated by the proposed SH-UKF algorithm. At the same time, the SAPSO optimization algorithm is presented for optimal resampling. The overall flow chart is shown in Figure 2.

3.1.1. Importance Sampling

Sampling the suggested distribution is a crucial step in SLAM. In the traditional methods, the noise covariance of the observation model is uniquely determined and cannot meet the time-varying requirements. In response, an adaptive UPF algorithm is proposed for importance sampling. The mean and covariance of the measurement noise in the model are estimated in real time using the SH algorithm to meet the actual requirements of the SLAM systems. The improved UPF observation model is as follows:
Z k = h X k , M k + v k ,
where Z k represents the observed variable. v k indicates the time-varying observation noise. The noise mean and covariance can be defined as
E v k = r k ,
E v k r k v j r j T = δ k j R k * ,
where δ k j represents a trigonometric function. r k indicates the measurement noise mean. R k * indicates the observation noise covariance. The improved adaptive UPF is described in detail in Section 3.2.

3.1.2. Feature Estimation

The feature estimation stage is implemented through the proposed SH-UKF algorithm in this paper, including the prediction and update. Like the noise estimation in importance sampling, the SH algorithm is used to construct an adaptive UKF model at this stage to generate a realistic noise distribution, improving the measurement model accuracy. The adaptive UKF is described in detail in Section 3.3.

3.1.3. Resampling

For the problem of particle diversity loss in traditional resampling methods [42,43], researchers proposed some optimization algorithms [44]. However, the particle “precocity” phenomenon in the existing methods may lead to premature convergence during the search process, resulting in filtering trajectory divergence. Therefore, we propose the SAPSO algorithm to replace traditional optimization algorithms, introducing random factors into the particle update stage to obtain the optimal global solution. The proposed optimal algorithm is detailed in Section 3.4.

3.2. Adaptive UPF Algorithm Based on Sage Husa

To eliminate the impact of inaccurate measurement noise covariance on AUV SLAM accuracy, we present an improved SH-UPF algorithm to optimize the SLAM navigation process. The updated proposed distribution is more consistent with the actual distribution by estimating noise mean and covariance in real time and using them in the importance sampling stage. Here, the time update steps of UPF will be described in Appendix A.
When external sensors are available, the observation prediction sigma point set is transferred through the AUV SLAM observation model mentioned in (11). The prediction and the observation prediction sigma point set are as follows:
χ k k 1 , j [ i ] = χ k k 1 , j x , [ i ] χ k k 1 , j y , [ i ] χ k k 1 , j φ , [ i ] , j = 0 , 1 , , 2 m ,
z ^ k k 1 , j [ i ] = h χ k k 1 , j [ i ] ,
where subscript j indicates the index of the sampling point, and i stands for the index of particles. The left sides of (14) and (15) represent the symbols of predicted sigma point and the observed predicted sigma point. The predicted sigma point includes the AUV position components and the heading angle. The average and cross covariance of the observation prediction generated by weighted summation are represented as follows:
Z ¯ k k 1 [ i ] = j = 0 2 m w m j · z ^ k k 1 , j [ i ] ,
P x z , k k 1 [ i ] = j = 0 2 m w c j · χ k k 1 , j [ i ] X k k 1 [ i ] z ^ k k 1 , j [ i ] Z ¯ k k 1 [ i ] T ,
where X k k 1 [ i ] indicates the predicted state variable at time k, and w m j and w c j are used to calculate the mean and covariance. The formula is expressed as follows:
w m 0 = λ / ( m + λ ) w c 0 = λ / ( m + λ ) + 1 α 2 + β w m j = w c j = 1 / 2 ( m + λ ) , j = 1 , 2 , , 2 m
Here, λ = α 2 ( m + κ ) m . We take κ = 0 , α = 0.002 . As seen above, the sampling of sigma points is divided into three stages, and the number of samples is determined by the state space dimension m, m = 5 . Assuming that the observation noise at time k follows a Gaussian distribution with zero mean and covariance R k , the innovation covariance matrices can be expressed as follows:
S k [ i ] = j = 0 2 m w c j · z ^ k k 1 [ i ] Z ¯ k k 1 [ i ] z ^ k k 1 [ i ] Z ¯ k k 1 [ i ] T P z z , k k [ i ] = S k [ i ] + R k
The filter gain is calculated based on the results obtained from (17) and (19) to update the AUV state and covariance. The formula can be expressed as follows:
K k [ i ] = P x z , k k 1 [ i ] P z z , k k [ i ] 1 ,
ε k = Z k Z ¯ k k 1 [ i ] ,
X k k [ i ] = X k k 1 [ i ] + K k [ i ] · ε k ,
P k k [ i ] = P k k 1 [ i ] K k [ i ] · P z z , k k [ i ] 1 · K k [ i ] T ,
where K k [ i ] represents the UPF filter gain, and ε k represents an innovation vector used to evaluate the deviation between the observed and predicted values.
To meet the system adaptability, the SH algorithm is introduced for the real-time correction of UPF. The SH algorithm is based on maximum a posteriori estimation and exponentially weighted attenuation and has the unbiased nature of constant value noise estimation [45]. Noise estimation can be implemented recursively. The noise value at time k + 1 can be estimated from the observation data at time k, and the mathematical formula is expressed as follows:
r k = 1 d k · r k 1 + d k Z k j = 0 2 m w m j · h χ k k 1 , j [ i ] R k * = 1 d k · R k 1 * + d k ε k · ε k T j = 0 2 m w c j · z ^ k k 1 , j [ i ] Z ¯ k k 1 [ i ] z ^ k k 1 , j [ i ] Z ¯ k k 1 [ i ] T ,
where r k and r k 1 represent the mean value of estimated noise at k time and k 1 time, and R k * and R k 1 * represent the covariance matrix of estimated noise. d k represents the weighted exponential factor of decaying memory. In noise estimation statistics, it is essential to emphasize the latest data and gradually forget older values. Here, we define d k as follows:
d k = ( 1 b ) 1 b k
The value of b must meet the requirements of 0.95 < b < 0.99 . To meet the system requirements, we take b = 0.98 . As seen from the above, the estimated value of observation noise can be obtained based on the SH-UPF algorithm at time k, which can be used in the observation update process next time. The updated formula for fusion estimation noise can be expressed as follows:
ε k + 1 = Z k + 1 Z ¯ k + 1 k [ i ] r k ,
P z z , k + 1 k + 1 [ i ] = S k + 1 [ i ] + R k * ,
where the calculation of the innovation vector needs to consider the estimated mean value of the observation noise, and the observation noise covariance in the innovation covariance needs to be updated to the estimated value at the current time.
During the SH-UPF filtering process, R k * and r k are updated simultaneously. Due to the difference between the SLAM system and pure navigation, more than one feature is observed each time, and each observation value participates in the update. Considering practical applications, noise estimation is performed once for each feature update in the proposed algorithm, and the final estimated value is transmitted to the next moment. The accuracy of AUV underwater SLAM navigation is improved through iterative filtering of the UPF system and fusion of recursive estimates of observation noise.

3.3. Adaptive UKF Algorithm Based on Sage Husa

In the AUV SLAM system, feature estimation is a crucial step that determines mapping accuracy and serves as AUV navigation. In traditional UFastSLAM, feature estimation is based on the UKF algorithm. In order to achieve adaptive mapping performance, we propose an enhanced SH-UKF algorithm for the AUV SLAM, which recursively estimates the time-varying measurement noise. After successful data association, the sigma points are determined to be sampled from the Gaussian distribution and transferred to the non-linear function. After weighted summation, the observation prediction mean and cross-covariance are obtained, with the formula as follows:
Z ¯ k k 1 f , [ i ] = j = 0 2 m w m j · z ^ k k 1 , j f , [ i ] ,
P x z , k k 1 f , [ i ] = j = 0 2 m w c j · χ k k 1 , j f , [ i ] X k k 1 f , [ i ] z ^ k k 1 , j f , [ i ] Z ¯ k k 1 f , [ i ] T ,
where superscript f represents the feature estimation sign. z ^ k k 1 , j f , [ i ] indicates the observation and prediction sigma point, and Z ¯ k k 1 f , [ i ] represents the observation prediction mean. The filter gain at the update stage of the UKF observation at time k can be expressed as follows:
K k f , [ i ] = P x z , k k 1 f , [ i ] · S k f , [ i ] + R k , f 1 ,
where R k , f represents the observation noise covariance matrix at the feature estimation stage. The mean and covariance of the posterior estimation of features can be expressed as follows:
X k k f , [ i ] = X k k 1 f , [ i ] + K k f , [ i ] Z k Z ¯ k k f , [ i ] ,
P k k f , [ i ] = P k k 1 f , [ i ] K k f , [ i ] · S k f , [ i ] + R k 1 · K k f , [ i ] T
Similar to the improved SH-UPF algorithm, this section integrates the SH noise estimator in the UKF algorithm to estimate the noise parameters at the next moment through the statistical data at the k moment and integrates them into the observation update process of the feature estimation to improve the accuracy of the posterior estimation. The noise estimation formula can be defined as
r k , f = 1 d k · r k 1 , f + d k Z k j = 0 2 m w m j · h χ k k 1 , j f , [ i ] R k , f * = 1 d k · R k 1 , f * + d k ε k , f · ε k , f T j = 0 2 m w c j · z ^ k k 1 , j f , [ i ] Z ¯ k k 1 f , [ i ] z ^ k k 1 , j f , [ i ] Z ¯ k k 1 f , [ i ] T ,
where r k , f and r k 1 , f represent the estimated noise mean at time k and k 1 during the feature update, respectively. R k , f * and R k 1 , f * represent the estimated noise covariance matrices at time k and k 1 . ε k , f represents the innovation vector of UKF. At this stage, the calculation method for d k is the same as in Section 3.2. The estimated noise data participate in the feature update process at the next moment, making the final estimated feature more approximate to the actual value.
The adaptive SH-UKF algorithm introduces noise estimation into the feature update process, which is simple and easy to implement, making the posterior probability estimation value of the improved algorithm more accurate. The proposed method can improve the AUV SLAM mapping accuracy and avoid the problem of the algorithm being too complex. The flowchart of the proposed algorithm is shown in Figure 3.

3.4. Optimal Resampling Based on Simulated Annealing Particle Swarm Optimization

To improve the global optimization loss of samples during the UFastSLAM resampling phase, we propose an enhanced SAPSO algorithm to achieve the optimal global effect for optimal resampling.
PSO is a sample parallel random optimization method based on iterative thinking, simulating birds foraging and fish clustering behavior [46,47]. Each particle in the sample represents a feasible solution to the problem and searches for the optimal solution in the sample space through information sharing and collaboration. Sample attributes include speed, position, and fitness. If a group of samples includes N particles, the position of each particle in the search space can be expressed as a set X = { X 1 , X 2 , X 3 , , X N } . The speed of particles in the sample can be described as a set V = { V 1 , V 2 , V 3 , , V N } . Then, the state update formula for the particles in each search for the optimal can be defined as
V i j + 1 = w t i · V i j + c 1 · r 1 · p b i X i j + c 2 · r 2 · g b X i j ,
X i j + 1 = X i j + V i j + 1 ,
where j represents the number of iterations, j = 1 , 2 , 3 , , T . c 1 and c 2 represent learning factors. To adapt to the system requirements, we take c 1 = c 2 = 2 while limiting the particle search speed V i to the range of [ 4 , 4 ] . r 1 and r 2 represent random factors that follow a random distribution of [ 0 , 1 ] . p b i represents the optimal local value searched during sample iteration, and g b represents the optimal global value of the entire sample. w t i represents the inertial weight of the particle. In this paper, we present an improved weight calculation formula [47,48], which can be defined as
w t i = w t min + w t max w t min · f i f min f mean f min , f i f mean w t max , f i > f mean ,
where f i represents the fitness function. f m e a n represents the average fitness of the sample, and f m i n represents the minimum fitness of the sample. w t m a x represents the maximum weight, which is set to w t m a x = 1.2 . w t m i n represents the minimum weight, which is set to w t m i n = 0.4 . In this article, we adaptively determine the inertia weight of each particle for optimization based on the average fitness of the sample. The calculation formula for the fitness function is as follows:
f i = X i , x j target x 2 + X i , y j target y 2 ,
where the subscript x represents the lateral coordinates of the AUV position in the particle, the subscript y represents the longitudinal coordinates of the AUV position in each particle, and the target represents the mean value of the initial sample position.
It is worth mentioning that there is a problem of premature convergence in the sample iteration process. After a few iterations, the particles’ position in space remains unchanged, limited to a local range, resulting in low accuracy. To this end, the SA algorithm is introduced, a global optimization algorithm based on iterative thinking, using temperature as a control parameter and the value of the objective function as the internal energy [49]. Within the allowable temperature range, it allows samples to accept suboptimal solutions with a certain probability and ultimately obtain a relatively optimal solution through multiple iterations. In this article, according to the sampling principle of SA, particles in the sample space are transferred according to the following improved probability:
p i = 1 , f i f min e f i f min f i , f i < f min
When the fitness of the updated particles is less than the optimal value, the new particles are accepted with an exponential probability rather than completely deleting the new particles as is the case with traditional methods.
For optimal resampling, the SAPSO algorithm introduces a random judgment mechanism and combines with the probability jump feature in the search process. When iteratively updating a feasible solution, the improved probability is used instead of the determined judgment condition to accept a solution that may not be optimal. Therefore, it is possible to probabilistically jump out of the optimal local solution and ultimately tend to global optimization. The proposed method can improve the global search ability to a certain extent, thereby obtaining a more accurate AUV state estimation. The proposed SAPSO algorithm can be summarized in Algorithm 1.
Algorithm 1: Proposed SAPSO: 2-D.
Initialize parameters: T e m p 0 , X i 0 , V i 0
for j = 1 : T
     for i = 1 : N
          Caiculate fitness: f i = d i s t a n c e ( X i j , t a r g e t )
     end for
     f m i n = m i n [ f i ]
     f m e a n = m e a n [ f i ]
     for i = 1 : N
       Calculate inertia weight:
        w t i = w t min + w t max w t min · f i f min f mean f min , f i f mean w t max , f i > f mean
       Update particles velocity:
        V i j + 1 = w t i V i j + c 1 r 1 ( p b i X i j ) + c 2 r 2 ( g b X i j )
        Update particles position : X i j + 1 = X i j + V i j + 1
     end for
     Update fitness optimum .
     for i = 1 : N
        Calculate probability and sample : p i = e f i f min f i
        if p i > r a n d ( )
            p b i = X i j + 1
        else
            p b i = X i j
        end
     end for
     Annealing : T e m p j + 1 = T e m p j 0.5
end for

4. Experimental Results and Analysis

In this section, we use a simulation platform and sea trial experiments to evaluate the proposed algorithm and verify its effectiveness. The proposed algorithm is compared with existing FastSLAM, UFastSLAM, and PSO-UFastSLAM algorithms. The navigation and mapping accuracy is comprehensively analyzed. The results are presented through result graphs and statistical tables.

4.1. Simulation

Here, we use the open-source simulation environment built by Tim [7] to generate robot trajectory and features. The trajectory path is specified by 17 waypoints with 35 landmarks and starts at (0,0). The experimental operation step size is 8779 steps, and the trajectory length is 658 meters. The initial simulation parameters can be summarized in Table 2.
The effectiveness of the proposed algorithm is evaluated based on 300 Monte Carlo (MC) runs on the simulation case. The simulation results are shown in Figure 4. Figure 4a indicates the trajectory and feature estimation results of an MC experiment. The estimated trajectory and estimated features of the proposed SAPSO-AUFastSLAM algorithm are closest to the actual value. The estimation results of the PSO-UFastSLAM algorithm are the second closest, and the estimation results of the UFastSLAM algorithm and the FastSLAM algorithm are the worst. To evaluate the four algorithms more accurately, we calculate the root mean square error (RMSE) of the motion trajectories of the four algorithms in 300 MC experiments, as shown in Figure 4b. The RMSE of the proposed algorithm in the 300 MC experiments is kept at the lowest, indicating that the algorithm is the most effective to improving the accuracy of AUV underwater navigation.
We add loop closure detection to the initial simulation trajectory and further evaluate the performance of the proposed algorithm compared with other algorithms. This experiment is still based on 300 MC simulations, which is shown in Figure 5. Compared with the experimental results of simulation case 1, the performance of each algorithm is improved. It can be seen in Figure 5a,b that the proposed SAPSO-AUFastSLAM algorithm performs optimally.
Figure 6 and Figure 7 indicate the estimation error of different algorithms in an MC experiment. Figure 6a,b show the position and the feature estimation deviation of different methods from simulation case 1. The estimation errors from simulation case 2 are shown in Figure 7a,b. The errors of simulated path with the closed loop are almost 50% smaller than the open-loop trajectory. At the same time, the suggested algorithms have show the best results. The FastSLAM algorithm has the largest deviation from the true value and lacks stability. The UFastSLAM algorithm has obvious divergence. The PSO-UFastSLAM algorithm and the proposed SAPSO-AUFastSLAM algorithm converge significantly. In contrast, the latter has smaller position and feature estimation errors than the former, while being more stable.
Table 3 gives the average statistical results of 300 MC experiments from simulation case 1 and simulation case 2. The proposed SAPSO-AUFastSLAM algorithm has the lowest average RMSE and the highest accuracy. In contrast, the FastSLAM algorithm has the highest average RMSE and the lowest accuracy, and the other two algorithms have values in the middle. The accuracy of the proposed algorithm is 32% higher than that of PSO-UFastSLAM and 51% higher than that of UFastSLAM, a 63% improvement over FastSLAM. Therefore, the proposed algorithm has the highest accuracy and the best positioning performance.
To evaluate the robustness of the proposed algorithm in a non-stationary noise environment, we modified the initial observation noise parameters and conducted 100 MC experiments. We set the noise mutation probability P m and mutation gain G m in the program to simulate the real ocean environment. The non-stationary noise simulation process is shown in Figure 8.
In this paper, we set G m to be a random integer at ( 1 , 8 ) . P m is continuously increased to simulate the abnormal degree of dynamic noise. For each case, we performed 100 MC runs for validating. The average RMSE values of the different experiments are shown in Table 4. P-RMSE and F-RMSE indicate the average errors of the estimated positions and features in different algorithms. It can be seen that as the mutation probability increases, the proposed SAPSO-AUFastSLAM algorithm remains at a lower error level and is more robust.
As we all know, the number of valid particles is also an important criterion judging the performance of the SLAM algorithm. In this paper, the number of valid particles are referred to as N e f f , which can be defined as (39)
N e f f = 1 i = 1 N W k [ i ]
where W k [ i ] indicates the weight of the i-th particle at time k. Too many invalid particles can lead to particle depletion, reducing state and feature estimation accuracy. Therefore, we further evaluate the proposed algorithm by comparing the N e f f of different algorithms in a non-stationary noise environment. The average results of 100 MC runs are shown in Table 4. Obviously, the proposed algorithm has the most effective particles as the noise mutation rate increases.
The computational cost and positioning error of the proposed algorithm are further analyzed according to the number of particles. The localization error and running time of different algorithms under different particle numbers are used to evaluate the computational complexity and accuracy of the algorithms. For each test, the results are obtained over 150 Monte Carlo runs. As shown in Table 5 and Figure 9, the running time of the four algorithms increases while the positioning error decreases as the number of particles increases. From Figure 9a, it can be seen that the error of the proposed algorithm is always the smallest. Figure 9b shows the average running time of different algorithms. Because the noise statistics calculation and SAPSO iterations increase the computational cost, the running time of the proposed algorithm is relatively high compared to other algorithms. Considering the positioning accuracy and calculation cost, we choose 20 particles as reference in this paper.

4.2. Sea Trial

In order to fully evaluate the practicability of the proposed algorithm, we use two sets of sea test data to evaluate the algorithm performance. The two experiments were carried out at Nanjiang Wharf and Tuandao Bay, respectively.

4.2.1. The Experiment at Nanjiang Wharf

We used No.1 Sailfish-210 AUV (Underwater Vehicle Laboratory, Ocean University of China, Qingdao, China) as the experimental platform to verify the effectiveness of the proposed algorithm. The experiment was carried out at Nanjiang Wharf in Qingdao. Figure 10 shows the No.1 Sailfish-210 AUV during the sea trial and overall design block diagram, in which the global positioning system (GPS) provides real-time position information on the water surface. The IMU, DVL, and MSIS combine to complete the underwater SLAM task, and the IMU measures the heading, roll, and pitch angle. The DVL provides the velocity of the body coordinate system, and the MSIS measures the 2D position of the features in the environment. The detailed specifications of the sensors are shown in Table 6.
The No.1 Sailfish-210 AUV is equipped with a dual-core CPU (Advantech, Taipei, China), which collects the data of each sensor through MOOS-IvP software (Version 12.2) for calculation. The duration of the experiment is 284 s. The experimental results are shown in Figure 11. The estimated trajectory and features of the different algorithms are fully shown in Figure 11a. The enlarged local figure is shown in Figure 11b. It can be seen that the motion trajectory and features of the proposed SAPSO-AUFastSLAM algorithm are closer to the actual value.
Position estimation errors of the different algorithms on the No.1 Sailfish-210 AUV are shown in Figure 12. It can be seen from Figure 12b that the position estimation error of the proposed SAPSO-AUFastSLAM algorithm is the smallest. Figure 12c,d give the position errors in the east direction and in the north direction. The two errors of the proposed algorithm are smaller than those of other algorithms. Therefore, the proposed algorithm can achieve high-precision, long-range autonomous navigation in AUV underwater missions.

4.2.2. The Experiment at Tuandao Bay

We used the No.2 Sailfish-210 AUV as the experimental platform to verify the accuracy of the proposed algorithm. The experiment was carried out at Tuandao Bay in Qingdao. Figure 13 shows the No.2 Sailfish-210 AUV during the sea trial and overall design block diagram, in which the INS, DVL, and MSIS combine to complete the underwater SLAM task, and the INS measures the heading, roll, and pitch angle. The detailed specifications of the sensors are shown in Table 7.
The No.2 Sailfish-210 AUV is equipped with an Advantech-5272 industrial computer (Advantech, Taipei, China) with a CPU of Core i3 1G Hz or higher, 4 GB of memory, and 128 GB of hard disk. In this experiment, the sailing distance is 361.5643 m. The duration of the experiment is 1833 s. Figure 14 and Figure 15 show the results of sea trial experiment on the No.2 Sailfish-210 AUV. Figure 14a,b represent the SLAM motion and feature estimations of the four algorithms. Figure 15b gives the position estimation errors of different algorithms. The east and north position errors of different algorithms are shown in Figure 15c,d. As can be seen from the figures, the proposed SAPSO-AUFastSLAM algorithm have more accurate estimations and fewer errors than traditional algorithms.
The specific statistical results are shown in Table 8. The RMSE, accuracy, and running time of the different algorithms are summarized. Obviously, the errors of the proposed SAPSO-AUFastSLAM algorithm are smaller than conventional algorithms, and the accuracy is higher. The running time of the presented algorithm is increased to a certain extent, but they can meet the real-time performance. Therefore, the proposed algorithm can effectively improve the performance of AUV underwater SLAM and thus improve navigation accuracy.

5. Conclusions

This paper proposes an innovative SAPSO-AUFastSLAM algorithm to perform the AUV SLAM process. The adaptive UPF and UKF algorithms are based on Sage–Husa noise estimation and the resampling algorithm based on SAPSO optimization in parallel to improve the accuracy of AUV navigation and mapping. The performance of the proposed algorithm is verified by simulation and sailfish AUV sea trial data and compared with the three conventional algorithms of PSO-UFastSLAM, UFastSLAM, and FastSLAM. The experimental results show the effectiveness of the proposed method. In the sea trial, the average accuracy of the proposed method is significantly improved compared with the conventional method.
Although the calculation time of the proposed algorithm can meet the needs of low-frequency navigation, it is longer than that of conventional algorithms. In the future work, we will investigate increasing the calculation speed and adaptively estimating the system noise parameters to improve the performance of the proposed algorithm further. Subsequently, anomaly detection will be added to improve the coarse impact of the noise estimation algorithm, such as judging the divergence of the filtering process and introducing fading factors and adaptive coefficients for adjustment. Additionally, the impact of ocean currents and other factors on AUV navigation will be considered to improve accuracy.

Author Contributions

Conceptualization, L.Z., X.Z. and B.H.; methodology, L.Z.; software, L.Z. and X.Z.; validation, M.W., L.Z. and X.Z.; formal analysis, B.H. and P.Q.; investigation, M.W.; resources, B.H.; data curation, P.Q.; writing—original draft preparation, L.Z.; writing—review and editing, L.Z., X.Z. and B.H.; visualization, L.Z.; supervision, B.H.; project administration, P.Q.; funding acquisition, M.W. All authors have read and agreed to the published version of the manuscript.

Funding

This work is supported by the National Laboratory of Marine Science and Technology Pilot of Shandong Provincial Ocean Science and Technology Foundation (Qingdao) (No. 2018SDKJ0102-7) and the National Key Research and Development Program of China (No. 2016YFC0301400).

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

SLAMSimultaneous Localization and Mapping
AUVAutonomous Underwater Vehicle
SAPSO-AUFastSLAMSimulated Annealing Particle Swarm Optimization-Adaptive
Unscented FastSLAM
SHSage–Husa
UTUnscented Transformation
PFParticle Filter
UPFUnscented Particle Filter
KFKalman Filter
UKFUnscented Kalman Filter
EKFExtended Kalman Filter
RBPFRao–Blackwell Particle Filter
DRDead Reckoning
GSAGravity Search Algorithm
LSOLion Swarm Optimization
INSInertial Navigation System
DVLDoppler Velocity Logging
MSISMechanical Scanning Imaging Sonar
ASVSFAdaptive Smoothing Variable Structure Filter
MLEMaximum Likelihood Estimation
EMExpectation–Maximization
VBVariational Bayesian
RMSERoot Mean Square Error
IMUInertial Measurement Unit

Appendix A. The Time Update Step in UPF

In this stage, the state space and covariance of each particle at the previous moment are augmented, and the prior value and control information are fused. We assume that the process noise follows a Gaussian distribution with mean zero and covariance Q. State space and covariance can be described as
X k 1 aug , [ i ] = X k 1 [ i ] 0 = x k 1 [ i ] y k 1 [ i ] φ k 1 [ i ] 0 ,
P k 1 aug , [ i ] = P k 1 [ i ] 0 0 Q ,
where X k 1 aug , [ i ] represents the augmented AUV state matrix in the i-th particle at time k 1 . P k 1 aug , [ i ] represents the augmented AUV covariance matrix. Q is determined to the default value, as follows:
Q = σ v x 2 0 0 0 σ v y 2 0 0 0 σ w n 2
where σ v x 2 indicates the horizontal speed error, and σ v y 2 represents the vertical velocity error. σ w n 2 stands for the angular velocity error. Based on the UT, we approximate the prior distribution by sampling sigma points from the augmented state space. The formula is described as follows:
χ k 1 ] k 1 , j aug , [ i ] = X k 1 aug , [ i ] , j = 0 χ k 1 k 1 , j aug , [ i ] = X k 1 aug , [ ij + ( m + λ ) P k 1 aug , [ i ] , j = 1 , 2 , m χ k 1 k 1 , j aug , [ i ] = X k 1 aug , [ i ] ( m + λ ) P k 1 aug , [ i ] , j = m + 1 , 2 m
The corresponding weights for computing the predicted mean and covariance can be computed as (18). The value of the sigma point set is transferred through the AUV SLAM motion model shown in (4), and the nonlinear state function can be expressed as follows:
χ k k 1 [ i ] = f χ k 1 k 1 [ i ] , χ k u [ i ] + u k = χ k k 1 x , [ i ] χ k k 1 y , [ i ] χ k k 1 φ , [ i ]
The predicted mean and covariance can be obtained by weighted summation of the transformed sigma points, which can be defined as
X k k 1 [ i ] = j = 0 2 m w m j · χ k k 1 , j [ i ] ,
P k k 1 [ i ] = j = 0 2 m w c j · χ k k 1 , j [ i ] X k k 1 [ i ] χ k k 1 , j [ i ] X k k 1 [ i ] T

References

  1. Paull, L.; Saeedi, S.; Seto, M.; Li, H. AUV navigation and localization: A review. IEEE J. Ocean. Eng. 2013, 39, 131–149. [Google Scholar] [CrossRef]
  2. Wakita, N.; Hirokawa, K.; Ichikawa, T.; Yamauchi, Y. Development of autonomous underwater vehicle (AUV) for exploring deep sea marine mineral resources. Mitsubishi Heavy Ind. Tech. Rev. 2010, 47, 73–80. [Google Scholar]
  3. Liu, W.; Quijano, K.; Crawford, M.M. YOLOv5-Tassel: Detecting tassels in RGB UAV imagery with improved YOLOv5 based on transfer learning. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2022, 15, 8085–8094. [Google Scholar] [CrossRef]
  4. Xia, X.; Meng, Z.; Han, X.; Li, H.; Tsukiji, T.; Xu, R.; Ma, J. Automated Driving Systems Data Acquisition and Processing Platform. arXiv 2022, arXiv:2211.13425. [Google Scholar] [CrossRef]
  5. Gao, L.; Xiong, L.; Xia, X.; Lu, Y.; Yu, Z.; Khajepour, A. Improved vehicle localization using on-board sensors and vehicle lateral velocity. IEEE Sens. J. 2022, 22, 6818–6831. [Google Scholar] [CrossRef]
  6. Durrant-Whyte, H.; Bailey, T. Simultaneous localization and mapping: Part I. IEEE Robot. Autom. Mag. 2006, 13, 99–110. [Google Scholar] [CrossRef]
  7. Bailey, T.; Durrant-Whyte, H. Simultaneous localization and mapping (SLAM): Part II. IEEE Robot. Autom. Mag. 2006, 13, 108–117. [Google Scholar] [CrossRef]
  8. Kukko, A.; Kaijaluoto, R.; Kaartinen, H.; Lehtola, V.V.; Jaakkola, A.; Hyyppä, J. Graph SLAM correction for single scanner MLS forest data under boreal forest canopy. ISPRS J. Photogramm. Remote Sens. 2017, 132, 199–209. [Google Scholar] [CrossRef]
  9. 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]
  10. Pierzchała, M.; Giguère, P.; Astrup, R. Mapping forests using an unmanned ground vehicle with 3D LiDAR and graph-SLAM. Comput. Electron. Agric. 2018, 145, 217–225. [Google Scholar] [CrossRef]
  11. Paull, L.; Huang, G.; Seto, M.; Leonard, J.J. Communication-constrained multi-AUV cooperative SLAM. In Proceedings of the 2015 IEEE International Conference on Robotics and Auto mation (ICRA), Seattle, WA, USA, 26–30 May 2015; pp. 509–516. [Google Scholar] [CrossRef]
  12. Ma, T.; Li, Y.; Wang, R.; Cong, Z.; Gong, Y. AUV robust bathymetric simultaneous localization and mapping. Ocean Eng. 2018, 166, 336–349. [Google Scholar] [CrossRef]
  13. Carrasco, P.L.N.; Bonin-Font, F.; Campos, M.M.; Codina, G.O. Stereo-vision graph-SLAM for robust navigation of the AUV SPARUS II. IFAC-PapersOnLine 2015, 48, 200–205. [Google Scholar] [CrossRef]
  14. Hargrave, P.J. A tutorial introduction to Kalman filtering. In Proceedings of the IEEE Colloquium on Kalman Filters: Introduction, Applications and Future Developments, London, UK, 21–21 February 1989; pp. 1/1–1/6. [Google Scholar]
  15. Xia, X.; Hashemi, E.; Xiong, L.; Khajepour, A. Autonomous Vehicle Kinematics and Dynamics Synthesis for Sideslip Angle Estimation Based on Consensus Kalman Filter. IEEE Trans. Control. Syst. Technol. 2022, 31, 179–192. [Google Scholar] [CrossRef]
  16. Xiong, L.; Xia, X.; Lu, Y.; Liu, W.; Gao, L.; Song, S.; Yu, Z. IMU-based automated vehicle body sideslip angle and attitude estimation aided by GNSS using parallel adaptive Kalman filters. IEEE Trans. Veh. Technol. 2020, 69, 10668–10680. [Google Scholar] [CrossRef]
  17. Liu, W.; Xia, X.; Xiong, L.; Lu, Y.; Gao, L.; Yu, Z. Automated vehicle sideslip angle estimation considering signal measurement characteristic. IEEE Sens. J. 2021, 21, 21675–21687. [Google Scholar] [CrossRef]
  18. Xia, X.; Xiong, L.; Huang, Y.; Lu, Y.; Gao, L.; Xu, N.; Yu, Z. Estimation on IMU yaw misalignment by fusing information of automotive onboard sensors. Mech. Syst. Signal Process. 2022, 162, 107993. [Google Scholar] [CrossRef]
  19. Rauniyar, S.; Bhalla, S.; Choi, D.; Kim, D. EKF-SLAM for Quadcopter Using Differential Flatness-Based LQR Control. Electronics 2023, 12, 1113. [Google Scholar] [CrossRef]
  20. 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] [CrossRef]
  21. Huang, G.P.; Mourikis, A.I.; Roumeliotis, S.I. On the complexity and consistency of UKF-based SLAM. In Proceedings of the 2009 IEEE International Conference on Robotics and Automation, Kobe, Japan, 12–17 May 2009; pp. 4401–4408. [Google Scholar] [CrossRef]
  22. Montemerlo, M.; Thrun, S.; Koller, D.; Wegbreit, B. FastSLAM: A factored solution to the simultaneous localization and mapping problem. In Proceedings of the Eighteenth National Conference on Artificial Intelligence, Edmonton, AB, Canada, 28 July–1 August 2002; pp. 593–598. [Google Scholar]
  23. Thrun, S.; Montemerlo, M.; Koller, D.; Wegbreit, B.; Nieto, J.; Nebot, E. Fastslam: An efficient solution to the simultaneous localization and mapping problem with unknown data association. J. Mach. Learn. Res. 2004, 4, 380–407. [Google Scholar]
  24. Murphy, K.; Russell, S. Rao-Blackwellised particle filtering for dynamic Bayesian networks. Seq. Monte Carlo Methods Pract. 2001, 499–515. [Google Scholar] [CrossRef]
  25. Montemerlo, M.; Thrun, S.; Koller, D.; Wegbreit, B. FastSLAM 2.0: An improved particle filtering algorithm for simultaneous localization and mapping that provably converges. IJCAI 2003, 3, 1151–1156. [Google Scholar]
  26. Havangi, R.; Nekoui, M.A.; Taghirad, H.D.; Teshnehlab, M. An intelligent UFastSLAM with MCMC move step. Adv. Robot. 2013, 27, 311–324. [Google Scholar] [CrossRef]
  27. He, B.; Ying, L.; Zhang, S.; Feng, X.; Yan, T.; Nian, R.; Shen, Y. Autonomous navigation based on unscented-FastSLAM using particle swarm optimization for autonomous underwater vehicles. Measurement 2015, 71, 89–101. [Google Scholar] [CrossRef]
  28. Arulampalam, M.S.; Maskell, S.; Gordon, N.; Clapp, T. A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking. IEEE Trans. Signal Process. 2002, 50, 174–188. [Google Scholar] [CrossRef]
  29. Douc, R.; Cappé, O. Comparison of resampling schemes for particle filtering. In Proceedings of the ISPA 2005 4th International Symposium on Image and Signal Processing and Analysis, Zagreb, Croatia, 15–17 September 2005; pp. 64–69. [Google Scholar] [CrossRef]
  30. Hol, J.D.; Schon, T.B.; Gustafsson, F. On resampling algorithms for particle filters. In Proceedings of the 2006 IEEE Nonlinear Statistical Signal Processing Workshop, Cambridge, UK, 13–15 September 2006; pp. 79–82. [Google Scholar] [CrossRef]
  31. Lei, X.; Feng, B.; Wang, G.; Liu, W.; Yang, Y. A Novel FastSLAM Framework Based on 2D Lidar for Autonomous Mobile Robot. Electronics 2020, 9, 695. [Google Scholar] [CrossRef]
  32. Hua, J.; Cheng, M. Improved UFastSLAM Algorithm based on Particle Filter. In Proceedings of the 2020 IEEE 9th Joint International Information Technology and Artificial Intelligence Conference (ITAIC), Chongqing, China, 11–13 December 2020; pp. 1050–1055. [Google Scholar] [CrossRef]
  33. Zhang, D.; Zhang, X.; Zhai, N.; Chen, Z.; He, B. Research on UFastSLAM Algorithm Based on Gravity Search Algorithm. In Proceedings of the OCEANS 2022, Hampton Roads, VA, USA, 17–20 October 2022; pp. 1–5. [Google Scholar] [CrossRef]
  34. Zhu, D.; Ma, Y.; Wang, M.; Yang, J.; Yin, Y.; Liu, S. LSO-FastSLAM: A new algorithm to improve the accuracy of localization and mapping for rescue robots. Sensors 2022, 22, 1297. [Google Scholar] [CrossRef]
  35. Ran, X.; Bian, H.; Zhang, G.; Sun, Y. Hierarchical Motion Planning of AUVs in Three Typical Marine Environments. Electronics 2021, 10, 292. [Google Scholar] [CrossRef]
  36. Tian, Y.; Suwoyo, H.; Wang, W.; Li, L. An asvsf-slam algorithm with time-varying noise statistics based on map creation and weighted exponent. Math. Probl. Eng. 2019, 2019, 2765731. [Google Scholar] [CrossRef]
  37. Tian, Y.; Suwoyo, H.; Wang, W.; Mbemba, D.; Li, L. An AEKF-SLAM algorithm with recursive noise statistic based on MLE and EM. J. Intell. Robot. Syst. 2020, 97, 339–355. [Google Scholar] [CrossRef]
  38. Mu, P.; Zhang, X.; Qin, P.; He, B. A Variational Bayesian-Based Simultaneous Localization and Mapping Method for Autonomous Underwater Vehicle Navigation. J. Mar. Sci. Eng. 2022, 10, 1563. [Google Scholar] [CrossRef]
  39. Yang, L.; Li, C.; Song, W.; Li, Z. Innovation-Superposed Simultaneous Localization and Mapping of Mobile Robots Based on Limited Augmentation. Electronics 2023, 12, 587. [Google Scholar] [CrossRef]
  40. He, B.; Zhang, H.; Li, C.; Zhang, S.; Liang, Y.; Yan, T. Autonomous Navigation for Autonomous Underwater Vehicles Based on Information Filters and Active Sensing. Sensors 2011, 11, 10958–10980. [Google Scholar] [CrossRef] [PubMed]
  41. Kim, C.; Sakthivel, R.; Chung, W.K. Unscented FastSLAM: A robust and efficient solution to the SLAM problem. IEEE Trans. Robot. 2008, 24, 808–820. [Google Scholar] [CrossRef]
  42. Marini, F.; Walczak, B. Particle swarm optimization (PSO). A tutorial. Chemom. Intell. Lab. Syst. 2015, 149, 153–165. [Google Scholar] [CrossRef]
  43. Crisan, D.; Obanubi, O. Particle filters with random resampling times. Stoch. Process. Their Appl. 2012, 122, 1332–1368. [Google Scholar] [CrossRef]
  44. Liu, D.; Duan, J.; Shi, H. A strong tracking square root central difference FastSLAM for unmanned intelligent vehicle with adaptive partial systematic resampling. IEEE Trans. Intell. Transp. Syst. 2016, 17, 3110–3120. [Google Scholar] [CrossRef]
  45. Wang, Y.; Sun, Y.; Dinavahi, V. Robust forecasting-aided state estimation for power system against uncertainties. IEEE Trans. Power Syst. 2019, 35, 691–702. [Google Scholar] [CrossRef]
  46. Rui, S. A modified adaptive particle swarm optimization algorithm. In Proceedings of the 2016 12th International Conference on Computational Intelligence and Security (CIS), Wuxi, China, 16–19 December 2016; pp. 511–513. [Google Scholar] [CrossRef]
  47. Ji, C.; Chen, Q.; Song, C. Improved particle swarm optimization geomagnetic matching algorithm based on simulated annealing. IEEE Access 2020, 8, 226064–226073. [Google Scholar] [CrossRef]
  48. Xu, N.; Wang, L.; Wu, T.; Yao, Z. An innovative PSO-ICCP matching algorithm for geomagnetic navigation. Measurement 2022, 193, 110958. [Google Scholar] [CrossRef]
  49. Ingber, L. Simulated annealing: Practice versus theory. Math. Comput. Model. 1993, 18, 29–57. [Google Scholar] [CrossRef]
Figure 1. Coordinate system transformation of AUV. The subscript G indicates the north–east–down coordinate system used for navigation, and the subscript R indicates the front–right–down coordinate system of the AUV.
Figure 1. Coordinate system transformation of AUV. The subscript G indicates the north–east–down coordinate system used for navigation, and the subscript R indicates the front–right–down coordinate system of the AUV.
Electronics 12 02372 g001
Figure 2. Diagram of the proposed SAPSO-AUFastSLAM.
Figure 2. Diagram of the proposed SAPSO-AUFastSLAM.
Electronics 12 02372 g002
Figure 3. SH-UKF flow chart.
Figure 3. SH-UKF flow chart.
Electronics 12 02372 g003
Figure 4. Monte Carlo experimental results on the simulation case 1. (a) Trajectory and Feature Estimation; (b) the RMSE of 300 Monte Carlo runs.
Figure 4. Monte Carlo experimental results on the simulation case 1. (a) Trajectory and Feature Estimation; (b) the RMSE of 300 Monte Carlo runs.
Electronics 12 02372 g004
Figure 5. Monte Carlo experimental results of simulation case 2. (a) Trajectory and feature estimation. (b) RMSE of 300 Monte Carlo runs.
Figure 5. Monte Carlo experimental results of simulation case 2. (a) Trajectory and feature estimation. (b) RMSE of 300 Monte Carlo runs.
Electronics 12 02372 g005
Figure 6. The error comparison results on simulation case 1. (a) Position estimation error. (b) Feature estimation error.
Figure 6. The error comparison results on simulation case 1. (a) Position estimation error. (b) Feature estimation error.
Electronics 12 02372 g006
Figure 7. The error comparison results on simulation case 2. (a) Position estimation error. (b) Feature estimation error.
Figure 7. The error comparison results on simulation case 2. (a) Position estimation error. (b) Feature estimation error.
Electronics 12 02372 g007
Figure 8. The non-stationary noise simulation process.
Figure 8. The non-stationary noise simulation process.
Electronics 12 02372 g008
Figure 9. The RMSE/running time of the robot location under different number of particles. (a) The RMSE compare; (b) The running time compare.
Figure 9. The RMSE/running time of the robot location under different number of particles. (a) The RMSE compare; (b) The running time compare.
Electronics 12 02372 g009
Figure 10. The No.1 sea trial platform. (a) The No.1 Sailfish-210 AUV. (b) The overall design block diagram.
Figure 10. The No.1 sea trial platform. (a) The No.1 Sailfish-210 AUV. (b) The overall design block diagram.
Electronics 12 02372 g010
Figure 11. The state estimation of experiment on the No.1 Sailfish-210 AUV. (a) Trajectory and feature estimation. (b) Enlarged local motion and feature.
Figure 11. The state estimation of experiment on the No.1 Sailfish-210 AUV. (a) Trajectory and feature estimation. (b) Enlarged local motion and feature.
Electronics 12 02372 g011
Figure 12. The error graphs of experiment on the No.1 Sailfish-210 AUV. (a) Trajectory and feature estimation; (b) position estimation error; (c) east position error; and (d) north position error.
Figure 12. The error graphs of experiment on the No.1 Sailfish-210 AUV. (a) Trajectory and feature estimation; (b) position estimation error; (c) east position error; and (d) north position error.
Electronics 12 02372 g012aElectronics 12 02372 g012b
Figure 13. The No.2 sea trial platform. (a) The No.2 Sailfish-210 AUV. (b) The overall design block diagram.
Figure 13. The No.2 sea trial platform. (a) The No.2 Sailfish-210 AUV. (b) The overall design block diagram.
Electronics 12 02372 g013
Figure 14. The state estimation of experiment on the No.2 Sailfish-210 AUV. (a) Trajectory and feature estimation. (b) Enlarged local estimation.
Figure 14. The state estimation of experiment on the No.2 Sailfish-210 AUV. (a) Trajectory and feature estimation. (b) Enlarged local estimation.
Electronics 12 02372 g014
Figure 15. The error graphs of experiment on the No.2 Sailfish-210 AUV. (a) Trajectory and feature estimation; (b) position estimation error; (c) east position error; and (d) north position error.
Figure 15. The error graphs of experiment on the No.2 Sailfish-210 AUV. (a) Trajectory and feature estimation; (b) position estimation error; (c) east position error; and (d) north position error.
Electronics 12 02372 g015
Table 1. Sonar configuration information.
Table 1. Sonar configuration information.
Sampling Points (Bins)Scanning Distance (m)Sampling Interval (cm)
2002010
Table 2. The initial simulation parameters.
Table 2. The initial simulation parameters.
ParametersValueMeaning
r 0 0observation noise mean
R 0 d i a g [ 0.01 , 0.0003 ] observation noise covariance
Q d i a g [ 0.09 , 0.0027 ] process noise covariance
Particles20number of particles
Temperature10annealing temperature
Table 3. Average statistical results of 300 Monte Carlo experiments.
Table 3. Average statistical results of 300 Monte Carlo experiments.
ParametersFastSLAMUFastSLAMPSO-UFastSLAMSAPSO-AUFastSLAM
Simulation case 1RMSE(m) 10.2574 7.8293 5.6866 3.8979
Accuracy(%) 1.56 1.19 0.86 0.59
Run time(s) 67.249120 73.052265 82.191906 93.437592
Simulation case 2RMSE(m) 6.8969 5.2529 3.6904 2.3454
Accuracy(%) 1.00 0.76 0.53 0.34
Run time(s) 80.270569 83.558731 90.288240 97.048751
Table 4. The average statistical results of different algorithms in dynamic noise environment.
Table 4. The average statistical results of different algorithms in dynamic noise environment.
VariablesParametersFastSLAMUFastSLAMPSO-UFastSLAMSAPSO-AUFastSLAM
P m = 0.1 P-RMSE (m) 5.468522 5.023337 2.262865 1.386561
F-RMSE (m) 9.474483 7.788813 4.403758 3.166521
N e f f 16.291506 16.375003 16.449501 17.843986
P m = 0.2 P-RMSE (m) 6.923035 6.509402 3.388484 1.780480
F-RMSE (m) 12.996229 11.618153 9.073089 5.959706
N e f f 15.042108 15.542667 15.979394 17.717086
P m = 0.4 P-RMSE (m) 9.039256 8.816732 3.904134 2.535749
F-RMSE (m) 18.125908 14.764936 12.061823 7.162695
N e f f 14.466835 15.233064 15.601916 17.700492
P m = 0.6 P-RMSE (m) 10.240571 9.923318 7.624019 2.614966
F-RMSE (m) 21.289047 18.586555 14.790571 7.429418
N e f f 13.184176 15.012112 15.571266 17.070549
P m = 0.8 P-RMSE (m) 16.355466 14.884618 11.957723 3.137172
F-RMSE (m) 26.446475 23.021594 16.366015 8.421068
N e f f 12.862332 13.192002 14.286121 16.419210
Table 5. The RMSE/running time with different particles.
Table 5. The RMSE/running time with different particles.
Particle NumberParametersFastSLAMUFastSLAMPSO-UFastSLAMSAPSO-AUFastSLAM
10RMSE (m)6.95455.78203.77962.8203
Time (s)57.79550663.26921673.03758584.306541
20RMSE (m)6.89695.99553.76702.7215
Time (s)67.05226573.24912082.19190693.437592
30RMSE (m)6.32055.90823.69042.6044
Time (s)90.44669097.46025198.155129100.351062
40RMSE (m)6.27645.27013.49372.5653
Time (s)127.754483128.262471130.007165136.641434
50RMSE (m)6.22425.25553.46452.4673
Time (s)136.921214137.700600140.136590145.603873
60RMSE (m)6.10385.25293.39262.3454
Time (s)145.610535147.274797155.407132165.645236
70RMSE (m)5.94454.82772.98492.2050
Time (s)147.782083152.052470157.941029177.088356
80RMSE (m)5.62254.88892.94581.8203
Time (s)169.021821173.807379175.848929182.919457
90RMSE (m)5.47654.84152.92941.8493
Time (s)179.571131179.720729189.834099198.945290
100RMSE (m)5.47044.77502.04051.8415
Time (s)191.781751191.360097194.632039203.538832
Table 6. The detailed specifications of the sensors on the No.1 AUV.
Table 6. The detailed specifications of the sensors on the No.1 AUV.
SensorsBrandPrecision
IMUSpatial 1750bias stability: ≤0.1 ° /h (maximum), ≤0.05 ° /h (average)
DVLExplorer DVLprecision: ± 1.15 %, ± 0.2 cm/s
GPSu-blox LEA-M8THorizontal position accuracy: 2.5 m, Range resolution: 7.5 mm
MSISTritech MicronMechanical resolution: 0 . 45 ° , 0 . 9 ° , 1 . 8 ° , 3 . 6 °
Table 7. The detailed specifications of the sensors on the No.2 AUV.
Table 7. The detailed specifications of the sensors on the No.2 AUV.
SensorsBrandPrecision
INSHN100bias stability: ≤ 0 . 05 ° /h
DVLPathfinder DVLprecision: ± 1.15 % , ± 0.2 cm/s
GPSu-blox LEA-M8THorizontal position accuracy: 2.5 m, Range resolution: 7.5 mm
MSISTritech MicronMechanical resolution: 0 . 45 ° , 0 . 9 ° , 1 . 8 ° , 3 . 6 °
Table 8. The specific statistical results of the AUV sea trial.
Table 8. The specific statistical results of the AUV sea trial.
DatasetsParametersFastSLAMUFastSLAMPSO-UFastSLAMSAPSO-AUFastSLAM
Sea trial 1RMSE (m)5.6534.7594.7204.322
ERMSE (m)4.9004.4424.3763.991
NRMSE (m)2.8191.7081.7681.659
Accuracy (%)2.2301.8771.8621.705
Step time (s)0.01580.01770.01790.0233
Total time (s)44.5650.0450.5865.75
Sea trial 2RMSE (m)4.5394.4454.4234.310
ERMSE (m)1.6551.4751.4951.397
NRMSE (m)4.2274.1934.1624.077
Accuracy (%)0.9650.9440.9400.916
Step time (s)0.01490.01910.02020.0232
Total time (s)94.30120.56127.66146.55
Step time represents the single-step running time of the AUV sea trial. Total time represents the total running time of the AUV sea trial. ERMSE indicates the eastern RMSE of AUV localization. NRMSE indicates the northern RMSE of AUV localization.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zhou, L.; Wang, M.; Zhang, X.; Qin, P.; He, B. Adaptive SLAM Methodology Based on Simulated Annealing Particle Swarm Optimization for AUV Navigation. Electronics 2023, 12, 2372. https://doi.org/10.3390/electronics12112372

AMA Style

Zhou L, Wang M, Zhang X, Qin P, He B. Adaptive SLAM Methodology Based on Simulated Annealing Particle Swarm Optimization for AUV Navigation. Electronics. 2023; 12(11):2372. https://doi.org/10.3390/electronics12112372

Chicago/Turabian Style

Zhou, Liqian, Meng Wang, Xin Zhang, Ping Qin, and Bo He. 2023. "Adaptive SLAM Methodology Based on Simulated Annealing Particle Swarm Optimization for AUV Navigation" Electronics 12, no. 11: 2372. https://doi.org/10.3390/electronics12112372

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