1. Introduction
The loosely integrated inertial navigation system (INS) and global navigation satellite system (GNSS) corrects INS errors and helps INS to complete navigation tasks by providing the velocity and position of the GNSS. However, GNSS signals are extremely weak when they reach the ground, hence, the signals are vulnerable to interference [
1] such as radio signals that fall into the navigation signal pass band and multipath interference caused by reflection, scattering [
2] or obstruction from buildings, tunnels and trees [
3]. All of these interferences can lead to unknown noise statistics in GNSS navigation parameters. Thus, GNSS is unable to output accurate navigation information and eventually the INS/GNSS integration is unable to work properly.
The results of interference on GNSS parameters can be divided into three categories according to various studies. The first is GNSS outages. Because the GNSS cannot output navigation parameters, it is unable to complete auxiliary tasks [
4]. Researchers usually solve such cases of interference by machine learning methods, such as neural network [
5], regression algorithm [
6], fault detection and isolation [
7] or multiple receivers [
8]. The second result is outliers in the GNSS navigation parameters [
9]. For this type of interference, researchers usually set up the Student’s model to solve these issues [
10]. The third outcome is that the navigation accuracy of the GNSS is lower than the accuracy without interference, but it can still complete auxiliary tasks, for example, the time-varying noise caused by interference. In this paper, the third type of interference noise will be researched.
The adaptive Kalman filter (AKF) is the most common method to solve the problem of time-varying noise [
11]. The Sage–Husa AKF estimates the noise statistics recursively based on the maximum a posterior criterion [
12,
13]. However, the measurement noise of the actual system may be too small compared with the theoretical value, or the initial state noise setting might be too large, which results in the measurement noise covariance matrix (MNCM) losing its positivity and causes filtering divergence. Li et al. presented a multiple model AKF (MMAKF), which can deal with the model uncertainty by operating a bank of Kalman filters with different models simultaneously [
14]. However, the MMAKF suffers from substantial computational complexities, and thus, MMAKF has poor real-time performance. Simo et al. first proposed the variational Bayesian (VB) AKF (VBAKF) model to solve the time-varying noise problem [
15]. The VBAKF algorithm iteratively estimates the MNCM by using the variational inference (VI) method. The VBAKF algorithm is currently favored by many scholars because of its low computation requirements and accurate estimation. Li et al. applied VBAKF in target tracking to achieve accurate estimation of targets [
16]. Shen et al. used VBAKF in INS/GNSS integration to estimate unknown MNCM [
17]. Yu et al. proposed a series of VB nonlinear filtering for unknown MNCM, such as the VB Extended Kalman Filter (VBEKF), VB Untraced Kalman Filter (VBUKF), etc. [
18]. The VB Cubature Kalman Filter (VBCKF) method was proposed to improve the estimation accuracy of nonlinear systems in [
19]. VB and Monte Carlo sampling were used to solve the unknown measurement noise and uncertain parameters in [
20]. Huang et al. solved the problem of inaccurate measurement noise and process noise with VBAKF [
11]. However, Xu et al. proposed that the distribution of the process noise covariance matrix (PNCM) and the distribution of system state are non-conjugate, which cannot be solved directly by VBAKF. Therefore, they solved the inaccurate PNCM by black box variational inference (BBVI) [
21].
In the existing anti-jamming methods based on VBAKF, to satisfy the conjugate conditions of the VBAKF algorithm, the prior distribution of MNCM was assumed to be an Inv-Gamma distribution or Inv-Wishart distribution. However, in the trial data of INS/GNSS integration, it was found that the time-varying noise was more similar to the Gaussian distribution with a changeable mean value. Therefore, in order to ensure the assumed approximate distribution was closer to the real distribution and estimate the MNCM more accurately, the Gaussian distribution was proposed as the prior distribution of MNCM in this paper. However, this assumption leads to a non-conjugate problem between the prior distribution and likelihood distribution. For this reason, the VBAKF algorithm cannot be used to estimate MNCM.
We learnt from [
21], which used BBVI to solve the non-conjugate problem between the PNCM distribution and system state distribution. In this paper, a novel anti-jamming technique for INS/GNSS integration based on black box variational inference was proposed. We assumed the prior distribution of the MNCM was a Gaussian distribution. Then, we estimated the gradient of the Gaussian distribution parameters by using the BBVI algorithm. Lastly, we calculated the MNCM by using the parameters. The proposed algorithm and existing VBAKF were applied to the problem of INS/GNSS integration with time-varying measurement noise. Experimental results show that the proposed filter has a smaller root mean square error (RMSE) than existing VBAKF methods.
The remainder of the paper is organized as follows. First, we analyze the problems of VBAKF estimates of MNCM in the INS/GNSS integration. Second, the novel anti-jamming algorithm for INS/GNSS integration is presented. Third, the experimental results are analyzed and discussed. Finally, the conclusions are presented.
2. Problem Description
In this section, first, we establish the system models of INS/GNSS integration. Then, the influence of time-varying noise on the system is analyzed, and the VBAKF estimation method of MNCM is introduced. Finally, we analyze the distribution type of time-varying noise and the problems related to the existing VBAKF algorithm.
2.1. INS/GNSS Integration System Model
The loosely integrated INS/GNSS navigation system can output information on velocity, position, and attitude with the measurement information for velocity and position. The system models as follows.
As the application background in this paper is vehicle navigation, the navigation parameters of the horizontal are required to be higher. So, for the velocity and position parameters, we only take their horizontal parameters to establish the state equations. We take the errors of horizontal velocity, horizontal position, platform angles, accelerometer bias, and gyroscope bias as the state vectors [
22], which can be written as
where
is the state vector,
and
are the horizontal velocity errors,
and
are the horizontal position errors,
,
, and
are the misalignment angles,
,
, and
are the accelerometer bias,
,
, and
are the gyroscope bias.
The measurement vectors derived from the difference between the velocity and position from the INS and GNSS can be given by
where
is the measurement vector,
and
are the horizontal velocity of INS and GNSS, respectively, and
and
are the horizontal position of INS and GNSS, respectively.
The state equations and measurement equations of the system are established based on the navigation coordinate system. The system models can be described as
where
Φ is
the one-step state transition matrix,
W is system noise,
is the measurement matrix.
is the measurement noise.
The state equations of Equation (1) are described in detail as follows.
where
are the horizontal velocities,
are the horizontal positions,
is the angular rate of the earth’s rotation,
and
are the earth radius,
are the specific force.
In order to clearly describe the effect of time-varying noise on INS/GNSS integration, we conducted a simulation experiment. INS/GNSS integration operates without interference for 10 min. Then, the standard deviation of random white noise at the GNSS east and north position was increased from 5 m to 50 m. The standard deviation of random white noise at the east and north velocity was increased from 0.2 m/s to 2 m/s. The interference lasted for 5 min and then returned to the non-interference state. The total time of the simulation was 30 min. The influence of the time-varying noise on the velocity and position errors are shown in
Figure 1 and
Figure 2.
As demonstrated in
Figure 1 and
Figure 2, the velocity and position have large unsteady errors when time-varying noise appears in the measurement information. Therefore, it is necessary to estimate the accurate value of the MNCM to suppress the interference caused by time-varying noise to the navigation system.
2.2. Estimating MNCM with VBAKF
The statistical characteristics of V will be changed when GNSS is disturbed. Consequently, the MNCM is uncertain. At this point, if we continue to use the MNCM of the initial setting, the estimated values of the navigation parameters are not accurate. Therefore, MNCM should be estimated accurately to improve navigation accuracy.
The idea of estimating MNCM by VBAKF can be summarized as follows. First, the real distribution of MNCM is replaced with an approximate distribution. Then, Kullback–Leibler divergence (KLD) is used to measure the degree of similarity between the approximate distribution and the real distribution. When the evidence lower bound (ELB) reaches the maximum value, the KLD value is zero. That is, the approximate distribution is equal to the real distribution. Thus, the problem of estimating MNCM turns into the problem of solving the maximum value of ELB. The ELB maximum value can be solved by the VB general formula. However, the condition for using the VB general formula to solve the ELB maximum value is that the approximate distribution and likelihood distributions must be conjugate.
The steps for estimating time-varying MNCM by VBAKF are as follows.
In the framework of the Kalman filter, the likelihood distribution
is a Gaussian distribution, i.e.,
where
is the MNCM.
denote the Gaussian probability density function (PDF).
In order to satisfy the conjugate condition, the prior distribution of MNCM
is assumed to be an Inv-Gamma distribution or Inv-Wishart distribution. We take the Inv-Gamma distribution, for example. It can be described as
where
d is the dimensions of
R.
and
are the parameters of the Inv-Gamma distribution.
denotes the Inv-Gamma PDF.
After the kth observation, we will replace with a new approximate distribution . For simplicity, we omit the statement that the parameter Rk is dependent on Z1:k in the approximate distribution. Thus, the new approximate distribution can be expressed as .
According to the VB general formula, and taking the log of both sides of the general formula, we can obtain the ELB, which can be expressed as
where
C is the constants.
The VB general formula used in (5) can be described as
where E[∙] denotes the expectation of
.
According to (5) and the logarithm of the Inv-Gamma PDF, we can see that
Rk still obeys the Inv-Gamma distribution, which can be described as
According to the characteristics of the Inv-Gamma PDF, the expressions of the parameters are given by
with
where
P is the predicted error covariance matrix.
According to the characteristics of the Inv-Gamma distribution, the MNCM estimation can be expressed as
2.3. Measurement Noise Analyses
The distribution of the time-varying noise caused by GNSS signals interference is most similar to Gaussian distribution with a time-varying mean value. However, Inv-Gamma distribution or Inv-Wishart distribution is assumed as the prior distribution of the MNCM, when estimating the MNCM by VBAKF algorithm. All of this is to ensure the prior distribution and the likelihood distribution conjugate. Therefore, it will affect the estimation accuracy of the MNCM.
In order to prove the correctness of the above discussion, KLD was used to calculate the degree of similarity between time-varying noise and each distribution. We took a piece of trial data from the GNSS as an example. The time-varying noise of the GNSS east position is shown in
Figure 3, where the data is derived from near the Airport Road. The distribution of the MNCM of the east position is shown in
Figure 4. The Gaussian, Inv-Gamma, and Inv-Wishart distributions are shown in
Figure 5.
From
Figure 4 and
Figure 5, we can see that the time-varying noise still conforms to the Gaussian distribution, it is just that the mean value has changed. However, the distribution of time-varying noise is not similar to the Inv-Gamma and Inv-Wishart distributions. Next, we analyze the similarity between the noise distribution and each approximate distribution based on KLD.
The KLD formula is as follows
where
denotes the distribution of the GNSS east position time-varying noise.
denote the Gaussian, Inv-Gamma, or Inv-Wishart distribution. N is the number of samples.
According to (12), we can obtain the average Kullback–Leibler divergence (AKLD), which be defined as
where
M = 500 denote the numbers of experiment.
The AKLD values for each distribution and time-varying noise are shown in
Table 1.
It can be seen from
Table 1 that the Gaussian distribution is more similar to the distribution of the time-varying noise. However, the Inv-Gamma and Inv-Wishart distribution have poor similarity with the time-varying noise distribution.
4. Experimental Results and Analyses
In a previous study, the performance of the VBAKF was compared with the existing AKF in dealing with time-varying MNCM, and VBAKF proved to be superior to the existing AKF [
11]. Therefore, we only compared the BBVI with the VBAKF algorithm, whose prior distribution is an approximate Inv-Gamma and Inv-Wishart distribution. Furthermore, the performance of the BBVIF anti-jamming algorithm with Gaussian distribution was verified by simulation and trial data.
4.1. Experiments with Simulation Data
The validity of the proposed algorithm was verified by simulations. The simulation conditions are set as follows.
The initial position is latitude 45.783898 degrees north and longitude 126.69458 degrees east. The Simulation lasts 60 min.
The specifications of the INS and GNSS are listed in
Table 2.
Interference conditions are set as follows.
The ranges of interference: (20 min–25 min) and (40 min–45 min). Velocity error of GNSS: 3 m/s. Position error of GNSS: 15 m.
According to the above interference settings, the variation in GNSS velocities’ noise and position noise caused by interference are shown in
Figure 7 and
Figure 8.
To evaluate the accuracy of the methods, the RMSE of velocity and position were used as performance metrics. It was defined as
where
denotes the true navigation parameters, and
is the estimated navigation parameters.
represents the total number of Mont Carlo runs.
A previous study proved the influence of different sample numbers on the BBVI method [
21], and concluded that the algorithm has the fastest convergence speed when
S = 50. Thus,
S = 50 was selected as the sample number in this paper. In addition, the parameters of the proposed method were set as
Before the navigation parameters of each algorithm were shown, we used Inv-Gamma, Inv-Wishart and Gaussian prior models to estimate the MNCM values. We take the north velocity for example, and the estimated MNCM values and the true MNCM values of the north velocity are shown in the
Figure 9.
For a clearer description of the estimated MNCM values, a larger version of
Figure 10 is shown in
Figure 9.
It can be seen from
Figure 9 and
Figure 10 that all three models can estimate the MNCM values of north velocity. It shows that all three methods can play an anti-jamming role. However, the MNCM values estimated by Inv-Gamma and Inv-Wishart prior models were both smaller than the true MNCM values, and the MNCM estimated by the Gaussian prior model is more accurate than the other two models. This would lead to inaccurate estimation of navigation parameters by the Inv-Gamma or Inv-Wishart models. Therefore, the anti-jamming effect is not as good as the proposed algorithm.
We evaluated the anti-jamming effect of each algorithm from the estimated navigation parameters. The RMSEs of the velocity and position from the existing VBAKF and the proposed algorithm are shown in
Figure 11 and
Figure 12, respectively.
Table 3 shows the RMSEs of the velocity and position from existing VBAKF and the proposed algorithm, respectively.
Figure 11 and
Figure 12 and
Table 3 show that the proposed algorithm with the prior Gaussian distribution has smaller RMSEs than the existing VBAKF algorithm with the prior distribution of Inv-Gamma or Inv-Wishart. The velocity and position accuracy of the proposed method is 3–4 times and 1–2 times higher than the existing VBAKF method, respectively. It also can be seen that the RMSEs of the velocity and position for the VBAKF based on the prior distribution of Inv-Gamma are similar to those estimated by the VBAKF based on the prior distribution of Inv-Wishart. The latter has a slightly higher accuracy compared with the former.
The simulation results and analyses proved that the prior distribution of MNCM is closer to the Gaussian distribution. Moreover, the correctness of the navigation parameters and effectiveness of the anti-jamming by the proposed algorithm were also proven.
4.2. Experiments with Trial Data
Simulation results showed the validity of the proposed method. Then, the feasibility and practicality of the proposed algorithm in engineering was verified by trial data.
The trial data was derived from near the Airport Road. The INS/GNSS integration system was composed of a laser inertial navigation system (LINS) and GNSS. The accuracy of the LINS is 1.5 n mile/h. The output rate is 400 HZ. The position and velocity accuracy of GNSS are 10 m and 5 m/s, respectively. The output rate is 1 HZ. The true value of the navigation parameters are given by the PHINS, which was provided by the IXSEA company. The experimental platform is shown in
Figure 13.
As the radio signals fall right into the navigation signal pass band or there is multipath interference caused by buildings, the noise of the GNSS navigation parameters is time-varying. The time-varying interference noise is shown in
Figure 3.
The BBVIF anti-jamming algorithm with Gaussian distribution was compared with the VBAKF algorithm with Inv-Gamma or Inv-Wishart distribution by using the trial data. The RMSEs of the velocity and position are shown in
Figure 14 and
Figure 15 and
Table 4. Furthermore, driving trajectories of the anti-jamming algorithms described above and the reference value provided by PHINS are shown in
Figure 16. To see the driving trajectories more clearly, we have magnified a corner of the trajectories, and this is shown in the bottom right corner of
Figure 16.
The results based on the trial data show that all three methods can complete the task of anti-jamming, which is the same as the simulations. The accuracy of the navigation parameters from the BBVIF with Gaussian distribution is higher than the VBAKF with Inv-Gamma or Inv-Wishart distribution. The velocity and position accuracy of the proposed method is approximately 3 times higher than the existing VBAKF method. It is because of the time-varying noise is more similar to Gaussian. Therefore, the BBVIF with Gaussian distribution estimate is more accurate than the other two algorithms. This experimental result proved that the proposed algorithm is feasible and practical in engineering applications.
5. Discussion
Here, we have presented a novel anti-jamming technique for integration based on BBVI. First, KLD was used to prove that compared with Inv-Gamma or Inv-Wishart distributions, the Gaussian distribution with time-varying mean value is closer to the time-varying noise. Accordingly, the prior distribution of the MNCM was assumed to be Gaussian. Second, to solve the problem that the VBAKF cannot be applied when the prior distribution and likelihood distribution are non-conjugate, we proposed the use of the BBVI method, which is based on stochastic optimization, instead of the VI method to estimate the time-varying MNCM. Finally, the validity and engineering practicality of the proposed method were verified by simulations and trial data. This novel anti-jamming algorithm, which deals with time-varying measurement noise provides more accurate estimation and stronger anti-jamming performance than previous methods. Significantly, compared with VBAKF, the algorithm in this paper improves the accuracy of estimation. However, the algorithm is more complex than VBAKF because it needs to calculate the gradient of ELBO and then update the parameters by stochastic optimization. This is where we need to improve in future work.