Vous êtes sur la page 1sur 4

NEURAL NETWORKS APPLIED TO AUTOMATIC NAVIGATION

Alonso, M., Niveyro, A., Britos, P., Rossi, B. & Garca Martnez R.
Buenos Aires Institute of Technology
Madero 399. (1106) Buenos Aires. ARGENTINA
e-mail: rgm@itba.edu.ar
KEYWORDS: neural networks - robotics adaptative control - intelligent control.
ABSTRACT
Navigation problems, in which all the energy
points are to be found, are highly applicable to
daily life. We will show the resolution of this kind
of problems by neural network on an example.
Feedfoward neural networks trained through
backpropagation
have reached an important
evolutionary stage. If we add a small probability of
mutation to the weights, there is less chance of
getting trapped in a local minimum. Using this
model, we simplify the problem making the mouse
assumption (if it finds food, it won't leave until it
has eaten it all up).
1-INTRODUCTION
There has been a lot of effort invested in the
resolution of navigation problems without
representation of the environment but there hasn't
been a satisfying solution for them yet. Our goal
is to develop a controller capable of guiding the
robot through a world full of obstacles and finding
the energy points. To reach this goal we have
adopted some simplifications. In the first place
adopted what we call the "mouse assumption. We
have made an A/D conversion for the inputs
(transform sensed values into binaries values),
take this as input for the neural network, and use
it as the brain in a robot simulator call Khepera
(where we had create several test worlds). The
final step is to evaluate how well this controller
behaves (what percentage of lights it finds)
2 STATE OF THE ART
It was selected the robot model used by Korsten,
Kopeczak and Szapakowizc [1989], the one
which describes the autonomous agents behavior
as compared to various stages. For the
description of the stages model we base on the
model suggested by [Lozano -Perez and Wesley,
1979; Iyengar and other 1985; Gil de Lamadrid
and Gini, 1987; Mckendrick, 1988; Dudek and
other 1991; Borenstein and Korent, 1991; Evans
and other, 1992], those which establish to study
the learning processes, planning and simulation
two-dimensional stages. The description of the
environment can be simulated in a counterfoil in
the one which each element represents a portion

of the space, the one which can be an obstacle,


an energy point or a point of the passable space
by the robot.
The system can be described as an exploring
robot that perceives the environment. As of the
situation in the one which is found the system
attempts to determine an actions sequence that
permit to it to reach a nearby objective, the one
which calls plan. Said sequence is presented to
the evaluator of plans, who determines its
acceptability. The plans controller in execution is
entrusted with verifying that the plan will be
fulfilled successfully. All movement of the robot is
accompanied of the description of its
environment, the conjunction of the action applied
to such description and obtained the resulting
situation make to the apprenticeship of the
system. If said knowledge already it was learnt is
reinforced what is, in other case is incorporated
what is and are generated mutant theories.
The model of the sensoring system
was
extracted and modified from the proposed by
[Mahadevan and Connell, 1992], who were
suggesting a system of 24 sectors, distributed in
three levels, Garcia Martinez [1992c] suggested
that the model had to present 8 sectors
constituted in two levels and distributed in three
regions: a Lateral Left, a Frontaland and a Lateral
Straight. The Frontal region is found shared in
vertical form in two subregions. As previously we
mention each region possesses two scope levels,
a level of sensoring nearby and a level of
sensoring distant.
The sensoring system
possesses eight sectors, each sector is
corresponded with a binary representation the
one which is rene in a set that describes us the
perception of a situation.
3-PROBLEM IDENTIFICATION
A controller that allows a robot (which gets world's
data using light and distance sensors) to navigate
through a world with obstacles, and at the same
time seek for light points, is what we aim at.
We have chosen this problem due to its
relevance, and the ease of implementation of the
simulator itself.
If we do solve this problem with 100% satisfactory
results, a whole new generation of robots with the
ability to find items avoiding obstacles (ex.
Garbage collectors, land mines seekers, etc.)

To start modeling the problem, we have made the


