Next Article in Journal
Deep Learning Models Outperform Generalized Machine Learning Models in Predicting Winter Wheat Yield Based on Multispectral Data from Drones
Next Article in Special Issue
Formation Transformation Based on Improved Genetic Algorithm and Distributed Model Predictive Control
Previous Article in Journal
Fault Detection and Fault-Tolerant Cooperative Control of Multi-UAVs under Actuator Faults, Sensor Faults, and Wind Disturbances
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Multi-UAV Cooperative Obstacle Avoidance of 3D Vector Field Histogram Plus and Dynamic Window Approach

College of Automation Engineering, Nanjing University of Aeronautics & Astronautics, Nanjing 210016, China
*
Author to whom correspondence should be addressed.
Drones 2023, 7(8), 504; https://doi.org/10.3390/drones7080504
Submission received: 6 July 2023 / Revised: 26 July 2023 / Accepted: 27 July 2023 / Published: 2 August 2023

Abstract

:
In this paper, we propose a fusion algorithm that integrates the 3D vector field histogram plus (VFH+) algorithm and the improved dynamic window approach (DWA) algorithm. The aim is to address the challenge of cooperative obstacle avoidance faced by multi-UAV formation flying in unknown environments. First, according to the navigation evaluation function of the standard DWA algorithm, the target distance is introduced to correct the azimuth. Then, aiming at the problem that the fixed weight mechanism in standard DWA algorithm is unreasonable, we combine the A* algorithm and introduce variable weight factors related to azimuth to improve the target orientation ability in local path planning. A new rotation cost evaluation function is added to improve the obstacle avoidance ability of two-dimensional UAV. Then, 3D VFH+ algorithm is introduced and integrated with improved DWA algorithm to design a distributed cooperative formation obstacle avoidance control algorithm. Simulation validation suggests that compared with the traditional DWA algorithm, the improved collaborative obstacle avoidance control algorithm can greatly optimize the obstacle avoidance effect of UAVs’ formation flight.

1. Introduction

Owing to their cost-effectiveness, advanced functionalities, and ability to be reused, UAVs have garnered escalating popularity within the domain of reconnaissance and monitoring [1,2,3,4]. Over the past years, the operational landscape has witnessed a rise in complexity, thereby amplifying the demand for UAV implementation in these specific missions. Yet, a single UAV can hardly meet its actual task requirements when operating independently [5,6], as its sensor’s range of view may be easily blocked, limiting its ability to accomplish tasks. Cooperative efforts made by UAVs can significantly mitigate the risk of target loss [7,8,9], thus leading to the adoption of multi-UAV collaboration [10,11] in trajectory planning for moving target tracking purposes.
Currently, the research hotspots in cooperative formation algorithms encompass communication strategies, formation control strategies, formation transformation trajectory planning, and cooperative obstacle avoidance. Formation transformation and cooperative obstacle avoidance have yielded significant and fruitful outcomes following extensive years of research. Muhammad Umer Farooq proposed a novel nonlinear quadcopter probabilistic roadmap (PRM) navigation method [12], specifically designed to address the challenge of formation reconstruction for quadcopter formations after dynamic obstacle avoidance. Li J et al. [13] conducted an investigation into collective obstacle avoidance algorithms for both first-order kinematic agents and second-order dynamic agents. They introduced an obstacle avoidance algorithm that eliminates the need for velocity measurements in agents with first-order kinematics. This algorithm is particularly beneficial when only a fixed proportion of agents can perceive obstacle information. Okechi Onuoha delved into the study of affine formation maneuver control for multi-agent systems with triple integrator dynamics, considering both continuous time and sampled data settings [14]. As a result, the research demonstrated the effectiveness of maneuver-based formation transformations in facilitating obstacle avoidance.
Most cooperative obstacle avoidance strategies use the artificial potential field (APF) method. The APF method [15,16,17] is extensively employed in UAV formation obstacle avoidance. The algorithm relies on establishing gravitational and repulsive fields to calculate the resultant force that guides path planning at each moment. However, the APF algorithm can fall into a local optimal solution if the field function design is unreasonable. Moreover, the algorithm lacks consideration for the dynamic motion constraints of UAVs, making it challenging to track the planned path in real-time.
DWA was proposed in 1997 [18]. The algorithm considers the limitation of velocity and acceleration of a moving body and employs an evaluation function to select the most favorable trajectory. Nonetheless, the algorithm exhibits several limitations, including the inherent challenge of designing a suitable evaluation function, a tendency towards a conservative speed window, and a propensity to converge towards suboptimal positions within a localized context. Reference [19] proposes the collision avoidance dynamic window approach (CADWA) algorithm, which addresses problems such as collision avoidance failure and improper evaluation function weighting. Furthermore, reference [20] introduces an additional evaluation factor of direction change, which mitigates issues related to the contradiction between heading and speed factors in DWA, such as untimely obstacle avoidance and frequent direction changes on certain road conditions, resulting in smoother trajectories.
Additionally, an effective improvement direction involves merging the DWA algorithm with other algorithms, such as the A* algorithm first proposed by Hart in 1968 [21]. Extracting the key points of path planning by the improved A* algorithm as temporary target points of DWA algorithm, achieving the fusion of the improved A* and DWA algorithm on the basis of global optimization, thus realizing dynamic path planning in complex environments has been realized by reference [22]. In reference [23], the traditional A* algorithm’s drawbacks, such as non-optimal path and many redundant points, were addressed by expanding its search neighborhood to remove the limitation of motion direction and combining it with the DWA’s improved speed evaluation function for temporary obstacle avoidance. Reference [24] tested the hybrid path planning algorithm of A* and DWA on four typical Turlebot2 mobile robot terrains. The experiment demonstrated that the hybrid algorithm outperforms the individual algorithms by offering efficient obstacle avoidance and a faster path-finding process.
This paper introduces a novel algorithm for UAV Formation Control, specifically designed to enable efficient task completion by multi-UAV formations operating in complex environments that include a variety of obstacles. The proposed algorithm comprehensively considers the sensor measurement range and the kinematic constraints of UAVs, effectively tackling the challenge of maintaining formation integrity in the presence of disturbances and navigating obstacles. The key contributions of this paper can be summarized as follows.
We propose an enhanced version of the traditional DWA algorithm, with a specific focus on improving the navigation evaluation function. To achieve this, we incorporate the concept of target distance, which serves to correct the azimuth angle. Additionally, we integrate the A* algorithm to address the limitations of the fixed weight mechanism and enhance the overall efficiency of the process. Furthermore, we introduce a novel rotation evaluation function to constrain large rotation angles, thereby further improving the search efficiency. The ultimate goal of these enhancements is to bolster the obstacle avoidance capability of two-dimensional planar UAVs.
Combined with the 3D VFH + algorithm and improved DWA, it improves the obstacle avoidance ability of two-dimensional plane UAV and solves the obstacle avoidance problem of multi-aircraft formation in three-dimensional space.
The rest of this paper is organized as follows. Section 2 describes the improved DWA algorithm. Section 3 describes the algorithm design for 3D VFH+. Section 4 introduces the UAV formation control fusion algorithm. Section 5 verifies and analyzes our algorithm. Finally, concluding remarks are provided in Section 6.

