- Sacramento

advertisement
PROBABILISTIC COLLISION DETECTION FOR AIRCRAFTS IN A DYNAMIC
ENVIRONMENT
Manan Vyas
B.E., Gujarat University, India, 2008
PROJECT
Submitted in partial satisfaction of
the requirements for the degree in
MASTER OF SCIENCE
in
ELECTRICAL AND ELECTRONIC ENGINEERING
at
CALIFORNIA STATE UNIVERSITY, SACRAMENTO
FALL
2012
PROBABILISTIC COLLISION DETECTION FOR AIRCRAFTS IN A DYNAMIC
ENVIRONMENT
A Project
by
Manan Vyas
Approved by:
__________________________________, Committee Chair
Fethi Belkhouche, Ph.D.
__________________________________, Second Reader
Preetham B. Kumar, Ph.D.
____________________________
Date
ii
Student: Manan Vyas
I certify that this student has met the requirements for format contained in the University
format manual and that this project is suitable for shelving in the library and credit is to
be awarded for the Project.
__________________________, Graduate Coordinator
Preetham B. Kumar, Ph.D.
Department of Electrical and Electronic Engineering
iii
________________
Date
Abstract
of
PROBABILISTIC COLLISION DETECTION FOR AIRCRAFTS IN A DYNAMIC
ENVIRONMENT
by
Manan Vyas
This project develops an algorithm for finding the probability of collision for
multiple aircrafts in a dynamic environment using point-mass aircraft models. Kinematic
equations of motion and velocity vectors are proposed to identify collision scenarios with
precision. The collision detection algorithm is tested for the deterministic case first. The
algorithm is then extended for the probabilistic case. Monte-Carlo simulation is used to
calculate the probability of collision. Time at the point of closest approach (PCA) and
distance at PCA are required to determine the probability of collision. The algorithm is
first verified for two aircrafts, then extended to three aircrafts. Simulation is used to
demonstrate the performance of the proposed algorithm for different types of
environments.
_______________________, Committee Chair
Fethi Belkhouche, Ph.D.
_______________________Date
iv
ACKNOWLEDGEMENTS
I would like to express deep and sincerest gratitude to Dr. Fethi Belkhouche for
providing me an opportunity to work on this project. I am thankful to him for always
being there throughout the project to help me develop the project, providing necessary
resources and support.
This project has immensely helped me get exposure to the
advancement in the field of Air Traffic Management (ATM).
I would also like to thank Dr. Preetham Kumar for reviewing my project report
and providing me with timely feedback to improve my report.
I am truly thankful to the faculty and staff members of Electrical and Electronics
Engineering Department (EEE) at California State University, who have been helpful for
the course of the project directly as well as indirectly in making this project successful.
Lastly, I would like to thank my family and friends for their strong support,
encouragement and strength throughout my project as well as my academic career at
school.
Manan Vyas
v
TABLE OF CONTENTS
Page
Acknowledgements………………………………………………………………………..v
List of Tables…………………………………………………………………………….vii
List of Figures…………………………………………………………………………...viii
Chapter
1. INTRODUCTION……………………………………………………………………...1
2. COLLISION DETECTION ALGORITHMS………………………………………….4
2.1 Basics of Conflict Detection Algorithms...……………………………………4
2.2 System Modeling……………………………………………………………...7
2.3 Relative Motion and Point of Closest Approach (PCA)………………………9
2.4 Calculation of PCA using Relative Motion………………………………….10
3. APPROACH AND SIMULATION…………..………………………………………17
3.1 Deterministic Approach……………………………………………………...17
3.2 Probabilistic Approach……………………………………………………….22
4. SIMULATION RESULTS……………………………………………………………33
4.1 Simulation Results…………………………………………………………...35
5. CONCLUSION……………………………………………………………………….43
Appendix MATLAB Code………………………………………………………………44
References………………………………………………………………………………..50
vi
LIST OF TABLES
1. Aircraft 1 Mean Value and Standard Deviation………………………………………30
2. Aircraft 2 Mean Value and Standard Deviation………………………………………30
vii
LIST OF FIGURES
Page
1. Basic Conflict Detection Algorithm……………………………………………………5
2. Propagation Methods of Aircrafts………………………………………………………6
3. Aircraft Co-ordinate System…………………………………………………………....8
4. Protected Airspace Zone (PAZ)……………….………………………………………..9
5. Relative Motion of Multi-aircraft System……………………………………………..10
6. Relative Motion of Oblivious Aircrafts in 3-Dimension……………………………...11
7. Conflict Scenario……………………………………………………………………...14
8. Cylindrical Protected Zone……………………………………………………………15
9. Relative Distance in 3-Dimension.……………………………………………………18
10. Deterministic Approach Flow Chart…………………………………………………19
11. Aircraft 1 Trajectory…………………………………………………………………20
12. Aircraft 2 Trajectory…………………………………………………………………21
13. Aircraft 1 Velocity Distribution……………………………………………………..23
14. Aircraft 1 Flight Path Angle Distribution…………..………………………………..24
15. Aircraft 1 Heading Angle Distribution………………………………………………24
16. Aircraft 1 x Co-ordinate Distribution………………………………………………..25
17. Aircraft 1 y Co-ordinate Distribution………………………………………………..25
18. Aircraft 1 z Co-ordinate Distribution………………………………………………..26
19. Aircraft 2 Velocity Distribution……………………………………………………..27
viii
20. Aircraft 2 Flight Path Angle Distribution.…………………………………………...27
21. Aircraft 2 Heading Angle Distribution………………………………………………28
22. Aircraft 2 x Co-ordinate Distribution………………………………………………..28
23. Aircraft 2 y Co-ordinate Distribution………………………………………………..29
24. Aircraft 2 z Co-ordinate Distribution………………………………………………..29
25. Probabilistic Conflict Detection Algorithm Flow Chart…………………………….31
26. Trajectories of Aircraft 1 & 2…………………….…………………………………35
27. Vertical Plane………………………………………………………………………..36
28. Horizontal Plane……………………………………………………………………..37
29. Relative Distance Distribution………………………………………………………38
30. Relative Distance Distribution………………………………………………………38
31. Time to PCA Distribution……………………………………………………………39
32. Relative Horizontal Distance at PCA………………………………………………..39
33. Relative Vertical Distance at PCA…………………………………………………..40
34. Probability of the Conflict…………………………………………………………...41
35. Probability of the Conflict…………………………………………………………...42
ix
1
Chapter 1
INTRODUCTION
Aircraft conflict detection has been an important research and
investigation topic in the last decade. Air Traffic Management (ATM) has always
challenged researchers aiming at making intelligent navigation and collision detection
schemes more autonomous and robust. Because of the expansions in ‘Free Flight [1]’
policies, the growth of tracking devices and the changing economic factors, conflict
detection algorithms continuously need to be reexamined and improved. Additionally, the
increasing air traffic in recent years requires more sophisticated levels for conflict
detection algorithms, including safety and capacity. Considering all these factors, conflict
detection has become one of the most important parts of today’s air traffic management
system.
The most important part of collision detection for two moving objects (i.e. aerial
or ground vehicles, robots, etc.) is to understand the environment and the motion
variables. In this project, dynamic environments for the aircrafts are considered. Collision
can be defined as a predicted violation of a separation assurance standard [2], which gave
birth to the concept of Protected Airspace Zone (PAZ). When the constraints of the
Protected Airspace Zone are violated, a collision between aircrafts exists. Outside of this
protected zone, aircrafts are free to fly in the environment. Thus, it is necessary to
2
understand the dynamics and geometry of two aircrafts that are in a collision course.
Conflict conditions can be extended for multi-aircraft systems.
For any collision detection algorithm, it is important to have the following information:
ο‚·
Basic information about the kinematics of point-mass aircrafts in the
dynamic environment.
ο‚·
Analysis of instantaneous vectors to keep track of aircraft states
periodically.
In the proposed algorithm, based on the aircraft’s position in the environment, we find the
time it takes the aircrafts to reach the Point of Closest Approach (PCA) [3]. At the PCA,
we calculate the distance between the two aircrafts and find out whether any aircraft is
within the range of their protected airspace zone. If any aircraft is within the range of the
protected zone of another aircraft, an alerting mechanism is generated showing conflict.
In practice, it is important to consider the uncertainties due to weather and other
factors such as sensors error. The information provided by the sensory system is error
prone and corrupted by uncertainties. Uncertainties are assumed with normal distribution
for the position, the velocity, the flight path angle, and the heading angle. This
information changes constantly during flight. To deal with error propagation, Monte
Carlo Simulation is suggested in this project to obtain the probability of collision. For
each Monte Carlo Simulation, aircraft information is used to determine the conflict
probability as a frequency [2]. This approach gives us the probability of collision, which
3
can be used to prioritize the mechanism for collision avoidance. The algorithm is
developed for two scenarios:
1. Deterministic case
2. Probabilistic case
The proposed algorithm is first tested for the deterministic case, where the aircrafts states
are exactly known. Euler approximation is used to approximate the dynamic equations of
motion. Then the same idea is extended for the probabilistic case, which takes
uncertainties into account.
4
Chapter 2
COLLISION DETECTION ALGORITHMS
Various algorithms are developed for collision detection in different
environments. The preliminary investigation of these algorithms is necessary to get an
understanding of the previous contributions.
The algorithms developed in the previous literature usually start with simple
approach for 2 dimensional scenarios. These algorithms can be developed for air
vehicles, ground vehicles or even sea vehicles. Basic approaches for these kinds of
algorithms allow few variables to change. These ideas are then expanded to focus on 3
dimensional systems with more state variables that include the position, attitude (flight
path angle, heading angle) and velocity. Some algorithms are discussed below.
2.1 Basic Conflict Detection Algorithms
Any traffic management system requires tracking the vehicles for conflict
detection and resolution. Some conflict detection methods use a few steps. The first thing
for any algorithm is to sense the environment. Once the environment structure is known,
this information is passed on to the state prediction stage. Using the information of the
current state of the vehicle, dynamic models are built to predict the next state of the
vehicle. This information can solely be based on the current and the next state.
5
Figure 1: Basic Conflict Detection Algorithm [4]
After predicting the dynamic states of the vehicles, conflict detection conditions
are checked. This part contains the main conflict detection information. Various
approaches have been developed for conflict detection. The selection of conflict detection
algorithm depends on the user and the environment.
6
There are many other factors that work along with the development of the
individual blocks. The dimension selection is very important. Depending on the
environment, we can choose a horizontal plane only, a vertical plane only, or both [4].
The selection can be expanded to other dimensions easily. Current and next states can be
obtained using different methods. States of the vehicles are basically represented by the
co-ordinates and the velocity. These variables can be found indirectly by using range
measurements or based on the information given beforehand for guided way point.
There are also many methods available for selecting the conflict detection
algorithm. There are three fundamental options, which are nominal, worst-case and
probabilistic [4]. In the nominal method, the future state of aircraft is projected from the
current state without considering any uncertainties. This is shown in the figure below.
Figure 2: Propagation Methods of Aircrafts [4]
In the worst-case method, the current state is believed to be taking extreme values, from
which the future state is predicted. In probabilistic methods, uncertainties are included in
the vehicle’s model and the future state is predicted based on error propagation models.
The probability of collision is calculated based on the future state information. After
conflict detection, alert messages are transferred to the conflict resolution algorithm.
7
2.2 System Modeling
In this project, the algorithm used for the implementation of collision detection is
based on the point-mass aircraft model. Previous research in this field showed the
efficiency of these types of aircrafts models. The point-mass aircraft model captures
most of the dynamical effects encountered in civil aviation aircrafts [5]. In real world
applications, there are many forces that act on the aircrafts in flight. Thrust is one of these
forces. Thrust is defined as the force that helps aircraft move within the air. It is really
important while developing algorithms for conflict detection, that aircraft models follow
a strict coordinated maneuvers. Point-mass aircraft model makes several assumptions like
aircraft thrust is always directed in the direction of the velocity vector. Point-mass models
of aircraft are only practical within the range of 200 nautical miles [5]. Most conflicts
occur in this range, which makes it practical to use the point-mass model. The point-mass
aircraft equations are described as [2]:
𝑉𝑖 =
𝛾𝑖 =
𝑔
𝑉𝑖
𝑇𝑖 −𝐷𝑖
π‘šπ‘–
− 𝑔 sin 𝛾𝑖
(ncos ∅𝑖 − cos 𝛾𝑖 )
π‘₯𝑖 = 𝑉𝑖 cos 𝛾𝑖 cos πœƒπ‘–
𝑔 𝑛 sin ∅𝑖
πœƒπ‘– = 𝑉
𝑦𝑖 = 𝑉𝑖 cos 𝛾𝑖 sin πœƒπ‘–
𝑖
cos 𝛾𝑖
𝑧𝑖 = 𝑉𝑖 sin 𝛾𝑖
(1)
8
The aircraft co-ordinates and flight path information are described in Figure 3:
Figure 3: Aircraft Co-ordinate System [2]
Fig. 3 represents the state information for one aircraft. The same assumptions are
made for other aircrafts in the environment. So, equation (1) is valid for all aircrafts. 𝑉𝑖 is
the velocity of aircraft i, 𝛾𝑖 is the flight path angle, πœƒπ‘– is the heading angle. π‘₯𝑖 , 𝑦𝑖 , 𝑧𝑖 are
positions of north, east, and upward direction, respectively. These six parameters are
assumed to be measured repetitively during the flight. Along with these input parameters,
there is also control variables needed for minimizing the probability of conflict. These
control inputs are T, n, and ∅, which are thrust, load factor, and bank angle, respectively.
9
2.3 Relative Motion and Point of Closest Approach (PCA)
In any conflict detection algorithm, it is important to understand the relative
motion of the objects. Before diving into these aspects, let us first describe the theory of
Point of Closest Approach (PCA) [3]. This protected zone is basically a cylinder with a
pre-defined radius and height from the center of the aircraft as shown in the Fig. 4. After
calculating the relative distance of each aircraft from one another, if the constraint of this
protected area is violated, it is considered as a conflict.
Figure 4: Protected Airspace Zone (PAZ) [3]
As discussed above, our algorithm considered both the deterministic and the
probabilistic cases.
10
Figure 5: Relative Motion of Multi Aircraft System.
As shown in Fig. 4, in the deterministic case, if the cylindrical region is violated
by another aircraft, it is considered a conflict. In Fig. 5, the relative motion between two
aircrafts is shown. In the probabilistic case, uncertainties are included in the aircraft path
and control inputs.
2.4 Calculation of PCA Using Relative Motion
In this project, a three-dimensional dynamic environment is considered for the
aircrafts in conflict. The relative positions and velocities between aircrafts are used. The
geometry used to find the relative motion and velocity is shown in Fig. 6.
11
Figure 6: Relative Motion of Oblivious Aircrafts in 3-Dimension [3]
12
First, Let us consider a separate horizontal plane for aircraft A. This horizontal plane is
passing through aircraft A. A second plane defined as AB is the relative motion plane,
which contains the velocity vectors of both planes. π‘£βƒ—π‘Ž and 𝑣⃗𝑏 are the velocity vectors of
aircraft A and B, respectively. The surface normal to AB is defined by the vector cross
product π‘£βƒ—π‘Ž x 𝑣⃗𝑏 [3]. Variables defined in this rotating plane are used to calculate the
position of aircraft B relative to aircraft A. This moving reference plane is theoretically
connected to the center of aircraft A. So in this scenario, the y-axis of aircraft A falls on
to the horizontal plane A. This assumption is helpful in realizing that the velocity vector
and the y-axis (both on the horizontal plane) point toward the nose of the aircraft, and the
x-axis represents the direction of the right wing of the aircraft.
The z-axis is defined in such a way that x, y and z-axis form a right hand system
which makes 𝑧⃗ = π‘₯βƒ— βˆ™ 𝑦⃗. With this consideration z-axis always points in the vertical
direction. By locating x, y, and z, the coordinates of the reference point of aircraft B, we
can calculate the relative distance of aircraft B with respect to aircraft A.
In the course of this relative motion, there are two important vectors that we
define as follows:
1) Relative distance vector π‘Ÿβƒ—
2) Dot product of the relative velocity vectors π‘£βƒ—π‘Ž βˆ™ 𝑣⃗𝑏
The relative distance vector π‘Ÿβƒ—, of aircraft B relative to aircraft A is given by:
βƒ—βƒ—
π‘Ÿβƒ— = x𝑖⃗ + y𝑗⃗ + zπ‘˜
(2)
13
Considering that the angle between π‘£βƒ—π‘Ž and 𝑣⃗𝑏 is πœƒ, the dot product can be given by:
π‘£βƒ—π‘Ž βˆ™ 𝑣⃗𝑏 = |𝑣
βƒ—βƒ—βƒ—βƒ—βƒ—||𝑣
π‘Ž βƒ—βƒ—βƒ—βƒ—βƒ—|
𝑏 cos πœƒ
(3)
which is the heading difference between the two aircrafts.
In our algorithm, π‘Ÿβƒ— is the relative distance of aircraft B relative to aircraft A at the
Point of Closest Approach (PCA). ∅ is the angle off in the relative motion plane AB
from the velocity vector π‘£βƒ—π‘Ž of aircraft A to aircraft B, and 𝛽𝑓 is the angle between the
velocity vector π‘£βƒ—π‘Ž and the distance vector π‘Ÿβƒ— [3].
The relative distance and velocity vectors are important factors to determine the
Point of Closest Approach. In this algorithm, the aircrafts have the same protected zone.
None of the aircrafts should violate this protected zone. A few assumptions are needed to
develop the equation of the PCA. For this purpose, a miss vector as shown in Fig. 6 is
taken into account. A definite conflict occurs when the motion of the aircraft B follows a
path in the relative motion plane at 90 degrees to the zero range rate line [3]. A conflict
will occur when the relative distance π‘Ÿβƒ— falls in the protected zone at the point of closest
approach.
14
Also, the motion of aircraft B relative to aircraft A will be in the direction of
relative velocity vector. Thus the time at which aircrafts are at the Point of Closest
Approach is given by [3]:
𝜏 = −(π‘Ÿβƒ— βˆ™ 𝑐⃗)/( π‘Ÿβƒ— βˆ™ 𝑐⃗)
(4)
where π‘Ÿβƒ— is the relative distance (position vector) and 𝑐⃗ is the relative velocity vector.
The result for 𝜏 gives us the information about whether the conflict avoidance algorithm
is needed. In the case where two aircrafts have passed each other and they are getting
away from each other, 𝜏 will end up having a negative value. So in that case there is no
threat of conflict. The conflict resolution algorithm is implemented when 𝜏 is positive.
A view of the conflict scenario is shown in the figure 7.
Figure 7: Conflict Scenario [3]
15
Once the time at PCA is obtained, a relative position vector at PCA is calculated.
Since the protected zone of the aircraft is a cylindrical figure, the relative position vector
at PCA can be proven by horizontal and vertical distance of the aircrafts. The relative
position vector is given by [2]:
βƒ—π‘Ÿβƒ—π‘– = βƒ—βƒ—βƒ—βƒ—βƒ—
π‘Ÿβ„Žπ‘– + βƒ—βƒ—βƒ—βƒ—βƒ—
π‘Ÿπ‘£π‘–
where
(5)
π‘Ÿβ„Žπ‘– is the horizontal distance and βƒ—βƒ—βƒ—βƒ—βƒ—
βƒ—βƒ—βƒ—βƒ—βƒ—
π‘Ÿπ‘£π‘– is the vertical distance of the cylindrical
protected zone.
Figure 8: Cylindrical Protected Zone [2]
This conflict detection algorithm is tested for two different cases. For the
deterministic approach, the algorithm described above is applied to the relative position
and velocity of the aircrafts. The algorithm gives the necessary information about
collision detection. This part is covered in more details in chapter 3. In the probabilistic
16
approach, uncertainties are included in the flight information using Monte-Carlo
simulation. These uncertainties are added to the true values for every step in the MonteCarlo simulation. The conflict probability is calculated by [2]:
π‘π‘’π‘šπ‘π‘’π‘Ÿ π‘œπ‘“ πΆπ‘œπ‘›π‘“π‘™π‘–π‘π‘‘π‘ 
P = π‘π‘’π‘šπ‘π‘’π‘Ÿ π‘œπ‘“ π‘€π‘œπ‘›π‘‘π‘’−πΆπ‘Žπ‘Ÿπ‘™π‘œ π‘†π‘–π‘šπ‘’π‘™π‘Žπ‘‘π‘–π‘œπ‘›π‘ 
(6)
17
Chapter 3
APPROACH AND SIMULATION
This chapter is dedicated to the implementation
of the collision detection
algorithm. As discussed earlier, this project addresses both the deterministic and
probabilistic cases.
3.1 Deterministic Approach
In the deterministic approach, the state of the aircrafts is exactly known at every
point in time. The aircrafts follow a strict path along the course of their travel. This is
because in the deterministic approach, aircrafts variables like velocity, flight path angle
and heading angles are considered known. This approach can be explained with the help
of basic geometry as shown in Fig. 9.
In Fig. 9, aircrafts 1 and 2 are shown in the 3-dimensional space. Aircraft 1 has
co-ordinates (π‘₯1 , 𝑦1 , 𝑧1 ) and aircraft 2 is represented by (π‘₯2 , 𝑦2 , 𝑧2 ). Once the information
representing the co-ordinates are obtained from the sensing system, the relative distance
between these two aircrafts can be found.
r = √(π‘₯1 − π‘₯2 )2 + (𝑦1 − 𝑦2 )2 + (𝑧1 − 𝑧2 )2
(7)
18
Figure 9: Relative Distance in 3-Dimension
This distance formula is only applicable when we know the current state of the aircrafts.
In our algorithm, it is important to take the fact in to account that aircrafts are moving at
constant velocity. So, values of aircrafts’ co-ordinates are also changing as they are
moving. Based on the current information, it is possible to find the next state of the
aircrafts using Euler’s approximation. Euler’s approximation is a simple first order
method, which uses step size to predict the new state of the aircraft. The flow chart below
illustrates the algorithm in the deterministic case.
19
Figure 10: Deterministic Approach Flow Chart
20
In deterministic approach, the initial positions of the aircrafts are known. The next
position of the aircrafts is determined by using Euler’s approximation, from which the
trajectory for aircraft 1 is generated using the following system:
π‘₯1 (k+1)=𝑣1 *cos 𝛾1 *cos πœƒ1 *h+π‘₯1 (k);
𝑦1 (k+1)=𝑣1 *cos 𝛾1 *sin πœƒ1 *h+ 𝑦1 (k);
𝑧1 (k+1)=𝑣1 *sin 𝛾1*h+𝑧1 (k);
where π‘₯1 , 𝑦1 , and 𝑧1 are the co-ordinates of aircraft 1 and h is the step size. In our
simulation, the velocity, the flight path angle, and the heading angle are kept constant. A
simulated trajectory is shown in Fig 11.
z co-ordinate
30
20
10
0
0
-5
-10
y co-ordinate
-15
0
2
6
4
x co-ordinate
Figure 11: Aircraft 1 Trajectory
8
10
12
21
In a similar way, Fig. 12 shows the trajectory of aircraft 2. The trajectory depends
on the starting position and the state variables like the velocity, the flight path angle and
the heading angle.
20
z co-ordinate
15
10
5
0
-5
-10
35
35
30
30
25
y co-ordinate
25
20
20
x co-ordinate
Figure 12: Aircraft 2 Trajectory
As explained in the previous chapter, after acquiring both aircrafts’ state
variables, the next step is to obtain the time to the Point of Closest Approach. Based on
the information of the motion of the aircrafts, the relative motion and the velocity vectors
are found in order to determine the time to PCA. As explained previously, if the resulting
time to PCA is negative, then the aircrafts are moving farther away from each other. If
the resulting time is positive, the conflict avoidance algorithm is activated. At the time to
reach PCA, if relative horizontal and vertical distance vectors violate the protected zone
22
constraints, it is considered as conflict. The relative vectors’ magnitude can be found
using the equation shown in the code snippet below:
π‘Ÿβ„Žπ‘– = |π‘₯2 − π‘₯1 |
π‘Ÿπ‘£π‘– = |𝑦2 − 𝑦1 ||
(8)
where, π‘Ÿβ„Žπ‘– and π‘Ÿπ‘£π‘– are the relative horizontal and vertical position vectors at PCA
respectively. The algorithm is first verified in the deterministic case. The same approach
can be developed for the probabilistic algorithm by adding uncertainties and using
Monte-Carlo simulation. This approach is explained in more details in the next chapter.
3.2 The Probabilistic Approach
The probabilistic approach is more realistic than the deterministic approach for
conflict detection and avoidance. In the previous algorithm, uncertainties were not
considered. The probabilistic approach takes uncertainties into account. In this algorithm,
the velocity, the flight path angle and the heading angle are corrupted with noise. The
states will have a probability distribution function. For example, instead of using constant
values for the velocity, the flight path angle and the heading angle, we have distributed
values as shown below.
Here is the code that allows us to generate Gaussian distribution for the state variables of
the aircrafts. The graphs below show the distribution information for one aircraft.
23
v1=0.5+0.002.*randn(10000,1);
gamma1=(0.5)+(0.02).*randn(10000,1);
theta1=(0.10*time^0.025)+(0.04).*randn(10000,1);
x1=v1.*cos(gamma1).*cos(theta1).*h+x1;
y1=v1.*cos(gamma1).*sin(theta1).*h+y1;
z1=v1.*sin(gamma1).*h+z1;
350
300
250
200
150
100
50
0
0.492
0.494
0.496
0.498
0.5
0.502
0.504
0.506
Figure 13: Aircraft 1 Velocity Distribution
0.508
0.51
24
350
300
250
200
150
100
50
0
0.42
0.44
0.46
0.48
0.5
0.52
0.54
0.56
0.58
Figure 14: Aircraft 1 Flight Path Angle Distribution
350
300
250
200
150
100
50
0
-0.05
0
0.05
0.1
0.15
0.2
0.25
Figure 15: Aircraft 1 Heading Angle Distribution
0.3
25
350
300
250
200
150
100
50
0
44.3
44.4
44.5
44.6
44.7
44.8
44.9
45
45.1
Figure 16: Aircraft 1 x Co-ordinate Distribution
350
300
250
200
150
100
50
0
3.5
4
4.5
5
5.5
Figure 17: Aircraft 1 y Co-ordinate Distribution
6
26
350
300
250
200
150
100
50
0
24
24.2
24.4
24.6
24.8
25
25.2
Figure 18: Aircraft 1 z Co-ordinate Distribution
The distribution for the position, the velocity, the flight path angle and the heading angle
information for aircraft 2 is shown in the graphs below.
27
350
300
250
200
150
100
50
0
0.492
0.494
0.496
0.498
0.5
0.502
0.504
0.506
0.508
0.51
0.512
Figure 19: Aircraft 2 Velocity Distribution
350
300
250
200
150
100
50
0
-0.56
-0.54
-0.52
-0.5
-0.48
-0.46
-0.44
-0.42
Figure 20: Aircraft 2 Flight Path Angle Distribution
-0.4
28
350
300
250
200
150
100
50
0
-0.3
-0.25
-0.2
-0.15
-0.1
-0.05
0
0.05
Figure 21: Aircraft 2 Heading Angle Distribution
400
350
300
250
200
150
100
50
0
78.4
78.5
78.6
78.7
78.8
78.9
Figure 22: Aircraft 2 x Co-ordinate Distribution
79
79.1
29
350
300
250
200
150
100
50
0
19.6
19.7
19.8
19.9
20
20.1
20.2
20.3
20.4
20.5
20.6
Figure 23: Aircraft 2 y Co-ordinate Distribution
350
300
250
200
150
100
50
0
1.9
2
2.1
2.2
2.3
2.4
Figure 24: Aircraft 2 z Co-ordinate Distribution
2.5
30
The random values generated for the aircrafts using Monte-Carlo
simulation are characterized by their mean value and standard deviation. The tables
below show the information for both aircrafts.
Aircraft 1
Mean Value
Standard Deviation
Velocity
0.5
0.002
Flight Path Angle
0.50
0.02
Heading Angle
0.10
0.04
Table 1: Aircraft 1 Mean Value and Standard Deviation
Aircraft 2
Mean Value
Standard Deviation
Velocity
0.5
0.002
Flight Path Angle
-0.50
0.02
Heading Angle
-0.10
0.04
Table 2: Aircraft 2 Mean Value and Standard Deviation
31
After the determination of the state variables information of all aircrafts in the 3dimensional space, the previously described algorithm is used to determine the existence
of conflict. Collision detection flowchart is shown in the Fig. 25
Figure 25: Probabilistic Conflict Detection Algorithm Flow Chart
32
Once the scenarios are created, the algorithm is used to find the probability of
conflict. The probability of conflict is found by using Monte-Carlo simulation. These
results are discussed in more detail the next chapter.
33
Chapter 4
SIMULATION RESULTS
After deriving the algorithms for conflict detection for multiple aircrafts in a
dynamic environment, the next goal is to perform simulations to validate the results. In
the course of the project, the first requirement is to create the aircraft motion profile as
well as the dynamic environment. Next step is to implement the algorithm using
MATLAB.
Simulation is important to validate results for navigation, conflict detection and
resolution for air vehicles. It is necessary for these algorithms to work perfectly in
practical environment. Safety is the main concern while developing these algorithms. The
goal of these algorithms is to provide safe navigation to public transportation, military
applications, etc. When these algorithms are employed in practice, it should be working
with no error. That is why simulating the algorithm for large number of vehicles is
inevitable. Correct functionality of navigation and collision detection algorithms also
helps to improve safety, as they are going to be used in commercial and military aircrafts.
There are many software packages available in industry to implement these of
algorithms. It is very important to discuss the selection of tools for the development of
the algorithm. We have used MATALB for the development. There are some strong
reasons to support the selection of this tool.
34
1) MATLAB is software that is specifically designed for numerical computations. It also
supports various symbolic computations.
2) MATLAB comes with a vast and strong library. This library consists of many built-in
functions for various complex mathematical operations. This is helpful in reducing
development time.
3) MATLAB also supports object oriented programming. With benefits of Object
Oriented Programming (OOP) and inbuilt mathematical functions, MATLAB is useful
for our project.
4) MATALB supports a large number of functions for graphical representation. In our
project, we have used many plot functions. It also provides graphs that represent the
input/output values varying with time, which is very useful in applications like this one.
First, the basic structure of the code is decided, which can be seen in the flow
charts from the previous chapter. Based on the flow charts, code is developed in
MATLAB. The complete code for both the deterministic and the probabilistic approaches
is shown in the appendix.
35
4.1 Simulation Results
Implementation of MATLAB code developed for the deterministic case is verified
by observing the simulation results.
For the deterministic approach, after defining the initial conditions, the velocity,
the flight path angle and the heading angle, the next step is to simulate their trajectories in
the space.
Figure 26: Trajectories of Aircraft 1 & 2
36
Once the state variables for both aircrafts are determined, their paths in 3D space
are shown and used to calculate the relative distance and velocity of the aircrafts, for
which, the Point of Closest Approach is obtained. After reaching PCA, the relative
horizontal and vertical distances are calculated to see if there is any PAZ violation.
The horizontal and vertical distances at PCA are calculated, from which conflict
conditions are verified. Conflict messages are generated in MATLAB when there is a
collision. For both, the deterministic and probabilistic cases the PAZ violation conditions
are applied in the MATLAB code itself. Based on the user requirements, these conditions
can be changed.
40
35
30
25
z co-ordinate
20
15
10
5
0
-5
-10
14
16
18
20
22
24
x co-ordinate
26
Figure 27: Vertical Plane
28
30
32
37
8
10
12
y co-ordinate
14
16
18
20
22
24
26
14
16
18
20
22
24
x co-ordinate
26
28
30
32
Figure 28: Horizontal Plane
For the probabilistic approach, we are adding uncertainties in the trajectory. To
achieve this, the Monte-Carlo simulation technique is used to provide randomized data
for the velocity, the flight path angle and the heading angle. Adding uncertainties results
in randomized trajectories for the aircrafts.
The distribution of these trajectories is described in the previous chapter. After
obtaining state information, the same procedure to find relative horizontal and vertical
distance at PCA is applied. The relative horizontal and vertical distances are shown
below in the graphs. Also, three important parameters used to calculate these distances,
which are the relative velocity, the relative distance and the time to PCA are shown
below.
38
2000
1800
1600
1400
1200
1000
800
600
400
200
0
-35
-30
-25
-20
-15
-10
-5
0
5
10
Figure 29: Relative Distance Disttribution
350
300
250
200
150
100
50
0
-0.1
0
0.1
0.2
0.3
0.4
Figure 30: Relative Velocity Distribution
0.5
0.6
39
45
40
35
30
25
20
15
10
5
0
-14
-12
-10
-8
-6
-4
-2
0
2
4
Figure 31: Time to PCA Distribution
350
300
250
200
150
100
50
0
33.7
33.8
33.9
34
34.1
34.2
34.3
34.4
Figure 32: Distribution of Relative Horizontal Distance at PCA
6
40
350
300
250
200
150
100
50
0
19.4
19.6
19.8
20
20.2
20.4
20.6
.
Figure 33: Distribution of the Relative Vertical Distance at PCA
After calculating the relative distances at PCA, the conflict detection algorithm is
applied in the same manner as in the deterministic approach. The conflict detection
algorithm is used to check if any aircraft is violating other aircrafts protected airspace
zone. For every iteration, conflict detection is applied, and a total number of conflicts are
found. The probability of the conflict is found as a frequency of the conflict over the total
number of Monte-Carlo simulations. The scenarios created for simulating the probability
of collision are shown below.
41
0.06
Prbablity of Conflcit
0.05
0.04
0.03
0.02
0.01
0
0
100
200
300
time
400
500
600
Figure 34: Probability of the Conflict
Now, the algorithm is applied to replicate the same scenarios for a
different set of variables by creating different trajectories for the aircrafts to verify the
correctness of the algorithm. The probability obtained for a different scenario is shown
below.
42
1
0.9
0.8
0.7
Prbablity of Conflcit
0.6
0.5
0.4
0.3
0.2
0.1
0
0
100
200
300
400
500
600
700
800
900
1000
time
Figure 35: Probability of the Conflict
In this scenario, the initial positions of the aircrafts are kept closer to each
other which results in high probability of collision. As the aircrafts start to move away
from each other, the probability of collision decreases as shown in the graph.
43
Chapter 5
CONCLUSION
This project implements a collision detection algorithm for deterministic and
probabilistic scenarios. The aircrafts move in a highly dynamic environment. Kinematic
principles are used to create conflict detection scenarios. Conflict detection is performed
based on the violation of the protected aircraft zone of one aircraft by other aircrafts.
Assuming the aircraft co-ordiantes and velocities, the time to point of closest appraoch
(PCA) can be obtained. The realtive position vector at PCA is used to check for conflict
conditions. For the deterministic case, flight variables like velocity, flight path angle and
heading angle are exactly known. Euler’s approxmation is used to create aircraft
trajectories. In the probabilistic approach, random values of the flight variables were
applied using Monte-Carlo simulation. Probability was found as a function of the total
number of conflicts over total number of Monte-Carlo simulations. The algorihtm was
implemented using MATLAB. Iterative simulation proved to be very helpful to verify the
algorithm. Graphs and simulation results are provided to check for the correct
functionality of the algorithm. This algorithm can be expanded or modified for different
environments and user requirements.
44
APPENDIX
MATLAB Code
File Name: deterministic.m
x1=0;
y1=0;
z1=0;
x2=34;
y2=22;
z2=12;
N=10000;
timeA = [];
rhiA = [];
rviA = [];
tf=10;
h=0.25;
conflict=0;
for time=0:h:tf
timeA =[timeA time];
v1=3;
gamma1=pi/3;
theta1=-pi/6*time^0.25;
x1=v1*cos(gamma1)*cos(theta1)*h+x1;
y1=v1*cos(gamma1)*sin(theta1)*h+y1;
z1=v1*sin(gamma1)*h+z1;
x1d=v1*cos(gamma1)*cos(theta1);
y1d=v1*cos(gamma1)*sin(theta1);
45
z1d=v1*sin(gamma1);
plot3(x1,y1,z1,'ro')
xlabel('x co-ordinate')
ylabel('y co-ordinate')
zlabel('z co-ordinate')
grid on
hold on
v2=3;
gamma2=-pi/3;
theta2=pi/6*time^0.25;
x2=v2*cos(gamma2)*cos(theta2)*h+x2;
y2=v1*cos(gamma2)*sin(theta2)*h+y2;
z2=v2*sin(gamma2)*h+z2;
x2d=v2*cos(gamma2)*cos(theta2);
y2d=v2*cos(gamma2)*sin(theta2);
z2d=v2*sin(gamma2);
plot3(x2,y2,z2,'go')
xlabel('x co-ordinate')
ylabel('y co-ordinate')
zlabel('z co-ordinate')
grid on
hold on
pause
r=[x1-x2 y1-y2 z1-z2];
disp(r);
c=[x1d-x2d y1d-y2d z1d-z2d];
a= r(1)*c(1) + r(2)*c(2) + r(3)*c(3);
b= c(1)*c(1) + c(2)*c(2) + c(3)*c(3);
t= - (a/b);
46
if t>0
rhi = abs(x2-x1);
rvi = abs(y2-y1);
str2=sprintf('rhi=%f rvi=%f',rhi,rvi);
disp(str2);
else
disp('Aircrafts are going away from each other')
end
if (rhi<35) | (rvi<22)
conflict=conflict+1;
disp('There is a conflict')
end
rhiA = [rhiA rhi];
rviA = [rviA rvi];
end
plot (rhiA)
xlabel('time(sec)');
ylabel('Horizontal Distance at PCA');
plot (rviA)
xlabel('time(sec)');
ylabel('Vertical Distance at PCA');
47
File Name : probabilistic.m
x1=0;
y1=0;
z1=0;
x2=34;
y2=22;
z2=12;
tf=50;
h=2.5;
conflict=0;
no_conflict=0;
P=0;
N=10000;
timeA = [];
rhiA = [];
rviA = [];
PA = [];
for time=0:h:tf
timeA =[timeA time];
disp(timeA)
v1=0.5+0.002.*randn(N,1);
gamma1=(0.50)+(0.02).*randn(N,1);
theta1=(0.10*time^0.025)+(0.04).*randn(N,1);
x1=v1.*cos(gamma1).*cos(theta1).*h+x1;
y1=v1.*cos(gamma1).*sin(theta1).*h+y1;
z1=v1.*sin(gamma1).*h+z1;
x1d=v1.*cos(gamma1).*cos(theta1);
48
y1d=v1.*cos(gamma1).*sin(theta1);
z1d=v1.*sin(gamma1);
plot3(x1,y1,z1,'ro')
xlabel('x co-ordinate');
ylabel('y co-ordinate');
zlabel('z co-ordinate');
grid on
hold on
v2=0.5+0.002.*randn(N,1);
gamma2=-(0.50)+(0.02).*randn(N,1);
theta2=-(0.10*time^0.025)+(0.04).*randn(N,1);
x2=v2.*cos(gamma2).*cos(theta2).*h+x2;
y2=v1.*cos(gamma2).*sin(theta2)+y2;
z2=v2.*sin(gamma2)+z2;
x2d=v2.*cos(gamma2).*cos(theta2);
y2d=v2.*cos(gamma2).*sin(theta2);
z2d=v2.*sin(gamma2);
plot3(x2,y2,z2,'go');
xlabel('x co-ordinate');
ylabel('y co-ordinate');
grid on;
hold on;
pause;
r=[x1-x2 y1-y2 z1-z2];
disp(r);
c=[x1d-x2d y1d-y2d z1d-z2d];
disp(c);
end
for i=1:N;
a(i)= r(i,1)*c(i,1) + r(i,2)*c(i,2) + r(i,3)*c(i,3);
49
b(i)= c(i,1)*c(i,1) + c(i,2)*c(i,2) + c(i,3)*c(i,3);
t(i)= - (a(i)./b(i));
if t(i)>0
rhi = abs(x2-x1);
rvi = abs(y2-y1);
str2=sprintf('rhi=%f rvi=%f',rhi,rvi);
disp(str2);
if (rhi<34) | (rvi<22)
conflict=conflict+1;
disp('There is a conflict')
disp(conflict)
P = (conflict/N);
disp(P)
PA = [PA P]
end
else
disp('Aircrafts Going away from each other')
no_conflict=no_conflict+1;
end
end
plot (PA);
%plot (timeA,rviA)
xlabel('time');
ylabel('Prbablity of Conflcit');
plot (rhiA)
xlabel('time(sec)');
ylabel('Horizontal Distance at PCA');
plot (rviA)
xlabel('time(sec)');
ylabel('Vertical Distance at PCA');
50
REFERENCES
[1]. Lee C. Yang, James K. Kuchar, “Prototype Conflict Alerting System for Free
Flight”, American Institute of Aeronautics and Astronautics, Inc., 1997.
[2]. Kwang-Yeon Kim, Jung-Woo Park, Min-Jea Tahk, “A Probabilistic Algorithm for
Multi-aircraft Collision Detection and Resolution in 3-D”, KSAS International Journal,
Vol 9, No. 2, November 2008.
[3]. Jimmy Krozel, Mark E. Peters and George Hunter, “Conflict Detection and
Resolution for Future Air Transportation Management”, Seagull Technology, Inc., 1997.
[4]. James K Kuchar, Lee C. Yang, “Survey of Conflict Detection and Resolution
Modeling Methods” American Institute of Aeronautics and Astronautics, Inc., 1997.
[5]. P. K. Menon, G. D. Sweriduk and B. Sridhar, “Optimal Strategies for Free Flight Air
Traffic Conflict Resolution”, Optimal synthesis, 1997.
Download