# Coordinated Path Following Control of Fixed-wing Unmanned Aerial Vehicles

Hao Chen, Yirui Cong, Xiangke Wang, Xin Xu, and Lincheng Shen  The authors are
with the College of Intelligence Science and Technology, National University
of Defense Technology, Changsha 410073, China. (e-mail<EMAIL_ADDRESS>xinxu@nudt.edu.cn).

###### Abstract

In this paper, we investigate the problem of coordinated path following for
fixed-wing UAVs with speed constraints in 2D plane. The objective is to steer
a fleet of UAVs along the path(s) while achieving the desired sequenced inter-
UAV arc distance. In contrast to the previous coordinated path following
studies, we are able through our proposed hybrid control law to deal with the
forward speed and the angular speed constraints of fixed-wing UAVs. More
specifically, the hybrid control law makes all the UAVs work at two different
levels: those UAVs whose path following errors are within an invariant set
(i.e., the designed coordination set) work at the coordination level; and the
other UAVs work at the single-agent level. At the coordination level, we prove
that even with speed constraints, the proposed control law can make sure the
path following errors reduce to zero, while the desired arc distances converge
to the desired value. At the single-agent level, the convergence analysis for
the path following error entering the coordination set is provided. We develop
a hardware-in-the-loop simulation testbed of the multi-UAV system by using
actual autopilots and the X-Plane simulator. The effectiveness of the proposed
approach is corroborated with both MATLAB and the testbed.

###### Index Terms:

Coordinated path following, hybrid control, speed constraints, multi-UAV
systems.

This work has been submitted to the IEEE for possible publication. Copyright
may be transferred without notice, after which this version may no longer be
accessible.

##  I Introduction

###  I-A Motivation

Coordinated path following control of multiple fixed-wing unmanned aerial
vehicles (UAVs) has attracted significant attention in recent years, due to
its increasing demands in civil and military uses [1]. It studies how to steer
a group of fixed-wing UAVs moving along given/planned paths while forming a
desired formation pattern based on local interactions.

Different from multirotor UAVs or ground vehicles, a fixed-wing UAV cannot
move backwards and is actually constrained by a minimum forward speed which
generates sufficiently large lift to support the UAV in flight. It should be
noted that with the minimum forward speed constraint, the coordinated path
following control behaves very differently:

  * •

During path following, the maximum angular speed is not negligible any more,
since it combined with the minimum forward speed determines the minimum
turning radius. As a result, one UAV can only follow the class of paths
(curves) with limited curvature, which is determined by the minimum forward
speed and the maximum angular speed; while the existing studies in the
coordinated path following control problems did not take the speed-related
curvature into account.

  * •

During the formation pattern forming process, one UAV cannot completely stop
or become unacceptably slow to wait for another UAV. Consequently, some
coordinating UAVs can quit the group formation, if the minimum forward speed
and the maximum angular speed are not properly considered when designing the
control law.111We have proved that the conventional coordinated path following
control laws in [2] cannot solve the coordinated path following control
problem for fixed-wing UAVs if the constraints are not properly considered.

Therefore, the coordinated path following control of fixed-wing UAVs is very
different from that without minimum forward speed and maximum angular speed
constraints in the literature, and cannot be solved by the existing methods
(e.g., [2]). It is necessary to design an efficient control law to solve the
coordinated path following control problem for fixed-wing UAVs.

###  I-B Related Work

The coordinated path following control problem consists of two core
components: path following and multi-vehicle coordination.

Path following problem has a long history dating back to the end of last
century [3]. For fixed-wing UAV path following, some early work mainly focused
on the straight line following and circle following [4, 5, 6, 7], and a
comparison of existing methods dealing with these two kinds of path following
problem can be found in [8]. In recent years, general curved path following
problem has received increasing attention, and typical approaches are largely
based on proportional-integral-derivative (PID) controller [9], vector field
method [10, 11], sliding mode controller [12], backstepping controller [13],
adaptive controller [14], nested saturation and control Lyapunov function
based method [15], etc.

In terms of the multi-vehicle coordination, typical methods include leader-
follower approach [16, 17, 18], virtual structure approach [19, 20, 21],
behavior-based approach [22, 23]. We recommend the surveys in [1, 24, 25] to
readers who are interested in the existing coordinated control results. Some
methods have been validated by the formation flight of fixed-wing UAVs: in
[26], a vision-aided close formation flight of two UAVs was conducted based on
leader-follower control; the work in [27] considered several formation design
approaches, and performed field experiments of two UAVs with a combined
controller; as a big advance in terms of the scale, autonomous flight of 50
fixed-wing platforms was presented in [28], but details of their control law
were not provided.

To combine the path following controller with the coordinated control
architecture is the key factor to achieve coordinated path following. There
have been a large number of studies dealing with the coordinated path
following control of multirotor UAVs [29, 16, 30] and ground vehicles [20,
31]. However, most of these results cannot be applied to fixed-wing UAVs,
since they are constrained by the minimum forward speed, which is a hard
constraint in this kind of vehicles for certain missions. Note that the speed
constraints have been partially considered in the coordinated path following
problems for fixed-wing UAVs: in [32], a centralized strategy was investigated
for a group of fixed-wing UAVs to follow closed intersecting curves, where the
coordination refers to the collision avoidance among the UAVs; in [33], a
time-critical coordinated path following control problem was studied, and the
proposed algorithm can steer a fleet of fixed-wing UAVs along given paths
while arriving at their own final destinations at the same time; the
cooperative moving path following problem was introduced in [34], with
sufficient conditions derived under which the closed-loop system is
asymptotically stable. Nevertheless, in these studies, the forward speed
constraints and the angular speed constraints are not considered as a whole.

###  I-C Our Contributions

In this work, we focus on the coordinated path following control problem for a
group of fixed-wing UAVs. To solve this problem, we propose a novel
distributed hybrid control law by extending the hybrid controller provided in
[2]. It should be noted that most of the existing work use Lyapunov analysis
to conclude the stability of the hybrid systems [35]. However, in this paper,
the stability of the overall system is concluded by employing the similar
technique with [2], which can provide a complete dynamical analysis of the
overall systems. The main contributions of this paper are listed as follows:

  * •

We propose a hybrid control framework based on an invariant set, the
_coordination set_ , to solve the coordinated path following problem of fixed-
wing UAVs. Different from the existing results, the coordination set is
designed to guarantee the convergence of the path following error and
coordination error while satisfying both the forward speed constraints and the
angular speed constraints.

  * •

We propose a coordinated path following control law inside the coordination
set, and theoretically prove that even with the speed constraints of fixed-
wing UAVs, the proposed control law can make the path following errors reduce
to zero, while the desired arc distances converge to the desired value.

  * •

We propose a single-agent level control law outside the coordination set by
using optimal control, and the convergence analysis for the UAVs entering the
coordination set is provided.

  * •

We develop a hardware-in-the-loop simulation testbed of the multi-UAV system
by using actual autopilots and the X-Plane simulator, and validate the
proposed coordinated path following approach with the testbed.

###  I-D Paper Organization

The paper is organized as follows. Section II presents the system model as
well as the problem description, and analyzes the difficulty from speed
constraints. Then, in the next two sections, we present our control law to
tackle the coordinated path following problem with speed constraints: at
coordination level when the path following error is within a coordination set
(see Section III); and at single-agent level when it is outside this
coordination set (see Section IV). In Section V we show the simulation
results, including the simulation with MATLAB and the hardware-in-the-loop
simulation with the X-Plane simulator; and finally the concluding remarks are
given in Section VI.

###  I-E Notation

A curve is said to be $\mathcal{C}^{k}$-smooth, if it admits an analytic
expression $\Gamma(x,y)$, whose $k$th derivative exists and is continuous. The
curvature of a path at any point $p$ on the curve is denoted as $\kappa(p)$.
$\mathbf{T}(p)$ denotes the unit tangent vector of the curve at point $p$, and
the curvature of the curve at point $p$ is defined as
$\kappa(p)={\mathrm{d}\mathbf{T}(p)}/{\mathrm{d}s}$, where $s$ is the natural
parameter of the curve representing the length of the curve.

##  II Coordinated Path Following Problem for Fixed-wing UAVs

In this section, we formulate the 2D coordinated path following problem for a
group of $n$ homogeneous fixed-wing UAVs. The aim is to design a control law
such that each UAV follows a predefined curved path while the sequenced inter-
UAV arc distances converge to the desired constant.

###  II-A System Model and Problem Description

Consider a group of fixed-wing UAVs flying at the same altitude. Then, the
state of the $i$th UAV can be represented by the configuration vector
$q_{i}=(x_{i},y_{i},\theta_{i})^{T}\in\mathbb{R}^{2}\times[-\pi,\pi)$, where
$(x_{i},y_{i})$ is the $i$th UAV’s position defined in an inertia coordinate
frame $\mathcal{W}$, and $\theta_{i}$ is the orientation of the $i$th UAV with
respect to the $x$-axis of $\mathcal{W}$. The kinematic model of the $i$th UAV
with pure rolling and non-slipping is given as

$\dot{q_{i}}=\begin{bmatrix}\dot{x_{i}}\\\ \dot{y_{i}}\\\ \dot{\theta_{i}}\\\
\end{bmatrix}=\begin{bmatrix}\cos\theta_{i}&0\\\ \sin\theta_{i}&0\\\ 0&1\\\
\end{bmatrix}\begin{bmatrix}v_{i}\\\ \omega_{i}\\\ \end{bmatrix},$ (1)

where control inputs $v_{i}$ and $\omega_{i}$ stand for the forward speed and
angular speed of the $i$th UAV, respectively.

For fixed-wing UAVs, the speed constraints must be considered in (1). On the
one hand, the forward speed of a UAV is constrained with saturation and dead
zone, i.e., each fixed-wing UAV has the maximum and minimum forward speed
constraints. On the other hand, the angular speed is also constrained with
saturation. Mathematically, for the $i$th UAV, the speed constraints are:

$\begin{cases}0<v_{\min}\leq v_{i}\leq v_{\max},\\\
|\omega_{i}|\leq\omega_{\max},\end{cases}$ (2)

where $v_{\min}$ and $v_{\max}$ are the minimum and maximum forward speeds,
while $\omega_{\max}$ is the maximum angular speed. We consider all the UAVs
follow a directed curved path $\Gamma\in\mathcal{C}^{2}$.

###### Assumption 1

$\Gamma$ is globally known to each UAV, and the absolute value of the
curvature of $\Gamma$ at any point $p$ is less than a constant $\kappa_{0}$,
i.e., $|\kappa(p)|<\kappa_{0}$.

We note that due to the constraints on the forward and angular speeds,
$\kappa_{0}$ must be not larger than $\omega_{\max}/v_{\min}$. This implies
each UAV has a minimum turning radius (numerically equals
$v_{\min}/\omega_{\max}$) when following a path. We use $\mathbf{T}(p)$ to
denote the tangent vector of the path $\Gamma$ at point $p$. The point
$p=(p_{x},p_{y})^{T}$ on the path is said to be a projection of the $i$th UAV,
if the vector $\boldsymbol{t}=(x_{i}-p_{x},y_{i}-p_{y})^{T}$ is orthogonal to
$\mathbf{T}(p)$. We define $\phi_{i}=(\rho_{i},\psi_{i})$ as the path
following error of the $i$th UAV with respect to the path $\Gamma$ (see Fig.
1), where $\rho_{i}\in\mathbb{R}$ is the distance from the $i$th UAV to its
closest projection $p_{i}$ on $\Gamma$ with a sign: $\rho_{i}>0$ when the
$i$th UAV is on the left side of $\Gamma$ in the direction of the path, and
$\rho_{i}<0$ when it is on the other side. For example, in Fig. 1, we have
$\rho_{i}<0$ for the $i$th UAV, and $\rho_{j}>0$ for the $j$th UAV. $\psi_{i}$
is the heading of the $i$th UAV with respect to $\mathbf{T}(p_{i})$ at its
projection $p_{i}$. In this way, $\rho_{i}$ can be seen as the _location
difference_ of the $i$th UAV with respect to the path $\Gamma$; and
$\psi_{i}\in[-\pi,\pi)$ is the _orientation difference_ between the heading of
the $i$th UAV and $\mathbf{T}(p_{i})$.

###### Remark 1

If $|\rho_{i}|<R_{0}$, where $R_{0}=\frac{1}{\kappa_{0}}$, the closest
projection $p_{i}$ is unique [3].

The dynamics (1) thus can be rewritten in the form of
$\dot{\phi}_{i}=f(\phi_{i})$ with the speed constraints represented by (2):

$\begin{cases}\dot{\rho_{i}}=v_{i}\sin\psi_{i},\\\
\dot{\psi_{i}}=\omega_{i}-\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}},\end{cases}i=1,...,n.$
(3)

UAV $i$ asymptotically follows the path $\Gamma$ if and only if
$\phi_{i}\to\mathbf{0}$.

Figure 1: Path $\Gamma$ with a direction. Points $p_{i}$ and $p_{j}$ are the
projections of the $i$th and the $j$th UAVs, respectively.
$\phi_{i}=(\rho_{i},\psi_{i})$ is the path following error of the $i$th UAV,
and arc distance $l_{ij}$ is the length along the path from $p_{i}$ to
$p_{j}$. In this case, the $j$th UAV is the pre-neighbor of the $i$th UAV.

In our coordinated path following problem, it not only requires all the UAVs
move along the path $\Gamma$, but also guarantees the distance between any two
adjacent UAVs is a desired constant, say $L$, in the sense of arc length. To
describe adjacent UAVs, we introduce the definition of _pre-neighbor_ as
follows.

###### Definition 1

The $j$th UAV is the $i$th UAV’s _pre-neighbor_ if

  * i)

$|\rho_{i}|<R_{0}$, $|\rho_{j}|<R_{0}$;

  * ii)

The projection point $p_{j}$ of the $j$th UAV on the path $\Gamma$ is in front
of the $i$th UAV’s projection point $p_{i}$ (see Fig. 1), without any other
UAV’s projection in the middle.

The two conditions in Definition 1 imply that: (i) the pre-neighbor definition
only works for the UAVs close enough to the path $\Gamma$ (i.e., with
$|\rho_{i}|<R_{0}$); and (ii) each UAV can at most have one pre-neighbor.

###### Remark 2

When there are two or more UAVs with the same projection point on $\Gamma$, we
define the pre-neighbor in ascending order with respect to the UAVs’ labels to
avoid ambiguity.

