Feasible Computationally Efficient Path Planning for UAV Collision Avoidance

Feasible Computationally Efficient Path Planning for UAV Collision Avoidance


This paper presents a robust computationally efficient real-time collision avoidance algorithm for Unmanned Aerial Vehicle (UAV), namely Memory-based Wall Following-Artificial Potential Field (MWF-APF) method. The new algorithm switches between Wall-Following Method (WFM) and Artificial Potential Field method (APF) with improved situation awareness capability. Historical trajectory is taken into account to avoid repetitive wrong decision. Furthermore, it can be effectively applied to platform with low computing capability. As an example, a quad-rotor equipped with limited number of Time-of-Flight (TOF) rangefinders is adopted to validate the effectiveness and efficiency of this algorithm. Both software simulation and physical flight test have been conducted to demonstrate the capability of the MWF-APF method in complex scenarios.


[enumerate]align=left \xpatchcmd\@thm \xpatchcmd\thmaddpunct.addpunct: \xpatchcmd\@lemma\lemma@headpunct.\lemma@headpunct

I Introduction

Unmanned Aerial Vehicle (UAV) is one of the most promising technologies in the 21st century. Thanks to its low cost and high mobility, UAV has the potential to replace human in jobs such as package delivery, forest rescue and so forth. Moreover, heavy lift drones have been employed as an innovative alternative of transportation. However, with the popularization of UAV, there are increasing reports of accidental vehicle crash of UAV due to poor pilot control. Safety concern is real and it becomes the bottleneck of UAV industry. Collision avoidance is the key for a successful navigation mission. In recent years, researchers have been working on collision detection and avoidance system (CDAS) that can be implemented on UAVs [4, 11, 8]. A good collision avoidance system is the key to further development on UAV such as swarm system[17].
A comprehensive collision avoidance solution includes two parts, namely obstacle detection and obstacle avoidance. Obstacle detection studies different approaches to detect the surrounding obstacles. Accuracy of the generated obstacle profile is the most crucial factor of obstacle detection. It has significant impact on the later part of obstacle avoidance. However, there is no uniform obstacle detection solution at the current stage. In the past decades, researchers are putting effort on Obstacle Avoidance system with various sensing units such as infrared sensor[4], vision sensor[11] and radar sensor[8]. Every method has its own advantages and disadvantages [12]. Vision-based obstacle detection system is of great interest to research community due to the richness of environment information that can be extracted from digital images. However, the performance of such system is limited by the processing power of the on-board computer equipped by UAV. In contrast, a rangefinder such as infrared sensor, does not require high processing power and is able to provide very accurate feedback in terms of distance. The constraint of a rangefinder is the narrow field of view (FOV). Each rangefinder is able to cover 1 to 2 degree FOV only. As for radar-based system, it has much wider FOV. However, there is a higher chance for false detection to occur as the outline of obstacle cannot be well perceived.
Obstacle avoidance is the task of navigating robot subject to non-collision constraints. Different motion planning methods are used to achieve the task. One of the most classic motion planning methods is called artificial potential field (APF) method[1], which uses the idea of imaginary force. Previous study[7] has shown that APF can provide a computationally efficient motion planning for robot. However, one problem generated by APF is the Local Minimum Problem illustrated in Fig. 1. The robot may be trapped at local minimum points where the imaginary potential force equals to zero and unable to reach the target [7].

Fig. 1: Local Minimum of APF

Another popular motion planning method is called Bug Algorithm. It was firstly introduced by Lumelsky and Stepanov[9]. This method adopts the strategy to follow the path specified by the contour of an obstacle. Similar to APF, it is an effective and efficient solution for the obstacle avoidance. Research on the Bug Algorithm has made rapid progress in recent years and evolved into methods such as I-Bug Algorithm [13] , Point Bug Algorithm[2], Insert Bug Algorithm[15], Vis Bug Algorithm[10] and Dist Bug Algorithm [6]. All these algorithms are categorized as Bug Family Algorithm (BFA). The Bug Family Algorithm usually has following three assumptions: i) the robot is a point, ii) it has a perfect localization, and iii) its sensors are precise. Due to these assumptions, research on Bug Algorithm mainly focuses on theoretical studies rather than real life implementation. In the real application, we use the wall-following concept more often than bug family algorithm [3, 5]. Wall-Following Method (WFM) is developed based on the key idea of the bug family algorithm with the consideration of real life constraints such as robot size. WFM only requires to estimate the normal and tangent of the obstacle surface from real-time sensor input. UAVs with WFM always keep a safety normal distance from the obstacle and navigate in the tangent direction only. Feasible implementation makes WFM popular in robotics application. However, it is usually used in simple environment. One significant disadvantage of WFM is that it can lead to endless loop or repetitive trajectory in some complex cases shown in Fig. 2. If the robot always follows the right direction of the wall tangent when there are obstacles detected, it can never reach the target.

