Finding an Optimal Path Planning for Multiple Robots Using Genetic Algorithms

Similar documents
An Experimental Comparison of Path Planning Techniques for Teams of Mobile Robots

A Probabilistic Method for Planning Collision-free Trajectories of Multiple Mobile Robots

Rearrangement task realization by multiple mobile robots with efficient calculation of task constraints

Improvement of Robot Path Planning Using Particle. Swarm Optimization in Dynamic Environments. with Mobile Obstacles and Target

A Hybrid Evolutionary Approach for Multi Robot Path Exploration Problem

Cognitive robots and emotional intelligence Cloud robotics Ethical, legal and social issues of robotic Construction robots Human activities in many

The Behavior Evolving Model and Application of Virtual Robots

Developing Frogger Player Intelligence Using NEAT and a Score Driven Fitness Function

CYCLIC GENETIC ALGORITHMS FOR EVOLVING MULTI-LOOP CONTROL PROGRAMS

Motion of Robots in a Non Rectangular Workspace K Prasanna Lakshmi Asst. Prof. in Dept of Mechanical Engineering JNTU Hyderabad

Reactive Planning with Evolutionary Computation

A Taxonomy of Multirobot Systems

Energy Optimized Robot Arm Path Planning Using... A Mobile Robot Path Planning Using Genetic Algorithm In...

Traffic Control for a Swarm of Robots: Avoiding Group Conflicts

Real-time Adaptive Robot Motion Planning in Unknown and Unpredictable Environments

Summary of robot visual servo system

Distributed Vision System: A Perceptual Information Infrastructure for Robot Navigation

Multi-Platform Soccer Robot Development System

Multi-Robot Coordination. Chapter 11

Randomized Motion Planning for Groups of Nonholonomic Robots

A Divide-and-Conquer Approach to Evolvable Hardware

Traffic Control for a Swarm of Robots: Avoiding Target Congestion

Conflict Management in Multiagent Robotic System: FSM and Fuzzy Logic Approach

Online Evolution for Cooperative Behavior in Group Robot Systems

CSCI 445 Laurent Itti. Group Robotics. Introduction to Robotics L. Itti & M. J. Mataric 1

Learning Behaviors for Environment Modeling by Genetic Algorithm

Path Planning And Trajectory Control Of Collaborative Mobile Robots Using Hybrid Control Architecture

Safe and Efficient Autonomous Navigation in the Presence of Humans at Control Level

Available online at ScienceDirect. Procedia Computer Science 24 (2013 )

Path Planning in Dynamic Environments Using Time Warps. S. Farzan and G. N. DeSouza

Towards Quantification of the need to Cooperate between Robots

Motion Control of a Three Active Wheeled Mobile Robot and Collision-Free Human Following Navigation in Outdoor Environment

CS594, Section 30682:

Fuzzy Logic Based Robot Navigation In Uncertain Environments By Multisensor Integration

Path Planning for Mobile Robots Based on Hybrid Architecture Platform

Planning in autonomous mobile robotics

Adaptive Neuro-Fuzzy Controler With Genetic Training For Mobile Robot Control

M ous experience and knowledge to aid problem solving

Obstacle Displacement Prediction for Robot Motion Planning and Velocity Changes

An Improved Path Planning Method Based on Artificial Potential Field for a Mobile Robot

The Simulated Location Accuracy of Integrated CCGA for TDOA Radio Spectrum Monitoring System in NLOS Environment

Development of a Sensor-Based Approach for Local Minima Recovery in Unknown Environments

Robot Motion Control and Planning

AGENT PLATFORM FOR ROBOT CONTROL IN REAL-TIME DYNAMIC ENVIRONMENTS. Nuno Sousa Eugénio Oliveira

Adaptive Hybrid Channel Assignment in Wireless Mobile Network via Genetic Algorithm

Fuzzy-Heuristic Robot Navigation in a Simulated Environment

UNIT VI. Current approaches to programming are classified as into two major categories:

Moving Obstacle Avoidance for Mobile Robot Moving on Designated Path

Neural Networks for Real-time Pathfinding in Computer Games

International Journal of Informative & Futuristic Research ISSN (Online):

Handling Failures In A Swarm

Collaborative Multi-Robot Exploration

Fault Location Using Sparse Wide Area Measurements

Energy-Efficient Mobile Robot Exploration

Evolution of Sensor Suites for Complex Environments

Flocking-Based Multi-Robot Exploration

Evolutionary Computation and Machine Intelligence

An Improved Analytical Model for Efficiency Estimation in Design Optimization Studies of a Refrigerator Compressor