Since the desired inter-UAV arc distance is between adjacent UAVs, the $i$th
UAV just needs to focus on the arc distance $l_{ij}$ to its pre-neighbor. To
simplify the description, we denote the arc distance between the $i$th UAV and
its pre-neighbor as $\zeta_{i}$. The coordination error for the $i$th UAV is
thus $L-\zeta_{i}$.

Now we can formally define the coordinated path following problem for fixed-
wing UAVs as follows.

######  Problem 1 (Coordinated Path Following)

Given $n$ fixed-wing UAVs, each is modeled as (1) with speed constraints
represented by (2), design control law such that $\phi_{i}\to\mathbf{0}$, and
$L-\zeta_{i}\to 0$, $i=1,\ldots,n$,

###  II-B The Challenge from Speed Constraints

When ignoring the speed constraints, we can extract a set $\mathcal{S}$ as
$\mathcal{S}=\\{(\rho,\psi)\colon\rho\in[-R_{0},R_{0}],\psi\in[-\pi,\pi)\\}$,
which is illustrated in Fig. 2, as defined in [2], where $\mathcal{S}$ is
partitioned into two parts $\mathcal{S}_{1}$ and $\mathcal{S}_{2}$.
$\mathcal{S}_{1}$ is the coordination set, defined as
$\mathcal{S}_{1}:=\\{(\rho,\psi)\in\mathcal{S}\colon|\rho|\leq
R_{0},|\psi|\leq a,|a\rho+R_{0}\psi|\leq aR_{0}\\}$, and
$\mathcal{S}_{2}:=\mathcal{S}\setminus\mathcal{S}_{1}$. Parameter $a$
satisfies $0<a<\min\\{(\pi/2),R_{0}\\}$.

Figure 2: Set $\mathcal{S}$ with its two partitioned subsets $\mathcal{S}_{1}$
and $\mathcal{S}_{2}$ in [2].

It has been proved that, by applying an appropriate hybrid control law, the
path following error $\phi_{i}$ of the $i$th UAV, whose dynamics are
represented by (3) without constraints represented by (2), converges to
$\mathbf{0}$. To be more specific, if $\phi_{i}$ is in $\mathcal{S}_{2}$
initially, then it cannot leave $\mathcal{S}$ and will enter $\mathcal{S}_{1}$
in a finite time, and finally converge to $\mathbf{0}$, with the arc distance
$\zeta_{i}$ approaching $L$ as $t\rightarrow\infty$. In this process, when
$\phi_{i}(t)\in\mathcal{S}_{2}$, the $i$th UAV only works at single-agent
level (i.e., without any coordination), and the coordination algorithm gets to
work only after $\phi_{i}$ gets into the coordination set. Unfortunately, when
considering the speed constraints represented by (2), the above results cannot
be guaranteed.

###### Remark 3

We can always characterize a small region $\mathcal{S}_{e}$, such that when
$\phi_{i}(t_{0})\in\mathcal{S}_{e}$, given any control input
$(v_{i},\omega_{i})\in[v_{\min},v_{\max}]\times[-\omega_{\max},\omega_{\max}]$,
there exists a time $t_{1}>t_{0}$ such that
$\phi_{i}(t_{1})\notin\mathcal{S}$. Without loss of generality, we assume the
UAVs follow a path with the curvature $\kappa(p_{i})\in(-\kappa_{0},0]$. We
define
$\mathcal{S}_{e}=\\{\phi_{i}\in\mathcal{S}\colon\frac{v_{\min}(\psi_{i}-\epsilon_{0})\sin\epsilon_{0}}{\omega_{\max}}+\rho_{i}-R_{0}>0,\rho_{i}\in[0,R_{0}],\psi_{i}\in[0,\pi/2]\\}$,
where $0<\epsilon_{0}<\pi/2$. We note that $\mathcal{S}_{e}$ is not an empty
set, otherwise,
$\frac{v_{\min}(\psi_{i}-\epsilon_{0})\sin\epsilon_{0}}{\omega_{\max}}+\rho_{i}-R_{0}\leq
0$ should hold for all $\rho_{i}\in[0,R_{0}]$ and $\psi_{i}\in[0,\pi/2]$,
which can be verified to be impossible by taking $\rho_{i}=R_{0}$ and
$\psi_{i}=\pi/2$. According to (3), when $\psi_{i}\in[\epsilon_{0},\pi/2]$,
$\dot{\psi}_{i}=\omega_{i}-\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\geq-\omega_{\max}$.
Suppose $t^{*}$ is the minimum time it takes to satisfy
$\psi_{i}\leq\epsilon_{0}$, then
$t^{*}\geq\frac{\psi_{i}(t_{0})-\epsilon_{0}}{\omega_{\max}}$. When
$t\in[t_{0},t_{0}+t^{*}]$, we have $\dot{\rho}_{i}=v_{i}\sin\psi_{i}\geq
v_{\min}\sin\epsilon_{0}>0$, and thus
$\dot{\rho}_{i}\cdot\frac{\psi_{i}(t_{0})-\epsilon_{0}}{\omega_{\max}}\geq\frac{v_{\min}(\psi_{i}(t_{0})-\epsilon_{0})\sin\epsilon_{0}}{\omega_{\max}}>R_{0}-\rho_{i}(t_{0})$,
meaning $\phi_{i}$ will leave $\mathcal{S}$ before $t_{0}+t^{*}$. Therefore,
it is impossible to use the results in [2] to solve the speed constrained
coordinated path following problem defined in Problem 1, since not all the
points in $\mathcal{S}$ can be guaranteed always within $\mathcal{S}$ even
under any possible control input.

To solve Problem 1, we have to further partition set $\mathcal{S}$ to specify
the invariant subsets and design the control laws accordingly. To be more
specific, we define a new coordination set and propose the corresponding
control law in Section III; and for the points outside the coordination set,
we design a single-agent level control law in Section IV.

Before we proceed, the following lemma is necessary throughout the paper.

######  Lemma 1 (Pages 61-62 of [36])

Consider a simple closed contour defined by $g(x)=0$, with $g(x)<0$ enclosed
by the contour, where $g(x)$ is a continuously differentiable function. The
vector field $f(x)$ at a point $x$ on the coutour points inward if the inner
product of $f(x)$ and the gradient vector $\bigtriangledown g(x)$ is negative,
i.e., $f(x)\cdot\bigtriangledown g(x)<0$; and the vector field points outward
if $f(x)\cdot\bigtriangledown g(x)>0$; and it is tangent to the contour if
$f(x)\cdot\bigtriangledown g(x)=0$. The trajectory can leave the set enclosed
by the contour, only if the vector field points outward at some point on its
boundary, i.e., $\exists~{}x$ such that $g(x)=0$ and
$f(x)\cdot\bigtriangledown g(x)>0$.

##  III Coordinated Control Law In Coordination Set

In this section, we discuss how to control the UAVs, whose path following
errors are within a given set (called the coordination set $\mathcal{S}_{1}$),
to move along the path $\Gamma$ in a coordination manner.

We formulate the coordination set as
$\mathcal{S}_{1}=\\{(\rho,\psi):|\rho|\leq R_{1},|\psi|\leq
a,|a\rho+R_{1}\psi|\leq aR_{1}\\}$, where $R_{1}<R_{0}$. Since
$\kappa_{0}=\frac{1}{R_{0}}$, we have $\kappa_{0}R_{1}<1$. We note that this
newly defined coordination set is relatively smaller compared to that without
considering the speed constraints (see Fig. 2). With speed constraints,
parameters $a$ and $R_{1}$ should be properly selected. Thus, we first
illustrate the parameter selection (Section III-A) before designing the
control law (Section III-B).

###  III-A Parameter Selection of $\mathcal{S}_{1}$

The selection of parameters in $\mathcal{S}_{1}$ follows two basic principles,
which are illustrated one by one as follows.

####  III-A1 The First Principle

We need to guarantee the existence of a proper control law making
$\mathcal{S}_{1}$ an _invariant set_ (see [36], page 127), i.e., if the
initial path following error $\phi_{i}(t_{0})\in\mathcal{S}_{1}$ at time
$t_{0}$, then $\phi_{i}(t)\in\mathcal{S}_{1}$ for any $t>t_{0}$. In that way,
for each $\phi_{i}(t_{0})\notin\mathcal{S}_{1}$, we only need to design the
control law to guarantee $\phi_{i}(t)$ entering $\mathcal{S}_{1}$.

###### Remark 4

Denote the set $\partial\mathcal{S}_{1}$, as the intersection of
$\mathcal{S}_{1}$ with the following set:
$\\{(\rho,\psi)\colon|\psi|=a\\}\cup\\{(\rho,\psi)\colon|a\rho+R_{1}\psi|=aR_{1}\\}$.
It can be seen that $\partial\mathcal{S}_{1}$ is a subset of the boundary of
$\mathcal{S}_{1}$. According to Lemma 1, the first principle to guarantee
$\phi_{i}(t)$ will not leave $\mathcal{S}_{1}$ is equivalent to guarantee
$\phi_{i}(t)$ will never get across $|a\rho+R_{1}\psi|=aR_{1}$ in the first
and the third quadrants, and $|\psi|=a$ in the second and fourth quadrants.
Since $v_{i}>0$, it is certain that $\phi_{i}(t)$ will never leave
$\mathcal{S}_{1}$ from $|\rho|=R_{1}$ in the second and the fourth quadrants,
and that is why we do not include set $\\{(\rho,\psi)\colon|\rho|=R_{1}\\}$ in
$\partial\mathcal{S}_{1}$.

Then, we have the following lemma:

###### Lemma 2

A sufficient condition under the first principle is that, for any
$\phi_{i}\in\partial\mathcal{S}_{1}$, there exist $v_{i}$ and $\omega_{i}$
satisfying (2), such that one of the four conditions [i.e., one of the four
inequalities (4)-(7)] holds:

$\begin{cases}v_{i}(a\sin\psi_{i}-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}})+R_{1}\omega_{i}+R_{1}\alpha\leq
0,\\\ \rho_{i}\geq 0,~{}~{}\psi_{i}\geq 0;\\\ \end{cases}$ (4)

$\begin{cases}\omega_{i}-\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}+\alpha\leq
0,\\\ \rho_{i}<0,~{}~{}\psi_{i}>0;\\\ \end{cases}$ (5)

$\begin{cases}v_{i}(a\sin\psi_{i}-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}})+R_{1}\omega_{i}-R_{1}\alpha\geq
0,\\\ \rho_{i}\leq 0,~{}~{}\psi_{i}\leq 0;\\\ \end{cases}$ (6)

$\begin{cases}\omega_{i}-\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}-\alpha\geq
0,\\\ \rho_{i}>0,~{}~{}\psi_{i}<0;\\\ \end{cases}$ (7)

where $\alpha$ is a small positive number.

Lemma 7 can be easily derived by using Lemma 1.

With Lemma 7, we can get an important inequality for the parameter selection,
given in the following lemma.

###### Lemma 3

If there exists $v_{m}\in(v_{\min},v_{\max}]$ making (8) and (9) hold, then
for any $\phi_{i}\in\partial\mathcal{S}_{1}$, there exist $v_{i}$ and
$\omega_{i}$ satisfying (2), such that one of the four inequalities (4)-(7)
holds.

$\sqrt{(\frac{a}{R_{1}})^{2}+\kappa^{2}_{0}}+\frac{\alpha}{v_{m}}\leq\frac{\omega_{\max}}{v_{m}},$
(8)
$\frac{\kappa_{0}}{1-\kappa_{0}R_{1}}+\frac{\alpha}{v_{m}}\leq\frac{\omega_{\max}}{v_{m}}.$
(9)

###### Proof:

See Appendix A. ∎

####  III-A2 The Second Principle

We need to guarantee the existence of a proper control law, which ensures the
sequence of the UAVs along the path to be fixed, once all the UAVs enter
$\mathcal{S}_{1}$. More specifically, if UAV $i$ and its pre-neighbor UAV $j$
satisfy $\phi_{i}(t_{0}),\phi_{j}(t_{0})\in\mathcal{S}_{1}$ at time $t_{0}$,
then there will be no any other $k$th UAV ($k\neq i,k\neq j$) turning to be
the pre-neighbor of the $i$th UAV from then on. Mathematically, if
$\phi_{i}(t_{0})\in\mathcal{S}_{1},~{}\forall~{}i=1,\ldots,n$, then
$\zeta_{i}(t)>0,~{}\forall~{}t>t_{0}$.222 We note that when $\zeta_{i}(t)$ is
reduced to zero, it means the $i$th UAV is being overtaken by another UAV, or
is overtaking another UAV at time $t$.

###### Lemma 4

The second principle holds if

$\frac{1}{1-\kappa_{0}R_{1}}v_{\min}+c\leq\frac{\cos
a}{1+\kappa_{0}R_{1}}v_{m},$ (10)

where $c>0$.

###### Proof:

See Appendix B. ∎

Besides inequalities (8)-(10) (deduced from Lemma 3 and Lemma 4,
respectively), there are some additional constraints for parameters:

$\begin{cases}0<a<\pi/2,\\\ 0<R_{1}<R_{0},\\\ v_{\min}<v_{m}\leq
v_{\max},\end{cases}$ (11)

where $v_{\min}$, $v_{\max}$ and $\omega_{\max}$ are determined by the
dynamics of the UAVs; $\kappa_{0}$ is determined by the path for the UAVs to
follow; $c$ is chosen by the designers. Then, there are three parameters in
(11) left unknown, namely, $a$, $R_{1}$ and $v_{m}$. The selection of $a$,
$R_{1}$ and $v_{m}$ can be regarded as an optimization problem. Its objective
is to make $\mathcal{S}_{1}$ as large as possible, since a larger
$\mathcal{S}_{1}$ contains more path following errors, which means more
situations can be directly333We note that if a path following error is outside
$\mathcal{S}_{1}$, we have to make it enter $\mathcal{S}_{1}$, before the
coordination control law in Section III-B is applied. dealt with our proposed
coordination control law in Section III-B. This optimization problem is
described by

$\displaystyle\mathrm{maximize}$ $\displaystyle aR_{1}$
$\displaystyle\mathrm{s.t.}$ inequalities (8)-(11) hold.

If constraints (8)-(11) are satisfied (see Lemma 5), we can guarantee the
existence of proper control law satisfying the aforementioned two principles.
By solving the optimization problem (III-A2), we can select the optimized
parameters $a$ and $R_{1}$ to design $\mathcal{S}_{1}$, and we can also obtain
$v_{m}$, which is an important parameter in the control law proposed in
Section III-B.

###### Lemma 5

A sufficient condition to guarantee the existence of feasible solutions of
(III-A2) is

