Mobile Robot Path Planning in Static Environment

Similar documents
Mobile Robot Path Planning in Static Environments using Particle Swarm Optimization

1 Lab 5: Particle Swarm Optimization

EE631 Cooperating Autonomous Mobile Robots

Implementation and Comparison between PSO and BAT Algorithms for Path Planning with Unknown Environment

ARTIFICIAL INTELLIGENCE (CSCU9YE ) LECTURE 5: EVOLUTIONARY ALGORITHMS

(Refer Slide Time: 00:02:00)

1 Lab + Hwk 5: Particle Swarm Optimization

1 Lab + Hwk 5: Particle Swarm Optimization

Path Planning by Using Generalized Voronoi Diagrams and Dijkstra Algorithm. Lai Hon Lin. Project Proposal. Computational Geometry

Dynamic Robot Path Planning Using Improved Max-Min Ant Colony Optimization

Research Article Path Planning Using a Hybrid Evolutionary Algorithm Based on Tree Structure Encoding

Research on time optimal trajectory planning of 7-DOF manipulator based on genetic algorithm

CHAPTER 2 CONVENTIONAL AND NON-CONVENTIONAL TECHNIQUES TO SOLVE ORPD PROBLEM

Three-Dimensional Off-Line Path Planning for Unmanned Aerial Vehicle Using Modified Particle Swarm Optimization

Fuzzy Inspired Hybrid Genetic Approach to Optimize Travelling Salesman Problem

CHAPTER 6 ORTHOGONAL PARTICLE SWARM OPTIMIZATION

Sung-Eui Yoon ( 윤성의 )

Self-learning Mobile Robot Navigation in Unknown Environment Using Evolutionary Learning

Robot Path Planning Method Based on Improved Genetic Algorithm

Particle Swarm Optimization Methods for Pattern. Recognition and Image Processing

Path Planning. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano tel:

Forward-backward Improvement for Genetic Algorithm Based Optimization of Resource Constrained Scheduling Problem

ISSN: [Keswani* et al., 7(1): January, 2018] Impact Factor: 4.116

Evolutionary Algorithm for Embedded System Topology Optimization. Supervisor: Prof. Dr. Martin Radetzki Author: Haowei Wang

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2

Lecture

CT79 SOFT COMPUTING ALCCS-FEB 2014

Boolean network robotics

CHAPTER 1 INTRODUCTION

Multi-Objective Path Planning using Spline Representation

A* and 3D Configuration Space

Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

A gradient-based multiobjective optimization technique using an adaptive weighting method

Evolutionary Artificial Potential Field for Path Planning: A GPU Implementation

Experimental Study on Bound Handling Techniques for Multi-Objective Particle Swarm Optimization

Navigation and Metric Path Planning

Visibility Graph. How does a Mobile Robot get from A to B?

Autonomous Mobile Robots, Chapter 6 Planning and Navigation Where am I going? How do I get there? Localization. Cognition. Real World Environment

Particle Swarm Optimization applied to Pattern Recognition

Gesture based PTZ camera control

Computer Game Programming Basic Path Finding

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Improvement of Web Search Results using Genetic Algorithm on Word Sense Disambiguation

Computational Intelligence Applied on Cryptology: a Brief Review

The Genetic Algorithm for finding the maxima of single-variable functions

Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007)

Potential Function. Homework #3. Part I: Star Algorithm

Exploration vs. Exploitation in Differential Evolution

Modified Particle Swarm Optimization

Mobile Robot Motion Planning and Multi Objective Optimization Using Improved Approach

Comparative Study on VQ with Simple GA and Ordain GA

International Journal of Digital Application & Contemporary research Website: (Volume 1, Issue 7, February 2013)

Foundations of AI. 4. Informed Search Methods. Heuristics, Local Search Methods, Genetic Algorithms. Wolfram Burgard & Bernhard Nebel

We have already seen the transportation problem and the assignment problem. Let us take the transportation problem, first.