Swarm Intelligence W7: Application of Machine- Learning Techniques to Automatic Control Design and Optimization

Decision Science Letters

Multi-robot Heuristic Goods Transportation

Using Dynamic Capability Evaluation to Organize a Team of Cooperative, Autonomous Robots

A Genetic Algorithm-Based Controller for Decentralized Multi-Agent Robotic Systems

A comparison of a genetic algorithm and a depth first search algorithm applied to Japanese nonograms

A Novel Fuzzy Neural Network Based Distance Relaying Scheme

Multi-Agent Planning

A Reactive Collision Avoidance Approach for Mobile Robot in Dynamic Environments

Constraint-based Optimization of Priority Schemes for Decoupled Path Planning Techniques

A Robotic Simulator Tool for Mobile Robots

RHODES: a real-time traffic adaptive signal control system

CENTRALIZED BUFFERING AND LOOKAHEAD WAVELENGTH CONVERSION IN MULTISTAGE INTERCONNECTION NETWORKS

MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT

Cooperative Behavior Acquisition in A Multiple Mobile Robot Environment by Co-evolution

HMM-based Error Recovery of Dance Step Selection for Dance Partner Robot

Obstacle avoidance based on fuzzy logic method for mobile robots in Cluttered Environment

Co-evolution for Communication: An EHW Approach

Finding and Optimizing Solvable Priority Schemes for Decoupled Path Planning Techniques for Teams of Mobile Robots

AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS

Path Following and Obstacle Avoidance Fuzzy Controller for Mobile Indoor Robots

DESIGN OF GLOBAL SAW RFID TAG DEVICES C. S. Hartmann, P. Brown, and J. Bellamy RF SAW, Inc., 900 Alpha Drive Ste 400, Richardson, TX, U.S.A.

Structure and Synthesis of Robot Motion

TRUST-BASED CONTROL AND MOTION PLANNING FOR MULTI-ROBOT SYSTEMS WITH A HUMAN-IN-THE-LOOP

Adaptive Humanoid Robot Arm Motion Generation by Evolved Neural Controllers

Behaviour-Based Control. IAR Lecture 5 Barbara Webb

Key-Words: - Fuzzy Behaviour Controls, Multiple Target Tracking, Obstacle Avoidance, Ultrasonic Range Finders

Wheeled Mobile Robot Obstacle Avoidance Using Compass and Ultrasonic

Learning and Using Models of Kicking Motions for Legged Robots

Correcting Odometry Errors for Mobile Robots Using Image Processing

Creating a 3D environment map from 2D camera images in robotics

Sense in Order: Channel Selection for Sensing in Cognitive Radio Networks

Multi-Robot Path Planning using Co-Evolutionary Genetic Programming

Slotted Multiband PIFA antenna with Slotted Ground Plane for Wireless Mobile Applications

Design of Joint Controller for Welding Robot and Parameter Optimization

Evolving High-Dimensional, Adaptive Camera-Based Speed Sensors

USING A FUZZY LOGIC CONTROL SYSTEM FOR AN XPILOT COMBAT AGENT ANDREW HUBLEY AND GARY PARKER

Department of Mechanical Engineering, Khon Kaen University, THAILAND, 40002

Prediction of Human s Movement for Collision Avoidance of Mobile Robot

Design Of PID Controller In Automatic Voltage Regulator (AVR) System Using PSO Technique

Multi-Robot Exploration and Mapping with a rotating 3D Scanner

Enhancing Embodied Evolution with Punctuated Anytime Learning

Transcription:

Finding an Optimal Path Planning for Multiple Robots Using Genetic Algorithms Ashraf S. Huwedi 1 and Salem M. Budabbus 2 1 Email: ash_huwedi@yahoo.com 2 Email: salem73myb@yahoo.com 1, 2 Garyounis University, Faculty of Information Technology(IT) Benghazi - Libya Abstract It has been recognized that several tasks can be performed more efficiently and robustly using multiple robots. Further spatial applications are envisaged in the future in which fleets of autonomous robots achieve tasks that are too risky for humans. In this paper, we present a solution for the problem of multi-robots path planning through a static environment. The solution is based on decoupled approaches which are typically divided into two broad categories: priorities path planning and path coordination. The research includes two phase: the first is to find an optimal path planning for each robot individually from the start point to the goal point using the genetic algorithms. The second is to build a strategy to let the robots move around without any collision with each other. Finally, a simulation of the strategy of the motion and evaluation of the results will be presented. Keywords: Multi-Mobile Robots, Cooperation of Robots, Genetic Algorithm. I. INTRODUCTION Due to the success of the computer as a machine, and because of human nature, which expects always more successful things, the computer is considered more than a machine, and it is seen as an intelligent machine, and it is expected to perform smart things. Hence, the field of artificial intelligence is working to make the computer, as a smart machine, simulates human intelligence, and become a man eagerly awaiting the intelligent systems that grow in research centers, and that he wants to use in every area of daily life. One of the main areas of artificial intelligence is the field of robotics, where robots technology is one of the most advanced artificial intelligence techniques in terms of applications that provide a total solution to the problems faced by humans. In some fields, such as industry, exploration, health care, transportation, surveillance, dangerous environment etc, using multiple robots can be very beneficial if the robots cooperate with each other to accomplish their tasks. This research studies the behavior of robotics, and tries to find a solution for the problem of multi robots path planning. Within the work, there will be an attempt to find an optimal path for mobile robots through a static environment. This can be achieved by building a cooperative strategy to make robots move around without any collision with each other. Strategies are required to make robots achieve their tasks without any collisions with each other and to avoid any obstacles in the environment. The research will be presented into two phases: the first phase is to apply a global search techniques modeled from natural evolution in which the genetic algorithm will be used. This technique is used to find an optimal path for each robot independently. The second phase is to build a strategy to make robots cooperate with each other and move on their paths. This strategy depends on information exchange between the robots and the conversation procedure between them. II. RELATED WORK The use of multi-robots gives us a lot of benefits over single robot systems. First, cooperating robots have the potential to achieve a task more faster than a single one. By using several robots, accuracy can be explicitly introduced based on redundancy so that such a team can be expected to be more fault-tolerant than a single one. One more benefit of using team of robot arises from merging overlapping sensor information, which can help to compensate for sensor uncertainty. As a result, the job can be expected to be more accurate. Another benefit of using multiple robots presented by Rekleitis[13], in which, a robot with passive communication is used, in order to improve the position estimate of the team of the mobile robots. In order to present the related work to this paper, two different aspects are taken into consideration. The first aspect shows the researches done in the cooperation and communication, and shows how they are used to improve the system performance. The second aspect shows the work done to find a solution for the problem of a mobile robot path planning, especially by using genetic algorithms. In fact, the work done in this paper is to complete the algorithms developed in [5] and [6]. The framework architecture and the algorithms were implemented without taking into consideration the path planning problem, it is out of the scope of the papers [5] and [6] and thus it is addressed here. In [5] and [6], a number of researches was presented which aim to show the utility of using cooperation and communication in multi-robot systems to increase their performance. In other hand, considerable researches had been done in the area of a mobile robots path planning [2], [3], [7] and [16]. Many researches and papers [1], [4] and [14] use the genetic algorithms (GAs) in order to find an optimal path focus on two things: the first is to minimize the length of the path and the second is to reduce the number of turns in the path. 200

Most algorithms considered the run time required to get an optimal path. In the case of multi robots motion, different solutions were implemented depending on different architecture such as centralization, distribution, or masterslave robot structure. The collisions between robots and bottlenecks are the hardest problems. Building a motion strategy helps to solve these problems. According to [3], a new technique is proposed for handling the mobile robot path planning problem using genetic algorithm based on simplified fitness function. The proposed technique is capable of handling the problem in predictable environments (static) of any type; scattered, indoor like, or free plan. The proposed method tries to find not only a valid path but also an optimal one. So, the objective is to minimize the length of the path since GAs can effectively solve this type of problems. The proposed control algorithm allows four neighbor movements, so that path-finder can handle complicated search spaces with low complexities. In [11], a new algorithm is proposed for global path planning for a mobile robot using genetic algorithm. A simple genetic algorithm with fixed chromosome length is developed for a mobile robot to obtain the shortest path in 2- D static environment with m obstacles. The developed algorithm used an efficient coding scheme with fixed length binary string (solution). The chromosome length depends on the number of static obstacles. Its length is fixed to (m+2) genes. The algorithm requires a less computation power than other recent developed algorithms. With regard to [15], a development of a genetic algorithm based path-planning algorithm for local obstacle avoidance of a mobile robot in a given search space is presented. The method attempts to find not only a valid path but also an optimal one. The objectives are to minimize the length of the path and the number of turns. The proposed path-planning method allows a free movement of the robot in any direction so that the path-planner can handle complicated search spaces. III. MULTI-ROBOT PATH PLANNING In robotics, motion planning was originally concerned with problems such as how to move a robot from one room to another in a house without hitting anything [9]. The field has grown, however, to include complications such as uncertainties, multiple bodies, and dynamics. In artificial intelligence, planning originally meant a search for a sequence of logical operators or actions that transform an initial world state into a desired goal state [9]. The following are some definitions: Obstacle avoidance or path planning is the problem of moving in environment space while avoiding collisions. The path planner should be able to determine the collision-free track of robot motion from the initial to the final locations based on geometric and kinematic descriptions of the robot and its environment [7]. The path-planning problem is the generation of a feasible collision-free path in an environment with obstacles for a robot and optimizing it with respect to some criterion to get the best path between two specific locations [15]. According to [12], multi-robot path planning problem is defined as follows: given a set of m robots in 2-dimensional workspace as shown in figure1, each with an initial starting configuration and a desired goal configuration, determine the path each robot should take to reach its goal, while avoiding collisions with obstacles and other robots in the workspace. Figure1: Multi robots path planning Let A be a robot in a static workspace W. The workspace is populated with obstacles. A configuration q is a complete specification of the location of every point on the robot geometry. The configuration space C represents the set of all the possible configurations of A with respect to W. Let O W represent the region within the workspace populated by obstacles. Let the closed set A(q) W denote the set of points occupied by the robot when it is in the configuration q C. Then, the C-space obstacle region, C obs, is defined as: C obs = {q C A(q) O }. The set of configurations that avoid collision (called the free space) is: C free = C \ C obs. A free path between two obstacle-free configurations c init and c goal is a continuous map: T [0, 1] C free such that T (0) = c init and T (1) = c goal. For a team of m robots, define a state space that considers the configurations of all the robots simultaneously: X = C 1 C 2 C m. 201

