MPC 学习路径

本学习路径 guides 你从基础到进阶系统地掌握模型预测控制 (MPC) 理论。


学习阶段概览

graph TD
    A[阶段 1: 线性系统建模] --> B[阶段 2: LQR 理论基础]
    B --> C[阶段 3: 有约束 MPC]
    C --> D[阶段 4: 稳定性与可行性]
    D --> E[阶段 5: 扩展理论]
    
    style A fill:#e1f5fe
    style B fill:#fff3e0
    style C fill:#f3e5f5
    style D fill:#e8f5e9
    style E fill:#fce4ec

阶段 1:线性系统状态空间建模与离散化

目标:掌握 MPC 的数学模型基础

前置知识

  • 线性代数(矩阵运算、特征值)
  • 状态空间基本概念

学习内容

顺序子模块核心知识点
1.1连续与离散状态空间模型LTI 系统表达、ZOH 离散化、离散化误差
1.2系统基本性质与约束表示能控性/能观性、凸集约束、线性化
1.3预测时域与控制序列定义预测/控制时域、开环序列、状态递推

完成后你应该能够

  • 将连续系统精确离散化
  • 判断系统的能控性和能观性
  • 正确定义预测时域和控制序列

阶段 2:无约束最优控制与 LQR 理论基础

目标:理解 MPC 的最优控制理论基础

前置知识

  • 阶段 1 完成
  • 微积分基础

学习内容

顺序子模块核心知识点
2.1无限时域 LQR代价函数、DARE 求解、闭环稳定性
2.2有限时域最优控制终端权重、动态规划、逆向递推
2.3无约束 MPC 与 LQR 等价性状态平移原理、最优值函数单调性

完成后你应该能够

  • 求解 DARE 方程得到 LQR 增益
  • 理解有限时域与无限时域的关系
  • 证明无约束 MPC 的稳定性

阶段 3:有约束 MPC 问题建模与滚动机制

目标:掌握约束 MPC 的建模和求解

前置知识

  • 阶段 2 完成
  • 凸优化基础(二次规划)

学习内容

顺序子模块核心知识点
3.1约束优化问题标准形式QP 建模、硬/软约束、可行域
3.2终端约束与终端集设计终端等式/不等式、最大控制不变集
3.3滚动优化执行与可行解构造RHO 策略、Shift 构造、递归可行性

完成后你应该能够

  • 将约束 MPC 转化为标准 QP 问题
  • 设计合适的终端集
  • 构造可行解保证递归可行性

阶段 4:MPC 闭环稳定性与可行性理论分析

目标:严格证明 MPC 的稳定性与可行性

前置知识

  • 阶段 3 完成
  • Lyapunov 稳定性基础

学习内容

顺序子模块核心知识点
4.1递归可行性严格证明归纳法证明、可行域、鲁棒性
4.2Lyapunov 稳定性证明最优值函数作为 Lyapunov 候选、下降性
4.3终端设计对稳定性的影响终端等式局限、终端集配合、无终端条件

完成后你应该能够

  • 严格证明递归可行性
  • 利用 Lyapunov 方法证明渐近稳定
  • 分析不同终端设计的影响

阶段 5:扩展 MPC 理论

目标:掌握进阶 MPC 理论

前置知识

  • 阶段 4 完成

学习内容

顺序子模块核心知识点
5.1轨迹跟踪与无静差 MPC增量模型、稳态目标、ISS 框架
5.2鲁棒 MPC-Tube MPC状态管概念、约束紧缩、扰动不变集
5.3非线性 MPC 基础离散化误差、SQP 收敛、收缩映射

完成后你应该能够

  • 设计无静差跟踪 MPC
  • 理解 Tube MPC 的鲁棒性保证
  • 分析 NMPC 的局部稳定性

学习建议

学习技巧

  1. 先理解直觉,再严格证明:每个定理先理解其物理意义,再深入数学证明
  2. 动手推导:不要只读证明,要亲手推导每一步
  3. 结合仿真:用 MATLAB/Python 验证理论结果
  4. 建立联系:注意各模块之间的逻辑关联

参考资源

类型名称说明
教材Model Predictive Control (Camacho & Bordons)经典入门教材
教材Predictive Control (Maciejowski)详尽的理论分析
教材Nonlinear MPC (Grüne & Panek)非线性 MPC 专著
工具MATLAB MPC Toolbox官方工具箱
工具do-mpc (Python)开源 Python 库

更新记录

日期内容
2026-04-09初始版本,创建学习路径