$\begin{cases}\kappa_{0}\leq\frac{\omega_{\max}}{v_{\max}},\\\ v_{\min}+c\leq
v_{\max}.\end{cases}$ (13)

###### Remark 5

Lemma 13 can be verified easily. From it, we can get one guideline to choose
the user-determined value of parameter $c$ in (III-A2) as $c\leq
v_{\max}-v_{\min}$.

It is obvious from (10) that the smaller $c$ is, the larger the coordination
set will become, since we will get a larger feasible region in (III-A2).
However, in terms of the control law designs, $c$ is not the smaller the
better, because $c$ is also correlated to the convergence rate (more details
are given in Section III-B), and a trade-off should be made between the
coordination set’s size and the convergence rate.

Above completes the parameter selection process for coordination set
$\mathcal{S}_{1}$. With the parameter selection, we cannot only guarantee the
existence of the control law satisfying the proposed two principles, but also
design a proper coordination set $\mathcal{S}_{1}$. Next, we will design the
control law, and show the importance of the two principles to the convergence
of the path following error and the sequenced inter-UAV arc distance.

###  III-B Control Law in $\mathcal{S}_{1}$

Algorithm 1 Coordinated Path Following Control Law in $\mathcal{S}_{1}$

1:$\rho_{i},\psi_{i},\kappa(p_{i}),\zeta_{i}$

2:$v_{i},\omega_{i}$

3:procedure CoordControl($\rho_{i},\psi_{i},\kappa(p_{i}),\zeta_{i}$)

4: Set the forward speed as
$v_{i}=\mathrm{Sat}\Big{(}\frac{1-\kappa(p_{i})\rho_{i}}{\cos\psi_{i}}\chi(\zeta_{i}),v_{\min},v_{\max}\Big{)};$

5: Set the angular speed as
$\omega_{i}=\mathrm{Sat}(\omega_{d},-\omega_{\max},\omega_{\max}),$ where
$\omega_{d}=v_{i}\left[-\frac{k_{1}\vartheta_{i}}{k_{2}}+\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\right]-\alpha\cdot\mathrm{sign}(\vartheta_{i}),$
and $k_{1}>0,~{}k_{2},k_{3}\geq 1$ and $a\leq R_{1}k_{1}<ak_{2}$;

6:
$v_{i}\leftarrow$ReSetValue($v_{i},\omega_{i},\rho_{i},\psi_{i},\kappa(p_{i}),\zeta_{i}$)

7: return $v_{i},\omega_{i}$

8:end procedure

9:procedure
ReSetValue($v_{i},\omega_{i},\rho_{i},\psi_{i},\kappa(p_{i}),\zeta_{i}$)

10: if $\phi_{i}\in\mathcal{S}^{1}_{1}$ and inequality (4) does not hold then

11:
$v_{i}=-\left[a\sin\psi_{i}-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\right]^{-1}R_{1}(\omega_{i}+\alpha)$

12: end if

13: if $\phi_{i}\in\mathcal{S}^{2}_{1}$ and inequality (5) does not hold then

14:
$v_{i}=\frac{1-\kappa(p_{i})\rho_{i}}{\kappa(p_{i})\cos\psi_{i}}(\omega_{i}+\alpha)$

15: end if

16: if $\phi_{i}\in\mathcal{S}^{3}_{1}$ and inequality (6) does not hold then

17:
$v_{i}=-\left[a\sin\psi_{i}-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\right]^{-1}R_{1}(\omega_{i}-\alpha)$

18: end if

19: if $\phi_{i}\in\mathcal{S}^{4}_{1}$ and inequality (7) does not hold then

20:
$v_{i}=\frac{1-\kappa(p_{i})\rho_{i}}{\kappa(p_{i})\cos\psi_{i}}(\omega_{i}-\alpha)$

21: end if

22: if $\phi_{i}\in\mathcal{S}^{5}_{1}$ and
$\omega_{i}-\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}-\alpha<0$
then

23:
$v_{i}=\frac{1-\kappa(p_{i})\rho_{i}}{\kappa(p_{i})\cos\psi_{i}}(\omega_{i}-\alpha)$

24: end if

25: if $\phi_{i}\in\mathcal{S}^{6}_{1}$ and
$\omega_{i}-\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}+\alpha>0$
then

26:
$v_{i}=\frac{1-\kappa(p_{i})\rho_{i}}{\kappa(p_{i})\cos\psi_{i}}(\omega_{i}+\alpha)$

27: end if

28: return $v_{i}$

29:end procedure

Now, we propose the coordinated path following control law in
$\mathcal{S}_{1}$, which is included in Algorithm 1. We assume $\rho_{i}$,
$\psi_{i}$ and $\kappa(p_{i})$ can be calculated by the UAV itself, since the
path is globally available to the UAV. Besides, $\zeta_{i}$ can be measured by
the UAV itself or through communication with its pre-neighbor, and thus the
multi-UAV coordination can be achieved through sensing or communication. When
the $i$th UAV does not have a pre-neighbor, we artificially set $\zeta_{i}=L$,
i.e., the coordination error $L-\zeta_{i}$ is set to be zero.

Before illustrating our control algorithm, we introduce a continuous function
$\chi(\zeta_{i})$, which is used in Line 4 with the following properties:

  * i)

$\chi(\zeta_{i})=\frac{1}{1-\kappa_{0}R_{1}}v_{\min}$, when
$\zeta_{i}\in[0,L-\delta_{1})$, where $0<\delta_{1}<L$;

  * ii)

$\chi(L)=\frac{\lambda}{1-\kappa_{0}R_{1}}v_{\min}+\frac{(1-\lambda)\cos
a}{1+\kappa_{0}R_{1}}v_{m}$, where $0<\lambda<1$;

  * iii)

$\chi(\zeta_{i})$ is non-decreasing when $\zeta_{i}\in[0,\infty)$, and is
strictly increasing in $[L-\delta_{2},L+\delta_{2}]$, where
$0<\delta_{2}\leq\delta_{1}$.

We also use a saturation function $\mathrm{Sat}(\cdot)$ in Lines 4 and 5,
which is defined as follows (suppose $a<b$): $\mathrm{Sat}(x,a,b)=a$ if $x\leq
a$, $\mathrm{Sat}(x,a,b)=x$ if $a<x\leq b$, and $\mathrm{Sat}(x,a,b)=b$ if
$x>b$.

The main procedure of the coordinated path following algorithm in
$\mathcal{S}_{1}$, CoordControl, can be described as follows: in Line 4, we
set the value of $v_{i}\in[v_{\min},v_{\max}]$ based on the coordination
error. We calculate $\omega_{i}\in[-\omega_{\max},\omega_{\max}]$ in Line 5,
which is a function of $v_{i}$ derived in Line 4. After calculating $v_{i}$
and $\omega_{i}$, we check whether some properties (see procedure ReSetValue)
hold with the derived $v_{i}$ and $\omega_{i}$, and if not, we will
recalculate $v_{i}$ again. The checking-recalculating process is depicted by
procedure ReSetValue. In this procedure, we divide $\mathcal{S}_{1}$ into six
subsets, and reset the value of $v_{i}$ by using different rules for different
subsets.

Let $\vartheta_{i}=k_{1}\rho_{i}+k_{2}\psi_{i}+k_{3}\sin\psi_{i}$, then
$\vartheta_{i}=0$ is a nearly-straight curve passing through the origin,
$\vartheta_{i}>0$ is on the upper-right side of the curve, and
$\vartheta_{i}<0$ on its lower-left side. $\vartheta_{i}=0$ together with
$\rho$-axis and $\psi$-axis divides $\mathcal{S}_{1}$ into six subsets as
shown in Fig. 3, which are defined as follows:

$\displaystyle\mathcal{S}^{1}_{1}$
$\displaystyle=\\{\phi_{i}\in\mathcal{S}_{1}\colon\rho_{i}>0,\psi_{i}\geq
0,\vartheta_{i}>0\\};$ $\displaystyle\mathcal{S}^{2}_{1}$
$\displaystyle=\\{\phi_{i}\in\mathcal{S}_{1}\colon\rho_{i}\leq 0,\psi_{i}\geq
0,\vartheta_{i}\geq 0\\};$ $\displaystyle\mathcal{S}^{3}_{1}$
$\displaystyle=\\{\phi_{i}\in\mathcal{S}_{1}\colon\rho_{i}<0,\psi_{i}\leq
0,\vartheta_{i}<0\\};$ $\displaystyle\mathcal{S}^{4}_{1}$
$\displaystyle=\\{\phi_{i}\in\mathcal{S}_{1}\colon\rho_{i}\geq 0,\psi_{i}\leq
0,\vartheta_{i}\leq 0\\};$ $\displaystyle\mathcal{S}^{5}_{1}$
$\displaystyle=\\{\phi_{i}\in\mathcal{S}_{1}\colon\rho_{i}<0,\psi_{i}>0,\vartheta_{i}<0\\};$
$\displaystyle\mathcal{S}^{6}_{1}$
$\displaystyle=\\{\phi_{i}\in\mathcal{S}_{1}\colon\rho_{i}>0,\psi_{i}<0,\vartheta_{i}>0\\}.$

We note that according to the above partition, the origin is contained both in
$\mathcal{S}^{2}_{1}$ and in $\mathcal{S}^{4}_{1}$.

Figure 3: Six subsets of $\mathcal{S}_{1}$ divided by $\vartheta_{i}=0$,
$\rho$-axis, and $\psi$-axis.

In ReSetValue, we check whether one of the four inequalities (4)-(7) holds
when
$\phi_{i}\in\mathcal{S}^{1}_{1}\cup\mathcal{S}^{2}_{1}\cup\mathcal{S}^{3}_{1}\cup\mathcal{S}^{4}_{1}$.
If not, we will recalculate $v_{i}$. It is easy to find that, the recalculated
$v_{i}$ can finally make one of the inequalities (4)-(7) hold when
$\phi_{i}\in\mathcal{S}^{1}_{1}\cup\mathcal{S}^{2}_{1}\cup\mathcal{S}^{3}_{1}\cup\mathcal{S}^{4}_{1}$.
We also note that there is no need to check inequalities (4)-(7) when
$\phi_{i}\in\mathcal{S}^{5}_{1}\cup\mathcal{S}^{6}_{1}$, since $\phi_{i}$ will
not leave $\mathcal{S}_{1}$ from $|\rho_{i}|=R_{1}$ (see Remark 4). But we
will make sure $\dot{\psi}_{i}\geq 0$ when $\phi_{i}\in\mathcal{S}_{1}^{5}$,
and $\dot{\psi}_{i}\leq 0$ when $\phi_{i}\in\mathcal{S}_{1}^{6}$.

There is an important property of procedure ReSetValue.

###### Lemma 6

If $v_{i}$ is changed in ReSetValue, denote $v_{i1}$ as the forward speed
calculated in Line 4, and $v_{i}$ is the final returned value from ReSetValue,
then $v_{m}\leq v_{i}<v_{i1}$.

###### Proof:

See Appendix C. ∎

According to the definition of function $\mathrm{Sat}(\cdot)$, we have
$v_{i1}\leq v_{\max}$. Therefore, Lemma 6 implies that, control inputs $v_{i}$
and $\omega_{i}$ calculated by Algorithm 1 satisfy (2).

We now show that the first principle is guaranteed by using Algorithm 1, which
means $\mathcal{S}_{1}$ is made an invariant set.

######  Theorem 1 (Validation for the First Principle)

According to Algorithm 1, $v_{i}$ and $\omega_{i}$ make $\mathcal{S}_{1}$ an
invariant set, i.e., if $\phi_{i}(t_{0})\in\mathcal{S}_{1}$, then
$\phi_{i}(t)\in\mathcal{S}_{1}$, $\forall~{}t>t_{0}$.

###### Proof:

It is easy to check that procedure ReSetValue can guarantee one of the four
inequalities (4)-(7) hold when
$\phi_{i}\in\mathcal{S}^{1}_{1}\cup\mathcal{S}^{2}_{1}\cup\mathcal{S}^{3}_{1}\cup\mathcal{S}^{4}_{1}$.
According to the definition of these sets,
$\partial\mathcal{S}_{1}\subsetneq\mathcal{S}^{1}_{1}\cup\mathcal{S}^{2}_{1}\cup\mathcal{S}^{3}_{1}\cup\mathcal{S}^{4}_{1}$.
With Lemma 7, we can conclude that $\mathcal{S}_{1}$ is an invariant set. ∎

###### Remark 6

We get the following results with Algorithm 1.

  * i)

If $\vartheta_{i}>0$, then $\dot{\psi}_{i}\leq-\alpha$; if $\vartheta_{i}<0$,
then $\dot{\psi}_{i}\geq\alpha$.

  * ii)

If $\phi_{i}\in\mathcal{S}^{1}_{1}\cup\mathcal{S}^{3}_{1}$, and $\psi_{i}\neq
0$, then $\frac{\dot{\psi}_{i}}{\dot{\rho}_{i}}\leq-\frac{a}{R_{1}}$.

In terms of the second principle proposed in Section III-A, Theorem 2
illustrates that Algorithm 1 guarantees the sequence of UAVs becoming fixed,
once all the UAVs enter $\mathcal{S}_{1}$.

######  Theorem 2 (Validation for the Second Principle)

Suppose $\phi_{i}(t_{0})\in\mathcal{S}_{1},~{}\forall~{}i=1,\ldots,n$. By
executing Algorithm 1, if $\zeta_{i}(t_{0})>0$, then $\zeta_{i}(t)>0$ holds,
$\forall~{}t\geq t_{0}$.

###### Proof:

Firstly, each UAV’s speed along the path $v_{i}^{r}$ is not smaller than
$\chi(0)$ with Algorithm 1. This is obvious if the value of $v_{i}$ is not
changed in ReSetValue by using the definition of $\chi(\cdot)$. If the value
of $v_{i}$ is changed in ReSetValue, according to Lemma 6, $v_{i}\geq v_{m}$,
then $v^{r}_{i}\geq v_{m}\frac{\cos a}{1+\kappa_{0}R_{1}}>\chi(0)$.

Now let the $j$th UAV be the pre-neighbor of the $i$-th UAV, then
$\dot{\zeta}_{i}=v^{r}_{j}-v^{r}_{i}$. Suppose initially
$0<\zeta_{i}(t_{0})\leq L-\delta_{1}$, and thus $v^{r}_{i}=\chi(0)$. Using
similar analyses with Lemma 4, it can be concluded that $\zeta_{i}(t)>0$,
$\forall~{}t\geq t_{0}$. ∎

