SlideShare a Scribd company logo
COMPARISION OF VARIOUS POPULAR PATH PLANNING ALGORITHMS
1Koyya Shiva Karthik Reddy, 2Vishnunandan Venkatesh
Department of Electrical and Electronics Engineering
Rochester institute of Technology
ABSTARCT
Path planning is a complex task where usually the
robot has to consider many conditions in the
environment apart from just following a map to reach
the desired destination/goal. In the current project
various popular path planning algorithms are compared
in terms of their complexities of time and space. The
algorithms were implemented in a known environment
based upon grid based maps in MATLAB with random
goal, start and obstacles as nodes of the matrix. Three
algorithms were choose, A* algorithm as the baseline
which was then compared against greedy best first
search and joint point search.
Keywords: A*, Greedy best first search, Jump point
search,path planning
INTRODUCTION
The paper is divided into IV section the I section talks
about the previous work and related research in this
field, the second section will talk about all 3 algorithm
we are implementing , the III section will talk about the
future work that needs to be done and IV section will
discuss the result of the work achieved.
Before talking about the implementation of the
algorithms the following assumptions are made by us
towards solving our problem:
 Point Robot with Ideal Localization 
 Workspace is bounded and known 
 Static source, goal 
 Number of obstacles are finite and static 
Our path planning algorithms implement grid based
maps. Grid-based approaches overlay a grid on
configuration space, and assume each configuration is
identified with a grid point.
I. PREVIOUS RESEARCH IN THE FIELD
1. Hierarchical A-Star Algorithm for Big Map
Navigation in Special Areas
This paper addresses the use of A* in the case
for path planning of a large map. The paper
talks about a variation of A* called the
hierarchical A* algorithm where it basically
divides large maps into layers of smaller maps
and then applies the A* algorithm to the
smaller maps individually to find the shortest
path. Then all the shortest paths of the smaller
maps are arranged in hierarchy to obtain the
best path for the entire map. This method is
useful when the map is a country or a state etc.
In our case we don't have a very large map. Our
map is limited to an indoor environment as we
plan to implement the system to a mobile robot.
So we don't need to implement hierarchical A*.
Apart from this crucial point the algorithm we
plan to implement end of the day is the Jump
Point Search which would be much efficient
than the A*.
2. Path Planning of Automated Guided
Vehicles Based on Improved A-Star
Algorithm
The motive behind this paper is to implement
A* in Automated Guided Vehicles. The
improvement over regular A* in the paper is
the removal of diagonal paths. An obstacle
avoidance technique is also implemented where
the AGV (Automated Guided Vehicle) avoids
collision with obstacles. Technically the
improved algorithm is the A* without diagonal
movements.
Our Base algorithm is very similar to this case
where since we look to implement the path
planning algorithm in a mobile robot we also
excluded diagonal paths (i.e. paths are only in
the left, right, up, down directions and don’t
move diagonally across nodes in the map.). Our
algorithm also avoids obstacles. The advantage
we plan to present is that we will implement
the Jump point search which will be much
efficient than regular A* algorithm.
3. Path finding of 2D & 3D Game Real-Time
Strategy with Depth Direction A*Algorithm
for Multi-Layer
A comparison of all the various path planning
algorithms such as A*, Depth First Search,
Iterative Deepening, Breadth First Search,
Dijkstra’s Algorithm, Best First Search, A-Star
Algorithm (A*), Iterative Deepening A*.
Besides, the paper proposes Depth Direction
A*.
Depth Direction A* is very similar to our
proposed Jump Point Search and with the help
of this paper we see proof that Depth Direction
A* is faster than a* although it evaluates more
nodes. This is also a proof that Jump Point
Search is faster than A* as it is very similar to
Depth Direction A*.
4. Path Planning for Virtual Human Motion
Using Improved A* Algorithm
This paper utilises weights to reduce search
steps and to ignore nodes that have obstacles.
This in turn reduces the time. The
improvement is the adding of weights.
This concept of using weights to ignore nodes
with obstacles is similar to how we ignore
obstacles when we calculate the value of
F=G+H and thereby we save time. We do this
by giving all our obstacles a value of infinity in
the map. During the search whenever any node
in the map has a value of infinity the obstacle is
detected in the map. Thus it is ignored with
logical conditions. The method implemented in
the above paper is also similarly implemented
in ours.
5. Optimization using Boundary Lookup
Jump Point Search
One of the crucial information that significantly
differentiates our project and the above paper is
that in the paper above the obstacles are
dynamic in the map. The search method used is
Jump point search. Since obstacles are dynamic
for every instance of real time, the path
planning algorithm is implemented with the
map being updated at those instances of real
time. Hence when a map is stored in memory
during one implementation of the Jump Point
Search then at the next instance of time the
current map is deleted from the cache and a
new map is made and the algorithm is
implemented again.
In our implementation of the project the map
consists of static obstacles. There may be real
time obstacles that are dynamic along the path
but these obstacles don’t change the map. Only
the static obstacles are taken in the map . A
simple obstacle avoider is used in the execution
avoiding real time dynamic obstacles without
making any changes to the map.
6. Sensor-Based Path-Planning Algorithms
for a Nonholonomic Mobile Robot
A nonholonomic system in physics and
mathematics is a system whose state depends
on the path taken in order to achieve it. Thus it
is basically a path planning system. In this
paper depth first search and best first search are
used to implement path planning for a mobile
robot. Sensors are used to avoid obstacles along
the path. Depth first search and greedy best
first search are okay to implement when the
map is an indoor based map and is not very
complex. In cases where the map is complex
the algorithm takes a lot of time to find the path
Our proposed project will be very fast when
compared to the above paper's proposed system
as we use a much efficient path planning
algorithm which is the Jump Point Search.
II. ALGORITHMS EXPLANATION
A. A* algorithm: A* is graph search algorithm
that finds the least-cost path from a given
initial node to one goal node (out of one or
more possible goals). It uses a distance-
plus-cost heuristic function (usually
denoted f(x)) to determine the order in
which the search visits nodes in the tree.
The f(x) is the sum of the h(x) heuristic
which is the distance of any current node
from the goal and g(x) which is the
distance of the current node from the
start.
A-Star Algorithm Pseudo Code
Create Start Node with Current
Position Add Start Node to
Queue
While Queue Not Empty
Sort Node Queue by f(N) Value in Ascending
Get First Node From Queue call Node “N”
If N is Goal Then Found and Exit
Loop Else
Mark N Node as Visited Expand each reachable Node
from N call Node
“Next N” f(Next N) = g(Next N) + h(Next N) Loop
FIGURE 1 A*:
B. Greedy best first search: The Best-First-Search
algorithm works in a similar way, except that it
has some estimate or called a heuristic of how
far from the goal any vertex is. Instead of
selecting the vertex closest to the starting point,
it selects the vertex closest to the goal.
Best First Search Pseudo Code
Create Start Node with Current Position
Add Start Node to Queue
While Queue Not Empty
Sort Node Queue by Cost Value in Ascending
Get First Node From Queue call Node “N”
If N is Goal Then Found and Exit Loop
Else
Mark N Node as Visited
Expand each reachable Node from N call Node “Next N”
Loop
FIGURE 2 GREEDY
C. Jump point search: Jump point search is an
optimization to the A* search algorithm path
finding algorithm for uniform-cost grids. It
reduces symmetries in the search procedure by
means of graph pruning, eliminating certain
nodes in the grid based on assumptions that can
be made about the current node's neighbours, as
long as certain conditions relating to the grid
are satisfied. As a result, the algorithm can
consider long jumps along straight (horizontal,
vertical and diagonal) lines in the grid , rather
than the small steps from one grid position to
the next as in A*.
FIGURE 3 JUMP POINT SEARCH
III. RESULTS
The results of any path planning algorithm
can be compared in terms of the 3 factors
1. Computational complexity:
Computational complexity of any
algorithm is described in terms of
number of resources the algorithm used
to reach the desired result the resources
can be CPU time or memory or other
resources.
2. Time complexity: time complexity is
defined as the time taken by the
algorithm to find the path between the
start and the goal.
3. Space complexity: space complexity is
the amount of nodes or units it had to
explore before reaching the goal, more
the nodes explored more the memory
utilization.
For the obstacle course as shown in figure
1, 2 and 3 all the three algorithms were
compared in a 7x7 grid the size 7x7 was
choose so that the path can easily be
visualized . The table 1 below shows the
results for all three algorithms.
FIGURE1
The algorithms were also compared for
maps as large 5000x5000 so as to test the
limits, the algorithms worked fine in those
maps as well, even with random obstacle
path.
A thing that should be noted here is that the
results in the table show that the jump point
search has the best result but it may not be
the case every time in a few special cases
greedy and A* might overpower jump
point search.
Appendix 1 shows the results of the
implementations.
IV. FUTURE WORK
Path planning is not a new technology it
has been extensively researched for more
than past 30 years but the recent
development are mainly focused to
improve the computational complexity of
these algorithms. As a future extension of
this project the algorithms can be further
optimised for better performance and be
can tested on a mobile robot in a real
environment with dynamic obstacle course.
Real time implementation and tackling of
problems like SLAM will be a good future
prospect for this project.
V. REFRENCES
[1]. Haifeng Wang; Jiawei Zhou; Guifeng
Zheng; Yun Liang, "HAS: Hierarchical A-
Star Algorithm for Big Map Navigation in
Special Areas," in Digital Home (ICDH),
2014 5th International Conference on ,
vol., no., pp.222-225, 28-30 Nov. 2014
[2]. Chunbao Wang; Lin Wang; Jian Qin;
Zhengzhi Wu; Lihong Duan; Zhongqiu Li;
Mequn Cao; Xicui Ou; Xia Su; Weiguang
Li; Zhijiang Lu; Mengjie Li; Yulong
Wang; Jianjun Long; Meiling Huang;
Yinghong Li; Qiuhong Wang, "Path
planning of automated guided vehicles
based on improved A-Star algorithm,"
in Information and Automation, 2015 IEEE
International Conference on , vol., no.,
pp.2071-2076, 8-10 Aug. 2015
[3]. Khantanapoka, K.; Chinnasarn, K.,
"Pathfinding of 2D & 3D game real-time
strategy with depth direction A∗ algorithm
for multi-layer," in Natural Language
Processing, 2009. SNLP '09. Eighth
International Symposium on , vol., no.,
pp.184-188, 20-22 Oct. 2009
[4]. Junfeng Yao; Chao Lin; Xiaobiao Xie;
Wang, A.J.; Chih-Cheng Hung, "Path
Planning for Virtual Human Motion Using
Improved A* Star Algorithm,"
in Information Technology: New
Generations (ITNG), 2010 Seventh
International Conference on , vol., no.,
pp.1154-1158, 12-14 April 2010
[5]. Traish, J.; Tulip, J.; Moore, W.,
"Optimization using Boundary Lookup
Jump Point Search," in Computational
Intelligence and AI in Games, IEEE
Transactions on ,vol.PP,no.99, pp.1-1
APPENDIX 1
artifical intelligence final paper

