Complete Graph Technique Based Optimization In Meadow Method

S. Singh et. al. / International Journal of Engineering Science and Technology
Vol. 2(9), 2010, 4951-4958
Complete Graph Technique Based
Optimization In Meadow Method Of Robotic
Path Planning
S. Singh*,G. Agarwal#
* Dept. of Information technology ,Invertis Institute Of Engineering and technology, Bareilly (UP) ,India
# Dept. of computer science, Invertis Institute Of Engineering and technology, Bareilly (UP) ,India
[email protected](S Singh),[email protected](G.Agarwal)
Abstract: This paper explores new dimension in optimal path planning, Here we are proposing a new algorithm
‘OPTIMIZED PATH PLANING ALGORITHM’, which optimizes the path between single source to single
destination. The proposed algorithm optimizes the path found by Dijkstra’s algorithm, it is proven in this paper that
the new path is better than the path found by Dijkstra’s algorithm. The simulator is developed in C- language, on the
basis of which, comparison table has been constructed which shows better performance of the proposed algorithm.
First step is Object Growing in which the object is grown to its configuration space and produces the actual space
for robot navigation. Next step is possible complete graph generation, in which a graph is drawn connecting all the
obstacles, this is a complete graph and better than those of convex polygon graph in Meadow Maps technique as it
has more edges producing more information. Mid point network generation, connects the midpoints of all these
edges and creates the path for robot movement. Then we find a path using Dijkstra’s algorithm [8], the best in single
source and single destination problems. We applied our algorithm “Optimized Algorithm” and hence creating a
more optimized path, which is approximate to ideal path, consist of less turns and hence saves energy.
Keywords: Complete Graph Method, Meadow Method Optimization, Dijkastra’s Optimized Path.
1. Introduction
Path planning is an open robotic problem. The problem can be stated as “ How to find a path in a work space with
obstacles from a start point to a goal point which is most efficient in term of length of the path and energy consumed
by robot in getting goal.”
Following are previously used terms and techniques in the field of robot navigation. Each technique has its own
advantages and disadvantages. We are showing here the main techniques (Some Terms and Methods) which are
being used till now (previous work) .
• Configuration space [9]
• Generalized Voronoi graphs [9]
• Grids based motion planning[8]
• Graph-based planners: A* [8]
• Meadow maps
1.1. Configuration Space [9]
1.1.1. Configuration Space [9] (abbreviated: “C-space”):
Data structure that allows robot to specify position and orientation of objects and robot in the environment is called
C-space. “Good C-space” Reduces the number of dimensions that a planner has to deal with. Typically, for indoor
mobile robots, Assume robot is round, so that orientation doesn’t matter. Assume robot is holonomic (i.e., it can turn
in place) (Although there is much research dealing with path planning in non-holonomic robots). Entire space is
referred to as “occupied” or “free” space.
ISSN: 0975-5462
4951
S. Singh et. al. / International Journal of Engineering Science and Technology
Vol. 2(9), 2010, 4951-4958
1.2. Generalized Voronoi graphs
• Steps involve creation of voronoi edge.
• Voronoi edge is equidistant from all points.
• Points where these edges meet is voronoi vertex.
1.2.1. Basic GVG approach:
Generate a Voronoi edge, which is equidistant from all points. Point where Voronoi edge meets is called a Voronoi
vertex. Vertices often have physical correspondence to aspects of environment that can be sensed If robot follows
Voronoi edge, it won’t collide with any modeled obstacles.
1.3 Grids
a)
b)
c)
d)
Superimposes a 2D Cartesian grid on the world space.
If there is any object in the area contained by a grid element, that element is marked as occupied.
Center of each element in grid becomes a node, leading to highly connected graph.
Grids are either considered 4-connected or 8-connected.
Fig-1 Grid based Technique
1.4. Graph-based planners:
•
•
•
•
Path finding between initial node and goal node can be done using graph search
algorithms (Dijkastra’s Algorithm is one of the best algorithms used for this purpose) .
However, many graph search algorithms require visiting each node in graph to determine shortest path
Computationally tractable for sparsely connected graph (e.g., Voronoi diagram)
Computationally expensive for highly connected graph (e.g., regular grid)
Therefore, interest is in “branch and bound” search
Prunes off paths that aren’t optimal
Classic approach: A* search algorithm
Frequently used for holonomic robots
1.5) Meadow maps
•
•
•
Transform space into convex polygons
– Polygons represent safe regions for robot to traverse
Important property of convex polygons:
– If robot starts on perimeter and goes in a straight line to any other point on the perimeter, it
will not go outside the polygon
Path planning:
– Involves selecting the best series of polygons to transit through
ISSN: 0975-5462
4952
S. Singh et. al. / International Journal of Engineering Science and Technology
Vol. 2(9), 2010, 4951-4958
Following are the steps involved in Meadow Method1. Grow objects (explained below).
2. Construct convex polygons.
3. Mark midpoints; these become graph nodes for path planner.
4. Path planner plans path based upon new graph.
Fig. 2 Meadow Map method
2. Optimized Meadow Method: The Proposed Algorithm
2.1. The Concept
The Method has been divided in to different modules, each one for a specific task..
2.1.1 The Block Diagram:-
Fig . 3 Block Diagram of the project
ISSN: 0975-5462
4953
S. Singh et. al. / International Journal of Engineering Science and Technology
Vol. 2(9), 2010, 4951-4958
2.2. The Proposed Technique - Optimized Algorithm 2.2.1. Object Growing
This is the process of enlargement of obstacles by moving the robot around each obstacle using one reference point
on robot’s boundary. The reference point can then be considered as robot itself and area swapped by the robot is
added restricted area in the work space. It can be seen from the fig- 4 that there is a fix robot start position as well as
robot’s goal position (shown in BLUE color) and obstacles (shown in RED color) which robot has to avoid in the
process of navigation. In the fig. 4 object growing is shown. This shows the actual area in which robot will move in
order to avoid the obstacles. After object growing, robot can be considered as a point with left most corner, and a
region has been specified in which robot can not move. This process is called object enlargement where it seems
that the size of object has grown.
Fig. 4 Object Growing
2.2.2. Complete graph generation
A complete graph is created using the corners of obstacles. In this figure black lines are objects which are
surrounded by gray boundaries(Enlarged area).
ISSN: 0975-5462
4954
S. Singh et. al. / International Journal of Engineering Science and Technology
Vol. 2(9), 2010, 4951-4958
Fig 5 – Complete Graph Generation
2.2.3. Mid point network generation:
After complete graph generation, we get- Mid point of each edge (no. of midpoints will be less than or equal to
number of edges in the complete graph.) These midpoints will be fixed for that particular problem. Start and goal
position may vary according to input of user. for start and goal we need two more nodes. Total number of nodes in
possible mid point network is less than or equal to 2 plus the number of edges in the complete graph.
Fig. 4 – Mid point Network Generation
2.2.4.
Path finding
Using the nodes generated in above step. The minimum length path is obtained using dijkastra’s algorithm. The path
is shown in BLUE color.
ISSN: 0975-5462
4955
S. Singh et. al. / International Journal of Engineering Science and Technology
Vol. 2(9), 2010, 4951-4958
Fig. 5 – Applying Dijkstra’s Algorithm
2.2.5.
Path Optimization
For path optimization we have developed the following algorithm , this algorithm gets a path which is
approximately ideal path. This also reduces the number of turns which saves energy. The path in CYAN color is the
path after applying Optimized Algorithm. Which is close to ideal path i.e. in Blue dotted color. The algorithm takes
dijkastra’s path between source and destination as reference and works as follows- real_initial_position (Source) and
real_goal_position (Destination) are duplicated in temp_initial_position and temp_goal_position. If
temp_initial_position and temp_goal_position are not visible to each other ( There is any part of obstacle between
them) than temp_goal_position is assigned the node coming earlier to the current node in temp_goal_position on
dijkastra’s path. But if temp_initial_position and temp_goal_position are visible to each other
( There is no part
of obstacle between them) than temp_goal_position is added to the optimized path skipping the nodes coming
between temp_initial_position and temp_goal_position on dijkastra’s path (Next_node array is used for this purpose)
and temp_initial_position is shifted to temp_goal_position and temp_goal_position is assigned real_goal_position.
This process is repeated until compete optimized path is found.
Fig. 6 – Final Output
ISSN: 0975-5462
4956
S. Singh et. al. / International Journal of Engineering Science and Technology
Vol. 2(9), 2010, 4951-4958
2.3 ALGORITHM : Optimization of path obtained by Dijkastra’s algorithm
1. Select Real_Initial_Position And Real_Goal_Position;
2.
a)
b)
c)
3.
If(PathExists Between temp_Initial_Position and temp_Goal_Position)
{
temp_Initial_Position temp_Goal_Position;
temp_Goal_Position  Real_Goal_Position;
Next_Node[add++]  temp_Initial_Position;
IF( temp_Initial_Position=Real_Goal_Position)
Then GoTo step 4.
Else
GoTo step 3.
}
Else
{
temp_Goal_PositionPrevious Node Exists On Reference Dijkastra’s Path;
}
STOP.
4.
3.
temp_Initial_Position  Real Initial Position
temp_Goal_Position  Real_Goal_Position
Next_Node [0] temp_Initial_position; Add=1;// Add is array index
Comparative Analysis:
3.1. Displaying Results
Following is a comparison chart (Table 1) between Dijkstra’s algorithm and Optimize algorithm. This chart
has been created on the basis of 13 run of simulator by taking different cases of start and goal positions and
different obstacles positions, shapes and sizes. In every case optimized path was better than Dijkastra’s
algorithm.
Problem
Dijkastra’s
Path
length
Optimized
Path
Length
Optimization
Turns
In dijkastra’s
Path
547
320
619
1339
1794
1566
1510
2405
1745
1015
831
2148
742
547
320
526
923
1628
1432
1406
2223
1646
960
784
2027
728
0
0
93
416
166
134
104
182
99
55
47
121
14
0
0
2
10
9
9
6
17
9
12
3
13
8
Problem 1
Problem 2
Problem 3
Problem 4
Problem 5
Problem 6
Problem 7
Problem 8
Problem 9
Problem 10
Problem 11
Problem 12
Problem 13
Turns
In
Optimized
Path
0
0
2
5
5
5
3
9
8
6
2
11
4
Result
Both are equal
Both are equal
Opt. is Better
Opt. is Better
Opt. is Better
Opt. is Better
Opt. is Better
Opt. is Better
Opt. is Better
Opt. is Better
Opt. is Better
Opt. is Better
Opt. is Better
Table [1] – Performance Specification Table (Path length is in number of pixels traversed in the simulator)
ISSN: 0975-5462
4957
S. Singh et. al. / International Journal of Engineering Science and Technology
Vol. 2(9), 2010, 4951-4958
5. Advantages Of Technique