Note that the dimension of X is N, where = dim C. The C-space obstacle region must now be redefined as a combination of the configurations leading to a robot-obstacle collision, together with the configurations leading to robot-robot collision. The subset of X corresponding to robot A i in collision with the obstacle region, O, is = A q (1) The subset of X corresponding to robot A i in collision with robot A j is = A q A q (2) The obstacle region in X is then defined d as the combination of Equations 1 and 2, resulting in = (3) With these definitions, the planning process for multi-robot systems treats X the same as C, and X obs the same as C obs, where c init represents the starting configurations of all the robots, and c goal represents the desired goal configurations of all the robots. A. Taxonomy of multi-robot path planningning As shown in figure 2, multi robots ots path planning is divided into two approaches, coupled and decoupled. The following are some details about it:, B. Decoupled approaches Decoupled approaches are typically divided into two broad categories: prioritized planning and path coordination. Prioritized planning considers the motions of the robots one at a time, in priority order, calculating path information for the i th robot by treating the previous i 1 robots as moving obstacles. Path coordination techniques, on the other hand, divide the planning problem into path planning and velocity planning. In the path planning phase, each robot generates paths independent of the other team of robots using common single robot planners. In the second phase, then each one of the robot team seek to plan their velocities profile that each robot should follow along its path in order to avoid the collisions along those paths. Typically, this approach is called fixed-path coordination, because the paths planned in the first phase are not changed during the execution of the second phase, only the velocities taken by the robots along the paths are varied [12]. IV. FIRST PHASE: FIND AN OPTIMAL PATH FOR A MOBILE ROBOT USING THE GENETIC ALGORITHMS In this phase, an optimal path planning for each robot will be found using the genetic algorithms. This phase will be done by two ways: Using position of the robot. Using motion direction of the robot. A. Assumption criteria Figure 2: Path planning approaches Coupled, centralized approaches The coupled methods plan the geometric etric paths and their coordination of all the robots in one phase [17]. These approaches treat the robot team as a composite robot system, to which classical single-robot path planning algorithms are applied. Decoupled approaches The decoupled approaches present the path planning phase then present the coordination phase separately [17]. These decoupled techniques can either be centralized or decentralized. Typical decoupled approachesproaches will plan individual paths for a robot or set of robots, followed by a second step of coordination to resolve any potential conflicts among the paths [12]. The following points must be taken into account: The robots are able to pass in four directions (right, left, up, down). The robots are able to move forward, and return back, also they can turn left, and right, as shown in figure 3. The robot cannot jump to the cell which is not neighboring the current cell. The cost between any two points is standard (1 unit), and the turn cost is also standard (1 unit). Figure 3: The steps of the robot B. Specify the problem, define constraints and optimum criteria This is probably the most important step in genetic algorithms, because if it is not correct and complete, an optimal path cannot be obtained. 202

