#  An Application of Model Reference Adaptive Control for Multi-Agent
Synchronization in Drone Networks

Miguel F. Arevalo-Castiblanco∗, Yejin Wi∗, Marzia Cescon and, César A. Uribe
∗MFAC and YW are co-first authors. MFAC and CAU are with Rice University,
Houston, TX, 77005, USA. (e-mail: {mfarevalo, cauribe}@rice.edu). YW and MC
are with the University of Houston, Houston, TX, 77204, USA. (e-mail: {ywi2,
mcescon2}@central.uh.edu). MFAC is with the Departamento de Ingeniería
Eléctrica y Electrónica, Universidad Nacional de Colombia, Bogotá, Colombia
111321<EMAIL_ADDRESS>The work of CAU is partially supported
by the National Science Foundation under Grants #2211815 and #2213568. The
work of MFAC is supported by Fullbright and the IEEE Control Systems Society
Graduate Collaboration Fellowship.

###### Abstract

This paper presents the application of a Distributed Model Reference Adaptive
Control (DMRAC) strategy for robust multi-agent synchronization of a network
of drones. The proposed approach enables the development of controllers
capable of accommodating differences in real-life model parameters between
agents, thereby enhancing overall network performance. We compare the
performance of the adaptive control laws with classical PID controllers for
the reference tracking task. Each follower drone has a model reference
adaptive controller that continuously updates its parameters based on real-
time feedback and reference model information. This adaptability ensures an
adequate performance that, compared to conventional non-adaptive techniques,
can reduce the amount of energy required and consequently increase the
operating duration of the drones. The experimental results, particularly in
vertical velocity control, underscore the effectiveness of the proposed
approach in achieving synchronized behavior.

###### Index Terms:

Networked Systems, Drones Network, Model Reference Adaptive Control, PID
Control.

##  I Introduction

The proliferation of drone technology has led to diverse applications ranging
from surveillance and monitoring to environmental exploration and disaster
response [1, 2]. Among others, synchronization is a fundamental requirement
for collaborative tasks, ensuring that drones operate harmoniously to
accomplish mission objectives [3]. However, successfully deploying drone
networks in real-world scenarios generates inherent challenges for efficient
synchronization [4].

One key challenge in achieving synchronization in drone networks lies in
variations in their dynamics and parameters, which are inevitable in the real
world. These variations arise from manufacturing discrepancies, wear and tear,
environmental factors, or different payloads, posing a significant challenge
to developing effective control strategies for the network as a whole [5]. The
difference between the behaviors presented by the agents in simulation
compared to the behaviors that occur in reality is called the reality gap, as
given in [6].

This paper develops an application (from system identification and control
design to physical implementation in a real drone network) of a Distributed
Model Reference Adaptive Control (DMRAC) strategy designed to enable the
seamless integration of adaptive control techniques into multi-agent drone
systems without the use of complex methods such as projections or inverse
control laws [7]. The primary objective of our research is to implement and
evaluate the performance of an adaptive control framework that can accommodate
differences in the model parameters of individual drones within a network. The
DMRAC approach leverages adaptive control principles, allowing each drone to
continuously update its parameters based on real-time feedback and reference
model information. This adaptability ensures that the drones can autonomously
and dynamically adjust their behavior, promoting synchronization in the face
of varying environmental conditions and drone-specific characteristics.
Furthermore, our research integrates classical control techniques into an
experiment framework to validate performance by considering heterogeneous
agents in the drone network without running additional identification and
control design routines for each agent in the system. The framework consisted
of 5 experiments: 1) an initial experiment to test MRAC and PID controllers in
a centralized manner. 2) A communication experiment between drones. 3) The
heterogeneous communication controller. 4) A battery-life test, and 5) the
final experiment with a larger number of physical drones. This framework
facilitates an examination of both the temporal response of the controllers
and the energy associated with the generated control actions.

The subsequent sections of the paper are structured as follows: Section II
presents the modeling and dynamic analysis of the drones used in the
experimentation. Section III defines an identification process and vertical
velocity control for the leader drone. With the reference identified, the
distributed adaptive control design is presented in Section IV. The validation
and comparison of these technologies are presented in section V, to obtain
conclusions and define future work in section VI.

Notation. The set of real numbers is denoted as $\mathbb{R}$. We write
$\mathbf{X}^{\top}$, $x^{\top}$, $f(\cdot)^{\top}$ for the transpose of a
matrix, a vector, or a function, respectively. In graph theory, a directed
graph is defined as the pair $(\mathcal{V},\mathcal{E})$, where $\mathcal{V}$
is the set of graph nodes, and $\mathcal{E}\in\mathcal{V}\times\mathcal{V}$ is
the set of communication edges. The adjacency matrix of the graph
$\mathcal{G}$ is defined as $\mathbf{A}=[a_{ij}]$ where $a_{ii}=0$ and
$a_{ij}=1$ if and only if $(j,i)\in\mathcal{E}$, where $i\neq j$. The
Laplacian matrix of a graph is defined as $\mathbf{L}=\mathbf{D}-\mathbf{A}$,
with $\mathbf{D}$ as the degree matrix. Based on the $\mathbf{L}$ structure,
at least one of its eigenvalues is zero, and the rest have nonnegative real
parts. A digraph $\mathcal{G}$ is weight-balanced if and only if
$1^{\top}_{N}\mathbf{L=0}$.

