Você está na página 1de 5

Dynamic Path Planning for Mobile Robot Based on Genetic

Algorithm in Unknown Environment


Pu Shi1, Yujie Cui2
1. Department of Automation Engineering, Northeastern University, Qinhuangdao, 066004, China
E-mail: pupushi2007@163.com
2. Department of Automation Engineering, Northeastern University, Qinhuangdao, 066004, China
E-mail: cuiyjster@gmail.com

Abstract: In this paper, a dynamic path planning scheme based on genetic algorithm (GA) is presented for navigation
and obstacle avoidance of mobile robot under unknown environment. The real coding, fitness function and specific
genetic operators are devised in the algorithm. The unique coding technique decreases the conventional computational
complexity of genetic algorithm. It also speeds up the execution of searching by projecting two dimensional data to one
dimensional data, which reduce the size of search space. The fitness function of genetic algorithm takes full
consideration of three factors: the collision avoidance path, the shortest distance and smoothness of the path. The specific
genetic operators are also selected to make the genetic algorithm more effective. The simulation experiments are made
under the VC++ 6.0 environment. The simulation results verify that the genetic algorithm is high effective under various
complex dynamic environments.
Key Words: Dynamic Path Planning, Mobile Robot, Genetic Algorithm, Obstacle Avoidance, Unknown environment

Recently, there has been widespread interest in using genetic


1. INTRODUCTION algorithms. Compared to traditional search and optimization
Path planning is one of the important tasks in intelligent methods, such as calculus-based and enumerative strategies
robotic systems such as autonomous mobile robots. There are [3], the genetic algorithm is a powerful search algorithm
two types of path planning problems: (1) static path planning, based on the mechanism of natural selection and uses
which allows a mobile robot to move through stationary operations of reproduction, crossover, and mutation on a
obstacles, and (2) dynamic path planning, which allows a population of strings at finding an optimum path in very large
mobile robot to generate a new path in response to a changing workspace.
environment [1] [2] [3]. GA is stochastic search techniques analogous to natural
There has been much effort put forward by researchers to evolution [7]. Potential solutions of a problem are encoded as
solve the path planning problems for mobile robots in the chromosomes. These chromosomes form a population. Each
presence of static and dynamic obstacles. One of the popular individual of the population is evaluated by a fitness
path planning methods is the artificial potential field [4]. function. A selection mechanism based on the fitness
However, it can give only one solution route that may not be function is applied to the population and the individuals
the shortest path in a static environment. Another method is a strive for survival. The fitter ones have a better chance to be
position estimation method, a path generation between selected and to duplicate offspring by means of genetic
current location and target location for mobile robots. transformations, such as crossover and mutation [8] [9] [10].
However, this method accumulates estimation error [5] [6]. The process is repeated and the population is evolved
There have also been many attempts to use fuzzy logic generation by generation. After many generations, the
controllers for path planning of mobile robots [2]. In [7], population converges to solutions of good quality, and the
while steering a robot, an off-line process modeling develops best individual has good chance to be the optimal or
the fuzzy rules of the system. The fuzzy logic controllers near-optimal solution. Genetic algorithm has already been
should be properly designed to produce an efficient
applied in path planning for mobile robots.
controller and the fuzzy rules must adequately model the
A number of results in the literature show the application of
human approach to control the system [2].
GA to robotic path planning. Among the results, Khoogar
and Parker [11] considered the path planning problem in a
plane using a planar robot. Ram et al. applied GA to a mobile

c
978-1-4244-5182-1/10/$26.00 2010 IEEE 4325