Map-Based Strategies for Robot Navigation in Unknown Environments

Foundations of AI. 4. Informed Search Methods. Heuristics, Local Search Methods, Genetic Algorithms

Genetic Algorithm for Finding Shortest Path in a Network

Comparative Study of Meta-heuristics Optimization Algorithm using Benchmark Function

An Evolutionary Algorithm for the Multi-objective Shortest Path Problem

INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & MANAGEMENT

Solving ISP Problem by Using Genetic Algorithm

NOVEL HYBRID GENETIC ALGORITHM WITH HMM BASED IRIS RECOGNITION

THE NEW HYBRID COAW METHOD FOR SOLVING MULTI-OBJECTIVE PROBLEMS

HYBRID GENETIC ALGORITHM WITH GREAT DELUGE TO SOLVE CONSTRAINED OPTIMIZATION PROBLEMS

Route Optimization in MANET using FIGA

The movement of the dimmer firefly i towards the brighter firefly j in terms of the dimmer one s updated location is determined by the following equat

ACCELERATING THE ANT COLONY OPTIMIZATION

CS 354R: Computer Game Technology

TDDC17. Intuitions behind heuristic search. Recall Uniform-Cost Search. Best-First Search. f(n) =... + h(n) g(n) = cost of path from root node to n

Chapter 14 Global Search Algorithms

Particle Swarm Optimization Artificial Bee Colony Chain (PSOABCC): A Hybrid Meteahuristic Algorithm

A Fuzzy Local Path Planning and Obstacle Avoidance for Mobile Robots

TURN AROUND BEHAVIOR GENERATION AND EXECUTION FOR UNMANNED GROUND VEHICLES OPERATING IN ROUGH TERRAIN

SwarmOps for Matlab. Numeric & Heuristic Optimization Source-Code Library for Matlab The Manual Revision 1.0

A MULTI-SWARM PARTICLE SWARM OPTIMIZATION WITH LOCAL SEARCH ON MULTI-ROBOT SEARCH SYSTEM

1. Introduction. 2. Motivation and Problem Definition. Volume 8 Issue 2, February Susmita Mohapatra

Inertia Weight. v i = ωv i +φ 1 R(0,1)(p i x i )+φ 2 R(0,1)(p g x i ) The new velocity update equation:

A New Meta-heuristic Bat Inspired Classification Approach for Microarray Data

A Hybrid Genetic Algorithms and Tabu Search for Solving an Irregular Shape Strip Packing Problem

Introduction to Genetic Algorithms. Based on Chapter 10 of Marsland Chapter 9 of Mitchell

Artificial Neuron Modelling Based on Wave Shape

GA is the most popular population based heuristic algorithm since it was developed by Holland in 1975 [1]. This algorithm runs faster and requires les

Heuristic Optimisation

Motion Planning. Howie CHoset

Evolutionary Algorithms. CS Evolutionary Algorithms 1

IMPLEMENTATION OF A FIXING STRATEGY AND PARALLELIZATION IN A RECENT GLOBAL OPTIMIZATION METHOD

Soft Computing Approaches for Effective Utilization of Elastic Energy in Flexible Manipulator

Waypoint Navigation with Position and Heading Control using Complex Vector Fields for an Ackermann Steering Autonomous Vehicle

A Modified PSO Technique for the Coordination Problem in Presence of DG

Kyrre Glette INF3490 Evolvable Hardware Cartesian Genetic Programming

A Genetic Algorithm Applied to Graph Problems Involving Subsets of Vertices

Optimization of Turning Process during Machining of Al-SiCp Using Genetic Algorithm

[Kaur, 5(8): August 2018] ISSN DOI /zenodo Impact Factor

New Method for Accurate Parameter Estimation of Induction Motors Based on Artificial Bee Colony Algorithm

AN EVOLUTIONARY APPROACH TO DISTANCE VECTOR ROUTING

SwarmOps for Java. Numeric & Heuristic Optimization Source-Code Library for Java The Manual Revision 1.0

