Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Overview of collision avoidance:

Scenarios according to the usage environment of autonomous flying UAVs can be divided into two
kinds: an accurate environment and an uncertain environment

Depending on the movement of the obstacle, the obstacle can be divided into a static obstacle (e.g.
buildings, trees, power poles, etc.) and a dynamic obstacle (e.g. birds, UAVs included in the group,
unknown flying objects, etc.). The collision avoidance method can be different according to the
movement of the obstacle.

Sensor based collision Avoidance

Environment Perception using Sensors – Infrared,Ultrasonic,Millimeter Wave,Visual and LiDAR


obstacle avoidance.

Sensors Adv Disadv


Infrared Simple in structure,convenient Low accuracy,close distance
in implementation,sensitive in and poor directionality.
response
Ultrasonic sensor Good directivity,not affected Single ultrasonic sensor
by color or transparency enables UAV only to hover
after encountering obstacles
Millimeter wave Size and distance of obstacles Low height and accuracy in
and has strong connectivity sensing obstacles
Vision sensors Can perceive the color details Lacks depth information and
of multiple obstacles perception of obstacle distance
is weak
LiDAR 3D Perception Still in development

LiDAR is chosen since it is better than all other environment perception sensors.

Collision Avoidance Approaches:

Geometric-based Approaches:

In the geometric approach, there is a collision cone method, and an arbitrary circle around the UAV
and the tangent to the UAV are calculated. If there is an obstacle between the two tangents, it is
calculated that there is a possibility of collision, and the trajectory is corrected so that the obstacle is
not located between the tangents.

Primitive-based Collision Detection: Objects are represented as simple geometric primitives (spheres,
boxes, cylinders) for collision detection and avoidance.

Mesh-based Collision Detection: Objects are represented by complex meshes composed of triangles
or polygons, allowing for more accurate collision detection but with higher computational cost.
Potential Field Methods:

The potential field method uses the concepts of attractive potential and repulsive potential to
construct a potential that repels UAV and obstacles and attracts them to the destination.
This method is difficult to use in a dynamic environment, because it requires a lot of computation
and time.

Artificial Potential Fields: Objects are assigned attractive or repulsive potentials, and motion planning
is performed based on these potentials to avoid collisions.

Dynamic Potential Fields: Similar to artificial potential fields, but the potential fields are adjusted
dynamically based on the current environment and motion of objects.

Path planning approach:

The path planning method creates a path using a graph shortest path search algorithm such as the
Dijkstra algorithm and the A* algorithm.
This method generates an optimal route by generating a grid-based map of known obstacles and
static environments. With these characteristics, it is possible to find the optimal route to the
destination while avoiding obstacles.
However, the method has the disadvantage of being used only in a static environment with known
obstacles.

Optimization based approach:

The optimization-based method is dependent on the obstacle avoidance trajectory using geometric
information and aims to generate an optimal obstacle avoidance trajectory based on uncertain
information. These algorithms include ant-inspired algorithms, genetic algorithms, gradient descent
methods, particle swarm optimization, and greedy methods.

Sampling based approach:

A representative method of sampling-based methods is the rapidly exploring random tree (RRT). RRT
can efficiently search space in a static environment. RRT randomly samples nodes from the UAV's
operating radius.

If nodes do not overlap with obstacles or there are no obstacles on the path, RRT connects the path
of an UAV to the nearest node and gradually finds the destination. Although this method does not
guarantee an optimal path, it has the advantage of efficiently searching a high-dimensional space in a
short time.

Research is underway to further shorten the search time of RRT and use it for dynamic obstacle
avoidance.
Vision based Approach:

Using computer vision technology and algorithms, it can be used in various ways, such as object
identification, object segmentation, and obstacle collision time prediction. This method has many
limitations such as the limited battery of a small UAV and small computing power, so it is difficult to
use a method with high complexity.

Path planning problem is composed of two sub-problems- Findspace (in which floor space or map is
constructed with static obstacles) and Findpath (in which collision free path is designed and a robot
is desired to maneuver from start to destination point).
There are two types of Path planning problem – Global Path Planning in which complete
environmental information (steady state) is known to the system to reach destination, such as RRT
A* Algorithm , Pure Pursuit ,Particle Swarm Optimization (PSO) and Local Path Planning in which
real-time environmental information is required such as Artificial Neural Networks (ANN) ,APF
algorithm, Genetic Algorithm (GA) and Fuzzy Logic Algorithm.
There are three things or activities that must be followed by an AMR to enable the execution of the
task of robot maneuvering. These activities are mapping the environment, path planning and
obstacle avoidance.

PRM method:
Probabilistic Roadmap (PRM) PRM is a sampling-based algorithm which comprises of networks of
connected nodes in a given map based on free and occupied spaces to find an obstacle free path
from start to end point .PRM generates nodes to create connections among them based on
algorithm parameters. Number of nodes can be customized to fit complexity of map to find the most
optimal collision free path . It uses network of connected nodes to find an obstacle-free path from a
start to an end location. Algorithm begins road map with a node at the initial configuration which is
then expanded randomly by adding edges and nodes further.

