Development of an Avoidance Algorithm for Multiple, Autonomous UAVs in a Finite Space Andrew Proctor High Point University E-mail: [email protected] 20, June 2010 Abstract The use of UAVs in both military and civilian applications has become increasingly popular in recent years. In order for UAVs to reach their full potential, collision avoidance technology must be integrated into a UAVs software so they can function safely and effectively alongside civilian aircraft and other UAVs. The focus of this research is to develop and implement an efficient collision avoidance algorithm that is capable of maintaining and redirecting multiple, autonomous UAVs within a finite space.

1

Introduction

With the recent growth in the applications and abilities of Uninhabited Ariel Vehicles (UAVs), so too does the interest in these cutting edge planes. With applications ranging from military reconnaissance or attack missions to civil applications such as firefighting and surveillance, the potential for UAVs seem limitless. For UAVs to realize their full potential, a self-organizing separation assurance technology must be developed [2]. A collision avoidance system had been in development since the 1950’s, but unfortunately, it took more than a half-dozen mid-air collisions and tragedies to force the Federal Aviation Administration (FAA) to take action. Traffic Collision Avoidance System (TCAS) II is a collision avoidance system that has been developed and used in the United States since 1994. TCAS II has been mandatory for all civilian turbine-engined aircraft carrying more than 30 passengers. With the lives of both 1

Figure 1: Hell-Fire UAV is used in military applications

passengers and crew members, and the planes themselves at stake, TCAS II has paid for itself time and time again. TCAS II alerts a pilot of a potential collision and provides him/her an alternate course that would take the aircraft out of harms way. It is solely up to the pilot to maneuver the plane to safety. Since, the introduction of TCAS II, the risk of mid-air collisions has been reduced. If UAVs are to be integrated into our airspace, they must possess the same type of technology. This paper illustrates the search for a collision avoidance algorithm that is suitable of handling multiple UAVs and the implementation of that algorithm.

2

Defining the Problem

Concisely stated, our problem or challenge is to fly six to twelve UAVs in a finite space without them colliding into each other. There will be a ground station where a collision avoidance algorithm will be run and new coordinates will be given to each of the UAVs via wireless transmission. This problem has been broken up into three smaller parts. The first is building the planes, balancing them and readying them for flight, and calibrating the controls for them. The second part of the problem is

2

creating a ZigBee mesh network using XBee-PRO modules that will be installed on each of the UAVs for communication. The third and final part of the problem will be devising a collision avoidance algorithm. In regards to collision avoidance, there are several things that must be taken into consideration. First many algorithms split the problem into “sensing” and “avoiding” obstacles. The primary obstacles we have are other UAVs, Each UAV is equipped with a GPS which will broadcast it’s current latitude and longitude every second. Since we will have access to each position of every UAV, there will be no need to worry about a “sensing” technique. Another consideration is the fact there will be multiple UAVs. Many algorithms work and work well, but with the addition of just a few UAVs, a simply problem can become very complex. USAF Gen. Mike Loh (Ret.) said of this problem, “Once you get more than two or three [unmanned aircraft] in the air at a time, you have complexity you cant imagine” [1]. Obviously, choosing an algorithm with a balance of performance and efficiency is imperative. There is the mobility of a UAV to consider. UAVs do not have the same degrees of freedom that a car does. A UAV can’t come to a stop or back up. The algorithm will have to allow the UAV to move in a fluid and constant movement. The final consideration deals with sending data over the mesh network. No network is 100 percent efficient. There will undoubtedly be some sort of packet loss. Whatever the cause, a loss of packet and data latency will have to be dealt with in the avoidance algorithm.

3

Possible Solutions

Because of the considerations previously listed, we must be careful of the algorithm we chose to implement. There are many methods, algorithms, etc that have been proposed to solve this problem. These algorithms can be classified into four categories. They are: Graphical techniques, Classical algorithms, Heuristic based techniques, and Potential Field methods. All of these methods have their strengths and weaknesses. Because of this, the potential field method is of particular interest. Unlike TCAS II, a potential field method functions differently by giving a separation assurance to each of the UAVs. This separation assurance acts as a bubble or cushion for the UAVs. The difference between TCAS II and potential fields is the same between a collision and a conflict respectively. A conflict is defined as a predicted violation of a separation assurance standard. By this definition, a conflict exists when two aircraft will come within a certain distance of each other at some point and time in the future [2]. The amount of separation assurance will be easily adjusted inside the algorithm and determine when two UAVs are in a conflict with one another. In the United States, the separation assurance standard is defined by 3

