applied sciences Article Research on the Collision Avoidance Algorithm for Fixed-Wing UAVs Based on Maneuver Coordination and Planned Trajectories Prediction Yu Wan , Jun Tang * and Songyang Lao * College of systems engineering, National University of Defense Technology, Changsha 410073, China; wanyu13@nudt.edu.cn * Correspondence: jun.tang@e-campus.uab.cat (J.T.); laosongyang@nudt.edu.cn (S.L.)  Received: 15 January 2019; Accepted: 21 February 2019; Published: 25 February 2019  Abstract: This paper presents a novel collision avoidance (CA) algorithm for a cooperative fixed-wing unmanned aerial vehicle (UAV). The method is based on maneuver coordination and planned trajectory prediction. Each aircraft in a conflict generates three available maneuvers and predicts the corresponding planned trajectories. The algorithm coordinates planned trajectories between participants in a conflict, determines which combination of planned trajectories provides the best separation, eventually makes an agreement on the maneuver for collision avoidance and activates the preferred maneuvers when a collision is imminent. The emphasis is placed on providing protection for UAVs, while activating maneuvers late enough to reduce interference, which is necessary for collision avoidance in the formation and clustering of UAVs. The CA has been validated with various simulations to show the advantage of collision avoidance for continuous conflicts in multiple, high-dynamic, high-density and three-dimensional (3D) environments. It eliminates the disadvantage of traditional CA, which has high uncertainty, and takes the performance parameters of different aircraft into consideration and makes full use of the maneuverability of fixed-wing aircraft. Keywords: fixed-wing UAV; Collision avoidance; conflict resolution; maneuver coordination 1. Introduction There are many studies in collision avoidance that could be sorted out into two main domains, i.e., tactical and strategic [1]. The first is the geometric algorithm, which analyzes the relative motion of aircraft in geometric space and implements passive collision avoidance under the procedure of detection-avoidance [2–5]. The other is the track planning algorithm, which actively plans the conflict-free flight path from the current position to the destination based on the perception detection of obstacles under the constraint of minimum safety separation distance. The geometric algorithm is widely researched. Chakravarthy A [3] and Carbone C [4] proposed a novel collision cone approach for irregularly shaped moving objects with unknown trajectories. Luongo S [5] improved the 3D analytical algorithm by proposing a cylindrical safety bubble that allows different minimum separations of the vertical and horizontal planes with respect to the nominal trajectory to be achieved. The performances of such system, using active obstacle detection through radar, have been discussed in the paper [6]. Geometric algorithm is intuitive with low computing cost and always provides an optimal solution in 3D environments whether the aircraft cooperates or not. But most of the current Genetic Algorithm (GA) only focus on pairwise encounters. For multiple conflict resolution, more complicated algorithm should be considerable, the calculation amount of checking each threat repeatedly becomes inconsiderably massive. Smith A L [7] presented an aggregate collision cone approach to allow aircrafts to detect and avoid collisions with more threats simultaneously. But there Appl. Sci. 2019, 9, 798; doi:10.3390/app9040798 www.mdpi.com/journal/applsci Appl. Sci. 2019, 9, 798 2 of 20 are only three aircrafts in experiments [8]. The geometric algorithm to be used, furthermore, is also dependent, to some extent, from the available sensors onboard, as emphasized in the paper [9]. The main aspects of the track planning algorithm include the potential field method [10–12], linear programming, discretized space domain and stochastic theory methods, and so on. Liu J Y [11] improved the artificial potential field by combining the Lyapunov theorem to make the disturbing balance points divergent so that the Unmanned Aerial Vehicle (UAV) can avoid the minimum point. Ruchti J [12] modified the artificial potential fields by combining a priority system to prevent the special case of an aircraft circling its destination. The artificial potential field has the advantage of rapid respondent speed, small computation capacity and real-time property. However, there exist some problems, such as the unreachable goal and the existence of a local minimum point value, and these do not apply to the fixed-wing aircraft due to continuous adjustment and an unstable state [13]. To plan an optimal trajectory for collision avoidance, Xiaohua X [14] developed an algorithm of modified Grossberg neural network (GNN) to get the trajectories outside of the danger zone based on current sensor information and mission objectives. GNN has been used earlier in robot applications and is implementable in UAVs that have limited capabilities. Cheng P [15] developed an algorithm of rapidly exploring random trees (RRT), Y. Kuwata [16] proposed an algorithm of mixed integer linear programming (MILP), and Cekmez U [17], Nikolos I K [18], Yao X [19] applied ant colony optimization algorithm (ACO). These algorithms have obvious defects of limited application; they apply mostly to an immovable obstacle and cannot solve a dynamic obstacle. In addition, they require massive iterative calculation, which suits of-line route planning but not real-time planning. To solve the multi-aircraft conflict, Manathara J G [20] proposed a consensus algorithm to solve the rendezvous problem by attaining a consensus on the estimated time of arrivals. However, it could not manage dynamic obstacles. Archibald [21] proposed a satisficing decision theory by applying the game theory, but it lacks efficiency and suits a 2D model of airspace. George J [22] developed a reactive inverse proportional navigation (PN) algorithm by increasing Line of Slight (LOS) rate, but the algorithm is inefficient and defective in some scenarios. Sharma R K [23] applied swarm intelligence techniques to collision avoidance between UAVs. Turner R [24] Ikeda Y [25] Wadley J [26] introduced an automatic air collision avoidance system (Auto ACAS) that coordinates maneuver trajectories between fighters. Although Auto-ACAS applies to fighters, it provides a good concept for the collision avoidance of fixed-wing UAVs. Traffic Collision Avoidance System (TCAS) is designed as the final safeguard to resolve midair collisions (MACs) and evidently decrease near midair collisions (NMACs) in the aviation densities of up to 24 aviation vehicles within a 5NM radius [27]. There is great difference between the proposed methodology and the TCAS. Firstly, TCAS only suggests maneuvers in vertical direction to the pilot, while the proposed methodology includes automatic maneuver implementation in all directions. Secondly, The TCAS performs well in solving one-on-one threats between traditional aircrafts, but in some complex situations, TCAS would issue improper maneuvers while a new secondary encounter is induced to the nearby (remotely piloted aircraft) RPA of previous operations [28]. While the proposed methodology is designed for multiple threats in formation and clusters. The coordination of maneuvers is among all participants in a conflict. Thirdly, the logics are quite different. In TCAS, an RA is produced in real time, the direction choosing and change of vertical speed depends on the current relative situation, while in proposed methodology, the maneuver style (MS) is pre-set to a group of specific categories, the aircrafts choose from the specified maneuver styles. Aiming to solve the defects of traditional CA, this paper presents a novel collision avoidance algorithm for fixed-wing UAVs based on maneuver coordination and planned trajectory prediction, which takes full advantage of the maneuverability of fixed-wing UAVs and generates the collision avoidance maneuver based on the coordination of planned trajectories. The proposed algorithm is classified as the mixed style, which has features that refer to both tactical and strategic domains addressed in the literature analysis. When solving collision, the proposed algorithm plans collision-free safety routes (planned trajectories) for UAVs, and in module of maneuver evaluation and maneuver Appl. Sci. 2019, 9, 798 3 of 20 activation, it draws lessons from methods of Point of closed Approach (PCA), and Collision Cone Approach (CCA). This paper is organized as follows: Section 2 summarizes the operational principle; Section 3 describes the module of maneuver generation and presents the module of trajectory prediction; Section 4 presents the module of treat management; Section 5 presents the module of maneuver evaluation; Section 6 presents the module of maneuver activation; Section 7 presents a couple of scenario simulations and their results; Finally, the conclusions and future work are summarized in Section 8. 2. Operational Principle Among fixed-wing UAVs in a conflict, which are called participants, the algorithm coordinates available maneuvers, generates and shares responding planned trajectories, decides the combination of planned trajectories to provide the best separation, and activates the preferred maneuvers when a collision is extremely imminent. The structure of the algorithm is shown in Figure 1. Based on the host condition, navigation solution, radar target location, data link and other information, each host aircraft determines the severity of the risk posed by the threat aircraft. Through a special datalink, UAVs that are participants in a conflict communicate with each other. According to the relative position and motion between participants, each participant chooses three maneuvers from a pool of nine available maneuvers that may be performed to avoid collision. Three trajectories responding to the three maneuvers are generated through the trajectory prediction module and then are shared among the participants via a data link. The evaluation module compares the combinations of the planned trajectories and determines the optimal combination of maneuvers with the maximal separation. In the optimal combination of maneuvers, each participant has a preferred maneuver. The system updates and repeats the above procedure, thus generating new maneuvers and evaluating a combination of maneuvers at regular intervals. Meanwhile, the system will activate the preferred maneuver when the planned trajectories converge in time and space. The five modules of the algorithm are as follows: 1. Module of maneuver generation: the module chooses three maneuvers from a pre-set pool of nine available maneuvers according to the relative situation and motion between the host aircraft and threats. 2. Module of trajectory prediction: the module predicts the three planned trajectories responding to the three maneuvers. The trajectories are predicted based upon the current status and control parameters. 3. Module of threat management: the module of threat management determines if a UAV poses a threat to the host aircraft and evaluates the risk degree of threats. 4. Module of maneuver evaluation: the module evaluates combinations of three planned trajectories of each participant and determines which combination can delay the activation of the maneuver as far as possible. Through the maneuver evaluation, the three maneuvers are tagged as one preferred maneuver and two alternative maneuvers separately. Once tagged, the determination is shared among each participant 5. Module of maneuver activation: the module judged whether the planned trajectories of participants will converge in time and space. If so, the preferred maneuver is activated, and the aircraft will maneuver to avoid collision. Appl. Sci. 2019, 9, 798 4 of 20 Appl. Sci. 2019, 9, x 4 of 20 Maneuver generation Trajectory Predictiion Module Module Planned trajectory STATE Maneuver Evaluation Original trajectory Module Module of Maneuver Activation NAVIGATION Geometric situation Threat Management Module DATALINK/ 3D OTHER Maneuver Information of maneuver Figure Figure 1. 1. Structure Structureof ofthe thealgorithm. algorithm. 3.3.Module Moduleof ofManeuver Maneuver Generation Generation Fixed-wing Fixed-wing UAVs UAVs havehave highhigh maneuverability maneuverability and andflexibility flexibilityandandcancanmake makevarious various maneuvers, maneuvers, such suchasasrolls rollsand andclimbing. climbing. Generally, in the conventional conventionalcollision collisionavoidance avoidancealgorithm, algorithm,the the aircraft aircraft maneuvers maneuvers are are modelled modelled according according to to aa three three degrees degreesof offreedom freedommotion motionrather ratherthanthansixsixdegrees degrees ofof freedom freedommotion. motion. The 3 Degrees of Freedom Freedom (3DOF)(3DOF)motion motionisisalways alwaysused usedininalgorithms algorithmsininwhich which collisionavoidance collision avoidanceoccurs occurs moremore thanthan 20 s20 s before before the collision, the collision, the performance the performance parametersparameters of of different different aircraft areaircraft not taken are into not taken into consideration, consideration, and the procedure and the procedure of the is of the maneuver maneuver ignored. is ignored.in However, However, this in this paper, the paper,avoidance collision the collision avoidance occurs occurs approximately approximately 5 s before the5 collision, s before the and collision, and theof the procedure procedure the maneuver of the maneuver is the procedure is the of procedure of collisionFixed-wing collision avoidance. avoidance. Fixed-wing aircrafts canaircrafts generate cana generate maneuver a maneuver style style (MS) (MS) in almost in almost for all directions all directions for collision collision avoidance. avoidance. However, However, in relevant in relevant studies [24–26], studies the MS [24–26], the MS is set to a group of specific categories. In this paper, according is set to a group of specific categories. In this paper, according to the characteristics of fixed-wing to the characteristics of fixed-wing aircraft, the MSaircraft, is defined the to MS is defined nine to nine types. types. Restricting MSRestricting MS to can to special types special types reduce thecan reduce system the budget, system budget, improve calculation speed, and ensure rapid response to collision. improve calculation speed, and ensure rapid response to collision. As shown in Table 1, in this paper, As shown in Table 1, in the MSthis paper,ofthe consists MSroll-and-pull seven consists of seven roll-and-pull maneuvers, one divemaneuvers, maneuver oneanddive onemaneuver and one maintain maneuver. maintain maneuver. The roll-and-pull maneuvers describe an The roll-and-pull maneuvers describe an aircraft that is commanded to bank angle while aircraft that is commanded to pulling bank aangle while pulling 5 g overload. The abank5 g overload. commandThe bank is an command change incremental is an incremental change from from the current bankthe anglecurrent at the bank angle at the discrete ◦command ◦ of ◦ -90°, ◦ -60°, ◦ -30°, ◦ 0°, ◦ 30°, 60°, 90°. The discrete command of −90 , −60 , −30 , 0 , 30 , 60 , 90 . The dive maneuver is that the aircraft holds dive maneuver is that the aircraft holds a constant bank angle while performing a -0.5 g push. The maintain maneuver is that a constant bank angle while performing a -0.5 g push. The maintain maneuver is that the bank angle the bank angle and g-loading are held constant. Seven of nine MS are specified as climbing for the and g-loading are held constant. Seven of nine MS are specified as climbing for the consideration of consideration of safety. Compared with climbing, diving has the risk of ground collision. In addition, safety. Compared with climbing, diving has the risk of ground collision. In addition, for a fixed-wing for a fixed-wing UAV, a roll is the most agile maneuver for collision avoidance. UAV, a roll is the most agile maneuver for collision avoidance. Table 1. Maneuver style. Table 1. Maneuver style. Maneuver Style (MS) Change of Bank Angle Overload Maneuver Style (MS) Change of Bank Angle Overload Roll and pull −90° +5 g Roll and pull − 90 ◦ Roll and pull −60° +5+5g g Roll and pull −60◦ +5 g Roll and pull −30° ◦ +5 g Roll and pull −30 +5 g Roll and pull Roll and pull 0° 0 ◦ +5+5g g Roll and Roll andpull pull 30° 30 ◦ +5+5g g Roll and Roll andpull pull 60◦ 60° +5+5g g Roll Roll and andpull pull 90◦ 90° +5+5g g Maintain ◦ Maintain 0°0◦ 0 g0 g Dive 0 −0.5 g Dive 0° −0.5 g Due to the hardware limitation of computing, processing and data transmission, each aircraft onlyDue to the shares hardware three limitation trajectories amongofparticipants. computing, Therefore, processingthe andalgorithm data transmission, each aircraft should choose three only shares three trajectories among participants. Therefore, the algorithm should available maneuvers from the nine maneuvers first. The procedure of preselection does not needchoose three Appl. Sci. 2019, 9, 798 5 of 20 Appl. Sci. 2019, 9, x 5 of 20 available maneuvers from the nine maneuvers first. The procedure of preselection does not need data-transportation data-transportation among among participants participants and and isis only only based based on on the the geometric geometric relations relations and and motion motion relations between between the the host host aircraft aircraftand andthreats, threats,including includingthose thosethat thatare areforward forward oror backward, backward, above above or or below, below, or on or on thethe leftleft or right or right side side of the of the aircraft. aircraft. 4. Module 4. Module of of Trajectory Trajectory Prediction Prediction The module The module of of trajectory trajectory prediction prediction generates generates the the future future trajectory trajectory basedbased on on state state and and control control parameters using the six-degrees-of-freedom simulation. Three parameters using the six-degrees-of-freedom simulation. Three planned trajectories corresponding planned trajectories corresponding to three to three maneuvers maneuvers are are generated generated and and areare shared shared among participants. According among participants. According to to the the principle principle of of noninterference, activation noninterference, activation of of the the maneuver maneuver often often occurs occurs three three toto four four seconds seconds before before thethe collision, collision, and most and most maneuvers maneuvers last last only only twotwo toto three three seconds. seconds. Therefore, Therefore, the the forecast forecast time time is is required required to to exceed exceed 44 s, s, but but longlong forecast forecast time time willwill prominently prominently increase increase the the amount amount of of computation. Comprehensively computation. Comprehensively considering the collision avoidance effect and the operation considering the collision avoidance effect and the operation cost, the forecast duration in cost, the forecast duration in this this paper paper is set to 5 s, and the module generates the future planned trajectories from the present to 5 s later.later. is set to 5 s, and the module generates the future planned trajectories from the present to 5 s As As shown shown in Figure in Figure 2, the 2, the planned planned trajectory trajectory is is a conicalregion a conical regionwhose whosesize sizedepends dependson onthe theuncertainty uncertainty over time. time. Considering Consideringthe the factors factorssuch as accuracy, such as accuracy, efficiency and theand efficiency performance of UAVs of the performance provided UAVs by our team provided by comprehensively, our team comprehensively, the frequency of this module the frequency of thisismodule set to 10isHz. set The to 10predicted trajectory Hz. The predicted consists ofconsists trajectory 50 discreteof 50 positions. discrete As is shownAs positions. in the figure,in is shown thethe planned figure,trajectory the planned is a trajectory conical region is a CR ( t, t + ∆t ) , ∆t conical region CR 𝑡, 𝑡 + ∆𝑡 , ∆𝑡 ∈ 0, 𝑇 , the midline of it is the predicted trajectory constructed by 50 ∈ ( 0, T ) , the midline of it is the predicted trajectory constructed by 50 predictive predictive (t + ∆t), and positions Ppositions P 𝑡 +the ∆𝑡 cross-section size represents , and the cross-section the error radius size represents the error (∆t), which UDradius UD ∆𝑡depends , which depends on the uncertainty of the trajectory prediction and increases over time ∆𝑡. The set ofradius on the uncertainty of the trajectory prediction and increases over time ∆t. The set of error error is to ensure radius that most is to ensure thatofmost the actual predicted of the actual trajectories predicted fall within trajectories the conical fall within region.region. the conical The error The radiusradius error is relevant with uncertainties is relevant includingincluding with uncertainties navigation uncertainty, navigation trajectory prediction uncertainty, trajectory uncertainty, prediction trajectory reconstruction uncertainty, trajectory uncertainty, reconstruction data uncertainty, link transmission datauncertainty, and uncertainty link transmission in track data uncertainty, and 2 computation. uncertainty in The trackerror dataradius UD(∆t) The computation. is the quadratic error UD ∆𝑡 of radiusfunction time: is the UD(∆t) function quadratic = a.(∆t)of +time: b.∆t. UD The∆𝑡 index = 𝑎.of∆𝑡 a and+ 𝑏.b ∆𝑡. is relevant The index withoftypes a andofbaircraft, is relevantequipment with types and ofenvironment. They canand aircraft, equipment be obtained by actual experiment through comparing the environment. They can be obtained by actual experiment through comparing the predicted predicted trajectories with the real trajectories. Consideringwith trajectories UAVs theprovided by our team real trajectories. and the performance Considering UAVs provided of experiments, by our team the andvalue of a is 0.425, the performance theexperiments, of value of b isthe 1.19. The of value model of conical a is 0.425, region the value of is as1.19. b is follows: The model of conical region is as follows: ∀∀CR CR(t𝑡+ +∆t ⊆ (PP(t𝑡 + ∆𝑡) ⊆ + ∆t ∆𝑡) − − UD UD (∆𝑡 ∆t) PP(t𝑡++∆t ∆𝑡) ++UD UD(∆t ∆𝑡)),, ∆𝑡 ∆t ∈ ∈ (0, 0,𝑇T ) (1) (1) UD(Δt) Predicted Trajectory Predicted Position P(t+Δt) CR(t,t+Δt) Starting Position P(t) Planned trajectories. Figure 2. Planned Figure trajectories. The module The module of of trajectory trajectory prediction prediction is is based based on on the the six-degrees-of-freedom six-degrees-of-freedom aircraft aircraft model. model. According to According to standard standard build-up method using build-up method using dimensionless coefficients, we dimensionless coefficients, we establish establish and and approximate force and moments [29]. approximate force and moments. [29] 5. Module of Threat Management During the encounter of clusters of UAVs, a UAV might be threatened by multiple aircraft. However, due to the hardware limitation of computing, processing and data transmission, it is Appl. Sci. 2019, 9, 798 6 of 20 5. Module of Threat Management During the encounter of clusters of UAVs, a UAV might be threatened by multiple aircraft. However, due to the hardware limitation of computing, processing and data transmission, it is impossible for the host UAV to respond to all threats by UAVs at the same time. The system only concentrates on the three most imminent threats. The module of threat management monitors each surrounding aircraft and scores each of the threats to decide the three greatest threats. The system updates the threats at regular times, which is the same as the cycle in the module of trajectory prediction. Through the procedure, the module reduces the full threat list to a shorter list of the most at-risk aircraft which is defined as threats. The risk degree (R) is determined by a weighted combination of the relative distance (RD) and the relative speed (RS). The risk range between aircraft A and T is as follows. RS R= , RS > 0 (2) RD q RD = (uA − uT )2 + (vA − vT )2 + (wA − wT )2 (3) ( x T − x A ) × (u T − u A ) + (y T − y A ) × (v T − v A ) + (z T − z A ) × (wT − w A ) RS = q (4) ( x T − x A )2 + ( y T − y A )2 + ( z T − z A )2 When aircraft are separating, the relative speed is negative, and it is eliminated from the scoring equation. When aircrafts are approaching, the relative speed is positive, and higher relative speed means higher approaching speed. After scoring, the threats are often sorted based on the score, higher degree means higher risk. The threats with the three highest scores are selected as participants for processing in the module of maneuver generation and in the module of maneuver evaluation. 6. Module of Maneuver Evaluation At each run step, the system chooses three maneuvers and generates the corresponding planned trajectories. The trajectories are shared among participants to reach an agreement on a combination of maneuvers that supply the best solution. Each aircraft receives the planned trajectories via a datalink from the other participants, scores the combinations independently and selects the best maneuver from the three maneuvers as the preferred maneuver. Although the system predicts which maneuver each threat aircraft should perform, the system only selects a maneuver for its own aircraft. Thus, to reach consistent decisions among participants, the module of maneuver evaluation should utilize nearly identical information available to participants. Before performing a maneuver, the system requests a cross check to ensure consistency in maneuver evaluation. Then, the labeled trajectories are shared among the participants via a datalink to keep in synchronization and coherence. There would be nine combinations of maneuvers for two participants, and 81 combinations of maneuvers for four participants. The frequency is set at 4 Hz, so the module shares planned trajectories and evaluates the combination of maneuvers every 0.25 s. However, in the actual situation, the transmission latency is unavoidable in data sharing, the maneuvers will become uncoordinated and the system will be mispositioned if the algorithm attempts the process too rapidly. To solve this problem, two measures were taken in this module. First, in the algorithm, the frequency of the different modules was set differently, the frequency of the maneuver generating module and the trajectory prediction module were set at 10 Hz, which was higher than that of maneuver evaluation. There is adequate time for aircraft to wait and receive data from other participants. Even a loss or delay of data will not affect the evaluation. When the algorithm evaluates a combination of maneuvers at one run step, the data are ready for the previous step. Second, considering the continuity and stability of the relative situation between participants in continuous frames of time, the maneuvers will last from the last time frame to the next. In the procedure of maneuver generation, the preferred maneuver in the last time frame remains one of the three newly generated maneuvers. Appl. Sci. 2019, 9, 798 7 of 20 The principle of evaluating the optimal combination of maneuvers is to select the one that can delay the activation of maneuvers as much as possible. The system chooses the combination with the Appl. Sci. 2019, smallest cost.9,The x cost function is the sum of reciprocal predicted minimum avoidance distance (PAD). 7 of 20 The predicted minimum avoidance distance (PAD) is the minimum distance between a conical region conical in region in the the space-time space-time domain, whichdomain, whichof is the distance is the the predicted distance oftrajectory the predicted trajectory subtracting subtracting the uncertainty the uncertainty distance (UD). As is illustrated in Figure 3, there are nine possible distance (UD). As is illustrated in Figure 3, there are nine possible combinations of maneuvers among combinations of maneuvers among the two participants, but the combination of planned trajectory the two participants, but the combination of planned trajectory A and b provides the maximum PAD. A and b provides the maximum PAD. ∀∆t ∈ (0, T ), PAD Mi (m), M j (n) = min Pi (t + ∆t) − Pj (t + ∆t) − UDi (∆t) − UD j (∆t)   (5) ∀∆𝑡 ∈ 0, 𝑇 , 𝑃𝐴𝐷 𝑀 𝑚 , 𝑀 𝑛 = 𝑚𝑖𝑛 𝑃 𝑡 + ∆𝑡 − 𝑃 𝑡 + ∆𝑡 − UD ∆𝑡 -UD ∆𝑡 (5)  ω𝜔 n)𝑛==PAD ij ( m,𝑚, 𝑃𝐴𝐷 M 𝑀i𝑖(m 𝑚),, M 𝑀𝑗j (𝑛n) (6) (6)  Indeed, Mi (m) represents that aircraft i takes maneuver m; PAD Mi (m), M j (n) represents PAD when Indeed,𝑀 𝑚 represents that aircraft i takes maneuver m ; 𝑃𝐴𝐷 𝑀 𝑚 , 𝑀 𝑛 represents PAD aircraft i takes maneuver m, aircraft j takes maneuver n. whenThe aircraft i takes maneuver cost function m, aircraft j takes maneuver n. is as follows: The cost function is as follows: N N cos t Mi (m), M j (n), . . . . . . , = min ∑ ∑ ωij  (7) 𝑐𝑜𝑠 𝑡 𝑀 𝑚 , 𝑀 𝑛 , … … , = 𝑚𝑖𝑛 i=1 j=1𝜔 (7) Indeed, i 6= j, m = 1, 2, 3, n = 1, 2, 3. Indeed,𝑖 ≠ 𝑗, m = 1, 2, 3, n = 1, 2, 3 The maneuvers that aircraft should take: The maneuvers that aircraft should take: N N ACT Mi (k ), M j (k), . . . . . . , = argmin ∑ ∑ ωij  (8) 𝐴𝐶𝑇 𝑀 𝑘 , 𝑀 𝑘 , … … , = 𝑎𝑟𝑔𝑚𝑖𝑛 i=1 j=1𝜔 (8) Indeed i 6= j Indeed 𝑖 ≠ 𝑗 Cone c Cone A Cone a PAD of Cone Cc Aircraft B Aircraft A Cone B Cone C Cone b Figure 3. Figure 3. Maneuver Maneuver evaluation. evaluation. 7. Module of Maneuver Activation The principle principle of the of system is noninterference the system and minimizing is noninterference and interference minimizing while simultaneously interference while achieving collision avoidance. To realize this principle, the system should activate simultaneously achieving collision avoidance. To realize this principle, the system should activate the maneuver as late as possible.asThe the maneuver lateFigure 4 is the as possible. Therelative Figuremotion 4 is theofrelative aircraftmotion A and B;of aircraft aircraft BAisand resting relatively, B; aircraft B is while aircraft A is moving toward B relatively. The isolation sphere is the safety separation resting relatively, while aircraft A is moving toward B relatively. The isolation sphere is the safety zone for aircraft B. Before entering the isolation sphere, aircraft A can activate a maneuver to separation zone for aircraft B. Before entering the isolation sphere, aircraft A can activate a maneuveravoid collision. to avoid collision. The earlier aircraft B maneuvers, the more available options aircraft B can choose, and the less likely a collision will occur. There exists a final moment when activation is too late; no matter what maneuver is taken under the restriction of performance; aircraft A cannot avoid entering the isolation sphere of aircraft B and the collision between two UAVs cannot be prevented. If UAV A activates maneuvers at point 1, no matter which maneuver is taken, it can avoid collision, but if the Appl. Sci. 2019, 9, 798 8 of 20 The earlier aircraft B maneuvers, the more available options aircraft B can choose, and the less likely a collision will occur. There exists a final moment when activation is too late; no matter what maneuver is taken under the restriction of performance; aircraft A cannot avoid entering the isolation sphere of Appl. Sci. 2019, 9, x 8 of 20 aircraft Appl. Sci.B2019, and9,the x collision between two UAVs cannot be prevented. If UAV A activates maneuvers 8 ofat20 point 1, no matter activation time iswhich maneuver too early, it willisseriously taken, it can avoid with interfere collision, but if theflight the normal activation of thetime UAV. is too early,A If UAV itactivation will seriously activates attime interfere point is 3, withitthe toonoearly, matter normal will whichseriouslyflight maneuver ofUAV the UAV. interfere with If the A takes, UAV A activates normal it cannot avoidofat flight point the UAV. collision 3,with no If matter UAV UAVA B which maneuver activates UAV at point 3,ofno for the restriction A takes, it cannot matter which performance. avoid Atmaneuver collision UAVone point 3, only with UAV A takes, maneuver B for the it cannot restriction of avoid collision, can avoid performance. collision with UAV B the planned Atforpoint trajectory 3, only the restriction oneofmaneuver is tangent performance. to can avoid the isolation At collision, point spheres, 3, andonlythe the planned one maneuver special trajectory maneuver is tangent canisavoid the to the collision, preferred theisolation maneuverplannedfor spheres, trajectory and is the special tangent to maneuver the isolationis the preferred spheres, and maneuver the special for aircraft maneuver A. is aircraft A. In summary, the moment at point 2 is the last moment when collision can be avoided and In the summary, preferred the moment maneuver for ataircraft ispoint 2A. the best is In the last moment summary, moment that when collision thesatisfies moment at point the can bethe 2 is noninterferenceavoided and is the lastprinciple. moment when Thebest moment collision radius that ofcan the satisfies besphere avoided canthe and be noninterference is the best principle. moment that The radius satisfies theof modified to increase or decrease the early warning time. the sphere noninterferencecan be modified principle. to The increase radius or of decrease the spherethe early can be warning modified time. to increase or decrease the early warning time. Isolation sphere Isolation sphere Prefered Maneuver Prefered Maneuver Aircraft A Aircraft A Aircraft B Point 1 Point 2 Point 3 Aircraft B Point 1 Point 2 Point 3 Alternative Maneuver Alternative Maneuver Figure 4. The moment to activate the maneuver. Figure4.4.The Figure Themoment momenttotoactivate activatethe themaneuver. maneuver. Themodule The module of maneuver of maneuver activation activation calculates calculates the minimum the minimum allowed separation allowed separation distance distance (MASD), The which module of sum maneuver activation calculates the minimum allowed separation distance which is the sum of the wing span (WS) of two aircrafts, plus the desired separation distance distance (MASD), is the of the wing span (WS) of two aircrafts, plus the desired separation (DSD). (MASD), (DSD). which The is the sum predicted of the wing minimum range span (PMR)(WS) is of two the aircrafts, minimum plus the distance desiredthe between separation conical distance region. The predicted minimum range (PMR) is the minimum distance between the conical region. (DSD). The predicted minimum range (PMR) is the minimum distance between the conical region. 𝑀𝐴𝑆𝐷 = 𝐷𝑆𝐷 + 𝑊𝑆 (9) MASD𝑀𝐴𝑆𝐷==DSD 𝐷𝑆𝐷+ + ∑ WS 𝑊𝑆 (9) (9) 𝑀𝑅 = 𝑚𝑖𝑛 |𝑃 𝑡 + ∆𝑡 − 𝑃 𝑡 + ∆𝑡 | + 𝑈𝐷 ∆𝑡 + 𝑈𝐷 ∆𝑡 , ∆𝑡 ⊆ 0, 𝑇 (10) MR 𝑀𝑅= min= 𝑚𝑖𝑛 t + 𝑡∆t (| PA (|𝑃 − P−B (𝑃t +𝑡∆t +)∆𝑡 ∆𝑡+| UD + )| A ( ∆t + 𝑈𝐷 ∆𝑡) ++UD𝑈𝐷B (∆t ∆t ⊆ ∆𝑡 )),, ∆𝑡 ⊆ (0,0,𝑇T ) (10) (10) UD ∆𝑡 = 0.425 ∗ ∆𝑡2 + 1.19 ∗ ∆𝑡 (11) UDUD(∆t∆𝑡) ==0.425 0.425∗ ∗(∆t∆𝑡 1.19∗ ∗∆t∆𝑡 ) ++1.19 (11) PMR PMR MASD MASD The primary maneuver The primary maneuver Figure 5. Diagram of maneuver activation. Figure 5. Diagram of maneuver activation. Figure 5. Diagram of maneuver activation. In the module of the maneuver activation, only the planned trajectories corresponding to preferred In the maneuver aremodule of the considered maneuverthe to determine activation, only activation. As the planned shown trajectories in Figure 5, as thecorresponding risk of collisionto In themaneuver module are of the maneuver activation,theonly the planned trajectories corresponding the risk to becomes more likely, the cones of the two aircraft will converge in time and space when5,the preferred considered to determine activation. As shown in Figure aspredicted of preferred maneuver are considered to determine the activation. As shown in Figure collision becomes more likely, the cones of the two aircraft will converge in time and space when the 5, as the risk of collision predictedbecomes minimum more likely, range the cones (PMR) is lessofthan the two aircraft will the permitted convergeallowed minimum in time and space when separation the distance predicted (MASD); then minimum range (PMR) the maneuver is less than is activated, the participants and the permitted minimum allowed separation take the preferred maneuver,distance and the (MASD); then the maneuver is activated, and the participants take the preferred maneuver, UAV will fly in the planned trajectory. Indeed, the desired separation distance (DSD) is a fixed value and the UAV will fly in the planned trajectory. that is input by the system in advance. Indeed, the desired separation distance (DSD) is a fixed value that is input by the system in advance. Appl. Sci. 2019, 9, 798 9 of 20 minimum range (PMR) is less than the permitted minimum allowed separation distance (MASD); then the maneuver is activated, and the participants take the preferred maneuver, and the UAV will fly in the planned trajectory. Indeed, the desired separation distance (DSD) is a fixed value that is input by the system in advance. 8. Results To verify the effectiveness of the algorithm that was proposed in this paper, a simulation experiment is operated in a series of special collision scenarios. The principle of the constructed scenarios are as follows: • Complexity: The encounter scenarios constructed are relatively complex, reaching the complexity of the actual situation. • Typicality: The collision scenarios constructed are common in the actual situation. • Extensibility: Most of the actual collision can be combined by the constructed collision scenarios. Based on the three principles, six encounter scenarios were constructed, including six two-aircraft- encounter scenarios, a four-aircraft-encounter scenario and an eight-aircraft-encounter scenario. In this paper, the UAVs are provided by our team in college of aerospace science and technology, National University of Defense Technology. And the basic attributes of UAV are as follows in Table 2: Table 2. Attribute list of Unmanned Aerial Vehicles (UAVs). Type Size Type Size Mass 4536 kg Zero-AoA Lift Coefficient 0.1095 Roll Moment of Inertia 35926.5 kg·m2 Parasite Drag Coefficient 0.0255 Pitch Moment of Inertia 33940.7 kg·m2 Side-force Coefficient −0.7162 Zero-AoA Moment Yaw Moment of Inertia 67085.5 kg·m2 0 Coefficient North-high Product of Inertia 3418.17 kg·m2 Yaw Moment Coefficient 0.1194 Mean Aerodynamic 2.14 m Rolling Moment Coefficient −0.0918 Wing Span 10.4 m Static Thrust 26243.2 N Safe Distance 60 m The safe distance is the minimum allowed distance between aircraft. Several factors need to be considered in the setting of safe distance. The safe distance must ensure that the isolation spheres of two aircraft would not touch each other. In other words, the safe distance must be greater than the sum of the two minimum allowed separation distances (MASD), which is the sum of the wing span (WS) (10.4 m) and the desired separation distance (DSD). The delay of distance calculation is also taken into consideration, and the frequency of the module of trajectory prediction is set to 10 Hz, so there might be a delay of 0.1s. The speed of UAV is less than 100m/s, so the error in distance is less than 10 m. In summary, 10.4 × 2 + 10 × 2 = 40.8 (m). With DSD added, the safe distance is set to 60 m. But the safe distance is not fixed, the desired separation distance (DSD) can be adjusted to meet different security requirements. The smaller safe distance, the later the aircraft activates collision avoidance maneuver. In Eight-aircraft-formation scenario, consider the high density of aircraft, we adjust the safe distance to 42 m. 8.1. Rear-Ended Scenario There are two UAVs cruising at the same altitude in a certain airspace. The two UAVs fly in the same direction, from South to North. Table 3 records the initial state of the two aircraft. Aircraft A is pursuing aircraft B with a higher speed from the South. If the two UAVs follow the original flight path and do not take maneuvers to avoid collision, a rear-end collision will occur between the two aircraft. Appl. Sci. 2019, 9, 798 10 of 20 Table 3. Initial state. Number A B Initial recording position (0,0,3248) (240,0,3248) (m, m, m) Initial recording speed (85,0,0) (40,0,0) (m/s, m/s, m/s) Appl.Sci. Sci.2019, 2019,9, 9,xx Initial recording speed 10of of20 20 Appl. (5,0,0) (5,0,0) 10 (m/s, m/s, m/s) Initial angular velocity (m/s, m/s, (m/s, m/s, m/s)rad/s, rad/s) m/s) (0,0,0) (0,0,0) (rad/s, Initial angular Initial angular velocity velocity (0,0,0) (0,0,0) (0,0,0) (0,0,0) (rad/s, rad/s, (rad/s, rad/s, rad/s) rad/s) As is illustrated in Figures 6 and 7, the trajectories of the aircraft throughout the whole process As is As is illustrated illustrated in in Figures Figures 66 and and 7, thethe trajectories trajectories of of the the aircraft aircraft throughout throughout the wholewhole process process are demonstrated in three dimensions7,and on the horizontal plane, respectively.the Indeed, the red are demonstrated are demonstrated in in three three dimensions dimensions and and onon the the horizontal horizontal plane, plane, respectively. respectively. Indeed, Indeed, thethe red red line line line represents the trajectory of aircraft A, while the green one represents the trajectory of aircraft represents represents the trajectory the trajectory of aircraft A, while the green one represents the trajectory of aircraft B. The B. The starting point is of theaircraft initialA,recordwhile position the greenof one therepresents aircraft in thethe trajectory simulationof aircraft B. The experiment. starting point starting point is is the the initial initial record record position position of of the the aircraft aircraft in in the the simulation simulation experiment. experiment. The The The maneuvering point is the position where the aircraft activates the collision avoidance maneuver. maneuvering point is the position where the aircraft activates the collision maneuvering point is the position where the aircraft activates the collision avoidance maneuver. In avoidance maneuver. In In the simulation experiment, there are two principles when choosing the start point. First, the start the simulation the simulation experiment, experiment, there there are are two two principles principles when when choosing choosing the the start start point. point. First, First, the the start start point is closer to the maneuvering point in time; second, there is no threatening relationship between pointis point iscloser closerto tothethemaneuvering maneuveringpoint pointin intime; time;second, second, there thereis isno nothreatening threateningrelationship relationshipbetween between the two aircraft at the starting point. the two the two aircraft aircraft at at the the starting starting point. point. As shown in the figure, at 0 s, the simulation experiment begins, and the state is beginning to As shown As shown in in the the figure, figure, atat 00 s,s, the the simulation simulation experiment experiment begins, begins, and and the the state state is is beginning beginning to to be be be recorded. The two aircraft cruise at their trajectories. At 5 s, their respective collision avoidance recorded. The recorded. The twotwo aircraft aircraft cruise cruise at at their their trajectories. trajectories. At At 55 s,s, their their respective respective collision collision avoidance avoidance maneuvers are activated simultaneously; aircraft A is commanded a bank angle of −90◦ with a 5 g maneuvers are maneuvers are activated activated simultaneously; simultaneously; aircraft aircraft A A is is commanded commanded aa bank bank angle angle ofof −90° −90° with with aa 55 gg pull while aircraft B is commanded a −0.5 g pull. Figure 8 depicts the relative distance. The minimum pullwhile pull whileaircraft aircraftBBis is commanded commandedaa−0.5 −0.5gg pull. pull.Figure Figure88depicts depictsthe the relative relative distance. distance.TheTheminimum minimum distance between two aircraft is 67 m, which is higher than the safe distance. distance between two aircraft is 67 m, which is higher distance between two aircraft is 67 m, which is higher than the safe distance. than the safe distance. 3DFlight 3D FlightPath Path Startpoint Start point Maneuveringpoint Maneuvering point 3600 3600 e, mm 3400 3400 ltitude, AAltitud 3200 3200 BB 3000 3000 400 400 AA 800 800 200 200 600 600 400 400 East,m East,m 00 200 200 North,m North,m -200 00 -200 East mm East NN thth Figure6. Figure Figure 6.3D 6. 3Dflight 3D flightpath. flight path. path. Startpoint Start point Maneuveringpoint Maneuvering point 400 400 800 800 BB 200 200 600 600 400 400 00 AA 200 200 East,m East, m North,mm -200 00 -200 North, Figure Figure 7.2D Figure7. 7. 2Dflight 2D flightpath. flight path. path. Appl. Sci. 2019, 9, 798 11 of 20 Appl. Appl. Sci. Sci. 2019, 2019, 9, 9, xx 11 11 of of 20 20 200 200 Distance Distance beteen beteen AB AB Safe Safe Distance Distance 150 150 m Distance, m Distance, 100 100 50 500 0 22 44 66 88 Time, Time, Sm Sm Figure Figure 8. 8. Relative Figure 8. Relative distance. distance. distance. 8.2. Formation Scenario 8.2. 8.2. Formation Formation Scenario Scenario There Thereare There aretwo are twoUAVs, two UAVs, UAVs, aircraft aircraft aircraftAA and A and andB,B, cruising B, cruising cruisingatat the at same the the same samealtitude altitude altitudeinin a certain in airspace. aa certain certain They airspace. airspace. They Theyare inare formation are in mode, in formation formation mode, maintaining mode, maintaininga fixed safe maintaining aa fixed distance fixed safe and safe distance flying distance and at and flyingthe flying at same at the speed the same from same speed South speed from to North. from South South toto InNorth. the process, In the the formation process, the is broken formation for is some broken external for some factor. There external will factor. be a There North. In the process, the formation is broken for some external factor. There will be a collision collision will be between a the collision two aircraft. between the Table two 4 records aircraft. the Table initial 4 state records of the the two initial UAVs. state of the between the two aircraft. Table 4 records the initial state of the two UAVs. two UAVs. Table 4. Initial state. Table Table 4. 4. Initial Initial state. state. Number A B Number Number A A BB Initial Initial recording position Initial recording recording position position (0,120,3248) (0,0,3248) (0,120,3248) (0,0,3248) (m, m, m) (0,120,3248) (0,0,3248) (m, (m, m, m) m,Initial m) recording speed Initial (80,0,0) (80,0,0) Initial recording recording speed speed (m/s, m/s, m/s) (80,0,0) (80,0,0) (m/s, (80,0,0) (80,0,0) (m/s, m/s, m/s) m/s,Initial m/s) attitude angle (5,0,0) (5,0,0) Initial (rad, rad, rad) Initial attitude attitude angle angle (5,0,0) (5,0,0) Initial angular velocity (rad, (rad, rad, rad) rad,(rad/s, rad) rad/s, rad/s) (0,0,0) (5,0,0)(0,0,0) (5,0,0) Initial Initial angular angular velocity velocity (0,0,0) (0,0,0) (0,0,0) (0,0,0) (rad/s, (rad/s, rad/s, rad/s, rad/s) rad/s) As is illustrated in Figures 9 and 10, the trajectories of the aircraft in the whole process are As As is is illustrated illustrated in Figures Figures 99 and and 10, the the trajectories trajectories of of the the aircraft aircraft inin the the whole whole process process are demonstrated in three in dimensions and 10, on the horizontal plane, respectively. Indeed, the red are line demonstrated demonstrated in in three three dimensions dimensions and and onon the the horizontal horizontal plane, plane, respectively. respectively. Indeed, Indeed, thethe red red line line represents the trajectory of aircraft A, while the green one represents the trajectory of aircraft B. As is represents represents the the trajectory trajectory of of aircraft aircraft A, A, while while the the green green one one represents represents the the trajectory trajectory ofof aircraft aircraft B.B. As As is is shown in the figure, at 0 s, the simulation experiment starts, and the two aircraft cruise at their shown in the figure, at 0 s, the simulation experiment starts, and shown in the figure, at 0 s, the simulation experiment starts, and the two aircraft cruise at theirthe two aircraft cruise at their trajectories. trajectories. At 33 s, the formation is broken broken for some some extraneousfactor, factor, causingaircraft aircraft Atotoflyfly trajectories. AtAt 3 s, s, the the formation formation ◦ is is broken for for some extraneous extraneous factor, causing causing aircraft A A to fly suddenly suddenly toward aircraft B at aa45 yaw angle. At 55 s,s, their their respectivecollision collisionavoidance avoidancemaneuvers maneuvers suddenly toward toward aircraft aircraft BB atat a 45° 45° yaw yaw angle. angle. AtAt 5 s, their respective respective collision avoidance maneuvers are areactivated simultaneously, and aircraft A isiscommanded a bank angle angle of 60°60◦ withaa55ggpull.pull. Aircraft are activated activated simultaneously, simultaneously, and and aircraft aircraft A A is commanded commanded aa bank bank angle of of 60° with with a 5 g pull. Aircraft Aircraft BBisiscommanded a − 0.5 g push. Figure 11 depicts the relative distance between the two aircraft. B is commanded a −0.5 g push. Figure 11 depicts the relative distance between the two aircraft. The commanded a −0.5 g push. Figure 11 depicts the relative distance between the two aircraft. The The minimum distance minimum between two the two aircraft is 67which m, which is higher than the safe distance minimum distance distance between between the the two aircraft aircraft is is 67 67 m, m, which is is higher higher than than the the safe safe distance distance 3D 3D Flight FlightPath Error Path Errorpoint point Start Startpoint point Maneuvering Maneuveringpoint point 3600 3600 3400 3400 Altitude,mm 3200 Aircraft 3200 Aircraft AA Altitude, 3000 3000 2800 2800 Aircraft Aircraft BB 2600 2600 800 400 800 400 600 200 600 200 400 400 00 200 200 East, -200 00 -200 North, North, m East,mm m Figure Figure 9. 3D 9. 3D flight 3D flight path. flight path. path. Appl. Sci. 2019, 9, 798 12 of 20 Appl.Sci. Appl. Sci.2019, 2019,9, 9,xx 12of 12 of20 20 3D Flight Path 3D Flight Path Error point Error point Start point Start point Maneuvering point Maneuvering point 800 800 400 400 600 AircraftAA Aircraft 600 200 400 200 400 0 AircraftBB Aircraft 200 0 200 East, m North, m East, m -200 0 North, m -200 0 Figure 10. Figure 2D flight 10. 2D flight path. path. 400 400 Distancebeteen Distance beteenAB AB 350 350 Safe Distance Safe Distance 300 300 250 250 200 200 150 150 100 100 50 50 00 22 44 66 88 10 10 12 12 Time,Sm Time, Sm Figure 11. Figure Relative distance. 11. Relative distance. 8.3. Crossing 8.3. Crossing Scenario Crossing Scenario Scenario 8.3. There There arearetwotwoUAVs UAVscruising cruisingat at thethesame altitude same in aincertain altitude airspace. Aircraft A is cruising from There are two UAVs cruising at the same altitude in aa certain certain airspace. airspace. Aircraft Aircraft A is A is cruising cruising north to south, from north north while while to south, south, aircraft B is cruising aircraft from west fromto east.toTheir trajectories intersect at some point from to while aircraft BB is is cruising cruising from west west east. Their to east. Their trajectories trajectories intersect intersect at some at some in the point sky, in theand the sky, two and aircraft the two are approaching aircraft are and approaching will collide and at will the point. collide at Table the 5 records point. Table the 5 initial records point in the sky, and the two aircraft are approaching and will collide at the point. Table 5 records state of thestate the initial initial two of UAVs. the two two UAVs. UAVs. the state of the Table 5. Initial state. Table 5. Table 5. Initial Initialstate. state. Number A B Number Number AA BB Initial Initial recording recording position position Initial recording position (600,−600,3280) (0,0,3280) (m, m, m) (600, -600,3280) (600, -600,3280) (0,0,3280) (0,0,3280) (m, m, (m, m, m) m) Initial recording speed Initial recording recording speed (80,0,0) (80,0,0) Initial (m/s, m/s, m/s) speed (80,0,0) (80,0,0) (80,0,0) (80,0,0) (m/s, m/s, (m/s, m/s, m/s) Initial m/s)attitude angle (5,90,0) (5,0,0) Initial attitude attitude (rad, rad, rad) angle Initial Initialangle angular velocity (5,90,0) (5,0,0) (rad, rad, (rad, rad, rad) rad) (0,0,0) (5,90,0) (0,0,0) (5,0,0) (rad/s, rad/s, rad/s) Initial angular Initial angular velocity velocity (0,0,0) (0,0,0) (0,0,0) (0,0,0) (rad/s, rad/s, (rad/s, rad/s, rad/s) rad/s) As is illustrated in Figures 12 and 13, the trajectories of the aircraft in the whole process are As is As is illustrated illustrated in in Figures Figures 12 12 and and 13, 13, the the trajectories trajectories ofof the the aircraft aircraft inin the the whole whole process process are are demonstrated in three dimensions and on the horizontal plane, respectively. Indeed, the red line demonstrated in demonstrated in three three dimensions dimensions and and on on the the horizontal horizontal plane, plane, respectively. respectively. Indeed, Indeed, thethe red red line line represents the trajectory of aircraft A, while the green one represents the trajectory of aircraft B. At 0 s, represents the trajectory of aircraft A, while the green one represents the trajectory of aircraft B. At 00 represents the trajectory of aircraft A, while the green one represents the trajectory of aircraft B. At the simulation experiment starts, and the two aircraft cruise at their trajectories. At 4.8 s, the collision s,s, the the simulation simulation experiment experiment starts,starts, and and the the two two aircraft aircraft cruise cruise atat their their trajectories. trajectories. AtAt 4.8 4.8 s,s, the the avoidance maneuver is activated, aircraft A is commanded a bank angle of 90◦ with a 5 g pull, while collision avoidance maneuver is activated,◦ aircraft A is commanded a bank angle of 90° with a 55 gg collision avoidance maneuver is activated, aircraft A is commanded a bank angle of 90° with a aircraft B is commanded a bank angle of 60 with a 5 g pull. Figure 14 depicts the distance between two pull, while pull, whileaircraft aircraftBB is is commanded commandedaa bank bankangle angle ofof60° 60° with withaa55 ggpull. pull. Figure Figure 14 14 depicts depicts the thedistance distance aircraft. The minimum distance between the two aircraft is 65 m, which is higher than the safe distance. between two between two aircraft. aircraft. TheThe minimum minimum distance distance between between thethe two two aircraft aircraft isis 65 65 m, m, which which isis higher higher than than the safe distance. the safe distance. Appl. Sci. 2019, 9, 798 13 of 20 Appl. Sci. 2019, 9, x 13 of 20 Appl. Appl. Sci. Sci. 2019, 2019, 9, 9, xx 13 13 of of 20 20 3D Flight Path Start point 3D 3DFlight FlightPath Path Start Startpoint point point Maneuvering Maneuvering Maneuveringpoint point 3600 3600 3600 3400 3400 3400 ,, , 3200 3200 3200 3000 3000 3000 2800 Aircraft A 2800 400 2800 Aircraft AircraftAA Aircraft B 400 400200 Aircraft AircraftBB 200 200 0 0-200 0 1000 800 1000 -200 -200-400 600 800 1000 400 600 800 East, m -400 -400-600 0 200 400 600 200 400 East, East,mm -600 -600 00 200 North, m North, North,mm Figure 12. 3D flight path. Figure Figure 12. 12. 3D 3D flight flight path. path. Start point Start Startpoint point point Maneuvering Maneuvering Maneuveringpoint point 400 400 400 1000 200 1000 1000 200 200 Aircraft A 800 0 Aircraft Aircraft B 800 800 AircraftAA Aircraft AircraftBB 600 00 600 -200 600 -200 400 -200 400 400 -400 200 East, m -400 -400 200 200 North, m East, East,m m -600 0 North, North, m m -600 -600 00 Figure 13. 2D 2D flight flight path. Figure Figure 13. 13. 2D 2D flight flight path. path. 1000 1000 1000 Distance between AB Distance Distance Safe between betweenAB Distance AB 800 Safe Safe Distance Distance 800 800 mm 600 Distance, 600 600 Distance, 400 400 400 200 200 200 65 65 650 000 2 4 6 8 10 12 00 22 44 Time, 66 m 88 10 10 12 12 Time, Time, m m Figure 14. Relative Relative distance. distance. Figure Figure 14. 14. Relative Relative distance. distance. 8.4. Head-On 8.4. Head-On Scenario Scenario 8.4. 8.4. Head-On Head-On Scenario Scenario There are There are two two UAVs, UAVs, aircraft aircraft AA and and B,B, cruising cruising at at the the same same altitude altitude inin aa certain certain airspace. airspace. They They There There approach are from two two UAVs, are opposite UAVs, aircraft A A and aircraftwith directions and B, B, cruising cruising overlapped at at the the same trajectories, sameone altitude altitude from in in aa to north certain certain south, airspace. airspace. and the They They other approach from opposite directions with overlapped trajectories, one from north to south, and the approach approach from south from from opposite opposite to north. directions Theredirections will be with overlapped with overlapped a collision between trajectories, trajectories, the two one from oneTable north from 6north to south, to the south, and the andstate the other from south to north. There will be a collision between theaircraft. two aircraft. records Table 6 records initial the initial other other from from information south south to to of theoftwonorth. north. There There will will be be aa collision collision between between the the two two aircraft. aircraft. Table Table 6 6 records records the the initial initial state information theUAVs. two UAVs. state information stateAsinformation is illustratedof of the in two the two UAVs. UAVs. Figures 15 and 16, the trajectories of the aircraft in the whole process are demonstrated in three dimensions and on Tablethe6.horizontal Initial state.plane, respectively. Indeed, the red line Table Table 6.6. Initial Initial state. state. represents the trajectory of aircraft A, while the green one represents the trajectory of aircraft B. At 0 s, the simulationNumber Number experiment starts, and the two aircraft cruise A at their trajectories. At B 5.8 s, their Number A A BB Initial recording respective collision avoidanceposition maneuvers are activated simultaneously; Initial Initial recording recording position position (1200,0,3248) aircraft A is(0,0,3280) commanded a (1200,0,3248) (1200,0,3248) (0,0,3280) bank angle of 90◦ with (m, m, (m, am, (m, m,5m)g pull, while aircraft B is commanded m) m) a bank angle of −(0,0,3280) 90◦ with a 5 g Initial pull. Figure 17Initial depicts recording speed the relative distance between two aircraft. The minimum distance between two Initial recording recording speed speed (80,0,0) (80,0,0) (m/s, m/s, m/s) (80,0,0) (80,0,0) (80,0,0) (80,0,0) aircraft is 62.5 m, which(m/s, is higher (m/s, m/s, m/s, m/s) than the safe distance. m/s) Initial attitude angle Initial Initial attitude attitude angle angle (5,180,0) (5,0,0) (rad, rad, rad) (5,180,0) (5,180,0) (5,0,0) (5,0,0) (rad, (rad, rad, rad, rad) rad) Initial angular velocity (0,0,0) (0,0,0) Initial Initial angular angular velocity velocity (0,0,0) (0,0,0) (0,0,0) (0,0,0) Appl. Sci. 2019, 9, 798 14 of 20 Appl. Sci. 2019, 9, x 14 of 20 Appl. Appl. Sci. Sci. 2019, 2019, 9, 9, xx 1414 ofof 2020 Table 6. Initial state. (rad/s, rad/s, rad/s) (rad/s,rad/s, (rad/s, rad/s,rad/s) rad/s) As is illustrated in Figures Number 15 and 16, the trajectories A ofofthe aircraft B ininthe whole process are AsAsisisillustrated illustratedininFigures Figures1515and and16,16,thethetrajectories trajectories theaircraft of the aircraft thewhole in the wholeprocess processare are demonstrated in three dimensions Initial and recording on the position horizontal plane, respectively. Indeed, the red line demonstrated in three dimensions demonstrated in three dimensions and on the horizontal and on the horizontal plane, respectively. plane, respectively. (1200,0,3248) (0,0,3280) Indeed, the Indeed, the red linered line represents the trajectory of aircraft (m, A, m, while m) the green one represents the trajectory of aircraft B. At 0 representsthe represents thetrajectory trajectoryofofaircraft aircraftA,A,while whilethe thegreen greenone onerepresents representsthe thetrajectory trajectoryofofaircraft aircraftB.B.AtAt0 0 s, the simulation experiment Initial recording starts, and speed the two aircraft cruise at (80,0,0) their trajectories. At 5.8 s, their s, s,the thesimulation simulationexperiment experiment starts, starts, and and thethe two two (80,0,0) aircraft aircraft cruise cruise atat their their trajectories. trajectories. AtAt5.85.8s, s,their their respective collision avoidance (m/s, m/s, m/s)are activated simultaneously; aircraft A is commanded maneuvers a respective collision respective collision avoidance avoidance maneuvers maneuvers Initial are activated simultaneously; aircraft A is commanded a a attitude angle are activated simultaneously; aircraft A is commanded bank angle of 90° with a 5 g pull, (rad, while aircraft rad, rad) B is commanded (5,180,0) a bank angle (5,0,0) of −90° with a 5 g pull. bankangle bank angleofof90°90°with witha a5 5g gpull, pull, while while aircraftB Bisiscommanded aircraft commandeda abank bankangleangleofof−90° −90°with witha a5 5g gpull. pull. Figure 17 depicts the relative Initialdistance angular between two aircraft. The minimum distance between two velocity Figure 17 depicts the relative distance between Figure 17 depicts the relative distance between two aircraft. two aircraft. The minimum (0,0,0) The minimum(0,0,0) distance between distance between two two aircraft is 62.5 m, which is higher than the (rad/s, rad/s, safe distance. rad/s) aircraftisis62.5 aircraft 62.5m,m,which whichisishigher higherthan thanthethesafe safedistance. distance. Start point Start Start point point point Maneuvering Maneuvering Maneuvering point point 3600 3600 m m 3600 3400 Altitude, m Altitude, 3400 3400 Aircraft A Altitude, 3200 Aircraft Aircraft A A 3200 3200 3000 Aircraft A 400 3000 3000 Aircraft Aircraft A A 400400 200 1200 1000 1200 1200 200200 0 800 1000 1000 600 800800 0 0 400 600600 -200 -200 200 400400 East, m -200 -400 0 200200 North, m East, East, m m -4000 0 -400 North, North, m m Figure 15. 3D flight path. Figure Figure Figure 15. 15. 15.3D3D 3D flight flight flight path. path. path. 3D Flight Path 3D 3D Flight Flight PathPath Start point Start Start point point point Maneuvering Maneuvering Maneuvering point point 400 400400 200 200200 1200 0 1200 1000 1200 0 0 800 10001000 600 800800 -200 400 600600 -200 East, m -200 200 400400 East, m m -400 0 North, m East, 200200 -4000 0 -400 North, North, m m Figure Figure 16. 16. 2D 2Dflight flight path. path. Figure Figure 16.16. 2D2D flight flight path. path. 1200 1200 1200 Distance beteen AB Distance Distance beteen beteen ABAB 1000 Safe Distance 1000 1000 Safe Safe Distance Distance 800 800 mm 800 Distance, m Distance, Distance, 600 600 600 400 400 400 200 200 200 0 0 00 2 4 6 8 10 12 00 22 4 4 Time, 6 6m S 88 1010 1212 Time, Time, Sm m S Figure 17. Figure Relativedistance. 17. Relative distance. Figure Figure 17.17. Relative Relative distance. distance. 8.5. Four-Aircraft-Formation 8.5. Four-Aircraft-Formation Scenario Scenario 8.5.Four-Aircraft-Formation 8.5. Four-Aircraft-FormationScenario Scenario There are four UAVs ina acertain There are four UAVs in certainairspace, airspace, which whicharearedivided divided intointo twotwoflying formations. flying formations.The The first Thereincludes There formation arefour are fouraircraft UAVsin UAVs Ainaand acertain certain B, which airspace, airspace, fly which which from south are are to divided divided north. into into The twoflying two second flyingformations. includes formations. aircraft C The The and first formation includes aircraft A and B, which fly from south to north. The second includes aircraft first first D, formation formation which includes includes fly from aircraft aircraft AAandandB, B,which whichflyflyoffrom from south thesouth totonorth. north.TheThesecond second aincludes inincludes aircraft aircraft C and D, which flynorth from to south. north The to south. trajectories The trajectories two of theformations two formationsintersect intersect narrow space, in a narrow CCand andD,D,which whichflyflyfrom fromnorth northtotosouth. south.TheThetrajectories trajectoriesofofthethetwotwoformations formationsintersect intersectinina anarrow narrow space, and there will be chain collisions between the aircraft if they fly along the original route space,and space, andthere therewill willbebechain chaincollisions collisionsbetween betweenthe theaircraft aircraftif ifthey theyflyflyalong alongthetheoriginal originalroute route without taking maneuvers. Table 7 records the initial state of the four aircraft. withouttaking without takingmaneuvers. maneuvers.TableTable7 7records recordsthe theinitial initialstate stateofofthe thefour fouraircraft. aircraft. Appl. Sci. 2019, 9, 798 15 of 20 and there will be chain collisions between the aircraft if they fly along the original route without taking maneuvers. Table 7 records the initial state of the four aircraft. Table 7. Initial state. Number A B C D Initial recording position (−400,0,3048) (−400,70,3048) (400,0,3048) (400,70,3048) (m, m, m) Initial recording speed (80,0,0) (80,0,0) (80,0,0) (80,0,0) (m/s, m/s, m/s) Initial attitude angle (3,0,0) (3,0,0) (5,180,0) (3,180,0) Appl. Sci. 2019, 9,(rad, x rad, rad) 15 of 20 Initial Appl. Sci. 2019, 9, x angular velocity 15 of 20 (0,0,0) (0,0,0) (0,0,0) (0,0,0) (rad/s, rad/s, rad/s) Table 7. Initial state. Table 7. Initial state. Number in Figures 18 and As is illustrated A B C D Initial Number position recording A 19, the trajectoriesB of the aircraftCin the whole process D are demonstrated in three dimensions and on (−400,0,3048)the horizontal plane, (−400,70,3048) respectively. (400,0,3048)In the whole process, (400,70,3048) Initial recording m, m)position (m,generates each aircraft (−400,0,3048) and evaluates maneuvers(−400,70,3048) according to the (400,0,3048) current situation(400,70,3048) and agree on Initial (m, combinations m, m) speed recording of maneuvers through a data link. At 3 s, the collision avoidance maneuvers Initial recording speed (80,0,0) (80,0,0) (80,0,0) (80,0,0) are (m/s, m/s, m/s) (80,0,0) (80,0,0) (80,0,0) (80,0,0) activated at the same time among participants. The first formation chooses to climb to avoid collision, (m/s, m/s, m/s) whileInitial attitude the second angle chooses to roll and climb to avoid collision. The maneuver commanded formation (3,0,0) (3,0,0) (5,180,0) (3,180,0) Initial attitude (rad, rad, angle rad) (3,0,0) is shown in Table 8. When only maneuvering once,(3,0,0) each aircraft (5,180,0) achieves collision (3,180,0) avoidance. (rad, Initial rad, rad) angular velocity The minimum distance between pairs is shown in Table (0,0,0) 9, and the relative (0,0,0) (0,0,0) distance is shown in (0,0,0) Initial angular (rad/s, rad/s, velocity rad/s) distance between Figure(rad/s, 20. The minimum (0,0,0) pairs is larger (0,0,0) than a safe (0,0,0) distance. (0,0,0) rad/s, rad/s) Start point Maneuvering Start point point Maneuvering point 3400 3400 3200 D D 3200 C 3000 B C 3000 B 2800 A 2800 A 2600 400 2600 400 200 400 0 200 400 200 0 0 -200 200 -200 0 -200 -400 -400 -200 North, m East, m -400 -400 East, m North, m Figure 18. 3D flight path. Figure 18. Figure 3D flight 18. 3D flight path. path. Start point Maneuvering Start point point Maneuvering point D D C C 400 400 200 B 400 200 B 400 0 A 200 0 A 200 0 -200 0 -200 East, m -200 -200 North, m East, m -400 -400 -400 -400 North, m Figure 19. 2D flight path. Figure 19. 2D flight path. Figure 19. 2D flight path. As is illustrated in Figures 18 and 19, the trajectories of the aircraft in the whole process are As is illustrated demonstrated in threeindimensions Figures 18 and and on 19,the thehorizontal trajectoriesplane, of therespectively. aircraft in the whole In the process whole are process, demonstrated in three dimensions each aircraft generates andmaneuvers and evaluates on the horizontal plane, according respectively. to the In the whole current situation process, and agree on each aircraft generates and evaluates maneuvers according to the current situation combinations of maneuvers through a data link. At 3 s, the collision avoidance maneuvers are and agree on Appl. Sci. 2019, 9, 798 16 of 20 Table 8. Maneuver description. Appl. Sci. 2019, 9, x 16 of 20 Time Number Roll Angle Overload 3s A 0 +5g 3s A 0 +5g 3s B 0 +5g 33 ss BC 0 +90 +5g +5g 33 ss CD +90 −90 +5g +5g 3s D −90 +5g Table 9. Minimum distance between pairs. Table 9. Minimum distance between pairs. Minimum Distance A B C D Minimum distance A A0 B 79.6952 63.3242 C 125.5248 D A 0 79.6952 63.3242 125.5248 B 79.6952 0 125.5255 70 B 79.6952 0 125.5255 70 C 63.3242 125.5255 0 79.6951 C 63.3242 125.5255 0 79.6951 D 125.5248 70 79.6951 0 D 125.5248 70 79.6951 0 900 Distance between DC 800 Distance between BC AD Distance between AC BD 700 Distance beteen AB 600 Safe Distance 500 400 300 200 100 60 0 0 1 2 3 4 5 6 7 8 9 Time, m S Figure Figure 20. 20. Relative Relative distance. distance. 8.6. Eight-Aircraft-Formation Scenario 8.6. Eight-Aircraft-Formation Scenario There are eight UAVs in a certain airspace, which are divided into two flying formations. The first There are eight UAVs in a certain airspace, which are divided into two flying formations. The formation includes aircraft A, B, C, and D, which fly from south to north. The second includes aircraft first formation includes aircraft A, B, C, and D, which fly from south to north. The second includes C, D, E, and F, which fly from north to south. Table 10 records the initial state information of the aircraft C, D, E, and F, which fly from north to south. Table 10 records the initial state information of eight UAVs. The flight routes of the eight aircraft meet in a narrow space, and there will be a chain of the eight UAVs. The flight routes of the eight aircraft meet in a narrow space, and there will be a collisions between the aircraft if they fly along the original track without taking maneuvers. Table 11 chain of collisions between the aircraft if they fly along the original track without taking maneuvers. records the initial state of the eight aircraft. Table 11 records the initial state of the eight aircraft. Table 10. Initial state. Table 10. Initial state. Initial Recording Initial Recording Initial Attitude Initial Angular Number Initial Recording Position InitialSpeed Recording Initial Attitude Angle Initial Angular Velocity Number Position (m, m, m) Speed (m/s, m/s, m/s) (rad, Angle rad, rad) Velocity (rad/s, rad/s, rad/s) A (m, (−m, m) 800,50,4015) (m/s, m/s, m/s) (58.2,0,14.6) (rad, rad, rad) (14.1,0,0) (rad/s, rad/s, rad/s) (0,0,0) A B (−800, 50, − (−800, 4015) 40,4005) (58.2, 0, 14.6) (58.2,0,14.6) (14.1, 0, 0) (14.1,0,0) (0, 0, 0) (0,0,0) B C (−800,(−−40, 800,10,3935) 4005) (58.2,0,14.5) (58.2, 0, 14.6) (14.0,0,0) (14.1, 0, 0) (0,0,0) (0, 0, 0) D (−800,5,4060) (58.2,0,14.7) (14.2,0,0) (0,0,0) C (−800, 10, 3935) (58.2, 0, 14.5) (14.0, 0, 0) (0, 0, 0) E (800,75,4000) (58.2,0,14.6) (14.1,180,0) (0,0,0) D Fr (−800, 5, 4060) (800,−65,4000) (58.2, 0, 14.7) (58.2,0,14.6) (14.2, 0, (14.1,180,0)0) (0, 0, 0) (0,0,0) E G (800,(800, 75,−4000) 10,4055) (58.2, 0, 14.6) (58.2,0,14.7) (14.1, 180, (14.2,180,0) 0) (0, 0, 0) (0,0,0) Fr H (800, − (800, −65, 4000) 10,3955) (58.2, 0, 14.6) (58.2,0,14.5) (14.1, 180, 0) (14.2,180,0) (0, 0, 0) (0,0,0) G (800, −10, 4055) (58.2, 0, 14.7) (14.2, 180, 0) (0, 0, 0) H (800, −10, 3955) (58.2, 0, 14.5) (14.2, 180, 0) (0, 0, 0) As is illustrated in Figures 21 and 22, the trajectories of the aircraft are demonstrated in three dimensions and on the horizontal plane, respectively. In the whole process, each aircraft generates and evaluates maneuvers according to the surrounding situation and agree on combinations of Appl. Sci. 2019, 9, 798 17 of 20 As is illustrated in Figures 21 and 22, the trajectories of the aircraft are demonstrated in three Appl. Appl. Sci. Sci. 2019, dimensions 2019, 9, 9, xx and on the horizontal plane, respectively. In the whole process, each aircraft generates 17 17 of of and20 20 evaluates maneuvers according to the surrounding situation and agree on combinations of maneuvers maneuvers maneuvers with with other other participants participants through through a data link. InIn the whole whole procedure, each aircraft will with other participants through a data link.a In data thelink. whole the procedure, procedure, each aircrafteach willaircraft will encounter encounter encounter multiple intrusions. multiple intrusions. Therefore, the aircraft will take multiple maneuvers to aggressively multiple intrusions. Therefore,Therefore, the aircraftthe aircraft will will takemaneuvers take multiple multiple maneuvers to aggressively to aggressively avoid the avoid avoid the the collision. collision. In In addition, addition, there there is is some some synergy synergy between between aircraft aircraft in in the the same same formation. formation. If If collision. In addition, there is some synergy between aircraft in the same formation. If aircraft in first aircraft aircraft in in first first formation formation all all choose choose to to roll roll to to the the left left to to avoid avoid collision, collision, most most of of the the aircraft aircraft in in the the formation all choose to roll to the left to avoid collision, most of the aircraft in the second formation second second formation will roll roll to the the left left to to avoid avoid collision. will rollformation to the left will to avoid to collision. collision. gg 4300 4300 GG 4150 4150 EE F F HH 4000 4000 DD Al titu de, m Al titu de, m AA BB 3850 3850 CC 800 800 3700 3700 600 400 400 600 200 00 200 -200 -200 -400 -400 -600 -800 -600 -800 North, m North, m Ea s t, m Ea s t, m Figure Figure21. Figure 21.3D 21. 3Dflight 3D flightpath. flight path. path. EE GG HH FF 800 800 400 400 00 -400 -400 600 600 No rth, m No rth, m 200 200 AA C D BB C D -200 -200 -800 -800 Ea s t, m Ea s t, m -600 -600 Figure Figure22. Figure 22.2D 22. 2Dflight 2D flightpath. flight path. path. Inthe In In thewhole the wholecollision whole collisionavoidance collision avoidanceprocess, avoidance process,each process, eachaircraft each aircraft is aircraft isfaced is facedwith faced withmultiple with multipleintrusions multiple intrusions in intrusions inaaashort in short short time, time, which time, which requires which requires multiple maneuvers requires multiple maneuvers maneuvers inin a very in aa very short very short time. short time. Due time. Due to Due to a restriction to aa restriction of restriction of performance, of performance, performance, it itit is difficult forfor anan aircraft to perform a maneuver suchsuch as rolling ◦ 90 in90° 1 s.in is is difficult difficult for an aircraft aircraft to to perform perform aa maneuver maneuver such as as rolling rolling 90° inTherefore, 11 s. we directly s. Therefore, Therefore, we record we directly directly record the changes of the control parameters instead of the maneuver. It can be seen from the in the changes record the of the changes control of the parameters control instead parameters of the instead maneuver. of the It can maneuver. be seen It canfrom be the seen table from that, the the table table wholein that, that, incollision the the whole avoidance whole process, collision collision the control avoidance avoidance parameters process, process, the of each the control control UAV haveof parameters parameters been of intensively each each UAV UAV have adjusted, have been been and each intensively aircraft has adjusted, taken and multiple each maneuvers. aircraft has taken multiple intensively adjusted, and each aircraft has taken multiple maneuvers. maneuvers. Table 12 records the minimum distance between UAVs during the whole collision avoidance process, and the distances between UAVs are always Table Table 11. lower 11. Initial Initial state.than the safe distance. state. Control Control Control Control Time Time Number Number Maneuver Maneuver Time Time Number Number Maneuver Maneuver Parameter Parameter Parameter Parameter (−8, (−8, −12, −12, −8, −8, (−8, (−8, −12, −12, −8, −8, 9.8 9.8 A A Roll Roll to to left left 9.8 9.8 EE Roll Roll to to left left −6, −6, 0, 0, −8) −8) −6, −6, 0, 0, −8) −8) (−8, (−8, −12, −12, −8, −8, (−8, (−8, 12, 12, 8, 8, 6, 6, Roll Roll to to 9.4 9.4 BB Roll Roll to to left left 10 10 FF −6, −6, 0, 0, −8) −8) 0, 0, −8) −8) right right (−10, (−10, 0, 0, 0, 0, 0, 0, 0, 0, (−8, (−8, 12, 12, 8, 8, 6, 6, 10.2 10.2 BB climb climb 9.4 9.4 G G Roll Roll to to left left −8) −8) 0, −8) 0, −8) Appl. Sci. 2019, 9, 798 18 of 20 Table 11. Initial state. Control Control Time Number Maneuver Time Number Maneuver Parameter Parameter (−8, −12, −8, (−8, −12, −8, 9.8 A Roll to left 9.8 E Roll to left −6, 0, −8) −6, 0, −8) (−8, −12, −8, (−8, 12, 8, 6, 9.4 B Roll to left 10 F Roll to right −6, 0, −8) 0, −8) (−10, 0, 0, 0, (−8, 12, 8, 6, 10.2 B climb 9.4 G Roll to left 0, −8) 0, −8) (−8, −12, −8, (−10, 0, 0, 0, 10.6 B Roll to left 9.8 G climb −6, 0, −8) 0, −8) (−8, 12, 8, 6, (−8, 12, 8, 6, 12 C Roll to right 11 G Roll to left 0, −8) 0, −8) (−8, 12, 8, 6, (−8, 12, 8, 6, 9.4 D Roll to right 9.4 H Roll to left 0, −8) 0, −8) (−10, 0, 0, 0, (−10, 0, 0, 0, 10.6 D climb 11.8 H climb 0, −8) 0, −8) (−8, −12, −8, (−8, 12, 8, 6, 12.8 D Roll to lift 12.6 G Roll to left −6, 0, −8) 0, −8) Table 12. Minimum distance between pairs. Minimum Distance A B C D E F G H A 0 68.9 88.7 55 44.5 126.7 94.8 103.3 B 68.9 0 86.0 67.3 117.0 53.0 56.7 60.7 C 88.7 86.0 0 125.0 88.1 123.7 148.2 59.9 D 55 67.3 125.0 0 96.7 114.6 52.7 122.5 E 44.5 117.0 88.1 96.7 0 140.0 101.2 96.2 F 126.7 53.0 123.7 114.6 140.0 0 77.8 61.5 G 94.8 56.7 148.2 52.7 101.2 77.8 0 100.0 H 103.3 60.7 59.9 122.5 96.2 61.5 100.0 0 9. Discussion In the collision avoidance techniques for UAVs, the collision avoidance algorithm is the key function module. This paper presents a CA algorithm for multiple cooperative fixed-wing UAVs, which provides an aggressive maneuver to avoid collision based on maneuver coordination and planned trajectory prediction. This algorithm consists of five modules: generating available maneuvers, predicting the corresponding planned trajectories, managing threats, evaluating combination of maneuvers and activating the maneuvers. The main advantages of the proposed algorithm are as follows: first, the algorithm presented in this paper eliminates the uncertainty of the traditional CA. This algorithm depends on the prediction of the planned trajectory instead of original trajectories. The former is determined and predictable, while the latter is unstable because the flying condition is easily broken, especially in high-dynamic environments, such as formation flying and clusters of aircraft. Second, the algorithm reduces the interference to the original trajectories to the greatest extent. The collision avoidance maneuver is activated at the last moment, with no more than 4 s before the collision. Third, the algorithm shows the greatest advantage in continuous conflicts in multiple, high-dynamic, and high-density environments and formation flying for rapid response, real-time, accuracy, low intervention and generality. Recommendations for future work are as follows: (1) further improve the stability and accuracy of aircraft controls, such as acceleration, angle acceleration and attitude angle, (2) further improve performances by solving continuous conflicts, especially in clusters of UAVs, and (3) further improve the operational efficiency. Appl. Sci. 2019, 9, 798 19 of 20 Author Contributions: Conceptualization, Y.W. and J.T.; methodology, Y.W.; software, Y.W.; validation, Y.W.; formal analysis, Y.W.; investigation, Y.W.; resources, Y.W., J.T., S.L.; data curation, Y.W.; writing—original draft preparation, Y.W.; writing—review and editing, Y.W., J.T.; visualization, Y.W.; supervision, J.T., S.L.; project administration, J.T., S.L.; funding acquisition, J.T., S.L. Funding: This research received no external funding. Acknowledgments: In this section you can acknowledge any support given which is not covered by the author contribution or funding sections. This may include administrative and technical support, or donations in kind (e.g., materials used for experiments). Conflicts of Interest: The authors declare no conflict of interest. References 1. Jun, T.; Yang, W. A causal model for safety assessment purposes in opening the low-altitude urban airspace of chinese pilot cities. J. Adv. Transp. 2018, 2018, 1–18. 2. Park, J.W.; Oh, H.D.; Tahk, M.J. Uav collision avoidance based on geometric approach. In Proceedings of the 2008 SICE Annual Conference, Tokyo, Japan, 20–22 August 2008. 3. Chakravarthy, A.; Ghose, D. Obstacle avoidance in a dynamic environment: A collision cone approach. IEEE Trans. Syst. Man Cybern.-Part A Syst. Hum. 1998, 28, 562–574. [CrossRef] 4. Carbone, C.; Ciniglio, U.; Corraro, F.; Luongo, S. A novel 3d geometric algorithm for aircraft autonomous collision avoidance. In Proceedings of the 45th IEEE Conference on Decision and Control, San Diego, CA, USA, 13–15 December 2006; pp. 1580–1585. 5. Luongo, S.; Corraro, F.; Ciniglio, U.; Di Vito, V.; Moccia, A. A novel 3d analytical algorithm for autonomous collision avoidance considering cylindrical safety bubble. In Proceedings of the 2010 IEEE Aerospace Conference, Big Sky, MT, USA, 6–13 March 2010; pp. 1–13. 6. Fasano, G.; Accardo, D.; Moccia, A.; Luongo, S.; Di Vito, V. In-flight performance analysis of a non-cooperative radar-based sense and avoid system. J. Proc. Inst. Mech. Eng. Part G J. Aerosp. Eng. 2016, 230, 1592–1604. [CrossRef] 7. Smith, A.L.; Harmon, F.G. Uas collision avoidance algorithm based on an aggregate collision cone approach. J. Aerosp. Eng. 2010, 24, 463–477. [CrossRef] 8. Liu, H.; Bai, C.; Yang, G. Application and analysis and discussion of autonomous collision avoidance techniques for unmanned aerial vehicle. Adv. Aeronaut. Sci. Eng. 2014, 5, 141–147. 9. Orefice, M.; Vito, V.D.; Torrano, G. Sense and avoid: Systems and methods. In Encyclopedia of Aerospace Engineering; Wiley: New York, NY, USA, 2015. 10. Sigurd, K.; How, J. Uav trajectory design using total field collision avoidance. In Proceedings of the AIAA Guidance, Navigation, and Control Conference and Exhibit, Austin, TX, USA, 11–13 August 2003; p. 5728. 11. Liu, J.Y.; Guo, Z.Q.; Liu, S.Y. The simulation of the uav collision avoidance based on the artificial potential field method. Adv. Mater. Res. 2012, 591–593, 1400–1404. [CrossRef] 12. Ruchti, J.; Senkbeil, R.; Carroll, J.; Dickinson, J.; Holt, J.; Biaz, S. Unmanned aerial system collision avoidance using artificial potential fields. J. Aerosp. Inf. Syst. 2014, 11, 140–144. [CrossRef] 13. Zhu, Q.; Yan, Y.; Xing, Z. Robot path planning based on artificial potential field approach with simulated annealing. In Proceedings of the Sixth International Conference on Intelligent Systems Design and Applications, Jinan, China, 16–18 October 2006; pp. 622–627. 14. Wang, X.; Yadav, V.; Balakrishnan, S.N. Cooperative uav formation flying with obstacle/collision avoidance. IEEE Trans. Control Syst. Technol. 2017, 15, 672–679. [CrossRef] 15. Cheng, P.; LaValle, S.M. Resolution complete rapidly-exploring random trees. In Proceedings of the IEEE International Conference on Robotics and Automation, Washington, DC, USA, 11–15 May 2002; pp. 267–272. 16. Yoshiaki, K. Real-Time Trajectory Design for Unmanned Aerial Vehicles Using Receding Horizontal Control; Massachusetts Institute of Technology: Cambridge, MA, USA, 2003. 17. Cekmez, U.; Ozsiginan, M.; Sahingoz, O.K. Multi colony ant optimization for uav path planning with obstacle avoidance. In Proceedings of the 2016 International Conference on Unmanned Aircraft Systems (ICUAS), Arlington, VA, USA, 7–10 June 2016; pp. 47–52. 18. Nikolos, I.K.; Valavanis, K.P.; Tsourveloudis, N.C. Evolutionary algorithm based offline/online path planner for uav navigation. IEEE Trans. Syst. Man Cybern. Part B 2003, 33, 898–912. [CrossRef] [PubMed] Appl. Sci. 2019, 9, 798 20 of 20 19. Mavrovouniotis, M.; Yang, S.; Yao, X. Multi-colony ant algorithms for the dynamic travelling salesman problem. In Proceedings of the 2014 IEEE Symposium on Computational Intelligence in Dynamic and Uncertain Environments (CIDUE), Singapore, 16–19 April 2014; pp. 9–16. 20. Manathara; George, J.; Ghose, D. Rendezvous of multiple uavs with collision avoidance using consensus. J. Aerosp. Eng. 2011, 25, 480–489. [CrossRef] 21. Archibald, J.K.; Hill, J.C.; Jepsen, N.A. A satisficing approach to aircraft conflict resolution. IEEE Trans. Syst. Man Cybern. Part C 2008, 38, 510–521. [CrossRef] 22. George, J.; Ghose, D. A reactive inverse pn algorithm for collision avoidance among multiple unmanned aerial vehicles. In Proceedings of the American Control Conference, St. Louis, MO, USA, 10–12 June 2009; pp. 3890–3895. 23. Sharma, R.; Ghose, D. Collision avoidance between uav clusters using swarm intelligence techniques. Int. J. Syst. Sci. 2009, 40, 521–538. [CrossRef] 24. Turner, R.; Lehmann, R.; Wadley, J.; Kidd, D.; Swihart, D.; Bier, J.; Hobbs, K. Automatic aircraft collision avoidance algorithm design for fighter aircraft. In Proceedings of the 2012 Asia-Pacific International Symposium on Aerospace Technology, Jeju, Korea, 13–15 November 2012. 25. Ikeda, Y.; Nguyen, B.; Barfield, A.; Sundqvist, B.; Jones, S. Automatic air collision avoidance system. In Proceedings of the 41st SICE Annual Conference, Osaka, Japan, 5–7 August 2002; pp. 630–635. 26. Wadley, J.; Jones, S.; Stoner, D.; Griffin, E.; Swihart, D.; Hobbs, K.; Burns, A.; Bier, J. Development of an automatic aircraft collision avoidance system for fighter aircraft. In Proceedings of the AIAA Infotech@ Aerospace (I@A) Conference, Boston, MA, USA, 19–22 August 2013; p. 4727. 27. Roskam, J. Airplane Flight Dynamics and Automatic Flight Controls; DARcorporation: Lawrence, KS, USA, 1998. 28. Tang, J.; Piera, M.A.; Guasch, T. Coloured petri net-based traffic collision avoidance system encounter model for the analysis of potential induced collisions. Transp. Res. Part C Emerg. Technol. 2016, 67, 357–377. [CrossRef] 29. Tang, J. Review: Analysis and improvement of traffic alert and collision avoidance system. IEEE Access 2017, 5, 21419–21429. [CrossRef] © 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).