Fig. 2: Endless Loop Scenario for Wall-Following Method.

It is described above that both methods have specific failure senario. However, it is unlikely for both methods to fail at the same time. Hence, researchers have been looking for a method combining both WFM and APF features. These two methods will compensate each other once equipped with appropriate situation awareness. The failure of one algorithm will trigger another algorithm to take over path planning task. The research on this combined method has proven that it can result in better path than individual method [14, 18, 16].

Ii Related works that involves combined methods

As mentioned above, combined WFM and APF method aims to allow each stand-alone method to compensate another. The key point of this method is the situation awareness to make a right choice between two stand-alone methods. A proper situation awareness is able to recognize accurately when either WFM or APF has reached its failure mode. As a result, a better performance can be achieved.

Ii-a Early stage of situation awareness

The idea of combining WFM and APF was initially introduced by[16]. This work applied a simple situation awareness for robot to switch between two modes, namely VFF (Virtual Force Field, an extension from APF) and WFM. To switch from VFF to WFM, the following logic was used to distinguish local minimum condition:


where is the total artificial potential force calculated at the current robot position, is the tolerance for a point to be considered as a local minimum point. The condition checks if the robot reaches the local minimum point, that is, the failure of APF happens. If the condition occurs, the system will switch to WFM to escape from the local minimum problem. To switch to VFF from WFM the following condition was used:


where and are the robot-to-target angle and current tangent of wall respectively. This condition triggers the mode to APF if the difference between robot-to-goal angle and wall-following angle is greater than . In other words, it happens when robot is moving away from the target.
This work is useful in an environment where the obstacle profile is simple. However, the failure case happens for complex environment as shown in Fig. 3. A closed room with small exit opposite to the goal direction is given and the robot is supposed to escape from the room and to move to the goal. The dashed and solid line represents the expected path and resulted path respectively. In the end, the robot will keep endlessly circling along the solid trajectory and fail to navigate to the target point. The root cause of this type of failure is the lack of self-awareness of the looping path.

Fig. 3: Local Trap Issue for VFF-WFM method.

Ii-B Modified situation awareness with historical trajectory look-back

[18] reviewed the limitation of [16] and improved situation awareness with the look-back of historical trajectory. This paper argued that, without learning from the historical experience, the robot can make the same wrong decision repetitively. Hence in this work, the proposed situation awareness takes the visited locations into consideration. A new condition is added when switching from APF to WFM with comparison between the robot-to-target path and historical trajectory. The robot-to-target path is the straight line path from current position to the goal. The existence of intersection of the robot-to-target path and historical trajectory will prevent robot from switching to APF mode. Fig. 4 shows that the method can resolve the endless loop problem described in [16] with the same environment setup.

Fig. 4: Improved Path Planning with History Look-back.

However, this work does not make full use of the historical information, which can result in less efficient trajectory. An example is given in Fig. 5 where paths navigated by APF and WFM are represented by solid and dashed line respectively. When robot revisits this local minimum point, direction of wall following is changed so that the robot can move to the target point finally. However, repetitive path happens between point A and B marked in Fig. 5. This is because the above-mentioned situation awareness only checks the historical trajectory during WFM mode but not in APF mode. Hence, in the APF mode the robot does not perform checks for repeating decision. We believe that with a better decision mechanism, the trajectory can be further optimized to avoid the path between point A and B as shown in Fig. 5.

Fig. 5: Repetitive Path Generated by Improved Path Planning.

Iii Proposed MWF-APF method

As discussed above, the look-back of historical trajectory plays an important role in the success of situation awareness system. Based on this, a new method is developed in this paper with memory based Wall-Following Method and Artificial Potential Field method, namely, MWF-APF method. More historical information will be considered in this enhanced situation awareness system.

Iii-a Historical Trajectory Information

Similar to [18], the historical trajectory is stored as a series of key frames. Each key frame consists of time , location information as well as current moving direction . In addition, a flag highlighting those key frames with local minimum of APF is added as extra information for the ease of processing. With storage space constraints in practical application, a new key frame will only be recorded when it satisfies any one of the three conditions below:

  1. ,

  2. but ,

  3. ,

