终端不等式约束与终端集
一、终端不等式约束问题
1.1 问题描述
在 MPC 优化问题中引入终端不等式约束:
约束条件:
1.2 与终端等式约束的对比
| 约束类型 | 数学表达 | 几何意义 |
|---|---|---|
| 终端等式约束 | $x_{N | k} = 0$ |
| 终端不等式约束 | $x_{N | k} \in \mathcal{X}_f$ |
终端不等式约束允许终端状态落入一个集合而非单一原点,因此可行域更大。
二、终端集设计条件
2.1 稳定性定理
定理:对于带终端不等式约束的 MPC,若以下条件满足:
- 终端权重: 是 DARE 方程的解(或 )
- 终端集不变性: 是控制不变集
- 约束兼容性:
- 初始可行性:
则闭环系统渐近稳定。
2.2 控制不变集定义
定义(控制不变集):集合 称为控制不变集,如果对于任意 ,存在 使得:
物理意义
一旦状态进入控制不变集,就存在控制律使状态永远留在集合内。
2.3 终端集的具体条件
终端集 需满足:
其中 是局部控制律(通常取 LQR 增益 )。
三、终端集的计算方法
3.1 基于 LQR 的终端集
步骤:
-
求解 DARE 得到 和 LQR 增益
-
定义闭环系统:
-
计算最大不变集:
-
取终端集 或其子集
3.2 椭球终端集
当代价函数和约束具有特殊结构时,可使用椭球集:
其中 是最大允许的”能量”水平。
3.3 多面体终端集
更一般的情况,使用多面体表示:
四、终端权重与终端集的配合
4.1 配合机制
终端权重 和 终端集 需要配合使用:
| 终端权重 | 终端集 | 稳定性 |
|---|---|---|
| ✅ 保证 | ||
| ✅ 保证 | ||
| ⚠️ 需 很大 |
4.2 Lyapunov 下降条件
终端集内要求最优值函数单调下降:
这等价于 DARE 方程在 内成立。
五、可行域分析
5.1 可行域定义
带终端不等式约束的可行域:
5.2 与终端等式约束对比
| 终端设计 | 可行域 | 说明 |
|---|---|---|
| 最小 | ||
| 越大,可行域越大 | ||
| 无终端约束 | 最大(但需 足够大) |
5.3 终端集大小的影响
状态空间
┌─────────────────┐
│ X (状态约束) │
│ ┌───────────┐ │
│ │ F_N │ │ ← 可行域
│ │ ┌─────┐ │ │
│ │ │ Xf │ │ │ ← 终端集
│ │ └─────┘ │ │
│ └───────────┘ │
└─────────────────┘
增大 → 增大
六、终端集计算算法
6.1 基于线性不等式迭代的方法
适用条件:所有状态约束和输入约束都是线性的,且分别表示:
基本思想:选取 LQR 反馈增益 作为终端控制律,从 和 满足约束开始,通过 迭代更新,每次取交集,直到找到最大的不变集。
算法步骤:
-
初始化:
- 计算闭环矩阵:
- 构造增广约束:,
-
迭代():
- 添加约束:
- 检查新约束是否冗余(通过线性规划)
- 若所有新约束冗余,则收敛
-
输出:
伪代码
输入:A, B, H_u, H_x, h_u, h_x, K_LQR 输出:终端集 X_f 1. A_K ← A - B*K_LQR 2. t ← 0, p_f ← 0, A_LP ← ∅, b_LP ← ∅ 3. while p_f = 0: - A_LP ← [A_LP; H_aug*K_aug*A_K^t] - b_LP ← [b_LP; h_aug] - 对每个约束 i,求解 LP: max J[i]*x s.t. A_LP*x ≤ b_LP - if 所有 J[next]^(i) < h^(i): p_f ← 1, X_f ← {x | A_LP*x ≤ b_LP} - t ← t + 1 4. return X_f
6.2 基于最大椭球集/半定规划 (SDP) 的方法
适用条件:希望获得椭球形式的终端集 。
优化问题:
其中:
- ,(变量替换)
- 越小,椭球集越大
- LMI 约束保证稳定性、状态约束、输入约束
恢复终端集:
6.3 方法对比
| 方法 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 线性不等式迭代 | 精确表示多面体 | 计算量大,可能无限步收敛 | 线性约束,低维系统 |
| 椭球集/SDP | 计算高效,解析表达 | 保守(内接椭球) | 高维系统,快速计算 |
七、最大控制不变集的性质
7.1 存在性
命题:若 能稳且约束集有界,则最大控制不变集 存在且有界。
7.2 计算收敛性
可通过迭代算法计算:
当 时收敛,。
7.3 有限步收敛
对于稳定系统,通常有限步内收敛:
- 稳定系统: 步
- 不稳定系统:可能需要无限步
八、示例:二阶系统终端集
8.1 系统参数
8.2 LQR 设计
求得 和 。
8.3 终端集计算
使用迭代算法计算 ,得到多面体:
数值结果(近似):
九、总结
| 概念 | 说明 |
|---|---|
| 终端不等式约束 | $x_{N |
| 终端集条件 | 控制不变性 + 约束兼容 |
| 终端权重 | (DARE 解) |
| 可行域 | 比终端等式约束大 |
| 计算方法 | 迭代算法求最大不变集 |
相关内容
- 终端等式约束见 01-终端等式约束 xN=0 设定
- MAS 计算见 03-最大控制不变集 MAS 计算
- 终端设计影响见 03-终端设计对稳定性的影响
更新记录
| 日期 | 内容 |
|---|---|
| 2026-04-10 | 初始版本 |