##  II Quadrotor Dynamics and Kinematics

This section describes the hardware, including the mathematical model of the
drone platform for vertical velocity control in a synchronization context. The
modeling process for the control of each variable is done according to the
hardware resources available for experimentation.

We consider a network of $N$ intercommunicated drones. Each drone has the
configuration shown in Fig. 1(a) composed of a quadcopter airframe with $x$,
$y$, and $z$ as the body frame with red lines, the angles with black lines,
and the angular velocities yaw ($p$, $\phi$), pitch ($q$, $\theta$) and roll
($r$, $\psi$) with blue lines. Each drone has wireless communication with its
peers within a predefined communication graph, as seen in Fig. 1(b). One of
the drones is considered a leader (shown in red), and the rest are considered
as followers (shown in blue). All the agents have a set of dynamic variables.
We denoted $x_{m}$ to the leader set of variables, and
$x_{i}\;\forall\in\mathcal{V}$ for the follower agents.

Synchronization is measured through the difference in the state variables of
two agents. Synchronization errors can be denoted as $e_{i}=x_{m}-x_{i}$ or
$e_{ij}=x_{i}-x_{j}$.

(a)

(b)

Figure 1: (a) Quadrotor body frame; angles and angular velocities. (b) Block
diagram DMRAC drone implementation.

Given a desired trajectory for a drone network to follow, with a desired
position, velocity, and acceleration defined as $\mathbf{r}_{b}^{d}$,
$\mathbf{v}_{b}^{d}$, and $\mathbf{\dot{v}}_{b}^{d}$, respectively, the
objective is to design a control input$f_{i},\bm{\tau}_{i}$ for each quadrotor
so that the synchronization error tends to zero through wireless
communication.

###  II-A System Architecture

For all the experimentation process, we used the ANT-X drone, described with
the body-fixed frame in Fig. 1(a), a quadcopter designed for academic and
research purposes. General specifications of the vendor can be found at
https://antx.it/educational-products-antx/dronelab-antx/.

The ANT-X is a quadcopter with six degrees of freedom (6DOF), operated using
its own hardware and software systems as presented in Fig. 2. The hardware
system comprises a lightweight quadcopter, a Flight Control Unit (FCU)
equipped with an Inertial Measurement Unit (IMU) to measure the parameters of
the Unmanned Aerial Vehicle (UAV), a Flight Companion Computer (FCC) for
transmission, a Ground Control Station (GCS) for interacting with users, and
OptiTrack cameras to obtain the quadcopter’s position in a flight volume. The
quadcopter’s software system consists of MATLAB, Simulink, PX4 Autopilot, an
open-source flight control program for drones, Robot Operating Systems (ROS),
which facilitate the implementation of the system, and motion capture system
(MoCap) for transmission of the captured drone’s information via OptiTrack
cameras.

Each drone is equipped with FCC running a Linux distribution that provides
high-level computing capabilities and allows communication with the GCS via
WiFi. Additionally, the user can customize them using the SLXtoPX4 software
tool, which allows high-level controllers to be implemented in Simulink,
automatically generate the controller code, and integrate it with the
firmware.

Figure 2: Software architecture for implementation in ANT-X drones.

###  II-B Dynamic Model

The model describing the attitude dynamics is given by the conservation of
angular momentum defined in the quadrotor’s body frame as:

$J\dot{\Omega}+\Omega\times J\Omega=T_{c}+T_{e},$ (1)

where we denote the inertia matrix referred to the center of mass of the
quadrotor with $J\in\mathbb{R}^{3\times 3}$, the vector of the angular
velocities about the $x-$, $y-$ and $z-$ axis, respectively, in the quadrotor
body frame depicted in Fig. 1(a) with
$\Omega=[p\;q\;r]^{\top}\in\mathbb{R}^{3}$,
$T_{c}=[L_{c}\;M_{c}\;N_{c}]^{\top}\in\mathbb{R}^{3}$ is the control torque
acting at the center of mass of the quadrotor delivered by the propellers,
$T_{e}=[L_{e}\;M_{e}\;N_{e}]^{\top}\in\mathbb{R}^{3}$ is the exogenous torque
acting at the center of mass of the quadrotor collecting the effect of
exogenous forces and torques (gravity, aerodynamics, and friction),
$\phi,\theta,\psi$ are the yaw, pitch, roll angles respectively.

The attitude kinematics describing the time evolution of yaw, pitch, and roll
angles due to angular velocity is:

$\begin{bmatrix}\dot{\phi}\\\ \dot{\theta}\\\
\dot{\psi}\end{bmatrix}=\begin{bmatrix}1&-\sin(\phi)\tan(\theta)&\cos(\theta)\tan(\theta)\\\
0&\cos(\phi)&-\sin(\phi)\\\
0&\frac{\sin(\phi)}{\cos(\phi)}&\frac{\cos(\phi)}{\cos(\theta)},\end{bmatrix}\begin{bmatrix}p\\\
q\\\ r\end{bmatrix}.$ (2)

Further, the model describing translational dynamics and kinematics is
described by:

$\displaystyle\dot{S}$ $\displaystyle=V,$ (3a) $\displaystyle m\dot{V}$
$\displaystyle=mgE_{3}-T_{tot}B_{3}(\phi,\theta,\psi)+F_{e},$ (3b)

where $\ S=[x\;y\;z]^{\top}$ is the position vector of the quadrotor center of
mass for the original vector frame; $V=[v_{x}\;v_{y}\;v_{z}]^{\top}$ is the
velocity of the quadrotor center of mass resolved in the inertial frame;
$mgE_{3}=mg[0\;0\;1]^{\top}$ is the force associated with gravity determined
in the inertial frame; $F_{e}=[f_{xe}\;f_{ye}\;f_{ze}]^{\top}$ is a
disturbance force vector and, $T_{tot}$ is the total thrust delivered by the
propellers, which is directed along the negative direction of the vertical
axis of the quadrotor frame, represented in the inertial frame by the unit
vector:

$B_{3}(\phi,\theta,\psi)=\begin{bmatrix}\sin(\phi)\sin(\psi)+\cos(\phi)\sin(\theta)\cos(\psi)\\\
-\sin(\phi)\cos(\psi)+\cos(\phi)\sin(\theta)\sin(\psi)\\\
\cos(\phi)\cos(\theta)\end{bmatrix}.$ (4)

Linearized attitude and translational dynamics are obtained by linearizing the
equations of motion concerning the hovering condition, which is an equilibrium
point characterized by low velocities and slight deviations from a fixed
position. In particular, for the case under consideration in this work, the
linearized vertical dynamics ($z-$ axis) with $\Delta T_{tot}=T_{tot}-mg$ is
expressed as:

$\displaystyle\Delta\dot{z}$ $\displaystyle=\Delta v_{z},$ (5a) $\displaystyle
m\Delta\dot{v_{z}}$ $\displaystyle=-\Delta T_{tot}+f_{ze},$ (5b)

where $f_{ze}$ is the vertical component of the disturbance vector. Defining
$F_{z}=-T_{tot}$, with $F_{z}$ [N] vertical force, (5b) becomes

$m\Delta\dot{v_{z}}=\Delta F_{z}+f_{ze},$ (6)

where $\Delta F_{z}=F_{z}+mg$. Taking Laplace transform, the linearized model
can be conveniently written as:

$v_{z}(s)=G_{vz}(s)F_{z}(s),$ (7)

with $G_{vz}$ the transfer function from vertical force to vertical velocity.

Based on the dynamic expressions obtained for the vertical velocity model
$G_{vz}$ in (7), the next section shows the system identification from in-
flight experimental data to parameterize and control the leader drone in the
experiments.

##  III Leader drone parameterization

This section describes the parameterization used to control the lead drone. An
identification process is initially developed to obtain the lead agent model
parameters. With the identified dynamics, the design of a PID controller is
shown.

###  III-A System Identification

Identification experiments were conducted under closed-loop position and
attitude control to excite the vertical dynamics in the frequency range 0-10
rad/sec, which is the expected bandwidth of the vertical velocity control, by
injecting a Pseudorandom Binary Sequence (PRBS) input signal into the vertical
axis. Fig. 3(a) illustrates the collected data. $F_{z}$ and $v_{z}$ are the
input and outputs, force and velocity, respectively, and PRBS is the injected
excitation signal to the input, $v_{z}$. An equivalent time delay due to
computation and communication lags was estimated at $\tau_{e}=0.02$ sec by
visual inspection of the data. The effect of $\tau_{e}$ was removed by
shifting the output backward for accurate modeling. The Predictor-Based
Subspace Identification method PBSID${}_{\text{opt}}$ [8] was used to identify
a discrete-time, linear time-invariant (LTI) state space model with past and
future horizons, $p$ and $f$ respectively, set to be $p=f=30$, and model order
$n=2$, selected after inspection of the singular values in Fig. 3(b).

(a)

(b)

Figure 3: (a) Identification data. (b) Singular values.

The identified state-space system matrices are obtained as:

$\displaystyle A$ $\displaystyle=\begin{bmatrix}1.01&0.15\\\
-0.02&0.74\end{bmatrix},$ $\displaystyle B=\begin{bmatrix}0.13\\\
0.22\end{bmatrix},$ $\displaystyle C$
$\displaystyle=\begin{bmatrix}-1.84&0.31\end{bmatrix},$ $\displaystyle D=0,$

with corresponding transfer function expressed in discrete and continuous time
as