More Related Content

What's hot

Shortest path analysis
Shortest path analysis Shortest path analysis
Shortest path analysis
A K M Anwaruzzaman
 
C42011318
C42011318C42011318
C42011318
IJERA Editor
 
IRJET - Analysis of A-Star Bot
IRJET - Analysis of A-Star BotIRJET - Analysis of A-Star Bot
IRJET - Analysis of A-Star Bot
IRJET Journal
 
Dynamic Path Planning
Dynamic Path PlanningDynamic Path Planning
Dynamic Path Planningdare2kreate
 
APPLYING R-SPATIOGRAM IN OBJECT TRACKING FOR OCCLUSION HANDLING
APPLYING R-SPATIOGRAM IN OBJECT TRACKING FOR OCCLUSION HANDLINGAPPLYING R-SPATIOGRAM IN OBJECT TRACKING FOR OCCLUSION HANDLING
APPLYING R-SPATIOGRAM IN OBJECT TRACKING FOR OCCLUSION HANDLING
sipij
 
Application of Dijkstra Algorithm in Robot path planning
Application of Dijkstra Algorithm in Robot path planningApplication of Dijkstra Algorithm in Robot path planning
Application of Dijkstra Algorithm in Robot path planning
Darling Jemima
 
Hough Transform: Serial and Parallel Implementations
Hough Transform: Serial and Parallel ImplementationsHough Transform: Serial and Parallel Implementations
Hough Transform: Serial and Parallel Implementations
John Wayne
 