Authorized licensed use limited to: University of Malaya. Downloaded on July 29,2010 at 14:25:26 UTC from IEEE Xplore. Restrictions apply.
robot navigation problem in a 2-D space with stationary the x axis. Then yi becomes the search space for each
obstacles. In [12], Toogood et al. developed a path finding
via-point of the path and the via-point candidates are
method for stationary avoidance obstacles by applying GA to
specified by one-dimensional data [12].
a 3-D robot manipulator. Most researches of robotic path
To further reduce the size of data in each search space and
planning in the literature focus on the static environment with
thereby accelerate the speed of genetic searching algorithm,
known obstacles, which have become a more mature stage.
the dynamic allocation of starting points at each via-point is
However, researches of robotic path planning in changing
used, which reduces the search space dramatically as shown
circumstances are still hot spots of robotic path planning. In
this paper, GA will be applied to generate a dynamic path in Fig. 1(b). In Fig. 1(b), the origin of the i th perpendicular
planning for mobile robot in the unknown environment. The search line is the knot point in the x axis. In Fig. 2, the
planning can achieve satisfactory results and speed of coding structure using the reducing dimensions method is
convergence. This shows that genetic algorithm has a strong shown.
environmental adaptability.
Section II presents a brief description of path planning
problem. Section III indicates the resolutions based on GA.
Section IV displays the results of simulations. Section V
gives the concluding remarks.
2. DEFINITION OF DYNAMIC PATH
PLANNING PROBLEM
In a dynamic environment for successful steering of a mobile (a)
robot to the destination, two important problems should be
solved. One is real-time identification of the moving
obstacles. The other requests that the shortest and safe path is
generated dynamically [11] [13].
We assume the former issue may be resolved by the higher
level visual processing system. This research in this paper
focuses on the latter one. The aim is to put forward a dynamic
path planning scheme in the unknown environment, and
requests that path planning satisfy the following conditions
[8] [14]:
z The path should not occur collision with any (b)
obstacles Fig. 1. Conversion of search space.
z The path should be as short as possible
z The path curves as smooth as possible
Fig. 2. Coding structure.
3. ALGORITHM DESIGN
3.2 Fitness Function
3.1 Path Coding Selection of fitness function should take into account the
In the genetic searching algorithm, the coding technique is security of the path, the shortest path, and the smoothness of
a very important aspect. The length of binary strings from the the path. However, the security of the path is primary factor.
parameter sets made up of the via-points of a path, as well as In view of these, the fitness function is composed of three
the size of the search space, determines the computational sub-functions:
time for a given fitness function. In order to shorten the 1) Sub-function of Path Length
length of the binary strings, we adopt a unique coding We could describe path length with integral. The
method. This approach transforms the two-dimensional data sub-function is as follows:
to one-dimensional data as shown in Fig. 1.
In Fig. 1(a), the set of node points Gi is located at equal n
(1)
fit 1 = ¦(Pi , Pi+1 )
distance along the straight line from the initial position to the i=1

goal position. If the straight line is treated as x axis, then the


where ( Pi , Pi +1 ) is the distance between Pi = P( xi , yi )
set of the node points xi is located at equal distances along
and Pi +1 = P( xi +1 , yi+1 ) .

4326 2010 Chinese Control and Decision Conference

Authorized licensed use limited to: University of Malaya. Downloaded on July 29,2010 at 14:25:26 UTC from IEEE Xplore. Restrictions apply.
2) Sub-function of Path Security individual can be chosen by being in proportion to fitness
The condition of collision avoidance is stated as follows: if value. The operation is described as following:
the distance between every via-point of the path and the z To calculate the individual adaptive value.
obstacles is expressed as Pi S j for any path, then we get. z To calculate the probability of choosing copy.
z To calculate the expected replication number.
z To round the expected replication number to the
( ) ( )
n m
­ nearest integer and then get the actual replication
°min ¦ ¦ Pi S j / sd , if min Pi S j > sd (2)
fit 2 = ® i =1 j =1 number.
°0 otherwise 2) Crossover Operator
¯
The crossover operator combines parts of two different
where Pi = P( xi , yi ) is the position of every via-points of the chromosomes to create two new ones. There are many ways
to do the crossover operation, but for the chromosome
path, S j = S ( x j , y j ) is the position of each obstacle,
formed by a node sequence in the path, only single-point and
i = 1,2,...n , j = 1,2,...m , sd = r0 + rk , r0 is the radius of multi-point cross have factual significance. And there is no
difference in essence between them. So, the single-point
mobile robot, rk is the radius of the number k obstacle.
cross means is adopted in this paper. Two individuals are
3) Sub-function of Smoothness randomly selected, and then choose a crossing point to cross
In this section, the smoothness of path planning is depicted. according to a certain crossover probability; replace the
The path will be considered to be smooth, when mobile robot individual of the father with individual of the offspring after
moves from the present point P( xi , yi ) to the next cross, a new population would be produced.
point P( xi +1 , yi +1 ) , only forward not circuitously. The 3) Mutation Operator
sub-function is expressed as: Mutation is to randomly choose a node and replace it with a
node that is not included in the path. Mutation is served as a
(3) key role to diversify the solution population. Therefore, it is
1
fit 3 = not necessary that a solution is better after it is mutated.
m −1
§ ( y i − y i +1 ) ( y i +1 − y i ) ·
¦ ¨¨ (x − ¸¸ Mutation operation is illustrated in Fig. 3.
1 © i − x i +1 ) ( x i +1 − x i ) ¹

