The burgeoning development of unmanned aerial vehicles (UAVs) has catalyzed their adoption across a wide spectrum of civilian and military applications. In civilian domains, drone formations are revolutionizing areas such as aerial light shows, coordinated cinematography, and large-scale logistics. Militarily, the advantages of reduced cost, minimal risk to human personnel, and enhanced operational flexibility make coordinated drone formation operations a cornerstone of modern warfare strategies. As mission complexity escalates, the reliance on sophisticated multi-agent systems becomes paramount. Within this context, cooperative navigation emerges as a critical enabling technology, ensuring that all members of a drone formation maintain accurate positional awareness relative to each other and to a global reference, thereby guaranteeing the integrity and success of the collective mission.
The core challenge in cooperative navigation for drone formations lies in fusing imperfect information from heterogeneous sources. A prevalent architecture is the master-slave configuration. In this setup, a designated master drone is equipped with high-precision navigation systems, such as a GPS/INS (Global Positioning System/Inertial Navigation System) fusion module. The slave drones, often carrying lower-grade inertial sensors and relative measurement tools like rangefinders or vision systems, rely on information shared by the master to correct their own accumulating navigation drift. This collaborative filtering process is inherently nonlinear and often must contend with non-Gaussian noise characteristics in real-world measurements, rendering traditional linear estimation techniques suboptimal.

