Online adaptation of locomotion control to changes of body structure


Animal locomotion is a very complex process tightly linked to sensing abilities of the organism. Proprioception, which includes the ability of being conscious of its own body and limbs positions, is particularly important. Injured animals maintain surprisingly well their ability to move, even when one of their limb is affected. Although underlying mechanisms of proprioception are far from being well understood yet, this ability of animals to develop a new gait after changes in their body morphology is clearly linked to the ability to sense these changes.

The hypothesis at the roots of this project is that we can improve locomotion control of modular robots by using information from their structure. Modular robots are robust to failure : a defect in one of the modules has usually less consequences on the overall function of the robot than on an robot with fixed morphology. Moreover, we can easily replace one of the modules if it undergoes failure. However, to fully benefit of this property, the physical robustness arising from modularity should be complemented by a smartly designed optimization strategy in order to recover quickly an efficient locomotion after changes in the robot structure.


In this project, we have two main objectives.
First, we want to define which information from the structure is relevant in terms of locomotion, and how we can use it to match the locomotion controller to the robot structure.
Second, we want to show that we can allow injured robots to recover quickly their ability to move by using information from their body structure.


In this project, we aim to provide a strategy to quickly optimize the gait of a new modular robot, by using information extracted from its body structure.

We worked on the Roombots robotic platform, developed here at the Biorobotics Laboratory of EPFL.

Structures made of Roombots modules are controlled by networks of Central Pattern Generators (CPG).

The first step of our strategy consists in quickly generating a CPG network topology matching a new robot structure. We will therefore need to implement an automatic CPG network generator. The second step of our strategy consists in extracting CPG parameters values from a sufficiently similar previously optimized robot structure, so that we can reduce the gait optimization time of the new one. We will therefore need to implement a gait table, containing CPG parameters values of existing structures, and an algorithm measuring similarity between two structures.

Each robot structure can be described by a graph representation. A couple of tools extracting information from this graph representation are involved in this strategy. First, a limb/body finder defines body and limbs in the structure. Second, a symmetry finder detects geometrical symmetries in the robot structure. We started by refining the graph representation in order to improve the detection of symmetries relevant in terms of locomotion. This symmetry information can then be used, for instance, to reduce the number of open parameters of the CPG network.

Then, we implemented an automatic network generator based on the graph representation of the structure. Using information provided by the limb/body finder, this tool builds a lightweight CPG network controlling articulation joints of the robots, defined by taking inspiration from articulations of living quadrupeds. We performed an experiment to assess the performance of this bio-inspired reduced CPG network.

Concerning the similarity measurement algorithm, we propose some research directions to explore this topic.

We finished this project by performing a final experiment to have an idea of the overall online optimization strategy performance.

Optimization strategy

On this picture, you can see the online optimization strategy we plan to implement during this project.




The main goal of this strategy is to have a method to develop quickly an efficient gait for a new structure, or a known structure which has undergone failure or to which more modules have been added.

Starting from the robot structure, we want to develop a tool which automatically generates an appropriate CPG Network. The CPG network we want to build has to be as simple as possible while leading to an efficient gait.
The fi


Graph representation

We refined the graph representation to improve the detection of symmetry information relevant in terms of locomotion.

Network generator

We implemented an algorithm to automatically generate a CPG network adapted to a given robot structure. We designed the algorithm in order to generate a reduced CPG network still leading to efficient gaits by taking inspiration from animals : we activate only articulations degrees of freedom in our structure.

We performed an experiment to assess the performance of our reduced articulation network.

Similarity measure

We provided research directions for the implementation of the similarity measurement algorithm.

Overall strategy

We finally performed an experiment in order to have a first idea of the overall strategy performance. Here are the movies of the three best gaits obtained during this experiment.

Best gait obtained with the Quadruped robot.

Best gait obtained with the Tripod robot with intial parameters values selected from the Quadruped

Best gait obtained with the Tripod robot with random initialization of parameters values


You can find more informations about these achievements in the final report of this project. You can download it from this page.


You can find below the final report of this project and the intermediate and final presentations.

Final Report

Final Presentation

Intermediate Presentation