Now we show the importance of the two principles to the convergence of the
path following error and sequenced inter-UAV arc distance in
$\mathcal{S}_{1}$. In terms of the path following error, we have the following
theorem stating that all the UAVs will finally move on the desired path if
they are all in $\mathcal{S}_{1}$ initially.

######  Theorem 3 (Convergence of Path Following Error)

By executing Algorithm 1, if $\phi_{i}(t_{0})\in\mathcal{S}_{1}$, then
$\lim\limits_{t\rightarrow\infty}\phi_{i}(t)=\mathbf{0}$.

###### Proof:

Firstly, recall i) in Remark 6, $\dot{\psi}_{i}\leq-\alpha<0$ when
$\vartheta_{i}>0$; and $\dot{\psi}_{i}\geq\alpha>0$ when $\vartheta_{i}<0$. We
note that $\mathcal{S}_{1}$ is an invariant set according to Theorem 1, and
$|\psi_{i}|\leq a$ when $\phi_{i}\in\mathcal{S}_{1}$. Therefore, for any
$\phi_{i}(0)\in\mathcal{S}_{1}$, there exists a finite time
$t_{0}\leq\frac{2a}{\alpha}$, such that $\vartheta_{i}(t_{0})=0$. Secondly, by
i) in Remark 6, we can show that for any
$\phi_{i}(t_{0})\in\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$, $\phi_{i}$
will not go to $\mathcal{S}^{5}_{1}$ or $\mathcal{S}^{6}_{1}$ directly, since
$\vartheta_{i}\dot{\vartheta}_{i}=\vartheta_{i}(k_{1}\dot{\rho}_{i}+k_{2}\dot{\psi}_{i}+k_{3}\dot{\psi}_{i}\cos\psi_{i})<0$
when $\phi_{i}\in\mathcal{S}_{1}^{5}\cup\mathcal{S}_{1}^{6}$. Thus if
$\phi_{i}(t_{0})\in\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$, the
possibilities for the movement of $\phi_{i}$ after $t_{0}$ can be partitioned
into the following three cases.

_Case 1:_ $\phi_{i}(t)\in\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$ holds
for any $t\geq t_{0}$. Since
$\vartheta_{i}=k_{1}\rho_{i}+k_{2}\psi_{i}+k_{3}\sin\psi_{i}$, it can be
rewritten as
$\vartheta_{i}=k_{1}\rho_{i}+k_{2}\arcsin\frac{\dot{\rho}_{i}}{v_{i}}+k_{3}\frac{\dot{\rho}_{i}}{v_{i}}$.
Denote $h(x)=k_{2}\arcsin\frac{x}{v_{i}}+k_{3}\frac{x}{v_{i}},x\in[-v_{i}\sin
a,v_{i}\sin a]$. Obviously, $h(x)$ is an odd function, and its inverse
function $h^{-1}(x)$ exists. Thus if $\vartheta_{i}(t)\equiv 0$ holds for all
$t\geq t_{0}$, then $\dot{\rho}_{i}=-h^{-1}(k_{1}\rho_{i})$. Since $h(x)$ is a
Lipschitz function, there exists a positive constant $c_{1}$ such that
$|h(x)|\leq|c_{1}x|$. Then
$|\rho_{i}(t)|\leq|\rho_{i}(t_{0})|\exp[-\frac{k_{1}}{c_{1}}(t-t_{0})]$,
meaning $\rho_{i}(t)\to 0$ as $t\to\infty$. Moreover, $\psi_{i}(t)\to 0$ since
$\vartheta_{i}(t)=k_{1}\rho_{i}+k_{2}\psi_{i}+k_{3}\sin\psi_{i}\equiv 0$ holds
for all $t\geq t_{0}$.

_Case 2:_ $\phi_{i}(t)\notin\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$
for some $t>t_{0}$, but
$\phi_{i}(t)\in\mathcal{S}^{2}_{1}\cup\mathcal{S}^{4}_{1}$, $\forall t>t_{0}$.
In this case, since $\dot{\psi}_{i}\geq\alpha$ if
$\phi_{i}\in\mathcal{S}^{4}_{1}\setminus\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$,
and $\dot{\psi}_{i}\leq-\alpha$ if
$\phi_{i}\in\mathcal{S}^{2}_{1}\setminus\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$.
Therefore, $|\psi_{i}|$ is non-increasing when
$\phi_{i}(t)\notin\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$, and the
total time duration that
$\phi_{i}(t_{0})\notin\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$ is
finite, which is no more than $\frac{a}{\alpha}$. Besides, $|\rho_{i}|$ is
also non-increasing when
$\phi_{i}(t)\notin\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$, and by
combining the convergence results in _Case 1_ , we get
$|\rho_{i}(t)|\leq|\rho_{i}(t_{0})|\exp[-\frac{k_{1}}{c_{1}}(t-t_{0}-\frac{a}{\alpha})]$,
and thus $\lim\limits_{t\to\infty}\rho_{i}(t)=0$. Since $|\psi_{i}|$ is non-
increasing and bounded, then $\lim\limits_{t\to\infty}|\psi_{i}|$ exists. Note
that the total time duration that
$\phi_{i}(t_{0})\notin\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$ is
finite and $\lim\limits_{t\to\infty}\rho_{i}(t)=0$, it leads to
$\lim\limits_{t\to\infty}\psi_{i}(t)=0$, and thus
$\lim\limits_{t\to\infty}\phi_{i}(t)=\mathbf{0}$.

Figure 4: An illustration of the state trajectory in _Case 3_ when initially
$\phi_{i}(t_{0})\in\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$.

_Case 3:_ there exists
$\phi_{i}(t_{0})\in\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$ and
$\phi_{i}(t)\notin\mathcal{S}^{2}_{1}\cup\mathcal{S}^{4}_{1}$ for some
$t>t_{0}$. Since $\phi_{i}$ will not go to $\mathcal{S}^{5}_{1}$ and
$\mathcal{S}^{6}_{1}$ directly, then $\phi_{i}$ must have entered
$\mathcal{S}^{1}_{1}\cup\mathcal{S}^{3}_{1}$ through the $\psi$-axis. Without
loss of generality, we assume $\rho_{i}(t_{0})>0$ and $\psi_{i}(t_{0})<0$, as
shown in Fig. 4. After $\phi_{i}$ enters $\mathcal{S}^{3}_{1}$, since
$\dot{\psi}_{i}\geq\alpha>0$ holds in $\mathcal{S}^{3}_{1}$ and
$\mathcal{S}^{5}_{1}$, there exists a finite time $t_{1}\leq
t_{0}+\frac{2a}{\alpha}$ such that
$\phi_{i}(t_{1})\in\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$, with
$\rho_{i}(t_{1})\leq 0$ and $\psi_{i}(t_{1})\geq 0$. We use $(-r_{1},0)$ to
denote the intersection of the trajectory of $\phi_{i}$ with the $\rho$-axis,
since $\dot{\psi}_{i}\geq\alpha>0$ when
$\phi_{i}\in\mathcal{S}^{4}_{1}\setminus\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$,
and inequality (6) holds when $\phi_{i}\in\mathcal{S}^{3}_{1}$, which means
$r_{1}<\frac{R_{1}}{a}|\psi_{i}(t_{0})|$. Moreover, since
$\dot{\rho}_{i}=v_{i}\sin\psi_{i}>0$ in $\mathcal{S}^{5}_{1}$. Therefore,
$|\rho_{i}(t_{1})|<r_{1}<\frac{R_{1}}{a}|\psi_{i}(t_{0})|$. We note that
$|\psi_{i}(t_{0})|\leq\frac{k_{1}}{k_{2}}|\rho_{i}(t_{0})|$ and
$|\psi_{i}(t_{1})|\leq\frac{k_{1}}{k_{2}}|\rho_{i}(t_{1})|$. Thus
$|\rho_{i}(t_{1})|<\frac{R_{1}k_{1}}{ak_{2}}|\rho_{i}(t_{0})|$ and
$|\psi_{i}(t_{1})|<\frac{R_{1}k_{1}}{ak_{2}}|\psi_{i}(t_{0})|$. Let
$\sigma:=\frac{R_{1}k_{1}}{ak_{2}}$, and we have $\sigma<1$. Therefore,
$|\rho_{i}(t)|\leq|\rho_{i}(t_{0})|$, $|\psi_{i}(t)|\leq|\psi_{i}(t_{0})|$
when $t\in[t_{0},t_{1}]$. By symmetry, when
$\phi_{i}(t_{1})\in\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$, there are
three possibilities for the movement of $\phi_{i}$ after $t_{1}$,
corresponding to the three cases we listed here. We only consider _Case 3_ ,
since the first two cases implies the path following error converges to zero
by our analysis above. Now if $\phi_{i}$ enters $\mathcal{S}_{1}^{1}$ after
$t_{1}$ and then reaches $\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$
again at time $t_{2}$, it follows that
$|\rho_{i}(t)|\leq\sigma|\rho_{i}(t_{0})|$,
$|\psi_{i}(t)|\leq\sigma|\psi_{i}(t_{0})|$ when $t\in[t_{1},t_{2}]$.
Proceeding forward, we get $|\rho_{i}(t)|\leq\sigma^{m-1}|\rho_{i}(t_{1})|$,
and $|\psi_{i}(t)|\leq\sigma^{m-1}|\psi_{i}(t_{1})|,$ for
$t\in[t_{m},t_{m+1}]$, where $t_{m}$ corresponds to the $m$-th time that
$\phi_{i}$ leaves $\mathcal{S}^{2}_{1}\cup\mathcal{S}^{4}_{1}$ and reaches
$\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$ again. Since $\sigma^{m-1}\to
0$ as $m\to\infty$, we get $\lim\limits_{t\rightarrow\infty}|\rho_{i}(t)|=0$
and $\lim\limits_{t\rightarrow\infty}|\psi_{i}(t)|=0$, i.e.,
$\lim\limits_{t\rightarrow\infty}\phi_{i}(t)=\mathbf{0}$.

Combining the above cases together, we conclude that
$\lim\limits_{t\rightarrow\infty}\phi_{i}(t)=\mathbf{0}$ always holds. ∎

###### Remark 7

According to the proof of Theorem 3, if
$\phi_{i}(t_{0})\in\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$, there are
three possibilities for the movement of $\phi_{i}$ after $t_{0}$. However, in
a small neighborhood of the origin, it satisfies
$k_{1}v_{\max}|\sin\psi_{i}|\leq k_{2}\alpha+k_{3}\alpha\cos\psi_{i}$. As a
result, $\vartheta_{i}\dot{\vartheta}_{i}\leq 0$ always holds in this
neighborhood, and $\vartheta_{i}\dot{\vartheta}_{i}=0$ if and only if
$\vartheta_{i}=0$, meaning $\phi_{i}$ can only slide on $\vartheta_{i}=0$ once
it reaches $\\{(\rho_{i},\psi_{i})\colon\vartheta_{i}=0\\}$ in this
neighborhood. We also note that since the signum function is adopted in the
control law, $\omega_{i}$ is not continuous at $\vartheta_{i}=0$, but
$\phi_{i}$ is continuous. Thus, the solution should be understood in the sense
of Filippov. To eliminate chattering caused by the signum function, a high-
slope saturation function can be used to replace it [36].

###### Remark 8

It should be noted that the Lyapunov method can be employed in each subset of
$\mathcal{S}_{1}$, but we still need to prove the overall stability by
considering the six subsets and their boundaries altogether, which is actually
what we did in our current proof of Theorem 3. To be more specific, consider
the following Lyapunov function:

$V=\begin{cases}\begin{aligned}
&\frac{1}{2}(k_{1}\rho_{i}+k_{2}\psi_{i}+k_{3}\sin\psi_{i})^{2},~{}&\phi_{i}\in\mathcal{S}^{1}_{1}\cup\mathcal{S}^{3}_{1};\\\
&\frac{1}{2}(k_{2}\psi_{i}+k_{3}\sin\psi_{i})^{2},~{}&\phi_{i}\in\mathcal{S}^{2}_{1}\cup\mathcal{S}^{4}_{1};\\\
&\frac{1}{2}(k_{1}\rho_{i})^{2},~{}&\phi_{i}\in\mathcal{S}^{5}_{1}\cup\mathcal{S}^{6}_{1}.\\\
\end{aligned}\end{cases}$

It can be found that $V$ is a continuous function of $\phi_{i}$, and
$\dot{V}<0$ in the interior of each subset. However, $V$ is not differentiable
with respect to $\phi_{i}$ on the boundary of these subsets. Thus it calls for
the similar technique to the above proof to analyze the boundaries in order to
conclude the asymptotic stability.

Now we have demonstrated the path following stability in $\mathcal{S}_{1}$. In
terms of the coordination, we have the following claim that the coordination
error will also converge to zero.

######  Theorem 4 (Convergence of Coordination Error)

Suppose $\phi_{i}(t_{0})\in\mathcal{S}_{1}$, $\forall~{}i=1,\ldots,n$, by
executing Algorithm 1, $\lim\limits_{t\rightarrow\infty}\zeta_{i}(t)=L$ for
all $i$.

###### Proof:

It follows from Theorem 2 that the pre-neighbor of each UAV does not change.
Without loss of generality, suppose UAV 1 is the pre-neighbor of UAV 2, and
UAV 2 is the pre-neighbor of UAV 3, and so on. Since UAV 1 does not have a
pre-neighbor, it is artificially set as $\zeta_{1}=L$. For UAV 2, consider
$V_{2}=(1/2)(\zeta_{2}-L)^{2}$, thus
$\dot{V_{2}}=(\zeta_{2}-L)\dot{\zeta_{2}}=(\zeta_{2}-L)(v^{r}_{1}-v^{r}_{2})=-(\zeta_{2}-L)(v^{r}_{2}-\chi(L))$.
According to the definition of $\chi(\cdot)$ and Lemma 6,
$(v^{r}_{i}-\chi(L))\cdot(\zeta_{i}-L)\geq 0$, and the equality holds if and
only if $\zeta_{i}=L$. Thus, we obtain
$\lim\limits_{t\rightarrow\infty}\zeta_{2}(t)=L$ by using LaSalle’s invariance
principle [36]. As a result, $\lim\limits_{t\to\infty}v_{2}^{r}=\chi(L)$.
Since $\dot{\zeta}_{3}=(v_{2}^{r}-\chi(L))-(v_{3}^{r}-\chi(L))$, and the
system described by equation $\dot{\zeta}_{i}=-(v_{i}^{r}-\chi(L))$ will
converge to $\lim\limits_{t\rightarrow\infty}\zeta_{i}=L$ (we get this claim
by using the same analyses for UAV 2), with the Limiting Equation Theorem
[37], we get $\lim\limits_{t\rightarrow\infty}\zeta_{3}=L$. Proceeding
forward, we get
$\lim\limits_{t\rightarrow\infty}\zeta_{1}(t)=\ldots=\lim\limits_{t\rightarrow\infty}\zeta_{n}(t)=L$.
∎