Code:
load exampleMaps.mat
whos *Map*
map = binaryOccupancyMap(simpleMap,2);
roboRadius = 0.2;
mapInflated = copy(map);
inflate(mapInflated,roboRadius);
prm = mobileRobotPRM
prm.Map=mapInflated;
prm.NumNodes = 50;
prm.ConnectionDistance = 5;
startLocation = [2 1];
endLocation = [12 10];
path = findpath(prm, startLocation, endLocation)
show(prm)

Artificial Potential Method:

Potential field approach was first proposed by Khatib . It is based on principle of imaginary forces
acting on a robot termed as Potential field . APF algorithm is a reactive algorithm technique, where
immediate distances from obstacles are considered to compute the immediate move, without much
bothering about the future leading to goal. All obstacles repel the robot with a magnitude inversely
proportional to the distance. Resultant potential, accounting for the attractive and repulsive
components, is measured and used to move the robot . Directions indicate the direction of the
potential vector. The distance of the obstacles at all angles from the robot is measured.

Advantages of APF :

• For static obstacles with well-known atmosphere, potential is offline estimated such that the
robot’s velocity is within the energy field from start to destination point.

• Applicable for online or real-time environment as well with added obstacle avoidance component.

Drawbacks of APF :

• Gets trapped into local minima for the symmetric environment and bowl-shaped obstacles
• Oscillatory behavior in narrow lanes.

• Computationally extensive.

Rapidly Exploring Random Trees :

RRT is an alternative to PRM for non-holonomic vehicle . In RRT, initially a source node or tree is
created at the start point which expands or extends randomly, further to branches of the tree within
the workspace, ultimately leading to optimal collision free path which is near to goal or destination
node . It does not guarantee good performance for this problem.Tree extension might be biased
towards goal’s direction by selecting it as a random state with some probability
Fuzzylogic:

Fuzzy logic was developed by Zadeh in 1965. In this algorithm, whole logic is divided into simpler
blocks composed of set of fuzzy logic rule statements intended to achieve desired objective. It is
reactive planning technique in which instant position, orientation, and distances from obstacles are
used to evaluate instant motion, without considering future parameters . Decision of motion is
prepared only on the basis of input parameters not real-time situation.

Genetic Algorithm:

GA was introduced by John Holland. It starts with no prior knowledge of solution and depends
entirely on real-time responses to achieve best optimal, thereby good for dynamic environments . In
path planning and obstacle avoidance algorithm, GA is used to move in a dynamic environment with
predictable as well as unpredictable obstacles . All points from source to goal location, considered
one by one style genetic individual for optimization . Steps employed for path planning and obstacle
avoidance algorithm using GA are:

1. Initially grid graph is constructed out of search environment which is then maneuverer by robot in
step fashion.

2. Start and stop point are specified.

3. Predictable obstacles are defined on each step of grid. Every point in the path marks a turn, also
total points in the algorithm correspond to maximum number of turns that robot can take within the
workspace.
Purepursuit:

It is a path tracking algorithm which computes angular velocity command to maneuver robot from its
current position to look-ahead point until the desired position is reached while linear velocity
component is presumed constant. In MATLAB’s Robotics System Toolbox, PRM.controller is made,
and waypoints are defined. If position and orientation of mobile robot is specified as input, then
controller can be used to evaluate linear and angular velocities for mobile robot. In this algorithm,
look-ahead point is the property of robot to demonstrate how far robot will travel along the path.

A* algorithm:

It is most efficient free-space searching algorithm for path planning and obstacle avoidance . Initially,
graph I is taken as an input which is then explored step by step till all the nodes are evaluated to find
the shortest obstacle free path . With the increase in the complexity of map, computation time is
increased . Possible and impossible movements are labeled as 1 and 0, respectively. Higher the
number of 1 is, higher are the chances of optimal path with more number of flexible turns.

VFH:
Borenstein and Koren developed VFH which is a real time path planning and obstacle avoidance
algorithm permitting obstacle detection and obstacle avoidance simultaneously maneuvering
towards goal location. Steps to be followed for VFH algorithm are :

1. Constructing a 2D Cartesian histogram grid signifying obstacles

2. From the 2D grid, 1D polar histogram is built considering active window around robot.

3. For optimization procedure, 1D polar histogram is used to evaluate steering angle and velocity
controls.

Advantages of VFH algorithm are:

Poor sensor measurements and its impact are minimized.

Instability in maneuvering is eliminated because there are slight variations in sonar readings.
The robot never gets trapped in its local minima as unlike APF there is no repulsive or attractive
forces.

Disadvantages of AFH algorithm are:

This algorithm might lead robot away from goal position. For evaluating steering angle, AFH requires
four input parameters such as robot radius, safety distance, minimum turning radius, and distance
limits .

You might also like