2025-11-23T02:40:16.760420

Dual-Regularized Riccati Recursions for Interior-Point Optimal Control

Sousa-Pinto, Orban
We derive closed-form extensions of Riccati's recursions (both sequential and parallel) for solving dual-regularized LQR problems. We show how these methods can be used to solve general constrained, non-convex, discrete-time optimal control problems via a regularized interior point method, while guaranteeing that each step is a descent direction of an Augmented Barrier-Lagrangian merit function. We provide MIT-licensed implementations of our methods in C++ and JAX.
academic

Dual-Regularized Riccati Recursions for Interior-Point Optimal Control

基本信息

  • 论文ID: 2509.16370
  • 标题: Dual-Regularized Riccati Recursions for Interior-Point Optimal Control
  • 作者: João Sousa-Pinto, Dominique Orban
  • 分类: math.OC cs.MS cs.RO cs.SY eess.SY
  • 发表时间: 2025年10月15日 (arXiv v2)
  • 论文链接: https://arxiv.org/abs/2509.16370

摘要

本文推导了求解双正则化LQR问题的Riccati递归的闭式扩展(包括序列和并行版本)。作者展示了如何通过正则化内点法使用这些方法求解一般约束、非凸、离散时间最优控制问题,同时保证每一步都是增广障碍-拉格朗日函数的下降方向。论文提供了C++和JAX的MIT许可证实现。

研究背景与动机

核心问题

该研究要解决的核心问题是如何高效求解具有等式和不等式约束的非凸离散时间最优控制问题。传统方法在处理此类问题时存在以下挑战:

  1. 计算效率问题:标准内点法在处理最优控制问题时需要求解大规模线性系统,计算复杂度高
  2. 数值稳定性:当正则化参数趋于零时,传统方法可能出现数值不稳定
  3. 并行化困难:现有方法难以充分利用并行计算资源

问题重要性

最优控制问题在机器人学、航空航天、自动驾驶等领域具有广泛应用。高效求解这类问题对于实时控制系统至关重要,特别是在需要处理复杂约束的场景中。

现有方法局限性

  1. DDP算法:虽然是实践中最常用的方法,但作为单次射击方法,无法独立热启动状态轨迹
  2. 标准LQR方法:仅适用于无约束或简单约束的线性系统
  3. 现有内点法:如IPOPT等通用求解器,无法充分利用最优控制问题的结构特性

核心贡献

  1. 理论贡献:推导了求解双正则化LQR问题的闭式Riccati递归扩展,包括序列和并行版本
  2. 算法创新:提出了保证下降方向的正则化内点法,通过增广障碍-拉格朗日函数作为merit函数
  3. 数值稳定性:设计了当正则化参数δ→0时数值稳定的算法,能够恢复标准LQR算法
  4. 并行化算法:基于关联扫描(associative scans)实现了O(log N)并行时间复杂度的求解算法
  5. 软件贡献:提供了C++和JAX的开源实现,支持高效的稀疏线性代数操作

方法详解

任务定义

考虑离散时间最优控制问题:

minx0,u0,,xNi=0N1fi(xi,ui)+fN(xN)\min_{x_0,u_0,\ldots,x_N} \sum_{i=0}^{N-1} f_i(x_i, u_i) + f_N(x_N)

约束条件:

  • 初始状态:x0=s0x_0 = s_0
  • 动力学约束:xi+1=di(xi,ui),i{0,,N1}x_{i+1} = d_i(x_i, u_i), \forall i \in \{0,\ldots,N-1\}
  • 等式约束:ci(xi,ui)=0,i{0,,N1}c_i(x_i, u_i) = 0, \forall i \in \{0,\ldots,N-1\}
  • 不等式约束:gi(xi,ui)0,i{0,,N1}g_i(x_i, u_i) \leq 0, \forall i \in \{0,\ldots,N-1\}
  • 终端约束:cN(xN)=0,gN(xN)0c_N(x_N) = 0, g_N(x_N) \leq 0

正则化内点法框架

增广障碍-拉格朗日函数