2. Design of Improved DWA

2.1. Basic Principle of Standard DWA

The DWA algorithm primarily samples within the two-dimensional velocity space ( v , ω ) and identifies a constrained set of velocity combinations that fulfill predetermined criteria. After this step, the method determines the optimal speed at the current time through the utilization of an evaluation function.
Firstly, due to the limitation of its own hardware, the moving body has the constraint of linear velocity in kinematics:
V m = ν ν min , ν max , ω ω min , ω max
Secondly, there is a maximum acceleration constraint:
V n = ( v , ω ) | v v c v ˙ d Δ t , v c + v ˙ a Δ t ^ ω ω c ω ˙ d Δ t , ω c + ω ˙ a Δ t
v c indicates the linear velocity of current motion, ω c indicates the angular velocity of current motion, v ˙ d indicates the minimum linear acceleration of current motion, v ˙ a indicates the maximum linear acceleration of current motion, ω ˙ d indicates the minimum angular acceleration of current motion, ω ˙ a indicates the maximum angular acceleration of current motion, and the sampling interval, represented as “ Δ t ”, remains consistent without any alterations.
Finally, there is an obstacle constraint:
V o = ( v , ω ) | v 2 d i s t ( v , ω ) v ˙ d ^ ω 2 d i s t ( v , ω ) ω ˙ d
where d i s t ( v , ω ) denotes the closest distance between the moving body and the obstacle.
Through the utilization of the DWA, it becomes feasible to simulate a multitude of prospective paths within the given map, as shown in Figure 1.
Then, the current optimal speed combination is selected according to the velocity evaluation function of (4).
C v , ω = λ α · h e a d i n g ( v , ω ) + β · o b d i s t ( v , ω ) + γ · v e l ( v , ω )
In the equation, h e a d i n g ( v , ω ) represents the azimuth evaluation function, which guides the motion of the object towards the target direction. The o b d i s t ( v , ω ) represents the obstacle avoidance evaluation function to guide the motion of the object away from the obstacle. The v e l ( v , ω ) denotes the kinematic body linear velocity evaluation function to stimulate its rapid passage; α , β , γ are the fixed weights of the evaluation function and λ is the normalization coefficient.

2.2. Improving the DWA