This problem is one of the fundamental problems in the mobile robot path planning, which is finding an optimal path from a start point to a goal point without collision with obstacles. The optimal path must be found in the shortest possible time so as to give the robot more efficient and greater energy conservation and implementation of a set of tasks assigned to it, and also to give the robot the opportunity to avoid collision with other robots. The constraints can be specified as follows: The path begins with a start point and ends with a goal point. The path must be free from collisions. The path must be within a determined 2D environment which is static and known. The order of the path must be dependent on the order of the cells of environment, which means there is no jump in the path. The robots are able to pass in four directions (right, left, up, down). Every chromosome has a specified start point and a goal point. As shown in figure 4, the white cell in the grid represents a free cell, and the black cell represents the obstacle cell. The optimum criterion here is that the length of the path and the number of the turns within the path generated by genetic algorithms must be at the minimum. Every segment has an escape point at the end of it, this escape point is not within the path. It will be used by robot to overcome any deadlock could happened. The motivation of the escape point is to give the robots more ability to gambit. All points within the grid are allowed for every robot to move within, except the booking segment. All robots are sharing a general table, this table is called booking table and contains the segments which is booked by each robots. All robots are allowed to read the booking table simultaneously, however the table can be changed or updated by only one robot at a time. The robots are competing to edit the booking table. The number of booking points is two or more. B. The states of the robot The framework of the motion strategy is built by defining different states, a robot should follows. These states can be summarized as follows: Waiting state: wait for permission to edit booking table, which is competitive among the robots. Booking state: book a segment of points to move within, and analyze it with other robots to check if the collisions can happen. Moving state: move through the environment depending on the booking segment. Conversation state: execute an order coming from another robot. C. The solutions to avoid collisions Figure 4: The grid V. SECOND PHASE: BUILD A MOTION STRATEGY TO AVOID COLLISIONS BETWEEN MULTIPLE ROBOTS A. The framework of the strategy A strategy is designed to plan some movement actions in order to achieve a particular goal, so the framework of the motion strategy is built taking into consideration the following points: The path of every robot is known for all other robots. The path of each robot is segmented into several tasks within their movements. The robot reserves the segment in order to move through it avoiding the collisions with other robots. In order to solve the problem of the collisions among the robots, some states are designed within the motion strategy. So the solution to avoid collisions can be summarized as follows: 1. Wait: the robot is waiting for a time. 2. Escape order: the robot is moving to escape point in order to allow other robot to move through the current segment, the scenario of the escape order is shown in figure 5. 0 esc order ROBOT # 1 1 done esc 2 robot1 moving 3 done move ROBOT # 2 4 robot2 return 5 done return Figure 5: Messages between two robots for Escape order 3. Exchange order: the robots are exchanging the positions between them, in which a deadlock is happened and a collision can be occurred. The scenario of the exchange order is shown in figure 6. 4. Free extra points: the robot can delete the booking points in order to give other team of robots a chance to move. The last point in the segment and the escape point cannot be removed from the table until the work is done. 203