$G_{vz}(z)=z^{-1}\left(\frac{-0.0013z^{2}+0.017z-0.005}{z^{2}-1.75z+0.75}\right),$
(9)
$G_{vz}(s)=e^{-0.02s}\left(\frac{0.319s+29.92}{s^{2}+14.03s+3.099}\right).$
(10)

The accuracy of the identified model in the frequency range of interest was
verified by comparing its Bode diagram against a nonparametric frequency
response. In Fig. 4(b), the identified model’s frequency response matches the
measured model’s frequency response in the 2-20 rad/s range. Cross-validation
using a completely separate dataset revealed a Variance Accounted For (VAF) of
96%. Figure 4(a) gives a time-domain representation of validation results.

(a)

(b)

Figure 4: (a) Cross-validation. (b) Verification of identified vertical
dynamic.

###  III-B Baseline PID Controller

This subsection describes the classical PID controller designed for the
reference quadrotor. Graphically, Fig. 5 shows the cascaded architecture
implemented for vertical position and velocity control. According to the
scheme, the outer loop computes a reference vertical velocity $v_{zd}$ from
the vertical position error $e_{z}=z_{d}-z$. In contrast, the inner loop
computes the vertical force $F_{z}$ required to track the reference angular
velocity $v_{zd}$. We designed the inner loop controller $R_{i}(s)$ as a
classical PID.

Figure 5: Block diagram for altitude control.

According to [9], Model Order Reduction (MOR) is crucial to investigating and
simulating the actual model and decreases the intricate computation in the
phase of controller development. The MOR produces a simplified model with a
specific matched frequency to the original model; the significantly relevant
characteristics to the original system are maintained in the reduced order
model [10]. The following conditions are considered:

  * •

The magnitude of the original model at a certain frequency $\omega_{1}$, is
identical to the magnitude of the reduced order model at the same frequency
$\omega_{1}$:

$\mid{G_{vz,red}}(j\omega_{1})\mid=\mid{G_{vz}}(j\omega_{1})\mid.$ (11)

  * •

The phase of the original model at a certain frequency $\omega_{2}$, is
identical to the phase of the reduced order model at the same frequency
$\omega_{2}$:

$\angle({G_{vz,red}}(j\omega_{2}))=\angle({G_{vz}}(j\omega_{2})).$ (12)

The reduced order model is ascertained by comparing it with the frequency
response of the original model in Fig. 6. The frequency responses of the full-
order and simplified models are indistinguishable at the frequency of 10
rad/s; the main characteristic of the original models remains.

Figure 6: Verification of simplified model.

The simplified model is applied to obtain the classical PID controller, which
is formulated as

$\displaystyle R_{i}(s)$
$\displaystyle=k_{p}+\frac{k_{i}}{s}+k_{d}\frac{s}{\tau_{f}s+1},$ (13a)
$\displaystyle\simeq k_{i}\frac{(1+\tau_{1}s)(1+\tau_{2}s)}{s(\tau_{f}s+1)},$
(13b)

where $k_{p}$, $k_{i}$ and $k_{d}$ are proportional, integral and derivative
gain, respectively, $\tau_{f}$ is a derivative filter constant. In contrast,
the two zeros, $\tau_{1}$ and $\tau_{2}$, satisfy the two relationships
$\frac{k_{p}+k_{i}\tau_{f}}{k_{i}}=\tau_{1}+\tau_{2}$ and
$\frac{k_{p}\tau_{f}+k_{d}}{k_{i}}=\tau_{1}\tau_{2}$.

The velocity control system’s open-loop is shaped to obtain the PID controller
with corresponding requirements based on the open-loop transfer function’s
desired crossover frequency, $\omega^{d}_{c}$. The conditions of loop shaping
for the inner loop controller are introduced in the following:

  * •

Place one zero, $\tau_{1}$, at low frequency and another zero,$\tau_{2}$, over
$\omega^{d}_{c}$ to cross the 0dB axis with the slope of -20dB/dec:
$\tau_{1}=\frac{1}{\omega^{d}_{c}*\textit{a}}$ and
$\tau_{2}=\frac{1}{\textit{b}\omega^{d}_{c}}$. The hyperparameters, a and b,
are chosen as 0.1 and 4 for the vertical velocity controller.

  * •

Derivative filter pole, $\tau_{f}$, should be set at appropriately high
frequency regarding $\omega^{d}_{c}$.

  * •

The gain, $\mu$, is computed through $\mu=\omega^{d}_{c}\frac{1}{\tau_{1}}$ to
make the system crosses the 0dB axis at $\omega^{d}_{c}$, in terms of the
inner open-loop transfer function’s magnitude,
$\mid{L_{i}}(j\omega^{d}_{c})\mid\approx\frac{\mu\tau_{1}}{\omega^{d}_{c}}$.

The revised open-loop transfer function is in the form:

$\
L_{red}=R_{i}G_{vz,red}=k^{i}_{i}\frac{\mu_{red}}{s^{2}}\frac{(\tau_{1}s+1)(\tau_{2}s+1)}{\tau_{f}s+1}e^{-s\tau_{red}},$
(14)

where $\mu_{red}$ is the gain obtained through loop shaping according to the
demands. The computed parameters are applied to tune the PID gains as follows:

$\displaystyle k_{p}$ $\displaystyle=(\tau_{1}+\tau_{2})k_{i}-k_{i}\tau_{f},$
(15a) $\displaystyle k_{i}$ $\displaystyle=\frac{\mu}{\mu_{red}},$ (15b)
$\displaystyle k_{d}$ $\displaystyle=\tau_{1}\tau_{2}k_{i}-k_{p}\tau_{f}.$
(15c)

The desired crossover frequency, $\omega^{d}_{c}$, is manually selected to 5
rad/s, and derivative filter pole’s locations, $\tau_{f}$, are selected to
0.022 for vertical velocity control. The PID controller developed is used for
the reference drone in the network. The following section presents the
distributed model reference adaptive control for the followers.

##  IV Followers Adaptive Control Design

Each of the follower agents $i\in\left[1,\ldots,N\right]$ is represented as a
linear system in the form

$\dot{x}_{i}=A_{i}x_{i}+B_{i}u_{i},\hskip 14.22636pti\in\left[1,...,N\right],$
(16)

where $x_{i}$ $\in$ $\mathbb{R}^{n}$ is the agent’s states, $u_{i}$ $\in$
$\mathbb{R}^{p}$ is the input, $A_{i}$ is an unknown matrix related to the
drone’s states, $B_{i}$ are known vectors with possibly heterogeneous agents
($A_{i}{\not=}A_{j}$ and $B_{i}{\not=}B_{j}$).

In a leader-follower synchronization context, defining the dynamics of the
reference pattern to be followed by the entire network is important. The
reference model dynamics are described as

$\dot{x}_{m}={A_{m}}x_{m}+{B_{m}}r,$ (17)

where $x_{m}$ $\in$ $\mathbb{R}^{n}$ is the state, $r$ $\in$ $\mathbb{R}^{p}$
is the reference, and $A_{m}$ and $B_{m}$ are the dynamic matrices. Moreover,
we assume all drones communicate over a network
$\mathcal{G}(\mathcal{V},\mathcal{E})$, with $\mathcal{V}=[1,\cdots,N]$ the
set of drones, and $\mathcal{E}$ the set of communication edges, such that
$(j,i)\in\mathcal{E}$ if drone $j$ is an in-neighbor of drone $i$.

###### Assumption 1

The communications graph $\mathcal{G}$ is unweighted, directed, and acyclic.
The graph contains a directed spanning tree with the leader drone as the root
node.

Assumption 1 delimits the characteristics of the communication graph necessary
for the DMRAC. Each drone can communicate the states and control actions to
their in-neighbors on the network. The states and input information are used
for the follower drone to generate a control action that synchronizes its
dynamics with the leader by communicating with it. However, the discrepancy
between the leader drone parameters $(A_{m},B_{m})$ and the follower drone
parameters $(A_{i},B_{i})$ would make it difficult to use the same controller
for the entire network. Thus, we seek for them to synchronize their states
with their neighbors.

###### Assumption 2

For all $i\in\mathcal{V}$ there exists a vector $k_{mi}^{*}$ and a scalar
$k_{ri}^{*}$ such that

$A_{i}+\lambda B_{m}k^{*\top}_{mi}=A_{m}\;\text{ , }\lambda
k^{*}_{ri}B_{m}=B_{m},$ (18)

whit $\lambda>0$ an unknown scalar. Constants $k_{mi}^{*}$ and $k_{ri}^{*}$ in
(18) are known as feedback matching conditions.

###### Assumption 3

For all $i\in\mathcal{V}$ there exists a vector $k_{ij}^{*}$ and a scalar
$k_{rij}^{*}$ such that

$A_{j}=A_{i}+{B_{i}}k_{ij}^{*\top}\;\text{ ,
}B_{i}=\lambda{B_{j}}k^{*}_{rij},$ (19)

where constants in (19) are known as coupling matching conditions.

Assumption 2 and Assumption 3 allow the matching of the dynamics of a drone to
a leader and the neighbors through appropriate gains [11]. For agents that
communicate directly with the leader, the control law is defined as

$u_{1}=k_{m}x_{m}+k_{r}r,$ (20)

where $k_{m}\in\mathbb{R}^{p}\times\mathbb{R}^{n}$ is the constant associated
with the reference states, $k_{r}\in\mathbb{R}^{p}\times\mathbb{R}^{q}$ is
associated with the reference signal and their adaptive laws are given by

$\displaystyle{\dot{k}^{\top}_{m}}$
$\displaystyle=-{\gamma}\>{B^{\top}_{m}}P\left(x_{1}-x_{m}\right)x_{1}^{\top},$
(21a) $\displaystyle{\dot{k}_{r}}$
$\displaystyle=-{\gamma}\>{B^{\top}_{m}}P\left(x_{1}-x_{m}\right)r.$ (21b)