Optimize Tech. always gives better path with less distance.
Optimize tech. gives less zigzag path with less and genuine turns.
Less turns helps Robot for Energy & Time saving.
Very good for both from simplest one to complex one.
6. Limitations Of Technique
This technique can not work with curved shape Map. As it has been designed specifically for rectangular,
triangular, squared obstacles.
7. Conclusion


Optimize Technique approach is better than convex Polygon based Meadow map technique.
Optimize Technique path may be less efficient than Ideal path but Optimal Path always better
than Single Dijkastra’s Path.
8. References
[1]
[3]
[4]
[5]
[6]
[8]
[9]
[10]
Brooks, R., Cambrian Intelligence: The Early History of the New AI, MIT Press, 1999.
[2]
Brooks, R., and Flynn, A., Fast, Cheap and Out of Control, AI Memo 1182, MIT
Elaine Rich and Kelvin Knight,Artificial Intelligence,T.M.H,2000.
G. van den Bergen, Collision detection in interactive 3D computer animation, PhD thesis, Eindhoven University, 1999.
Hanna Kurniawati, Work Space Based Sampling for Probabilistic Path Planning, Ph.D. Thesis,School of computing,
National University of Singapore, 2007.
Lozano-P´erez and M. Wesley. An algorithm for planning collisionfree paths among polyhedral obstacles. Comm. ACM,
22(10):560–570, 1979.
[7]
Robin R. Murphy ,Introduction to AI Robotics,MIT Press,2000.
AI Laboratory, December, 1989.
Roland Jan Geraerts,Sampling-based Motion Planning : Analysis and path Quality, Ph.D. Thesis,Utrecht University,2006
Subramanian Ramamoorthy, Task Encoding,Motion Planningg and Intelligent Control using Qualitative Models, Doctor of
Philosophy Dissertation, University of texas,Austin,2007.
Stuart Russell and Peter Norvig, Artificial Intelligence : A modern Approach, Pearson Education,2005
ISSN: 0975-5462
4958