06466595
0646659506466595
06466595
Jéssyca Bessa
 
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
sipij
 
Application of Vision based Techniques for Position Estimation
Application of Vision based Techniques for Position EstimationApplication of Vision based Techniques for Position Estimation
Application of Vision based Techniques for Position Estimation
IRJET Journal
 
Motion planning and controlling algorithm for grasping and manipulating movin...
Motion planning and controlling algorithm for grasping and manipulating movin...Motion planning and controlling algorithm for grasping and manipulating movin...
Motion planning and controlling algorithm for grasping and manipulating movin...
ijscai
 
Path Planning And Navigation
Path Planning And NavigationPath Planning And Navigation
Path Planning And Navigationguest90654fd
 
Design and Implementation of Mobile Map Application for Finding Shortest Dire...
Design and Implementation of Mobile Map Application for Finding Shortest Dire...Design and Implementation of Mobile Map Application for Finding Shortest Dire...
Design and Implementation of Mobile Map Application for Finding Shortest Dire...
Eswar Publications
 
Simulation for autonomous driving at uber atg
Simulation for autonomous driving at uber atgSimulation for autonomous driving at uber atg
Simulation for autonomous driving at uber atg
Yu Huang
 
An automatic algorithm for object recognition and detection based on asift ke...
An automatic algorithm for object recognition and detection based on asift ke...An automatic algorithm for object recognition and detection based on asift ke...
An automatic algorithm for object recognition and detection based on asift ke...Kunal Kishor Nirala
 