"mouse assumption". The idea we take is that, in
a complex world (obstacles and food) a mouse
won't get away from a food pile, before finishing it.
Taking this idea to our problem, when the robot
finds a light, it won't get away until the light is
turned off. So, to emulate this, we have decided to
filter the light, once it has found it. Later we will
see that this assumption does not reduce the
relevance of the problem.
Khepera simulator provides us with an 8 dual
(light and distance) sensor robot.
The distance values go from 0 (nothing) to 1023
(bump), and the light value go from 0 (maximum
lightness) to 500 (complete darkness). We have
coded the distance values with 3 bits and the light
values with 2 bits. The robot also has to engines,
each of which can take values between 10 and 10. For simplicity, we only allow the engines to
take 1 or -1 values, so the robot has to move
constantly.
We use different combinations of this 40 binary
inputs and 2 binary outputs as training sets for our
mutating neural network. The internal architecture
of the neural network is made by 40 inputs units,
40 hidden units and 2 output units. The training
sets were created considering the most common
sets of inputs that the robot would face and what
response we desire from it. Backpropagation was
choose as the training method, with a probability
for a random chosen single weight to change its
value to an also random chosen value. This
feature was added as a way to avoid falling into a
local minimum.
Reliability is the main advantage of the chosen
solution. Having in mind that there's been a lot of
work with backpropagated neural networks, and
that the mutation algorithm has been deeply
tested, we can be certain of the behavior of the
controller. Another big advantage of a neural
networks is its ability to deal with new cases that
haven't been use in the training sets. Thanks to
that, there's no need to implement every possible
situation in the training sets. This two features of
the chosen solution allow us to achieve a good
level of confidence in performance of the
controller, without the need of a big test set .
5- RESULTS AND CONCLUTIONS
We built 9 different world to test our controller. To
analyze the results we separated the world
according to the number obstacles resulting in
low, medium and high complexity.
Inside each world we set the robot in 16 different
initial positions from which we left it running. We
set the maximum number of steps in 30000

Results for each level of complexity:

Lights found Level 1


12
10
Times found

4 PROPOSED SOLUTION

though the controller would stop if it reached all


the light points before. In this way we got 153
results that could be compared by complexity.
We consider that the effectiveness of the
controller can be measured as the number of
lights it found divided by the total number of light it
could have found. In this way we can measure the
controller's effectiveness for one position, for a
world, for a level of world complexity or it's
general effectiveness.

w11

w12

w13

2
0
0

Lights found each time

Graph 1.
Graph 1 shows, for each of the worlds in level 1 of
complexity, the times 0, 1, 2, 3 or 4 lights were
found. We can see that there is a high percentage
of 4 lights found. Over a total of 48, 29 times
resulted in 4 lights found in less than 30000 steps,
that represents the 60,41% . That is to say, if we
leave the robot running in 60 out of a 100 times
the controller will be 100% effective. Graph 1 also
shows that 79,7% of the lights were found.

Lights found Level 2


12
Times found

We use the french robot simulator Khepera (that


only runs under X-Windows), on a Lunix-Intel
platform (the cheapest X-Windows solution)

10
8

w21

w22

w23

2
0
0

Lights found each time

Graph 2.
Graph 2 shows, for each of the worlds in level 2 of
complexity, the times 0, 1, 2, 3 or 4 lights were
found. In this case, the percentage of 100%
effectiveness is quite lower. Over a total of 48,
only 9 times resulted in 4 lights found in less than

30000 steps, and that represents the 18,75% .


That is to say, if we leave the robot running in 19
out of a 100 times the controller will be 100%
effective. Graph 1 also shows that 51,6% of the
lights were found.

Lights found Level 3


12
Times found

10
8

w31

w32

w33

2
0
0

Lights found

Graph 3.
Graph 3 shows, for each of the worlds in level 3 of
complexity, the times 0, 1, 2, 3 or 4 lights were
found. Now the percentage of 100% effectiveness
is up again. Over a total of 48, 31 times resulted
in 4 lights found in less than 30000 steps, and
that represents the 64,58% . That is to say, if we
leave the robot running in 65 times out of a 100
the controller will be 100% effective. Graph 1 also
shows that 55,7% of the lights were found.
We found that with a higher complexity the
controller is less effective, though not in a smooth
way.
Effectiveness
1

Effectiveness

0,8
0,6

how to get away form, and that has to do with the


