UAV Swarm Navigation Using Dynamic Adaptive Kalman Filter and Network Navigation

Aiming to improve the positioning accuracy of an unmanned aerial vehicle (UAV) swarm under different scenarios, a two-case navigation scheme is proposed and simulated. First, when the Global Navigation Satellite System (GNSS) is available, the inertial navigation system (INS)/GNSS-integrated system based on the Kalman Filter (KF) plays a key role for each UAV in accurate navigation. Considering that Kalman filter’s process noise covariance matrix Q and observation noise covariance matrix R affect the navigation accuracy, this paper proposes a dynamic adaptive Kalman filter (DAKF) which introduces ensemble empirical mode decomposition (EEMD) to determine R and adjust Q adaptively, avoiding the degradation and divergence caused by an unknown or inaccurate noise model. Second, a network navigation algorithm (NNA) is employed when GNSS outages happen and the INS/GNSS-integrated system is not available. Distance information among all UAVs in the swarm is adopted to compensate the INS position errors. Finally, simulations are conducted to validate the effectiveness of the proposed method, results showing that DAKF improves the positioning accuracy of a single UAV by 30–50%, and NNA increases the positioning accuracy of a swarm by 93%.


Introduction
In recent years, the unmanned aerial vehicle (UAV) swarm has been given more and more attention due to the tremendous application prospects. Compared with a single UAV, the UAV swarm is more efficient, reliable, flexible and intensive [1,2]. As a prerequisite for a UAV to complete various tasks, the navigation and positioning technology has been extensively studied by scholars. At present, the most popular navigation system usually consists of an inertial navigation system (INS) and a Global Navigation Satellite System (GNSS) [3]. This system is very effective for improving navigation accuracy; however, its disadvantage of a fragile robustness due to the easy loss or disturbance of the GNSS signal limits its applications. When the GNSS signal is available, the Kalman filter (KF) is the most popular INS/GNSS data fusion algorithm. This paper aims to improve the fusion accuracy of the traditional KF and solve the problem of the UAV swarm navigation in the case of GNSS outage.
The Kalman filter uses the next observation to update the estimates of the current state variables, along with their uncertainties. KF corrects the noisy sensor data to a more realistic sensor output (with less noise) [4]. However, the performance of KF is affected by the stochastic model describing the process noise and observation noise and the dynamic model describing the dynamics of the system over time [5]. A variety of adaptive Kalman filters (AKF) has been proposed by scholars to improve the fusion precision of traditional Kalman filters when the stochastic model is inaccurate [6]. The AKF based on the attenuation factor reduces the influence of historical data on the current results by adjusting the weight of the one-step prediction covariance matrix. In fact, the problem of the inaccurate noise dynamically with time and has a strong robustness to changing noise. The proposed algorithm also guarantees the positive semi-definiteness of the estimated state covariance matrix by using its Joseph's form. In addition, compared with the EMD-based adaptive filtering method mentioned in [8], the proposed algorithm has the following advantages: (1) EMD suffers from the problem of mode mixing, which causes insufficient decomposition of the original signal. The EEMD algorithm introduced in this paper is not bothered by this problem [20]. This paper may be the first approach to introduce EEMD into the parameter solving of the Kalman filter in the field of integrated navigation. (2) All historical data were used for noise extraction in [8], which will lead to that R cannot effectively follow the changes of environmental noise. The proposed algorithm adds a sliding window for noise extraction so that R can better respond to the changes of real noise. (3) The noise is calculated by the fixed number of the intrinsic mode function (IMF) components in [8], which is unrealistic. The proposed algorithm uses the power spectral density (PSD) feature of the IMF to select different components to reconstruct the noise signal in different environments, which is adaptive [21]. Compared with the multi-model adaptive Kalman filter in [11], the algorithm proposed in this paper only needs one Kalman filter, which will save resources and time for calculation.
Compared with the neural network-based algorithm mentioned in [14][15][16][17][18], this paper introduces the NNA to compensate the divergent position error of the UAV swarm during a GNSS outage. The proposed algorithm does not require a large number of network parameters and training resources, and the compensation result is not affected by historical data. In addition, this paper designs a simulation to prove the superiority of the proposed algorithm compared with the neural network-based algorithm.
The rest of the paper is organized as follows. Section 2 introduces the EEMD and the adaptive Kalman filter. Then, a dynamic adaptive Kalman filter algorithm is derived. Section 3 describes the principles of the networked navigation algorithm. Section 4 provides the test results and analysis to show the superiority of the proposed methods. The conclusion is given in Section 5.