###### Remark 9

We have completed the control law design in the coordination set
$\mathcal{S}_{1}$. We demonstrate that the designed control law can drive the
UAVs whose path following errors initially in the coordination set to move
onto the predefined path, with the inter-UAV arc distances converging to the
desired value.

Recall that in Remark 5, we have proposed a guideline for the user-determined
value $c$, that is, the smaller $c$ is, the larger the coordination set would
become, since we will get a larger feasible region for (III-A2). However, the
value of $c$ is not the smaller, the better. Now, we briefly analyze it from
the perspective of convergence rate of the coordination error. Assume the
$j$th UAV is the pre-neighbor of the $i$th UAV, and the coordination error of
the $j$th UAV is already zero, i.e., $\zeta_{j}=L$. If $\zeta_{i}<L$, then

$\displaystyle|\dot{\zeta_{i}}|$
$\displaystyle=|v^{r}_{i}-v^{r}_{j}|=|\chi(\zeta_{i})-\chi(\zeta_{j})|$ (14)
$\displaystyle\leq(1-\lambda)[\frac{\cos
a}{1+\kappa_{0}R_{1}}v_{m}-\frac{1}{1-\kappa_{0}R_{1}}v_{\min}].$

Recall that (10) is a precondition for (III-A2), then with a greater $c$, we
are more likely to have a greater value of $\frac{\cos
a}{1+\kappa_{0}R_{1}}v_{m}-\frac{1}{1-\kappa_{0}R_{1}}v_{\min}$ from (III-A2),
then we can get a greater upper-bound for the convergence rate of the
coordination error in this case. Therefore, the determination of value $c$ is
a trade-off between enlarging the coordination set and increasing the
convergence rate of the sequenced inter-UAV arc distance.

##  IV Single-Agent Level Control Law Outside Coordination Set

In Section III, we have designed the control law for those UAVs whose path
following errors are within $\mathcal{S}_{1}$, such that they follow the path
in a coordination manner. Now we discuss how to control the UAVs whose path
following errors are outside $\mathcal{S}_{1}$. In that case, those UAVs do
not follow the path cooperatively, but only adjust their path following errors
at the single-agent level, in order to enter $\mathcal{S}_{1}$.

We label the set containing those path following errors outside
$\mathcal{S}_{1}$ as $\mathcal{S}_{2}$. To describe $\mathcal{S}_{2}$, we
define a universe $\mathcal{S}$ which gives the scope for our designed control
law444For the path following errors outside $\mathcal{S}$, they are distant
away from the path $\Gamma$, and we can design Dubins paths to drive the
errors into $\mathcal{S}$.:

$\mathcal{S}=\left\\{(\rho,\psi)\colon\rho\in[-R_{2},R_{2}],\psi\in[-\pi,\pi)\right\\}.$
(15)

Then, set $\mathcal{S}_{2}$ is defined as
$\mathcal{S}_{2}:=\mathcal{S}\setminus\mathcal{S}_{1}$. We further divide
$\mathcal{S}_{2}$ into four subsets: $\mathcal{S}^{1}_{2}$,
$\mathcal{S}^{2}_{2}$, $\mathcal{S}^{3}_{2}$ and $\mathcal{S}^{4}_{2}$, as
shown in Fig. 5. The mathematical descriptions of these subsets are as
follows:

$\displaystyle\mathcal{S}^{1}_{2}=$
$\displaystyle\Big{(}\\{(\rho,\psi)\colon\psi>0\\}\cap\mathcal{S}_{2}\setminus\mathcal{S}^{2}_{2}\Big{)}\bigcup$
$\displaystyle\\{(\rho,\psi)\colon R_{1}<\rho\leq R_{2},\psi=0\\},$
$\displaystyle\mathcal{S}^{2}_{2}=$ $\displaystyle\\{(\rho,\psi)\colon-
R_{2}\leq\rho<-R_{1},0<\psi\leq a\\},$ $\displaystyle\mathcal{S}^{3}_{2}=$
$\displaystyle\Big{(}\\{(\rho,\psi)\colon\psi<0\\}\cap\mathcal{S}_{2}\setminus\mathcal{S}^{4}_{2}\Big{)}\bigcup$
$\displaystyle\\{(\rho,\psi)\colon-R_{2}\leq\rho<-R_{1},\psi=0\\},$
$\displaystyle\mathcal{S}^{4}_{2}=$ $\displaystyle\\{(\rho,\psi)\colon
R_{1}<\rho\leq R_{2},-a\leq\psi<0\\}.$

Figure 5: $\mathcal{S}_{1}$ and partition of $\mathcal{S}_{2}$.

In the rest of this section, we design the control laws for these four
subsets: In Section IV-A, we prove the existence of the control law which
makes any path following error in sets $\mathcal{S}^{2}_{2}$ and
$\mathcal{S}^{4}_{2}$ enter $\mathcal{S}_{1}$, and a near time optimal control
law for sets $\mathcal{S}^{2}_{2}$ and $\mathcal{S}^{4}_{2}$ is designed. In
Section IV-B, we design a robust control law for sets $\mathcal{S}^{1}_{2}$
and $\mathcal{S}^{3}_{2}$.

###  IV-A Near Time Optimal Control Law in $\mathcal{S}^{2}_{2}$ and
$\mathcal{S}^{4}_{2}$

Firstly, we prove the existence of control laws which makes the path following
error within $\mathcal{S}^{2}_{2}\cup\mathcal{S}^{4}_{2}$ enter
$\mathcal{S}_{1}$.

######  Theorem 5 (Dynamics in $\mathcal{S}^{2}_{2}$ and
$\mathcal{S}^{4}_{2}$)

If $R_{2}<\frac{1}{\kappa_{0}}-\frac{v_{\min}}{\omega_{\max}}$, then for any
$\phi_{i}(t_{0})\in\mathcal{S}^{2}_{2}\cup\mathcal{S}^{4}_{2}$, there exists
time $t_{1}$, and control $(v_{i}(t),\omega_{i}(t)),~{}t\in[t_{0},t_{1}]$,
satisfying constraint (2), such that $\phi_{i}(t_{1})\in\mathcal{S}_{1}$.

###### Proof:

Without loss of generality, we consider the condition in
$\mathcal{S}^{4}_{2}$. The condition in $\mathcal{S}^{2}_{2}$ can be deduced
similarly.

In $\mathcal{S}^{4}_{2}$, since $\psi_{i}<0$, then $\dot{\rho}_{i}<0$.
According to Lemma 1, $\forall~{}\phi_{i}(t_{0})\in\mathcal{S}^{4}_{2}$ would
not leave $\mathcal{S}$ through $\rho=R_{2}$, thus it can only enter
$\mathcal{S}_{1}$ through $\rho=R_{1}$, or enter $\mathcal{S}^{3}_{2}$ through
$\psi=-a$, or enter $\mathcal{S}^{1}_{2}$ through $\psi=0$, or remain in
$\mathcal{S}^{4}_{2}$ forever. We show that by applying appropriate control
law, the last three cases can be made impossible. Otherwise, suppose
$\phi_{i}$ will enter $\mathcal{S}^{3}_{2}$, then there exists
$\phi_{i}=(\rho_{i},\psi_{i})$ such that

$\dot{\psi}_{i}=\omega_{i}-\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}<0$
(16)

holds for all $v_{i}$ and $\omega_{i}$ satisfying (2). Let
$\omega_{i}=\omega_{\max}$, $v_{i}=v_{\min}$, and (16) becomes:

$\omega_{\max}-\frac{\kappa(p_{i})v_{\min}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}<0.$
(17)

If $\phi_{i}\in\mathcal{S}^{4}_{2}$, then $\cos\psi_{i}>0$ and
$1+\kappa(p_{i})\rho_{i}>0$ hold, then

$\omega_{\max}-\frac{\kappa(p_{i})v_{\min}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\geq\omega_{\max}-\frac{\kappa_{0}v_{\min}\cos\psi_{i}}{1-\kappa_{0}\rho_{i}}\\\
\geq\omega_{\max}-\frac{\kappa_{0}v_{\min}}{1-\kappa_{0}R_{2}}\geq 0$ (18)

which is contrary to (17), meaning there exist $v_{i}$ and $\omega_{i}$
satisfying (2), such that $\phi_{i}$ will not enter $\mathcal{S}^{3}_{2}$. In
the same way, we conclude that there exist $v_{i}$ and $\omega_{i}$ such that
$\phi_{i}$ will not enter $\mathcal{S}^{1}_{2}$ if
$(\rho_{i}(t_{0}),\psi_{i}(t_{0})\in\mathcal{S}_{2}^{4}$, and additionally, it
can be made that $\psi_{i}(t)\leq\psi_{i}(t_{0})$ for all $t\geq t_{0}$ before
$\phi_{i}$ leaves $\mathcal{S}^{4}_{2}$. Thus there exists
$t_{1}\leq\frac{R_{1}-\rho_{i}(t_{0})}{v_{\min}\sin\psi_{i}(t_{0})}$ such that
$\phi_{i}(t_{1})\in\mathcal{S}_{1}$. ∎

Since all the state errors in $\mathcal{S}^{2}_{2}$ and $\mathcal{S}^{4}_{2}$
can enter $\mathcal{S}_{1}$ when
$R_{2}<\frac{1}{\kappa_{0}}-\frac{v_{\min}}{\omega_{\max}}$, it is necessary
to make $\phi_{i}$ enter $\mathcal{S}_{1}$ as soon as possible. Suppose
$t_{f}$ is the minimum time instant such that
$\phi_{i}(t_{f})\in\mathcal{S}_{1}$, then the time optimal control objective
is to minimize $t_{f}$, which can be formulated as follows.

$\displaystyle\mathrm{(P1)}~{}~{}\mathrm{minimize}{}$ $\displaystyle
J_{1}=t_{f},$ $\displaystyle\mathrm{s.t.}{}$
$\displaystyle\phi_{i}(t_{0})\in\mathcal{S}^{2}_{2}\cup\mathcal{S}^{4}_{2},\phi_{i}(t_{f})\in\mathcal{S}_{1},$
and inequality (2) holds.

In general, it is difficult to derive the optimal solution to P1. Here we
adopt a greedy strategy to transform P1 into a near optimal control problem.
Let $d=\inf_{\phi_{f}\in\mathcal{S}_{1}}\|\phi_{i}(t)-\phi_{f}\|$ denote the
point-to-set Euclidean distance from $\phi_{i}(t)$ to $\mathcal{S}_{1}$. In
our greedy strategy, the control objective is to minimize $\dot{d}$ at every
time instant555This is why we say this strategy is “greedy”., i.e., to drive
$\phi_{i}(t)$ as close as possible towards $\mathcal{S}_{1}$. Thus P1 is
transformed to the following problem.

$\displaystyle\mathrm{(P2)}~{}~{}\mathrm{minimize}{}$ $\displaystyle
J_{2}=\dot{d},$
$\displaystyle\text{where}~{}d=\inf_{\phi_{f}\in\mathcal{S}_{1}}\|\phi_{i}(t)-\phi_{f}\|,$
$\displaystyle\mathrm{s.t.}~{}\phi_{i}(t)$
$\displaystyle\in\mathcal{S}^{2}_{2}\cup\mathcal{S}^{4}_{2},~{}\text{and
inequality~{}\eqref{eq_constraint} holds.}$

When $\phi_{i}(t)\in\mathcal{S}^{4}_{2}$, $d=\rho_{i}-R_{1}$, then

$J_{2}=\dot{\rho_{i}}=v_{i}\sin\psi_{i}.$

We can see that $J_{2}$ is affine with respect to $v_{i}$. In
$\mathcal{S}^{4}_{2}$, $\psi_{i}<0$, so we need to set $v_{i}=v_{\max}$. In
terms of $\omega_{i}$, we have

$\frac{\partial J_{2}}{\partial\omega_{i}}=\frac{\partial
J_{2}}{\partial\psi_{i}}\cdot\frac{\partial\psi_{i}}{\partial\omega_{i}}=\frac{\partial
J_{2}}{\partial\psi_{i}}\cdot\frac{\partial\dot{\psi}_{i}}{\partial\omega_{i}}\cdot
dt=v_{i}\cos\psi_{i}\cdot dt>0.$ (19)

Therefore, to minimize $J_{2}$, we choose $\omega_{i}=-\omega_{\max}$, and the
control law in $\mathcal{S}^{4}_{2}$ becomes

$v_{i}=v_{\max},\quad\omega_{i}=-\omega_{\max}.$ (20)

With control law (20), we have

$\dot{\psi}_{i}=\omega_{i}-\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}=-\omega_{\max}-\frac{\kappa(p_{i})v_{\min}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\\\
\leq-\omega_{\max}+\frac{\kappa_{0}v_{\min}}{1+\kappa_{0}R_{1}}\leq 0.$ (21)

According to Lemma 1, by applying this control law, $\phi_{i}$ will not enter
$\mathcal{S}^{1}_{2}$ through the $\rho$-axis. However, it may lead $\phi_{i}$
to enter $\mathcal{S}^{3}_{2}$. To prevent it, we set up a threshold
$\epsilon_{0}$, where $0<\epsilon_{0}\ll a$. When
$-a\leq\psi_{i}<-a+\epsilon_{0}$, we switch to a new control mode. There are
two principles for this new mode. Firstly, we need $\dot{\psi}_{i}\geq 0$ such
that $\phi_{i}$ will not enter $\mathcal{S}^{3}_{2}$. Secondly, we need to
minimize $\dot{d}$, i.e., $v_{i}\sin\psi_{i}$. Thus, the optimization problem
P2 becomes (22) when $-a\leq\psi_{i}<-a+\epsilon_{0}$:

$\displaystyle\mathrm{minimize}{}$ $\displaystyle v_{i}\sin\psi_{i},$ (22)
$\displaystyle\mathrm{s.t.}~{}~{}\omega_{i}-$
$\displaystyle\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\geq
0,~{}\text{and~{}\eqref{eq_constraint} holds.}$

Then, our near time optimal control law in $\mathcal{S}^{4}_{2}$ can be
described as follows:

  1. i)

If $\psi_{i}\geq-a+\epsilon_{0}$, the control law is (20).

  2. ii)

If $-a\leq\psi_{i}<-a+\epsilon_{0}$, the control law is the solution of (22),
i.e.,

     * •