(1) Introduction of target distance
The azimuth evaluation function in the standard DWA is shown as:
h e a d i n g v , ω = 180 θ
where θ is the angle between the velocity vector and the vector connecting the current position of the moving object to the target point. The smaller the value of θ , the higher the evaluation score. Given that the current position of the moving object is denoted as D: ( x d , y d ) , the position of the velocity trajectory’s endpoint is denoted as V: ( x ν , y ν ) , and the position of the target point is denoted as G: ( x g , y g ) , Equation (6) can be derived as shown in the Figure 2.
cos θ = D G · D V D G D V = ( x g x d ) ( x ν x d ) + ( y g y d ) ( y ν y d ) ( x g x d ) 2 + ( y g y d ) 2 ( x ν x d ) 2 + ( y ν y d ) 2
Combining (5) with (6) yields:
h e a d i n g v , ω = 180 arccos ( x g x d ) ( x ν x d ) + ( y g y d ) ( y ν y d ) ( x g x d ) 2 + ( y g y d ) 2 ( x ν x d ) 2 + ( y ν y d ) 2
Under the action of (7), as the moving object approaches the target point, the angle θ experiences rapid expansion, resulting in oscillations of the moving object at the target point. Therefore, the introduction of target distance is employed as a constraint to mitigate this issue, as shown in (8):
h e a d i n g _ n e w v , ω = 180 θ ( x ν x d ) 2 + ( y ν y d ) 2
(2) Dynamic weights of the fusion A* algorithm
The A* algorithm is usually used for global path planning. By rasterizing the global map and identifying a number of nodes to be expanded, the raster point with the lowest current cost can be selected according to the cost function as shown in (9), denoted as A: ( x a , y a ) .
f n = g ( n ) + h ( n )
where g ( n ) represents the distance cost from the starting point to the current grid point, while h ( n ) represents the distance cost from the current grid point to the target point. The global path coordinates obtained from the A* algorithm is merged with the final coordinates of the velocity trajectory obtained from the DWA algorithm. By utilizing the cosine relationship, the dynamic weight μ for the azimuth evaluation function can be obtained as shown in (10).
μ = ( x a x d ) ( x v x d ) + ( y a y d ) ( y v y d ) ( x a x d ) 2 + ( y a y d ) 2 ( x v x d ) 2 + ( y v y d ) 2
The introduction of dynamic weights improves navigation efficiency.
(3) New t w i r l i n g ( v , ω ) function
Considering that large turning angles affect the actual following result of the path by the moving body, the t w i r l i n g ( v , ω ) function is added to the evaluation function of the DWA algorithm. This function will compensate for the large rotation angle, so as to avoid the large rotation angle of the moving body in path planning. The evaluation function is shown as:
t w i r l i n g v , ω = ( 1 μ ) ( x a x v + y a y v )
where μ is the dynamic weight in the evaluation function. The final improved DWA evaluation function obtained is shown as:
C v , ω = λ μ · h e a d i n g _ n e w ( v , ω ) + β · o b d i s t ( v , ω ) + γ · v e l ( v , ω ) + t w i r l i n g ( v , ω )
The introduction of a new rotation cost function improves the DWA algorithm curve smoothness in path planning, allowing for better tracking of actual body movements. In the upcoming section, we will examine effective approaches for vertical obstacle avoidance.

3. Algorithm Design for 3D VFH+

3.1. OctoMap Build Map and Search

During a cooperative obstacle avoidance operation, the UAV will obtain point cloud data using its sensors. Nevertheless, since the limitation of UAVs computational power and sensor measurement range, it may not have explored all surrounding spatial points in an obstacle filled environment. To alleviate the resultant computational load, this section adopts the OctoMap data structure to compress point cloud data and build a map.
OctoMap is a 3D map generation software based on octree, which can display full 3D images including features that are not mapped or overlaid and can estimate the fusion of sensor data through multiple measurements within the grid. The system is characterized by high resolution, compressed data, and small storage space. The octree structure is a spatial partitioning method which has been explored in various operations since the 1980s. It divides the three-dimensional space into eight quadrants wherein each quadrant represents a node in the octree. The octree starts from the root node and when this node is located in an empty three-dimensional space, it is referred to as an empty node. When located in the same dimension, it is known as a black node. Otherwise, it is called a gray node. It is divided into 2 × 2 × 2 sub-nodes based on the orientation of each coordinate axis. This process continues recursively until a node is either empty, or the stereoscopic space in which it is located is homogeneous or reaches a predetermined minimum scale. Figure 3 shows examples of a simple object represented in an octree, illustrating the octree in terms of a three-dimensional raster structure and a tree structure.
In general, the value 0 is used to indicate non-occupation, 1 indicates occupation, and the floating-point number between 0 and 1 indicates the probability of occupation at that specific time. A higher floating-point number indicates a higher probability of the node being occupied by an obstacle. Because the spatial structure description is transformed into octree representation, it can be pruned quickly for three special states: 0, 0.5, and 1 node, thus achieving the purpose of saving space.

3.2. Construction of Two-Dimensional Principal Pole Histogram

The OctoMap introduced in the previous section can divide the environmental space into cubes, and this section will calculate the respective weights for each cube to construct a two-dimensional main polar histogram. The UAV’s current location is the center and d i , j , k is the radius to build a UAV’s exploration range. Only some of the cubes on the surface of the sphere are involved in the construction of the 2D main polar histogram. When the UAV is the center, the coordinates of each cube on the surface of the sphere constructed by the UAV can be determined by two angles. The coordinates of the center of a cube i on the surface of the sphere is x i , y i , z i , the angle between the projection of the cube and the center of the UAV in the x o y plane and the x axis is α z , which is the azimuth angle. The angle between the cube and the center of the UAV and its projection in the x o y plane is α e , which is the pitch angle. The horizontal coordinates β z and vertical coordinates β e of the two-dimensional main polar histogram can be obtained by making certain factor transformations, as Figure 4, Figure 5 and Figure 6 show.
According to Figure 6, the equations for calculating the azimuth and the x-axis coordinates of the two-dimensional main polar histogram are as follows:
α z = arctan x i x 0 y i y 0
β z = 1 α α z
The equations for calculating the pitch azimuth and the y-axis coordinates of the two-dimensional main polar histogram are as follows:
α e = arctan z i z 0 x i x 0 2 + y i y 0 2
β e = 1 α α e
The transformation factor, denoted by 1/α, is used to convert azimuth and pitch angles into the coordinates of the 2D main polar histogram. The size of the UAV is not taken into consideration during the calculation process. The 3DVFH+ algorithm compensates for it by increasing the size of the cube segmented by OctoMap. Additionally, the algorithm determines the maximum and minimum angles of the cube using the calculated compensation factor. The expanded cube size is depicted in Figure 7.
For cube expansion, the main considerations are the drone size r r , the safety radius r s , the cube size r v , and the final expanded radius:
r r + s + v = r r + r s + r v
The compensation factor λ i , j , k is calculated as follows:
λ i , j , k = 1 α arcsin r r + s + v d i , j , k
where d i , j , k is the distance between the center of UAV and the center of cube. From Figure 8 above, we can get:
l i , j , k = d i , j , k r r + s + v
The weight of each cube mapped to the two-dimensional principal pole histogram is calculated as follows:
H z , e p = i , j , k C a o i , j , k 2 a b l i , j , k e β e λ α , β e + λ α & &       z β z λ α , β z + λ α 0   o t h e r w i s e
where C a is a collection of spherical surface cubes constructed by UAV exploration space, a and b are constants that satisfy the following relations:
a b d i , j , k 1 2 2 = 1