Dynamic Adaptive Kalman Filter
When the observation noise covariance matrix matches the real noise, the adjustment of the process noise covariance matrix can help the KF perform better. However, in practical applications, it is extremely difficult to obtain the real noise which will vary with the measurement environment and sensor characteristics in the measurement process [22]. This situation not only damages the performance of the Kalman filter itself, but also leads to an erroneous adjustment of Q, which makes the performance of the AKF inferior to the ordinary KF.
In order to solve this problem, a new adaptive algorithm that can simultaneously adjust Q and R in real time is introduced. When the GNSS signal changes under the environment influence or intentional jamming, the observation noise possesses the characteristics of non-linearity and non-uniformity. General signal processing methods, such as the Fourier transform, have difficulty dealing with this problem. Therefore, this paper introduces EEMD which is self-adaptive into the AKF to estimate the observation noise.

Ensemble Empirical Mode Decomposition
Huang invented a signal processing algorithm called EMD that can decompose a nonlinear signal into a series of near-orthogonal intrinsic mode functions (IMFs) [23]. EMD is an adaptive time-frequency data processing algorithm, which is widely used to extract signals of interest from non-linear and non-stationary processes containing noise [24,25]. However, it is well known that EMD suffers from a mode mixing problem, which is defined as signals of different frequencies contained in a single IMF, that is, the decomposition of the original signal is not sufficient [26]. To solve this problem, EEMD based on noise assistance is proposed [20].
The principle of EEMD is very complete. Adding white noise of limited amplitude to the original data will help the work of EMD. Signals of different scales can be automatically projected onto appropriate IMF components [20]. This phenomenon depends on the statistical characteristics of the white noise itself [27].
Since the added white noise in each experiment is random, after averaging the results of enough experiments, the influence of the added white noise on the original signal will be eliminated [20].
By combining the original signal with white noise of limited amplitude, we can obtain a clearer IMF component [26]. The pseudo-code implementation of the EEMD is listed in Algorithm 1.

Input:
o(t): The original signal; begin (1) o (t) = o(t)+n(t)//Add Gaussian noise series to the original signal o(t); n(t) is the Gaussian noise series with amplitude of σ n ; (2) I MFs (t) = EMD(o (t))//Decompose noise-added signal o (t) into I MFs (t) using EMD; (3) Repeat (1) and (2) M times with different Gaussian noise series which have the same amplitude; (4) Get the means of corresponding I MFs (t) of the decompositions as the final I MFs(t); end As a result, the original signal is decomposed into the following form: where o(t) is the original signal, I MF f (t) is the f th IMF signal and r(t) is the residual signal.

Acquisition of Observation Noise Covariance Matrix R
The general steps of the acquisition of R are as follows: The EEMD algorithm decomposes the GNSS signal within a fixed window size w into a series of IMF components (the introduction of the window makes the calculation of R pay more attention to the current noise situation instead of obtaining R from the data of the entire historical period, which wastes a lot of resources and is inaccurate). Then, the noise components are distinguished by comparing the power spectral density (PSD) of each component [21] and the original noise is reconstructed by the summation of the noise components. At last, the observed noise covariance matrix R is estimated by the standard deviation of the reconstructed noise.
Since EEMD requires a suitable window size w for the noise extraction, the setting of R is determined by the empirical value in the first w seconds, but the inaccuracy of R within a short period of time will not have a significant impact on the final result.
The calculation process of the observation noise covariance matrix R using EEMD is listed in Algorithm 2.
The inputs of this function are the GNSS signal Z GNSS and the window size w for filtering, and the output is R at time k which changes with the actual noise.