the FFA. “For civil aviation, an example of the separation standard is five miles lateral spacing and 1000 feet vertical spacing for enroute cruise” [2]. In contrast to a conflict, a collision implies actual metal to metal contact between planes. When TCAS II is active, it is acting as a safety net or a last resort to keep a collision from happening.

Figure 2: A potential field [2]

One characteristic of potential fields is their overwhelming simplicity and elegance. The potential field, by definition, is a field of particles with multiple charges. In this field there are both positive and negative charges with opposite charges attracting and like charges repulsing. Figure 2 is an example of a potential field applied to the problem of organizing multiple, autonomous UAVs. The destinations are designated with negative charges and will remain stationary. Airplanes have been given a positive charge. While in flight, the planes will repulse one another while being attracted to their destinations. In this case, the planes should maneuver around each other while eventually making their way to their respective destinations. One of the benefits of a potential field method is the algorithm is extremely robust or flexible. It can be tweaked and modified to cater to a specific problem. A modification and extension of the potential field method is the Vector Force Field (VFF) method. With the limitations in mobility for UAVs, the VFF method is especially useful because it is “designed for real-time obstacle avoidance with fast mobile robots. The VFF method allows fast, continuous, and smooth motion of the controlled vehicle among unexpected obstacles” [3]. The VFF method works in a two-dimensional, cartesian grid as seen in figure 3. Each cell in the grid has a 4

Figure 3: An example of the VFF method applied to an autonomous robot. [3]

5

certainty value (C) that represents the likelihood or “certainty” of an obstacle in that space. If there is an object in a grid-space, a unit vector from the object to the robot is found. The unit vector points in the direction of the repulsive force on the robot. The certainty value is multiplied with a repulsive force constant (Fcr ) and then divided by the distance (d) from the robot to the cell of interest. This scalar quantity is multiplied to the unit vector to become the force that acts on the robot due to that one object and is shown in equation 1 [3].   Fcr Cij xi − x0 yi − y0 xˆ yˆ (1) Fij = d(i, j) d(i, j) d(i, j) The scalar quantity is divided by distance so that the force is inversely proportionate to it. This gives a higher priority to objects that are closest to the robot at the current time. After each repulsive force is calculated, they are all summed and denoted as Fr as seen in equation 2 [3]. X Fr = Fij (2) ij

In equation 3 [3], an attractive force (Ft ) serves as the negatively charged particles in the potential field and the overall goal or destination for the robot. The unit vector from the destination to the robot is multiplied with an attractive force constant known as Fct .   xt − x0 yt − y0 xˆ yˆ (3) Ft = Fct dt dt The sum of both the repulsive force vector and the attractive force vector will yield a resultant vector (R) which gives the new direction for the robot to proceed in[3]. R = Fr + Ft

(4)

While the potential field method is praised for its simplicity and elegance, it isn’t without its own faults and shortcomings. There are a couple of outstanding problems that need to be addressed. The first problem is a trap situation that is caused by a local minima. This problem is the most popular and most often referred to when using the potential field method. These traps can be created by a variety of objects but most often occurs when the robot runs into a dead end due to a con caved object such as a U-shaped obstacle. In figure 4, the red robot is moving its way through several obstacles and other robots (yellow) towards its destination using a potential field method. Currently, the robot is caught in the local minima trap that is inherent to potential fields. The local minima trap can be avoided with a 6

Figure 4: The local minima trap.

global path planner (GPP). With this method, the local path planner monitors the robot’s path. When a trap-situation is detected, the GPP is invoked to plan a new path based on the available information [3]. The other problem prevents the robot from moving in between two closely spaced obstacles. In figure 5, the repulsive forces from obstacle 1 and 2 are combined into the two lumped repulsive forces Fr1 and Fr2 , respectively. The sum of all repulsive forces (Fr = Fr1 + Fr2 ) points straight away from the opening between the two obstacles [3]. Fortunately for this research, obstacles are other UAVs that are in a constant state of motion. Due to the continual movement of the UAV’s, the local minima or passing between two obstacles will not present a problem. Though, in any case, these problems are manageable and can be dealt with.

4

Development and Testing of the Algorithm