5. Change the escape point: if the escape point is within the path of other robot, then the current robot should choose another escape point. D. The cooperation strategy The motion strategy consists of several phases. Firstly, each robot must get first a permission to edit the booking table. Secondly, the robot checks for any orders from other robots, if there is any order, the robot must execute it. If there is no order to execute, then the robot can reserve a new segment and analyzing it with other segments in the booking table. Depending on the analysis, the robot checks if there is any collision with other robots. If so, an order will be sent to other robots in order to avoid the collision with them. Finally, if there is no collision can occur, the robot then do the movement through the segment it already reserved. E. Choosing a solution 0 esc order 1 done esc 2 robot1 ROBOT # 1 moving 3 done move 4 esc order 5 done esc ROBOT # 2 6 robot2 return 7 done return 8 robot1 moving 9 done move 10 robot2 return 11 done return Figure 6: Messages between two robots for Exchange order At the beginning, the robot analyses the booking table and determines which robots are in collision case with it. Depending on the analysis, the current robot chooses the right solution, and then sends an order to the other robot. The other robot must execute the order. F. Analysis of collisions In order to analyze the collisions, some terms used must be first explained. Table 1 presents an explanation of some words or terms used within the analysis process. The analysis of collisions begins when the current robot is booking a new segment. Then, it will read the booking table and determine if any other robots are in collision with it. After that, the current robot checks its last point and esc point and compares them with the last point and esc point of other robots using the analysis table 2. Finally, the current robot determines the collision case depending on the result of comparison of these points. As a result of this comparison, the robot chooses the right solution from the table of collision cases. Depending on the value of collision case, the robot chooses the solution from the solution table, and executes it. Table 1: Explanation of terms used to analyze the collision Term Explanation Current robot The robot which makes the analysis and checks for collision with any other robots. Other robot The robot which is in a collision case with the current robot. Last1 The last point in the old booking segment for the current robot. Esc1 The esc point in the old booking segment for the current robot. Last2 The last point in the old booking segment for the other robot. Esc2 The esc point in the old booking segment for the other robot. Old move The last segment which the current robot successfully moved through. New move The new booking segment by the current robot. Old other The last segment which the other robot successfully moved through. New other The new booking segment by the other robot. X The robots are in collision if X=1, and free of collision if X=0 Number 1,0 Fixed and out of analysis. Last1==newLast2 A condition to be tested if the old last point of the current robot is the same as the new last point for the other robot. Esc1==newEsc2 A condition to be tested if the old esc point of the current robot is the same as the new esc point for the other robot. Last2==newLast1 A condition to be tested if the old last point of the other robot is the same as the new last point for the current robot. Esc2==newEsc1 A condition to be tested if the old esc point of the other robot is the same as the new esc point for the current robot. Table 2 presents an example of the collision cases. This analysis table contains a binary numbers. To understand this table, a name of action is assigned to each row and column. The binary value in each cell indicates the relation between the row and column names. For example, the name of Oldmove and Last1 are appeared at the first row and Table 2: The analysis table Last1 Esc1 Last2 Esc2 Oldmove 1 1 0 0 Newmove 0 0 X X Oldother 0 0 1 1 Newother X X 0 0 Equal point X X X X Last1== newlast2 Esc1== newesc2 Last2== newlast1 Esc2== newesc1 column. Based on the explanation of table 1, the meaning of binary value 1 at the intersection between first row and column is that the last point in the old booking segment for the current robot is a part of the last segment which the current robot successfully moved through. Similarly, the meaning of binary value 0 at the intersection between first row (Oldmove) and the last column (Esc2) is that The esc point in the old booking segment of the other robot is not a part of the last segment which the current robot successfully moved through. Using table 1, a relation between the rows (Oldmove,Newmove,Oldother,New other) and the columns 204

(Last1,Esc1,Last2,Last2) can be explained, which is normally equal to binary value 1 or binary value 0. The last row in table 2 (Equal point) is the result of the condition state to check if there is any collision among the Table 3: The solution table of the collision cases Case number (in decimal value) The solution the robot can take {16,20,32,40,48,52,56,60} Free extra points. {64,80,84,96,104,112,116,120, Change the escape point of 124,192,194,208,210,212,214,2 other robot to be used by 24,226,232,234,240,242,244,24 6,248,250,252,254} current robot. {65,81,85,97,105,113,117,121, 125,193,195,209,211,213,215,2 25,227,233,235,241,243,245,24 Change the escape point of the current robot to be used by other robot. 7,249,251,253,255} {128,144,148,160,168,176,180, 184,188} Escape order to be send to other robots. {130,146,150,162,170,178,182, 186,190} Exchange order to be sent to other robot. Otherwise Wait for a time (no solution). robots. For example, the cell (Last1==newLast2) is assigned to binary number 1 if the last point (Last1) in the old booking segment of the current robot is the same point as the new last point (Last2) of the other robot. As shown in table 2, most the relation between the name action (in the row and column) is assigned to either binary value 1 or binary value 0. Only 8 states are assigned to X, which can only be known during the robot movement, where X=1 indicates a collision case and the X=0 indicates a free of collision case. To analyze the collision state, a table of 2 8 states is built showing all possible situation can occur. Because of redundancy state or state cannot occur, this table contain only 80 correctly cases. Each case is represented by a decimal value, which is equivalent to the binary code of these 8 states. Based on these 80 possibility cases, table 3 of problem solution is built, in which the robot chooses the solution from it and execute it. Example 1 How can The collision case [0 1 1 1 0 1 0 0] be filled in table 2 instead of the X? Solution: The sequence of the collision case [0 1 1 1 0 1 0 0] is assigned to corresponding cell as follows Newmove-Last2=0, Newmove-Esc2=1, Newother-Last1=1, Newother-Esc1=1, Last1==newLast2=0, Esc1==newEsc2=1, Last2==newLast1=0, Esc2==newEsc1=0. This situation is shown in table 4. The case decimal value = 116 The explanation: The esc point of other robot is within the new segment of the current robot. The solution: from table 3, the solution is to let other robot change its escape point to be used by the current robot. Table 4: The solution table of example 1 Last1 Esc1 Last2 Esc2 Oldmove 1 1 0 0 Newmove 0 0 0 1 Oldother 0 0 1 1 Newother 1 1 0 0 Equal point 0 1 0 0 Last1= newlast2 Esc1= newesc2 Last2= newlast1 Esc2= newesc1 VI. THE RESULTS OF THE MOTION STRATEGY A. In motion strategy The experiments are divided into three phases as follows: 1. Genetic phase: using the path as it was generated by the genetic algorithms. 2. Strategy Phase: using the path as it was generated by the genetic algorithms plus the extra points appended to avoid the collision between robots. 3. Simulation Phase: using the path as it generated in the strategy phase plus the time spanned during the motion. In order to study the strategy performance, different criteria are used. One of these criteria is the relationships between the run time and number of robots. The second criterion is to use 4 robots with 3 different phases. The run time and number of robots: Figures 7 and 8 present the relationships between the run time and number of robots. As a result, there is an elective relationship between them, which means that as number of robots increases the run time in the strategy phase and the simulation phase are increases. Using four robots with different phases Figures 9 and 11 present the extra time needed by the robots in order to reach their goals using different phases. In the strategy phase, the first robot only needs an extra time to reach its goal, whereas, all the robots spanned an extra time Time (sec) Time (sec) 35 30 25 20 15 10 5 1 Robot 2 Robot 3 Robot 4 Robot 0 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 Phase 35 30 25 20 15 10 Figure 7: The run time in different phases 5 Simulation Time 0 1 1.5 2 2.5 3 3.5 4 number of robot Figure 8: The relationships between the run time and 205