Innovative Systems Design and Engineering ISSN (Paper) ISSN (Online) Vol.5, No.1, 2014

International Journal of Information Technology and Knowledge Management (ISSN: ) July-December 2012, Volume 5, No. 2, pp.

Elastic Bands: Connecting Path Planning and Control

CHAPTER 6 HYBRID AI BASED IMAGE CLASSIFICATION TECHNIQUES

Transcription:

Mobile Robot Path Planning in Static Environment A Thesis Submitted in Partial Fulfilment of the Requirements for the Degree of Bachelor of Technology in Computer Science & Engineering Submitted by: Raman Mishra Roll no :111CS0606 Under Supervision of: Prof. Ratnakar Dash Department of Computer Science & Engineering NIT Rourkela DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING NATIONAL INSTITUTE OF TECHNOLOGY ROURKELA

National Institute of Technology Rourkela Certificate This is to certify that the thesis entitled Mobile Robot Path Planning in Static Environment submitted by Raman Mishra(111CS0606) in partial fulfilment of the requirements for the award of Bachelor of Technology Degree in Computer Science & Engineering at National Institute of Technology, Rourkela is an authentic work carried out by him under my supervision and guidance. Prof. Ratnakar Dash Department of Computer Science & Engineering National Institute of Technology Rourkela

Acknowledgement I owe my sincere gratitude to Prof. Ratnakar Dash who guided me during the course of the project. His support and guidance was very crucial for the project. His suggestions will always be remembered which will, I believe, guide me through all walks of life. Raman Mishra 111CS0606

Abstarct The success of Particle Swarm Optimization (PSO) and Genetic algorithm (GA) as single objective optimizer has motivated researchers to extend the use of this bioinspired techniques to other areas. One of them is multi-objective optimization. As a part of this review we present a classification of the approaches and identify the main approaches here. We describe useful performance measures and simulation results of conventional Genetic algorithm and PSO. We extend this to multi-objective genetic algorithm and PSO. This means that GA and PSO optimizes path based on two criteria: length and difficult. Another method that has new to this field of research is the Artificial Potential field method. In this method the entire space is supposed to contain a potential field and we calculate the net force that is acted upon the robot to reach its goal. Keywords- Multiple Objective Optimization, Particle Swarm Optimization, Genetic Algorithm iii

Contents Certificate Acknowledgement Abstract List of Figures i ii iii v 1 Introduction 1 2 Literature Review 3 3 Proposed Work 4 3.1 A Star................................... 5 3.1.1 A star use of heuristic...................... 5 3.1.2 Simulation Results........................ 6 3.2 Genetic Algorithm............................ 8 3.2.1 Proposed Method for Path Planning............... 8 3.2.2 Initial Population......................... 9 3.2.3 Path Repair Mechanism..................... 9 3.2.4 Single Objective Function.................... 9 3.2.5 Two Objective Function..................... 10 3.2.6 Genetic Operator......................... 11 3.2.7 Selection Method......................... 11 3.2.8 Simulation Results........................ 12 3.3 Particle Swarm Optimization....................... 14 3.3.1 Simulation Results........................ 15 3.4 Artificial Potential Field Method..................... 16 3.4.1 The Attractive Potential Function................ 16 3.4.2 The Repulsive Potential Function................ 16 3.4.3 Simulation Results........................ 17 4 Conclusion 18 References 19 iv

List of Figures 1 Without Scanning............................. 1 2 Path after Scanning............................ 2 3 Path Planning............................... 5 4 map1 Astar................................ 6 5 map2 Astar................................ 7 6 map1 Astar................................ 7 7 Path Repair algorithm........................... 10 8 Algorithm of multi-objective GA..................... 11 9 map 1 GA................................. 12 10 map 2 GA................................. 12 11 map 3 GA................................. 13 12 map 4 GA................................. 13 13 map 1 PSO................................ 15 14 map 1 APF................................ 17 15 map 2 APF................................ 17 v

