基于 Shift 操作的可行解构造

一、Shift 操作的核心思想

1.1 问题背景

在时刻 ,MPC 求解优化问题得到最优控制序列:

在时刻 ,需要重新求解优化问题。问题是:

  • 如何构造时刻 的一个可行解
  • 这个可行解可用于证明递归可行性稳定性

1.2 Shift 操作的定义

Shift 操作:将时刻 的最优序列”平移”,并在末尾添加终端控制律,构造时刻 的候选解:

其中终端控制输入:

是终端控制律增益(通常取 LQR 增益 )。


二、Shift 解的可行性分析

2.1 假设条件

假设

  1. 时刻 的问题可行,最优解为
  2. 终端集 是控制不变集
  3. 终端控制律 满足:

2.2 可行性定理

定理:在上述假设下,Shift 构造的序列 是时刻 可行解

2.3 证明

证明:需要验证 满足所有约束。

步骤 1:状态约束验证

对于

(因为 可行)

对于 (终端状态):

(因为 是不变集且

步骤 2:输入约束验证

对于

(因为 可行)

对于 (终端控制):

(因为 且终端控制律满足输入约束)

步骤 3:终端约束验证

(因为 是不变集)

证毕


三、Shift 解的最优性

3.1 无约束情况

命题:在无约束情况下,Shift 构造的序列 是时刻 最优解

原因

  • 无约束 LQR 的最优控制律是时不变的:
  • Shift 后的序列正是这个控制律的应用

3.2 有约束情况

命题:在有约束情况下,Shift 构造的序列 是时刻 可行解,但不一定是最优解

关系

这个不等式是 MPC 稳定性证明的关键。

3.3 最优性损失分析

最优性损失(suboptimality):

的大小取决于:

  • 约束的活跃程度
  • 终端集的大小
  • 预测时域

四、Shift 操作的应用

4.1 递归可行性证明

Shift 操作是证明递归可行性的核心工具:

证明思路

  1. 假设时刻 可行(存在
  2. 用 Shift 构造
  3. 证明 是时刻 的可行解
  4. 因此时刻 可行

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

4.2 稳定性证明

Shift 操作用于证明最优值函数的单调下降性

4.3 热启动 (Warm Start)

在数值优化中,Shift 解可作为初始猜测

优势

  • 加速优化收敛
  • 减少迭代次数
  • 特别适合实时 MPC

五、Shift 操作的变体

5.1 完整 Shift

标准的 Shift 操作(如上所述):

  • 平移整个序列
  • 添加终端控制律

5.2 部分 Shift

仅平移部分序列(用于 的情况):

5.3 带校正的 Shift

当存在扰动或模型失配时,添加校正项:


六、示例:二阶系统 Shift

6.1 系统参数

约束:

6.2 时刻

初始状态 ,最优解:

6.3 时刻

实际状态 ,Shift 构造:

验证: 满足所有约束,是可行解。


七、总结

概念说明
Shift 操作平移上一时刻最优解并添加终端控制律
可行性若终端集是不变集,Shift 解可行
最优性无约束时最优,有约束时次优
应用递归可行性证明、稳定性证明、热启动

更新记录

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