4) Fitness Function
The security of the path was the first factor, which decides
the feasibility of the mobile robot reaching the goal point,
and it is the most weight in fitness function. Based on this, we
get the rather short path; meanwhile also take smoothness
into consideration. The fitness function is shown as follow:

1
fit = ω1 + ω2 fit 2 + ω3 fit3 (4)
fit1
Fig. 3. Mutation operation: increasing a point (higher), decreasing a point
(medium), and removing a point (lower).
where ωi (i = 1,2,3) respectively stands for the weighted
The mutation probability of each element in the population is
values of length, security, and smoothness degree in the Pm (generally within 0.001~0.3). In this paper, three kinds of
fitness function. Adjusting ωi may adjust the extent of path way are adopted as the way of mutation. They are increasing
length, avoiding obstacles and smoothness. a point, decreasing a point and removing a point. Mutation
and crossover are co-used abstemiously, aiming at avoiding
3.3 Genetic Operation
over-mature to lose vital genetic information. But mutation
According to the actual circumstances of path planning, four often keeps lower probability for fear that should destroy the
kinds of genetic operators, namely crossover, mutation, individual fabric of next generation.
smooth, and initialization of population, are introduced in 4) Smooth Operator
this paper. The smooth operators choose feasible path of greater corner,
1) Initialization of Population Operator and then randomly inserted three new path nodes, if these
Initial population, as the beginning of optimization, may be three new nodes constitute a viable segment of the line, retain
produced by algorithm itself. N refers to the scale of new nodes, and delete the original nodes. Smooth operation
population, namely random produce path R j (j=1, 2, N). The is shown in Fig. 4.

2010 Chinese Control and Decision Conference 4327

Authorized licensed use limited to: University of Malaya. Downloaded on July 29,2010 at 14:25:26 UTC from IEEE Xplore. Restrictions apply.
Fig. 4. The smooth operation.

4. SIMULATION
To verify the correctness and effectiveness of the method put
forward in this paper, lots of simulation experiments have
been done under VC++ 6.0 environment. In this simulation
environment, selection adopts roulette wheel selection to
save the optimal individuals, crossover adopts single point
random crossovers and mutation employs single point
random mutation. Fig. 6. Path generation while avoiding six static obstacles
Within a square area of 5m × 5m, gray circle represents the and one dynamic obstacle.
mobile robot, while static and dynamic obstacles are
exemplified with other colour circles. Crossover probability
Pc is 0.62, mutation probability Pm is 0.1, smooth probability
is set to 0.2, population size generation is 50, N (the number
of evolution era) = 2000, the simulation results are shown in
Figure 5, 6, 7 and 8 respectively. In order to reflect the
capability of GA in complex dynamic environments, the
numbers of static obstacles and dynamic obstacles vary.
Fig. 5-8 demonstrates path planning for mobile robot under a
dynamic and unknown environment. It is shown that GA is
capable to deal with path generation and collision avoidance
easily.
Fig. 5 and Fig. 6 display that the dynamic path generation and
collision avoidance for moving obstacles have been Fig. 7. Path generation while avoiding five static obstacles
accomplished under such dynamic environment, where there and two dynamic obstacle.
are four or six static obstacles respectively and one moving
obstacle. Fig. 7 and Fig. 8 illustrate that the dynamic path
generation and collision avoidance for moving obstacles
have been accomplished under such dynamic environment,
where there are five static obstacles and two moving
obstacles.

Fig. 8. Path generation while avoiding five static obstacles


and two dynamic obstacle.