1 Introduction Path Planning for autonomous robots is a very challenging task. We often face a situation in real life where the robot is supposed to find the best possible paths in an environment which is full of obstacles. Some path finding algorithms that have been used to find the best possible path are Genetic, Particle Swarm, etc. Figure 1: Without Scanning As you can see in the above figure a unit which is at the bottom of the map want to reach the goal. Instead of scanning the area completely it keeps on moving without until it reaches a point where it realizes that it can no longer move forward. Though the goal point is within its grasp it is not able to reach the goal. So now the robot tries to find an alternate path where it first tries to come out of that concave shaped obstacle and then moves along the obstacle and then reaches its goal. 1

Figure 2: Path after Scanning Now in this figure you can see the bot no longer enters into the trap. In this situation the bot has planned its path before scanning the whole area making it possible to avoid the trap. Though planning takes time but assures a safe path for the robot to travel. This type of scanning of the map is called path planning and this is done using path planning algorithms. 2

2 Literature Review The first proposal of multi-objective particle swarm optimization and multi-objective Genetic Algorithm is fourteen years old but considerable algorithm have been proposed since then. Most researches that have taken place on this topic have tried to exploit this technique to solve the twin objective of finding a robust path while avoiding obstacles. In this project I have tried to implement the same and try to compare the results of Genetic algorithm with that Particle swarm Optimization. Artificial Potential Field method is also used for path planning which is an online approach. This method has been proposed in a lot of papers with different Potential functions. This method is also used in dynamic environment along with other algorithms. 3

3 Proposed Work I have implemented four path finding algorithms in static environment using matlab. I have taken a map containing obstacles (black boxes, red circles) and by using the data provided i.e. source point and destination point I am able to create an optimal or sub-optimal path avoiding obstacles. The algorithms that I have implemented are as follows :- 1. A star Algorithm 2. Genetic Algorithm 3. Particle Swarm Optimization 4. Artificial Potential Field Method 4

3.1 A Star A star algorithm takes the best of features from both Dijkstras Algorithm and Greedy Algorithm. Dijsktras algorithm tends to select those points which are nearer to the starting point and then it will move outwards from there. Though it is guaranteed to find the shortest path but computational complexity is very high making it difficult to use in path finding. Greedy algorithm works in a similar manner but differs in the way it chooses its points. This algorithms selects those points which are nearer to the goal than the starting point. Though this algorithm may not find the shortest path but still works faster than Greedy. (a) Greedy algorithm (b) Dijkstra s algorithm Figure 3: Path Planning As you can see from both these figures that the path discovered using Dijkstras is the shortest path and the path found using Greedy tends to enter into the concave obstacle and then later on recovering to find its path. A star algorithm is defined using a function f (n) = g(n) + h(n) where g(n) represents the exact cost of the path from the starting point to any vertex whereas h(n) is the heuristic estimated cost function. 3.1.1 A star use of heuristic The heuristic can be used to control A* s behaviour. h(n)=0 then A star tends to perform like Dijkstras Algorithm. Lower the value of h(n) then more closer is its behaviour to Dijsktras making it more likely for it to find the shortest path. It also expands more making it slower. 5

Value of h(n) is equal to the cost of moving from a vertex to a goal, then A star will find the best path. In this case it is not likely to expand into anything else making it faster but happens only in rare cases. If the value of h(n) is greater than the cost of moving from the vertex to the goal then A star is may not find the best path but it certainly will run faster. If h(n) has a very high value then it starts behaving like Greedy Best First Search. By suitably modifying the values of g(n) and h(n) we can control the behaviour and computational time for the planning of path. 3.1.2 Simulation Results Figure 4: map1 Astar 6

Figure 5: map2 Astar Figure 6: map1 Astar 7