INS Error Model
In this section, we will describe the INS error model in the east-north-up navigation reference frame. The error equation is as follows: (1) Attitude error equation: (2) Velocity error equation: (3) Position error equation: Navigation information errors include: the attitude error shown in the navigation frame ϕ n = (ϕ E ϕ N ϕ U ) the velocity error δv n = (δv E δv N δv U ) and the position error δP = (δL δλ δh). f n is the output of the accelerometer. R M and R N are the radii of the earth in the latitude and longitude directions, respectively. ω ie n and ω en n are the rotational angular velocities of the earth and navigation frame, respectively. δω ib n and δ f n are the errors of the gyro and accelerometer, respectively. δω ib n consists of the gyro bias ε n and white noise ω g n . δ f n is composed of the accelerometer bias ∇ n and white noise ω a n .

The Filtering Algorithm of Dynamic Adaptive Kalman Filter
Consider the following multivariable linear discrete system [28]: where X k is the state vector (X k = [δP δv n ϕ n ε n ∇ n ]), Φ k/k−1 is the transition matrix formed by the error equation described in Section 2.3, Z k is the observation vector formed by the position difference of the GNSS receiver and the INS and H k is the observation matrix. W k−1 and V k are the Gaussian white noise sequences satisfying the following conditions: where Q k is the process noise covariance matrix and R k is the observation noise covariance matrix. The prediction equations are: whereX k/k−1 is the predicted state vector;X k−1 is the estimated state vector;P k/k−1 is the predicted state covariance matrix;P k−1 is the estimated state covariance matrix. The update equations are: where K k is the Kalman gain and H k is the observation matrix. It is worth mentioning that in order to ensure the positive semi-definiteness ofP k , we used its Joseph's form [28].
In order to settle the uncertainty of the process noise, Ding et al. proposed an improving AKF based on the covariance matching method under the assumption that the observation noise is completely known and rewritten (7) as follows [10].
where s k is the scaling factor expressed as follows: The innovation sequence d k is defined as: When R k is unknown or inaccurate, the calculation of the scaling factor will be affected. The adjustment of Q will become worse. When R k is accurately calculated by the proposed method, the solution of the scaling factor will be accurate. Therefore, Q will be adjusted more appropriately.
After substituting the R k calculated by Algorithm 2 into (10) used to solve the scaling factor, the complete process of DAKF is shown in Figure 1.
When k R is unknown or inaccurate, the calculation of the scaling factor will be affected. The adjustment of Q will become worse. When k R is accurately calculated by the proposed method, the solution of the scaling factor will be accurate. Therefore, Q will be adjusted more appropriately.
After substituting the k R calculated by Algorithm 2 into (10) used to solve the scaling factor, the complete process of DAKF is shown in Figure 1.

Network Navigation Algorithm
When the UAV swarm cannot receive the GNSS signal, the three-dimensional network navigation technology based on the distance information among all UAVs is introduced to reduce the error of the INS [19].
The specific process of the algorithm is as follows: By linearizing the difference between the inertial distances calculated from the INS output and the measured distance between nodes, the following Equation can be obtained [29]:

Network Navigation Algorithm
When the UAV swarm cannot receive the GNSS signal, the three-dimensional network navigation technology based on the distance information among all UAVs is introduced to reduce the error of the INS [19].
The specific process of the algorithm is as follows: By linearizing the difference between the inertial distances calculated from the INS output and the measured distance between nodes, the following Equation can be obtained [29]: where d m ij is the measured distance between nodes i and j, d I ij is the inertial distance between nodes i and j, l ij is the difference between these two distances, x I i , y I i , z I i is the INS output position of node i and ∆x I i , ∆y I i , ∆z I i is the position error of node i; it is assumed that the error of distance difference l ij obeys a normal distribution. This assumption is based on the fact that the noise of the INS and the error of the measured distance between nodes obey a normal distribution. ∆ ij is the error of distance difference l ij , ∆ ij ∼ N 0, σ r 2 and σ r 2 is the variance of the normal distribution [29].
The matrix form of (12) is [30]: where L d is the p-dimensional measurement vector, T is the p × 3a dimensional coefficient matrix (a is the number of nodes), S is the 3a-dimensional position error vector, ∆ is the p-dimensional measurement error vector, σ 2 0 is the unit weight variance and P co is the p × p dimensional measurement error covariance matrix of L d . According to the principle of least squares, ∆ and S are replaced with their respective estimated values V n andŜ. The model of the network navigation algorithm is established as follows [29]: The above formula can be rewritten as follows: whereŜ is the estimated position error vector. However, the above formula can only prove that the shapes of the measurement network with measured distances between nodes as edges and the inertial position network with inertial distances calculated from the INS output as edges are the same.
To make the absolute positions of the two networks consistent in three-dimensional space, it is necessary to rotate and translate the two networks through the principle of the free network theory with rank deficiency mentioned in [29].
According to this principle, the above rotation and translation process is equivalent to adding the following new solution conditions [29]: where P X is a 3a × 3a dimensional weight matrix determined by the accuracy level of each node's inertial navigation system. The expression of P X is as follows: where G T is a matrix composed of six linearly independent eigenvectors corresponding to the zero eigenvalue of T T P co T. G T satisfies the following conditions: The first item in (18) can ensure that the added solution conditions (16) and the error Equation (15) are independent of each other. It can be seen from the second item in (18) that G is composed of the zero eigenvectors of T T P co T. The third item in (18) means that G supplements the error Equation (15) with six constraints caused by rotation and translation [29].
The final estimated error of the node's INS output can be expressed as: According to the position S output by the INS and the errorŜ estimated by the network navigation algorithm, the corrected value S of the node position can be obtained: The theory of the network navigation algorithm has been well established, and the specific details can be found in [30].

Simulation Configuration
The simulation uses four UAVs carrying the GNSS and INS, and employs the data link method to obtain the distances among all UAVs [31].
At the beginning, four UAVs formed a square swarm with sides of 60 km. Subsequently, the swarm moved north and then east at a speed of 200 m/s. The true trajectory of the UAV swarm is shown in Figure 2. The velocity of the four UAVs in the east-north-up navigation reference frame is shown in Figure 3. (the change at about 220 s was caused by the movement of the UAV).  The velocity of the four UAVs in the east-north-up navigation reference frame is shown in Figure 3. (the change at about 220 s was caused by the movement of the UAV). The initial attitude error was (0.5 0.5 1.5 ), the initial velocity error was (0.5 m/s 0.5 m/s 0.5 m/s) and initial position error was (20 m 20 m 20 m). The bias and standard deviation of the white noise of the accelerometer were 800 µg and 100 µg · √ s. The bias and standard deviation of white noise of the gyro were 3 • /h and 1 • / √ h. The standard deviation of the measurement error vector was 20 m. The process noise covariance matrix Q was set as:

Evaluation of Dynamic Adaptive Kalman Filter
In order to highlight the superiority of the proposed algorithm, two simulations were conducted.
In the first simulation, the noise of the GNSS signal was designed as a step from 10 m to 30 m with the purpose of verifying the adaptability of the proposed algorithm. The parameters of EEMD were set as follows: M = 20 and σ n = 0.2.
It can be seen from Figure 4 that the proposed method could follow the changes of noise in three direction channels well. It is worth mentioning that in order to verify the effect of the proposed algorithm on noise reconstruction, this paper compares the standard deviation of the reconstructed noise and the real noise in the same window. Although the standard deviation of the real noise was set to three constant values, the real noise was actually a random value fluctuating around this constant value, due to the randomness of the noise itself [32]. Therefore, the green line is actually the standard deviation of the real noise calculated by the window at different positions. In addition, any digital signal processing method requires a window size for the accurate extraction of noise; therefore, errors in the first four seconds are allowed (w = 4 s).
The average difference between the two curves in Figure  [0 ,(100μg s)

Evaluation of Dynamic Adaptive Kalman Filter
In order to highlight the superiority of the proposed algorithm, two simulations were conducted.
In the first simulation, the noise of the GNSS signal was designed as a step from 10 m to 30 m with the purpose of verifying the adaptability of the proposed algorithm. The parameters of EEMD were set as follows: It can be seen from Figure 4 that the proposed method could follow the changes of noise in three direction channels well. It is worth mentioning that in order to verify the effect of the proposed algorithm on noise reconstruction, this paper compares the standard deviation of the reconstructed noise and the real noise in the same window. Although the standard deviation of the real noise was set to three constant values, the real noise was actually a random value fluctuating around this constant value, due to the randomness of the noise itself [32]. Therefore, the green line is actually the standard deviation of the real noise calculated by the window at different positions. In addition, any digital signal processing method requires a window size for the accurate extraction of noise; therefore, errors in the first four seconds are allowed ( The average difference between the two curves in Figure 4 is ( :1.450m Y:0.574m Z:0.568m) X The second simulation compared the classic Kalman filter with the proposed algorithm to prove the effectiveness of the DAKF. This simulation used the trajectory of UAV1 in Figure 2, and this method was also verified on the other three trajectories.
Experimental parameters are shown in Table 1. In the first four seconds, the observation noise matrix R of DAKF was consistent with the KF, due to the introduction of the window in the proposed algorithm; in the following time, R of DAKF was dynamically The second simulation compared the classic Kalman filter with the proposed algorithm to prove the effectiveness of the DAKF. This simulation used the trajectory of UAV1 in Figure 2, and this method was also verified on the other three trajectories.
Experimental parameters are shown in Table 1. In the first four seconds, the observation noise matrix R of DAKF was consistent with the KF, due to the introduction of the window in the proposed algorithm; in the following time, R of DAKF was dynamically obtained by EEMD and R of the KF was still a constant empirical value. In order to verify the universality of the proposed algorithm, setting the real noise of the three channels of GNSS included three stages: the real noise less than the model setting, the real noise greater than the model setting, and the real noise equal to the model setting. To ensure the effectiveness of the simulation, in Table 1, the real noise of the DAKF and KF were consistent. In other words, the data in the second row belong to the second and third columns together in Table 1.  Figure 5 shows the change of the scaling factor. The fluctuation of the scaling factor at the initial moment is a normal phenomenon caused by the initial parameter setting which has been proven [10]. At 200 s and 400 s, it was used to prove the normal operation of the adaptive part that the scaling factor following the change of the GNSS noise [33]. Except for the above three transitional periods, the scaling factor was well maintained around one. obtained by EEMD and R of the KF was still a constant empirical value. In order to verify the universality of the proposed algorithm, setting the real noise of the three channels of GNSS included three stages: the real noise less than the model setting, the real noise greater than the model setting, and the real noise equal to the model setting. To ensure the effectiveness of the simulation, in Table 1, the real noise of the DAKF and KF were consistent. In other words, the data in the second row belong to the second and third columns together in Table 1.  Figure 5 shows the change of the scaling factor. The fluctuation of the scaling factor at the initial moment is a normal phenomenon caused by the initial parameter setting which has been proven [10]. At 200 s and 400 s, it was used to prove the normal operation of the adaptive part that the scaling factor following the change of the GNSS noise [33]. Except for the above three transitional periods, the scaling factor was well maintained around one.  Figure 6 shows the simulation results of the KF and DAKF with dynamic observation noise. When the model noise did not match the real noise, the DAKF performed significantly better than the KF. When equal, the effects of the DAKF and KF were similar. A further explanation of Figure 6 is given by Table 2. Table 2 shows the average position error of the three channels, which proves the effective improvement of the DAKF.   Figure 6 is given by Table 2. Table 2 shows the average position error of the three channels, which proves the effective improvement of the DAKF.

Evaluation of Networked Navigation Algorithm
In order to fully verify the performance of the NNA, the UAV movement during the GNSS interruption should include two modes: straight and turning. The total time of the UAV swarm flying was designed to be 520 s while there was a GNSS outage of 150 s start at the 100th second.
Since the swarm had no displacement in the vertical direction, Figure 7 shows the swarm trajectory in the horizontal direction in order to better show the effect of the NNA. The purple line is the navigation results of the INS. The yellow line is the trajectory after the position compensation of the NNA. The gray line is the output of the UAV's INS/GNSS integrated system, which was basically consistent with the true trajectory, when the GNSS was available. The black line is the true trajectory shown in Figure 2. It can be easily obtained from Figure 7 that the NNA could obviously improve the navigation accuracy of the overall UAV swarm, no matter whether in the straight or turning mode.

Evaluation of Networked Navigation Algorithm
In order to fully verify the performance of the NNA, the UAV movement during the GNSS interruption should include two modes: straight and turning. The total time of the UAV swarm flying was designed to be 520 s while there was a GNSS outage of 150 s start at the 100th second.
Since the swarm had no displacement in the vertical direction, Figure 7 shows the swarm trajectory in the horizontal direction in order to better show the effect of the NNA. The purple line is the navigation results of the INS. The yellow line is the trajectory after the position compensation of the NNA. The gray line is the output of the UAV's INS/GNSS integrated system, which was basically consistent with the true trajectory, when the GNSS was available. The black line is the true trajectory shown in Figure 2. It can be easily obtained from Figure 7 that the NNA could obviously improve the navigation accuracy of the overall UAV swarm, no matter whether in the straight or turning mode.  Table 3 describes the improvement in positioning accuracy of the UAV swarm after using the NNA. p Δ represents the position error of four UAV's inertial navigation system and p Δ represents the position error after the compensation of the NNA. In this simulation, the above position error was calculated from the last moment of the GNSS signal being unavailable. The expression is as follows: To define the improvement of positioning accuracy as the ratio of p Δ and p Δ : Table 3 shows that the NNA could increase the positioning accuracy of the UAV swarm by 1.93 times. In addition, the purpose of the NNA was to improve the positioning accuracy of the entire swarm. The deterioration of the positioning accuracy of a single node (UAV3) due to the change of the swarm's shape which was caused by the divergence of the INS navigation errors with time was allowed [19,34].   Table 3 describes the improvement in positioning accuracy of the UAV swarm after using the NNA. ∆p represents the position error of four UAV's inertial navigation system and ∆ p represents the position error after the compensation of the NNA. In this simulation, the above position error was calculated from the last moment of the GNSS signal being unavailable. The expression is as follows: where ∆ x I i , ∆ y I i and ∆ z I i are the position errors in three directions after the NNA compensation of the ith aircraft.
To define the improvement of positioning accuracy as the ratio of ∆p and ∆ p: Table 3 shows that the NNA could increase the positioning accuracy of the UAV swarm by 1.93 times. In addition, the purpose of the NNA was to improve the positioning accuracy of the entire swarm. The deterioration of the positioning accuracy of a single node (UAV3) due to the change of the swarm's shape which was caused by the divergence of the INS navigation errors with time was allowed [19,34]. In order to verify the superiority of the proposed algorithm compared with the neural network-based algorithm, the NNA and MLP-based Bagging method mentioned in [18] were compared on UAV1 (the simulation result was similar on the other three UAVs). The parameter settings and experimental results of the NNA were consistent with the above simulation. The topology and transfer function of the MLP were 12 (input layer) × 6 (hidden layer) × 1 (output layer) and logsig-linear, respectively. The network number of Bagging was set to 50. The training data of the neural network were UAV information during the first 100 s when the GNSS signal was available. The output of the MLP was the increment of the UAV's position during the GNSS outage. Figure 8 shows the comparison result between the NNA and MLP-based Bagging method. The pink line is the prediction result of the MLP-based Bagging method.
The positioning error of the MLP-based Bagging was 6385.014 km, which was approximately 41 times larger than the positioning error of the NNA. One of the disadvantages of the neural network-based algorithm is that it relies heavily on training data. If the training sample and the test sample were significantly different, the above situation would be an inevitable phenomenon [18]. In contrast, the NNA was only related to the distance between nodes at the current moment, so it would not be affected by historical data. It can be seen from the simulation results that the NNA was more robust than the neural network-based methods. In order to verify the superiority of the proposed algorithm compared with the neural network-based algorithm, the NNA and MLP-based Bagging method mentioned in [18] were compared on UAV1 (the simulation result was similar on the other three UAVs). The parameter settings and experimental results of the NNA were consistent with the above simulation. The topology and transfer function of the MLP were 12 (input layer) × 6 (hidden layer) × 1 (output layer) and logsig-linear, respectively. The network number of Bagging was set to 50. The training data of the neural network were UAV information during the first 100 s when the GNSS signal was available. The output of the MLP was the increment of the UAV's position during the GNSS outage. Figure 8 shows the comparison result between the NNA and MLP-based Bagging method. The pink line is the prediction result of the MLP-based Bagging method.
The positioning error of the MLP-based Bagging was 6385.014 km, which was approximately 41 times larger than the positioning error of the NNA. One of the disadvantages of the neural network-based algorithm is that it relies heavily on training data. If the training sample and the test sample were significantly different, the above situation would be an inevitable phenomenon [18]. In contrast, the NNA was only related to the distance between nodes at the current moment, so it would not be affected by historical data. It can be seen from the simulation results that the NNA was more robust than the neural network-based methods.

Conclusions
This paper proposed a new navigation scheme for the UAV swarm. The proposed algorithm included the following two cases: (1) By adaptively acquiring the observation noise covariance matrix using EEMD and adjusting the process noise covariance matrix, a dynamic adaptive Kalman filter which is superior to the traditional Kalman filter was designed when the GNSS signal was available. The simulation shows that the DAKF could effectively improve the accuracy of the Kalman filter. (2) In the phase of GNSS signal out-Latitude/°F igure 8. Comparison results between NNA and MLP-based Bagging method.

Conclusions
This paper proposed a new navigation scheme for the UAV swarm. The proposed algorithm included the following two cases: (1) By adaptively acquiring the observation noise covariance matrix using EEMD and adjusting the process noise covariance matrix, a dynamic adaptive Kalman filter which is superior to the traditional Kalman filter was designed when the GNSS signal was available. The simulation shows that the DAKF could effectively improve the accuracy of the Kalman filter. (2) In the phase of GNSS signal outage, the positioning error of the UAV swarm was reduced through the use of the networked navigation algorithm. The simulation demonstrated that the NNA could improve the positioning accuracy of the swarm by 93% during the GNSS interruption of 150 s and better than the neural network-based algorithm.
Future work mainly includes the following research directions. First, the colored noise and non-Gaussian noise were not considered in this simulation. It would determine whether the proposed algorithm has a sufficient generality in all environments. Second, the window size of the DAKF was an empirical value obtained from a large number of experiments. How to decrease its impact on the algorithm will be considered in the next step. Finally, the proposed algorithm has not been verified on an actual UAV swarm, which will be carried out in future work.
Author Contributions: Conceptualization, J.Z., X.W. and W.Z.; methodology, X.W. and W.Z.; validation, X.W. and W.Z.; writing-original draft preparation, W.Z.; writing-review and editing, X.W. and W.Z.; All authors have read and agreed to the published version of the manuscript.