Central Pattern Generators - NeLy-EPFL/cobar-miniproject-2023 GitHub Wiki
References on the topic
- Required reading: Crespi et al (2013), "Salamandra Robotica II: An Amphibious Robot to Study Salamander-Like Swimming and Walking Gaits"
- Optional, more intuitive reading on the topic: Ijspeert et al (2007) "From Swimming to Walking with a Salamander Robot Driven by a Spinal Cord Model"
Concept
Central Pattern Generators (CPGs) are neural circuits that generate rhythmic output without receiving rhythmic input. CPGs are often referred to in the study of the vertebrate spinal cord, in which it has been shown in neural tissue explants that rhythmic activity can be observed in spinal neurons (i.e., without rhythmic input from leg movements for example). Therefore, using the concept of CPGs, it has been proposed how simple descending signals from the brain can be converted into rhythmic limb movements during walking or oscillatory tail movements during swimming (see Ijspeert Science 2007).
It is hypothesized that CPGs play a more important role in animals whose locomotion is more ballistic (e.g., cockroaches running at 1 m/s!) and therefore cannot process decentralized limb sensory signals in time to adjust their movements. By contrast, animals with slower, more directed limb movements (e.g., stick insects walking on a tree branch) are thought to rely more on decentralized control (see Cruse et al., 2007).
Experimental evidence for descending control of CPGs
In line with the idea that a simple descending signal can be converted into rhythmic movements, lampreys are reported to generate undulatory swimming in response to the electrical stimulation of the mesencephalic locomotor region in the brain (Sirota et al, EJN, 2008). Downstream of these descending commands, it has been shown that CPGs can produce fictive locomotion (i.e., activity close to that measured during intact locomotion) in isolated neural tissue preparations. For example, there are multiple reports of oscillatory activity in the vertebrate spinal cord when only a constant input is given. For instance, the isolated spinal cord of salamanders exhibits rhythmic motor patterns when the whole circuit is stimulated chemically (Delvolve et al., J. Neurophysiology, 1999), see figure below. Interestingly, motor patterns obtained can be different depending on the strength on the inputs. For example, in cats as the intensity of the electrical stimulation is ramped up there can transition from walking to trotting and then galloping (Shik et al., 1966). Changing the drive to CPGs can thus be a way to control behavior and select different desired motor programs.

Of course in the intact animal, one can also expect sensory feedback from the limbs. This feedback is thought to modulate the activity of CPGs. One striking example of this is seen in a decerebrate cat on a treadmill. In the work of Brown, a cat is held in place on top of a treadmill. If the treadmill runs slowly, the cat begins to walk spontaneously. When the treadmill speed is accelerated, the cat transitions to running. Note that the cat is decerebrated (the brain cannot communicate with the spinal cord). This means that the control of this behavior must be controlled only by local CPGs and their modulation by sensory feedback.
Finally, CPGs can be distributed throughout the spinal cord. For instance in lampreys one can observe oscillations in each isolated segment of the spinal cord.
Biological neuronal substrates for CPGs
The simplest neural circuit to build a CPG (although individual neurons may have bursting properties) consists of two neurons excited by an input and that mutually inhibit one another. Thus, recurrence (loops) in neural wiring can mediate CPG-like activity. However, neural graphs tend to display high levels of recurrence. This means that oscillations may also emerge in a more distributed fashion. In the particular case of leeches some neuronal circuits have been identified as CPGs explicitly (see for example, Stent et al. (1978) as shown below.
Using the concept of a CPG in numerical simulations
The concept of a CPG has been used in a more abstract manner to refer to the generation of oscillations by the nervous system, independently of the precise mechanisms. One good example of such an abstraction appears in the paper from Ijspeert et al. (2007). In this paper the spinal cord of a salamander is modeled as multiple interacting/coupled CPGs controlled by descending inputs from the brain. Here, a simple model represents the CPG and is sufficient to generate interesting locomotor modes including swimming and walking. Note that CPGs can be used at different levels of abstraction: both to simulate entire portions of the body, or to control the contraction of specific limb flexors and extensors.
In Drosophila melanogaster
For the fly, although the full nervous system conectome is being mapped, there is currently no identified set of neurons that has been identified as a CPG. This pursuit is an active field of research. One numerical application of the concept of CPGs in Drosophila has been in the directly relevant paper presenting NeuroMechFly Lobato-Rios et al. (2022). This is the model that you use for the course and the neural controller is initially defined as a set of CPGs, one for each joint of each leg.