Abstract
Navigation plays an important role in the task execution of the micro-unmanned aerial vehicle (UAV) swarm. The Cooperative Navigation (CN) method that fuses the observation of onboard sensors and relative information between UAVs is a research hotspot. Aiming at the efficiency and accuracy problems of previous studies, this article proposes a hybrid-CN method for UAV swarm based on Factor Graph and Kalman filter. A global Factor Graph is used to combine Global Navigation Satellite System (GNSS) and ranging information to provide position estimations for modifying the distributed Kalman filter; distributed Kalman filter is established on each UAV to fuse inertial information and optimized position estimation to modify the navigation states. In order to provide time-consistent GNSS position information for the Factor Graph, a time synchronization filter is designed. The proposed method is tested and verified using standard Monte Carlo simulations, simulation results show that it can provide a more precise and efficient CN solution than traditional CN methods.
Introduction
Unmanned aerial vehicle (UAV) swarm has received increased attention in military, Internet of things (IoT) due to its potential advantages, such as high efficiency and anti-damage capabilities.1,2 The Inertial Navigation System (INS) and Global Navigation Satellite System (GNSS) are classic examples of integrated navigation systems and have been widely implemented as mainstream navigation solutions to UAV swarms currently, and they rely on satellites to correct the positioning bias. 3 The main defect of these solutions is that the positioning accuracy of the satellite navigation system will be degraded with the reduction in the number of visible satellites when working in some restricted scenarios. 4 Therefore, in some scenarios with high positioning accuracy requirements, ordinary GNSS navigation systems are difficult to meet the needs. By enhancing the positioning performance of UAV swarm through a certain positioning base station and external measurements such as Lidar, cameras and opportunity signals, the real-time kinematic (RTK) technique provides effective ways to solve the navigation problem with UAVs,5–7 but such applications are limited by strict working scenarios and costs.
To obtain reliable and better navigation performance, cooperative navigation methods have been introduced into the navigation system of UAV swarm to improve the navigation accuracy with the assistance of relative measurements between UAVs. Such measurements include camera, Wi-Fi, Bluetooth, and ultra-wideband (UWB) transceiver.8–13 Among them, UWB has received extensive attention due to its advantages of high accuracy, strong penetration, powerful anti-interference ability, and moderate layout complexity, compared with other technologies.
The current cooperative navigation methods can be divided into three types: based on Kalman filter, based on optimization algorithms, and based on graph theory. As the most commonly used fusion method, Kalman filter has been widely deployed in the field of cooperative navigation.14,15 The research in Alam et al. 16 proposes a cooperative method based on distributed Extend Kalman Filter (EKF), in which any user in the cooperative network can achieve positioning solution by fusing GNSS observations and Dedicated Short Range Communication (DSRC) signals from other users. This method achieves cooperation by fusing the relative observations between the carrier itself and adjacent carriers, and the position and relative information of the non-adjacent carriers is not used in the filter. De Haag et al. 17 use a centralized Kalman filter to fuse the navigation information of the UAV swarm. Compared with the non-cooperative mode, the performance is significantly improved, but the increase in the number of UAVs will bring a heavy computational burden. To make full use of the absolute position and relative information of the whole swarm, some researchers focus on cooperative navigation technology based on optimization algorithms.18,19 It builds a set of constraint equations based on the geometric relationship between all UAVs and establishes the corresponding objective function. For this method, the process of cooperative navigation can be regarded as a process where the objective function reaches a predetermined termination condition. However, these cooperative navigation algorithms have given little consideration to the inertial information and shown the defect of error accumulation.
Graph theory has gradually been applied in the navigation field over recent years. For example, the Simultaneous Localization and Mapping (SLAM) technology models the navigation states of the carrier through Factor Graphs, and then on this basis, estimates the trajectory of the carrier through the Maximum A Posterior (MAP) estimation. 20 The Factor Graph is also applicable to the field of cooperative navigation. 21 Wymeersch et al. 22 propose a Sum-product Algorithm for Wireless Network (SPAWN), also known as Belief Propagation (BP), which delivers Cooperative Positioning (CP) based on Factor Graph and message passing schedules. The research in Li et al. 23 presents a Gaussian Belief Propagation algorithm, which regards all the information in the Factor Graph as a Gaussian distribution, so that the message-passing process can be expressed as numerical or matrix multiplication. Although the BP-based CP methods have good performance, many of them are applicable only to static or simple motion scenarios,22–25 not suitable for complex dynamic systems, while the computational loads and communication traffics are relatively heavy. To overcome these problems, the combination of INS with Factor Graph through auxiliary estimators is a computational efficient way, so as to meet the needs of UAV applications in complex dynamic scenarios.
In this study, a hybrid Cooperative Navigation (hybrid-CN) method in combination of global Factor Graph and distributed Kalman filter is proposed for UAV swarm. This method can integrate the navigation information collected from the onboard INS, GNSS receivers, and inter-UAV ranging equipment. In order to timely synchronize the GNSS information of each UAV entering the Factor Graph, a Time Synchronization (TS) filter based on the main Kalman filter and INS is presented.
The novelty of the article is to propose an algorithm which fuses all GNSS and UWB measurements of the swarm and processing them altogether to give position estimations for updating the distributed Kalman filters. Compared with the traditional factor graph, the calculation complexity is reduced, while the absolute position, relative information, and inertial observation of whole swarm are effectively used.
In addition, simulation results show that the proposed method in this study only needs a few high-precision UAV nodes (UAVs equipped with RTK equipment), thus cutting the cost of UAV swarms.
Problem definition
In this study, each UAV adopts a GNSS receiver and an inertial measurement unit (IMU) as the basic navigation sensor, while carrying a UWB transceiver to provide relative ranging measurements. Some of the UAVs carry RTK modules to obtain high precise navigation information (see Figure 1). All of them carry UWB transceivers to obtain the inter-UAV ranging data and communicate with a leader UAV via a wireless sensor network.