3.3. Kinematic Constraint Design

This section focuses on the kinematic constraints of UAV during obstacle avoidance. The x o y plane turn obstacle avoidance model, which is established in the VFH+ algorithm, is shown in Figure 8.
Δ x r = r r cos ψ Δ y r = r r sin ψ Δ x l = r l cos ψ Δ y l = r l sin ψ
The distance from the center of the drone to the two cubes is as follows:
d r = Δ x r Δ x i 2 + Δ y r Δ y j 2
d l = Δ x l Δ x i 2 + Δ y l Δ y j 2
when the possible turning circles of the UAV intersect the occupied cube, the left and right limiting angles φ l and φ r are obtained, and initialization season φ l = φ r = π + ψ :
d r < r r + r r + s + v d l < r l + r r + s + v
If the drone meets ψ < α z < φ r at this time, update φ r = α z if it does. If the drone meets φ l < α z < ψ at this time, update φ l = α z .
Considering the limited climb speed of the quadrotor, a limit is placed on the UAV pitch azimuth. Firstly, the turning distance to the obstacle is calculated using the arc length formula d i s t , then the altitude difference is divided with d i s t to calculate the altitude direction climbing motion coefficient f .
d i s t = 2 π r α z 360 f = z i z 0 d i s t
The max azimuth difference is φ r φ l and the maximum turning distance d i s t max and the maximum height z a z for each cube are as follows:
d i s t max = 2 π r φ r φ l 360
z max = f d i s t max
The final formula for calculating the maximum achievable pitch azimuth is as follows:
α e , max = 1 α arctan z max r 4 2 r 2 cos 270 α z

3.4. Path Detection and Selection

The weights corresponding to each cube in the environment space were calculated in the previous section, and the two-dimensional principal-pole histogram was constructed, and the azimuth upper and lower limits of x o y plane φ l , φ r and the maximum limits of pitch azimuth α e , max in z direction were given considering the kinematic constraints. In this section, we will select the cube cell with the lowest path weight value from the constructed histogram as the moving trajectory in three-dimensional space. We use evaluation functions to determine the current optimal azimuth and pitch azimuth angles.
Let us begin our journey starting at the top-left corner and reaching the destination at the bottom-right, as depicted in Figure 9. We are permitted to move in the top, bottom, left, and right directions, excluding top-left, which moves in the opposite direction. As a result, only the bottom-right corner yields two possible moves. For this reason, each element in the first row of the grid can only be accessed by moving right from the top-left element. Similarly, each element in the first column can only be reached by moving down from the top-left element. During this time, the path becomes unique, and hence the minimum path sum corresponding to each element is the sum of the numbers on the corresponding path. For elements not present in the first row and first column, an adjacent element above each can be reached by moving down by one step, while an adjacent element left of it can be reached by moving right by one step. The minimum path sum corresponding to the element is equal to either the minimum path sum corresponding to the adjacent element above it or the element left of it plus the value of the current element, whichever yields the smallest value. Since each minimum path sum is related to its adjacent elements, dynamic programming can be employed to solve this problem using the subsequent recursive equation:
d p i j = min d p i 1 j , d p i j 1 + g r i d i j
where d p i j denotes the minimum path sum from the upper left corner to the position of i , j . The transition from the previous historical state to the current state exists only in two cases d p i 1 j and d p i j 1 , and the minimum is taken plus the current grid weight. The azimuth and pitch azimuth in each grid are selected by the following cost function for the smaller surrogate value.
k i = μ 1 Δ v z , k t + μ 2 Δ v e , ψ + μ 3 Δ v z , e , k i 1
The first coefficient is determined based on the difference between the pitch azimuth of the line from the current position to the target point k t and the pitch azimuth of the candidate direction v z . The second coefficient is calculated as the difference between the yaw angle of the UAV ψ and the azimuth of the candidate direction v e . Finally, the third coefficient represents the difference between the direction selected in the last historical moment and the currently considered candidate direction v. These three coefficients can be employed to adjust the direction of inclined climbing or horizontal turning motion as selected.

4. Cooperative Obstacle Avoidance by Fusing Improved DWA and 3D VFH+

The dynamic window method is applicable to two-dimensional space avoidance, which can obtain the current optimal velocity v x , y and yaw angle ψ 1 . The 3D VFH+ algorithm can obtain the current optimal azimuth α z and pitch azimuth α e by constructing histogram and cost function. The algorithm can provide pitch azimuth z , thus the two-dimensional DWA algorithm can be extended to three-dimensional space avoidance. The design idea of the hybrid algorithm is to take the average of the optimal yaw angle ψ c of the current UAV, and calculate the directional velocity z based on the pitch angle α e and the forward velocity v x , y of the current UAV. The details are as follows:
v x = v x , y cos ψ c , v y = v x , y sin ψ c , v z = v x , y tan α e ψ c = ψ 1 + α z 2 , φ l α z φ r , α e , max α e α e , max
The design flow chart of the fusion algorithm is shown in Figure 10 below:

5. Simulation and Analysis of Cooperative Formation Obstacle Avoidance

5.1. Static Obstacle Avoidance

This section presents the simulation and validation results of the proposed improved dynamic window method for cooperative obstacle avoidance in formation flight using UAVs. The initial parameters of the simulation are shown in Table 1 below:
The conventional DWA combined with artificial potential field method for 3D cooperative obstacle avoidance is compared with the fused DWA and 3DVFH+ cooperative obstacle avoidance algorithm proposed in this chapter, and the simulation results are as follows:
According to the trajectory shown in Figure 11 and Figure 12, it can be seen that when no obstacles are encountered, the formation is maintained in a “right-angle” shape. After encountering obstacles, each unit in the formation can smoothly avoid them by working together with the obstacle avoidance algorithm. At this time, the original formation shape is temporarily abandoned, and the obstacle avoidance algorithm accounts for a large proportion in the output. Figure 13 shows that the improved DWA algorithm is smoother in speed, with less speed oscillation, and more suitable for actual formation flight.

5.2. Dynamic Obstacle Avoidance

This section of the simulation sets the same conditions as those in Section 5.1, except that some obstacles are added to the motion conditions. Dynamic obstacles are set to green ball, red ball, black ball; where the green ball is along x axis direction in the range of 16–23 m with 1 m/s speed back and forth, the red ball along z axis direction in the range of 15–25 m with 0.6 m/s speed up and down, the black ball along x , y , z three axis direction in the range of 12–18 m with 1.5 m/s speed back and forth, blue ball, purple ball for static obstacles, the final target point to (30,30,30). The UAV detects the obstacle radius of 1.5 m. The simulation results are as follows.
Figure 14 illustrates a 3D spatial trajectory diagram indicating smooth obstacle avoidance by the five UAVs. In the absence of obstacles, the UAVs moved in a “right-angle” formation.
From Figure 15, it can be observed that in the absence of obstacles, the speed of the UAVs in the x, y, and z directions are maintained at 1.3 m/s. After detecting obstacles and with the improved DWA algorithm in effect, resampling in three-dimensional velocity space shows an increase of varying degrees in the positive speed directions of the UAVs x, y, and z axes in order to avoid the obstacles. The combined speed direction drives the UAVs to move away from the direction of the obstacles. Once the obstacles are passed, the output control of cooperative obstacle avoidance accounted for 0 percent, and after each UAV returns to its desired position, the whole formation will converge to the same speed.
Figure 16 displays the shortest distance between each UAV and five moving obstacles: UAV 1 was 1.93 m, UAV 2 was 1.89 m, UAV 3 was 1.8 m, UAV 4 was 1.72 m, and UAV 5 was 1.7 m. These results demonstrate that no collisions occurred between the UAVs and obstacles, indicating the successful achievement of the cooperative obstacle avoidance formation.

5.3. Semi-Physical Simulation

In this section, the fusion algorithm proposed in this paper is verified by semi-physical dynamic obstacle avoidance on AirSim physical engine simulation platform. The initial parameters of the simulation are shown in Table 2 below:
The final simulation results are shown in the following Figure 17:
According to the simulation results of dynamic obstacle avoidance, the initial formation is set to “X” shape, and the dynamic obstacles are set to five UAVs that cross the predetermined trajectory of the formation; Obstacle No. 2 will first conflict with the predetermined motion trajectory of UAV No. 2. Therefore, under the influence of this obstacle, UAV No. 2 will have an operation to modify its own motion trajectory to avoid obstacles, as shown in Figure 17b. In the middle of the rightmost green curve, the zigzag part occurs. At this time, UAV No. 2 first flies to the upper right corner of three-dimensional space, and quickly accelerates back to the original formation position in the upper left corner after avoiding obstacles. Then, UAV No. 5 in the formation may collide with the obstacle No. 1. In this simulation, the UAV No. 5 accelerates first and then decelerates under the action of the cooperative obstacle avoidance algorithm, avoiding the obstacles that originally crashed into itself horizontally and returning to the original formation position, as shown in Figure 17c.
The set dynamic obstacles No. 3–5 also conflict with the motion trajectories of No. 1, No. 4, No. 5, and No. 9 UAV in Figure 17c, so the blue trajectory corresponding to No. 1 UAV moves first from the lower right to the upper left, the pink trajectory corresponding to No. 4 UAV moves first from the lower right to the upper left, the gray trajectory corresponding to No. 5 UAV moves first from the lower left to the upper right, and the green trajectory corresponding to No. 9 UAV moves first from the lower left to the upper right. Figure 17d shows the formation maintenance after finally reaching the destination. It can be seen that the formation can still maintain the original formation after being disturbed by dynamic obstacles, but there are also certain position errors. For example, the pink trajectory and gray trajectory corresponding to UAV No. 4 and UAV No. 5 do not coincide at this time, but there is a distance in the axial direction, which indicates that there is position error when the original formation is restored after dynamic obstacle avoidance.
Based on the simulation results of dynamic obstacle avoidance mentioned above, the control output calculated by the cooperative obstacle avoidance algorithm can ensure a good obstacle avoidance trajectory planning in actual four-rotor formation flight, which has practical engineering value.

6. Conclusions and Future Research