An adaptive gain $\gamma>0$ is defined, and it is related to the speed of
adaptation of the law, for dynamics with quadcopters, the values usually are
not so high to avoid oscillations in the adaptation [12]. $P$ can be obtained
by

$PA_{m}+{A^{\top}_{m}}P=-Q,\hskip 14.22636ptQ\succ 0.$ (22)

The following proposition presents the model reference adaptive control base
case [13].

######  Proposition 1 (Chapter 5 in [14])

Let Assumption 2 hold, and consider a drone $x_{1}$ with dynamics (16)
communicates with a leader drone $x_{m}$ with dynamics (17). Then, the control
law (20) with the adaptive laws (21) guarantees that the synchronization error
$e_{1}=x_{1}-x_{m}$ is bounded.

Likewise, for agents that do not have direct communication with the reference,
the following control law is defined

$u_{2}=k^{\top}_{21}x_{1}+{k^{\top}_{m2}}\left(x_{2}-x_{1}\right)+k_{r21}u_{1},$
(23)

with the adaptive laws

$\displaystyle{\dot{k}_{21}}^{\top}$
$\displaystyle=-{\gamma}\>{B^{\top}_{m}}P\left(x_{2}-x_{1}\right)x_{2}^{\top},$
(24a) $\displaystyle{\dot{k}_{m2}}^{\top}$
$\displaystyle=-{\gamma}\>{B^{\top}_{m}}P\left(x_{2}-x_{1}\right)\left(x_{2}-x_{1}\right)^{\top},$
(24b) $\displaystyle{\dot{k}_{r21}}$
$\displaystyle=-{\gamma}\>{B^{\top}_{m}}P\left(x_{2}-x_{1}\right)u_{1},$ (24c)

From this approach, the following proposition is defined.

######  Proposition 2 (Theorem 1 in [11])

Let Assumptions 1, 2, and 3 hold. Consider a second follower drone with
dynamics (16), which is not directly connected to the leader with dynamics
(17), then with the controller (23) and the adaptive laws (24) the
synchronization error $e_{21}=x_{2}-x_{1}$ is bounded.

The experimentation framework is executed with the controllers developed in
the following section.

##  V Comparative Performance of PID and MRAC Controllers

This section presents the communication and synchronization experiments with
the designed PID and MRAC controllers for vertical velocity trajectory
tracking. Fig. 7 displays the physical experiment setup, which indicates one
reference drone in the red box and two follower drones in the blue box.

Figure 7: Setup for drone network experimentation.

We propose five experiments executed under different experimental settings to
observe and compare both controllers’ performance regarding robustness, the
change of physical parameters, and network communication.

Experiment 1: Baseline Controllers. This experiment confirms the controllers’
implementation for a homogeneous leader and follower. The temporal responses
of both PID and MRAC controllers, (13) and (20), are exhibited in Figs. 8(a)
and 8(b), respectively: red lines are the designed controllers, and blue lines
are the reference signals. Even though both controllers follow the reference
signals well, more elevated overshoots and more delays are observed in the
MRAC than in the PID controller. The controller (13) has an average overshoot
of $25.9\%$ with an average stabilization time of $0.53s$. Conversely, the
DMRAC controller (20) has an average overshoot value of $26.4\%$ and
stabilization time of $0.72s$. The difference between controller performances
is mainly due to the processing time required by the DMRAC to perform the
mathematical operations associated with the parameters adaptation laws in
(21), as opposed to the PID, which uses controller parameters calculated
offline.

(a)

(b)

Figure 8: Vertical velocity $v_{z}$ [m/s] vs. Time [s]. Reference tracking of
baseline controllers: (a) PID, (b) MRAC.

Experiment 2: Communication. We investigate the communication between leader
and follower drones conducted by a computer system that acts as a central
drone communication server. Based on the knowledge that the controller (13)
performs better than the controller (20) in terms of the settling time and
overshoots in Experiment 1, the controllers, (13) and (20), were applied to
the leader and follower drone, respectively. Fig. 9 illustrates the time
evolution of the vertical velocity for the leader (yellow) and the follower
(red) drone, respectively, with a square wave as a reference signal (blue).
Synchronization is achieved in this case: a slight delay between the leader’s
and follower’s response, around $0.1s$ in this experiment, is typical and not
considered high in quadcopter applications [15]. Additionally, the leader
drone with the controller (13) tracks the reference trajectory with an
overshoot of $13.94\%$ and stabilization time of $0.55s$. Likewise, for the
follower drone with the controller (20), the average overshoot is $6.37\%$,
and a stabilization time of $0.8s$.

Figure 9: Leader-follower communication.