Cooperative navigation for unmanned aerial vehicle swarm.
Cooperative navigation based on factor graph architecture
The cooperative navigation problem can be formulated as calculating the MAP estimation of the posterior probability of the navigation states over time, given all measurements.
26
Let
where
According to these definitions, the joint probability of distribution function (PDF) is given by
where
Let
where
An all-state Factor Graph

All-state factor graph for a cooperative navigation system.
In the cooperative scenarios, the factor nodes of Factor Graph can be divided into four types: prior factor, IMU factor, UWB factor and GNSS factor. In a Gaussian noise distribution, each factor that represents a measurement model can be expressed in the following form
where
The MAP estimation of navigation states is given by
In order to produce the MAP estimation given in (6), each UAV sends IMU data, GNSS data and UWB information to a leader UAV for centralized processing. The INS solution of each UAV and the optimization of all navigation states will also be completed by the leader UAV. Therefore, the communication traffics and computation loads are quite huge.
Improved factor graph architecture
To ease the communication loads and computation complexities, this study simplifies the all-state Factor Graph shown in Figure 2, and uses the variable nodes only composed of position states at the current time to form the simplified Factor Graph together with GNSS factors and UWB factors, as shown in Figure 3. The recursive process from

Simplified factor graph for a cooperative navigation system.

Hybrid cooperative navigation based on simplified factor graph and distributed Kalman filter.
However, a new problem arises after the all-state centralized Factor Graph is replaced with PFG and distributed Kalman filters. For the GNSS receiver of UAV swarm, the solution time of each receiver is not completely consistent in each positioning epoch. Different from the all-state Factor Graph which can realize the plug-and-play of GNSS factor, the PFG is established with the current position state as the variable node, so it will not be able to add the GNSS factor when the GNSS solution time is not synchronized. To solve this problem, a time synchronization filter implemented in each UAV is proposed, which can recur in the GNSS data in each epoch, until each UAV completes the GNSS solution in that epoch.
Here, the cooperative navigation problem of UAV swarm can be considered as a MAP estimation problem about navigation states, which can be solved with the Factor Graph. In order to solve the problem of heavy computation and communication, the all-state Factor Graph is decomposed into a centralized PFG, which will be processed by the leader UAV and distributed Kalman filters, and a time synchronization filter, which will be processed internally by each UAV.
Hybrid cooperative navigation
The architecture of the proposed hybrid-CN method in this study is illustrated in Figure 5, which mainly consists of two parts. The first part establishes the global PFG to centrally optimize the position states of UAV swarm, and this task is completed by the leader UAV. The second part is composed of the internal sensor information calculation by the UAV and two filters and performed internally by each UAV. The global PFG is used to fuse the GNSS position and UWB ranging observations of the UAV swarm to provide position estimates for correcting the distributed main Kalman filters, the Time Synchronization filter provides time-consistent GNSS position and covariance information for the PFG, the distributed main Kalman filter fuse the inertial information and the position estimation from the PFG to update the navigation states.

