递归可行性的初步概念

一、可行性与递归可行性

1.1 可行性定义

定义(可行性):MPC 优化问题在时刻 可行的,如果存在控制序列 满足所有约束(系统动态、状态约束、输入约束、终端约束)。

数学表达:

1.2 递归可行性定义

定义(递归可行性):MPC 问题是递归可行的,如果:

即:若初始状态可行,则所有后续时刻都可行

1.3 为什么需要递归可行性?

问题说明
运行中断若某时刻不可行,MPC 无法计算控制律
安全性不可行可能意味着约束违反或系统失控
稳定性前提递归可行性是稳定性证明的前提

二、递归可行性的证明

2.1 主定理

定理:对于带终端不等式约束的 MPC,若:

  1. 终端集不变性 是控制不变集
  2. 初始可行性
  3. 系统无扰动(精确模型)

则 MPC 问题是递归可行的。

2.2 证明(数学归纳法)

证明

基础步骤):

  • 已知 ,即初始可行

归纳步骤

  • 假设时刻 可行,即
  • 存在最优解
  • 实施控制
  • 下一时刻状态

构造时刻 的可行解: 利用 Shift 操作构造候选解:

验证可行性(见 02-基于 Shift 操作的可行解构造):

  1. 状态约束:
  2. 输入约束:
  3. 终端约束:

因此 是时刻 的可行解,即

结论:由数学归纳法,对所有

证毕


三、可行性传递机制

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 差。

紧缩输入约束


五、可行域的演化

5.1 无扰动情况

若 MPC 递归可行,可行域 正不变集

5.2 有扰动情况

鲁棒可行域 鲁棒正不变集

5.3 可行域收缩

扰动可能导致可行域收缩:

收缩程度取决于:

  • 扰动大小
  • 预测时域
  • 约束紧缩程度

六、不可行情况的处理

6.1 不可行的原因

原因说明
初始状态不可行
大扰动扰动将状态推出可行域
模型失配预测与实际偏差过大
约束变化约束突然变紧

6.2 恢复策略

策略说明
软约束引入松弛变量,求解”最小违反”解
约束放松暂时放宽约束,逐步恢复
紧急控制切换到备用控制器(如 LQR)
重新规划寻找新的可行轨迹

6.3 软约束恢复

使用 03-软约束与松弛变量引入 的方法:

  • 将硬约束转化为软约束
  • 即使原问题不可行,软约束问题仍有解
  • 求解后逐步恢复硬约束

七、示例:可行性分析

7.1 系统参数

,无终端约束。

7.2 可行域计算

数值计算得:

7.3 递归可行性验证

初始状态 ,仿真:

是否可行
04.0
13.1
22.4
31.8

所有时刻都可行,递归可行性得证。


八、总结

概念说明
可行性存在满足所有约束的控制序列
递归可行性若初始可行,则永远可行
证明方法数学归纳法 + Shift 构造
关键条件终端集不变性
扰动影响可能破坏递归可行性
应对策略约束紧缩、软约束

更新记录

日期内容
2026-04-10初始版本