二次规划 (QP) 问题建模

一、约束 MPC 问题描述

1.1 系统模型

离散时间 LTI 系统:

1.2 约束条件

状态约束和输入约束:

1.3 优化目标

最小化有限时域代价函数:


二、预测模型的矩阵形式

2.1 状态预测 trajectory

利用 03-状态预测轨迹的递推表达 的结果:

其中:

2.2 预测矩阵


三、代价函数的二次型形式

3.1 代入预测方程

代入代价函数:

其中

3.2 展开整理

3.3 忽略常数项

对于优化问题, 是给定的,因此第一项 是常数,可以忽略。

等价代价函数:

其中:


四、约束的矩阵形式

4.1 状态约束

代入预测方程:

4.2 输入约束

4.3 合并约束

定义:

约束条件写为:


五、标准 QP 形式

5.1 最终形式

约束 MPC 问题转化为标准二次规划:

5.2 矩阵性质

矩阵性质说明
对称正定 ()因为 ,保证问题凸性
依赖于 每个时刻需要更新
常数矩阵可离线计算
依赖于 每个时刻需要更新

5.3 凸性保证

由于

因此 QP 问题是严格凸的,存在唯一最优解。


六、QP 求解器

6.1 常用算法

算法适用场景特点
有效集法 (Active Set)小型问题,热启动精确,迭代少
内点法 (Interior Point)中大型问题多项式时间收敛
对偶法特殊结构利用对偶性
ADMM分布式/嵌入式简单,适合并行

6.2 软件工具

工具语言特点
quadprogMATLAB标准求解器
OSQPC/C++/Python开源,嵌入式友好
Gurobi多语言商业,高性能
CPLEX多语言商业,大规模优化
qpOASESC++在线 MPC 专用

6.3 计算复杂度

算法复杂度
有效集法 最坏情况
内点法 平均
ADMM 每步迭代

其中 是优化变量维度。


七、示例:二维系统 QP 建模

7.1 系统参数

7.2 约束

7.3 QP 规模

  • 优化变量:
  • 状态约束: 个不等式
  • 输入约束: 个不等式
  • 总约束数:64 个

八、总结

步骤结果
状态预测
代价函数
约束
QP 求解标准凸优化问题,唯一最优解

更新记录

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