Primal-Dual iLQR for GPU-Accelerated Learning and Control in Legged Robots

📄 arXiv: 2506.07823v3 📥 PDF

作者: Lorenzo Amatucci, João Sousa-Pinto, Giulio Turrisi, Dominique Orban, Victor Barasuol, Claudio Semini

分类: cs.RO

发布日期: 2025-06-09 (更新: 2025-12-06)

期刊: IEEE Robotics and Automation Letters, 2026, vol. 11, no. 1, pp. 1010-1017

DOI: 10.1109/LRA.2025.3632610

🔗 代码/项目: GITHUB


💡 一句话要点

提出基于GPU加速的原始-对偶iLQR以优化四足机器人控制

🎯 匹配领域: 支柱一:机器人控制 (Robot Control)

关键词: 模型预测控制 四足机器人 GPU加速 并行计算 原始-对偶iLQR KKT系统 动态控制 实时控制

📋 核心要点

  1. 现有的模型预测控制方法在处理四足机器人运动时,计算复杂度高且难以实时执行,限制了其应用。
  2. 本文提出了一种基于GPU加速的原始-对偶iLQR方法,通过并行化技术显著提高了求解效率,适应复杂的动态环境。
  3. 实验结果显示,该方法在全身动力学和单刚体动力学控制中,运行时间分别提升60 ext{%}和700 ext{%},表现出色。

📝 摘要(中文)

本文介绍了一种新颖的模型预测控制(MPC)实现,专为四足机器人运动设计,利用GPU并行化技术。通过引入并行关联扫描来求解原始-对偶Karush-Kuhn-Tucker(KKT)系统,实现了时间和状态空间的并行化。该方法在复杂度上显著降低,从$ ext{O}(N(n + m)^3)$降至$ ext{O}( ext{log}^2(n) ext{log}N + ext{log}^2(m))$。实验表明,与现有的两种最先进求解器(acados和crocoddyl)相比,该实现的运行时间提高了60 ext{%}(针对全身动力学MPC)和700 ext{%}(针对单刚体动力学MPC),并且能够支持多达16个四足机器人的集中控制,计算时间少于25毫秒。

🔬 方法详解

问题定义:本文旨在解决四足机器人运动控制中的实时性和计算复杂度问题。现有方法在处理复杂动态环境时,计算效率低,难以满足实时控制需求。

核心思路:论文提出了一种基于GPU加速的原始-对偶iLQR方法,通过并行化求解KKT系统,降低了计算复杂度,从而实现高效的模型预测控制。

技术框架:整体架构包括数据并行处理、KKT系统求解和控制策略生成三个主要模块。首先,利用GPU并行化处理输入数据,然后通过并行关联扫描求解KKT系统,最后生成控制指令。

关键创新:最重要的创新在于引入了并行关联扫描技术,使得KKT系统的求解复杂度显著降低,能够在更高维度的状态空间中高效运行。与现有方法相比,该方法在计算效率上有质的飞跃。

关键设计:在参数设置上,优化了预测地平线长度和状态维度的处理,采用了适应性损失函数来提高控制精度,同时确保了GPU的高效利用。

📊 实验亮点

实验结果显示,提出的方法在全身动力学MPC中运行时间提升了60 ext{%},在单刚体动力学MPC中提升高达700 ext{%}。此外,该方法能够支持多达16个四足机器人的集中控制,计算时间少于25毫秒,展现出优越的性能。

🎯 应用场景

该研究具有广泛的应用潜力,特别是在复杂环境下的四足机器人控制,如救援任务、探测和自动化物流等领域。通过提高控制效率,能够实现更灵活和智能的机器人行为,推动机器人技术的进步。

📄 摘要(原文)

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 $\mathcal{O}(\log^2(n)\log{N} + \log^2(m))$ complexity, instead of $\mathcal{O}(N(n + m)^3)$, 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. The code associated with this work can be found at https://github.com/iit-DLSLab/mpx.