The original implementation of the potential field method was very simplistic. It took the coordinates of all surrounding obstacles, calculated repulsive force vectors (Fr ), summed them up, added the summed Fr vectors to an attractive force vector (Ft ) to get a resultant vector (R), and the R vector pointed to the new waypoint for the UAV.

7

Figure 5: Two closely spaced obstacles prevent the robot from passing through.

This was a simple enough, but because of several problems, it became obsolete. One problem was the R vector was weighted too much. Depending on how many obstacles and how close those obstacles were, the R vector could produce a waypoint very far from the UAV and could place it in another conflict. This was dealt with by finding the unit vector of R and then multiplying it by a desired weight. The unit vector would give the direction the UAV should fly in and the weight acted as a step size. With a smaller step size, the UAV would follow a smoother curve as opposed to the larger step size, which would produce a jagged and, at times, a chaotic flight path. The other major problem with the original draft of the potential field method was its inability to handle head on collisions. This scenario occurred with both static and dynamic obstacles. If a UAV’s destination was placed directly behind an obstacle, the UAV would oscillate back and forth without ever moving left or right so that it could proceed Figure 6: Two UAVs engage in a head around the obstacle. In figure 6, a head on conflict. 8

Figure 7: The left graph shows flight path with too large of a step size which causes the path to oscillate. The graph on the right shows the improved flight path due to a smaller step size. on scenario in the second implementation of the potential field method is illustrated. Each UAV’s starting position is denoted by a blue asterisk and their respective flight paths are graphed in blue and purple. The green points are destinations and place the planes on a head on collision course. To cope with this special case, a check was placed in the algorithm and if the head on scenario was detected, a slight left hand turn or sidestep was added to the flight path. Therefore, the UAVs would be able to move around each other and maintain their separation assurance. Once the new draft of the algorithm was completed, the flight paths were much smoother and reasonable and head on dead locks were resolved. Figure 7 shows the first implementation trying to resolve a conflict and then the improved, second implementation resolving the same exact scenario with better results. 9

5

Conclusion

In order for UAVs to become a regular choice aircraft in our skies, work on avoidance algorithms such as the potential field method must continue. The potential field algorithm has shown promising results for the task at hand. It’s robustness has allowed a great deal of flexibility which has played into the problems favor. For future work, boundaries need to be established so the UAVs will be sure to operate within a finite space. Another area of possible improvement would take ground speed and the UAV’s current direction it is traveling in. This would allow the UAV to operate within its maneuvering capabilities. This research has shown the potential field method, with some modifications, can serve as a basis for an avoidance algorithm designed for multiple, autonomous UAVs.

6

Acknowledgements

I would like to thank Dr. Biaz, Dr. Crouse, and Dr. Chapman for their continual support and advice. Without the assistance of these people, none of this would have been possible. This work was also funded by NSF grant number CNS-0851960.

References [1] D. Fulghum. Aircraft, ucavs: An uneasy mix. Aviation Week and Space Technology, page 68, August 3 1998. [2] Wallace E. Kelly III. Deconfliction of multiple, autonomous vehicles. Technical report, Rockwell Collins, Advanced Technology Center. [3] D.K. Liu, D. Wang, and G. Dissanayake. A force field method based multi-robot collaboration. In Robotics, Automation and Mechatronics, 2006 IEEE Conference on, pages 1 –6, 1-3 2006.

10

Development of an Avoidance Algorithm for Multiple ...

Traffic Collision Avoid- ance System (TCAS) II is a collision avoidance .... the controlled vehicle among unexpected obstacles” [3]. The VFF method works in.

782KB Sizes 7 Downloads 286 Views

Recommend Documents

A Robust Algorithm for Local Obstacle Avoidance
Jun 3, 2010 - Engineering, India. Index Terms— Gaussian ... Library along with Microsoft Visual Studio for programming. The robot is equipped with ...

Rapid development of multiple nuclear loci for ...
Jan 24, 2008 - t_course.short.html#STAND), and the Fugu EST db was. BLASTed against it (BLAST ..... calculated using the 10 test taxa described in the text.