What's hot (17)

Shortest path analysis
Shortest path analysis Shortest path analysis
Shortest path analysis
 
C42011318
C42011318C42011318
C42011318
 
IRJET - Analysis of A-Star Bot
IRJET - Analysis of A-Star BotIRJET - Analysis of A-Star Bot
IRJET - Analysis of A-Star Bot
 
Dynamic Path Planning
Dynamic Path PlanningDynamic Path Planning
Dynamic Path Planning
 
APPLYING R-SPATIOGRAM IN OBJECT TRACKING FOR OCCLUSION HANDLING
APPLYING R-SPATIOGRAM IN OBJECT TRACKING FOR OCCLUSION HANDLINGAPPLYING R-SPATIOGRAM IN OBJECT TRACKING FOR OCCLUSION HANDLING
APPLYING R-SPATIOGRAM IN OBJECT TRACKING FOR OCCLUSION HANDLING
 
Application of Dijkstra Algorithm in Robot path planning
Application of Dijkstra Algorithm in Robot path planningApplication of Dijkstra Algorithm in Robot path planning
Application of Dijkstra Algorithm in Robot path planning
 
Lecture 10: Navigation
Lecture 10: NavigationLecture 10: Navigation
Lecture 10: Navigation
 
Hough Transform: Serial and Parallel Implementations
Hough Transform: Serial and Parallel ImplementationsHough Transform: Serial and Parallel Implementations
Hough Transform: Serial and Parallel Implementations
 
06466595
0646659506466595
06466595
 
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
A Comparative Study of DOA Estimation Algorithms with Application to Tracking...
 
Application of Vision based Techniques for Position Estimation
Application of Vision based Techniques for Position EstimationApplication of Vision based Techniques for Position Estimation
Application of Vision based Techniques for Position Estimation
 
Motion planning and controlling algorithm for grasping and manipulating movin...
Motion planning and controlling algorithm for grasping and manipulating movin...Motion planning and controlling algorithm for grasping and manipulating movin...
Motion planning and controlling algorithm for grasping and manipulating movin...
 
Path Planning And Navigation
Path Planning And NavigationPath Planning And Navigation
Path Planning And Navigation
 
Design and Implementation of Mobile Map Application for Finding Shortest Dire...
Design and Implementation of Mobile Map Application for Finding Shortest Dire...Design and Implementation of Mobile Map Application for Finding Shortest Dire...
Design and Implementation of Mobile Map Application for Finding Shortest Dire...
 
Simulation for autonomous driving at uber atg
Simulation for autonomous driving at uber atgSimulation for autonomous driving at uber atg
Simulation for autonomous driving at uber atg
 
Thesis summary
Thesis summaryThesis summary
Thesis summary
 
An automatic algorithm for object recognition and detection based on asift ke...
An automatic algorithm for object recognition and detection based on asift ke...An automatic algorithm for object recognition and detection based on asift ke...
An automatic algorithm for object recognition and detection based on asift ke...
 

Similar to artifical intelligence final paper

IRJET- Bidirectional Graph Search Techniques for Finding Shortest Path in Ima...
IRJET- Bidirectional Graph Search Techniques for Finding Shortest Path in Ima...IRJET- Bidirectional Graph Search Techniques for Finding Shortest Path in Ima...
IRJET- Bidirectional Graph Search Techniques for Finding Shortest Path in Ima...
IRJET Journal
 
AbstractWe design an software to find optimal(shortest) path .docx
AbstractWe design an software to find optimal(shortest) path .docxAbstractWe design an software to find optimal(shortest) path .docx
AbstractWe design an software to find optimal(shortest) path .docx
aryan532920
 
Heuristic Function Influence to the Global Optimum Value in Shortest Path Pro...
Heuristic Function Influence to the Global Optimum Value in Shortest Path Pro...Heuristic Function Influence to the Global Optimum Value in Shortest Path Pro...
Heuristic Function Influence to the Global Optimum Value in Shortest Path Pro...
Universitas Pembangunan Panca Budi
 