定义障碍-拉格朗日函数: L(x,s,y,z;μ)=f(x)μilog(si)+yTc(x)+zT(g(x)+s)L(x,s,y,z;\mu) = f(x) - \mu\sum_i \log(s_i) + y^T c(x) + z^T(g(x) + s)

增广版本: A(x,s,y,z;μ,η)=L(x,s,y,z;μ)+η2(c(x)2+g(x)+s2)A(x,s,y,z;\mu,\eta) = L(x,s,y,z;\mu) + \frac{\eta}{2}(\|c(x)\|^2 + \|g(x)+s\|^2)

线性系统求解

每次迭代需要求解线性系统: [P0CTGT0S1Z0IC01ηI0GI01ηI][ΔxΔsΔyΔz]=L(x,s,y,z;μ)\begin{bmatrix} P & 0 & C^T & G^T \\ 0 & S^{-1}Z & 0 & I \\ C & 0 & -\frac{1}{\eta}I & 0 \\ G & I & 0 & -\frac{1}{\eta}I \end{bmatrix} \begin{bmatrix} \Delta x \\ \Delta s \\ \Delta y \\ \Delta z \end{bmatrix} = -\nabla L(x,s,y,z;\mu)

双正则化LQR问题

通过变量消除,将内点法的线性系统转化为双正则化LQR问题: [PCTCδI][xy]=[sc]\begin{bmatrix} P & C^T \\ C & -\delta I \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} = -\begin{bmatrix} s \\ c \end{bmatrix}

其中δ>0\delta > 0是正则化参数,矩阵PP具有块对角结构,CC包含动力学约束的雅可比矩阵。

序列算法

后向递推

定义关键变量:

  • Vi=1δ(FiI)V_i = \frac{1}{\delta}(F_i - I):值函数近似
  • vi=1δ(fi+ci)v_i = \frac{1}{\delta}(f_i + c_i):偏移向量

递推公式:

G_i = B_i^T W_{i+1} B_i + R_i
H_i = B_i^T W_{i+1} A_i + M_i^T
h_i = r_i + B_i^T g_{i+1}
K_i = -G_i^{-1} H_i
k_i = -G_i^{-1} h_i
V_i = A_i^T W_{i+1} A_i + Q_i + H_i^T K_i
v_i = q_i + A_i^T g_{i+1} + H_i^T k_i
W_i = (I + \delta V_i)^{-1} V_i
g_i = v_i + W_i(c_i - \delta v_i)

前向递推

通过控制律ui=Kixi+kiu_i = K_i x_i + k_i和状态转移方程恢复最优轨迹。

并行算法

关联扫描并行化

使用关联扫描实现O(log N)并行时间复杂度:

  1. 区间值函数:定义Vij(xi,xj)V_{i \to j}(x_i, x_j)表示从阶段i到j的值函数
  2. 组合规则:建立区间值函数的组合运算,满足关联性
  3. 并行计算:通过反向关联扫描并行计算所有ViN+1V_{i \to N+1}

仿射函数组合

将前向递推转化为仿射函数的组合: xi+1=Mixi+mix_{i+1} = M_i x_i + m_i

使用关联扫描并行组合所有仿射变换,实现O(log N)的并行前向传播。

技术创新点

  1. 数值稳定性设计:通过重新参数化避免δ0\delta \to 0时的数值问题
  2. 下降方向保证:理论证明搜索方向是增广障碍-拉格朗日函数的下降方向
  3. 结构化求解:充分利用最优控制问题的时间结构,避免求解大规模稠密线性系统
  4. 并行化设计:基于函数式编程中的关联扫描实现高效并行化

实验设置

实现细节

论文提供了两套实现:

  1. C++实现
    • 基于SIP (Simple Interior Point)框架
    • 支持QDLDL稀疏求解器集成
    • 避免运行时动态内存分配
    • 支持自定义KKT系统求解器
  2. JAX实现
    • 支持自动微分
    • GPU/TPU加速
    • 包含完整的单元测试

验证方法

  • 在满足所需正定性的随机样例上验证算法正确性
  • 与标准LQR算法在δ=0\delta = 0时的一致性验证
  • 数值稳定性测试

实验结果

正确性验证

