Fast System Level Synthesis: Robust Model Predictive Control using Riccati Recursions

📄 arXiv: 2401.13762v2 📥 PDF

作者: Antoine P. Leeman, Johannes Köhler, Florian Messerer, Amon Lahr, Moritz Diehl, Melanie N. Zeilinger

分类: math.OC, eess.SY

发布日期: 2024-01-24 (更新: 2024-09-04)

备注: Young Author Award (finalist): IFAC Conference on Nonlinear Model Predictive Control (NMPC) 2024


💡 一句话要点

提出快速系统级综合方法以解决鲁棒模型预测控制问题

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

关键词: 鲁棒控制 模型预测控制 系统级综合 Riccati递归 线性时变系统 优化算法 实时控制

📋 核心要点

  1. 现有的鲁棒模型预测控制方法在处理线性时变系统时面临优化效率低下的问题。
  2. 本文提出的算法通过Riccati递归优化控制器,并在名义轨迹与控制器之间交替迭代以加速收敛。
  3. 实验结果表明,该算法在计算速度上相比传统求解器有显著提升,最高可达1000倍。

📝 摘要(中文)

系统级综合方法通过联合优化名义轨迹和控制器,提升了鲁棒模型预测控制(MPC)的性能。本文提出了一种针对线性时变系统的干扰反馈优化问题的定制算法。该算法在优化控制器和名义轨迹之间迭代,能够以q线性速度收敛到最优解。我们展示了控制器优化可以通过Riccati递归来解决,从而实现每次迭代的时间复杂度为$ ext{O}(N^2 ( n_x^3 +n_u^3))$。在数值示例中,该算法相比通用商业求解器展现出高达$10^3$倍的计算加速。

🔬 方法详解

问题定义:本文旨在解决线性时变系统中的鲁棒模型预测控制(MPC)优化问题。现有方法在控制器和轨迹优化的联合处理上效率较低,导致计算时间长,难以满足实时控制需求。

核心思路:论文提出了一种新的算法,通过交替优化控制器和名义轨迹,利用Riccati递归来提高优化效率。这种设计使得在每次迭代中都能快速收敛到最优解。

技术框架:整体架构包括两个主要模块:控制器优化模块和名义轨迹优化模块。算法首先在控制器优化模块中应用Riccati递归,然后在名义轨迹优化模块中进行迭代更新,最终实现整体优化。

关键创新:最重要的技术创新在于将Riccati递归引入到控制器优化中,使得每次迭代的复杂度显著降低,达到$ ext{O}(N^2 ( n_x^3 +n_u^3))$。与现有方法相比,该方法在处理大规模系统时表现出更好的可扩展性。

关键设计:算法的关键设计包括对迭代次数的控制、收敛准则的设定以及Riccati递归的具体实现细节。这些设计确保了算法在不同规模的系统中都能保持高效性。

🖼️ 关键图片

fig_0
fig_1

📊 实验亮点

实验结果显示,所提出的算法在处理线性时变系统时,相比于通用商业求解器,计算速度提升高达1000倍。这一显著的性能提升使得该算法在实时控制应用中具有极大的优势。

🎯 应用场景

该研究的潜在应用领域包括自动驾驶、工业自动化和航空航天等需要实时控制的系统。通过提升鲁棒模型预测控制的效率,能够在复杂环境中实现更高效的决策和控制,具有重要的实际价值和广泛的应用前景。

📄 摘要(原文)

System level synthesis enables improved robust MPC formulations by allowing for joint optimization of the nominal trajectory and controller. This paper introduces a tailored algorithm for solving the corresponding disturbance feedback optimization problem for linear time-varying systems. The proposed algorithm iterates between optimizing the controller and the nominal trajectory while converging q-linearly to an optimal solution. We show that the controller optimization can be solved through Riccati recursions leading to a horizon-length, state, and input scalability of $\mathcal{O}(N^2 ( n_x^3 +n_u^3))$ for each iterate. On a numerical example, the proposed algorithm exhibits computational speedups by a factor of up to $10^3$ compared to general-purpose commercial solvers.