to reach their goals in the simulation phase. For example, the first robot spanned an extra time in the strategy phase and the simulation phase, while the second robot spanned an extra time only in the simulation phase. Figure 10 presents how many robots are moving simultaneously during different time of the execution of the simulation phase. For example: At time (11 sec): only one robot is moving at this time, while the other is in waiting state. At time (20 sec): only two robots are moving at this time. At time (35 sec): all of them are moving at this time. time (sec) number of robot Time (sec) 40 30 20 10 0 1 2 number of robot 3 4 1 Figure 9: The four robots in different phases 4 3.5 3 2.5 2 1.5 Number of robots per motion Figure 10: The motion of robots per time Figure 11: Comparison between 4 robots using different phases 2 3 genetic strategy simulation 1 0 5 10 15 20 25 30 35 40 45 50 At Time (sec) 30 25 20 15 10 5 Robot 1 Robot 2 Robot 3 Robot 4 Compare Between 4 Robots 0 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 Phase Type As a general conclusion of these experiments, that there is an elective relationship between the robot number and extra time needed to reach the goal in the strategy phase and the simulation phase, which means that when the number of robots increases the extra time in the strategy phase and the simulation phase increases. It is also clear that the strategy performance gives good result, in which all the robots are doing their job within a reasonable time. They solve any deadlock situation among them easily. B. The motion simulation of four robots Table 5 presents some cases of motion steps done by the four robots and the start time of movement from the corresponding cell. 3 different cases are presented (at the start of movement, at the middle of the doing the job and at the goal cell, in which the all robots reach their goals). For example, robot3 and robot4 start movement from the starting cell at time 0, whereas robot1 and robot2 start the movement just at time 6.192 sec from their starting cell. It can also be noticed from this table that the robots are performed their job simultaneously. For example, robot1, robot2, robot3 and robot4 start the movement from their cells at the same time (6.192 sec). Robot1 starts the movement from cell 80 and robot2 starts the movement from cell 147 at the same time (69.512). The last step of movement to reach the goal is approximately the same for all robots ( 400 sec). Table 5: The motion information Cell number X- axis Y- axis Robot number Simulation time (sec) 15 15 1 3 0.000 211 1 15 4 0.000 1 1 1 1 6.192 225 15 15 2 6.192 30 15 2 3 6.192 196 1 14 4 6.192 80 5 6 1 69.512 147 12 10 2 69.512 16 1 2 2 403.259 101 11 7 4 403.259 199 4 14 3 405.661 148 13VII. 10 CONCLUSION 1 411.964 This research introduced a solution for solving mobile robots path planning problem in static environment. In this research, the path planning is divided into two phases. The first phase was to find an optimal path for each robot individually by using the genetic algorithms. The second phase was to build a motion strategy in order to allow the robots move around without any collision with each other. Finally, a simulation of this strategy and its evaluation was presented. The experimental results show that the genetic algorithms are effective and efficient in solving the path planning problem with different parameters in different environments. The operations of the genetic algorithms have a flexibility to 206