This paper introduces an improved DWA algorithm that optimizes obstacle avoidance for UAVs. Firstly, the azimuth evaluation function in the DWA algorithm is optimized by introducing the target distance. Additionally, the A* algorithm is integrated to replace the fixed weights in the azimuth evaluation function, thereby improving the search efficiency of the DWA algorithm. A rotation cost function is introduced into the evaluation function, which effectively smoothens the path and resolves the two-dimensional plane formation obstacle avoidance problem for UAVs by constraining large-angle rotation frequency. Moreover, the 3DVFH+ algorithm is incorporated to efficiently acquire the pitch azimuth and extend the cooperative obstacle avoidance function for two-dimensional plane formation to three-dimensional space formation. Simulation results demonstrate the effectiveness of this approach in multi-aircraft formation obstacle avoidance path planning.
This paper presents a fusion algorithm for multi-UAV cooperative formation obstacle avoidance path planning. The algorithm’s effectiveness is verified through simulation, yielding favorable results. However, the current research process has certain limitations. Notably, when dealing with dynamic obstacles, the speed of both moving obstacles and the advancing UAV formation is insufficient, necessitating further consideration for obstacle avoidance with medium- and high-speed obstacles. In future research, introducing more improvement strategies can enhance the algorithm’s performance. Additionally, physical simulation in a real environment will be explored to further verify the algorithm’s effectiveness.

Author Contributions

Conceptualization, X.W. and H.G.; methodology, M.C.; software, S.Z.; validation, X.W., M.C., H.G., and S.Z.; writing—review, X.W., M.C., H.G., and S.Z.; All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Huang, G.; Hu, M.; Yang, X.; Lin, P. Multi-UAV Cooperative Trajectory Planning Based on FDS-ADEA in Complex Environments. Drones 2023, 7, 55. [Google Scholar] [CrossRef]
  2. Li, B.; Gan, Z.; Chen, D.; Aleksandrovich, S. UAV Maneuvering Target Tracking in Uncertain Environments Based on Deep Reinforcement Learning and Meta-Learning. Remote Sens. 2020, 12, 3789. [Google Scholar] [CrossRef]
  3. Wei, Z.; Meng, Z.; Lai, M.; Wu, H.; Han, J.A.; Feng, Z. Anti-collision Technologies for Unmanned Aerial Vehicles: Recent Advances and Future Trends. IEEE Internet Things J. 2022, 9, 7619–7638. [Google Scholar] [CrossRef]
  4. Wu, E.; Sun, Y.; Huang, J.; Zhang, C.; Li, Z. Multi UAV Cluster Control Method Based on Virtual Core in Improved Artificial Potential Field. IEEE Access 2020, 8, 131647–131661. [Google Scholar] [CrossRef]
  5. Zhang, J.; Yan, J.; Zhang, P.; Kong, X. Design and Information Architectures for an Unmanned Aerial Vehicle CooperativeFormation Tracking Controller. IEEE Access 2018, 6, 45821–45833. [Google Scholar] [CrossRef]
  6. Li, B.; Yang, Z.P.; Chen, D.Q.; Liang, S.Y.; Ma, H. Maneuvering target tracking of UAV based on MN-DDPG and transfer learning. Def. Technol. 2021, 17, 10. [Google Scholar]
  7. Bian, L.; Sun, W.; Sun, T. Trajectory Following and Improved Differential Evolution Solution for Rapid Forming of UAV Formation. IEEE Access 2019, 7, 169599–169613. [Google Scholar]
  8. Liu, W.; Zheng, X.; Luo, Y. Cooperative search planning in wide area via multi-UAV formations based on distance probability. In Proceedings of the 2020 3rd International Conference on Unmanned Systems (ICUS), Harbin, China, 27–28 November 2020; pp. 1072–1077. [Google Scholar]
  9. Wang, D.; Wu, M.; He, Y.; Pang, L.; Xu, Q.; Zhang, R. An HAP and UAVs Collaboration Framework for Uplink Secure Rate Maximization in NOMA-Enabled IoT Networks. Remote Sens. 2022, 14, 4501. [Google Scholar]
  10. Sahu, A.; Kandath, H.; Krishna, K.M. Model predictive control based algorithm for multi-target tracking using a swarm of fixed wing UAVs. In Proceedings of the 2021 IEEE 17th International Conference on Automation Science and Engineering (CASE), Lyon, France, 23–27 August 2021; pp. 1255–1260. [Google Scholar]
  11. Ille, M.; Namerikawa, T. Collision avoidance between multi-UAV systems considering formation control using MPC. In Proceedings of the 2017 IEEE International Conference on Advanced Intelligent Mechatronics (AIM), Munich, Germany, 3–7 July 2017; pp. 651–656. [Google Scholar]
  12. Farooq, M.U.; Ziyang, Z.; Ejaz, M. Quadrotor UAVs Flying Formation Reconfiguration with Collision Avoidance Using Probabilistic Roadmap Algorithm. In Proceedings of the 2017 International Conference on Computer Systems, Electronics and Control (ICCSEC), Dalian, China, 25–27 December 2017; pp. 866–870. [Google Scholar]
  13. Li, J.; Zhang, W.; Su, H.; Yang, Y.; Zhou, H. Coordinated Obstacle Avoidance with Reduced Interaction. Neurocomputing 2014, 139, 233–245. [Google Scholar] [CrossRef]
  14. Onuoha, O.; Tnunay, H.; Ding, Z. Affine Formation Maneuver Control of Multi-Agent Systems with Triple-Integrator Dynamics. In Proceedings of the 2019 American Control Conference (ACC), Philadelphia, PA, USA, 10–12 July 2019; pp. 5334–5339. [Google Scholar]
  15. Li, Y.; Tian, B.; Yang, Y.; Li, C. Path planning of robot based on artificial potential field method. In Proceedings of the 2022 IEEE 6th Information Technology and Mechatronics Engineering Conference (ITOEC), Chongqing, China, 4–6 March 2022; pp. 91–94. [Google Scholar]
  16. Liang, Q.; Zhou, H.; Xiong, W.; Zhou, L. Improved artificial potential field method for UAV path planning. In Proceedings of the 2022 14th International Conference on Measuring Technology and Mechatronics Automation (ICMTMA), Changsha, China, 15–16 January 2022; pp. 657–660. [Google Scholar]
  17. Zhang, S.; Xu, M.; Wang, X. Research on Obstacle Avoidance Algorithm of Multi-UAV Consistent Formation Based on Improved Dynamic Window Approach. In Proceedings of the 2022 IEEE Asia-Pacific Conference on Image Processing, Electronics and Computers (IPEC), Dalian, China, 14–16 April 2022; pp. 991–996. [Google Scholar]
  18. Fox, D.; Burgard, W.; Thrun, S. The Dynamic Window Approach to Collision Avoidance. IEEE Robot. Autom. Mag. 1997, 4, 23–33. [Google Scholar] [CrossRef] [Green Version]
  19. Li, L.; Sheng, W. Collision Avoidance Dynamic Window Approach in Multi-agent System. In Proceedings of the 2020 Chinese Automation Congress (CAC), Shanghai, China, 6–8 November 2020; pp. 2307–2311. [Google Scholar]
  20. Liu, T.; Yan, R.; Wei, G.; Sun, L. Local Path Planning Algorithm for Blind-guiding Robot Based on Improved DWA Algorithm. In Proceedings of the 2019 Chinese Control and Decision Conference (CCDC), Nanchang, China, 3–5 June 2019; pp. 6169–6173. [Google Scholar]
  21. Hart, P.E.; Nilsson, N.J.; Raphael, B. A Formal Basis for the Heuristic Determination of Minimum Cost Paths. IEEE Trans. Syst. Sci. Cybern. 1968, 4, 100–107. [Google Scholar] [CrossRef]
  22. Guan, C.; Wang, S. Robot Dynamic Path Planning Based on Improved A* and DWA Algorithms. In Proceedings of the 2022 4th International Conference on Control and Robotics (ICCR), Guangzhou, China, 2–4 December 2022; pp. 1–6. [Google Scholar]
  23. Li, X.; Hu, X.; Wang, Z.; Du, Z. Path Planning Based on Combinaion of Improved A-STAR Algorithm and DWA Algorithm. In Proceedings of the 2020 2nd International Conference on Artificial Intelligence and Advanced Manufacture (AIAM), Manchester, UK, 15–17 October 2020; pp. 99–103. [Google Scholar]
  24. Li, S.; Zheng, H.; Yang, C.; Wu, C.; Wang, H. Based on A* and DWA algorithm hybrid path planning algorithm study. J. Jilin Univ. (Inf. Sci. Ed.) 2022, 40, 132–141. [Google Scholar]