Experiment 3: Comparison MRAC-PID. An experiment is carried out to compare the
performance of the adaptive and classical controllers in response to physical
parameter changes. We considered changing the mass properties of the drones by
gradually adding more weight to the platforms until either drone failed to
track the reference signals. The masses added were $20g$, $60g$, $80g$,
$100g$, and $120g$, respectively. The temporal response of this set of
experiments is shown in Fig. 10(a). The solid lines describe the response of
controller (13), while the dotted lines describe the response of controller
(20) with the different colors for each weight set. The average overshoot of
the adaptive controller is $6.85\%$, and the average stabilization time is
$0.71s$. The average overshoot for the classical PID controller is $12.13\%$,
and the stabilization time is $0.64s$. These average values indicate that the
overshoot of the adaptive controller is lower than the classical controller;
however, its establishment time is a little higher. The synchronization error
likewise is computed in Fig. 10(b). Comparing the errors does not provide an
explicit result of one controller performing better; the difference between
both controllers’ errors falls on the robustness of the PID controllers [16].
Furthermore, Fig. 11 demonstrates the failure of the conventional PID
controller (13) with a maximum weight of $120g$ to follow the reference input
accurately. In contrast, the MRAC (20) successfully tracks the input, and its
adaptability is ascertained.

(a)

(b)

Figure 10: MRAC-PID Comparison: (a) Vertical velocity [m/s]; (b) error measure
[m/s] vs.Time [s]. Figure 11: Response to a square wave, PID-MRAC comparison.
Velocity [m/s] vs. Time [s].

Experiment 4: Power consumption experiment. We investigate power consumption
to discover another factor for a more decisive determination in comparing
classic and adaptive controllers. The square wave input signals are applied
until either controller’s battery is fully depleted in this experiment. In
Fig. 12, which displays the time-dependent response of the experiment, the
controller (13) fails around $190s$, whereas the controller (20) still tracks
the reference input signal. Based on information on the controller’s failure,
the controllers’ power consumption is compared by exploring the control
action, normalized forces from 0 to 1 acting on the drone, and the total
applied voltage to four motors directly related to the power(W). The force
plot displays the data during the whole period of the experiment, while the
voltage plot displays a period of the experiment for a clear view. We observe
a force amplitude between $0.3$ and $0.5$ for controller (13), and around
$0.4$ for controller (20) in Fig. 13. The variance is estimated to quantify
the dispersion in each case’s control action: $0.0020$ for controller (13) and
$0.0012$ for controller (20). Additionally, the larger power consumption in
the controller (13) is confirmed in the voltage, which has a proportional
relationship to the power (W), through analysis of voltage fluctuations with
the controller (13) in Fig. 13. As stated in [17], voltage fluctuations refer
to unpredictable variations in voltage resulting from many circumstances, such
as sudden changes in load. These fluctuations can lead to equipment
malfunction and reduce the voltage and current stability within the equipment.
In the voltage plot, the black boxes display significant voltage fluctuations,
and the first black box is zoomed out to show more voltage changes in PID than
MRAC. Regarding the observations of applied forces and voltages to the motors,
the adaptive technique consumes less power than a classic controller;
controller (20) is more efficient than the controller (13).

Figure 12: Battery life experiment PID-MRAC comparison. Figure 13: Force
$F_{z}$ [N] (top) and Voltage [V] (bottom) to the motors commanded by the PID
(blue) and MRAC (red).

Experiment 5: Three drone network configuration. The distributed controller
(23) is verified through physical experiments with three drones. In this
experiment, the reference drone transmits its state information and control
actions to the first-follower drone, and the first-follower drone transmits
its state information and control actions to the second-follower drone; the
second-follower drone does not communicate directly with the reference drone.
Fig. 14 displays the synchronization of three. Even though the followers show
delays from the one who sends the information to each of them, as explained in
Experiment 2, the second follower presented an average overshoot of $35.57\%$
with an average stabilization time of $2.12s$. Compared to the previous
experiments, the propagation of the error when no direct communication affects
the performance but also allows synchronization.

Figure 14: Experiment with drones not communicating with the leader. Vertical
velocity [m/s] vs. Time [s].

The summary of these experiments at the level of overshoot and establishment
time is seen in TABLE I. Likewise, the videos of the operation of some of
these experiments are found in the following URL:https://tinyurl.com/Multi-
Agent.

# | PID Overshoot | MRAC Overshoot | PID $T_{s}$ | MRAC $T_{s}$
---|---|---|---|---
1 | 25.9 | 26.4 | 0.53 | 0.72
2 | 13.94 | 6.37 | 0.55 | 0.8
3 | 12.13 | 6.85 | 0.64 | 0.71
TABLE I: Performance comparison table. It is important to note that the values
shown are averages over the follower drone.

##  VI Conclusions