if
$\omega_{\max}-\frac{\kappa(p_{i})v_{\max}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\geq
0$, then

$v_{i}=v_{\max},~{}\omega_{i}=\max\left\\{-\omega_{\max},\frac{\kappa(p_{i})v_{\max}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\right\\};$

     * •

if
$\omega_{\max}-\frac{\kappa(p_{i})v_{\max}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}<0$,
then

$v_{i}=\frac{\omega_{\max}(1-\kappa(p_{i})\rho_{i})}{\kappa(p_{i})\cos\psi_{i}},\quad\omega_{i}=\omega_{\max}.$

The control law in $\mathcal{S}^{2}_{2}$ can be designed in the same way as
follows:

  1. i)

If $\psi_{i}\leq a-\epsilon_{0}$, the control law is (23);

$v_{i}=v_{\max},\quad\omega_{i}=\omega_{\max}.$ (23)

  2. ii)

If $a-\epsilon_{0}<\psi_{i}\leq a$, the control law is the solution of (24),

$\displaystyle\mathrm{maximize}{}$ $\displaystyle v_{i}\sin\psi_{i},$ (24)
$\displaystyle\mathrm{s.t.}~{}~{}\omega_{i}-$
$\displaystyle\frac{\kappa(p_{i})v_{i}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\leq
0,~{}\text{and~{}\eqref{eq_constraint} holds.}$

It is easy to verify that the proposed near time optimal control law is the
desired control in Theorem 5, i.e., $\phi_{i}$ will enter $\mathcal{S}_{1}$
when initially in $\mathcal{S}_{2}^{2}\cup\mathcal{S}_{2}^{4}$ by executing
the control law.

###  IV-B Robust Control Law in $\mathcal{S}^{1}_{2}$ and
$\mathcal{S}^{3}_{2}$

By symmetric property, we only analyze the control law design in
$\mathcal{S}^{1}_{2}$, and the methods can be applied to
$\mathcal{S}^{3}_{2}$.

It is obvious by Lemma 1 that $\mathcal{S}^{1}_{2}$ is not an invariant set.
Specifically, there are five situations that $\phi_{i}(t)$ leaves
$\mathcal{S}^{1}_{2}$:

  * i)

$\phi_{i}(t)$ passes through $\psi=a,-R_{1}\leq\rho<0$, or
$a\rho+R_{1}\psi=aR_{1},0\leq\rho\leq R_{1}$, and enters $\mathcal{S}_{1}$
directly;

  * ii)

$\phi_{i}(t)$ passes through $\psi=a,-R_{2}\leq\rho<-R_{1}$, and enters
$\mathcal{S}^{2}_{2}$;

  * iii)

$\phi_{i}(t)$ passes through $\psi=0,R_{1}<\rho\leq R_{2}$, and enters
$\mathcal{S}^{4}_{2}$;

  * iv)

$\phi_{i}(t)$ passes through $\psi=\pi$, and enters $\mathcal{S}^{3}_{2}$;

  * v)

$\phi_{i}(t)$ passes through $\rho=R_{2},0\leq\psi\leq\pi$, and leaves
$\mathcal{S}$.

Among all these situations, situation i) is the case that $\phi_{i}(t)$ enters
$\mathcal{S}_{1}$ directly. For situations ii) and iii), $\phi_{i}(t)$ enters
$\mathcal{S}^{2}_{2}$ or $\mathcal{S}^{4}_{2}$, which can finally enter
$\mathcal{S}_{1}$ (see Theorem 5). For situation v), $\phi_{i}(t)$ leaves
$\mathcal{S}$. For situation iv), $\phi_{i}(t)$ enters $\mathcal{S}^{3}_{2}$,
which has the same property as that in $\mathcal{S}^{1}_{2}$ due to the
symmetric property. We note that for situation iv), it still has the
possibility to make $\phi_{i}(t)$ leave $\mathcal{S}$. Hence, we consider a
robust control scheme to avoid the last two situations. More specifically, our
objective is to maximize the possibility of the trajectory belonging to the
first three situations.

Denote the ratio of $\dot{\psi}_{i}$ and $\dot{\rho}_{i}$ as $\beta_{i}$,
i.e., $\beta_{i}=\frac{\dot{\psi}_{i}}{\dot{\rho}_{i}}$. We note that a
smaller $\beta_{i}$ can make $\phi_{i}\in\mathcal{S}^{1}_{2}$ have a higher
possibility of belonging to the first three situations. This is because
$\beta_{i}$ determines the tangent to the state trajectory, and a smaller
$\beta_{i}$ corresponds to a steeper slope towards the $\rho$-axis, which
maximizes the possibility of the trajectory entering
$\mathcal{S}_{1}\cup\mathcal{S}^{2}_{2}\cup\mathcal{S}^{2}_{4}$. In this way,
the control problem in $\mathcal{S}^{1}_{2}$ is formulated as

$\displaystyle\mathrm{minimize}{}$
$\displaystyle\frac{\omega_{i}}{v_{i}\sin\psi_{i}}-\frac{\kappa(p_{i})\cot\psi_{i}}{1-\kappa(p_{i})},$
$\displaystyle\mathrm{s.t.}~{}~{}\phi_{i}(t)$
$\displaystyle\in\mathcal{S}^{1}_{2},~{}\text{and~{}\eqref{eq_constraint}
holds.}$

and the solution is

$v_{i}=v_{\min},\quad\omega_{i}=-\omega_{\max}.$ (25)

Similarly, the control law in $\mathcal{S}^{3}_{2}$ can be derived as

$v_{i}=v_{\min},\quad\omega_{i}=\omega_{\max}.$ (26)

Then, we provide a sufficient condition for states in $\mathcal{S}^{1}_{2}$
entering $\mathcal{S}_{1}$ finally.

######  Theorem 6 (Dynamics in $\mathcal{S}^{1}_{2}$)

Consider the system described by state equations (27) and (28), where the
state variables are denoted as
$\tilde{\phi}_{i}=(\tilde{\rho}_{i},\tilde{\psi}_{i})$. If
$\tilde{\phi}_{i}(t_{0})=\phi_{i}(t_{0})\in\mathcal{S}^{1}_{2}$, and the state
trajectory of $\tilde{\phi}_{i}$ has an intersection with the
$\tilde{\rho}$-axis, denoted as $(R^{*},0)$, where $R^{*}\leq
R_{2}<\frac{1}{\kappa_{0}}-\frac{v_{\min}}{\omega_{\max}}$, then for any
$\phi_{i}(t_{0})\in\mathcal{S}^{1}_{2}$, by applying control law (25),
$\phi_{i}$ will get into
$\mathcal{S}_{1}\cup\mathcal{S}^{2}_{2}\cup\mathcal{S}^{4}_{2}$ in a finite
time.

$\begin{cases}\dot{\tilde{\rho}}_{i}=v_{\min}\sin\tilde{\psi}_{i},\\\
\dot{\tilde{\psi}}_{i}=-\omega_{\max}-\frac{\kappa_{0}v_{\min}\cos\tilde{\psi}_{i}}{1-\kappa_{0}\tilde{\rho}_{i}},\end{cases}\pi/2\leq\tilde{\psi}_{i}<\pi$
(27) $\begin{cases}\dot{\tilde{\rho}}_{i}=v_{\min}\sin\tilde{\psi}_{i},\\\
\dot{\tilde{\psi}}_{i}=-\omega_{\max}+\frac{\kappa_{0}v_{\min}\cos\tilde{\psi}_{i}}{1+\kappa_{0}\tilde{\rho}_{i}},\end{cases}0\leq\tilde{\psi}_{i}<\pi/2$
(28)

###### Proof:

The state trajectory of $\tilde{\phi}_{i}$ after $t_{0}$ can be described by
$g(\phi_{i})=0$, with the gradient vector $\bigtriangledown
g(\phi_{i})=(-\dot{\tilde{\psi}}_{i},\dot{\tilde{\rho}}_{i})$. Since
$g(\phi_{i})=0$ has an intersection with the $\tilde{\rho}$-axis at
$(R^{*},0)$, where $R^{*}\leq R_{2}$, then $g(\phi_{i})=0$ lies in
$\mathcal{S}$ when $\tilde{\psi}_{i}\in[0,\pi)$. By applying control law (25),
$\dot{\rho}_{i}=v_{\min}\sin\psi_{i}$,
$\dot{\psi}_{i}=-\omega_{\max}-\frac{\kappa(p_{i})v_{\min}\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}$.
Suppose $g(\phi_{i}(t))=0$ at time $t$, where $t\geq t_{0}$, and
$\phi_{i}(t)\in\mathcal{S}_{2}^{1}$, it can be verified that
$f(\phi_{i})\cdot\bigtriangledown g(\phi_{i})\leq 0$ holds. With Lemma 1, we
conclude that the state trajectory of $\phi_{i}$ is bounded by $g(\phi_{i})=0$
when $\phi_{i}\in\mathcal{S}^{1}_{2}$, i.e., $\phi_{i}$ will not leave
$\mathcal{S}$. Let
$\alpha_{1}=\omega_{\max}-\frac{\kappa_{0}v_{\min}}{1-\kappa_{0}R_{2}}$, and
we have $\alpha_{1}>0$. By applying control law (25),
$\dot{\psi}_{i}\leq-\alpha_{1}<0$ when $\phi_{i}\in\mathcal{S}^{1}_{2}$. Thus
there exists a finite time $t_{1}\leq t_{0}+\frac{\pi}{\alpha_{1}}$, such that
$\phi_{i}(t_{1})\in\mathcal{S}_{1}\cup\mathcal{S}^{2}_{2}\cup\mathcal{S}^{4}_{2}$.
∎

For states in $\mathcal{S}^{3}_{2}$, we have a similar result.

######  Theorem 7 (Dynamics in $\mathcal{S}^{3}_{2}$)

Consider the system described by state equations (29) and (30), where the
state variables are denoted as
$\tilde{\phi}_{i}=(\tilde{\rho}_{i},\tilde{\psi}_{i})$. If
$\tilde{\phi}_{i}(t_{0})=\phi_{i}(t_{0})\in\mathcal{S}^{3}_{2}$, and the state
trajectory of $\tilde{\phi}_{i}$ has an intersection with the
$\tilde{\rho}$-axis, denoted as $(-R^{*},0)$, where $R^{*}\leq
R_{2}<\frac{1}{\kappa_{0}}-\frac{v_{\min}}{\omega_{\max}}$. then for any
$\phi_{i}(t_{0})\in\mathcal{S}^{3}_{2}$, by applying control law (26),
$\phi_{i}$ will get into
$\mathcal{S}_{1}\cup\mathcal{S}^{2}_{2}\cup\mathcal{S}^{4}_{2}$ in a finite
time.

$\begin{cases}\dot{\tilde{\rho}}_{i}=v_{\min}\sin\tilde{\psi}_{i},\\\
\dot{\psi_{i}}=\omega_{\max}+\frac{\kappa_{0}v_{\min}\cos\tilde{\psi}_{i}}{1+\kappa_{0}\tilde{\rho}_{i}},\end{cases}-\pi\leq\tilde{\psi}_{i}<-\pi/2$
(29) $\begin{cases}\dot{\tilde{\rho}}_{i}=v_{\min}\sin\tilde{\psi}_{i},\\\
\dot{\psi_{i}}=\omega_{\max}-\frac{\kappa_{0}v_{\min}\cos\tilde{\psi}_{i}}{1-\kappa_{0}\tilde{\rho}_{i}},\end{cases}-\pi/2\leq\tilde{\psi}_{i}\leq
0$ (30)

After $\phi_{i}$ enters $\mathcal{S}^{2}_{2}\cup\mathcal{S}^{4}_{2}$, it is
certain that following our proposed control law in these two subsets (see
Section IV-A), $\phi_{i}$ can finally enter $\mathcal{S}_{1}$. We have the
following theorem to conclude the stability and convergence of the overall
closed-loop system.

###### Theorem 8

Consider a fleet of fixed-wing UAVs following a $\mathcal{C}^{2}$-smooth path
under Assumption 1, with the path following error equation described by (3)
with constraints (2). If
$R_{2}<\frac{1}{\kappa_{0}}-\frac{v_{\min}}{\omega_{\max}}$, and each UAV is
in one of the following cases:

  * •

_Case 1_ : $\phi_{i}(t_{0})\in\mathcal{S}_{1}$;

  * •

_Case 2_ : $\phi_{i}(t_{0})\in\mathcal{S}_{2}^{2}\cup\mathcal{S}_{2}^{4}$;

  * •

_Case 3_ : $\phi_{i}(t_{0})\in\mathcal{S}_{2}^{1}$, and the state trajectory
of $\tilde{\phi}_{i}$ following (27) and (28) has an intersection with the
$\tilde{\rho}$-axis at $(R^{*},0)$, where $R^{*}\leq R_{2}$, when
$\tilde{\phi}_{i}(t_{0})=\phi_{i}(t_{0})$;

  * •

_Case 4_ : $\phi_{i}(t_{0})\in\mathcal{S}_{2}^{3}$, and the state trajectory
of $\tilde{\phi}_{i}$ following (29) and (30) has an intersection with the
$\tilde{\rho}$-axis at $(-R^{*},0)$, where $R^{*}\leq R_{2}$, when
$\tilde{\phi}_{i}(t_{0})=\phi_{i}(t_{0})$;

then by executing Algorithm 1 when $\phi_{i}(t)\in\mathcal{S}_{1}$, control
law (20) and (22) when $\phi_{i}(t)\in\mathcal{S}_{2}^{4}$, control law (23)
and (24) when $\phi_{i}(t)\in\mathcal{S}_{2}^{2}$, control law (25) when
$\phi_{i}(t)\in\mathcal{S}_{2}^{1}$, and control law (26) when
$\phi_{i}(t)\in\mathcal{S}_{2}^{3}$, we will finally get
$\lim\limits_{t\rightarrow\infty}\phi_{i}=\mathbf{0},~{}\lim\limits_{t\rightarrow\infty}\zeta_{i}=L,~{}\forall~{}i$.

Note that the proposed controller in Theorem 8 for the overall sysem is
hybrid, as the controller is not continuous at the boundary of the subsets.
For example, when $\phi_{i}$ enters $\mathcal{S}_{1}$ from
$\mathcal{S}_{4}^{2}$ at time $t_{a}$, and
$\psi_{i}(t_{a})\geq-a+\epsilon_{0}$, then according to (20),
$\lim\limits_{t\to t_{a}^{-}}v_{i}=v_{\max}$, and $\lim\limits_{t\to
t_{a}^{-}}\omega_{i}=-\omega_{\max}$. However, it does not necessarily return
$v_{i}=v_{\max}$ and $\omega_{i}=\omega_{\max}$ with Algorithm 1 at time
$t_{a}$. Now, it is the position to analyse the stability of Theorem 8.