Architecture of the hybrid cooperative navigation method.
Position factor graph
By combining the GNSS information of each UAV and the UWB ranging measurements, PFG can be established on the leader UAV. The position variables of UAV swarm is defined as
where
Then, the posterior probability distribution of UAV swarm can be expressed as follows
where
Based on the definition above, the posterior probability distribution can be defined as 28
where
where
Each factor represents a cost function that should be minimized by adjusting the estimates of the variable
where
2. UWB Ranging Factor: UWB equipment is widely used in communication and ranging systems, thanks to its high data transmission rate and high ranging accuracy.31–33 The UWB ranging observation of UAV i and UAV j can be modeled as
where
Therefore, UWB ranging factor can be expressed as
By taking the logarithm of equation (9), the MAP estimate
In practice, the linearized version (equation (16)) of the problem is generally considered. For the measurement function in equation (10), Gauss–Newton or Levenberg–Marquardt algorithm can be used to solve its linear approximation of equation (16), 26 so as to approach the minimum. The linearized measurement function of factor node is
where
By substituting equation (17) into equation (16), the state update vector of the PFG is
where
The process of whitening eliminates the unit of observation, so the cost functions represented by different factor nodes can be combined into a single cost function. After the Jacobian matrix and the prediction error are whitened, the following standard least squares problem can be obtained
where
Once
QR matrix factorization can be applied to the measurement Jacobian to solve the normal equation
After the optimization of the PFG, the position error covariance can be obtained from the following equation:
where Q and R are the orthogonal matrix and the upper triangular matrix after QR decomposition for matrix A, respectively.
The position error covariance
Main Kalman filter
The distributed main Kalman filter is used to fuse the inertial information of UAV and the position optimized by PFG. According to the analysis in Xiong et al. 4 and Kamilov et al., 38 when the noise of input satisfies the zero mean Gaussian distribution, the estimation of Factor Graph will also follow the Gaussian distribution, and their mean will converge to the true value after a certain iteration. In other words, the estimated position of the PFG follows the Gaussian distribution, which forms the basis for Kalman filter fusion.
The INS error equation is used as the state equation. In this study, the east-north-up geographic coordinate frame is selected as the navigation coordinate frame. Therefore, the state of the main KF is defined as 39
where
The state equation of the system is 29
where
The following observation is the difference between the position information optimized by PFG and the corresponding position provided by the INS
where
where
The procedure of the main Kalman filter can be divided into two steps.
1. Prediction: With the recursive process of INS, the prediction of the main Kalman filter is implemented before the PFG information comes. The relevant equations are
where
2. Measurement update: The relevant equations include
where
Time synchronization filter
Given that the output time of each set of GNSS equipment is not necessarily synchronized, the information on GNSS positions cannot be directly sent to the leader UAV, especially in a dynamic scene, because such a method will lead to position bias. With the advantage of short-time accuracy, the INS can be used to realize the recurrence of positions and position uncertainty of GNSS, so as to synchronize the position information sent to the leader UAV. This recursive process is completed by the prediction of Kalman filter. The state equation of the TS filter can also be defined by equation (23).
Figure 6 shows the synchronization procedure after acquisition of the GNSS position. First, the attitude and velocity values are taken out from the INS and then put into the sub-INS with the GNSS position

Synchronization procedure.
Algorithm description
Figure 7 shows the procedure of the hybrid cooperative navigation method, which can be divided into the following steps:
Step 1. Initialize the INS and main Kalman filter of each UAV in the UAV swarm, and set up the initial position
Step 2. Use the IMU information for INS recursion, update the state
Step 3. When the navigation system receives GNSS position at t1, the attitude and velocity of INS are taken out and combined with GNSS position to establish a sub-INS; meanwhile, the initial state of the time synchronization filter is set as follows
where the superscript t1 denotes the state of the main Kalman filter at time t1. It can be seen from equation (32) that the initial position error state of the time synchronization filter is set to 0. Similarly, the initial covariance matrix
Step 4. Carry out the recurrence of INS and Sub-INS and the prediction of the two filters simultaneously, until all UAVs receive GNSS information.
Step 5. After the UAV swarm receives the GNSS position information, each UAV will send the time-synchronized position and position covariance to the leader UAV, which will then build up a global PFG.
Step 6. Use the PFG to optimize the position of the UAV swarm, the optimized position
Step 7. Use