Figure 1. Trajectory diagram.
Figure 1. Trajectory diagram.
Drones 07 00504 g001
Figure 2. Target navigation schematic.
Figure 2. Target navigation schematic.
Drones 07 00504 g002
Figure 3. Two structural descriptions of octree. (a) 3D structure description of octree. (b) Tree structure description of octree.
Figure 3. Two structural descriptions of octree. (a) 3D structure description of octree. (b) Tree structure description of octree.
Drones 07 00504 g003
Figure 4. Two-dimensional polar histogram.
Figure 4. Two-dimensional polar histogram.
Drones 07 00504 g004
Figure 5. Environmental Information Modeling.
Figure 5. Environmental Information Modeling.
Drones 07 00504 g005
Figure 6. Single cube angle calculation model.
Figure 6. Single cube angle calculation model.
Drones 07 00504 g006
Figure 7. Node scaling calculation model.
Figure 7. Node scaling calculation model.
Drones 07 00504 g007
Figure 8. Planar turning and obstacle avoidance model.
Figure 8. Planar turning and obstacle avoidance model.
Drones 07 00504 g008
Figure 9. Histogram path selection diagram.
Figure 9. Histogram path selection diagram.
Drones 07 00504 g009
Figure 10. Flow chart of fusion algorithm.
Figure 10. Flow chart of fusion algorithm.
Drones 07 00504 g010
Figure 11. Formation cooperative obstacle avoidance 3D trajectory map.
Figure 11. Formation cooperative obstacle avoidance 3D trajectory map.
Drones 07 00504 g011
Figure 12. Position of each UAV in X, Y, and Z directions for cooperative obstacle avoidance in formation. (a) X-direction position of each UAV. (b) Y-direction position of each UAV. (c) Z-direction position of each UAV.
Figure 12. Position of each UAV in X, Y, and Z directions for cooperative obstacle avoidance in formation. (a) X-direction position of each UAV. (b) Y-direction position of each UAV. (c) Z-direction position of each UAV.
Drones 07 00504 g012
Figure 13. Velocity of UAV in x, y, and z directions under traditional and improved DWA algorithm. (a) X-direction velocity of UAV under traditional DWA. (b) X-direction velocity of UAV under improved DWA. (c) Y-direction velocity of UAV under traditional DWA. (d) Y-direction velocity of UAV under improved DWA. (e) Z-direction velocity of UAV under traditional DWA. (f) Z-direction velocity of UAV under improved DWA.
Figure 13. Velocity of UAV in x, y, and z directions under traditional and improved DWA algorithm. (a) X-direction velocity of UAV under traditional DWA. (b) X-direction velocity of UAV under improved DWA. (c) Y-direction velocity of UAV under traditional DWA. (d) Y-direction velocity of UAV under improved DWA. (e) Z-direction velocity of UAV under traditional DWA. (f) Z-direction velocity of UAV under improved DWA.
Drones 07 00504 g013
Figure 14. A 3D trajectory diagram of each machine for dynamic obstacle avoidance.
Figure 14. A 3D trajectory diagram of each machine for dynamic obstacle avoidance.
Drones 07 00504 g014
Figure 15. Velocity of UAV in x, y, and z directions under dynamic obstacle avoidance. (a) X-direction velocity of UAV. (b) Y-direction velocity of UAV. (c) Z-direction velocity of UAV.
Figure 15. Velocity of UAV in x, y, and z directions under dynamic obstacle avoidance. (a) X-direction velocity of UAV. (b) Y-direction velocity of UAV. (c) Z-direction velocity of UAV.
Drones 07 00504 g015
Figure 16. Distance between UAV and various obstacles. (a) Distance between UAV No. 1 and various obstacles. (b) Distance between UAV No. 2 and various obstacles. (c) Distance between UAV No. 3 and obstacles. (d) Distance between UAV No. 4 and obstacles. (e) Distance between UAV No. 5 and obstacles.
Figure 16. Distance between UAV and various obstacles. (a) Distance between UAV No. 1 and various obstacles. (b) Distance between UAV No. 2 and various obstacles. (c) Distance between UAV No. 3 and obstacles. (d) Distance between UAV No. 4 and obstacles. (e) Distance between UAV No. 5 and obstacles.
Drones 07 00504 g016
Figure 17. Dynamic obstacle avoidance simulation diagram. (a) Initial formation. (b) Trajectory global graph. (c) Local trajectory map. (d) Final formation.
Figure 17. Dynamic obstacle avoidance simulation diagram. (a) Initial formation. (b) Trajectory global graph. (c) Local trajectory map. (d) Final formation.
Drones 07 00504 g017
Table 1. Initialization of system parameters.
Table 1. Initialization of system parameters.
Serial NumberParameters NameParameter Value
1UAV1 starting position(−5 m, 0 m, 1 m)
2UAV2 starting position(−10 m, 0 m, 1m)
3UAV3 starting position(0 m, −5 m,1 m)
4UAV4 starting position(0 m, −10 m,1 m)
5UAV5 starting position(0 m, 0 m, 1 m)
6Obstacle 1 starting position(18 m, 23 m, 24 m)
7Obstacle 2 starting position(9 m, 19 m, 20 m)
8Obstacle 3 starting position(15 m, 15 m, 15 m)
9Obstacle 4 starting position(19 m, 14 m, 20 m)
10Obstacle 5 starting position(23 m, 13 m, 24 m)
11Number of UAVs N5
12Number of Obstacles N5
13Obstacle radius1.5 m
Table 2. Initialization of system parameters.
Table 2. Initialization of system parameters.
Serial NumberParameters NameParameter Value
1UAV1 starting position(3 m, 3 m, 15 m)
2UAV2 starting position(6 m, 6 m, 15 m)
3UAV3 starting position(6 m, −6 m, 15 m)
4UAV4 starting position(3 m, −3 m, 15 m)
5UAV5 starting position(−3 m, −3 m, 15 m)
6UAV6 starting position(−3 m, 3 m, 15 m)
7UAV7 starting position(−6 m, 6 m, 15 m)
8UAV8 starting position(−6 m, −6 m, 15 m)
9UAV9 starting position(0 m, 0 m, 15 m)
10Formation speed(2 m/s, 0, 0)
11Obstacle 1 starting position(45 m, −77 m, 15 m)
12Obstacle 1 speed(0, 3 m/s, 0)
13Obstacle 2 starting position(58 m, −26 m, 15 m)
14Obstacle 2 speed(−3 m/s, 3 m/s, 0)
15Obstacle 3 starting position(187 m, −127 m, 139 m)
16Obstacle 3 speed(−4 m/s, 4 m/s, 4 m/s)
17Obstacle 4 starting position(187 m, −121 m, 139 m)
18Obstacle 4 speed(−4 m/s, 4 m/s, 4 m/s)
19Obstacle 5 starting position(184 m, −124 m, 139 m)
20Obstacle 5 speed(−4 m/s, 4 m/s, 4 m/s)
21Number of UAVs N9
22Number of Obstacles N5
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wang, X.; Cheng, M.; Zhang, S.; Gong, H. Multi-UAV Cooperative Obstacle Avoidance of 3D Vector Field Histogram Plus and Dynamic Window Approach. Drones 2023, 7, 504. https://doi.org/10.3390/drones7080504

AMA Style

Wang X, Cheng M, Zhang S, Gong H. Multi-UAV Cooperative Obstacle Avoidance of 3D Vector Field Histogram Plus and Dynamic Window Approach. Drones. 2023; 7(8):504. https://doi.org/10.3390/drones7080504

Chicago/Turabian Style

Wang, Xinhua, Mingyan Cheng, Shuai Zhang, and Huajun Gong. 2023. "Multi-UAV Cooperative Obstacle Avoidance of 3D Vector Field Histogram Plus and Dynamic Window Approach" Drones 7, no. 8: 504. https://doi.org/10.3390/drones7080504

Article Metrics

Back to TopTop