Evolving Robot Gaits

Evolving Gaits for Robots

Every legged robot needs software to make it walk or run and developing this control software can be quite challenging. An alternative to developing it by hand is to use some sort of Artificial Intelligence algorithm to learn or evolve it. In our work we have used Evolutionary Algorithms (EAs) to autonomously learn both static and dynamic gaits in both simulation and on real robots.

Evolving Dynamic Gaits

We developed an Evolutionary Algorithm for evolving dynamic gaits that runs autonomously on a robot. For this work we used Sony's Open-R quadruped robot (also known as the DRX-600) and their first generation Aibo. Our system sat on top of their locomotion module, for which gaits are specified by a vector of real-valued parameters. The EA uses the robot's own sensors to perform the evaluation of the goodness of a particular set of gait parameters.

On the Open-R robot, gaits were pre-specified to be either a trot or pace gait. With Aibo, we evolved the gait-type -- and created a novel parameterization for specifying this -- and also evolved gaits that were robust to different surface types and to variances in manufacturing. Some highlights are:

DRX600: Evolved Trot Gait

DRX600: Evolved Pace Gait

Aibo: Evolving a Gait

Aibo: Evolved Gait

Evolving Static Gaits

Because there are less issues with non-linearities in modeling the robot, static gaits can be evolved in simulation much more readily then dynamic gaits can. Here we configured our modular robotic system into a quadruped and evolved a static gait for it in simulation which we then successfully transferred to the hardware version.

Related Publications

Hancher, M. D., Hornby, G. S. (2007) "Evolving Quadruped Gaits with a Heterogeneous Modular Robotic System", Proc. of the IEEE Congress on Evolutionary Computation, pp. 3631-3638.

Hancher, M. D., Hornby, G. S. (2006) "A Modular Robotic System with Applications to Space Exploration", Proc. IEEE Conf. on Space Mission Challenges for Information Technology.

Hornby, G. S., Takamura, S., Yamamoto, T., and Fujita, M. (2005) "Autonomous Evolution of Dynamic Gaits with Two Quadruped Robots", IEEE Transactions on Robotics, 21:3, pp 402 - 410.

Hornby, G.S., Takamura, S., Yokono, J., Hanagata, O., Yamamoto, T. and Fujita, M. (2000) "Evolving Robust Gaits with AIBO", IEEE International Conference on Robotics and Automation, pp. 3040-3045.

Fujita, M., Hornby, G.S., Takamura, S., and Yamamoto, T. (2000) "Identeki Algorithm wo motiita yonkyaku Robot no kokuo pattern no kurituteki sinka", Identeki Algorithm 4, Sangyou-Tosho Coorporation. (Japanese).

Hornby, G.S., Takamura, S., Yokono, J., Hanagata, O., Fujita, M. and Pollack, J. (2000) "Evolution of Controllers from a High-Level Simulator to a High DOF Robot", Evolvable Systems: from biology to hardware; Proceedings of the Third International Conference (ICES 2000), Springer (Lecture Notes in Computer Science; Vol. 1801). pp. 80-89.

Hornby, G.S., Fujita, M., Takamura, S., Yamamoto, T. and Hanagata, O. (1999) "Autonomous Evolution of Gaits with the Sony Quadruped Robot", Proceedings of 1999 Genetic and Evolutionary Computation Conference (GECCO), Banzhaf, Daida, Eiben, Garzon, Honavar, Jakiela, Smith, eds., Morgan Kauffmann, pp. 1297-1304.