A* Algorithm
A* AlgorithmA* Algorithm
A* Algorithm
Dr. C.V. Suresh Babu
 
PATH FINDING SOLUTIONS FOR GRID BASED GRAPH
PATH FINDING SOLUTIONS FOR GRID BASED GRAPHPATH FINDING SOLUTIONS FOR GRID BASED GRAPH
PATH FINDING SOLUTIONS FOR GRID BASED GRAPH
acijjournal
 
Implementation of D* Path Planning Algorithm with NXT LEGO Mindstorms Kit for...
Implementation of D* Path Planning Algorithm with NXT LEGO Mindstorms Kit for...Implementation of D* Path Planning Algorithm with NXT LEGO Mindstorms Kit for...
Implementation of D* Path Planning Algorithm with NXT LEGO Mindstorms Kit for...
idescitation
 
Fakhre alam
Fakhre alamFakhre alam
Fakhre alam
Fakhre Alam
 
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
IJERA Editor
 
Node Path Visualizer Using Shortest Path Algorithms
Node Path Visualizer Using Shortest Path AlgorithmsNode Path Visualizer Using Shortest Path Algorithms
Node Path Visualizer Using Shortest Path Algorithms
IRJET Journal
 
Path Planning And Navigation
Path Planning And NavigationPath Planning And Navigation
Path Planning And Navigationguest90654fd
 
mini project_shortest path visualizer.pptx
mini project_shortest path visualizer.pptxmini project_shortest path visualizer.pptx
mini project_shortest path visualizer.pptx
tusharpawar803067
 
Big_data_oriented_novel_background_subtraction_algorithm_for_urban_surveillan...
Big_data_oriented_novel_background_subtraction_algorithm_for_urban_surveillan...Big_data_oriented_novel_background_subtraction_algorithm_for_urban_surveillan...
Big_data_oriented_novel_background_subtraction_algorithm_for_urban_surveillan...
AneeshD5
 
Dijkstra Shortest Path Visualization
Dijkstra Shortest Path VisualizationDijkstra Shortest Path Visualization
Dijkstra Shortest Path Visualization
IRJET Journal
 
Iaetsd modified artificial potential fields algorithm for mobile robot path ...
Iaetsd modified  artificial potential fields algorithm for mobile robot path ...Iaetsd modified  artificial potential fields algorithm for mobile robot path ...
Iaetsd modified artificial potential fields algorithm for mobile robot path ...Iaetsd Iaetsd
 
NON - EUCLIDEAN METRIC AND PATH PLANNING
NON - EUCLIDEAN METRIC AND PATH PLANNINGNON - EUCLIDEAN METRIC AND PATH PLANNING
NON - EUCLIDEAN METRIC AND PATH PLANNING
IJCSES Journal
 
autonomous-vehicles_final
autonomous-vehicles_finalautonomous-vehicles_final
autonomous-vehicles_finalNicholas Jones
 
What is A * Search? What is Heuristic Search? What is Tree search Algorithm?
What is A * Search? What is Heuristic Search? What is Tree search Algorithm?What is A * Search? What is Heuristic Search? What is Tree search Algorithm?
What is A * Search? What is Heuristic Search? What is Tree search Algorithm?
Santosh Pandeya
 

Similar to artifical intelligence final paper (20)

Ai1.pdf
Ai1.pdfAi1.pdf
Ai1.pdf
 
IRJET- Bidirectional Graph Search Techniques for Finding Shortest Path in Ima...
IRJET- Bidirectional Graph Search Techniques for Finding Shortest Path in Ima...IRJET- Bidirectional Graph Search Techniques for Finding Shortest Path in Ima...
IRJET- Bidirectional Graph Search Techniques for Finding Shortest Path in Ima...
 
AbstractWe design an software to find optimal(shortest) path .docx
AbstractWe design an software to find optimal(shortest) path .docxAbstractWe design an software to find optimal(shortest) path .docx
AbstractWe design an software to find optimal(shortest) path .docx
 
Heuristic Function Influence to the Global Optimum Value in Shortest Path Pro...
Heuristic Function Influence to the Global Optimum Value in Shortest Path Pro...Heuristic Function Influence to the Global Optimum Value in Shortest Path Pro...
Heuristic Function Influence to the Global Optimum Value in Shortest Path Pro...
 
A* Algorithm
A* AlgorithmA* Algorithm
A* Algorithm
 
