Learning to Dance

In the Beginning Much Later


Experiment
► Randomly select dance motion;
► Synchronize with someone else;
► Increase fitness of selected motion;
► Share fittest motions;
Enjoy
► Use sequences with high fitness;
► Group learns one sequence;

knockout experiment





next



Now the fun part...

The robots can each perform a sequence of four motions, followed by a spin-in-place so we can see when they are finished. There are four possible motions, forward and backward with left and right turns, so the whole sequence has 256 possibilities.

When they are free of obstacles they synchronize with another robot and decide on a motion to execute at each step. The motion is selected based on its evaluation and its evaluation is increased each time it is executed. At the beginning of a new sequence the robots select a new partner and repeat the dance.

In this way preferred motion sequences are passed between pairs of the collective like gene sequences. Eventually everyone comes to agree on one or two dance steps to perform.

To make it easier to see, in the knockout experiment I put four of the guys up on blocks and let them run with one in arena. On the left they are starting out, and you can see that there are a lot of different sequences being tried. On the right is after the learning period when only a few steps are repeated.

An interesting observation is that they seem to avoid each other better after they learn to dance.