Abstract
Self-localization is critical for many unmanned aerial vehicles (UAVs) tasks such as formation flight, path planning, and activity coordination. Traditionally, UAV can locate itself using GPS combined with some inertial sensors. However, due to the complex flight environment or failure of the GPS receiver, the UAV may lose its GPS signal and fail to locate itself, resulting in devastating consequence. In this paper, we will consider the problem of cooperative localization among multiple UAVs, in which the UAVs with failure of GPS receiver can help each other to locate themselves through mutual information exchanged based on the relative distance measurements. Specifically, we propose a dynamic Nonparametric Belief Propagation (dNBP) algorithm to calculate the posterior distribution of UAV's position conditioned on all observations made in the whole UAVs group. The dNBP is a natural combination of NBP with particle filtering, suitable for treating with the nonlinear model and highly non-Gaussian distributions arising in our application. Furthermore, dNBP provides the basis for distributed algorithm in which messages are exchanges between neighboring UAVs. Thus, the computational burden is distributed across UAVs. Simulations in Matlab environment show the effectiveness of our method.
1. Introduction
Unmanned aerial vehicles (UAVs) have attracted significant interest for a wide range of applications. Among these applications, active cooperation of several low-cost small-size UAVs has important advantages. The basic requirement of many flight tasks of UAVs group, such as the formation flight [1, 2], coordinated rendezvous [3], coordinated path planning [4], and task coordination [5], is the correct localization of each member in the group. Traditionally, the navigation or localization method of UAV is based on integration of inertial navigation system (INS), global positioning system, and so forth. In the case of flying in complicated environment such as buildings, foliage and hilly terrain, or errors of GPS receiver, UAV may lose its GPS signal, leading to catastrophic effects during the flight mission.
Here, we classify UAVs in the group into two types: fault UAVs, in which GPS fails to provide location information, and normal UAVs, which have available GPS measurements. We assume that each UAV in the group, fault or normal, has limited resource for computation and communication and synchronized internal clock that allows the UAVs to share a common notion of time. We also assume that each UAV has a noisy distance estimate to its neighbors (i.e., the ones within certain range) from signal metrics measurement based on direct communication. The relative range measurements can be obtained using either ultra wideband (UWB) radio technology or optical systems [6].
In a group of UAVs, the one with failure of GPS receiver can manage to localize itself using classical least square estimator [7] based on the relative distance measurement with respect to nearby normal ones. See Figure 1; for example, the three black points represent three normal UAVs (UAV0, UAV1, and UAV2) whose positions measurements are available. The red points stand for the fault UAVs (UAV3 and UAV4) whose positions are unknown. UAV3 can independently determine its own position in 2-dimensional space based on the relative distance estimates with respect to the other three normal UAVs (UAV0, UAV1, and UAV2).