where , are the historical position and moving direction stored in the database and , are the constants threshold to determine the data size. Constant determines how frequently the key frame is updated. A frame is recorded when the distances between current robot position and all other key frame locations are greater than this threshold. If current position coincides with historical position but with moving direction difference greater than , the current status will also be considered as a key frame. So when the robot revisits historical position but with a different moving direction, current status will be recorded as well. In addition, when local minimum point is found, the current status will be automatically considered as a key frame with the highlight of local minimum.

Iii-B Artificial Potential Field

In APF mode, a virtual force is generated by a combination of both attractive and repulsive force. Assuming that the target position of the robot is while the current position of the robot is , then the attractive potential function takes a similar form as in [16]:


Where and are the coefficients to describe the strength of potential field. Similar to the calculation of potential field in physics, the attractive force is given by taking the partial derivative of the attractive potential field:


The resultant attractive force is constant when the robot is far away from the target. It decreases with decreasing distance to the target. Considering multiple obstacles surrounding the robot, let be the obstacle position in the global frame, the repulsive potential can be calculated as


Where is the repulsive potential field strength coefficient, is the distance which the function is valid for. Similarly, repulsive force can be represented by


where . In real practice, global knowledge of environment is usually unavailable prior to the commencement of mission. Therefore, the position of obstacle is usually derived from the sensors mounted on the robot. For example, laser rangefinders are mounted on a robot. The rangefinder has an angle with respect to the robot frame. For real-time processing, the obstacle can be estimated as


where is the reading of the sensor. Finally, the overall artificial potential force is obtained by


Iii-C Wall-Following Method

Wall-Following Method estimates the tangent and normal of the obstacle surface. The robot generates normal speed with a simple PID controller to keep a certain distance with the obstacle. The moving speed is fixed with the tangent direction of obstacle surface. The velocity is hence given by


Another important factor in WFM is the decision on the wall-following direction. With historical trajectory look-back, same wall-following direction decision will be avoided when the robot revisits the position recorded in historical trajectory.

Iii-D Situation Awareness

With improvements from previous works described in the earlier sections, an enhanced situation awareness is proposed with capability to avoid the previously explained failure cases. We modified the existing conditions and added history look-back for both APF mode and WFM mode.
The system will switch to APF from WFM with the simplified equations shown as follow:

  1. ,

  2. ,

where is the robot-to-target straight line path and is the historical trajectory. Both conditions have to be satisfied in order to trigger the WFM mode. When the robot is moving far away from the goal, the first condition tells that continuing Wall-Following Method may cause a longer trajectory. The set simply draws a straight line from the current position to the goal. The robot will switch to APF mode only when the intersection between this line and historical trajectory is empty. Otherwise, the robot has a greater chance to revisit the previous path so switching to another mode is not suggested. An illustration when robot fails to meet the second condition is shown in Fig. 6.

Fig. 6: obstacle-less APF path intersects with history trajectory.

Switching conditions from APF to WFM are given by:

  1. ,

  2. If and ,

where records the time when the last local minimum appears, p is the current position, and are the position and moving direction at time .
The WFM mode will be triggered when either condition is satisfied. The first condition checks the local minimum. Whenever it happens, will be updated as the current time. The second condition is the key to avoid the revisit of historical path in APF mode. If in this mode, the robot finds that its current status coincides (both position and moving direction) with the history frame at time , then continuing APF mode should not navigate itself to the local minimum recorded at again. In other words, the robot will switch to WFM if last local minimum with happens after current position with history record at time . If we do not trigger the mode in this case, the robot will likely make the same decision as it did from time to . Hence the repetitive path will happen.

Iv simulation result with complementary sensors

Iv-a Sensing System

In real life application, the information of the surrounding obstacles is often limited by the sensor constraints. In consideration of the implementation difficulty, cost and accuracy, we choose infrared sensor as sensing system. Infrared sensor is a time-of-flight(TOF) rangefinder with a small FOV. WLOG, the sensing system in the simulation contains 8 rangefinders equally distributed to get the 360-degree view of the surrounding environment.

Iv-B Surface Estimation in MWF Mode

In MWF mode, moving direction is determined by tangent of wall surface. The tangent of wall surface is estimated by selecting the tangent of nearest wall detected by the sensor. Each wall will be estimated by the following condition:


where , and are the readings of , sensor and mounting angle between them. The minimum of indicates the wall closest to robot and hence the tangent of this wall is chosen as the moving direction. Fig. 7 gives an illustration of wall estimation.

Fig. 7: Surface estimation with rangefinder.

Iv-C Simulation Result

The simulation is performed in RVIZ, a simulation tool based on Robotics Operating System (ROS). To validate the effectiveness of MWF-APF method, Fig. 8 gives two different cases. In Fig. 8(a), the obstacles leave small openings in the corridor so that the robot can take a simple detour through the corridor. The planned path is straightforward as the heading of the robot does not change too much. In Fig. 8(b), it is more complex with the corridor closed. The robot has to make a u-turn and move outside corridor in order to navigate to the target. The robot is capable of planning different path based on the situation.

Fig. 8: (a) Result of path planning when there is a straight path (b) Result of H shape obstacle

A comprehensive comparison with the existing methods is shown in Fig. 9. In Fig. 9(a) and Fig. 9(b), we compare the traditional memory-less WFM-APF method with our MWF-APF method. The result shows that, with the new method the robot can navigate to the goal point while with the traditional method it fails. Fig. 9(c) shows the case where historical trajectory is only considered in WFM mode. Our method shown in Fig. 9(d) makes a shorter path than the method in Fig. 9(c).

Fig. 9: (a)Result of traditional WFM-APF method. (b)Result of MWF-APF method. (c)Result of WFM-APF method with only historical look-back in WFM mode (d)Result of MWF-APF method

V Experiment Result

In this section the proposed MWF-APF method is implemented on a quad-rotor. A short video of the experiment can be viewed at https://youtu.be/E1h35GH9-tU. A series of experiments are conducted in an indoor environment where motion capture system is used to provide position information of the UAV. The test field of the size 5m * 5m is set up to form 3 obstacles in the center.

A quad-rotor is constructed that integrates distance sensors, a flight controller and an on-board computing unit. A photo of the quad-rotor is shown in Fig. 10. A group of 5 infrared time-of-flight (TOF) distance sensors is mounted above the UAV main frame for unobstructed distance measurement to 5 directions. The sensors are arranged such that they face , , , and relative to vehicle front, so that a wide range of view is achieved.

The system overview of UAV is depicted in Fig. 11. The flight controller runs on-board PX4 firmware for position and attitude control. Position data is sent from an off-board motion capture system to the UAV through wireless XBee receiver. The distance sensor readings are sent to a 900MHz quad-core ARM embedded computer which runs Ubuntu and ROS. The proposed obstacle avoidance algorithm is executed in real time in ROS nodes which takes the UAV real-time position and distance sensor readings as inputs and outputs UAV’s target velocity in lateral axes.

Fig. 10: UAV Mechanical Overview.
Fig. 11: UAV System Overview.

Multiple flight tests are conducted. During each flight, the UAV has to fly to a target position which is obstructed by multiple boxes. Obstacle profile is unknown prior to the flight and is detected online by the distance sensors. The UAV’s lateral velocity is commanded by the MWF-APF algorithm while its altitude is maintained constant at 1m by the altitude controller. In each flight test, the UAV is able to reach the target position without colliding into the obstacles. Plots of some flight tests are shown in Figure.12. It is observed that the proposed method is able to switch between APF and WFM algorithms intelligently, allowing the UAV to effectively reach the target.

Fig. 12: Indoor experiment plot showing the UAV path in X/Y axes: UAV is able to switch between APF and WFM and reach target with an efficient path.

Vi Conclusion

This paper presented a feasible and computationally efficient real-time path planning method for UAV with complementary sensors. The algorithm, namely memory based wall following-artificial potential field (MWF-APF) method, combines Wall-Following Method and Artificial Potential Field method with enhanced situation awareness. A comprehensive review of the previous path planning methods was given. To overcome the limitations of the existing methods, the new method includes the historical trajectory look-back on both APF and WFM modes. It provides an alternative solution to the endless loop problem of WFM and the local minimum problem of APF. The revised situation awareness is able to avoid repetitive path with guaranteed success of navigation compared to existing methods on WFM and APF. To the best of author’s knowledge, the proposed situation awareness has better performance than existing works on method combining WFM and APF in terms of generated path length and success of navigation.
At the end of this paper, different simulation scenarios were given to show the robustness of the WFM-APF method in robot path planning. A collision-free UAV experiment was provided to validate its capability to complete real life mission. It was shown that only a few low-cost rangefinders are needed to execute the MFM-APF method and to complete the navigation task.