PATH FINDING SOLUTIONS FOR GRID BASED GRAPH
PATH FINDING SOLUTIONS FOR GRID BASED GRAPHPATH FINDING SOLUTIONS FOR GRID BASED GRAPH
PATH FINDING SOLUTIONS FOR GRID BASED GRAPH
 
Implementation of D* Path Planning Algorithm with NXT LEGO Mindstorms Kit for...
Implementation of D* Path Planning Algorithm with NXT LEGO Mindstorms Kit for...Implementation of D* Path Planning Algorithm with NXT LEGO Mindstorms Kit for...
Implementation of D* Path Planning Algorithm with NXT LEGO Mindstorms Kit for...
 
Fakhre alam
Fakhre alamFakhre alam
Fakhre alam
 
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
Optimized Robot Path Planning Using Parallel Genetic Algorithm Based on Visib...
 
Game Paper
Game PaperGame Paper
Game Paper
 
Node Path Visualizer Using Shortest Path Algorithms
Node Path Visualizer Using Shortest Path AlgorithmsNode Path Visualizer Using Shortest Path Algorithms
Node Path Visualizer Using Shortest Path Algorithms
 
Path Planning And Navigation
Path Planning And NavigationPath Planning And Navigation
Path Planning And Navigation
 
mini project_shortest path visualizer.pptx
mini project_shortest path visualizer.pptxmini project_shortest path visualizer.pptx
mini project_shortest path visualizer.pptx
 
Big_data_oriented_novel_background_subtraction_algorithm_for_urban_surveillan...
Big_data_oriented_novel_background_subtraction_algorithm_for_urban_surveillan...Big_data_oriented_novel_background_subtraction_algorithm_for_urban_surveillan...
Big_data_oriented_novel_background_subtraction_algorithm_for_urban_surveillan...
 
Dijkstra Shortest Path Visualization
Dijkstra Shortest Path VisualizationDijkstra Shortest Path Visualization
Dijkstra Shortest Path Visualization
 
Iaetsd modified artificial potential fields algorithm for mobile robot path ...
Iaetsd modified  artificial potential fields algorithm for mobile robot path ...Iaetsd modified  artificial potential fields algorithm for mobile robot path ...
Iaetsd modified artificial potential fields algorithm for mobile robot path ...
 
NON - EUCLIDEAN METRIC AND PATH PLANNING
NON - EUCLIDEAN METRIC AND PATH PLANNINGNON - EUCLIDEAN METRIC AND PATH PLANNING
NON - EUCLIDEAN METRIC AND PATH PLANNING
 
autonomous-vehicles_final
autonomous-vehicles_finalautonomous-vehicles_final
autonomous-vehicles_final
 
Improvement Of A Shortest Routes Algorithm
Improvement Of A Shortest Routes AlgorithmImprovement Of A Shortest Routes Algorithm
Improvement Of A Shortest Routes Algorithm
 
What is A * Search? What is Heuristic Search? What is Tree search Algorithm?
What is A * Search? What is Heuristic Search? What is Tree search Algorithm?What is A * Search? What is Heuristic Search? What is Tree search Algorithm?
What is A * Search? What is Heuristic Search? What is Tree search Algorithm?
 

