递归可行性的初步概念
一、可行性与递归可行性
1.1 可行性定义
定义(可行性):MPC 优化问题在时刻 是可行的,如果存在控制序列 满足所有约束(系统动态、状态约束、输入约束、终端约束)。
数学表达:
1.2 递归可行性定义
定义(递归可行性):MPC 问题是递归可行的,如果:
即:若初始状态可行,则所有后续时刻都可行。
1.3 为什么需要递归可行性?
| 问题 | 说明 |
|---|---|
| 运行中断 | 若某时刻不可行,MPC 无法计算控制律 |
| 安全性 | 不可行可能意味着约束违反或系统失控 |
| 稳定性前提 | 递归可行性是稳定性证明的前提 |
二、递归可行性的证明
2.1 主定理
定理:对于带终端不等式约束的 MPC,若:
- 终端集不变性: 是控制不变集
- 初始可行性:
- 系统无扰动:(精确模型)
则 MPC 问题是递归可行的。
2.2 证明(数学归纳法)
证明:
基础步骤():
- 已知 ,即初始可行
归纳步骤:
- 假设时刻 可行,即
- 存在最优解
- 实施控制
- 下一时刻状态
构造时刻 的可行解: 利用 Shift 操作构造候选解:
验证可行性(见 02-基于 Shift 操作的可行解构造):
- 状态约束:
- 输入约束:
- 终端约束:
因此 是时刻 的可行解,即 。
结论:由数学归纳法,对所有 ,。
证毕。
三、可行性传递机制
3.1 传递图示
时刻 k: x(k) ∈ F_N
↓
求解优化问题,得到 U*_k
↓
实施 u(k) = u*₀|ₖ
↓
时刻 k+1: x(k+1) = Ax(k) + Bu(k)
↓
Shift 构造 Ũₖ₊₁
↓
Ũₖ₊₁ 是可行解 → x(k+1) ∈ F_N
3.2 关键要素
| 要素 | 作用 |
|---|---|
| 终端集不变性 | 保证 Shift 解的终端状态仍在 内 |
| Shift 构造 | 提供时刻 的可行解 |
| 精确模型 | 保证 与预测一致 |
四、扰动下的递归可行性
4.1 扰动模型
考虑有界扰动:
其中 是扰动集合(通常是有界凸集)。
4.2 扰动的影响
扰动可能破坏递归可行性:
- 即使 ,扰动可能使
- Shift 构造的解 可能不再可行
4.3 鲁棒递归可行性
定义(鲁棒递归可行性):MPC 问题是鲁棒递归可行的,如果:
其中 是鲁棒可行域。
4.4 约束紧缩 (Constraint Tightening)
保证鲁棒递归可行性的方法:
紧缩状态约束:
其中 是扰动传播的上界集, 是 Minkowski 差。
紧缩输入约束:
鲁棒 MPC
见 02-标称系统约束紧缩原理 了解 Tube MPC 的约束紧缩方法。
五、可行域的演化
5.1 无扰动情况
若 MPC 递归可行,可行域 是正不变集:
5.2 有扰动情况
鲁棒可行域 是鲁棒正不变集:
5.3 可行域收缩
扰动可能导致可行域收缩:
收缩程度取决于:
- 扰动大小
- 预测时域
- 约束紧缩程度
六、不可行情况的处理
6.1 不可行的原因
| 原因 | 说明 |
|---|---|
| 初始状态不可行 | |
| 大扰动 | 扰动将状态推出可行域 |
| 模型失配 | 预测与实际偏差过大 |
| 约束变化 | 约束突然变紧 |
6.2 恢复策略
| 策略 | 说明 |
|---|---|
| 软约束 | 引入松弛变量,求解”最小违反”解 |
| 约束放松 | 暂时放宽约束,逐步恢复 |
| 紧急控制 | 切换到备用控制器(如 LQR) |
| 重新规划 | 寻找新的可行轨迹 |
6.3 软约束恢复
使用 03-软约束与松弛变量引入 的方法:
- 将硬约束转化为软约束
- 即使原问题不可行,软约束问题仍有解
- 求解后逐步恢复硬约束
七、示例:可行性分析
7.1 系统参数
,无终端约束。
7.2 可行域计算
数值计算得:
7.3 递归可行性验证
初始状态 ,仿真:
| 是否可行 | ||
|---|---|---|
| 0 | 4.0 | ✅ |
| 1 | 3.1 | ✅ |
| 2 | 2.4 | ✅ |
| 3 | 1.8 | ✅ |
| … | … | ✅ |
所有时刻都可行,递归可行性得证。
八、总结
| 概念 | 说明 |
|---|---|
| 可行性 | 存在满足所有约束的控制序列 |
| 递归可行性 | 若初始可行,则永远可行 |
| 证明方法 | 数学归纳法 + Shift 构造 |
| 关键条件 | 终端集不变性 |
| 扰动影响 | 可能破坏递归可行性 |
| 应对策略 | 约束紧缩、软约束 |
相关内容
Shift 操作见 02-基于 Shift 操作的可行解构造 终端集设计见 02-终端不等式约束与终端集 Xf 软约束见 03-软约束与松弛变量引入 鲁棒 MPC 见 鲁棒 MPC-Tube MPC 理论
更新记录
| 日期 | 内容 |
|---|---|
| 2026-04-10 | 初始版本 |