deal with it to achieve an optimal solution. The genetic algorithms show a flexibility to represent the chromosome in various disciplines. The motion strategy proposed in this research produced good results to avoid collisions between robots and reach its goals in a good time as possible. In other words, the strategy minimizes the total motion time of the robots along their paths. The strategy based on two points. The first was to divide the path into several segments and move within it. The second was to obtain an escape point of each segment. Each robot analyzes the motion for other robots, and then determines the best solution to avoid the collision. Finally, this research aims to understand the concept of autonomous robots and applies it on the path planning problem. VIII. FUTURE WORK The following points can be suggested as possible future work: Extending the motion direction of the robot from four directions to eight directions. Improving the genetic algorithms operations to reduce the execution time to find the optimal path. Working on the motion strategy to reduce the execution time of the robots motion. Combining the genetic algorithms with one of other artificial intelligence systems to produce a hybrid system for improvement of the results. Using a real communication system in order to study the system performance. Obstacles", D. Bj_rner, M. Broy, A. Zamulin (Eds.): PSI'99, LNCS 1755, pp. 503{510, 2000. [8] Witold Jacak, "Intelligent robotic systems: Design, Planning, and control", ebook ISBN: 0-306-46967-7, Print ISBN: 0-306- 46062-9, 2002 Kluwer Academic Publishers. [9] Steven M. LaValle, "Planning algorithms", University of Illinois, 2003. [10] Ryan McGreevy, "Genetic Algorithm for Path finding in Robots", R McGreevy, 2009. [11] Nagib, W. Gharieb, "Path planning for a mobile robot using genetic algorithms", IEEE Proceedingsof Robotics, 2004, pp185-189. [12] Lynne E. Parker, "Path Planning and Motion Coordination in Multiple Mobile Robot Teams", in Encyclopedia of Complexity and System Science, Robert A. Meyers, Editor-in-Chief, Springer, 2009. [13] Rekleitis, G. Dudek, and E. Milios, Multi-robot collaboration for robust exploration, In Proc. of (IJCAI), 2000. [14] Omer M. Sallabi, Younis Elhaddad, "An Improved Genetic Algorithm to Solve the Traveling Salesman Problem", World Academy of Science, Engineering and Technology 52 2009. [15] Kamran H. Sedighi, Kaveh Ashenayi, Theodore W. Manikas, Roger L. Wainwright, Heng-Ming Tai, "Autonomous Local Path Planning for a Mobile Robot Using a Genetic Algorithm", Congr. Evol. Comput. 2004. CEC2004., Vol. 2, pp. 1338-1345. [16] Yashar Tavakoli, H.Haj Seyyed Javadi, Sepideh Adabi, " A Cellular Automata Based Algorithm for Path Planning in Multi- Agent Systems with A Common Goal", International Journal of Computer Science and Network Security, 2008. [17] Eduardo Todt, Gustavo Raush, Raúl Suárez, "Analysis and Classification of Multiple Robot Coordination Methods", Proc. of Int. Conf. on Robotics and Automation (ICRA 2000), pp.3158-3163. REFERENCES [1] Sachith Abeysundara, Baladasan Giritharan, Saluka Kodithuwakku, "A Genetic Algorithm Approach to Solve the Shortest Path Problem for Road Maps", Proceedings of the International Conference on Information and Automation, December 15-18, 2005, Colombo, Sri Lanka.. [2] O. Castillo, L. Trujillo, "Multiple objective optimization genetic algorithms for path planning in autonomous mobile robots ", International Journal of Computers, Systems and Signals, Vol. 6, No. 1, 2005. [3] Ibrahiem M. M. El Emary, Mohammed Ababneh, Ismael AL- Taharwa, "A New Technique Based on Genetic Algorithm for Solving the Mobile Robot Path Planning Problem", MASAUM Journal of Computing, Vol.1, No.2 September 2009. [4] Xiao-Bing Hu, Ezequiel Di Paolo, "An efficient genetic algorithm with uniform crossover for air traffic control", Computers & Operations Research, Volume 36, Issue 1, January 2009, Pages 245 259. [5] Ashraf Huwedi, 3D Mapping of an unknown environment by cooperatively mobile robots, In the International Arab Conference of Information Technology ( ACIT), Riyadh, Saudia Arabia, Dec 2011. [6] Ashraf Huwedi, Multi-Robots cooperation strategies in an exploration task, In the International Arab Conference of Information Technology (ACIT), Benghazi, Libya, Dec 2010. [7] Fedor A. Kolushev, Alexander A. Bogdanov, "Multi-agent Optimal Path Planning for Mobile Robots in Environment with 207