My research addresses the precise problem of state estimation within a master-slave drone formation under realistic conditions. While extensive work exists, many studies simplify scenarios using constant-velocity models or assume benign Gaussian noise. This work introduces a more practical motion model incorporating maneuvering phases and, crucially, integrates flicker noise into the observation model—a common, “heavy-tailed” non-Gaussian disturbance encountered in ranging systems due to factors like multipath propagation or intermittent signal blockage. To handle this compounded nonlinearity and non-Gaussianity, the particle filter (PF), a powerful sequential Monte Carlo method, is employed. Furthermore, I propose and validate a novel improvement to the standard PF algorithm designed to mitigate the well-known particle impoverishment issue that arises during resampling, thereby enhancing the overall navigation accuracy and robustness of the drone formation.
System Modeling for Drone Formation Navigation
Master-Slave Kinematic Model
To accurately represent the dynamics of a drone formation, a kinematic model that accounts for both straight-line and turning flight is essential. The state of a slave drone at time step \(k\) is defined as:
$$ \mathbf{x}_k = [x_k, y_k, \dot{x}_k, \dot{y}_k]^T $$
where \(x_k\) and \(y_k\) denote the 2D position coordinates, and \(\dot{x}_k\), \(\dot{y}_k\) represent the corresponding velocities. The discrete-time state transition model is given by:
$$ \mathbf{x}_{k+1} = \mathbf{F}_k \mathbf{x}_k + \mathbf{G} \boldsymbol{\omega}_k $$
Here, \(\boldsymbol{\omega}_k \sim \mathcal{N}(\mathbf{0}, \mathbf{Q})\) is the Gaussian process noise. The state transition matrix \(\mathbf{F}_k\) and noise input matrix \(\mathbf{G}\) are defined as follows to model coordinated turns with rate \(w\) and sampling period \(T\):
$$
\mathbf{F}_k = \begin{bmatrix}
1 & 0 & \frac{\sin(wT)}{w} & -\frac{(1-\cos(wT))}{w} \\
0 & 1 & \frac{(1-\cos(wT))}{w} & \frac{\sin(wT)}{w} \\
0 & 0 & \cos(wT) & -\sin(wT) \\
0 & 0 & \sin(wT) & \cos(wT)
\end{bmatrix}, \quad
\mathbf{G} = \begin{bmatrix}
\frac{T^2}{2} & 0 \\
0 & \frac{T^2}{2} \\
T & 0 \\
0 & T
\end{bmatrix}
$$
A positive \(w\) indicates a left-turn maneuver for the drone formation, while a negative \(w\) indicates a right turn. For straight-line flight segments, \(w\) is set to zero, simplifying \(\mathbf{F}_k\) to a constant-velocity model. This hybrid model more faithfully represents the flight profile of a practical drone formation mission.
Observation Model with Flicker Noise
The slave drone estimates its state based on its own proprioceptive data and relative measurements to the master drone. It is assumed the slave is equipped with a relative range-and-bearing sensor (e.g., radar or lidar). The observation vector \(\mathbf{z}_k\) at time \(k\) is:
$$ \mathbf{z}_k = h(\mathbf{x}_k, \mathbf{x}_k^m) + \mathbf{e}_k $$
where \(\mathbf{x}_k^m = [x_k^m, y_k^m, \dot{x}_k^m, \dot{y}_k^m]^T\) is the master drone’s state (broadcast to the slave), \(h(\cdot)\) is the nonlinear observation function, and \(\mathbf{e}_k\) is the measurement noise. The function \(h(\cdot)\) calculates the relative range \(r_k\) and bearing \(\theta_k\):
$$ h(\mathbf{x}_k, \mathbf{x}_k^m) = \begin{bmatrix} r_k \\ \theta_k \end{bmatrix} = \begin{bmatrix} \sqrt{(x_k^m – x_k)^2 + (y_k^m – y_k)^2} \\ \arctan\left(\frac{y_k^m – y_k}{x_k^m – x_k}\right) \end{bmatrix} $$
The key innovation in this model is the characterization of \(\mathbf{e}_k\). Instead of standard Gaussian noise, I model it as flicker noise, a mixture distribution that captures occasional large outliers. Its probability density function (PDF) is a weighted sum of two Gaussian components:
$$ p(\mathbf{e}_k) = (1 – \epsilon) \mathcal{N}(\mathbf{e}_k; \boldsymbol{\mu}_1, \mathbf{R}_1) + \epsilon \mathcal{N}(\mathbf{e}_k; \boldsymbol{\mu}_2, \mathbf{R}_2) $$
where \(\epsilon \in [0, 1]\) controls the intensity of the flicker (outlier) component. Typically, \(\boldsymbol{\mu}_1 = \boldsymbol{\mu}_2 = \mathbf{0}\), but the covariance of the second component is much larger (\(\mathbf{R}_2 \gg \mathbf{R}_1\)), giving the distribution its “heavy-tailed” property. This model significantly increases the realism of the simulation for the drone formation navigation problem.
Filtering Algorithms for State Estimation
Standard Particle Filter (PF)
The particle filter is a sequential Monte Carlo method ideal for the nonlinear, non-Gaussian problem posed by our drone formation model. It approximates the posterior probability density function \(p(\mathbf{x}_{0:k} | \mathbf{z}_{1:k})\) using a set of \(N_s\) random samples (particles) \(\{\mathbf{x}_{0:k}^i\}_{i=1}^{N_s}\) with associated weights \(\{\omega_k^i\}_{i=1}^{N_s}\). The posterior is approximated as:
$$ p(\mathbf{x}_{0:k} | \mathbf{z}_{1:k}) \approx \sum_{i=1}^{N_s} \omega_k^i \delta(\mathbf{x}_{0:k} – \mathbf{x}_{0:k}^i) $$
where \(\delta(\cdot)\) is the Dirac delta function. The algorithm proceeds recursively in three main steps:
1. Prediction: Each particle is propagated forward using the system dynamics model:
$$\mathbf{x}_k^{i-} \sim p(\mathbf{x}_k | \mathbf{x}_{k-1}^i)$$
This corresponds to sampling from the prior distribution.
2. Update: When a new measurement \(\mathbf{z}_k\) arrives, the weight of each particle is updated based on the likelihood of the measurement given the particle’s state:
$$\omega_k^i \propto \omega_{k-1}^i \cdot p(\mathbf{z}_k | \mathbf{x}_k^{i-})$$
For our observation model, \(p(\mathbf{z}_k | \mathbf{x}_k^{i-})\) is evaluated using the flicker noise PDF defined above. The weights are then normalized so that \(\sum_{i=1}^{N_s} \omega_k^i = 1\).
3. Resampling: To counteract weight degeneracy (where only a few particles hold significant weight), a resampling step is performed. Particles are duplicated or discarded based on their weights, yielding a new set of \(N_s\) equally weighted particles \(\{\mathbf{x}_k^{i*}, 1/N_s\}\). This step, however, is the root cause of particle impoverishment, where diversity is lost as high-weight particles are repeatedly copied.
The state estimate and its covariance for the slave drone in the drone formation are computed as:
$$ \hat{\mathbf{x}}_k = \sum_{i=1}^{N_s} \omega_k^i \mathbf{x}_k^{i-}, \quad \mathbf{P}_k = \sum_{i=1}^{N_s} \omega_k^i (\mathbf{x}_k^{i-} – \hat{\mathbf{x}}_k)(\mathbf{x}_k^{i-} – \hat{\mathbf{x}}_k)^T $$
Improved Particle Filter with Weight Influence Factor
The proposed enhancement targets the resampling-induced particle impoverishment. The core idea is to modulate the particle weights before resampling using an influence factor \(\alpha\) (where \(0 < \alpha < 1\)). This softens the extreme differences between large and small weights, preserving some diversity.
After the standard weight update and normalization to get \(\tilde{\omega}_k^i\), the modified weight \(\omega_k^{i, new}\) is calculated as:
$$ \omega_k^{i, new} = \frac{(\tilde{\omega}_k^i)^\alpha}{\sum_{j=1}^{N_s} (\tilde{\omega}_k^j)^\alpha} $$
The effect of this transformation can be proven analytically. Assume the normalized weights are ordered such that \(0 < \tilde{\omega}_k^1 < \tilde{\omega}_k^2 < \ldots < \tilde{\omega}_k^{N_s} < 1\). For any particle \(i\) and with \(0<\alpha<1\), the transformation has the following property:
$$ \omega_k^{i, new} – \tilde{\omega}_k^i > 0 \quad \text{for small } \tilde{\omega}_k^i $$
$$ \omega_k^{i, new} – \tilde{\omega}_k^i < 0 \quad \text{for large } \tilde{\omega}_k^i $$
This is because the function \(f(\omega)=\omega^\alpha\) is concave for \(0<\alpha<1\). The transformation effectively compresses the dynamic range of the weights: small weights are increased, and large weights are decreased. Consequently, during resampling, particles with originally low likelihood have a higher chance of survival, thereby mitigating sample impoverishment and improving the filter’s ability to track abrupt state changes or recover from large measurement outliers—a critical capability for maintaining drone formation integrity.
Simulation Results and Comparative Analysis
To validate the performance of the proposed improved PF (IPF) against the standard PF (SPF) for drone formation navigation, Monte Carlo simulations were conducted. The master drone trajectory involved alternating segments of constant-velocity and coordinated-turn maneuvers. The slave drone’s initial state had significant error. Key simulation parameters are summarized below:
| Parameter | Value |
|---|---|
| Master Drone Initial State | Position (520 m, 560 m), Velocity (50 m/s, 50 m/s) |
| Slave Drone Initial State Estimate | Position (400 m, 400 m), Velocity (50 m/s, 50 m/s) |
| Process Noise Covariance \(\mathbf{Q}\) | \(\text{diag}([1, 1, 0.1, 0.1])\) |
| Observation Noise: Flicker Parameter \(\epsilon\) | 0.75 |
| Observation Noise: Standard Deviations | Range: 5 m; Bearing (Gaussian comp.): 0.4°; Bearing (Flicker comp.): 0.8° |
| Weight Influence Factor \(\alpha\) (for IPF only) | 0.6 |
| Number of Particles \(N_s\) | 500 |
| Number of Monte Carlo Runs \(M\) | 100 |
The primary metric for evaluation is the Root Mean Square Error (RMSE) in position and velocity, averaged over all Monte Carlo runs:
$$ \text{RMSE}_{\text{pos}}(k) = \sqrt{\frac{1}{M} \sum_{m=1}^{M} \left[ (x_k^m – \hat{x}_k^m)^2 + (y_k^m – \hat{y}_k^m)^2 \right] } $$
$$ \text{RMSE}_{\text{vel}}(k) = \sqrt{\frac{1}{M} \sum_{m=1}^{M} \left[ (\dot{x}_k^m – \hat{\dot{x}}_k^m)^2 + (\dot{y}_k^m – \hat{\dot{y}}_k^m)^2 \right] } $$
The navigation performance of both filters is quantitatively compared in the following table, which shows the average RMSE over the entire trajectory:
| Algorithm | Average Position RMSE (m) | Average Velocity RMSE (m/s) | Peak Position Error (m) |
|---|---|---|---|
| Standard Particle Filter (SPF) | 8.42 | 1.38 | ~16.5 |
| Improved Particle Filter (IPF) | 5.17 | 0.89 | ~10.2 |
The results clearly demonstrate the superiority of the IPF. The introduction of the weight influence factor \(\alpha\) led to a significant reduction in both average and peak estimation errors. Qualitatively, the trajectory estimated by the SPF showed a noticeable divergence from the true path during the later stages of the simulation, especially after maneuvers. In contrast, the IPF-estimated trajectory adhered more closely to the true path throughout the mission, demonstrating improved consistency and robustness for the drone formation navigation task.
A more detailed axis-wise analysis reveals the nature of the improvement. The following table breaks down the steady-state performance per axis:
| Axis / Metric | Standard PF (SPF) Steady-State Error | Improved PF (IPF) Steady-State Error | Improvement |
|---|---|---|---|
| X-Position (m) | ~7.5 | ~4.8 | 36% |
| Y-Position (m) | ~6.2 | ~3.9 | 37% |
| X-Velocity (m/s) | ~1.2 | ~0.75 | 38% |
| Y-Velocity (m/s) | ~1.5 | ~0.95 | 37% |
The IPF consistently outperforms the SPF across all state variables. The reduction in velocity error is particularly important for a drone formation, as accurate velocity estimates are crucial for maintaining tight formation geometry, executing coordinated maneuvers, and ensuring collision avoidance. The mitigation of particle impoverishment allows the filter to maintain a more accurate and diverse representation of the state posterior probability, enabling it to better handle the challenging combination of nonlinear dynamics and non-Gaussian flicker noise.
Conclusion
This work has presented a comprehensive framework for cooperative navigation in a master-slave drone formation under realistic conditions. By employing a kinematic model that incorporates maneuvering phases and, critically, an observation model corrupted by flicker noise—a common yet often neglected non-Gaussian disturbance—the simulation environment closely mirrors practical challenges. The standard particle filter, while capable, suffers from performance degradation due to particle impoverishment following resampling.
The proposed improvement, which introduces a weight influence factor during the weight normalization stage, effectively addresses this limitation. The mathematical proof and subsequent simulation results confirm that this simple yet powerful modification compresses the weight distribution, allowing lower-weight particles a greater chance of survival. This preserved diversity leads to a more robust approximation of the posterior state distribution. The comparative simulations demonstrate a substantial improvement in navigation accuracy for the slave drone within the drone formation, with reductions of approximately 37% in both position and velocity RMSE compared to the standard algorithm.
Future work will focus on extending this approach to more complex, heterogeneous drone formations with multiple masters and slaves, investigating adaptive schemes for tuning the influence factor \(\alpha\) online, and implementing the algorithm on embedded hardware for real-time flight testing. The enhanced particle filtering method proven here provides a solid foundation for achieving reliable and precise cooperative navigation, which is indispensable for the future of autonomous multi-drone systems.
