The formation drone light show has emerged as a spectacular and technologically sophisticated application, where a swarm of unmanned aerial vehicles (UAVs) operates in a coordinated manner to create dynamic, luminous patterns in the night sky. Achieving precise, reliable, and scalable formation control for such aerial displays presents significant challenges, primarily due to the underactuated, nonlinear dynamics of individual quadrotors and the constraints of real-time, distributed communication. In a large-scale formation drone light show, it is often impractical for every drone to receive direct commands or state information from a central leader or ground station due to communication range, latency, and robustness issues. Therefore, developing distributed control strategies where drones rely on information from only a limited set of neighbors is crucial. This paper addresses the formation tracking control problem for a group of quadrotor drones, where only a subset of drones has direct access to the state information of a virtual leader dictating the global motion of the light show pattern.

We propose a novel distributed finite-time control scheme integrated with a state observer. The core idea is to equip each follower drone with a finite-time state observer. This observer estimates the relative state difference between itself and the virtual leader using only local information exchanges with its neighboring drones, as defined by a communication graph. This approach circumvents the need for global communication. Subsequently, a finite-time formation tracking controller is designed using these estimates, ensuring that the entire fleet not only achieves the desired geometric pattern but also does so within a finite settling time, which is vital for the tight synchronization required in a formation drone light show. The stability of both the observer and the closed-loop control system is rigorously proven using Lyapunov and homogeneous system theory.
1. System Dynamics and Problem Formulation
We consider a fleet of n identical quadrotor drones. The dynamics of the i-th quadrotor (i = 1, …, n) are derived under standard assumptions (rigid body, symmetric structure) and are described in the Earth-fixed inertial frame and the body-fixed frame. The model is decomposed into translational (position) and rotational (attitude) subsystems due to its strict-feedback form.
The translational dynamics are given by:
$$
\begin{align}
\dot{\boldsymbol{p}}_i &= \boldsymbol{v}_i \\
m \dot{\boldsymbol{v}}_i &= m g \boldsymbol{e}_3 – u_{T,i} \boldsymbol{R}(\boldsymbol{\Theta}_i) \boldsymbol{e}_3
\end{align}
$$
where $\boldsymbol{p}_i = [x_i, y_i, z_i]^T$ and $\boldsymbol{v}_i = [u_i, v_i, w_i]^T$ are the position and velocity vectors. $m$ is the mass, $g$ is gravitational acceleration, and $\boldsymbol{e}_3 = [0, 0, 1]^T$. $\boldsymbol{R}(\boldsymbol{\Theta}_i)$ is the rotation matrix from the body to the inertial frame, parameterized by the Euler angles $\boldsymbol{\Theta}_i = [\phi_i, \theta_i, \psi_i]^T$ (roll, pitch, yaw). $u_{T,i}$ is the total thrust magnitude generated by the four rotors.
The rotational dynamics are given by:
$$
\begin{align}
\dot{\boldsymbol{\Theta}}_i &= \boldsymbol{\Pi}(\boldsymbol{\Theta}_i) \boldsymbol{\Omega}_i \\
\boldsymbol{J} \dot{\boldsymbol{\Omega}}_i &= -\boldsymbol{\Omega}_i \times \boldsymbol{J} \boldsymbol{\Omega}_i + \boldsymbol{G}_a + \boldsymbol{\tau}_i
\end{align}
$$
where $\boldsymbol{\Omega}_i = [p_i, q_i, r_i]^T$ is the angular velocity in the body frame. $\boldsymbol{J}=diag(I_{xx}, I_{yy}, I_{zz})$ is the inertia matrix. $\boldsymbol{\Pi}(\boldsymbol{\Theta}_i)$ is the transformation matrix relating $\dot{\boldsymbol{\Theta}}_i$ and $\boldsymbol{\Omega}_i$. $\boldsymbol{G}_a$ represents gyroscopic effects from the rotors, and $\boldsymbol{\tau}_i = [\tau_{\phi,i}, \tau_{\theta,i}, \tau_{\psi,i}]^T$ is the control torque vector. The thrust and torques are related to the rotor speeds $\omega_{j,i}$ ($j=1,…,4$) by:
$$
\begin{bmatrix} u_{T,i} \\ \tau_{\phi,i} \\ \tau_{\theta,i} \\ \tau_{\psi,i} \end{bmatrix} =
\begin{bmatrix}
c & c & c & c \\
0 & -c l & 0 & c l \\
c l & 0 & -c l & 0 \\
-k & k & -k & k
\end{bmatrix}
\begin{bmatrix} \omega_{1,i}^2 \\ \omega_{2,i}^2 \\ \omega_{3,i}^2 \\ \omega_{4,i}^2 \end{bmatrix}
$$
where $c$ is the thrust coefficient, $k$ is the drag coefficient, and $l$ is the arm length.
The control objective for the formation drone light show is to have all follower drones track a predefined geometric pattern relative to a virtual leader while following the leader’s trajectory. Let $\boldsymbol{p}_0(t)$, $\boldsymbol{v}_0(t)$, and $\psi_0(t)$ denote the position, velocity, and yaw angle of the virtual leader. The desired position for drone i is $\boldsymbol{p}_0(t) + \boldsymbol{b}_i$, where $\boldsymbol{b}_i = [b_{x,i}, b_{y,i}, b_{z,i}]^T$ is the constant formation offset. The goal is to achieve:
$$
\lim_{t \to T} (\boldsymbol{p}_i(t) – \boldsymbol{p}_0(t)) = \boldsymbol{b}_i, \quad \lim_{t \to T} \psi_i(t) = \psi_0(t)
$$
for all i = 1, …, n, where $T > 0$ is a finite convergence time.
2. Communication Topology and Distributed State Observer
The communication among the n follower drones and the virtual leader (indexed as 0) is modeled by a directed graph $\mathcal{G}$. The adjacency matrix $\mathcal{A} = [a_{ij}] \in \mathbb{R}^{(n+1)\times(n+1)}$ defines the information flow: $a_{ij}=1$ if drone j can receive information from drone i, else $a_{ij}=0$. A key assumption is that the virtual leader is a root node, meaning there exists a directed spanning tree in $\mathcal{G}$ rooted at node 0. Importantly, only a subset of drones has $a_{i0}=1$, meaning they have direct access to the leader’s state $(\boldsymbol{p}_0, \boldsymbol{v}_0)$.
To overcome this limited information access, we design a distributed finite-time state observer for each follower drone. The observer’s purpose is to estimate the relative state errors $\tilde{\boldsymbol{p}}_i = \boldsymbol{p}_i – \boldsymbol{p}_0 – \boldsymbol{b}_i$ and $\tilde{\boldsymbol{v}}_i = \boldsymbol{v}_i – \boldsymbol{v}_0$ using only information from its neighbors $N_i$ in $\mathcal{G}$.
For each axis (e.g., x-axis), the observer for drone i is designed as:
$$
\begin{align}
\dot{\hat{r}}_{x,i} &= \hat{h}_{u,i} – \lambda_0 \text{sign}(\vartheta_{x,i}) – \lambda_1 \vartheta_{x,i} \\
\dot{\hat{h}}_{u,i} &= U_{x,i} – \lambda_2 \text{sign}(\vartheta_{u,i}) – \lambda_3 \vartheta_{u,i}
\end{align}
$$
where $\hat{r}_{x,i}$ and $\hat{h}_{u,i}$ are estimates of $\tilde{x}_i$ and $\tilde{u}_i$, respectively. $U_{x,i}$ is the virtual control input for the x-axis position dynamics. The consensus error terms are defined as:
$$
\vartheta_{x,i} = \sum_{j \in N_i} a_{ij} (\hat{r}_{x,i} – \hat{r}_{x,j}), \quad \vartheta_{u,i} = \sum_{j \in N_i} a_{ij} (\hat{h}_{u,i} – \hat{h}_{u,j})
$$
The parameters $\lambda_0, \lambda_1, \lambda_2, \lambda_3 > 0$ are chosen appropriately, with $\lambda_2$ being sufficiently large. The observers for the y and z axes follow an identical structure. The finite-time convergence of the observer errors $\boldsymbol{e}_{r,i} = \hat{\boldsymbol{r}}_i – \tilde{\boldsymbol{p}}_i$ and $\boldsymbol{e}_{h,i} = \hat{\boldsymbol{h}}_i – \tilde{\boldsymbol{v}}_i$ to zero can be proven using a Lyapunov approach combined with a homogeneity argument. This proof shows that after a finite time $T_o$, $\hat{\boldsymbol{r}}_i \equiv \tilde{\boldsymbol{p}}_i$ and $\hat{\boldsymbol{h}}_i \equiv \tilde{\boldsymbol{v}}_i$ for all drones.
3. Finite-Time Formation Tracking Controller Design
The controller design follows a backstepping-inspired, hierarchical structure: an outer-loop position controller and an inner-loop attitude controller.
3.1 Position Controller
Using the estimates from the finite-time observer, we design a virtual control input $\boldsymbol{U}_i = [U_{x,i}, U_{y,i}, U_{z,i}]^T$ to stabilize the position dynamics. A finite-time stabilizing controller is proposed:
$$
\begin{aligned}
U_{x,i} &= -\eta_1 \text{sign}(\hat{r}_{x,i}) |\hat{r}_{x,i}|^{\alpha} – \eta_2 \text{sign}(\hat{h}_{u,i}) \chi(|\hat{h}_{u,i}|) \\
U_{y,i} &= -\eta_1 \text{sign}(\hat{r}_{y,i}) |\hat{r}_{y,i}|^{\alpha} – \eta_2 \text{sign}(\hat{h}_{v,i}) \chi(|\hat{h}_{v,i}|) \\
U_{z,i} &= -\eta_1 \text{sign}(\hat{r}_{z,i}) |\hat{r}_{z,i}|^{\alpha} – \eta_2 \text{sign}(\hat{h}_{w,i}) \chi(|\hat{h}_{w,i}|) – g
\end{aligned}
$$
where $\eta_1 > \eta_2 > 0$, $0 < \alpha < 1$, and $\chi(\cdot)$ is a continuous bounded function like $\tanh(\cdot)$ or $\arctan(\cdot)$. This control law ensures that once the observer converges (after $T_o$), the position tracking errors $\tilde{\boldsymbol{p}}_i$ and $\tilde{\boldsymbol{v}}_i$ are driven to zero in finite time $T_p$.
The total thrust command $u_{T,i}$ and the desired roll ($\phi_{d,i}$) and pitch ($\theta_{d,i}$) angles are then extracted from $\boldsymbol{U}_i$:
$$
\begin{align}
u_{T,i} &= m \|\boldsymbol{U}_i\| \\
\phi_{d,i} &= \arcsin\left( \frac{m}{u_{T,i}} (U_{x,i} \sin\psi_{d,i} – U_{y,i} \cos\psi_{d,i}) \right) \\
\theta_{d,i} &= \arctan\left( \frac{U_{x,i} \cos\psi_{d,i} + U_{y,i} \sin\psi_{d,i}}{U_{z,i} + g} \right)
\end{align}
$$
The desired yaw $\psi_{d,i}$ is simply set to the leader’s yaw $\psi_0$.
3.2 Attitude Controller
Define the attitude tracking error as $\boldsymbol{e}_{\Theta,i} = \boldsymbol{\Theta}_{d,i} – \boldsymbol{\Theta}_i$ and its derivative $\boldsymbol{e}_{\Omega,i} = \dot{\boldsymbol{e}}_{\Theta,i}$. A sliding mode surface is defined, and a finite-time attitude controller is designed:
$$
\boldsymbol{\tau}’_i = -\eta_3 \text{sign}(\boldsymbol{e}_{\Theta,i}) |\boldsymbol{e}_{\Theta,i}|^{\beta} – \eta_4 \text{sign}(\boldsymbol{s}_i) – \eta_5 \boldsymbol{s}_i + \boldsymbol{f}_i
$$
where $\boldsymbol{s}_i = \boldsymbol{e}_{\Omega,i} + \boldsymbol{e}_{\Theta,i}$, $0 < \beta < 1$, $\eta_3, \eta_4, \eta_5 > 0$, and $\boldsymbol{f}_i$ contains known nonlinear terms from the attitude dynamics. The actual control torque $\boldsymbol{\tau}_i$ is computed as $\boldsymbol{\tau}_i = \boldsymbol{J} \boldsymbol{\Pi}(\boldsymbol{\Theta}_i) \boldsymbol{\tau}’_i$. This controller guarantees that $\boldsymbol{e}_{\Theta,i}$ and $\boldsymbol{e}_{\Omega,i}$ converge to zero in finite time $T_a$.
4. System Performance and Simulation Analysis
The performance of the proposed distributed control framework for a formation drone light show is validated through numerical simulation. Consider a fleet of 4 follower drones forming a square formation around a virtual leader. The communication topology ensures only one follower has direct access to the leader’s state. Key parameters for the drones and controllers are summarized below.
| Parameter | Value | Description |
|---|---|---|
| $m$ | 1.1 kg | Mass |
| $g$ | 9.81 m/s² | Gravity |
| $[I_{xx}, I_{yy}, I_{zz}]$ | $[1.9, 1.9, 2.1] \times 10^{-3}$ kg·m² | Inertia |
| $l$ | 0.15 m | Arm length |
| $c$ | $2.4 \times 10^{-6}$ N·s²/rad² | Thrust coefficient |
| $\eta_1, \eta_2$ | 15, 10 | Position control gains |
| $\eta_3, \eta_4, \eta_5$ | 15, 9, 10 | Attitude control gains |
| $\lambda_0, \lambda_1, \lambda_2, \lambda_3$ | 0.01, 20, 10, 0.02 | Observer gains |
| $\alpha, \beta$ | 0.6, 0.2 | Fractional powers |
The desired formation offsets $\boldsymbol{b}_i$ for the square are: $\boldsymbol{b}_1=[0.8, 0.8, 0]^T$, $\boldsymbol{b}_2=[-0.8, 0.8, 0]^T$, $\boldsymbol{b}_3=[-0.8, -0.8, 0]^T$, $\boldsymbol{b}_4=[0.8, -0.8, 0]^T$ meters. The virtual leader follows a helical trajectory: $\boldsymbol{p}_0(t) = [5\sin(0.1t), 5\cos(0.1t), 0.1t]^T$ m.
The simulation results demonstrate the efficacy of the proposed scheme. The distributed finite-time observer successfully reconstructs the leader-follower state differences for all drones within approximately 2 seconds, even for followers without direct leader access. Following the observer convergence, the finite-time position and attitude controllers drive the drones to achieve and maintain the precise square formation while accurately tracking the leader’s complex 3D trajectory. The finite-time convergence property ensures rapid reconfiguration and robust synchronization, which are indispensable for creating seamless and dynamic visual effects in a large-scale formation drone light show.
5. Conclusion
This paper has presented a comprehensive distributed control solution for the challenging problem of coordinating a drone swarm for a formation drone light show. By integrating a distributed finite-time state observer with finite-time backstepping control, the proposed strategy enables a fleet of quadrotors to achieve precise formation tracking with only local neighbor-to-neighbor communication. The observer efficiently estimates the required leader information for all followers, and the hierarchical controller guarantees finite-time stability for both position and attitude tracking loops. The theoretical stability proofs and convincing numerical simulations confirm that the method is robust, fast-converging, and scalable. This approach provides a solid foundation for realizing complex, reliable, and autonomous aerial displays, pushing the boundaries of what is possible in coordinated formation drone light show performances.