Procedure for hybrid navigation method.
Analysis of computation complexity and communication load
For the proposed hybrid-CN method, the computation load of the leader UAV is derived from the Factor Graph. This load is mainly related to the time spent in iteratively solving the optimization problem converted from the Factor Graph. In this way, the computation load is
In terms of communication traffics, for the proposed method, the UAVs only need to communicate the position estimates and the corresponding covariance matrix with the leader UAV, so the communication load is
Simulation results
Simulation configuration
Based on the background of cooperative scenarios, an UAV swarm system consisting of 12 UAVs is simulated to verify the proposed hybrid-CN method. To fully assess the performance of this method, all the results in this section are based on 200 Monte Carlo simulation trials.
Each of the UAVs carries an INS. Nine of them are equipped with ordinary GNSS receivers, and the other three are with RTK equipment. UWB is used as a relative measurement solution for UAV swarm, and all UAVs can communicate the navigation data to the leader UAV, so that UWB can measure the distance with peers and find out whether such distance is lower than a certain value. The initial position and simulated trajectories in the horizontal direction of all UAVs are shown in Figures 8 and 9. All comparisons in this section are based on the navigation results of UAVs equipped with ordinary GNSS.

The initial position of unmanned aerial vehicle swarm.

Trajectories of unmanned aerial vehicle swarm in horizontal direction.
The output frequency of the INS is 100 Hz, and the parameters used in the simulation are shown in Table 1. 4 The measurement errors of the GNSS and UWB are considered as Gaussian noise, with the parameters shown in Table 2.39,40 The UWB link of UAV 1 is shown in Table 3. The output frequencies of these sensors are both 1 Hz. The solution time difference of UAV swarm in each GNSS epoch is randomly set to 0–0.2 s.
Inertial measurement unit parameters.
GNSS and UWB parameters.
GNSS: Global Navigation Satellite System; RTK: real-time kinematic; UWB: ultra-wideband.
The UWB link of UAV 1.
UWB: ultra-wideband; UAV: unmanned aerial vehicle.
The positioning estimation errors are calculated by
where
Comparison of different cooperative navigation methods
To compare the performance of the proposed hybrid-CN method with other methods, several cooperative navigation algorithms are simulated in this section. The positioning error cumulative distribution functions (CDF) is used as the performance metric.
Figure 10 demonstrates the comparison results among CP-EKF, 16 MDS Filter, 41 SPAWN, 22 and Non-CN, where Non-CN is adopted as the performance baseline. The details of each CN algorithm are described as follows:
Hybrid-CN: The proposed CN method in this study.
Non-CN: INS/GNSS integrity system without cooperation. 42 The loosely coupled INS/GNSS system in the non-CN case is based on the Kalman filter, which only uses INS and GNSS data, without considering UWB measurement. The estimated state, system model and observation model of the INS/GNSS integrity system can also be defined as equations (23)–(25). Different from the proposed method of this study, the observation of the INS/GNSS integrated navigation in non-CN case is the difference between GNSS position and INS position.
CP-EKF: Unlike the Non-CN method, CP-EKF not only uses local data, but also fuses measurements of other collaborators based on EKF. 16 The estimated states and system model are the same as equations (1) and (2), but take the cooperative measurements from inter-UAV ranging into consideration in the observation model. It should be noted that the noise covariance in the measurement model considers not only the UWB ranging error, but also the position error of the collaborator.
MDS Filter: This as a cooperative positioning method based on the multidimensional scaling (MDS) and the maximum likelihood estimation. 41 The procedure of MDS filter can be divided into three steps:
Step 1: Obtain the non-cooperative priori position estimation and position estimation covariance from each UAV;
Step 2: Carry out MDS computation based on the stress function in each iteration, and use the inter-UAV UWB measurements, until the terminal threshold is met;
Step 3: Estimate the covariance of cooperative positioning results and apply it to a ML filter to make further estimation.
SPAWN: This is a sum-product algorithm for wireless network. 22 It is a typical positioning algorithm based on belief propagation, which uses the marginal distribution to estimate the navigation states. This method is widely considered to have superior performance. The core principle of this algorithm is message passing, and the positioning accuracy depends on the number of samples. In the simulations of this section, the importance sampling method in Sudderth et al. 43 is adopted to obtain the marginal distribution. The number of samples is set to 400.

