BreedBot. A software/hardware environment for human breeders of robots
In classical Evolutionary Robotics (ER), robots are
evaluated in terms of their ability to perform a task defined
by the researcher. Measurements are based on a so-called
fitness function. The robot’s probability of producing
offspring is proportional to the fitness measured by this
function. Consequently the design of the function plays a
crucial role in the success of ER experiments (Nolfi e
The problem facing ER designers is similar to a classical
problem in behaviorist psychology: how to measure the
efficiency of training procedures for experimental animals.
The supporters of the so-called molecular approach sought
to stabilize micro-behaviors which contributed to the
animal’s overall performance (Guthrie, 1935, and to some
extent Pavlov, 1927). By contrast, the molar approach
(Tolman, 1922) preferred to reinforce macro-behaviors
leading to a satisfactory end result (e.g. finding a particular
target zone, finding a way out of a maze).
Experience shows that pragmatically speaking, the two
approaches are complementary. Trainers have to consider
the peculiarities of particular tasks and particular species of
experimental animal and choose the right mix of molecular
and molar techniques on this basis. This is exactly the task
facing researchers in ER trying to define a fitness function.
When Floreano and Mondada want to teach a robot
obstacle avoidance they use a ‘molecular’ fitness
function1. But when they want their robot to find a target
zone they are no longer interested in its individual actions.
In this case they use a ‘molar’ function. (Miglino and
Lund, 2001). With harder tasks they have to integrate the
two approaches (Nolfi, 1997).
Outside the lab, trainers, breeders and teachers do not
usually follow rigid procedures. When they reward their
charges, or when they select them for breeding, they use
many different criteria. Sometimes they use measurements,
but often they base their judgments on qualitative, contextdependent
features which are hard to capture in a
mathematical formula. Typically they consider several
indicators speed, error rates, exam marks and then
decide heuristically which they are going to reward. Could
we adopt a similar approach in ER? More specifically, is
there some way we could integrate algorithmically-defined
fitness functions with the heuristically-based decisions of a
To investigate this possibility we developed Breedbot2
(Miglino and Gigliotta, 2004), an integrated
hardware/software system which allows human ‘breeders’
to breed a small population of robots. We then put
Breedbot in the hands of a small group of users, and
studied the way they used the system.
Breedbot needs Windows XP, 64 MB ram, 10 MB hard disk space and 1024x768 video resolution .
Actually Breedbots works only at that video resolution.
Visit Breedbot Tutorial