Evolving neural networks for robot locomotion
An article in Fast Company presents a nice overview of some recent work at the Cornell Creative Machines Lab on using genetic algorithms to evolve neural networks to control real robots. The genetic algorithm is first run in a simulated environment, and after a few hundred or thousand generations, the resulting neural network is downloaded into a real robot.
While this isn’t the first time genetic algorithms have been used with neural networks, nor even the first time those have been used with robots, there are some important advances here. Chief among them is use of a highly structured, modular neural network that reflects the structure of the body. This is done by adopting some principles from developmental biology, resulting in a neural network with some of the features of a real brain. Research shows significant advantages of this approach over the more traditional, fully-connected neural network.
Here’s a video showing the evolution of a quadruped gait, first in simulation, and then running on actual hardware.
More videos are available here.
For more details on the algorithm and implementation, see this 2013 conference paper. Also, for more about “Arcana,” an open-source, 3D-printed quadruped robot developed by the same group, see this paper. Finally, for a good (if occasionally hyperbolic) overview of the research, see the Fast Company article.