Croccodyl - a library for efficient contact robot control


What if legged robots could move as agile as living beings? How would this technology revolutionize various industries? How will MEMMO project lead to a significant step-change in the way that robots are controllled?

Recently, we have seen a remarkable evolution such as the Atlas robot jumping over a logs/obstacles and performing backflips. However, despite the progress, humanoid robots still can't match the grace of human beings, thus limiting them to research labs. Indeed, these behaviours typically are scripted or generated by using domain-specific knowledge.

In the MEMMO project, EU funded by Horizon 2020 under grant agreement n°780684, a group of researchers are seeking to develop an unified, and yet tractable, approach for complex motion generation without relying on domain-specific knowledge. Their approach is to leverage the advantage of both control theory (or model predictive control MPC) and machine learning. For instance, MPC approaches can construct complex behaviours by selecting intuitive cost functions, but the computational load remains too high for real-time control (i.e. in order of milliseconds). Machine learning has been proposed to build off-line motor policies from purely data-driven methods, however it's hard to ensure safety behaviours performance. Indeed, in MEMMO consortium, led by Nicolas Mansard (LAAS-CNRS), we are combining these two powerful methods which we trust will lead to a significant step-change in the way robots are controlled.


As first action, Carlos Mastalli, Rohan Budhiraja, Justin Carpentier and Nicolas Mansard (researchers at CNRS) have developed a "simple but fast" MPC solver that is able to converge quickly. With this approach, we aim to rely on a learned memory of motion for triggering the computation of control commands in real-time (less than 100 ms). The team is working on a Contact RObot COntrol by Differential DYnamic programming Library (Crocoddyl). Given a contact sequence, Crocoddyl computes efficiently a whole-body trajectory along feedback gains (see Quickly convergence is the result of devising tailored numerical optimization solvers and fast computation of analytical derivatives.


Nevertheless, the researcher's approach does not limit to walking motions (as shown in the video). With Crocoddyl, it's possible to generate highly dynamic maneuvers such as jumping and frontflips, and it can be used in different legged robots such as quadrupeds (as show in the two bottom videos). These motions are computed in few iterations, and the team is working on reducing these computations up to 10 ms. Their first objective is to deploy this MPC with a sensor-based strategy by the end of this year. With this, their MPC approach can constantly adapt the behavior of the robot to unforeseen events.

Future works aim to develop a methodology for automatically warm-start our solvers from a memory of motion. Conceptually, the memory stores past movement experiences, which avoids the computation of already encountered situations. And with this, the performance and safety will be guarantee.