Nomenclature
- UAVs
-
unmanned aerial vehicles
- DMPC
-
distributed model predictive control
- CCDMPC
-
chance-constrained DMPC
- ISSA
-
improved salp swarm algorithm
- FOV
-
field of view
- LOS
-
line of sight
- SI
-
swarm intelligence
- PSO
-
particle swarm optimisation
- GWO
-
grey wolf optimisation
- WOA
-
whale optimisation algorithm
- HHO
-
Harris hawk optimisation
- DE
-
differential evolution
- HJPSO
-
hybrid of jellyfish and PSO
- CGWO
-
competitive leader GWO
- AOA-HHO
-
arithmetic optimisation algorithm (AOA) with the HHO
- W
-
population size
-
${T_{{\rm{max}}}}$
-
maximum iteration
- g
-
ratio factor
- K
-
weight control factor
- N
-
prediction horizon length
Greek symbol
-
$\varphi $
-
heading angle
-
$\theta $
-
pitching angle
-
$\lambda $
-
weight coefficient
1.0 Introduction
Oilfield inspection is an important task for guaranteeing oil-producing equipment in operation, including fixed-target inspection and dynamic-target inspection. The fixed-target inspection monitors the operation status regularly, collecting parameters from the facilities while running. Dynamic-target inspection tracks the unknown objects invading the oilfield area. The traditional inspection methods are mainly used for manual inspecting and fixed-video monitoring. Manual inspecting is labor-intensive and inefficient due to the dispersion of the oil wells, and fixed-video monitoring offers poor flexibility, high cost and blindness in some zones. To overcome these shortcomings, unmanned aerial vehicles (UAVs) have been developed in recent years for target inspection in the oilfield area due to their low cost, high flexibility and low-security risk [Reference Hung, Hsu and Cheng1–Reference Sun, Zhao, Shi, Liu and Liu3]. Shukla et al. have used the UAV inspection in oil or gas pipelines with an autonomous tracking and navigation controller [Reference Shukla, Xiaoqian and Karki4]; Xu et al. have equipped the UAVs with an advanced embedded processor and binocular vision sensor for inspecting automatic transmission lines [Reference Xu, Li, Zhou, Zhang, Yu and Ma5]; and Kochetkova et al. have used UAVs to identify pipeline leaks for reducing time and labor resources [Reference Kochetkova6]. These reports mainly focus on inspecting the static targets in the environments.
UAVs are also used to track the dynamic targets. In fact, the real environment is rich with some obstacles, leading in the limitation of the field of view (FOV) and the blocking of the line of sight (LOS). Tracking dynamic targets is a challenge compared with tracking static targets. In order to track the dynamic targets exactly, the model predictive control (MPC) is widely applied to predict the states for a finite time in the future [Reference Altan and Hacoglu7]. After that, a solver is selected to obtain optimal control-input sequences. Generally, selecting a solver plays a key role in tracking targets accurately. For example, mathematical optimisation methods, such as dynamic programming, are generally selected as the solvers for obtaining control-input sequences, but they have a combinatorial explosion with the dimension increasing [Reference Bertsekas8]. Swarm intelligence (SI) algorithms, inspired by the behaviour of groups in nature, have also been applied as the solvers due to their strong search capability and parallel computing, including particle swarm Optimisation (PSO) algorithm [Reference Marini and Walczak9], differential evolutionary (DE) algorithm [Reference Song, Cai, Zhou, Zhang, Chen, Li, Deng and Deng10], grey wolf optimisation (GWO) algorithm [Reference Mirjalili, Mirjalili and Lewis11], whale optimisation algorithm (WOA) [Reference Mirjalili and Lewis12] Harris hawk optimisation (HHO) algorithm [Reference Heidari, Mirjalili, Faris, Aljarah, Mafarja and Chen13], et al. But they have inherent limitations. For example, GWO suffers from narrow exploration and limited diversity; PSO is sensitive to initialisation and step sizes, impairing global search; WOA is inclined to be trapped into premature convergence; and HHO relies heavily on fixed models, slowing convergence in high-dimensional spaces. Recently, some SI modified versions have been applied to address specific problems. Reference [Reference Kuo and Chiu14] has proposed the novel predictive model with the hybrid of jellyfish and PSO (HJPSO) algorithms, aiming to efficiently manage massive datasets. Reference [Reference Yang15] has proposed the competitive leader GWO (CGWO) to train multi-layer perceptron classifiers for obtaining optimal network parameters. Reference [Reference Qiao, Liu, Xue, Tang and Salehnia16] has combined the arithmetic optimisation algorithm (AOA) with the HHO algorithm (AOA-HHO) to search the optimal solutions in the multilevel thresholding image segmentation problem. In addition, Yu et al. have combined the adaptive DE algorithm with Nash optimisation to solve multi-UAV target tracking [Reference Yu, Wang, Liu, Guo, Yeoh, Vucetic and Li17]; in Ref. [Reference Yao, Wang and Ji18], the GWO has been improved with introducing the individual memory and the survival of the fittest strategy to optimise the control input sequences in the UAV tracking; Ref. [Reference Wu, Wang, Li, Yao, Huang, Su and Yu19] has reported that the modified grasshopper algorithm has been proposed to address the tracking targets, integrating the dynamic feedback, the natural selection and the democratic decision-making mechanism. In a word, SI and its modified versions are selected as the solvers for obtaining high-quality target tracking. But these reports focus on the flight environments with the static obstacles.
The UAV tracking target has also been studied in an environment with dynamic obstacles. Yao et al. have proposed a hybrid approach based on the Lyapunov guidance vector field to solve the target tracking and obstacle avoiding in a three-dimensional dynamic environment [Reference Yao, Wang and Su20]. In Ref. [Reference Li, Song, Bai, Huang, Ma, Wan and Neretin21], the fusion algorithm has been proposed to track a moving target in a complex three-dimensional environment. Reference [Reference Olcay, Meeß and Elger22] has proposed the Gaussian process regression integrated into the MPC framework for avoiding the moving obstacles. The chance-constrained method has been proposed to solve dynamic collision avoidance in target tracking, considering the relative position of UAVs and dynamic obstacles [Reference Schwarm and Nikolaou23–Reference Zhu and Alonso-Mora26]. In Ref. [Reference Wakabayashi, Suzuki and Suzuki27], the chance-constrained MPC method has also been used to avoid colliding with moving obstacles, considering the relative position and velocity. However, most of the reports have assumed that the UAVs are fixed at a flight altitude for simplicity. This assumption is not reasonable for UAVs to track targets in real-world environments.
In this work, the environment with the static and dynamic obstacles has been considered in tracking a moving target, as well as UAV height-change. The improved salp swarm algorithm (SSA) has been proposed as the solver. The contributions of this work are listed as follows:
-
(1) The oilfield environment has been modeled, considering the LOS occlusion, the UAV sensor coverage area and the static and dynamic obstacles.
-
(2) The chance-constrained distributed model predictive control (CCDMPC) method has been proposed to solve the target tracking and obstacle avoidance in three-dimensional dynamic environments, considering the relative position and velocity of the dynamic obstacles and the UAVs.
-
(3) The improved SSA has been proposed as the solver to obtain better control-input sequences for improving the target tracking performance compared to other comparative algorithms.
The rest of the paper is organised as follows: Section 2 models the target tracking problem in an oilfield environment. Section 3 introduces the CCDMPC method for UAVs’ target tracking in an oilfield environment. In Section 4, the ISSA method is proposed to solve the CCDMPC formulation. Section 5 gives simulation experiments to verify the proposed method. The conclusion is given in Section 6.
2.0 Mathematical formulation
2.1 Oilfield environment modeling
The oilfield dynamic environment is modeled in Fig. 1. The UAVs need to track the moving target, avoiding the static and dynamic obstacles in the oilfield environment. In Fig. 1, the static obstacles contain oil tanks, water tanks, pumping wells and so on. The dynamic obstacles, such as flying birds, are assumed to move at a constant speed
${v_d}$
in a certain direction. The position at
$k$
is defined as
${p_d} {\left( k \right)} = {[{x_d}{\left( k \right)},{y_d}{\left( k \right)},{z_d}{\left( k \right)}]^T}$
. The dynamic obstacles are modeled kinematically in Equation (1).
${\rm{\Delta }}T$
is the sampling time, and
${I_3}$
is the third-order identity matrix.
\begin{equation}\left[ {\begin{array}{*{20}{l}}{{p_d} {\left( {k + 1} \right)}}\\[5pt]{{v_d} {\left( {k + 1} \right)}}\end{array}} \right] = \left[ {\begin{array}{*{20}{l}}{{I_3}}\quad {}{{\rm{\Delta }}T{I_3}}\\[5pt]0 \quad {}{{I_3}}\end{array}} \right]\left[ {\begin{array}{*{20}{l}}{{p_d} {\left( k \right)}}\\[5pt]{{v_d} {\left( k \right)}}\end{array}} \right]\end{equation}
2.2 UAV model
In this work, the
${N_u}$
quad-rotor UAVs track the target moving on the ground corporately. The wind disturbance is not considered here. The UAVs must avoid all the obstacles in the oilfield environment in order to track safely. Figure 2 shows the geometry of the target tracking. The UAV
${_i}$
position vector is
${p_i} = {[{x_i},{y_i},{z_i}]^T}$
(
$i = 1, \ldots ,{N_u}$
), and the target position vector is
${p_t} = {[{x_t},{y_t},{z_t}]^T}$
. Here
${z_t}$
is zero due to the target moving on the ground.
The oilfield environment model.