CDF comparison between several methods (positioning errors collected from 200 trials).
It can be seen from Figure 10 that hybrid-CN delivers the similar positioning performance to SPAWN, outperforming other methods. Quantitative analyses show that the probability of positioning error less than 1.5 m (P (error < 1.5 m)) is 0.971, 0.964, 0.314, and 0.231 for hybrid-CN, SPAWN, MDS, and CP-EKF, respectively. And it can be found that the positioning accuracy of the CP-EKF method is just higher than that of Non-CN, because only the constraint information of adjacent UAV nodes is used.
To compare the navigation performance under the several cases more clearly, the position estimation root mean square error (RMSE) of UAV 1 in the three directions are shown in Table 4. As shown in Table 4, the positioning accuracy of UAV 1 in the hybrid-CN case is improved by more than 10 times compared with the Non-CN case.
Comparison of position errors between several CN algorithms for UAV 1.
CN: Cooperative Navigation; UAV: unmanned aerial vehicle; CP: Cooperative Positioning; EKF: Extend Kalman Filter; MDS: multidimensional scaling; SPAWN: Sum-Product Algorithm for Wireless Network.
In order to compare the computation efficiency of several methods, Figure 11 shows the computation loads of several methods in a simulation experiment, and the processing time for each epoch obtained with Matlab “tic” and “toc” functions is used as the performance metric.

Comparison of processing time between the methods of CP-EKF, MDS, SPAWN, and hybrid-CN.
As shown, the computation load of SPAWN is much higher than that of other methods, which require a large number of particles to approximate the posterior probability. For MDS, the priori positioning error of each UAV has an impact on the computation efficiency, indicating that a large priori positioning error requires more iterations. CP-EKF has the lowest computational complexity and the shortest processing time, because it only uses EKF to fuse the relative measurements of adjacent UAVs. For hybrid-CN, the computation load mainly lies in the calculation of PFG and the two Kalman Filter. It can be seen from Figure 11 that its processing time is less than that of SPAWN and MDS.
Comparison of different scales of UAV swarms for the hybrid cooperative navigation method
The navigation accuracy for a single UAV in the UAV swarm is also related to the number of neighboring UAV nodes, so the performance of the hybrid-CN method should be discussed for different scales of UAV swarms.
Given that no UAV is equipped with RTK, Figure 12 shows the performance of the proposed method in different scales of UAV swarms. It can be found that even without the assistance of RTK, the positioning accuracy of the UAV swarm can be improved through the cooperative solution, and the hybrid-CN method with 15 UAVs would deliver the best navigation performance. Also, it is identified that as the scale of UAV swarm grows, the cooperative navigation performance gain is decreasing.

Positioning error CDF comparison in different unmanned aerial vehicle (UAV) swarm scales: 6, 9, 12, and 15 UAVs.
The number of UAV nodes equipped with high-precision RTK in the swarm also affects the navigation performance. Figure 13 presents a navigation performance comparison of a swarm of 12 UAVs in different UAV nodes equipped with RTK equipment. Obviously, the positioning accuracy is improved significantly with the increased number of high-precision UAVs when the number is below three. On the other hand, it can be seen that the cooperative performance gain is dramatically decreased with the growing number of high-precision UAVs when the number is above three. The degrading of cooperative performance gain is caused by the decay of cooperative position error bound.44,45

Comparison of positioning error CDF under different numbers of unmanned aerial vehicles (UAVs) equipped with real-time kinematic devices in a UAV swarm.
Conclusion
This study proposes a hybrid navigation method for UAV swarm based on Factor Graph and Kalman filter. This method can fuse the INS and GNSS information of each UAV with the relative ranging measurements between UAVs cooperatively. By taking only positions as the optimized state of Factor Graph and utilizing Kalman filtering to replace the time recursion process of the variable nodes, the decomposition of the all-state Factor Graph is delivered, thus improving the navigation performance of UAV swarms and reducing the computation burdens and communication loads.
Simulation results demonstrate that the hybrid-CN method can bring an obvious improvement in the navigation accuracy compared with non-cooperative cases, regardless of whether the UAVs are equipped with RTK devices in the UAV swarm. In the simulation scenarios, the positioning performance of hybrid-CN is better than that of many existing CN algorithms, such as MDS, CP-EKF, and so on. The proposed method in this study can achieve a performance comparable to that of SPAWN, but with lower computation loads.
Anyway, the method proposed in this article is based on the availability of GNSS, the situations of multipath, and GNSS denial are not discussed. During the flight of the UAV swarm, more complex mission scenarios may be encountered, and the cooperative navigation method for the satellite-constrained environment will be developed in the near future.
Footnotes
Handling Editor: Lyudmila Mihaylova
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was partially supported by the National Natural Science Foundation of China (Grant No. 61873125), advanced research project of the equipment development (30102080101), The Natural Science Fund of Jiangsu Province (Grant No. BK20181291), Shanghai Aerospace Science and Technology Innovation Fund (Grant No. SAST 2019-085).
