Racing With Evolutionary Algorithms
There is an interesting comparison among different evolutionary algorithms on the control of three legged robots. From the paper abstract:
Building a three legged robot is an extremely challenging task. Since three legged walking is not yet common neither in nature nor in technology it is not a priori clear what a three legged walking gait should look like. The term paper compares several techniques to find feasible gaits, using different numerical optimization strategies including IDEA, CMA-ES and Lazy Learning. All calculations have been on a specifically developed mechanics model."
See here an animation of the racing of the four robots got by the evolutionary algorithms applied.
The evolutionary algorithms applied were:
1. CMA-ES (Covariance Matrix Adaptation Evolution Strategy).
2. IDEA (Iterated Density Estimation Evolutionary Algorithm, an EDA).
3. Random Search.
4. Lazy Learning.
We can clearly see that the CMA-ES outperformed the other three evolutionary algorithms. CMA-ES is a poweful evolutionary algorithm and uses very small populations - such as two or few individuals. It can deal with problems which exhibit some or all the following features:
04. Rotation (or transformations in general) of the coordinate system.
It is well known that genetic algorithms (and other approaches) have difficulty when dealing with problems that exhibit some (or all) of those features above.
There is another animation of a solution (robot) got by the CMA-ES, see here. Click here for a summary upon the subject.
Could CMA-ES also be applied to control much more complex robots? See below some speculations.
More than three legs!
A multi-legged robot roaming through a rocky environment:
Even Martians could use a CMA-ES to control their three legged robots!