论文通过以下方式验证了算法的正确性:

  1. 理论验证:当δ=0\delta = 0时,算法退化为标准LQR算法
  2. 数值验证:在随机生成的测试用例上验证解的正确性
  3. 单元测试:JAX实现包含完整的单元测试套件

下降方向保证

定理1.2证明了当Δx0\Delta x \neq 0Δs0\Delta s \neq 0时,方向导数满足: D(A(,,y,z;μ,η);(Δx,Δs))(x,s)<0D(A(\cdot,\cdot,y,z;\mu,\eta);(\Delta x,\Delta s))(x,s) < 0

这保证了算法的全局收敛性。

复杂度分析

  • 序列算法:O(N)时间复杂度
  • 并行算法:O(log N)并行时间复杂度
  • 空间复杂度:O(N),与问题规模线性相关

相关工作

主要研究方向

  1. 经典LQR方法:Kalman (1960)首次推导了Riccati递归
  2. 内点法应用:Rao等(1998)首次将内点法应用于模型预测控制
  3. 并行LQR:Särkkä和García-Fernández (2021)提出了第一个O(log N)并行LQR算法
  4. 结构化求解器:FATROP等最近的工作探索了结构化约束处理

本文相对优势

  1. 理论完备性:提供了完整的理论分析和收敛性保证
  2. 数值稳定性:解决了正则化参数趋零时的数值问题
  3. 实用性:提供了完整的开源实现
  4. 通用性:可处理一般的非凸约束最优控制问题

结论与讨论

主要结论

  1. 成功推导了双正则化LQR问题的闭式Riccati递归扩展
  2. 建立了与正则化内点法的连接,保证了算法的收敛性
  3. 实现了O(log N)并行时间复杂度的高效算法
  4. 提供了数值稳定且实用的开源实现

局限性

  1. 约束类型限制:方法主要适用于可以转化为LQR形式的问题
  2. 正定性要求:算法要求Hessian矩阵的正定性假设
  3. 实际性能:论文缺乏大规模实际问题的性能比较

未来方向

  1. 扩展到更一般的约束:处理路径约束和更复杂的终端约束
  2. 自适应正则化:开发自适应选择正则化参数的策略
  3. 实际应用验证:在机器人控制等实际应用中验证方法的有效性

深度评价

优点

  1. 理论贡献显著:首次将双正则化技术与Riccati递归结合,理论分析完整
  2. 算法设计优雅:巧妙地利用了最优控制问题的时间结构
  3. 数值考虑周到:特别关注了数值稳定性问题
  4. 实现质量高:提供了两种语言的高质量开源实现
  5. 并行化创新:基于关联扫描的并行化方法具有理论和实践价值

不足

  1. 实验验证有限:主要是理论验证和简单数值测试,缺乏大规模实际问题的比较
  2. 性能分析不足:没有详细的计算时间和内存使用分析
  3. 适用范围讨论不够:对于哪些类型的最优控制问题最适合使用该方法缺乏深入讨论
  4. 参数选择指导缺乏:对于正则化参数的选择策略讨论较少

影响力

  1. 学术价值:为最优控制数值方法提供了新的理论工具
  2. 实用价值:开源实现有助于方法的推广应用
  3. 可复现性:详细的算法描述和开源代码保证了可复现性
  4. 启发性:双正则化思想可能启发其他优化问题的求解

适用场景

  1. 实时控制系统:需要快速求解的模型预测控制应用
  2. 大规模优化:具有长时间域的最优控制问题
  3. 并行计算环境:可以充分利用多核或GPU资源的应用场景
  4. 约束优化:需要处理复杂等式和不等式约束的控制问题

参考文献

论文引用了该领域的重要文献,包括:

  • Kalman (1960): 最优控制理论基础
  • Blelloch (1989): 关联扫描的并行算法理论
  • Särkkä & García-Fernández (2021): 并行LQR算法
  • Wächter & Biegler (2006): IPOPT内点法求解器

总体评价:这是一篇理论贡献突出、技术创新明显的优秀论文。作者成功地将双正则化技术引入Riccati递归,不仅保持了数值稳定性,还实现了高效的并行化。虽然在实际应用验证方面还有提升空间,但其理论价值和开源贡献使其成为最优控制数值方法领域的重要进展。