In recent years, Unmanned Aerial Vehicle (UAV) systems have found extensive applications in fields such as environmental monitoring, emergency rescue, and logistics transportation. Collaborative operations can expand mission coverage, enhance operational efficiency, and improve system resilience, making them particularly suitable for large-area and dynamic tasks. Within multi-UAV systems, conflicts between UAV trajectories and collisions with obstacles pose significant risks. Furthermore, the limited endurance of UAVs makes reducing the cost of maneuvers while ensuring safety a key research focus.

Collision avoidance strategies for UAVs primarily include optimization algorithms, reinforcement learning, and model predictive control. However, these methods often involve complex algorithmic structures and heavy online computational burdens, limiting their application on platforms with high real-time requirements or limited resources. Therefore, the Artificial Potential Field (APF) method, known for its simple structure and ease of engineering implementation, remains a valuable research area. Nevertheless, traditional APF methods are prone to issues such as local minima, target inaccessibility, and excessively long paths. Existing improvements generally fall into three categories: reconstructing the potential field function, introducing adaptive parameters, or embedding intelligent algorithms. Many APF methods apply repulsive forces to all involved UAVs in a conflict, often leading to excessive overall maneuvering and jitter during formation flight. Additionally, a significant amount of work is still based on two-dimensional environmental assumptions, showing insufficient adaptability to complex three-dimensional scenarios.
To address these challenges, this paper proposes a UAV cooperative collision avoidance algorithm based on an improved Artificial Potential Field method. By redesigning the repulsive potential field function and introducing force regulation and virtual targets, the algorithm solves problems like target inaccessibility, local minima, and potential wells. A criticality-based negotiation mechanism is designed to reduce redundant maneuvers. Simulation verification is conducted in a three-dimensional environment.
1. Problem Description and System Modeling
This paper assumes UAVs employ an idealized flight control system, ignoring influences such as mass, inertia, aerodynamics, and control response during motion. The kinematic model of a UAV in three-dimensional space is formulated as follows:
$$
\begin{aligned}
\dot{\mathbf{\xi}}_i(t) &= \mathbf{v}_i(t) = \begin{bmatrix}
\dot{x}_i(t) \\
\dot{y}_i(t) \\
\dot{z}_i(t)
\end{bmatrix} = \begin{bmatrix}
v_i(t) \cos \gamma_i(t) \cos \phi_i(t) \\
v_i(t) \cos \gamma_i(t) \sin \phi_i(t) \\
v_i(t) \sin \gamma_i(t)
\end{bmatrix}, \\
\mathbf{\zeta}_i(t) &= [v_i(t), \omega_i(t), \mu_i(t)]^T.
\end{aligned}
$$
Here, $\mathbf{\xi}_i(t)$ represents the position of UAV $i$ in 3D space; $\mathbf{v}_i(t)$ is its velocity vector; $v_i(t)$ is its airspeed; $\gamma_i(t)$ is the flight path angle (pitch); $\phi_i(t)$ is the heading angle; and $\mathbf{\zeta}_i(t)$ represents the control variables. Considering the UAV’s performance limits, the control inputs are constrained within specific ranges:
$$
\begin{aligned}
v_i(t) &\in [v_{\text{min}}, v_{\text{max}}], \\
\omega_i(t) &\in [\omega_{\text{min}}, \omega_{\text{max}}], \\
\mu_i(t) &\in [\mu_{\text{min}}, \mu_{\text{max}}].
\end{aligned}
$$
To avoid collisions between UAVs, the following constraint must be satisfied:
$$
(x_i – x_j)^2 + (y_i – y_j)^2 + (z_i – z_j)^2 \ge L_{\text{safe}}^2.
$$
Here, $(x_i, y_i, z_i)$ and $(x_j, y_j, z_j)$ are the position coordinates of UAV $i$ and $j$, respectively. $L_{\text{safe}} = r_{\text{margin}} + L_{\text{coll}}$ is the predefined safety separation, where $r_{\text{margin}}$ is a buffer radius and $L_{\text{coll}}$ is a distance parameter ensuring no collision (2$L_{\text{coll}}$ is the minimum distance for collision avoidance).
Terrain obstacles are simplified as cylinders. To avoid collisions, the following relationship must hold between a drone and an obstacle:
$$
(x_i – x_k)^2 + (y_i – y_k)^2 + (z_i – z_k)^2 \ge L_{\text{safe}}^2.
$$
Here, $(x_k, y_k, z_k)$ represents the position of the obstacle nearest to the UAV, and $L_{\text{safe}}$ is the safety separation distance.
2. UAV-to-UAV Collision Avoidance Algorithm
2.1 Data Link Latency Compensation
Data link transmission incurs latency due to bandwidth limitations. Assuming the predicted total latency is $t_{\text{delay}}$ and the UAV’s state remains unchanged during this period, the predicted position of neighbor UAV $j$ is:
$$
\mathbf{\xi}_j(t) = \mathbf{\xi}_j(t – t_{\text{delay}}) + \dot{\mathbf{\xi}}_j(t – t_{\text{delay}}) \cdot t_{\text{delay}}.
$$
Packet loss is handled similarly by replacing $t_{\text{delay}}$ with the time interval $t_{\text{drop}}$ between the last received update and the current time.
2.2 Conflict Detection and Warning
Each UAV performs real-time conflict detection using compensated neighbor information and environmental data within its observable range. Only potential conflicts within the detection range are considered.
2.2.1 UAV-to-UAV Conflict Detection
The detection process involves two steps:
1) Distance-Based Detection: UAVs are modeled as spheres. A conflict is declared if the Euclidean distance $d$ between two UAV centers is $d \le 2L_{\text{safe}}$.
2) Time-Based Detection: If the distance condition is not met, the Velocity Obstacle (VO) method is used. A velocity obstacle cone with apex at UAV $j$’s position and radius $2L_{\text{safe}}$ is constructed. Let $\alpha_0$ be the cone’s half-angle and $\alpha$ be the angle between the relative velocity vector $\mathbf{V}_{ij}$ and the line connecting the UAVs. A potential threat exists if $\alpha < \alpha_0$, where:
$$
\alpha_0 = \arcsin\left(\frac{2L_{\text{safe}}}{\|\mathbf{\xi}_j – \mathbf{\xi}_i\|}\right), \quad \alpha = \arccos\left(\frac{(\mathbf{\xi}_j – \mathbf{\xi}_i) \cdot \mathbf{V}_{ij}}{\|\mathbf{\xi}_j – \mathbf{\xi}_i\| \|\mathbf{V}_{ij}\|}\right).
$$
To avoid premature maneuvers, the Time to Collision (TTC) is computed: $t_c = d_c / \|\mathbf{V}_{ij}\|$, where $d_c$ is the distance at the closest point of approach. A conflict is confirmed only if $\alpha < \alpha_0$ and $t_c < \tau$, where $\tau$ is a look-ahead time.
2.2.2 UAV-to-Obstacle Conflict Detection
The detection process is similar:
1) Distance-Based Detection: A conflict exists if the minimum distance $d_{\text{obs}}$ between the UAV center and the obstacle edge is $d_{\text{obs}} \le L_{\text{safe}}^{\text{obs}}$ (where $L_{\text{safe}}^{\text{obs}}$ relates to $L_{\text{safe}}$ and UAV maneuverability).
2) Time-Based Detection: If the distance condition is not met, the algorithm samples the UAV’s predicted position over the look-ahead time $\tau$ to check if $d_{\text{obs}} \le L_{\text{safe}}^{\text{obs}}$ will occur, recording the collision time $t_c$ if so.
2.3 Negotiated Collision Avoidance Based on Improved APF
2.3.1 Attractive Potential Field
The attractive potential field is defined as:
$$
U_{\text{att}}(\mathbf{\xi}_i) = \frac{1}{2} k_{\text{att}} \rho^2(\mathbf{\xi}_i, \mathbf{\xi}_{\text{goal}}).
$$
Here, $k_{\text{att}}$ is the attractive gain, $\mathbf{\xi}_i$ is the UAV’s current position, $\mathbf{\xi}_{\text{goal}}$ is the target, and $\rho(\mathbf{\xi}_a, \mathbf{\xi}_b)$ denotes the Euclidean distance. The attractive force is the negative gradient:
$$
\mathbf{F}_{\text{att}}(\mathbf{\xi}_i) = -\nabla U_{\text{att}}(\mathbf{\xi}_i) = k_{\text{att}} (\mathbf{\xi}_{\text{goal}} – \mathbf{\xi}_i).
$$
2.3.2 Repulsive Potential Field
The repulsive field consists of obstacle and inter-UAV components.
1) Obstacle Repulsive Field:
$$
U_{\text{obs}}(\mathbf{\xi}_i, \mathbf{\xi}_{\text{obs}}) =
\begin{cases}
\frac{1}{2} k_{\text{rep}}^{\text{obs}} \lambda_1 \left( \frac{1}{\rho(\mathbf{\xi}_i, \mathbf{\xi}_{\text{obs}})} – \frac{1}{\rho_0} \right)^2 \rho^n(\mathbf{\xi}_i, \mathbf{\xi}_{\text{goal}}), & \rho(\mathbf{\xi}_i, \mathbf{\xi}_{\text{obs}}) \le \rho_0, \\
0, & \rho(\mathbf{\xi}_i, \mathbf{\xi}_{\text{obs}}) > \rho_0.
\end{cases}
$$
Here, $k_{\text{rep}}^{\text{obs}}$ is an adaptive repulsive gain coefficient for obstacles, $\rho_0$ is the obstacle’s influence range, $n$ is a positive constant, and $\lambda_1$ is an adaptive conflict coefficient related to the predicted collision time $t_c$:
$$
\lambda_1 =
\begin{cases}
\cos\left(\frac{\pi}{2} \cdot \frac{t_c}{\tau}\right), & \text{if conflict conditions triggered}, \\
0, & \text{else}.
\end{cases}
$$
The repulsive force is $\mathbf{F}_{\text{obs}}(\mathbf{\xi}_i) = -\nabla U_{\text{obs}}$, which can be decomposed into $\mathbf{F}_{\text{obs}}^1$ (away from the obstacle) and $\mathbf{F}_{\text{obs}}^2$ (towards the target).
2) Inter-UAV Repulsive Field: A similar formulation is used for other UAVs:
$$
U_{\text{uav}}(\mathbf{\xi}_i, \mathbf{\xi}_j) =
\begin{cases}
\frac{1}{2} k_{\text{rep}}^{\text{uav}} \lambda_1 \left( \frac{1}{\rho(\mathbf{\xi}_i, \mathbf{\xi}_j)} – \frac{1}{\rho_1} \right)^2 \rho^n(\mathbf{\xi}_i, \mathbf{\xi}_{\text{goal}}), & \rho(\mathbf{\xi}_i, \mathbf{\xi}_j) \le \rho_1, \\
0, & \rho(\mathbf{\xi}_i, \mathbf{\xi}_j) > \rho_1.
\end{cases}
$$
Here, $\rho_1$ is the inter-UAV influence range, and $k_{\text{rep}}^{\text{uav}}$ is the adaptive gain for UAV repulsion. The force $\mathbf{F}_{\text{uav}}(\mathbf{\xi}_i)$ is similarly decomposed.
3) Adaptive Repulsive Gain: To ensure effective avoidance, the repulsive gains are adapted based on minimum distances:
$$
k_{\text{rep}}^{\text{obs}} =
\begin{cases}
k_{\text{rep}} \cdot \exp(\rho_{\text{obs}}^{\text{min}}), & \text{if } \rho_{\text{obs}}^{\text{min}} \le d_{\text{obs}}^1, \\
k_{\text{rep}} \cdot \exp(d_{\text{obs}}^1), & \text{else}.
\end{cases}
$$
$$
k_{\text{rep}}^{\text{uav}} =
\begin{cases}
k_{\text{rep}} \cdot \exp(\rho_{\text{uav}}^{\text{min}}), & \text{if } \rho_{\text{uav}}^{\text{min}} \le d_{\text{uav}}^1, \\
k_{\text{rep}} \cdot \exp(d_{\text{uav}}^1), & \text{else}.
\end{cases}
$$
Here, $\rho_{\text{obs}}^{\text{min}}$ and $\rho_{\text{uav}}^{\text{min}}$ are the minimum distances to obstacles and other UAVs, respectively; $d_{\text{obs}}^1$ and $d_{\text{uav}}^1$ are threshold distances related to $L_{\text{safe}}$ and UAV dynamics; and $k_{\text{rep}}$ is the base repulsive gain.
The total artificial potential field force on UAV $i$ is:
$$
\mathbf{F}_{\text{total}}(\mathbf{\xi}_i) = \mathbf{F}_{\text{att}}(\mathbf{\xi}_i) + \sum \mathbf{F}_{\text{obs}}(\mathbf{\xi}_i) + \sum \mathbf{F}_{\text{uav}}(\mathbf{\xi}_i).
$$
2.3.3 Regulating Force Design
To escape local minima where attractive and repulsive forces are balanced and opposite, a regulating force $\mathbf{F}_{ct}$ is introduced. Let $\theta_F$ be the angle between the total repulsive force component $\mathbf{F}_{\text{rep}}^1$ and the attractive force. If $\pi – \theta_F \le \epsilon$ (where $\epsilon \ge 0$ is a small threshold), the forces are nearly collinear. The regulating force is then applied perpendicular to $\mathbf{F}_{\text{rep}}^1$ with equal magnitude: $\mathbf{F}_{ct} = \|\mathbf{F}_{\text{rep}}^1\| \cdot \mathbf{n}_{\perp}$, where $\mathbf{n}_{\perp}$ is the unit perpendicular vector.
2.3.4 Virtual Target Point Design
For concave (e.g., U-shaped) obstacles that can trap a UAV, the algorithm predicts if the UAV’s current path will enter a potential well within the look-ahead time $\tau$. If a risk is detected, a virtual target point is set. Starting from the UAV’s current position, with a radius equal to the maximum distance to surrounding obstacles, the algorithm scans sectors clockwise from the current velocity direction in increments (e.g., 3 degrees). The first sampled position that is outside the influence range of all obstacles is set as the temporary virtual target.
2.3.5 Criticality-Based UAV Negotiation Strategy
To prevent excessive simultaneous maneuvers from mutual repulsion in a conflict pair, a negotiation mechanism based on criticality is proposed. The UAV with the highest criticality determines its action first and communicates it; others then compute their strategies accordingly.
The threat level $R_{ij}$ from UAV $j$ to UAV $i$ is:
$$
R_{ij} =
\begin{cases}
\| \mathbf{\xi}_i – \mathbf{\xi}_j \| – (\mathbf{\xi}_i – \mathbf{\xi}_j) \cdot \mathbf{V}_{ij}, & \text{if } (\mathbf{\xi}_i – \mathbf{\xi}_j) \cdot \mathbf{V}_{ij} < 0, \\
0, & \text{else}.
\end{cases}
$$
The criticality $E_i$ of UAV $i$ is the sum of threat levels from all detected neighbors $N$: $E_i = \sum_{j=1}^{N} R_{ij}$. The UAV with the highest $E_i$ in a conflict group acts first. Negotiation rounds are limited adaptively based on the minimum predicted collision time among the involved UAVs. For high-level collision warnings, negotiation is bypassed, and immediate avoidance is executed based on current information.
The overall flow of the proposed cooperative collision avoidance algorithm for the drone is summarized below:
| Step | Description |
|---|---|
| 1 | Perform conflict detection and warning using compensated data. |
| 2 | If conflict exists and involves other UAVs, check warning level. |
| 3 | If warning level is LOW, estimate negotiation rounds, perform data compensation for cumulative latency, and execute criticality-based strategy negotiation. |
| 4 | If warning level is HIGH or conflict is with static obstacle, proceed directly to conflict resolution. |
| 5 | Compute total APF force (including attractive, repulsive, regulating, and virtual target forces if needed). |
| 6 | Generate velocity/heading commands respecting UAV constraints. |
| 7 | Loop until all UAVs reach targets or mission ends. |
3. Simulation and Validation
To validate the feasibility and effectiveness of the proposed negotiated collision avoidance algorithm, multiple 3D scenarios were simulated. Key parameters are set as follows: $k_{\text{att}}=1$, $k_{\text{rep}}=40$, $d_{\text{obs}}^1 = d_{\text{uav}}^1 = 100$ m, $\rho_0 = \rho_1 = 400$ m, $v_{\text{max}} = 20$ m/s, $L_{\text{safe}} = L_{\text{safe}}^{\text{obs}} = 10$ m, $\tau = 20$ s, $t_{\text{delay}} = 100$ ms, time step = 0.1 s, max iterations = 6000.
3.1 UAV Negotiated Collision Avoidance Scenario
In a three-UAV crossing scenario, the traditional APF causes all involved UAVs to maneuver simultaneously due to mutual repulsion, leading to unnecessary motion. The proposed algorithm allows the rightmost UAV (with highest criticality) to compute and communicate its avoidance maneuver. The central UAV, receiving this plan, determines that conflict is resolved and maintains its course, significantly reducing redundant maneuvers for the drone fleet.
3.2 Target Inaccessibility Scenario
Two problematic cases were tested:
a) Target near obstacle: Traditional APF balances attraction and repulsion, failing to reach the goal. Our method’s repulsive force has a component towards the target, enabling the UAV to reach the goal.
b) Target, obstacle, and start point collinear: Traditional APF gets stuck in force equilibrium. Our algorithm generates a regulating force perpendicular to the obstacle-UAV line, allowing escape.
3.3 Local Minimum Scenario
Two cases were tested:
a) Single obstacle between start and target: Traditional APF falls into a local minimum near the target. Our method’s modified repulsion avoids this pitfall.
b) Multiple obstacles creating a balanced force field: Traditional APF gets trapped. Our method, with its adaptive coefficients and target-directed repulsive component, navigates through.
3.4 U-Shaped Obstacle Scenario
U-shaped obstacles create trapping regions. Traditional APF fails. Our algorithm predicts entry into the concave region and proactively sets a virtual target point outside the trap, guiding the UAV to escape.
3.5 Algorithm Comparison in Complex Multi-Obstacle Environment
The proposed algorithm was compared against Traditional APF, A-APF (using symmetric virtual targets), and B-APF (using hexagonal guidance) in a complex scene with a large U-shaped obstacle and random clutter. All three improved methods succeeded where Traditional APF failed. A comprehensive Monte Carlo simulation with 300 random obstacle fields in a 5000m × 5000m area was conducted. Performance metrics are shown below:
| Algorithm | Average Path Length (m) | System Run Time (s) | Success Rate (%) |
|---|---|---|---|
| Traditional APF | 6884.4 | 1.46 | 93.3% |
| A-APF | 6430.0 | 1.71 | 95.0% |
| B-APF | 6410.5 | 2.09 | 93.7% |
| Proposed Method | 6394.1 | 1.79 | 99.3% |
The results demonstrate that the proposed negotiated APF algorithm for UAVs achieves the shortest average path length (≈6.6% reduction vs. Traditional APF) and the highest success rate (≈6% improvement), with run-time comparable to A-APF. The run-time listed is the total simulation time for the complete mission trajectory, not the single-step update time. The algorithm operates with fixed-step iterations, where the per-step computation time for local field calculation and negotiation adjustment is less than the physical time corresponding to the step size, meeting real-time requirements for typical missions like cruising and formation flight.
4. Conclusion
To enhance the cooperative collision avoidance performance of multi-UAV systems in complex environments, this paper proposed a hybrid framework integrating a negotiation mechanism with an improved Artificial Potential Field method. A criticality-based negotiation strategy was designed to effectively suppress redundant avoidance maneuvers caused by inter-drone conflicts. To address inherent APF issues like parameter sensitivity, local minima, and trapping in concave regions, an improved potential field function incorporating relative distance and adaptive repulsive coefficients was constructed. Additional mechanisms like a regulating force and virtual target point were introduced to enhance guidance. Simulation experiments across various challenging 3D scenarios validated the feasibility and superiority of the proposed algorithm. Future work will focus on integrating dynamic obstacle prediction and testing the algorithm with more realistic UAV dynamic models.