3.2 Genetic Algorithm Genetic Algorithm is a very efficient way of generating paths in a flat map or dangerous terrain containing obstacles. In this method unlike conventional Genetic algorithm where we are trying to optimize only one function, here we optimize under two criteria that is length and difficulty. Genetic Algorithm is an evolutionary optimization method which can solve optimization problem. The idea behind this method is that the solution to the optimization problem is to be viewed as an individual that has many parameters. These parameters are to be considered as genes that make up the individual (solution to the optimization problem). Since Genetic Algorithm is an evolutionary method it tries to evolve p solutions or individuals from a population size of S through iteration. Each time we check the fitness of each individual by checking it with a given fitness function. Each generation produces a new set of individuals by crossover and mutation with the sole objective that the new off-springs will provide a much better solution than its previous generation. Then we select new individual for the next iteration using some selection algorithm and then replace them back into the population. This process is repeated for k generations. 3.2.1 Proposed Method for Path Planning Input : We will take 500 500 map which contain obstacles in the form of black boxes. We will take [0 0] as source point and [490 490] as destination point. Output : The path must contain a series of points which is to be stored in a path array and it is subject to constraints and optimization criteria: The path must not pass through those solid black boxes. The path must stay inside the map. Path length must be optimized. - We must also establish a set of rules that Genetic algorithm will be operating under The obstacles are static in nature. 8

It is assumed that we have sufficient knowledge of the map and the placement of the obstacles as this is an offline method of path planning. All paths produced by Genetic Algorithm are monotone in nature. The free traversable space will be white whereas the obstacle laden path will be black in colour. 3.2.2 Initial Population The population size that is used will be p. Of the total population remaining, p 2 of them are to be generated randomly while the remaining two present will be straight paths from s to d. S = {x0,x1,x2,...,xp2,a,b} 3.2.3 Path Repair Mechanism The path that is obtained from Genetic Algorithm will be valid or invalid and the criteria for which a path will be considered invalid are as follows:- The path lies outside the map. The final point is not d. The path passes through obstacles. 3.2.4 Single Objective Function We consider this path planning problem where we try to optimize the objective of minimizing the path length. To minimize the path length we will be using the fitness function:- f (n) = n 2 c where c is the no of points in the array path. As we had mentioned before-hand the fitness function for non-validity criteria will be f (n) = 1 when the path is out of bounds f (n) = (n 2 c)/20 I where I is the number of points where the path passes through the obstacles. 9

Figure 7: Path Repair algorithm 3.2.5 Two Objective Function Another fitness function will be defined which will measure the path difficulty. It is calculated by the following fitness function: f (n) = n 2 wd where sum of wd for each cell in a given path x. With this we are forced to use Pareto optimality for a rank based system for individuals in population S. 10

3.2.6 Genetic Operator We have used single point crossover and one bit mutation as our genetic operator to create the next generation. 3.2.7 Selection Method We used the Roulette selection method and for termination we fixed an upper criteria for k. Figure 8: Algorithm of multi-objective GA 11

3.2.8 Simulation Results Figure 9: map 1 GA Figure 10: map 2 GA 12

Figure 11: map 3 GA Figure 12: map 4 GA 13

3.3 Particle Swarm Optimization In this method I am taking an image initially. For each agent I am initializing a random position. Then I am calculating the fitness values of each point. Then initializing random velocities as well. My fitness function in this is: H = (x 490) 2 + (y 490) 2 This is my fitness function. This is what I am trying to minimize while trying to evaluate new points. After I am getting a new set of points I again tried to find the best point by trying to use the fitness function. The best points are plotted on the map. This works fine unless there is an obstacle. With obstacles the path will traverse straight through the obstacles. This is where the obstacle detection method comes into the picture. I have tried two methods which though have been unsuccessful needs to be mentioned. In the first method I tried imposing penalty. In this method whenever a point after being minimized and passing the fitness function criteria would lie on an obstacle I would try to add a value(penalty) to its fitness which would make it unfit for being plotted. Then a new point would be found which if fit would be plotted on the map. Then this came with its own set of problems. Suppose two points, the one plotted before and one plotted after imposing penalty, lied above and below an object the spline would pass straight through the object which was inconvenient as it would make the robots path impossible. Now we have to look up for a second method. In this method the moment a point is plotted on an obstacle the robot tries to plan a new path by finding a new point by changing the angles with the vertical. The angles need to be varied from 30 to 180. The angle at which it finds a valid point it plots that point moves on with its plot. Here too we have less control over the spline which makes it inconvenient for us to draw a new path. 14

