|
This robot is NOT programmed to walk, it would be trivial! Instead,
it is programmed to learn how to walk on its own, without any
supervision.
The robot crawls using a 2 DOFs (Degrees of Freedom) arm, and sense
the world through a LEGO encoder, attached to the NXT using the
adaptor cable.
At the beginning, the robot lives its childhood, and explores
randomly its action-space. Some actions will produce a reward in
terms of forward movement, others will produce a punishment, when
the robot goes backwards by error. This reward/punishment mechanism
is fed by the sensorial input provided by the wheels, to which the
encoder is attached. When a certain amount of time has passed, the
robot becomes adult, and moves using the acquired experience, rather
than casually. The algorithm used is known as Q-learning.
We can say that every time you start the program, a new life is born.
I dare to say
that quitting the program without saving the brain of the creature
before, is like killing it!
For this project, credits go to Dr. Frank Vanden Berghen,
who wrote the
Robot Java Applet that inspired me.
I suggest you to
take a look at this
article by Brian Bagnall about
Q-learning with LEGO MINDSTORMS RCX.
|