Programmable Central Pattern Generators

Central Pattern Generators (CPGs) are increasingly used to control the locomotion of autonomous robots, from humanoids to multi-legged insect-like robots. However, very little design methodologies are available to create CPGs for a specific task. Most of the time the design of CPGs is quite difficult since its different parameters have to be tuned by hand or by an optimization algorithm.

In this project, we investigate how we can design a generic CPG structure in which we can encode any periodic pattern and for which generic properties come for free, such as stability against perturbations and modulation of the periodic pattern in frequency and amplitude.

The main properties we want a CPG to have are the following:

  • Easy encoding of multi-dimensionnal periodic patterns
  • Stability against perturbations (stable limit cycle)
  • Easy modulation of the amplitude and of the frequency of the encoded pattern
  • Synchronization properties (with other CPGs, with the environment or with the body dynamics)


We model the programmable CPG with coupled adaptive Hopf oscillators[3]. Such oscillators are able to learn the frequency of any periodic input. We extend this adaptive learning rule to build programmable CPGs[1]. With such adaptation capabilities, the CPGs are able to learn any desired periodic pattern. The parameters of the CPG are dynamically adapted by the system and no external optimization is required.

Such programmable CPGs can learn the shape and phase relations of complex multi-dimensionnal periodic inputs. The learned pattern is encoded as a structurally stable limit cycle in the system of coupled oscillators. The learning is successful even if the pattern to learn is noisy or if its period is not well-defined.

Encoding patterns, or trajectories, as limit cycles is of great interest for controlling robots because the system is robust to external perturbations and can easily integrate sensory inputs. It can then be used to design robust CPG-based controllers for the locomotion of robots, in particular when an example of the gait is available[1].

People involved: Jonas Buchli, Ludovic Righetti, Auke Ijspeert

[1] L. Righetti and A. Ijspeert, Programmable Central Pattern Generators: an application to biped locomotion control , In Proceedings of the 2006 IEEE International Conference on Robotics and Automation (ICRA06). Orlando, Florida – May 2006, pages 1585-1590. PDF/BibTex

[2] L. Righetti, J. Buchli, and A.J. Ijspeert. From Dynamic Hebbian Learning for Oscillators to Adaptive Central Pattern Generators. In Proceedings of the 3rd International Symposium on Adaptive Motion in Animals and Machines – AMAM2005. Verlag ISLE, Ilmenau, 2005. Full paper on CD. PDF/BibTex

[3] L. Righetti, J. Buchli, and A.J. Ijspeert. Dynamic Hebbian learning in adaptive frequency oscillators. Physica D, 216(2):269-281, 2006 PDF /BibTex