3.3.1 Simulation Results Figure 13: map 1 PSO 15

3.4 Artificial Potential Field Method The potential field method is very successfully implemented in stationary environment. There are virtual forces that act upon the robot and guide it towards the goal. Here the robot is considered to be a particle in the space and it is assumed to be present in an artificial potential field. The path planning method is iterative in nature. At any given position we calculate the net force that is acting upon the robot. When the robot reaches its goal then the iterative process is stopped. 3.4.1 The Attractive Potential Function Here we have taken the attractive potential function to be U att = 1 2 k attρg 2 (3.4.1) Here k att is a constant scaling factor and ρ g = q qg is the Euclidean distance between the point and the goal. The attractive force is obtained by differentiating the attractive potential function and we get F att (q) = U att (q) = k att (q q g ) (3.4.2) 3.4.2 The Repulsive Potential Function Here we have taken the repulsive potential function to be 1 U rep (q) = 2 k rep ( 1 ρ(q) ρ 1 0 ) 2 i f ρ(q) ρ 0 (3.4.3) 0 i f ρ(q) ρ 0 Here k rep is the constant scaling factor,ρ(q) is the distance of the robot from the obstacle and ρ 0 is the distance from the obstacle upto which the repulsive force is effective. The repulsive force can be obtained as k rep ( 1 ρ(q) F rep (q) = u rep (q) = 1 1 ρ 0 )( ρ 2 (q) ) q q c q q c i f ρ(q) ρ 0 (3.4.4) 0 i f ρ(q) ρ 0 16

3.4.3 Simulation Results Figure 14: map 1 APF Figure 15: map 2 APF 17

4 Conclusion The thesis has tried to solve the problem of finding an optimized path in a map using some evolutionary algorithms like Genetic Algorithm and Particle Swarm Optimization. It is showed here that these algorithms coupled with efficient obstacle detection algorithm can help robotic path planning. Here we have tried to optimize on two criteria: length and difficulty. Here we have described useful performance results and showed some simulation results on different maps. Then finally path planning using artificial potential field method has been implemented using the classical potential functions to get results. 18

References [1] Margarita Reyes-Sierra and CA Coello Coello. Multi-objective particle swarm optimizers: A survey of the state-of-the-art. International journal of computational intelligence research, 2(3):287 308, 2006. [2] Oscar Castillo, Leonardo Trujillo, and Patricia Melin. Multiple objective genetic algorithms for path-planning optimization in autonomous mobile robots. Soft Computing, 11(3):269 279, 2007. [3] Lu Yin, Yixin Yin, and Cheng-Jian Lin. A new potential field method for mobile robot path planning in the dynamic environments. Asian Journal of Control, 11(2):214 225, 2009. [4] AL-Taharwa Ismail, Alaa Sheta, and Mohammed Al-Weshah. A mobile robot path planning using genetic algorithm in static environment. Journal of Computer Science, 4(4):341, 2008. [5] Petr Švestka and Mark H Overmars. Coordinated path planning for multiple robots. Robotics and autonomous systems, 23(3):125 152, 1998. [6] Jianping Tu and Simon X Yang. Genetic algorithm based path planning for a mobile robot. In Robotics and Automation, 2003. Proceedings. ICRA 03. IEEE International Conference on, volume 1, pages 1221 1226. IEEE, 2003. [7] Yunfeng Wang and Gregory S Chirikjian. A new potential field method for robot path planning. In Robotics and Automation, 2000. Proceedings. ICRA 00. IEEE International Conference on, volume 2, pages 977 982. IEEE, 2000. 19