The geometry of the target tracking.

The relative position vector between UAV
${_i}$
and the target is described in Equation (2).
The distance between the UAV
${_i}$
and the target is expressed in Equation (3), and its projection on the X-Y plane is written in Equation (4).
Assuming that the quad-rotor UAV is a mass point in the tracking process, the UAV dynamic model is shown in Equation (5) [Reference Wang, Li, Han and Yan28] :
\begin{align} \left\{ {\begin{array}{*{20}{l}}{} {}{{x_i} = {V_i}\ {\rm{cos}}\ {\theta _i}\ {\rm{cos}}\ {\varphi _i}}\\{} {}{{y_i} = {V_i}\ {\rm{cos}}\ {\theta _i}\ {\rm{sin}}\ {\varphi _i}}\\{} {}{{z_i} = {V_i}\ {\rm{sin}}\ {\theta _i}}\\{} {}{{\varphi _i} = u_i^\varphi }\\{} {}{{\theta _i} = u_i^\theta}\\{} {}{{V_i} = u_i^V}\end{array}} \right.\end{align}
The heading angle
${\varphi _i}$
and pitching angle
${\theta _i}$
for the UAV
${_i}$
are written in Equation (6).
\begin{align} \left\{ {\begin{array}{*{20}{l}}{} {}{{\rm{sin}}\ {\varphi _i} = \frac{{{x_{r,i}}}}{{{r_i}}}}\\[5pt]{} {}{{\rm{cos}}\ {\varphi _i} = \frac{{{y_{r,i}}}}{{{r_i}}}}\\[5pt]{} {}{{\rm{sin}}\ {\theta _i} = \frac{{{z_{r,i}}}}{{{d_i}}}}\\[5pt]{} {}{{\rm{cos}}\ {\theta _i} = \frac{{{r_i}}}{{{d_i}}}}\end{array}} \right.\end{align}
where
${V_i}$
is the speed for the UAV
${_i}$
. The minimal speed
${V_{{\rm{min}}}}$
is 0.
$u_i^\varphi $
,
$u_i^\theta $
, and
$u_i^V$
are the control inputs for
${\varphi _i}$
,
${\theta _i}$
and
${V_i}$
. The state vector of the UAV
${_i}$
is denoted as
${{\bf{s}}_i} = {[{x_i},{y_i},{z_i},{\varphi _i},{\theta _i}]^T}$
, and the control input vector of UAV
${_i}$
is
${u_i} = {[u_i^\varphi ,u_i^\theta ,u_i^V]^T}$
. The UAV kinematic constraints are shown as follows:
\begin{align} \left\{ {\begin{array}{*{20}{l}}{} {}{\left| {u_i^\varphi } \right| \le u_{{\rm{max}}}^\varphi }\\[5pt]{\left| {u_i^\theta } \right| \le u_{{\rm{max}}}^\theta }\\[5pt]{\left| {u_i^V} \right| \le u_{{\rm{max}}}^V}\\[5pt] {}{0 \le {V_i} \le {V_{{\rm{max}}}}}\\[5pt] {}{{H_{{\rm{min}}}} \le {z_i} \le {H_{{\rm{max}}}}}\end{array}} \right.\end{align}
where
${H_{{\rm{min}}}}$
and
${H_{{\rm{max}}}}$
represent the minimum and maximum flight altitude of the UAVs, respectively.
$u_{{\rm{max}}}^\varphi $
,
$u_{{\rm{max}}}^\theta $
and
$u_{{\rm{max}}}^V$
are the maximum value for the control input
$u_i^\varphi $
,
$u_i^\theta $
and
$u_i^V$
.
${V_{{\rm{min}}}}$
is the maximum speed.
2.3 Target model
In this work, the target moving on the ground is modeled as a mass point. The next position of the target can be obtained as follows [Reference Song, Cai, Zhou, Zhang, Chen, Li, Deng and Deng10]:
where
$\left( {{x_{t,k + 1}},{y_{t,k + 1}}} \right)$
and
$\left( {{x_{t,k}},{y_{t,k}}} \right)$
are the position of the target at time
$k + 1$
and
$k$
, respectively.
${v_{t,k}}$
and
${\varphi _{t,k}}$
are the speed and heading angle of the target at time
$k$
, respectively.
${\rm{\Delta }}T$
is the sampling time.
3.0 DMPC for UAVS target tracking in the oilfield environment
3.1 Description of DMPC
DMPC, as a typical control strategy, is used to predict future states and determine the sequence of the control inputs. The DMPC framework is shown in Fig. 3.
The DMPC framework.

The DMPC process is described as follows. At time
$k$
,
${u_i}{\left[ {k\,:\,k + N - 1 \left] = \right[{u_i}{\left( k \right)}, \ldots ,{u_i}{\left( {k + N - 1} \right)}} \right]}$
is the control-input sequences in future for the UAV
${_i}$
, and
$N$
is the predicted steps. The control-input sequence is initialised independently and synchronously.
${{\bf{s}}_i}{\left[ {k\,:\,k + N - 1\left] = \right[{s_i}{\left( k \right)}, \ldots ,{s_i}{\left( {k + N - 1} \right)}} \right]}$
is the future state sequences, and the state information is shared between the UAVs through the communication network.
${J_i}{\left( {s{\left[ {k\,: + N - 1} \right]},{u_i}{\left[ {k\,:\,k + N - 1} \right]}} \right)}$
is the cost function and need to be minimised for obtaining the optimal control-input sequence (Equation (10)). The step
$k$
in the optimised control-input sequence is only executed for the accuracy, and the subsequent steps (
${u_i}{\left[ {k + 1\,:\,k + N - 1} \right]}$
) are served as the initial control-inputs for the next prediction. The above procedure is repeated until the termination condition is satisfied.
3.2 Cost function
To obtain the optimal control-input sequences, the cost function
${J_i}$
is established in Equation (11) and optimised.
where the cost function includes the obstacle avoidance cost
${J_{{\rm{Obs}}}}$
, the distance cost
${J_{{\rm{Dis}}}}$
, the FOV cost
${J_{{\rm{FOV}}}}$
, the LOS occlusion cost
${J_{{\rm{LOS}}}}$
, the safety cost
${J_{{\rm{safe}}}}$
, the communication cost
${J_{{\rm{com}}}}$
and the control cost
${J_u}$
.
3.2.1 Obstacle avoidance cost
${J_{{\bf{Obs}}}}$
The UAVs must avoid obstacles in the oilfield environment in the tracking for safety. The obstacle avoidance cost is written in Equation (12).
${F_i}{\left(\, j \right)}$
represents the avoidance of the static obstacles, which is expressed in Equation (13) [Reference Tyagi, Kumar and Sujit29];
${B_i}{\left(\, j \right)}$
represents the avoidance of the dynamic obstacles based on the chance constraint.
\begin{equation}{J_{{\rm{Obs}}}} = {\lambda _{{\rm{Obs}}}}\mathop \sum \limits_{j = k}^{k + N - 1} \mathop \sum \limits_{i = 1}^{{N_u}} [ {{F_i}(\, j) + {B_i}(\, j)}]\end{equation}
where
\begin{equation}{P_1} = \left\{\begin{array}{ll}1 {}& (x_{i} - x_{o} )^{2} + (y_{i} - y_{o} )^{2} - r_{o}^{2} \le 0\\[5pt]0 {}& (x_{i} - x_{o} )^{2} + (y_{i} - y_{o} )^{2} - r_{o}^{2} \gt 0\end{array} \right.\end{equation}
where
$\left( {{x_o},{y_o}} \right)$
and
${r_o}$
are the position and the radius of the projection centre of the obstacle on the X-Y plane, respectively.
$N$
is the predicted steps, and
${N_u}$
is the number of the UAVs.
${\lambda _{{\rm{Obs}}}}$
is the weight of the obstacle avoidance cost.
${h_o}$
is the height of the static obstacles, and
$M$
is the number of the static obstacles in the oilfield.
${P_1}$
is a sub-function for determining the position relationship of the UAVs with static obstacles. The UAVs should be located outside the static obstacle for avoiding the collision, i.e. the distance between the UAVs and the static obstacle is larger than the radius of the static obstacle. The UAVs collide with the static obstacles when the distance is less than the radius and the UAV flight height is lower than the height of the static obstacles.
For the dynamic obstacles, the chance constraints have been used in this work including the position chance constraint and the velocity chance constraint, which is reported in Ref. [Reference Wakabayashi, Suzuki and Suzuki27]. In Fig. 4, the position space
${C_{{\rm{pd}}}}$
and the velocity space
${C_{{\rm{vd}}}}$
are defined, respectively. In order to explain conveniently, the point
$P$
is introduced as below. A vertical line is drawn from the centre
$O$
of the obstacle and intersects with the extension line in the direction of the relative velocity (
${v_i} - {v_d}$
). The cross point is defined as
$P$
. In order to avoid colliding with the dynamic obstacles, the probability of the UAV entering the position space is limited below a set threshold and suppresses the probability of the point
$P$
entering the velocity space. The collision probability for the position chance constraints is described as follows:
where
${r_i}$
and
${r_d}$
are the radius of the UAV
${_i}$
and the dynamic obstacles (
${b_{{id}}} = {r_i} + {r_d}$
), respectively.
${\sigma _{{pid}}}$
is the collision probability threshold (
$0 \lt {\sigma _{pid}} \lt 0.5$
).
${{\rm{\Sigma }}_i}$
and
${{\rm{\Sigma }}_d}$
are the error covariance matrices of the UAV
${_i}$
and the dynamic obstacles, respectively.
$erf{\left( . \right)}$
is the standard error function.
${w_p}$
is the weight coefficient.
Position space
${C_{{\rm{pd}}}}$
and speed space
${C_{{\rm{vd}}}}$
.

The collision probability for the velocity chance constraints is written as below:
where
${w_v}$
is the weight coefficient.
${r_{{vid}}}$
is the vector from the intersection
$P$
to
$O$
.
${\sigma _{{vid}}}$
is the same as
${\sigma _{{pid}}}$
.
The chance-constrained cost function is written in Equation (21).
3.2.2 Distance cost
${J_{{\bf{Dis}}}}$
The distance cost is the distance between the UAV and the target on the horizontal plane. The smaller the distance, the better the tracking performance. The distance cost is expressed as:
\begin{equation}{J_{{\rm{Dis}}}} = {\lambda _{\rm{d}}}\mathop \sum \limits_{j = k}^{k + N - 1} \mathop \sum \limits_{i = 1}^{{N_u}} \sqrt {{{({x_i}{\left(\, j \right)} - {x_t}{\left(\, j \right)})}^2} + {{({y_i}{\left(\, j \right)} - {y_t}{\left(\, j \right)})}^2}}\end{equation}
where
$\left( {{x_i},{y_i}} \right)$
and
$\left( {{x_t},{y_t}} \right)$
are the coordinates of the UAV and the target on the 2D plane, respectively.
${\lambda _d}$
is the weight of the distance cost.
3.2.3 FOV cost
${J_{{\bf{FOV}}}}$
The FOV cost is used to keep the target in the FOV of the UAV sensor. The target is within the coverage range of the UAV sensors when the detection distance and the field angle constraints are satisfied simultaneously. The FOV cost is defined as [Reference Wu, Wang, Li, Yao, Huang, Su and Yu19]:
\begin{equation}{J_{{\rm{FOV}}}} = \left( {\begin{array}{*{20}{l}}{{\lambda _{m1}}\mathop \sum \nolimits_{j = k}^{k + N - 1} \mathop \sum \nolimits_{i = 1}^{{N_u}} \bigg(1 - {\rm{exp}} \! \bigg[ { - {c_1}\bigg( {\frac{{| {{p_i}(\, j ) - {p_t}(\, j )} |}}{{{R_{{\rm{max}}}}}}{\bigg)^2}} \bigg]} \bigg) ,}\\[7pt]{{{\left| {{p_i}\left(\, j \right) - {p_t}\left(\, j \right)} \right|}^2} \le R_{{\rm{max}}}^2 \cap \left( {{\rm{co}}{{\rm{s}}^{ - 1}}\left( {\frac{{{Z_i}}}{{\left| {{p_i}\left(\, j \right) - {p_t}\left(\, j \right)} \right|}}} \right) \le {\gamma _{{\rm{max}}}}} \right)}\\[7pt]{\mathop \sum \nolimits_{j = k}^{k + N - 1} \mathop \sum \nolimits_{i = 1}^{{N_u}} {\lambda _{m1}} + {\lambda _{m2}}\left| {{p_i}\left(\, j \right) - {p_t}\left(\, j \right)} \right|,}\\[7pt]{{{\left| {{p_i}\left(\, j \right) - {p_t}\left(\, j \right)} \right|}^2} \gt R_{{\rm{max}}}^2 \cup \left( {{\rm{co}}{{\rm{s}}^{ - 1}}\left( {\frac{{{Z_i}}}{{\left| {{p_i}\left(\, j \right) - {p_t}\left(\, j \right)} \right|}}} \right) \gt {\gamma _{{\rm{max}}}}} \right)}\end{array}} \right.\end{equation}
where
${\lambda _{m1}}$
and
${\lambda _{m2}}$
are the weight coefficients.
${c_1}$
is the parameter determining the shape of
${J_{{\rm{FOV}}}}$
.
${R_{{\rm{max}}}}$
and
${\gamma _{{\rm{max}}}}$
represent the maximum detection distance and the field angle of the UAV sensor, respectively. The target is within the coverage range of UAV sensors when the detection distance and field angle constraints are satisfied simultaneously.
3.2.4 LOS occlusion cost
${J_{{\bf{LOS}}}}$
The obstacles in the oilfield environment, including the static and dynamic obstacles, can obscure the UAV’s LOS to the target. Figure 5 shows the LOS obstruction conditions. To determine the relationship between the LOS’s projection on the X-Y plane and the obstacle, a sub-function
${P_1}$
is introduced according to Ref. [Reference Tyagi, Kumar and Sujit29].
\begin{equation}{P_1} = \left\{ {\begin{array}{l@{\quad}l}1 {}& {\dfrac{{\left| {m{x_a} - {y_a} + {y_t} - m{x_t}} \right|}}{{\sqrt {{m^2} + {{( - 1)}^2}} }} - {r_a} \le 0}\\[14pt]0& {}{\dfrac{{\left| {m{x_a} - {y_a} + {y_t} - m{x_t}} \right|}}{{\sqrt {{m^2} + {{( - 1)}^2}} }} - {r_a} \gt 0}\end{array}} \right.\end{equation}
where
$\left( {{x_a},{y_a}} \right)$
and
${r_a}$
are the position and the radius of the projection centre of the obstacle on the X-Y plane, respectively.
$m$
is the slope of the LOS’s projection on the X-Y plane. The LOS is not obstructed at
${P_1} = 0$
, but LOS is obstructed by the obstacles at
${P_1} = 1$
and
${\theta _{{\rm{Obs}}}} \gt {\theta _{{\rm{LOS}}}}$
.
\begin{equation} \begin{array}{*{20}{l}}{{J_{{\rm{LOS}}}}} {}{ = {\lambda _{{\rm{LOS}}}}\mathop \sum \limits_{j = k}^{k + N - 1} \mathop \sum \limits_{i = 1}^{Nu} {P_1}{\rm{max}}\left( {0,{\rm{tan}}{\left( {{\theta _{{\rm{Obs}}}}} \right)}- {\rm{tan}} {\left( {\theta _{{\rm{LOS}}}^i {\left(\, j \right)}} \right)} } \right)}\\{{\rm{tan}}{\left( {{\theta _{{\rm{Obs}}}}} \right)}} {}{ = \mathop \sum \limits_{a = 1}^A \frac{{{h_a}}}{{\sqrt {{{({x_t} - {x_a})}^2} + {{({y_t} - {y_a})}^2}} - {r_a}}}}\\{{\rm{tan}}{\left( {{\theta _{{\rm{LOS}}}}} \right)}} {}{ = \frac{{{Z_i}}}{{\sqrt {{{({x_t} - {x_i})}^2} + {{({y_t} - {y_i})}^2}} }}}\end{array}\end{equation}
where
${\lambda _{{\rm{LOS}}}}$
is the weight coefficient.
$A$
is the number of obstacles in the oilfield, including the static and dynamic obstacles.
LOS obstruction conditions.
Note: (a) LOS is not obstructed. (b) LOS is obstructed. The LOS’s projection on the X-Y plane intersects with the obstacle and
${\theta _{{\rm{Obs}}}} \gt {\theta _{{\rm{LOS}}}}$
. (c) LOS is not obstructed. The LOS’s projection on the X-Y plane intersects with the obstacle and
${\theta _{{\rm{Obs}}}} \lt {\theta _{{\rm{LOS}}}}$
.

3.2.5 Safety cost
${J_{{\bf{safe}}}}$
and communication cost
${J_{{\bf{com}}}}$
The safety distance cost
${J_{{\rm{safe}}}}$
and the communication distance cost
${J_{{\rm{com}}}}$
are introduced to keep the safety and communication for the UAVs, which is normalised between 0 and 1 by the hyperbolic tangent functions [Reference Yao, Wang and Ji18] :
\begin{equation}{f_{{\rm{Sdi}}}}{\left( {d,{d_{{\rm{min}}}},{\rm{\Delta }}d} \right)} = \frac{1}{2}\left[ {1 - {\rm{tanh}}\left( {\frac{{d - {d_{{\rm{min}}}} - \frac{{{\rm{\Delta }}d}}{2}}}{{\frac{{{\rm{\Delta }}d}}{8}}}} \right)} \right]\end{equation}
\begin{equation}{f_{{\rm{Cdi}}}}{\left( {d,{d_{{\rm{max}}}},{\rm{\Delta }}d} \right)} = \frac{1}{2}\left[ {1 + {\rm{tanh}}\left( {\frac{{d - {d_{{\rm{max}}}} + \frac{{{\rm{\Delta }}d}}{2}}}{{\frac{{{\rm{\Delta }}d}}{8}}}} \right)} \right]\end{equation}
where
${d_{{\rm{min}}}}$
and
${d_{{\rm{max}}}}$
represent the minimum safe distance and maximum communication distance, respectively.
$d$
is the distance between the UAVs, and
${\rm{\Delta }}d$
is the buffer distance (
$0 \lt {\rm{\Delta }}d \lt\! \lt {d_{{\rm{min}}}}$
).
\begin{equation}{J_{{\rm{safe}}}} = {\lambda _{{\rm{safe}}}}\mathop \sum \limits_{j = k}^{k + N - 1} \mathop \sum \limits_{i \ne j}^{{N_u}} {f_{{\rm{Sdi}}}}{( {{d_{{\rm{ij}}}},{d_{{\rm{min}}}},{\rm{\Delta }}d} )}\end{equation}
\begin{equation}{J_{{\rm{com}}}} = {\lambda _{{\rm{com}}}}\mathop \sum \limits_{j = k}^{k + N - 1} \mathop \sum \limits_{i \ne j}^{{N_u}} {f_{{\rm{Cdi}}}}{( {{d_{{\rm{ij}}}},{d_{{\rm{max}}}},{\rm{\Delta }}d} )}\end{equation}
where
${d_{{\rm{ij}}}}$
is the distance between UAV
${_i}$
and UAV
${_j}$
(
$i \ne j$
),
${\lambda _{{\rm{safe}}}}$
and
${\lambda _{{\rm{com}}}}$
are the weights of the safe and communication costs, respectively.
3.2.6 Control cost
${J_{\bf{u}}}$
UAVs have limited energy in the tracking target. Balancing control inputs helps reduce energy consumption. The balance of the control inputs is introduced as the control cost, which is given by:
\begin{equation}{J_u} = {\lambda _u}\mathop \sum \limits_{j = k}^{k + N - 1} \mathop \sum \limits_{i = 1}^{{N_u}} \left| {\left| {{u_i}\left(\, j \right) - {u_i}\left( {j - 1} \right)} \right|} \right|\end{equation}
where
${\lambda _u}$
is a parameter.
4.0 ISSA for solving CCDMPC formulation
To obtain the optimal control sequences by minimising the cost function, the solver has been proposed based on the salp swarm algorithm, integrating the sine-tent-cosine mapping, differential mutation operations and adaptive inertia weights. The sine-tent-cosine mapping strategy is introduced into the initial stage to improve the uniform distribution for the population. The differential variance operation is introduced into the leader position update to improve the convergence speed and computational accuracy. The adaptive inertia weights are introduced into the follower position update to balance the global and local search capability. The improved SSA and strategies are described as follows.
4.1 SSA method
SSA is inspired by the swarming behaviour of the salps with the great performance including superior exploration-exploitation balance, practical simplicity and robust performance [Reference Mirjalili, Gandomi, Mirjalili, Saremi, Faris and Mirjalili30]. The population is divided into the leader and follower groups. The leaders are individuals at the front of the chain, leading the entire population to search for food sources. The other individuals as the followers connect one by one in the chain, following the leaders. The food source is identified, and the information is transferred from one individual to another. The mathematical process is described below.
First, the population is initialised randomly as:
where
$W$
is the population size and
$D$
is the dimension.
In SSA, the position of the leader is updated as:
where
$x_j^1$
is the location of the leader in the
$j$
th dimension.
${F_j}$
is the location of the food source in the
$j$
th dimension.
$u{b_j}$
and
$l{b_j}$
are the upper and lower bounds in the search space.
${c_2}$
and
${c_3}$
are the random numbers distributed uniformly in the interval
$\left[ {0,1} \right]$
.
${c_1}$
decreases adaptively with the iteration and is denoted as Equation (34).
where
$t$
is the current iteration, and
${T_{{\rm{max}}}}$
is the maximum iteration.
In the salp chain, the position of the followers is updated as Equation (35).
where
$x_j^{i - 1}$
and
$x_j^i$
are the positions of the
$\left( {i - 1} \right){\rm{th}}$
following individual and the
$i{\rm{th}}$
following individual in the
$j{\rm{th}}$
dimension, respectively (
$i \ge 2$
,).
4.2 ISSA method
4.2.1 Sine-tent-cosine chaotic mapping
The initialisation stage is very important to improve the convergence speed and optimisation accuracy for SSA. The population of the traditional SSA is initialised randomly. In Ref. [Reference Haupt and Haupt31], the initial population is distributed uniformly in the search space and is helpful for improving the performance.
In this work, sine-tent-cosine chaotic mapping is used to initialise the salp population. In the sine-tent-cosine chaotic mapping, a continuous chaotic sequence is first generated using the sine function, and then the sequence is segmented with the tent function, and finally, the sequence is further transformed using the cosine function. The mathematical expression is defined as Equation (36).
\begin{equation}x\left( {i + 1} \right) = \left( {\begin{array}{l@{\quad}l}{{\rm{cos}}\left( {\pi {\left( {r\,{\rm{sin}}{\left( {\pi x{\left( i \right)}} \right)} + 2{\left( {1 - r} \right)}x{\left( i \right)} - 0.5} \right)} } \right),} {}&{x{\left( i \right)} \lt 0.5}\\[5pt]{{\rm{cos}}\left( {\pi { \left( {r\,{\rm{sin}}{\left( {\pi x{\left( i \right)}} \right)} + 2{\left( {1 - r} \right)}\!\left( {1 - x{\left( i \right)}} \right) - 0.5} \right)}} \right),} {}& {{\rm{else}}}\end{array}} \right.\end{equation}
where
$x{\left( i \right)}$
denotes the input value in the current iteration,
$x{\left( {i + 1} \right)}$
is the output value in the next iteration and
$r$
is a parameter in the range
$\left[ {0,1} \right]$
.
4.2.2 Leader position updating based on differential variance operation
As can be seen from Equation (33), the leaders update their position according to the food source. However, the individuals do not share information in the updating stage. Inspired by the differential variance, the mutation strategy of DE/best/2 is used to improve the convergence speed and computational accuracy. The updating formula is written as Equation (37).
where
${F_j}$
is the location of the food source in the
$j{\rm{th}}$
dimension, and
$g$
is the ratio factor.
$x_j^a$
,
$x_j^b$
,
$x_j^c$
and
$x_j^d$
are the different individuals selected from the population.
4.2.3 Follower position updating based on nonlinear adaptive inertia weights
To trade off the exploratory and exploitative capabilities in searching, the nonlinear adaptive inertia weights are introduced to update the position of the followers. The follower position is updated as Equations (38) and (39).
\begin{equation}\omega {\left( t \right)} = \frac{{0.55}}{{\sqrt {1 + {{\big(\frac{{Kt}}{{{T_{{\rm{max}}}}}}\big)}^{10}}} }} + 0.4\end{equation}
where
$K$
is the weight control factor, and
$t$
is the current iteration.
${T_{{\rm{max}}}}$
is the maximum iteration. The weights are initialised as the maximum value of 0.95. As the iteration increases, the weights gradually converge to the minimum value of 0.4.
The pseudo-code of ISSA is shown as Algorithm 1. The flowchart of the trajectory optimisation process is shown in Fig. 6.
The flowchart of the trajectory optimisation process.

The pseudo-code of ISSA

5.0 Experimental simulation and result discussion
To verify the performance of the proposed algorithm, Fig. 7 shows the specific oilfield environment with the size of 10 km × 10 km. Several objects in the oilfield environment are modeled. Specifically, the yellow cube represents the house, and the green cylinder represents the trees. The red rectangle represents the pumping well. The purple rectangle and cylinder are oil storage tanks. The yellow cylinder on the road is the oil truck, and the blue rectangle is the signal tower. The cyan rectangle is the water tank, and the pink ellipsoid is the flying bird flock. The dashed grey areas around the pumping wells and storage tanks represent the pipelines.
The simulation experiments are conducted in MATLAB R2022b software with the following configurations: CPU 2.90 GHz, RAM 16.0 GB, and Windows 10. The total running time is 1650 s, and the sampling time
${\rm{\Delta }}T$
is 6 s. The prediction horizon length
$N$
is 5. Two UAVs are used to track targets invading the oilfield environment. The UAV initial positions are (560, 3080, 80) m and (510, 3000, 80) m. The initial flight speed
${V_0}$
is 20 m/s. The initial heading angle
${\varphi _0}$
and the initial pitch angle
${\theta _0}$
are 90
$^ \circ $
and 0
$^ \circ $
, respectively. The sensor field angle
${\gamma _{{\rm{max}}}}$
is 60
$^ \circ $
. The maximum detection distance
${R_{{\rm{max}}}}$
is 400 m, the minimum safe distance
${d_{{\rm{min}}}}$
between the UAVs is 50 m. The maximum communication distance
${d_{{\rm{max}}}}$
is 1500 m. The safe distance
${d_{US}}$
between UAVs and the bird flock is 200 m. The minimum and maximum UAV flight height are
${H_{{\rm{min}}}} = 40$
m and
${H_{{\rm{max}}}} = 100$
m. The minimum and maximum UAV flight velocity are
${V_{{\rm{min}}}} = 17$
m/s and
${V_{{\rm{max}}}} = 30$
m/s. The collision probability threshold is
${\sigma _{pid}} = {\sigma _{vid}} = 0.02$
. The weight coefficient
${w_p} = 0.5$
and
${w_v} = 5 \times {10^6}$
.
5.1 Simulation experiments and results
In this section, the ISSA is proposed as the solver for CCDMPC and compared with the seven typical algorithms. The specific parameter settings are shown in Table 1. The population size is
$W = 30$
, and the maximum iteration
${T_{{\rm{max}}}} = 100$
.
Parameter settings for the eight algorithms

Oilfield environment model.

The target tracking trajectories planned by the eight algorithms are shown in Figs 8–11. All the planned trajectories can avoid static obstacles. However, the tracking trajectory planned by the ISSA method fits the motion trajectory of the moving obstacle more closely, and thus the tracking performance is better, which can be seen in Fig. 11.
Tracking trajectories planned by the WOA and GWO, respectively, in top-view.

Tracking trajectories planned by the PSO and HHO, respectively, in top-view.

Tracking trajectories planned by the CGWO and HJPSO, respectively, in top-view.

Tracking trajectories planned by the AOA-HHO and ISSA, respectively, in top-view.

To confirm the dynamic obstacle avoidance, the real-time distance between the UAVs and the bird flock is exhibited in Figs 12–15. Assume that the radius of the dynamic obstacles is 200 m and the UAV is regarded as a particle.
${d_{{\rm{US}}}}$
is defined as the Euclidean distance between the UAVs and dynamic obstacles. To prevent collision between the UAVs and dynamic obstacles, it should satisfy
${d_{{\rm{US}}}} \ge $
200 m. The distance between the UAVs and the bird flock falls below 200 m during 1128–1140s for GWO, and the distance is less than 200 m during 1116–1128 s for CGWO. This indicates that the UAVs collided with the bird flock in this interval. This fact also appears for WOA and PSO. However, the proposed ISSA method has planned the trajectories with the safe distance at the tracking time, as well as HHO, HJPSO and AOA-HHO.
Real-time distance between the UAVs and the bird flock using CCDMPC+WOA and CCDMPC+GWO.

Real-time distance between the UAVs and the bird flock using CCDMPC+PSO and CCDMPC+HHO.

Real-time distance between the UAVs and the bird flock using CCDMPC+CGWO and CCDMPC+HJPSO.

Real-time distance between the UAVs and the bird flock using CCDMPC+AOA-HHO and CCDMPC+ISSA.

Figures 16–19 show the total tracking time for moving targets. The undetected flag is set to 0 when one UAV can track the target; otherwise, the undetected flag is set to 1. The two UAVs cannot track the moving target at the first 400 and 200 s for WOA and CGWO, respectively, due to the high density of the obstacle distribution. This indicates that the WOA and CGWO methods are difficult in solving the tracking problem with the high density of the obstacles. This fact also appears for the AOA-HHO method and even becomes more serious in the whole tracking process for the PSO method. The GWO, HHO and HJPSO methods show better performance in tracking time. The proposed method, ISSA, can provide the best tracking trajectories for the UAVs in the whole tracking process. The tracking time reaches 1620 s and accounts for 98.2% of the tracking time.
The total tracking time of the moving target using CCDMPC+WOA and CCDMPC+GWO.

The total tracking time of the moving target using CCDMPC+PSO and CCDMPC+HHO.

The total tracking time of the moving target using CCDMPC+CGWO and CCDMPC+HJPSO.

Statistical results of the total tracking time for all the algorithms

ASO: Avoiding static obstacles, ADO: Avoiding dynamic obstacles.
The total tracking time of the moving target using CCDMPC+AOA-HHO and CCDMPC+ISSA.

Figure 20 is the graph of the distance between the UAVs and the schematic of the flight altitude during target tracking using the CCDMPC+ISSA method, respectively. The distance graph shows UAVs can avoid colliding and keep communicating with each other. In addition, the UAV moves up and down within a limited altitude range, which prevents the UAV from colliding with obstacles in the oilfield environment or obscuring the LOS between the UAV and the target.
Distance graph between UAVs and flight altitude graph of UAVs.

Table 2 gives statistical results for all the algorithms. The algorithms run independently 20 times. Note that the algorithm with the addition of sine-tent-cosine mapping is referred to as the sine-tent-cosine salp swarm algorithm (TSSA), and the algorithm incorporating both the sine-tent-cosine mapping and differential variance operation is referred to as the sine-tent-cosine differential salp swarm algorithm (TDSSA). The indicators, such as maximum duration, average duration and standard deviation, show the superiority of the algorithms proposed in this paper. This also confirms that the strategies introduced have enhanced the capability of SSA in solving the UAV target tracking problem. In 20 runs, the proposed algorithm guarantees that tracking can avoid dynamic and static obstacles in the environment. The trajectories planned by the HHO and AOA-HHO algorithms are also capable of avoiding obstacles but become weaker than the proposed algorithm in other indicators.
6.0 Conclusion
In this work, the UAV tracking the moving target in the dynamic oilfield environment has been studied. The oilfield environment is modeled as well as the UAV kinematic and target models. The CCDMPC method is used as the framework for the trajectory optimisation of UAVs. For the solver of CCDMPC, the three strategies have been introduced into the typical SSA to improve the optimisation search capability, including the sine-tent-cosine chaotic mapping in the initialisation phase, the differential mutation operation in the leader position updating and the adaptive inertia weights in the follower position updating. The simulation results show that the CCDMPC method based on the ISSA can improve the performance of target tracking in oilfield environments with dynamic obstacles.
Acknowledgements
This work was supported by the National Natural Science Foundation of China (Grant Nos. 62373389, 62576372), the leading Talents of Science and Technology in the Central Plain of China (Grant No. 254000510055), the Science and Technology Innovation Talents of Colleges and Universities in Henan Province (Grant No. 24HASTIT037), the Key Research and Development Program of Henan (Grant Nos. 241111210100), the Natural Science Foundation of Zhongyuan University of Technology (Grant No. K2025ZD008), the Frontier Exploration Projects of Longmen Laboratory (LMQYTSKT031), the Postgraduate Education Reform and Quality Improvement Project of Henan Province (YJS2026YBGZZ20, 202622) and the Foundation Research Project of Henan Provincial Key Scientific Research Program in Higher Education Institutions (26ZX023).
Data availability statement
The data that support the findings of this study are available from the authors upon reasonable request and with permission of corresponding authors of the dataset.
Author contributions
Conceptualisation, methodology, X.C. and L.Y.; validation, X.C. and Y.L.; formal analysis, Z.L. and H.Y; investigation, X.C.; resources, L.Y.; data curation, X.C.; writing – original draft preparation, X.C. and Y.L.; writing – review and editing, X.C., Z.L. and L.Y.; supervision, P.L.; project administration, L.Y.; funding acquisition, L.Y. All authors have read and agreed to the published version of the manuscript.
Competing interests
The authors have no competing interests.
Ethics approval
Not applicable.
Code availability
Codes are not publicly available duo to private restrictions.


