5. CONCLUSION REMARKS
This paper presents a dynamic path planning method based
on genetic algorithm for mobile robot under an unknown
Fig. 5. Path generation while avoiding four static obstacles environment. The real coding, fitness function and specific
and one dynamic obstacle.
genetic operators are designed to accelerate the convergence
of the algorithm and improve the accuracy of operation. The
genetic algorithm used in this paper can achieve satisfying

4328 2010 Chinese Control and Decision Conference

Authorized licensed use limited to: University of Malaya. Downloaded on July 29,2010 at 14:25:26 UTC from IEEE Xplore. Restrictions apply.
path planning results under an unknown dynamic Conference on Mechatronics and Automation, 1728-1732,
environment. The simulation results show that the genetic 2006.
algorithm has strong adaptability of dynamic and unknown
environments and verify the proposed method is high
effective.
REFERENCES
[1] Z. X. Cai, H. G. He, and H. Chen, “Some issues for mobile
robots navigation under unknown environments,” Proc. IEEE
International Conference on Decision and Control, Vol.17, No.
4, 385-390, 2002.
[2] Jian-ping Tu, Simon X. Yang, “Genetic algorithm based path
planning for a mobile robot,” Proceedings of the IEEE
International Conference on Robotics and Automation,
1221-1226, 2003.
[3] Yang Linquan, Luo Zhongwen, Tang Zhonghua, and Lv
Weixian, “Path planning algorithm for mobile robot obstacle
avoidance adopting bezier curve based on genetic algorithm,”
Chinese Control and Decision Conference, 3286-3289, 2008.
[4] J. Kim, P. Khosla, “Real-time obstacle avoidance using
harmonic potential functions,” IEEE Transactions on Robotics
and Automation, Vol.8, No.3, 338-349, 1992.
[5] H. Chung, L. Ojeda, and J. Borenstein, “Accurate mobile robot
dead-reckoning with precision-calibrated fiber-optics
gyroscope,” IEEE Transaction on Robotics and Automation,
Vol.17, No.1, 80-84, 2001.
[6] K. Park, H. Chung, and J. Lee, “Dead reckoning navigation for
autonomous mobile robots,” Proceedings of Intelligent
Autonomous Vehicle, 775-781, 1998.
[7] J. Xu, K. Kin, “Intelligent mobile robot path planning with
fuzzy system approach,” Proceedings of the 2nd IEEE
International Workshop on Emerging Technologies and
Factory Automation, 28-41, 1993.
[8] Yong Zhang, Lin Zhang, and Xiao-hua Zhang, “Mobile robot
path planning base on the hybrid genetic algorithm in unknown
environment,” Eighth International Conference on Intelligent
Systems Design and Applications, 661-665, 2008.
[9] Xuan-zi Hu, Cun-xi Xie, “Niche genetic algorithm for robot
path planning,” 3rd international conference on natural
computation, 61-65, 2007.
[10] Wu Lijuan, Xu Xinhe, “Design of an obstacle avoidance
strategy based on genetic algorithms in robot soccer
competition,” Robot, Vol.23, No.2, 142-146, 2001.
[11] Woong-Gie Han, Seung-Min Baek, and Tae-Yong Kuc,
“Genetic algorithm based path planning and dynamic obstacle
avoidance of mobile robots,” IEEE International Conference
on System, Man, and Cybernetics, Vol.3, 2747-2751, 1997.
[12] H.Toogood, H. Hao, and C. Wong, “Robot path planning using
genetic algorithms,” International Conference on SMC, Vol.1,
489-494, 1995.
[13] Amin Ghorbani, Saeed Shiry, and Ali Nodehi, “Using genetic
algorithm for a mobile robot path planning,” International
Conference on Future Computer and Communication, pp.
164-166, 2009.
[14] Lin Lei, Houjun Wang, and Qinsong Wu, “Improved genetic
algorithms based path planning of mobile robot under dynamic
unknown environment,” Proceedings of IEEE International

2010 Chinese Control and Decision Conference 4329

Authorized licensed use limited to: University of Malaya. Downloaded on July 29,2010 at 14:25:26 UTC from IEEE Xplore. Restrictions apply.

Você também pode gostar