Scheme of multi-UAVs cooperative localization.
However, due to the limitation of signal transmission, the distance measurement between UAV1 and UAV4 may be not reachable or be too noisy to be useful, as they are too far away from each other. So, UAV4 is unable to localize itself without ambiguity based on the knowledge of positions of UAV0 and UAV2. But if the distance measurement between UAV3 and UAV4 is available, UAV4 can manage to determine its position by taking into account the estimated position of UAV3. In this way, UAV4 can localize itself even when it has less than three normal neighbors. In fact, this is achieved by propagation of the position knowledge of normal UAVs in the group. In this paper, we will formulate this knowledge propagation procedure in a statistical inference frameworks and propose a dynamic Nonparametric Belief Propagation algorithm for UAV localization, which treats the uncertainties in UAVs' state and their propagations in a systematical way and integrates all available information, including INS measurements on each UAV, GPS measurements on normal UAVs, and the distance measurement between pairs of UAVs, in a distributed manner.
There are several related works about the cooperative localization of UAVs. Qu et al. [8] proposed a UAV localization method based on information synchronization for a ring communication topological structure. Shames et al. [9] considered the problems of cooperative self-localization of mobile agents and proposed a solution based on the rigid graph theory. However, in the above approach, it is assumed that both the distance and the angle measurement are available, which is not true in many cases. Qu and Zhang [10] uses relative range measurements and GPS signals of 3 nearby healthy UAVs to cooperatively locate the UAVs with failure of GPS receiver. But it is not clear how to treat the ambiguity in localization when the neighbors of fault UAV include less than 3 healthy ones. There are also some works about the cooperative localization in sensor networks via inference on graphical model [11–13]. However, in these applications, the anchor nodes are static and fixed. This is in contrast with our work where the state of normal UAVs is also uncertain and the normal member may vary with time.
In this paper, we propose a novel approach for multiple UAVs cooperative localization; the main features of our work include the following.
We formulate the cooperative localization as a probabilistic inference problem and propose a graphical model representing the joint distribution of involved random variables in UAVs group. The model is more flexible than [11–13]. In our model it allows the movement of anchors (here refer to the normal UAVs), and the variation of anchors member over time. We propose a dynamic Nonparametric Belief Propagation algorithm (dNBP) for inference on the graphical model. By Belief Propagation, the posterior marginal of the position of fault UAV is calculated conditioned on all information made in the whole UAVs group up to current time. This is in contrast with traditional works, such as the works in [7, 10], where the fault UAV is located using only neighboring normal ones. The proposed dNBP is a natural combination of traditional NBP with particle filter, which applies to dynamic case. In dNBP, posterior distribution of unobserved variables is approximated by set of representative samples, which makes it suitable for ring-shaped distribution produced by relative distance measurement; see Figure 4. In dNBP, the distributions are updated by messages passing among UAVs and upon convergence; the position estimate of UAV is given by the belief state of the corresponding variables. This provides the basis for distributed implementation of information fusion in UAVs group. We utilize several efficient sampling techniques in dNBP to reduce the computational time. Implemented by Matlab on PC in our lab, a single filtering step on individual UAV can be finished within few seconds.
This paper is organized as follows: in Section 2, we formalize the problem and discuss the types of uncertainty which occur in the localization problem. In Section 3, we present the dNBP algorithm in detail. Section 4 shows how the dNBP works in our simulations. Finally, we present a brief conclusion and the future plan.
2. Problem Formulation
In this section, we formulate the multi-UAV cooperative localization problem in a probabilistic framework. The position of the UAV is three-dimensional. But concerning the convenience of description, we will narrow the scope of position to two-dimensional geographical coordinates. However, it can also easily be extended to three-dimension occasion. We restrict our attention to the simplified cases in which each UAV is equipped with a 2-axis accelerometer and GPS sensor and assume it can obtain noisy distance measurements with respect to its nearby UAVs. It is also straightforward to extent to the UAV with more complex sensor configurations. Suppose that we have N UAVs in our system. The state of the sth UAV at time τ consists of its position and velocity
Under the above assumptions, the state of each UAV evolves according to the following linear Markov model:
Moreover, we assume that with some probability
We use y to denote the available observations, and
3. Inference Algorithm
3.1. Graphical Model
The graphical model for inference is shown in Figure 2. Each node is associated with a random variable representing the state of a single UAV at certain time