artifical intelligence final paper

  • 1. COMPARISION OF VARIOUS POPULAR PATH PLANNING ALGORITHMS 1Koyya Shiva Karthik Reddy, 2Vishnunandan Venkatesh Department of Electrical and Electronics Engineering Rochester institute of Technology ABSTARCT Path planning is a complex task where usually the robot has to consider many conditions in the environment apart from just following a map to reach the desired destination/goal. In the current project various popular path planning algorithms are compared in terms of their complexities of time and space. The algorithms were implemented in a known environment based upon grid based maps in MATLAB with random goal, start and obstacles as nodes of the matrix. Three algorithms were choose, A* algorithm as the baseline which was then compared against greedy best first search and joint point search. Keywords: A*, Greedy best first search, Jump point search,path planning INTRODUCTION The paper is divided into IV section the I section talks about the previous work and related research in this field, the second section will talk about all 3 algorithm we are implementing , the III section will talk about the future work that needs to be done and IV section will discuss the result of the work achieved. Before talking about the implementation of the algorithms the following assumptions are made by us towards solving our problem:  Point Robot with Ideal Localization   Workspace is bounded and known   Static source, goal   Number of obstacles are finite and static  Our path planning algorithms implement grid based maps. Grid-based approaches overlay a grid on configuration space, and assume each configuration is identified with a grid point. I. PREVIOUS RESEARCH IN THE FIELD 1. Hierarchical A-Star Algorithm for Big Map Navigation in Special Areas This paper addresses the use of A* in the case for path planning of a large map. The paper talks about a variation of A* called the hierarchical A* algorithm where it basically divides large maps into layers of smaller maps and then applies the A* algorithm to the smaller maps individually to find the shortest path. Then all the shortest paths of the smaller maps are arranged in hierarchy to obtain the best path for the entire map. This method is useful when the map is a country or a state etc. In our case we don't have a very large map. Our map is limited to an indoor environment as we plan to implement the system to a mobile robot. So we don't need to implement hierarchical A*. Apart from this crucial point the algorithm we plan to implement end of the day is the Jump Point Search which would be much efficient than the A*. 2. Path Planning of Automated Guided Vehicles Based on Improved A-Star Algorithm The motive behind this paper is to implement A* in Automated Guided Vehicles. The improvement over regular A* in the paper is the removal of diagonal paths. An obstacle avoidance technique is also implemented where the AGV (Automated Guided Vehicle) avoids collision with obstacles. Technically the improved algorithm is the A* without diagonal movements. Our Base algorithm is very similar to this case where since we look to implement the path planning algorithm in a mobile robot we also excluded diagonal paths (i.e. paths are only in the left, right, up, down directions and don’t move diagonally across nodes in the map.). Our algorithm also avoids obstacles. The advantage we plan to present is that we will implement the Jump point search which will be much efficient than regular A* algorithm.
  • 2. 3. Path finding of 2D & 3D Game Real-Time Strategy with Depth Direction A*Algorithm for Multi-Layer A comparison of all the various path planning algorithms such as A*, Depth First Search, Iterative Deepening, Breadth First Search, Dijkstra’s Algorithm, Best First Search, A-Star Algorithm (A*), Iterative Deepening A*. Besides, the paper proposes Depth Direction A*. Depth Direction A* is very similar to our proposed Jump Point Search and with the help of this paper we see proof that Depth Direction A* is faster than a* although it evaluates more nodes. This is also a proof that Jump Point Search is faster than A* as it is very similar to Depth Direction A*. 4. Path Planning for Virtual Human Motion Using Improved A* Algorithm This paper utilises weights to reduce search steps and to ignore nodes that have obstacles. This in turn reduces the time. The improvement is the adding of weights. This concept of using weights to ignore nodes with obstacles is similar to how we ignore obstacles when we calculate the value of F=G+H and thereby we save time. We do this by giving all our obstacles a value of infinity in the map. During the search whenever any node in the map has a value of infinity the obstacle is detected in the map. Thus it is ignored with logical conditions. The method implemented in the above paper is also similarly implemented in ours. 5. Optimization using Boundary Lookup Jump Point Search One of the crucial information that significantly differentiates our project and the above paper is that in the paper above the obstacles are dynamic in the map. The search method used is Jump point search. Since obstacles are dynamic for every instance of real time, the path planning algorithm is implemented with the map being updated at those instances of real time. Hence when a map is stored in memory during one implementation of the Jump Point Search then at the next instance of time the current map is deleted from the cache and a new map is made and the algorithm is implemented again. In our implementation of the project the map consists of static obstacles. There may be real time obstacles that are dynamic along the path but these obstacles don’t change the map. Only the static obstacles are taken in the map . A simple obstacle avoider is used in the execution avoiding real time dynamic obstacles without making any changes to the map. 6. Sensor-Based Path-Planning Algorithms for a Nonholonomic Mobile Robot A nonholonomic system in physics and mathematics is a system whose state depends on the path taken in order to achieve it. Thus it is basically a path planning system. In this paper depth first search and best first search are used to implement path planning for a mobile robot. Sensors are used to avoid obstacles along the path. Depth first search and greedy best first search are okay to implement when the map is an indoor based map and is not very complex. In cases where the map is complex the algorithm takes a lot of time to find the path Our proposed project will be very fast when compared to the above paper's proposed system as we use a much efficient path planning algorithm which is the Jump Point Search. II. ALGORITHMS EXPLANATION A. A* algorithm: A* is graph search algorithm that finds the least-cost path from a given initial node to one goal node (out of one or more possible goals). It uses a distance- plus-cost heuristic function (usually denoted f(x)) to determine the order in which the search visits nodes in the tree. The f(x) is the sum of the h(x) heuristic which is the distance of any current node from the goal and g(x) which is the distance of the current node from the start. A-Star Algorithm Pseudo Code Create Start Node with Current Position Add Start Node to Queue While Queue Not Empty Sort Node Queue by f(N) Value in Ascending Get First Node From Queue call Node “N” If N is Goal Then Found and Exit Loop Else
  • 3. Mark N Node as Visited Expand each reachable Node from N call Node “Next N” f(Next N) = g(Next N) + h(Next N) Loop FIGURE 1 A*: B. Greedy best first search: The Best-First-Search algorithm works in a similar way, except that it has some estimate or called a heuristic of how far from the goal any vertex is. Instead of selecting the vertex closest to the starting point, it selects the vertex closest to the goal. Best First Search Pseudo Code Create Start Node with Current Position Add Start Node to Queue While Queue Not Empty Sort Node Queue by Cost Value in Ascending Get First Node From Queue call Node “N” If N is Goal Then Found and Exit Loop Else Mark N Node as Visited Expand each reachable Node from N call Node “Next N” Loop FIGURE 2 GREEDY C. Jump point search: Jump point search is an optimization to the A* search algorithm path finding algorithm for uniform-cost grids. It reduces symmetries in the search procedure by means of graph pruning, eliminating certain nodes in the grid based on assumptions that can be made about the current node's neighbours, as long as certain conditions relating to the grid are satisfied. As a result, the algorithm can consider long jumps along straight (horizontal, vertical and diagonal) lines in the grid , rather than the small steps from one grid position to the next as in A*. FIGURE 3 JUMP POINT SEARCH III. RESULTS The results of any path planning algorithm can be compared in terms of the 3 factors 1. Computational complexity: Computational complexity of any algorithm is described in terms of number of resources the algorithm used to reach the desired result the resources can be CPU time or memory or other resources. 2. Time complexity: time complexity is defined as the time taken by the algorithm to find the path between the start and the goal. 3. Space complexity: space complexity is the amount of nodes or units it had to explore before reaching the goal, more the nodes explored more the memory utilization. For the obstacle course as shown in figure 1, 2 and 3 all the three algorithms were compared in a 7x7 grid the size 7x7 was choose so that the path can easily be visualized . The table 1 below shows the results for all three algorithms.
  • 4. FIGURE1 The algorithms were also compared for maps as large 5000x5000 so as to test the limits, the algorithms worked fine in those maps as well, even with random obstacle path. A thing that should be noted here is that the results in the table show that the jump point search has the best result but it may not be the case every time in a few special cases greedy and A* might overpower jump point search. Appendix 1 shows the results of the implementations. IV. FUTURE WORK Path planning is not a new technology it has been extensively researched for more than past 30 years but the recent development are mainly focused to improve the computational complexity of these algorithms. As a future extension of this project the algorithms can be further optimised for better performance and be can tested on a mobile robot in a real environment with dynamic obstacle course. Real time implementation and tackling of problems like SLAM will be a good future prospect for this project. V. REFRENCES [1]. Haifeng Wang; Jiawei Zhou; Guifeng Zheng; Yun Liang, "HAS: Hierarchical A- Star Algorithm for Big Map Navigation in Special Areas," in Digital Home (ICDH), 2014 5th International Conference on , vol., no., pp.222-225, 28-30 Nov. 2014 [2]. Chunbao Wang; Lin Wang; Jian Qin; Zhengzhi Wu; Lihong Duan; Zhongqiu Li; Mequn Cao; Xicui Ou; Xia Su; Weiguang Li; Zhijiang Lu; Mengjie Li; Yulong Wang; Jianjun Long; Meiling Huang; Yinghong Li; Qiuhong Wang, "Path planning of automated guided vehicles based on improved A-Star algorithm," in Information and Automation, 2015 IEEE International Conference on , vol., no., pp.2071-2076, 8-10 Aug. 2015 [3]. Khantanapoka, K.; Chinnasarn, K., "Pathfinding of 2D & 3D game real-time strategy with depth direction A∗ algorithm for multi-layer," in Natural Language Processing, 2009. SNLP '09. Eighth International Symposium on , vol., no., pp.184-188, 20-22 Oct. 2009 [4]. Junfeng Yao; Chao Lin; Xiaobiao Xie; Wang, A.J.; Chih-Cheng Hung, "Path Planning for Virtual Human Motion Using Improved A* Star Algorithm," in Information Technology: New Generations (ITNG), 2010 Seventh International Conference on , vol., no., pp.1154-1158, 12-14 April 2010 [5]. Traish, J.; Tulip, J.; Moore, W., "Optimization using Boundary Lookup Jump Point Search," in Computational Intelligence and AI in Games, IEEE Transactions on ,vol.PP,no.99, pp.1-1