There are a variety of scenarios in which the mission objectives rely on an unmanned aerial vehicle (UAV) being capable of maneuvering in an environment containing obstacles in which there is little prior knowledge of the surroundings. With an appropriate dynamic motion planning algorithm, UAVs would be able to maneuver in any unknown environment towards a target in real time. This paper presents a methodology for twodimensional motion planning of a UAV using fuzzy logic. The fuzzy inference system takes information in real time about obstacles (if within the agent's sensing range) and target location and outputs a change in heading angle and speed. The FL controller was validated, and Monte Carlo testing was completed to evaluate the performance. Not only was the path traversed by the UAV often the exact path computed using an optimal method, the low failure rate makes the fuzzy logic controller (FLC) feasible for exploration. The FLC showed only a total of 3% failure rate, whereas an artificial potential field (APF) solution, a commonly used intelligent control method, had an average of 18% failure rate. These results highlighted one of the advantages of the FLC method: its adaptability to complex scenarios while maintaining low control effort.
Increasingly over the years, autonomous robots and vehicles are being used to perform missions that are considered “dull, dirty, and dangerous” in both military and civil operations, such as operations in nuclear power plants, for the exploration of Mars, to investigate behind enemy lines in battle, wildfire surveillance, border patrols, and weather forecasting [
Additionally, there are a variety of scenarios in which the mission objectives rely on a UAV being capable of maneuvering in a dynamic, changing environment or in an environment in which there is no prior knowledge of the surroundings. Many military applications depend on UAVs avoiding threats due to antiaircraft missiles or enemy warplanes. In these situations, not only are these obstacles dynamic, but there is no way to plan ahead of the mission to avoid them due to uncertainty associated with the “fog of war.” An important civilian application concerns wildfires, which cause destruction of thousands of acres, millions of dollars in damage, and cost many people their lives [
In all these scenarios, mission effectiveness is dependent upon, or could be improved by, these vehicles autonomously path planning in their environment. Because most effective path planning algorithms rely on
In the scenario studied in this research effort, an UAV uses basic heuristics to travel to a known target while avoiding various, static obstacles. A sensor system is used to provide feedback about the obstacles in the UAV’s local environment. This information is then processed at each sampling time and used as one of the factors to determine the motion of the UAV for obstacle avoidance and path planning to the target.
Given a starting point and a target location, a path planning strategy must take into account dynamic and kinematic constraints of the vehicle, as well as information about obstacles, to generate a path. Therefore, this work was done to
model an unmanned air vehicle including kinematic and dynamic constraints,
develop a control strategy for motion planning: path planning to a target while using sensor information about the local environment for obstacle avoidance,
validate the control strategy in a MATLAB simulation,
analyze and interpret contributions and limitations of the methodology.
Pathplanning and motion planning algorithms encompass a variety of applications and needs. For the most part, path planning can be simplified to navigating a robot to a distance point safely, that is, avoiding collisions along the way. To make scenarios realistic, algorithms must be able to handle varying numbers of objectives, complex tasks, different constraints, and uncertainty [
Because path planning and motion planning algorithms have been studied for many years, excellent strategies have been developed for path planning in obstacle environments. Those methods that have been studied and utilized most tend to fall under roadmap method category: visibility graphs, Voronoi diagrams, and cell decomposition. Roadmap methods create a graph that connects an initial, starting point to a final, target location around obstacles within the environment. Roadmaps utilize the following definitions: the total space in the environment in called the
While roadmap methods have their advantages, they also have their downfalls (see Table
Advantages and disadvantages of several, common path planning techniques.
Visibility graphs  Voronoi method  Approx. cell decomp.  Artificial potential fields  Fuzzy logic  

Optimal  XX  
Complex obstacles  XX  X  XX  
Higher dimensions  XX  XX  XX  
Computable online  XX  XX  
Uncertainty  X  X  XX  XX  
Finds impossibilities  XX  XX  
Ease to implement  XX  XX 
Much focus has also been on intelligent strategies like potential fields [
Potential fields for motion planning were originally used for online collision avoidance for when a UAV does not have prior knowledge of the obstacle but senses them in real time. The relatively simple concept treats the vehicle as a point under the influence of an artificial potential field where the variations in the space represent the structure of the environment. The attractive potential reflects the pull of the vehicle to the goal and the repulsive potential reflects the push of the UAV from the obstacles [
One of the major disadvantages to this method is the tendency to get caught in local minima, causing them to fail. This is due to the fact that the methodology basically acts as a fastest descent approach. For example, this occurs when a vehicle encounters a Cshaped obstacle. While research has been done to work around this problem, this singular problem is the main focus creating a path planning algorithm based on the artificial potential field approach [
In addition to artificial potential fields (APFs) as an intelligent control method, fuzzy logic has shown excellent results for path tracking and collision avoidance for both mobile robots and UAVs [
Additionally, fuzzy logic has similar benefits to APFs (i.e., adaptability to uncertainty, nearoptimal results, ability to compute online, etc.), as well as the flexibility to work around some of the issues APF methods have with local minima. Path tracking for mobile robots show highquality solutions [
Motion planning in realtime is becoming an increasingly studied field as mobile robots and Unmanned Aerial Vehicles become more autonomous to keep up with growing demands [
While the literature shows the advantages of using fuzzy logic for path tracking and planning for robots and path tracking for UAVs, to the best of the author’s knowledge it does not address motion planning for UAVs in realtime.
Similar strategies used for path tracking, motion planning, and obstacle avoidance of mobile robots and UAVS using fuzzy logic are exploited here in this paper. While there has been extensive work done for mobile robots, the applications to UAVs have been limited. Therefore, this work extends previous research on path tracking with obstacle avoidance and is motivated by the fact that these methodologies have shown excellent results in the past. This strategy takes information about obstacles and a target location to motion plan in real time. The contributions of this work can be summarized as follows.
The solution takes UAV dynamics into account.
It is a robust system in that it makes no assumptions about the environment a priori. Therefore, it works well with limited or no information.
The system is not just reactionary to obstacles: it continues to path plan towards the target while avoiding obstacles. This allows for better solutions and makes it less likely to get caught in local minima.
No assumptions are made about the target location: it can be static or dynamic.
Fuzzy inference systems (FISs) are fast and can be implemented online with limited onboard processor capability.
The fuzzy system has a very low failure rate.
The fuzzy system yields near optimal performance in real time.
The problem of path planning in twodimensional space is formulated by generating a path between a known initial state,
UAV in inertial reference frame.
Secondorder differential equations describing the aircraft autopilot system were developed by Buzogany et al. [
Both the velocity and heading angle [
In this problem setup, the agent has a sensing range that is considered able to sense obstacles within ±90° and within a certain sending radius as shown in Figure
Sensing radius of agent.
For the purpose of this investigation, several simplifying assumptions were made without taking away from the applicability of the developed approach. While the control methodologies developed in this research can be extended to be used in three dimensions, it is assumed that all motion is in two dimensions; that is, the altitude is removed as a degree of freedom (altitude is constant). It is also assumed that wind is negligible (the UAV cruise speed is much greater than wind speed). Furthermore, the aircraft is a point mass, and therefore, no moment effects are considered. Additionally, the dynamic constraints of the aircraft are assumed to be known.
To isolate the performance of the control methodology, several assumptions were made on the capabilities of the sensor system. The agent is assumed to be able to detect obstacles within its sensing range in real time and define them accordingly. The capabilities of sensors are discussed briefly by Mujumdar and Padhi [
The position of the UAV and the target location is assumed to be known by a GPS (global positioning system) and to be accurate. Furthermore, this information is updated at a reasonable sampling time. Additionally, the start location of the UAV and the target positions are given by some outside planner (known GPS locations), and there are no obstacles at these locations. Finally in this work, it is assumed that a feasible solution exists. That is, the UAV can navigate around the obstacles safely to the target location. This includes the assumption that the target location is a “safe” distance away from an obstacle.
Due to the advantages that fuzzy logic presents in circumstances where the environment is continually changing and incomplete information is available, it is the basis behind the control strategy presented here for motion planning. In this section, the overall control system is described in detail, including control inputs and outputs, the decisionmaking rule base, and defuzzification calculation, and the methodology used for practical implementation issues.
Like previously discussed, fuzzy logic manipulates inputs using heuristic knowledge and typically converts them to outputs in three stages: fuzzification, decisionmaking logic, and defuzzification. The fuzzy logic controller can be visualized in Figure
Fuzzy logic control system.
For this problem setup, four inputs are used for the fuzzification interface and two outputs are given after defuzzification. Inputs into the system are as follows: distance from the UAV to the obstacle, angle between the UAV and the obstacle, the distance to the target, and the error between the current heading angle of the UAV and the angle of the target in relation to the inertial reference frame. The obstacle inputs were used by Dong et al. [
The distance to the obstacle (Figure
Input: distance between obstacle and agent (very far is for an obstacle out of sensing range).
Input: angle between obstacle and agent heading angle.
Input: distance between target and agent.
Input: angle between target and agent heading angle.
With these inputs and a rule base, the control input for the system is obtained. That is, the outputs of the fuzzy inference system, the percent of the maximum velocity and the heading angle change, are used as the control into the system. Therefore, the outputs of the FIS are the percent of maximum velocity and the heading angle change. The Mamdani method is used here, which expects the output membership functions to be fuzzy sets (as opposed to crisp values). The output velocity (Figure
Output: percentage of maximum velocity.
Output: heading angle deviation.
Rules relating the inputs and outputs for the fuzzy logic controller are set up in the form of ifthen statements and are based on heuristics and human experience with navigating through an environment (similar to driving a car). The rules for the fuzzy inference system can be summed up in some simple decisionmaking logic. There are a total of 40 rules for this setup, and the rules can be broken up into two situations: if there is an obstacle within the sensing range or not. Once the rules were formed, the membership functions were tuned based on the distance travelled when compared to optimal solutions until the quality of the solutions reached a plateau.
The main objective of the controller when there is no obstacles within its sensing range becomes to plan a direct path to the agent’s primary target. In this case, the distance to the obstacles is set to “very far” away (much larger than the sensing radius). Path planning is then done by altering the UAV’s heading angle to match that of the angle of the target in the inertial reference frame or by driving the error between the two angles to zero. For the cases in which there are no obstacles in range and the target is very far away, the UAV tends towards its maximum operating speed. When the agent reaches its target location, the agent alters its velocity to slow down and complete mission objectives while still driving the angle error to zero. Again, these rules stem from the rules used to drive a car, and can be summarized as follows.
One of the disadvantages to an intelligent control method like artificial potential fields for path planning is the tendency to get caught in local minima. For fuzzy logic, difficulty can occur at symmetrical or large, concave obstacle. However, the advantage to using fuzzy logic is that it is adaptable to incorporating additional rules to circumvent these issues. In this circumstance, the FIS uses only one point as the input to calculate the distance to the obstacle and always uses the closest point to the obstacle. Due to this, additional logic must be included.
To avoid this issue, a simple logic was implemented and verified to redefine obstacles that come within the agent’s sensing range. If the agent appropriately evaluates the obstacle within the sensing range, it can overcome these issues. That is, if the agent encloses the areas within a certain minimum, “safe” radius (i.e., “redefines” its environment and what it sees as an obstacle), it can navigate out of the situations that cause these minima.
The mathematical formulation is as follows: if the
Let
This logic holds for not only concave obstacles, but also for convex obstacles. If a concave obstacle is too small for the UAV to turn out of, the algorithm would define the whole area as an obstacle. This would make sense since the UAV would not be able to navigate in and out of the obstacle, and, therefore, the UAV will never make its way into the obstacle in the first place. For convex obstacles, the agent would just be redefining an area inside the obstacle (an area that the agent would already be unable to reach).
If the concave obstacle is large enough for the UAV to venture into, the UAV will be able to redefine the obstacle and navigate out, even with a minimum turn radius. This is shown in Figure
Agent Redefining a Large, Concave Obstacle.
For symmetrical obstacles, the UAV redefines as the area between the two as an “obstacle.” Therefore, as the UAV approaches the obstacle and it comes into view, if multiple pieces (or two different obstacles here) appear in the sensing range and the distance between them is less than a safe distance, the UAV defines the entire distance between them as an obstacle. This implies that the area is “unsafe” to travel through, and the UAV would navigate around the two obstacles as though they were one. Several steps that the agent would take in this scenario are shown in Figure
Agent Redefining Two, Symmetrical Obstacles.
In this section, the simulations performed and their results are described. Seeing as potential fields have been used frequently as an intelligent control method for motion planning, it the basis for comparison for methodology developed here. Furthermore, the fuzzy logic controller is compared to an optimal path planning algorithm that uses visibility graphs. This was done to analyze the overall performance of the FLC. In this section, the testing environment used in the Monte Carlo runs is described. All simulations described and presented here were implemented in MATLAB programming language and on a Windows machine with an Intel Core i5 2.4 GHz processor and 4.0 GB of RAM. Finally, results comparing methodologies are presented.
The testing environment is an enclosed grid where each vertex is identical and indicates the presence of an obstacle. If there is an obstacle at that vertex, it is marked as 1. If not, it is marked as 0. Therefore, all obstacles are constructed as a series of vertices. The vehicle is assumed to be able to sense and define obstacle appropriately. That is, the vehicle searches its sensing range at each time step for obstacles and if it comes upon a vertex defined as a 1, it knows it is an obstacle. While this is a simple representation of an environment, it has several useful advantages that are exploited. First, the FLC utilizes the closest point of the obstacle within the sensing range, and this is much easier to compute if the environment is discretized. Furthermore, the volume of the space that is composed of obstacles can help define the complexity of the environment.
Both polygonal and nonpolygonal obstacles are tested in this research, but the nonpolygonal obstacles are only used for the validation of the methodology. This is due to the fact that the optimal approach used for comparison is capable of handling only polygons.
Again, Monte Carlo testing was completed to evaluate the performance of the solutions obtained. Each simulation contained a fixed number of polygon obstacles, a fixed starting position for the UAV, and a fixed number of targets. There were three types of obstacles the total, the size, and shape of each of the three were fixed. In each simulation, the obstacle type (so it could be any one of the three types), the location of the targets, and the location of the obstacles were all random. Three categories of obstacle density were used for comparing each method, and 300 runs of each of the three categories of obstacle density were used (900 simulations total). Simple (least dense) cases had 5 obstacles and an obstacle area percentage of less than 30%, moderate (medium density) had 10 obstacles and an obstacle area of less than 50% and greater than 30%, and complex (very dense) had 15 obstacles and an obstacle area of greater than 50%. The reason that the obstacle area was not consistent throughout the simulations is that the random aspect of the location of the obstacles allowed them to overlap.
In the simulations described here, the parameters of the UAV maneuverability are summarized in Table
UAV and simulation parameters.
Parameter  Value 


50 m 

25 m 

10 m/s 

3 m/s 

3 m/s^{2} 

30^{°} 

25 rpm or 2.618^{°}/s 

0.4 secs 

4 secs 

0.05 secs 

Time step, 
In addition to discretizing the environment, the UAV dynamics described earlier were discretized. The sampling rate,
Monte Carlo experiments were completed to analyze the performance of the different methods and gain insight to the contributions and limitations of the control method presented here. To do so, various performance metrics were calculated for each run. The performance error with respect to the optimal solution was calculated for the distance travelled as this is a common performance metric for path planning algorithms. Also, the control effort was computed as the sum of the square of the heading angle change at each time step. The heading angle rate was used to determine a quantitative metric for the required path changes of each control method. Finally, the number of errors was recorded over all the simulations to determine failure rate. A failure was considered if the UAV never reached the target and/or the UAV “crashed” into an obstacle. For each of the three control methodologies implemented, the previous was recorded where fuzzy logic control has subscript
Control solution parameters.
Parameter  Symbol  Calculation 

Distance traversed 


Control effort 


Failure rate 

# of failures/300 
Obstacle area  OA  Area of obstacles (km^{2})/12.25 (km^{2}) 
Optimality 


In this chapter, the results of testing the Fuzzy Logic Controller are presented. This includes validation of the methodology and analysis of the performance. Therefore, it is shown here that the system meets the specified constraints; is capable of operating in complex environments and capable of target retasking inflight; performs excellent when comparing the distance traversed and control effort to optimal and potential field solutions. It is shown that the FLC navigates to the targets in real time while avoiding obstacles. Like mentioned previously, all environments were formed such that a plausible solution could be found. This means that the UAV can adequately navigate around obstacles and that targets are at a “safe” distance from the obstacles.
Beyond validation that the technique allowed for motion planning in an unknown environment, it was essentially that this logic works within the specified constraints of the vehicle. Therefore, examples were run to verify that the system was doing so. Shown below is an example of the fuzzy logic controller (Figure
Example of the fuzzy logic controller for constraint verification.
Acceleration versus time of the example for constraint verification.
Heading angle rate versus time of the example for constraint verification.
Furthermore, the controls for this example are shown (Figures
Controlled heading angle and actual heading angle versus time of the example.
Controlled velocity and actual velocity versus time of the example.
As described in the previous section, the fuzzy inference system was compared to both an optimal path planning methodology and an artificial potential field method. As potential fields are widely used and the leading intelligent control method for dynamic path planning, it is the technique used for comparison here. Potential fields have been shown to provide nearoptimal solutions and a viable alternative to optimal control strategies. A parabolic function is adopted to represent the artificial potential on the vehicle from an object where the function is quadratic in the Euclidean distance (so that it is differentiable) and multiplied by a scaling factor (differs for attractive and repulsive forces). From the gradient of the function, the force on the vehicle is calculated.
The methodology used here for optimal control solution is a roadmap method, visibility graph, and assumes the environment is completely known prior to the mission and that it is unchanging throughout. Again, it is implemented as a comparison for performance (i.e., distance traversed). Since the complete environment is known a priori, nofly zones and other obstacles can all be represented as polygons.
While it is important that the FLC is at least somewhat comparable to other methods in terms of distance, the most significant contribution of this method is the reduced failure rate. It can be seen in Table
Performance results—percentage of failures and control effort.
Failures: simple environments  Failures: moderate environments  Failures: complex environments  Average control effort  

Optimal  0.00  0.00  0.00  0.0158 
FLC  0.02  0.03  0.05  0.0621 
PF method  0.03  0.19  0.34  0.5169 
Also, the control effort across methods is compared. The effort shown in Table
Because path planning algorithms are generally used to solve for the minimum distance travelled, this was used for comparison for performance and as a measure to tune the membership functions. This is also done because the fuzzy inference system developed for path planning only relies on local information and a set of coordinates for the target, it is likely that the UAV will not always take the optimal path (and could possibly take a very suboptimal path). The question becomes as to how suboptimal this path is, and how often these very suboptimal solutions take place. That is, if hundreds of random obstacle environments are produced, how much further the UAV uses the FIS travelling than the branchandbound method. Also of interest is how much longer the UAV take to traverse its path (not necessarily the same as the distance for the FIS and PF method, because the velocity is not constant). As mentioned previously, the environments were broken down into three categories of density: simple, moderate, and complex. Figures
Extra distance traversed for the approximate solutions in simple (least dense) environments.
Extra distance traversed for the approximate solutions in moderate (medium density) environments.
Extra distance traversed for the approximate solutions in complex (very dense) environments.
As can be seen in the previous plots, the fuzzy logic solutions perform very well when compared to optimal solutions. 66% of cases lie within 90% of the optimal in terms of distance traversed. Also, all of the cases have an average of being within 7.6% over all cases (as compared to 9.7% for the PF method). It should also be noted that the optimal solution does not take vehicle dynamics into consideration and assumes that it can travel along the edge of an obstacle. Realistically, the optimal solution would be altered slightly to allow for a little “padding” around the obstacles. The fuzzy logic solution already does this. Therefore, the fuzzy logic solution is closer to the optimal cases than is indicated here.
Presented here is the formulation and validation of a fuzzy logic controller (FLC) for motion planning in realtime in a twodimensional, unknown environment. The fuzzy inference system was verified on various, stationary obstacles and for moving targets (retasking mid flight). The FIS was compared to an optimal approach and an algorithm based on potential fields (PFs) that also motion plans in real time.
The comparison to other path planning methods showed that the FLC gets good results, and they can be obtained online with any type of environment. This was shown to be very reliable, with only about a 3% error rate over all cases. The errors that did occur were when the UAV navigated into an area that did not have an outlet, and it could not appropriately maneuver out. While this method is not faultless, the APF method showed a much higher failure rate at about 18% overall (34% for complex environments). Additionally, the APF method used significantly more control effort (about 10 times more overall) than the FLC.
It was also shown that in most cases when the environment is relatively simple (only contains polygons or “closed” obstacles) the FIS produces nearoptimal solutions consistently. That is, the FLC was able to perform within 5.7% of the optimal solution in simple environments, within 10.7% for moderate environments, and within 6.5% for complex environments for distance travelled (7.7% overall). This beat the overall performance for the APF method at 9.7%. While the performance is less reliable for obstacle enriched environments, the results are still able to be obtained in real time and with reasonable closeness to optimality. As environments get increasingly complex, the optimal solution will be harder to obtain in a reasonable time. This will make it impossible to rely on acquiring an optimal solution even if the environment is completely known prior to flight.
The results presented in this work show that the FL algorithm outperforms the APF method in reliability of success of a solution, in nearoptimality, and amount of control effort used. What is more, it was able to do so in real time with local information, which the optimal solution was not. While quantitatively it is obvious that the FLC outperforms the APF and optimal methods, there are several qualitative advantages to the fuzzy controller. The reduced failure rate is a distinguishing attribute of fuzzy logic. Fuzzy Logic allows the user to capture much more information about the environment in a more efficient manner. Additionally, the available tools allow the user to easily develop and manipulate FISs. This makes it a very powerful tool that allows the user to see the effects of incorporating additional information with minimal effort.
The advantages of using Fuzzy Logic (FL) for a motionplanner were demonstrated in this research: few failures, nearoptimal paths, and low control effort. It is these advantages that make it a good tool for further development. Some possible obvious future works that were not explored in this research are motionplanning in three dimensions, avoidance of dynamic obstacles, and more robustness testing.