higher number of obstacles.
As we raised the number of obstacles, it was
harder for the controller to find all four lights
because there was a higher chance of getting
trapped. The controller has an effectiveness off
62,32%, that is to say, it finds 2,49 lights out of 4.
We think this values could be better were the
controller trained with more examples. Had we
used a traditional controller we wouldn't have
been able to change its world.
Watching the robot as it was guided through the
world we found that the cases in which it got
trapped were when from one step to the next it
received contradicting orders. For instance, when
the controller has a distant wall on the left it turns
to the right, to find a distant wall on the right that
indicates that it has to turn to the left. When it
does, it finds a distant wall on the left, which is the
first situation we mentioned and it starts all over
again, in an endless turn left - turn right.
We tried to reduce the possibilities of the
controller getting trapped by adding extra
examples with distant wall, with the wall near and
different combinations. Still, there are some cases
in which the robot gets trapped.
Hadnt we adopted the mouse assumption, the
complexity of our problem would have been pretty
high. We would have had to add some kind of
memory to the controller so that it knew what
were the last moves and decide the present move
according to those. One way to implement this
memory is by adding more inputs representing
the last stages the controller was in and the
decision it took. In this case, the complexity would
raise by 42 bits for each previous stage we
wanted to keep in a linear form and in an
exponential form for the number of examples to
consider and its training time.
We could also use more inputs, of previous
stages, to reduce the possibility of the controller
getting trapped but it would not be very effective.
6- OTHER APPLICATIONS

0,4
0,2
0
0

10

World

Graph 4.
Graph 4 shows the average effectiveness for
each world ordered by complexity. We can see
that the effectiveness decreases with higher
complexities though there is an exception in the
first worlds of level 3 of complexity.
We suppose that the controller's effectiveness is
reduced due to the higher chance of getting
trapped in situations from which it does not know

If we were to find a satisfying solution to our


problem we would clear the way for a lot of
intelligent autonomous robots capable of
collecting garbage, mines, cleaning up, and any
other problem in which something is to be found
and eliminated.
If we had small home robots with distance and
garbage sensors, and that is the difficult thing,
with this solution we could easily program them to
search and collect the garbage.
The same would be possible for robots capable of
sensing distance and mines (metal sensors could
be used in this case), once it finds a mine it could
deactivate it, keep it and look for more.
7. REFERENCES

Carbonell, J., Michalski, R. y Mitchell T. 1983.


Machine Learning: The Artificial Intelligence
Aproach Vol. I. Morgan Kaufmann.
Carbonell, J., Michalski, R. y Mitchell T. 1986.
Machine Learning: The Artificial Intelligence
Aproach Vol. II. Morgan Kaufmann.
Fritz, W. The Intelligent System. 1984. ACM
SIGART Newsletter. Nber 90. October.
Fritz, W., Garca Martnez, R., Blanqu, J., Rama,
A., Adobbati, R. y Sarno, M. 1989.
The
Autonomous Intelligent System. Robotics and
Autonomous Systems. Vol. 5 Nber. 2. pp. 109125. Elsevier.
Garca Martnez, R. 1990. Un Algoritmo de
Generacin de Estrategias para Sistemas
Inteligentes
Autonomos.
Proceedings
II
Iberoamerican Congress on Artificial Intelligence.
pp. 669-674. LIMUSA. Mxico.
Garca Martnez, R. 1992. Aprendizaje Basado en
Formacin de Teoras sobre el Efecto de las
Acciones en el Entorno. Master Thesis. Artificial
Intelligence Department. School o Computer
Science. Politechnic University of Madrid.
Garca Martnez. 1993a. Aprendizaje Automtico
basado en Mtodo Heurstico de Formacin y
Ponderacin de Teoras. Tecnologa. Vol.15. pp.
159-182. Brasil.
Garca Martnez, R. 1993b. Heuristic theory
formation as a machine learning method
Proceedings VI International Symposium on
Artificial Inteligence. pp 294-298. LIMUSA.
Mxico.
Garca Martnez, R. 1993c. Heuristic-based
theory formation and a solution to the theory
reinforcement problem in autonomous intelligent
systems. Proceedings III Argentine Symposium
on Artificial Intelligence. pp. 101-108. Science and
Technology Secretary Press. Argentine.
Garca Martnez, R. 1993d. Measures for theory
formation in autonomous intelligent systems.
Proceedings RPIC'93. pp 451-455. Tucumn
University Press. Argentine.
Kodratoff I. y Carbonell J. 1990. Machine
Learning: The Artificial Intelligence Aproach. Vol.
III. Morgan Kauffmann.
Matheus, C. Feature Construction : An Analytic
Framework and An Application to decision Trees.
Ph.D. Tesis. Graduate

Vous aimerez peut-être aussi