###### Proof:

The convergence of the closed-loop system can be concluded by using the
similar technique with Theorem 3.5 in [2]. In each of the last three cases,
$\phi_{i}$ will enter the coordination set, i.e., satisfies the condition in
_Case 1_ , within a finite time:

  * •

for _Case 2_ , by Theorem 5, there exists a time $t_{1}\geq t_{0}$ such that
$\phi_{i}(t_{1})\in\mathcal{S}_{1}$;

  * •

for _Case 3_ and _Case 4_ , by Theorem 28 and Theorem 30, there exists a time
$t_{2}\geq t_{0}$ such that
$\phi_{i}(t_{2})\in\mathcal{S}_{1}\cup\mathcal{S}_{2}^{2}\cup\mathcal{S}_{4}^{2}$;
if $\phi_{i}(t_{2})\in\mathcal{S}_{2}^{2}\cup\mathcal{S}_{4}^{2}$, by Theorem
5, there exists a time $t_{3}\geq t_{2}\geq t_{0}$ such that
$\phi_{i}(t_{3})\in\mathcal{S}_{1}$;

while for _Case 1_ , by Theorem 1, $\phi_{i}$ remains in $\mathcal{S}_{1}$
thereafter. Consequently, there exists a time $t^{*}\geq t_{0}$ such that
$\phi_{i}(t^{*})\in\mathcal{S}_{1}$ holds for all $i$. Thus, following Theorem
3, we get $\lim\limits_{t\rightarrow\infty}\phi_{i}=\mathbf{0}$, and following
Theorem 4, we get $\lim\limits_{t\rightarrow\infty}\zeta_{i}=L$. ∎

###### Remark 10

We note that collisions between UAVs can be avoided if the path has no
intersection points and the UAVs are inside the coordination set, since no
overtaking will occur according to Theorem 2. However, when the UAVs are
outside the coordination set, since they are executing the single-agent level
control law, collision avoidance is not guaranteed. In real applications, some
collision avoidance algorithms such as [38] can be employed.

##  V Simulation Results

In this section, simulations are given to corroborate the effectiveness of our
control strategy for coordinated path following. The simulation consists of
two parts: the simulation with MATLAB, and the Hardware-In-the-Loop (HIL)
simulation with the X-Plane simulator.

###  V-A MATLAB Simulation

Firstly, we validate the algorithm with a typical path following problem, the
cyclic pursuit on a circle. The control objective is to distribute all the
UAVs uniformly on a circle. The UAVs are with the constraints
$v_{\min}=10\mathrm{m}/\mathrm{s}$, $v_{\max}=25\mathrm{m}/\mathrm{s}$, and
$\omega_{\max}=0.2\mathrm{rad}/\mathrm{s}$. The desired path is a circle
centered at $(0,0)$, with the radius of $r=1000\rm{m}$. We are employing $n=6$
UAVs in the simulation, then the desired arc distance is $L=2\pi
r/n=1000\pi/3\rm{m}$. We take $\kappa_{0}=0.002$, then the optimized
parameters for the coordination set are $a=0.6303$, $R_{1}=122.1297$. We take
control parameters $k_{1}=1$, $k_{2}=R_{1}/a+1$, $k_{3}=1$,
$\epsilon_{0}=0.05$. The initial positions and the orientations of the six
UAVs are $(600,0,0.6\pi)^{T}$, $(200,580,-\pi)^{T}$, $(650,-160,0.3\pi)^{T}$,
$(1100,0,-0.25\pi)^{T}$, $(-1100,-80,0.75\pi)^{T}$, and
$(-200,1000,-0.25\pi)^{T}$. $\chi(\zeta_{i})$ is defined as

$\chi(\zeta_{i})=\begin{cases}v_{\min}^{r},~{}\text{when}~{}\zeta_{i}<L-6;\\\
0.475(\zeta_{i}-L+6)+v^{r}_{\min},~{}\text{when}~{}|\zeta_{i}-L|\leq 6;\\\
0.95(\zeta_{i}-L)+v_{\min}^{r},~{}\text{otherwise}.\\\ \end{cases}$

where $v_{\min}^{r}=\frac{1}{1-\kappa_{0}R_{1}}v_{\min}$,

Figure 6: Trajectories of six UAVs following a circle, with the green wedges
indicating the initial positions and headings for each UAV, blue ones
indicating the states when the UAVs enter $\mathcal{S}_{1}$, black ones
indicating the final states.

Figure 7: Convergence performance in MATLAB simulation: (a) location
difference $\rho_{i}$ of each UAV; (b) orientation difference $\psi_{i}$ of
each UAV; (c) arc distance $\zeta_{i}$ between every two adjacent UAVs.

The trajectories of the six UAVs under our hybrid control law are shown in
Fig. 6. The wedges in the figure not only indicate the positions of the UAVs,
but also their headings. The green wedges represent the initial positions and
headings for the UAVs. Initially,
$\phi_{1}(0),\phi_{2}(0),\phi_{6}(0)\in\mathcal{S}^{1}_{2}$,
$\phi_{3}(0)\in\mathcal{S}^{4}_{2}$,
$\phi_{4}(0),\phi_{5}(0)\in\mathcal{S}^{3}_{2}$. By executing the single-agent
level control law in these subsets, $\phi_{i},~{}i=1\ldots 6$ all enter the
coordination set $\mathcal{S}_{1}$. The blue wedges represent the positions
and headings at the time when the UAVs enter $\mathcal{S}_{1}$. Besides, by
executing the coordinated path following control law in $\mathcal{S}_{1}$, we
find that $\phi_{i}(t),~{}i=1\ldots 6$ converge to zero, as shown in Fig. 7
and Fig. 7, respectively. The positions and headings for the UAVs at
$t=400\mathrm{s}$ are shown by the black wedges in Fig. 6, and we can see that
each successfully follows the path with a desired arc distance from its pre-
neighbor.

The arc distances between every two adjacent UAVs are shown in Fig. 7, which
finally converge to the desired constant $L$ after all the UAVs enter
$\mathcal{S}_{1}$,666All the UAVs are in $\mathcal{S}_{1}$ after 24.67s.
meaning the coordination errors converge to 0, and all the UAVs are eventually
evenly spaced with the desired distance between the adjacent UAVs, while
moving along the path. We should note that there is a jump of the arc
distances to 0 for UAV 3 and 4 before all the UAVs enter the coordination set
$\mathcal{S}_{1}$, which means an overtaking occurs, and their pre-neighbors
are changed. However, after all the UAVs enter $\mathcal{S}_{1}$, there are no
such jumps of arc distances, meaning that each UAV will not change its pre-
neighbor, and there are no overtakings any more. Fig. 8 shows the control
inputs of each UAV. It can be observed that the control inputs are bounded but
not continuous.

Figure 8: Control inputs of each UAV. Figure 9: Trajectories of six UAVs
following a circle with the method in [2], while $v_{i}$ and $\omega_{i}$ are
constrained. Only UAV 6 is on the desired path at $t=400$.

It should be noted that the existing methods for the coordinated path
following control without considering speed constraints cannot solve our
problem. The trajectories of six UAVs with speed constraints using the method
in [2] are shown in Fig. 9. All the UAVs are placed at the same initial
positions as in Fig. 6. It can be seen that only UAV 6 finally converges to
the desired path, while the other five UAVs do not, demonstrating that our
proposed control law has extended the work in [2] and solved the problem of
coordinated path following with speed constraints.

###  V-B HIL Simulation

To further validate the proposed algorithm, an HIL simulation environment is
constructed, which consists of four computers running the _X-Plane_ flight
simulator, four _auto-pilots_ , and a _ground control station_ , as shown in
Fig. 10. We use ethernet networks for the communications among the three
parts. The plane chosen in our HIL simulation is the _Great Planes PT-60 RC
plane_ [15, 11]. With all these facilities, we have conducted two typical HIL
simulations, i.e., cyclic pursuit and parallel path following.

Figure 10: The hardware-in-the-loop simulation environment.

####  V-B1 Cyclic Pursuit

In this setting, firstly, three UAVs are executing the coordinated path
following algorithm, and trying to follow the path while being distributed
evenly on the orbit. After the system becomes stable, the fourth UAV joins.
The orbit and the control parameters are set as the same as those in Section
V-A. The location differences and orientation differences are shown in Fig. 11
and Fig. 11, respectively.

Figure 11: Convergence performance in HIL simulation of cyclic pursuit: (a) location difference $\rho_{i}$ of each UAV; (b) orientation difference $\psi_{i}$ of each UAV; (c) arc distance $\zeta_{i}$ between every two UAVs.  TABLE I: Positions of waypoints. Waypoint | 1 | 2 | 3 | 4 | 5 | 6 | 7
---|---|---|---|---|---|---|---
Lon/deg | 113.2167 | 113.2371 | 113.2167 | 113.1963 | 113.2167 | 113.2371 | 113.2167
Lat/deg | 28.2029 | 28.2209 | 28.2390 | 28.2570 | 28.2751 | 28.2931 | 28.3112
$x$/m | 0 | 2006.43 | 4013.47 | 6019.83 | 8026.83 | 10033.19 | 12040.19
$y$/m | 0 | 1996.54 | 0 | -1997.26 | 0 | 1997.87 | 0

It can be seen that the location differences of the four UAVs converge to 0,
and in terms of the orientation difference, though they do not strictly
converge to $0$, each only has a $\pm 5^{\circ}$ bias at the steady state. We
can also see that the joining of the fourth UAV has no influence on the
stability of the location difference and orientation difference of the former
three UAVs. This demonstrates the scalablity of our algorithm.

Figure 12: Parallel path Following of four UAVs, while achieving ”in-line”
formation pattern.

To achieve coordination, we set $p_{0}=(1000,0)^{T}$ as a reference point, and
we use $l_{i}$ to denote the arc distance from $p_{0}$ to the $i$th UAV’s
closest projection point $p_{i}$. Each UAV broadcasts its arc distance $l_{i}$
with respect to $p_{0}$ to other UAVs. After the $i$th UAV receiving the
nearby UAVs’ arc distances with respect to $p_{0}$, it judges which UAV is its
pre-neighbor, and $\zeta_{i}$ is calculated as $\zeta_{i}=l_{j}-l_{i}$,
(suppose the $j$th UAV is the $i$th UAV’s pre-neighbor). The arc distances
between UAVs are shown in Fig. 11. We can see that the arc distances can be
steered to around the desired value whether there are three or four UAVs. We
can also find that there are cyclic fluctuations of arc distances. The
fluctuations are caused by two main reasons. The first reason is that our
control law is based on the first order system, with the acceleration period
ignored in our model. The second reason is attributed to the establishment of
the cyclic interaction topology in this scenario, in which each UAV has a pre-
neighbor to follow. We have already shown that the proposed control law can
stabilize the arc distances for the first order UAV model in Fig. 7. Later we
will show in another example that with a tree interaction topology, the cyclic
fluctuation can be eliminated or reduced. We also note that the fewer UAVs,
the smaller fluctuations would be, as shown in Fig. 11, where the fluctuation
for 3-UAV coordination is smaller than that for 4-UAV coordination.

Figure 13: Arc distance $\zeta_{i}$ between every two UAVs in the HIL
simulation of parallel path following.

####  V-B2 Parallel Path Following

With a little bit of modification, we show our proposed hybrid control law can
steer a fleet of UAVs to move on a set of parallel paths and achieve a desired
“in-line” formation pattern. In this case, each UAV has its own target path.
Still, the interaction topology is not pre-established but formed when all the
UAVs enter $\mathcal{S}_{1}$. In order to achieve an “in-line” formation
pattern, we set $L=0$, and $\chi(\cdot)$ is defined as
$\chi(\zeta_{i})=0.475\zeta_{i}+v^{r}_{\min}$. We employ a cubic B-Spline
curve [15] to obtain a continuous and non-constant curvature path. We select
seven points as shown in Table I to generate the cubic B-Spline for UAV 1 to
follow. In Table I, the Lon and the Lat represent the longitude and latitude,
respectively. Besides, we establish a north-east coordinate with the origin
positioned at the first waypoint of UAV 1, such that all the UAVs’ states can
be represented in an $xy$-plane. The positions of the waypoints in this new
coordinate are also provided in Table I.

The simulation results of the parallel path following are shown in Fig. 12.
The path for UAV 1 is generated by B-spline, then by moving along the
$y-$direction for $100\mathrm{m}$, $200\mathrm{m}$, and $300\mathrm{m}$, we
get the planned paths for UAV 2, UAV 3, and UAV 4, respectively, which are
shown by the dashed curves in Fig. 12. We can see that all the UAVs fly along
the planned paths while achieving the desired “in-line” formation pattern
during the flight.

The arc distances between adjacent UAVs are shown in Fig. 13. Contrary to the
cyclic pursuit case with a cyclic interaction topology, the interaction
topology established in this scenario is a tree, with UAV 1 as the global
leader of the formation. We can see that the cyclic fluctuations are
eliminated in Fig. 13.

##  VI Conclusion

In this paper, we have investigated the problem of steering a fleet of fixed-
wing UAVs with speed constraints along any $\mathcal{C}^{2}$-smooth path with
maximum curvature $\kappa_{0}\leq\omega_{\max}/v_{\min}$, while achieving
sequenced desired inter-UAV arc distances. We have proposed the hybrid control
law based on the defined coordination set: for each UAV, if its path following
error is within this coordination set, then the UAV follows the path in a
coordination manner with its pre-neighbor; otherwise, the UAV works at the
single-agent level which individually controls the path following error
towards the coordination set. To handle the speed constraints from fixed-wing
UAVs, we transform the parameter selection problem for the coordination set to
an optimization problem, while satisfying the speed constraints of fixed-wing
UAVs, as well as guaranteeing the convergence of both the path following error
and the coordination error. We have also calculated the admissible set for
these two errors reducing to zero when the UAVs are executing our proposed
control law. The algorithm is validated using MATLAB and the HIL simulation,
respectively, demonstrating the effectiveness of the proposed approach.

The proposed approach can scale up to handle different velocity bounds for
heterogeneous fixed-wing UAVs by designing different coordination sets,
provided that all the UAVs have common feasible speed. Future work includes
extending the proposed approach to the 3D case, considering communication
delay, loss of communication, and wind disturbances.

##  Appendix A Proof of Lemma 3

