Primal-Dual iLQR for GPU-Accelerated Learning and Control in Legged Robots¶
Authors: Lorenzo Amatucci, Joao Sousa-Pinto, Giulio Turrisi, Dominique Orban, Victor Barasuol, Claudio Semini
Published: 2025 (Journal Paper)
Source: IEEE Robotics and Automation Letters
Algorithm: Primal-Dual iLQR (GPU)
arXiv: 2506.07823
DOI: 10.1109/LRA.2025.3559000
Summary¶
Implements Primal-Dual iLQR on GPU using parallel associative scans, reducing complexity from O(N(n+m)³) to O(log²(n)log(N)) per solve. Achieves up to 700% runtime improvement over acados and Crocoddyl for legged robot MPC, enabling centralized control of 16 robots and direct GPU-based learning-in-the-loop.
Abstract¶
This paper introduces a novel Model Predictive Control (MPC) implementation for legged robot locomotion that leverages GPU parallelization. Our approach enables both temporal and state-space parallelization by incorporating a parallel associative scan to solve the primal-dual Karush-Kuhn-Tucker (KKT) system. In this way, the optimal control problem is solved in O(log²(n)log(N) + log²(m)) complexity, instead of O(N(n + m)³), where n, m, and N are the dimension of the system state, control vector, and the length of the prediction horizon. We demonstrate the advantages of this implementation over two state-of-the-art solvers (acados and crocoddyl), achieving up to a 60% improvement in runtime for Whole Body Dynamics (WB)-MPC and a 700% improvement for Single Rigid Body Dynamics (SRBD)-MPC when varying the prediction horizon length. The presented formulation scales efficiently with the problem state dimensions as well, enabling the definition of a centralized controller for up to 16 legged robots that can be computed in less than 25 ms. Furthermore, thanks to the JAX implementation, the solver supports large-scale parallelization across multiple environments, allowing the possibility of performing learning with the MPC in the loop directly in GPU.
Links¶
Primary
Standard
Alternate
Tags¶
-
GPU acceleration
-
Model predictive control
-
Legged robots
-
Primal-dual optimization
-
Trajectory optimization
-
Parallel computing
-
iLQR