This work introduces an experimental framework for a distributed model
reference adaptive control (DMRAC) strategy for multi-agent synchronization in
drone networks. The proposed approach addresses the challenges of real-life
parameter variations among individual drones, enhancing the overall system’s
performance. Implementing a distributed adaptive strategy equips each drone
with a model reference adaptive controller that continuously updates its
parameters, ensuring adaptability to real-time feedback and reference model
information. This adaptability proves vital for maintaining robust performance
in the face of uncertainties and discrepancies in the physical parameters of
individual drones. The experimental results, particularly in vertical velocity
control, validate the effectiveness of the proposed approach in achieving
synchronized behavior among the drones, highlighting its potential for
practical application in diverse scenarios with inherent differences in drone
dynamics. Experiments confirm the proposed approach achieves superior energy
management compared to conventional PID techniques, resulting in extended task
durations for the drone network.

Future research should focus on incorporating robust parameters or exploring
applications in time-varying networks. Additionally, practical considerations
of optimal and predictive control approaches should be considered.

## References

  * [1] G. S. McNeal, “Drones and the future of aerial surveillance,” Geo. Wash. L. Rev., vol. 84, p. 354, 2016.
  * [2] G. Wild, J. Murray, and G. Baxter, “Exploring civil drone accidents and incidents to help prevent potential air disasters,” Aerospace, vol. 3, no. 3, p. 22, 2016.
  * [3] F. Santos, D. Silvestre, and R. Cunha, “Development and experimental validation of a lora wireless sensor network for wildfire surveillance,” in 2023 IEEE Conference on Control Technology and Applications (CCTA), pp. 911–917, IEEE, 2023.
  * [4] F. Alsolami, F. A. Alqurashi, M. K. Hasan, R. A. Saeed, S. Abdel-Khalek, and A. B. Ishak, “Development of self-synchronized drones’ network using cluster-based swarm intelligence approach,” IEEE Access, vol. 9, pp. 48010–48022, 2021.
  * [5] G. A. Cardona, M. Arevalo-Castiblanco, D. Tellez-Castro, J. Calderon, and E. Mojica-Nava, “Robust adaptive synchronization of interconnected heterogeneous quadrotors transporting a cable-suspended load,” in 2021 IEEE International Conference on Robotics and Automation (ICRA), pp. 31–37, IEEE, 2021.
  * [6] J. Tan, T. Zhang, E. Coumans, A. Iscen, Y. Bai, D. Hafner, S. Bohez, and V. Vanhoucke, “Sim-to-real: Learning agile locomotion for quadruped robots,” ArXiv preprints., 2018.
  * [7] Z. Peng, D. Wang, H. Zhang, G. Sun, and H. Wang, “Distributed model reference adaptive control for cooperative tracking of uncertain dynamical multi-agent systems,” IET Control Theory & Applications, vol. 7, no. 8, pp. 1079–1087, 2013.
  * [8] G. Van der Veen, J.-W. van Wingerden, M. Bergamasco, M. Lovera, and M. Verhaegen, “Closed-loop subspace identification methods: an overview,” IET Control Theory & Applications, vol. 7, no. 10, pp. 1339–1358, 2013.
  * [9] D. Papadopoulos and A. Boglou, “Pole-placement and model-order reduction techniques applied to a hydro-unit—system for dynamic stability improvement,” Journal of the Franklin Institute, vol. 325, no. 3, pp. 403–417, 1988.
  * [10] S. Panza and M. Lovera, “Rotor state feedback in the design of rotorcraft attitude control laws,” in Advances in Aerospace Guidance, Navigation and Control: Selected Papers of the Third CEAS Specialist Conference on Guidance, Navigation and Control held in Toulouse, pp. 205–225, Springer, 2015.
  * [11] S. Baldi and P. Frasca, “Adaptive synchronization of unknown heterogeneous agents: An adaptive virtual model reference approach,” Journal of the Franklin Institute, vol. 356, no. 2, pp. 935–955, 2019.
  * [12] I. A. Ntousakis, I. K. Nikolos, and M. Papageorgiou, “On microscopic modelling of adaptive cruise control systems,” Transportation Research Procedia, vol. 6, pp. 111–127, 2015.
  * [13] N. Nguyen, K. Krishnakumar, and J. Boskovic, “An optimal control modification to model-reference adaptive control for fast adaptation,” in AIAA Guidance, Navigation and Control Conference and Exhibit, p. 7283, 2008.
  * [14] N. Nguyen, Model-Reference Adaptive Control. A Primer.  Springer, March 2018.
  * [15] Z. Huang, Y.-J. Pan, and R. Bauer, “Leader–follower consensus control of multiple quadcopters under communication delays,” Journal of Dynamic Systems, Measurement, and Control, vol. 141, no. 10, p. 101006, 2019.
  * [16] R. Vilanova, V. M. Alfaro, and O. Arrieta, “Robustness in pid control,” in PID Control in the Third Millennium: Lessons Learned and New Approaches, pp. 113–145, Springer, 2012.
  * [17] M. A. Masoum and E. F. Fuchs, “Chapter 1 - introduction to power quality,” in Power Quality in Power Systems and Electrical Machines (Second Edition) (M. A. Masoum and E. F. Fuchs, eds.), pp. 1–104, Boston: Academic Press, second edition ed., 2015.