When $\phi_{i}$ is in the first quadrant, with (8), we have

$\displaystyle 0$ $\displaystyle\geq
v_{m}(a\sin\psi_{i}+R_{1}\kappa_{0}\cos\psi_{i})-R_{1}\omega_{\max}+R_{1}\alpha$
(31) $\displaystyle\geq
v_{m}(a\sin\psi_{i}-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}})-R_{1}\omega_{\max}+R_{1}\alpha.$

Thus (4) is derived when $v_{i}\in[v_{\min},v_{m}]$ and
$\omega_{i}=-\omega_{\max}$.

When $\phi_{i}$ is in the second quadrant, with (9), we have

$-\alpha\geq-\omega_{\max}+\frac{v_{m}\kappa_{0}}{1-\kappa_{0}R_{1}}\geq-\omega_{\max}-\frac{v_{m}\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}.$

Thus (5) is derived when $v_{i}\in[v_{\min},v_{m}]$ and
$\omega_{i}=-\omega_{\max}$.

Inequalities (6) and (7) can be concluded in the same way.

##  Appendix B Proof of Lemma 4

Denoting the speed that the $i$th UAV moves along the path as $v^{r}_{i}$,
then $v^{r}_{i}=\frac{\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}v_{i}$. Let the
$j$th UAV be the pre-neighbor of the $i$-th UAV, and
$\phi_{i},\phi_{j}\in\mathcal{S}_{1}$, then
$\dot{\zeta}_{i}=v^{r}_{j}-v^{r}_{i}$. Suppose initially
$0<\zeta_{i}(t_{0})\leq L-\delta_{1}$, where $0<\delta_{1}<L$, if (10) holds,
we can choose $v_{i}\in[v_{\min},v_{m}]$ and $v_{j}\in[v_{\min},v_{\max}]$,
such that $v^{r}_{i}=\frac{1}{1-\kappa_{0}R_{1}}v_{\min}$,
$v^{r}_{j}\geq\frac{1}{1-\kappa_{0}R_{1}}v_{\min}$, then $\dot{\zeta}_{i}\geq
0$ holds for $t\geq t_{0}$, as a result, $\zeta_{i}>0$ always holds, i.e.,
there exists proper control law such that no overtaking occurs.

##  Appendix C Proof of Lemma 6

We take $\phi_{i}(t)\in\mathcal{S}^{1}_{1}$ as an example. If $\omega_{i}$ is
not saturated in Line 5, i.e. $\omega_{i}=\omega_{d}$, then the value of
$v_{i}$ will not be changed in ReSetValue, since the left-hand of inequality
(4) becomes

$\displaystyle~{}v_{i1}\left[a\sin\psi_{i}-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\right]+R_{1}\omega_{i}+R_{1}\alpha$
$\displaystyle=$
$\displaystyle~{}av_{i1}\sin\psi_{i}-\frac{k_{1}R_{1}v_{i1}}{k_{2}}(k_{1}\rho_{i}+k_{2}\psi_{i}+k_{3}\sin\psi_{i})$
$\displaystyle\leq$
$\displaystyle~{}av_{i1}\sin\psi_{i}-k_{1}R_{1}v_{i1}\psi_{i}\stackrel{{\scriptstyle(a)}}{{\leq}}0.$

where inequality (a) is caused by $k_{1}R_{1}\geq a$ and $0<\psi_{i}<\pi/2$.
Therefore, inequality (4) holds when $\omega_{i}=\omega_{d}$. As a result,
$v_{i}$ will not be changed in ReSetValue.

Now suppose $\omega_{i}=\omega_{\max}$, which means
$\omega_{d}\geq\omega_{\max}$, the left-hand of inequality (4) becomes

$\displaystyle~{}v_{i1}\left[a\sin\psi_{i}-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\right]+R_{1}\omega_{\max}+R_{1}\alpha$
$\displaystyle\leq$
$\displaystyle~{}v_{i1}\left[\frac{k_{1}R_{1}}{k_{2}}(k_{1}\rho_{i}+k_{2}\psi_{i}+k_{3}\sin\psi_{i})-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\right]$
$\displaystyle~{}+R_{1}\alpha+R_{1}\omega_{\max}=R_{1}(-\omega_{d}+\omega_{\max})\leq
0.$

Inequality (4) holds, implying that $v_{i}$ will not be changed.

Finally, if $\omega_{i}=-\omega_{\max}$ and $v_{i}$ is changed in ReSetValue,
then the returned value is

$\displaystyle v_{i}$
$\displaystyle=\left[a\sin\psi_{i}-R_{1}\frac{\kappa(p_{i})\cos\psi_{i}}{1-\kappa(p_{i})\rho_{i}}\right]^{-1}R_{1}(\omega_{\max}-\alpha)$
$\displaystyle\geq\frac{R_{1}(\omega_{\max}-\alpha)}{a\sin\psi_{i}+R_{1}\kappa_{0}\cos\psi_{i}}\stackrel{{\scriptstyle(b)}}{{\geq}}v_{m},$

where inequality $(b)$ follows from (31). Clearly, $v_{i}<v_{i1}$, otherwise
inequality (4) will hold and $v_{i}$ does not need to be changed. Thus, if
$\phi_{i}\in\mathcal{S}^{1}_{1}$, and $v_{i}$ is changed in ReSetValue, then
$v_{m}\leq v_{i}<v_{i1}$.

Results for the other five subsets are deduced similarly.

## References

  * [1] S.-J. Chung, A. Paranjape, P. Dames, S. Shen, and V. Kumar, “A survey on aerial swarm robotics,” _IEEE Trans. Robot._ , vol. 34, no. 4, pp. 837–855, 2018.
  * [2] Y. Lan, G. Yan, and Z. Lin, “Synthesis of distributed control of coordinated path following based on hybrid approach,” _IEEE Trans. Autom. Control_ , vol. 56, no. 5, pp. 1170–1175, 2011.
  * [3] C. Samson, “Path following and time-varying feedback stabilization of a wheeled mobile robot,” in _Proc. ICARCV’92_ , 1992, pp. RO–13.1.1–RO–13.1.5.
  * [4] D. R. Nelson, D. B. Barber, T. W. Mclain, and R. W. Beard, “Vector field path following for miniature air vehicles,” _IEEE Trans. Robot._ , vol. 23, no. 3, pp. 519–529, 2007.
  * [5] S. Park, J. Deyst, and J. P. How, “Performance and Lyapunov stability of a nonlinear path following guidance method,” _J. Guid. Control and Dynam._ , vol. 30, no. 6, pp. 1718–1728, 2007.
  * [6] G. Ambrosino, M. Ariola, U. Ciniglio, and F. Corraro, “Path generation and tracking in 3D for UAVs,” _IEEE Trans. Control Syst. Technol._ , vol. 17, no. 4, pp. 980–988, 2009.
  * [7] S. Lee, A. Cho, and C. Kee, “Integrated waypoint path generation and following of an unmanned aerial vehicle,” _Aircr. Eng. Aerosp. Technol._ , vol. 82, no. 5, pp. 296–304, 2010.
  * [8] P. B. Sujit, S. Saripalli, and J. Borges Sousa, “Unmanned aerial vehicle path following: A survey and analysis of algorithms for fixed-wing unmanned aerial vehicles,” _IEEE Control Syst. Mag._ , vol. 34, no. 1, pp. 42–59, 2014.
  * [9] I. Rhee, S. Park, and C.-K. Ryoo, “A tight path following algorithm of an UAS based on PID control,” in _Proc. SICE Annu. Conf._ , 2010, pp. 1270–1273.
  * [10] Y. Q. Liang and Y. M. Jia, “Combined vector field approach for 2D and 3D arbitrary twice differentiable curved path following with constrained UAVs,” _J. Intell. Robot. Syst._ , vol. 83, no. 1, pp. 133–160, 2016.
  * [11] S. Zhao, X. Wang, Z. Lin, D. Zhang, and L. Shen, “Integrating vector field approach and input-to-state stability curved path following for unmanned aerial vehicles,” _IEEE Trans. Syst., Man, and Cybern., Syst._ , DOI: 10.1109/TSMC.2018.2839840.
  * [12] S. Jackson, J. Tisdale, M. Kamgarpour, B. Basso, and J. K. Hedrick, “Tracking controllers for small UAVs with wind disturbances: Theory and flight results,” in _Proc. 47th IEEE Conf. Decision and Control_ , 2008, pp. 564–569.
  * [13] M. Ahmed and K. Subbarao, “Nonlinear 3-D trajectory guidance for unmanned aerial vehicles,” in _Proc. 11th Inter. Conf. Control Autom. Robot. Vision_ , 2010, pp. 1923–1927.
  * [14] C. Cao, N. Hovakimyan, V. V. Patel, I. Kaminer, and V. Dobrokhodov, “Stabilization of cascaded systems via L1 adaptive controller with application to a UAV path following problem and flight test results,” in _Proc. American Control Conf._ , 2007, pp. 1787–1792.
  * [15] S. Zhao, X. Wang, D. Zhang, and L. Shen, “Curved path following control for fixed-wing unmanned aerial vehicles with control constraint,” _J. Intell. Robot. Syst._ , vol. 89, no. 1-2, pp. 107–119, 2018.
  * [16] V. Roldao, R. Cunha, D. Cabecinhas, C. Silvestre, and P. Oliveira, “A leader-following trajectory generator with application to quadrotor formation flight,” _Robot. Auton. Syst._ , vol. 62, no. 10, pp. 1597–1609, 2014.
  * [17] S.-M. Hung and S. N. Givigi, “A Q-learning approach to flocking with UAVs in a stochastic environment,” _IEEE Trans. Cybern._ , vol. 47, no. 1, pp. 186–197, 2017.
  * [18] X. Jin, “Nonrepetitive leader-follower formation tracking for multiagent systems with LOS range and angle constraints using iterative learning control,” _IEEE Trans. Cybern._ , vol. 49, no. 5, pp. 1748–1758, 2019.
  * [19] N. H. Li and H. H. Liu, “Formation UAV flight control using virtual structure and motion synchronization,” in _Proc. American Control Conf._ , 2008, pp. 1782–1787.
  * [20] J. Ghommam, H. Mehrjerdi, M. Saad, and F. Mnif, “Formation path following control of unicycle-type mobile robots,” _Robot. Auton. Syst._ , vol. 58, no. 5, pp. 727–736, 2010.
  * [21] Q. Li and Z. P. Jiang, “Pattern preserving path following of unicycle teams with communication delays,” _Robot. Auton. Syst._ , vol. 60, no. 9, pp. 1149–1164, 2012.
  * [22] G. Antonelli, F. Arrichiello, and S. Chiaverini, “Flocking for multi-robot systems via the null-space-based behavioral control,” _Swarm Intell._ , vol. 4, no. 1, p. 37, 2010.
  * [23] J. Werfel, K. Petersen, and R. Nagpal, “Designing collective behavior in a termite-inspired robot construction team,” _Science_ , vol. 343, no. 6172, p. 754, 2014.
  * [24] K.-K. Oh, M.-C. Park, and H.-S. Ahn, “A survey of multi-agent formation control,” _Automatica_ , vol. 53, pp. 424–440, 2015.
  * [25] X. Wang, Z. Zeng, and Y. Cong, “Multi-agent distributed coordination control: Developments and directions via graph viewpoint,” _Neurocomputing_ , vol. 199, pp. 204–218, 2016.
  * [26] D. B. Wilson, A. H. Goktogan, and S. Sukkarieh, “Vision-aided guidance and navigation for close formation flight,” _J. Field Robot._ , vol. 33, no. 5, pp. 661–686, 2016.
  * [27] Z. Sun, H. G. de Marina, G. S. Seyboth, B. D. Anderson, and C. Yu, “Circular formation control of multiple unicycle-type agents with nonidentical constant speeds,” _IEEE Trans. Control Syst. Technol._ , vol. 27, no. 1, pp. 192–205, 2019.
  * [28] T. H. Chung, M. R. Clement, M. A. Day, K. D. Jones, D. Davis, and M. Jones, “Live-fly, large-scale field experimentation for large numbers of fixed-wing uavs,” in _Proc. IEEE Int. Conf. Robot. and Autom., ICRA_ , 2016, pp. 1255–1262.
  * [29] A. Kushleyev, D. Mellinger, C. Powers, and V. Kumar, “Towards a swarm of agile micro quadrotors,” _Auton. Robot._ , vol. 35, no. 4, pp. 287–300, 2013.
  * [30] V. Cichella, R. Choe, S. B. Mehdi, and E. Xargay, “Safe coordinated maneuvering of teams of multirotor unmanned aerial vehicles: A cooperative control framework for multivehicle, time-critical missions,” _IEEE Control Syst. Mag._ , vol. 36, no. 4, pp. 59–82, 2016.
  * [31] L. A. V. Reyes and H. G. Tanner, “Flocking, formation control, and path following for a group of mobile robots,” _IEEE Trans. Control Syst. Technol._ , vol. 23, no. 4, pp. 1358–1372, 2015.
  * [32] V. M. Gonçalves, L. C. A. Pimenta, C. A. Maia, and G. A. S. Pereira, “Coordination of multiple fixed-wing UAVs traversing intersecting periodic paths,” in _Proc. IEEE Int. Conf. Robot. and Autom., ICRA_ , 2013, pp. 849–854.
  * [33] E. Xargay, I. Kaminer, A. Pascoal, N. Hovakimyan, V. Dobrokhodov, V. Cichella, A. P. Aguiar, and R. Ghabcheloo, “Time-critical cooperative path following of multiple unmanned aerial vehicles over time-varying networks,” _J. Guid. Control and Dynam._ , vol. 36, no. 2, pp. 499–516, 2013.
  * [34] Y. Wang, D. Wang, and S. Zhu, “Cooperative moving path following for multiple fixed-wing unmanned aerial vehicles with speed constraints,” _Automatica_ , vol. 100, pp. 82–89, 2019.
  * [35] D. Liberzon, _Switching in systems and control_. Boston, MA, USA: Springer Science & Business Media, 2003.
  * [36] H. K. Khalil, _Nonlinear systems_. Upper Saddle River, NJ, USA: Prentice-Hall, 2002.
  * [37] I. Barkana, “Defending the beauty of the invariance principle,” _Int. J. Control_ , vol. 87, no. 1, pp. 186–206, 2014.
  * [38] J. Yang, D. Yin, and L. Shen, “Reciprocal geometric conflict resolution on unmanned aerial vehicles by heading control,” _J. Gui. Control and Dynam._ , vol. 40, no. 10, pp. 2511–2523, 2017.