Graphic model for inference in cooperative localization.
The problem of inference on the graphical model, that is, computation of the posterior distribution (belief) of state variable of each UAV, can be divided into two parts. First, is how to compute the posterior marginal distribution of the state on each node conditioned on observations from a single time slice. We will use NBP to solve this problem in Section 3.2. Second, is how to incorporate the dynamic information contained in dynamic model and perform tracking, that is, recursively calculate the belief state
3.2. Intraslice Update
In this section, we omit the subscript τ in expression for clarity. During intraslice update, the only involved state variable is the position
We will use the NBP algorithm [13] to calculate the marginal distributions of each UAV's position from the joint distribution (5). Nonparametric Belief Propagation is an iterative inference algorithm for graphic model, which is very effective for marginal distribution computation with respect to the global joint distribution. During each iteration, NBP consists of two steps: message propagation and belief computation.
For message propagation, the tth UAV sends a message
For belief computation, each node produces an approximation
After convergence, the position estimate of each UAV is given by the beliefs on the corresponding node. Exact evaluation of (8)-(9) involves computations which is not analytically tractable for most continuous variables. So, we represent
The message update equations (8) are performed using stochastic approximations in two stages: first, drawing samples
Input: M weighted samples ( ( ( (
Since each outgoing message is a Gaussian mixture with M components, estimation of the marginal distribution (belief) (9) is more difficult. Because it is the product of several Gaussian mixtures, computing (9) exactly is exponential in the number of incoming messages. Following [15], we use a technique called mixture importance sampling to compute the belief. As shown in Algorithm 2, we denote the set of neighbors of t having observed edges to t by
Input: several Gaussian mixture messages ( ( ( (
3.3. Interslice Prediction and Tracking
The dynamic information is incorporated into inference by interslice prediction. For interslice prediction, each node sends a forward-time message to its corresponding node in the next time according to the dynamic mode
Input: M samples ( ( ( (
Taking the forward-time messages (11) as prior distribution of UAV's state, we can combine it with the NBP update for tracking. During tracking, at time τ, each UAV integrates the time-forward message from itself at previous time
Input: incoming messages ( ( ( ( ( ( (
3.4. Discussion
In practice, we find that, in the intraslice update, if the traditional parallel message passing schedule is used, in which every node transmits message to its neighbors in parallel with each iteration, the convergence behavior of NBP is very unsatisfactory. This is mainly because the message passing from the fault UAV to normal one, which may contain significant bias from true distribution, may corrupt the belief of the normal UAV and slow down the convergence of the algorithm. Therefore, in our implementation, as in [12], we use a modified message passing schedule in which a normal node never receive messages from fault ones, and any fault node only transmits an outgoing message if it has receive at least three incoming messages. In situation where no fault UAV has three incoming messages, the threshold drops to two messages and then finally drops to one.
It should be noticed that, in the dNBP algorithm presented above, there are only two kinds of operations: the local information processing on individual UAV and the mutual message exchanges between neighboring UAVs. So, it is a fully distributed algorithm and can scale well for large UAV group. For a single UAV, the most computational demanding portions are the sampling from Gaussian mixture and evaluating Gaussian mixture at a particular location. Both require
4. Results
4.1. Case Study
In this section, we consider a typical scenario to illustrate how our algorithm works for the cooperative localization of multiple UAVs.
As shown in Figure 3, the multi-UAVs team consists of 3 normal UAVs and 3 fault UAVs.

Illustration of the dNBP.

Cooperative localization via dNBP.
Let us first consider the intraslice update in time t. Suppose at time t that UAV1, UAV2, and UAV3 are normal, and UAV4, UAV5, and UAV6 have no knowledge about their location. Thus at the iter = 0 of NBP, UAV4 receives messages from UAV1, UAV2, and UAV3. UAV5 receives messages from UAV 1 and UAV 2. UAV 6 just receives message from UAV 3. For UAV4, it can locate itself using the messages coming from the other 3 UAVs shown in Figure 4(a), where three blue ring-shaped distributions represent the messages from its neighbors (8) calculated by Algorithm 1 and the red single-modal distribution stands for its belief (position estimation) (9) calculated by Algorithm 2 concerning all the three incoming messages. From Figure 4(a), we can see that after one iteration the position of UAV4 is located successfully without ambiguity, while due to the lack of the incoming messages, the estimations of UAV5 and UAV6 represent two-modal distribution (Figure 4(b)) and ring-shaped distribution (Figure 4(c)), respectively.
At the iter = 1, UAV4 will transmit outgoing messages to UAV5 and UAV6, as shown in Figure 3. With the incoming message sent by UAV4, UAV5 is able to locate itself by combining the messages from the other two normal UAVs (UAV1 and UAV2) as shown in Figure 4(d). For UAV6, using message coming from UAV4 enables it to improve the estimation accuracy from ring-shaped distribution to multimodal distribution shown in Figure 4(e). At iter = 2, both UAV4 and UAV5 are able to send outgoing messages according to the message update schedule. Combining incoming messages from UAV3, UAV4, and UAV5, the localization of UAV6 is accomplished, with distribution changing from multimodal to single modal, as shown in Figure 4(f). In this case, all fault UAV can localize itself without ambiguity after 3 iterations of NBP.
Now, let us turn to the dynamic case. At time t, we use the linear Markov model (1) to calculate the state predictive distribution (11) of all UAVs at time
4.2. Monte Carlo Simulation
In this section, we will demonstrate the performance of our method implemented in Matlab by Monte Carlo simulations and compare it with the traditional cooperative localization method in [7], where the fault UAVs are located based on nearby normal ones only.
We consider the case in which
In each simulation, the true trajectories of UAVs and observations data are generated as above, and then our dNBP and traditional cooperative localization algorithm [7] are applied. The main performance criterion is the mean position estimate error, which is defined as

Mean estimate error versus time.
The localization performance is influenced by many factors, including the number of normal UAVs in the group, the UAV communication range, and the noise in GPS and relative distance measurements. Next, we investigate the behavior of the localization algorithms under varying operating conditions by changing one factor and fixing others. The criterion statistics in all results below are summarized from 100 Monte Carlo simulations.
As mentioned before, the normal UAVs serve as anchors during cooperative localization. Thus, we are interested in what happens in dNBP and traditional algorithms when the number of normal UAVs changes. Figure 6(a) shows the results. The x-axis is defined as the ratio of normal UAV number to total number. In these simulations, we disable the switching of GPS state to keep the number of normal UAVs fixed. We can see from Figure 6(a) that the performance of traditional cooperative localization algorithm is heavily dependent on the number of normal UAVs. When the normal UAVs become sparse in the team, many fault UAVs cannot locate themselves due to the lack of normal neighbors, resulting in the rapid decline in localization accuracy. In contrast, in dNBP, the knowledge of normal UAVs can propagate throughout the whole networks by Belief Propagation and the fault UAV can locate itself successfully even when no normal UAV exists nearby. However, in order to keep all the position estimations of the fault UAVs correct, having at least three normal UAVs in the team is a must.

Performance comparison. (a) Mean estimate error versus proportion of normal UAVs. (b) Mean estimate error versus communication range. (c) Mean estimate error versus GPS noise. (d) Mean estimate error versus relative distance noise.
The transmitter range R is another important factor influencing the algorithm performance. The specific connection pattern of the UAVs group at any timestep is determined by the actual position of UAVs and their possible communication distance. We observe the behavior of dNBP and traditional algorithm when UAV's transmitter range is varying and we depict them in Figure 6(b). It is clear that, when R is small, both algorithms perform very poorly due to the lack of information for localization. On the other hand, when R is large enough, all UAVs in the group can connect to at least 3 normal ones. Thus, both algorithms show good performance. But it is noticeable that dNBP outperforms traditional algorithm significantly when R is varying between 200 and 350 meters. In fact, in dNBP, the position knowledge can be exchanged between two unconnected UAVs by a sequence of short range knowledge propagations. In Figure 6(b), when the communication range is large enough (>500 m), almost each pair of UAVs in the group can exchange information mutually. Thus, it can be ensured that there are at least three normal ones in the neighborhood of each fault UAV. In this case, the least square method can obtain the optimal estimate. So, when the communication range is larger than 500 m, as shown in Figure 6(b), traditional method performs better than dNBP.
We also compare the performance of dNBP and traditional method under varying GPS and relative distance measurement noise. The results are shown in Figures 6(c) and 6(d), where the x-axis stands for standard derivation of GPS and relative distance measurement noise, respectively. As expected, the estimate error increases with the observation noise, and dNBP is always better than traditional one.
As discussed before, in dNBP, the messages are represented by a set of samples. The more the samples used, the more the representation and hence the inference are accurate. The dNBP is a distributed algorithm in which the computational burden is distributed to individual UAVs in the group. For each UAV, the computing time is determined by the number of samples used for representing messages and the number of its neighbors. Table 1 shows the tradeoff between estimate accuracy and computational complexity. The time in the table refers to the average time consumed by individual fault UAV in a single filtering step, including an intraslice update and an interslice prediction. We can see that using a highly unoptimized Matlab code, satisfactory localization result (error of 3 meters) can be achieved within few seconds using 300 samples for message representation. By code optimization on embedded system, reduction in measurements update frequency, and constraint in communicating neighbors, the computing time can be further reduced. This provides the basis for large scale real-time application.
Tradeoff between accuracy and complexity.
5. Conclusion
In this paper, we propose a novel approach for cooperative localization of multiple UAVs using dNBP. The proposed algorithm can locate UAV with fault GPS successfully when the communication range is short and GPS observations in the UAVs group are sparse. In practice, the motions of different UAVs in the team are always correlated. In the future, we plan to incorporate this correlation into the graphical model and develop new inference algorithm for improving the localization performance further.
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgment
This work is supported by the National Natural Science Foundation of China under Grant no. 61174020.