The author would like to thank Mr. Nguyen Pham Nhat Thien Minh for the great many suggestions during the planning and development of this research work.


  1. J. R. Andrews and N. Hogan (1983) Impedance control as a framework for implementing obstacle avoidance in a manipulator. Master’s Thesis, M. I. T., Dept. of Mechanical Engineering. Cited by: §I.
  2. N. Buniyamin, W. W. Ngah, N. Sariff and Z. Mohamad (2011) A simple local path planning algorithm for autonomous mobile robots. International journal of systems applications, Engineering & development 5 (2), pp. 151–159. Cited by: §I.
  3. M. Finkelstein and B. Hunte (2008) Wall following with collision avoidance and mapping using a laser range finder. Technical report Cited by: §I.
  4. N. Gageik, P. Benz and S. Montenegro (2015) Obstacle detection and collision avoidance for a uav with complementary low-cost sensors. IEEE Access 3, pp. 599–609. Cited by: §I.
  5. I. Gavrilut, V. Tiponut, A. Gacsadi and L. Tepelea (2008) Wall-following method for an autonomous mobile robot using two ir sensors. In WSEAS International Conference. Proceedings. Mathematics and Computers in Science and Engineering, Cited by: §I.
  6. I. Kamon and E. Rivlin (1997) Sensory-based motion planning with global proofs. IEEE transactions on Robotics and Automation 13 (6), pp. 814–822. Cited by: §I.
  7. Y. Koren and J. Borenstein (1991) Potential field methods and their inherent limitations for mobile robot navigation. In Robotics and Automation, 1991. Proceedings., 1991 IEEE International Conference on, pp. 1398–1404. Cited by: §I.
  8. Y. K. Kwag and C. H. Chung (2007) UAV based collision avoidance radar sensor. In Geoscience and Remote Sensing Symposium, 2007. IGARSS 2007. IEEE International, pp. 639–642. Cited by: §I.
  9. V. Lumelsky and A. Stepanov (1986) Dynamic path planning for a mobile automaton with limited information on the environment. IEEE transactions on Automatic control 31 (11), pp. 1058–1063. Cited by: §I.
  10. V. J. Lumelsky and T. Skewis (1990) Incorporating range sensing in the robot navigation function. IEEE Transactions on Systems, Man, and Cybernetics 20 (5), pp. 1058–1069. Cited by: §I.
  11. J. Park and Y. Kim (2012) Stereo vision based collision avoidance of quadrotor uav. In Control, Automation and Systems (ICCAS), 2012 12th International Conference on, pp. 173–178. Cited by: §I.
  12. H. Pham, S. A. Smolka, S. D. Stoller, D. Phan and J. Yang (2015) A survey on unmanned aerial vehicle collision avoidance systems. arXiv preprint arXiv:1508.07723. Cited by: §I.
  13. K. Taylor and S. M. LaValle (2009) I-bug: an intensity-based bug algorithm. In Robotics and Automation, 2009. ICRA’09. IEEE International Conference on, pp. 3981–3986. Cited by: §I.
  14. M. Wang, Z. Su, D. Tu and X. Lu (2013) A hybrid algorithm based on artificial potential field and bug for path planning of mobile robot. In Measurement, Information and Control (ICMIC), 2013 International Conference on, Vol. 2, pp. 1393–1398. Cited by: §I.
  15. Q. Xu and G. Tang (2013) Vectorization path planning for autonomous mobile agent in unknown environment. Neural Computing and Applications 23 (7-8), pp. 2129–2135. Cited by: §I.
  16. X. Yun and K. Tan (1997) A wall-following method for escaping local minima in potential field based motion planning. In Advanced Robotics, 1997. ICAR’97. Proceedings., 8th International Conference on, pp. 421–426. Cited by: §I, §II-A, §II-B, §III-B.
  17. B. Zhu, L. Xie, D. Han, X. Meng and R. Teo (2017) A survey on recent progress in control of swarm systems. Science China Information Sciences 60 (7), pp. 070201. Cited by: §I.
  18. Y. Zhu, T. Zhang and J. Song (2009) An improved wall following method for escaping from local minimum in artificial potential field based path planning. In Decision and Control, 2009 held jointly with the 2009 28th Chinese Control Conference. CDC/CCC 2009. Proceedings of the 48th IEEE Conference on, pp. 6017–6022. Cited by: §I, §II-B, §III-A.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description