A Genetic Algorithm with Local Map for Path Planning in Dynamic Environments

bankpottstownΤεχνίτη Νοημοσύνη και Ρομποτική

23 Οκτ 2013 (πριν από 3 χρόνια και 7 μήνες)

112 εμφανίσεις

A
Genetic Algorithm

with Local Map

for Path Planning

in
Dynamic Environment
s


Ivan Koryakovskiy

School of EECS
, ASRI
,

Seoul National University

151
-
742, Seoul, Korea

i.koryakovskiy@gmail.com

Nguyen Xuan Hoai

School of CSE
,

Seoul National University

151
-
7
42, Seoul, Korea

nxhoai@gmail.com

Kyoung Mu Lee

School of EECS, ASRI
,

Seoul National University

151
-
742, Seoul, Korea

kyoungmu@snu.ac.kr

A
BSTRA
CT

In this paper, a new genetic algorithm

(GA)

for solving the path
planning in dynamic environments is propose
d
.

The new genetic
algorithm

uses local maps, therefore, does not require the
knowledge of exact or estimated position of the destination point
as other approaches in the literature. Consequently, the new GA
could be used to solve the problem of dynamic pa
th planning
under an assumption that makes
the problem

more restrictive but
more close
to reality (in searching tasks)
.



Categories and Subject Descriptors:

I
.2
.8

[
Computing
Methodologies
]:

control theory, heuristic methods,
path planning,
plan execution
, formation, and generation.

General Terms:

Algorithms, Experimentation
.

Keywords.

Genetic algorithm
s
,
p
ath planning,
v
ariable
-
length
chromosome,
mobile r
obot,
d
ynamic
e
nvironment
s
,
l
ocal
m
ap.

1.

PROBLEM DEFINITION

The problem
in this paper
is formally define
d as follows

[
3
]:

Given
n

moving obstacles

represented as

discs
in

the
plane. The centers of the discs (i.e. the positions of the obstacles)
at time

are given by the coordinates
, and
th
e radii of the discs
as

. All of the obstacles have a
maximal velocity

as

. The robot is a point

finding

for a path
b
etween a start
ing

point

and a goal

.
The robot

has a maximal velocity
,
.

The
task is to compute the shortest possible path
, such that

and

(i.e., a minimal time path with
minimal

) that is

as
collision
-
free

as possible
. The path

should obey the maximum velocity constraint

of the robot, i.e
.
where
is the Euclidean distance
between two
points in the plane.

The
problem of path planning in dynamic
environments for mobile autonomous robot is known to be an NP
-
hard problem [1].

2.

A NEW GA FOR
PATH PLANNING

3.1.

Related work

The GA in this paper is inspired by the work of [
2
,
4
]. Howe
ver, it
is different from
[
2
,
4
]

in a number of ways.
Firstly,

the
proposed
GA

here uses a local map. Unlike
[
2
,
4
]
,

our GA

does no
t need the
global

destination point in
its
encoded
chromosome
s
. Any border
point of a local map
is
a
candidate local

destinat
ion, but distance
penalties for them are different.
Secondly
,
3
-
point interpolation by
Bezier curves

is used to generate

smooth

path
s

in
the
initial
population. The same
technique is used
for the

mutation operator
.
This helps to

elim
inate

the need for usin
g Repair, Shortcut and
Smooth operators

as in
[
2
]
.
Thirdly, r
epresenting objects using

a

directed Gaussian function on a local map makes

the

path
clear

(i.e.
less
danger
ous
for robot)
.
Each point of a local neighborhood
o
f an obstacle has an additional
cos
t,
which

according to

a

directed Gaussian

function
, has higher values in

the

direction of
obstacle’s velocity.
Using place cost information,
GA

tries to
avoid such places or at least stay away from
the
points to which
obstacle
s are moving

toward
.

C
ontrary

to our algorithm,
most of
other
methods proposed in the
literature

must have

coordinates of
the

destination point e
i
ther to
represent

a
path [
2
,
4
,
6
]

or
an
estimate

of

distance

to it

(like A*).

3.2.

The
Proposed
GA

Local map

is a

map with a fixed size
S

and
a robot in a center.
The
v
alue of each map

s point is calculated as follows:

, (1)

where

Path
(map_point) measures how close the map

point is to
the
local
destination
point
,
Obstacles
(map_point)

represents
obstacle co
nstraint calculated for each obstacle o
n the local

map
and
ObstacleClear
(map_point)

denotes how far the current point
on the path is from the moving obstacles.

E
(
path
)

is the fitness function for a

path

which
sums up weights
of each point of the map where
the

path

goes.

For the problem,
the task is to find the path with smallest possible fitness value

E
*
(
path
)

over all possible paths. Thus:


(2)

Our
GA

comprises of

6

following

steps
:

1.

Local map construction
;

2.

Genera
te population of size
N

using 3
-
point
i
nterpolation
;

3.

For
t

number of iterations repeat:

4.

Reset all paths taboo values

to 0

and mark each path as
unused
.
Calculate
;

5.

For fixed number of paths
with

the

smallest
repeat

times:

5.1.
Select a best
unused

path
A

(with the
smallest
) and find
a
n

unused

path
B

in
the
population with which it intersects an
d
B

has
the

smallest
. Both paths
A
and
B

are then
marked as
used
;

5.2.
If
B

is

not found go to step 5.3, otherwise go to step 5.4;

5.3.
Do mutation
on

A

and if the mutated
child

is better than
its

parent,
replace

the
parent in
the
p
opulation

with the
mutant

and mark it as
un
u
sed
. Go to step 5.1;

5.4.
Do crossover
on
paths
A
and
B
, then mutation and select
3 best paths among
the
two parents and two offsprings.
Override

two parents

A and B

and the worst solution in
population by these 3 sel
ected paths and mark them as
un
used
.
Apply tab
oo

for parents
during next

k

number of
iterations and go to step 5.1;

6.

Return the

path in
the final
population with
the
smallest
.

3.3.

GA
O
perators

The

c
rossover operator

is

applied

only

if both selected paths have
an intersection point
(
crossover “cut point”
)
. If the paths have
more than two intersection points, one of them is chosen at
random. Two children paths are created by swapping the parts of
parents (as in Figure
1
).





Figure
1
.

Left: before crossover, Middle:

after crossover;
Right:
mutation
.

The
mutation operator

slightly changes a part of a path. This is
done by selecting three different genes in the chromosome and
randomly changing the locat
ion of the middle point then applying
3
-
point Bezier interpolation (see Figure
1
).

3.

R
ESULT
S

Our GA

is

implemented in C++ programming language

and could
be
downloaded

from:
sc.anu.ac.kr/~xuan/
DynamicPLCode.zip
.

Each of the
tests

on

each benchmark problem wa
s allocated 3
0
standard deviation values of path length
s

and

the

number of

runs

and
the
result
s collected

are
the

best, worst,

average and the
collisions (
T
able 1).
The distance between
the
starting point and
global destination point
is

89

in robot steps

(
that is
the

best

possible

solution

obtained

when
there is no obstacle
)
.

As it is seen from table 1 for environme
nts with low and medium
density, the proposal
algorithm generates solution
s

with almost no
collision and reasonable average path length
s
.

High
density

environments do not frequently occur in practical situations,
which
let’s

us to

state

that
the overall performance of the new GA

is satisfactory

(and obtained in real
-
time)
.

Figure
2

shows
the

minimum and mean cost of each generation.


Figure
2
: Graph of mean and minimal cost
over

generation.

Acknowledgement

T
his work was supported by the Korea Research Foundation
Grant funded by the Korean Government(MOEHRD) (KRF
-
2008
-
314
-
D00377)

4.

REFERANCE

[1]

Canny, J
.

and

Reif, J
.

New lower

bound techniques for robot
motion planning

problems
.

I
n Proc. IEEE Symposium on the
Foundations of Computer Science
, Los Angeles, CA
, 1987
.

[2]

Elshamli, A
.
, Abdullah, A
.
H
.

and

Areibi, S
.

Genetic
algorithm for dynamic path planni
ng
.

Proceedings of the
Canadi
an Conference

on

Electrical and Computer
Engineering
,

Niagara Falls, vol.2, pp. 677
-
680
, 2004
.

[3]

Jur van den Berg
.

Path Planning in Dynamic Environments
.

PhD Thesis, Utrecht

University, The Netherlands
, 2007
.

[4]

Lei,

L.,

Wang
,

H. J. and Wu
,

Q. S. Improved Genet
ic
Algorithms Based

Path planning of Mobile Robot Under
Dynamic Unknown Environment
.
I
n Proc. 2006 IEEE
International Conference on Mechatronics and

Automation
,
Luoyang, China,

pp.25
-
28
,

Jun
e

2006.

[5]

V
an der Stappen,

A. F.,
Overmars, M.

H.
,

de Berg
,

M.

and
V
leugels
,

J.
Motion planning in environments with low
obstacle density.

Technical report, UU
-
CS
-
1997
-
19. Dept. of
Computer Science, Utrecht University, 1997.

[6]

Yuan, M
.
, Wang, S
.

and

Li, P
.
A model of ant colony and
immune network and its application in path
planning
.

IEEE
Conference on Industrial Electronics and Applications
, 2008
.



Table
1
.
S
imulation

results.


Benchmark

Generated path length

Number of collisions

Environment
density

best

worst

a
vg
.

std. dev

best

worst

a
vg
.

std. dev

20 obstacles

89

95

91,2

1,69

0

0

0
,0

0
,00

0,01

(low)

80 obstacles

97

187

120,4

25,67

0

1

0,2

0,42

0,04

(medium)

200 obstacles

143

301

211,3

53,49

1

18

9,1

5,63

0,12

(high)