Rapid development of multiple nuclear loci for ... - CiteSeerX
Jan 24, 2008 - mated using Python scripts written by REA with help from STK (see ..... ML-corrected divergences among the squamate test taxa ranged from ...

Rapid development of multiple nuclear loci for ... - CiteSeerX
Jan 24, 2008 - The ease of amplification and relatively fast evolutionary rate of .... mated using Python scripts written by REA with help from STK (see Fig. 1).

An Evolutionary Algorithm for Homogeneous ...
fitness and the similarity between heterogeneous formed groups that is called .... the second way that is named as heterogeneous, students with different ...

An Algorithm for Implicit Interpolation
More precisely, we consider the following implicit interpolation problem: Problem 1 ... mined by the sequence F1,...,Fn and such that the degree of the interpolants is at most n(d − 1), ...... Progress in Theoretical Computer Science. Birkhäuser .

An Adaptive Fusion Algorithm for Spam Detection
An email spam is defined as an unsolicited ... to filter harmful information, for example, false information in email .... with the champion solutions of the cor-.

An Algorithm for Implicit Interpolation
most n(d − 1), where d is an upper bound for the degrees of F1,...,Fn. Thus, al- though our space is ... number of arithmetic operations required to evaluate F1,...,Fn and F, and δ is the number of ...... Progress in Theoretical Computer Science.

An Adaptive Fusion Algorithm for Spam Detection
adaptive fusion algorithm for spam detection offers a general content- based approach. The method can be applied to non-email spam detection tasks with little ..... Table 2. The (1-AUC) percent scores of our adaptive fusion algorithm AFSD and other f

An Algorithm for Nudity Detection
importance of skin detection in computer vision several studies have been made on the behavior of skin chromaticity at different color spaces. Many studies such as those by Yang and Waibel (1996) and Graf et al. (1996) indicate that skin tones differ

An Implementation of a Backtracking Algorithm for the ...
sequencing as the Partial Digest Problem (PDP). The exact computational ... gorithm presented by Rosenblatt and Seymour in [8], and a backtracking algorithm ...

An exact algorithm for energy-efficient acceleration of ...
tion over the best single processor schedule, and up to 50% improvement over the .... Figure 3: An illustration of the program task de- pendency graph for ... learning techniques to predict the running time of a task has been shown in [5].

An Improved Algorithm for the Solution of the ...
tine that deals with duplicate data points, a routine that guards against ... numerical algorithm has been tested on several data sets with duplicate points and ...

An application of genetic algorithm method for solving ...
To expound the potential use of the approach, a case example of the city Kolkata, ... From the mid-'60s to early '70s of the last century, a .... early stage. ... objective Fk(X), k = 1, 2, ..., K. Then the fuzzy goal ..... enforcement of traffic rul

An Iterative Algorithm for Segmentation of Isolated ...
of overlapped, connected and merged characters with in a word. Structural features are helpful in segmentation of machine printed text but these are of little help ...

An exact algorithm for energy-efficient acceleration of ...
data transfers given that the adjacent nodes are executed on different processors. Input data nodes represent the original input data residing in CPU memory.

An algorithm for symbolic solving of differential ...
The next step is solving the algebraic system with polynomial coefficients and the right ... ferential equations and computer algebra systems. Minsk (2005) 195-.

Imperceptible Relaxation of Collision Avoidance ...
Figure 1: Hundreds of characters are causing collisions in these crowd scenes. They are however .... How to evaluate the employed believability trade-offs and validate their selection in ..... 23 to 50 years old (29, 7 ± 7.7) took part in this exper

Avoidance versus use of neuromuscular blocking agents for improving ...
... adults and adolescents.pdf. Avoidance versus use of neuromuscular blocking agents f ... on or direct laryngoscopy in adults and adolescents.pdf. Open. Extract. Open with. Sign In. Main menu. Displaying Avoidance versus use of neuromuscular blocki

Development of Object Tracking Algorithm and Object ...
Now we applied the SSD formula for a vector with 3 components. 2. _. 1. ( , ). ||( (, ). ) ( (, ). )|| .... Fig 3.4: The plot Original values vs. calculated disparity values. 12 ...

An Improved Divide-and-Conquer Algorithm for Finding ...
Zhao et al. [24] proved that the approximation ratio is. 2 − 3/k for an odd k and 2 − (3k − 4)/(k2 − k) for an even k, if we compute a k-way cut of the graph by iteratively finding and deleting minimum 3-way cuts in the graph. Xiao et al. [23

an algorithm for finding effective query expansions ... - CiteSeerX
analysis on word statistical information retrieval, and uses this data to discover high value query expansions. This process uses a medical thesaurus (UMLS) ...