4. 预测模型

在模型预测控制(MPC)中,预测模型是整个滚动优化框架的“发动机”。它决定了控制器能否在每一个采样时刻,基于当前状态和未来控制输入,准确推演出系统在未来一段时间内的行为轨迹。没有预测模型,滚动优化就失去了依据;预测模型不准确,再精巧的优化算法也无法保证闭环性能。本节围绕三个核心问题展开:状态预测方程如何建立、预测时域与控制时域如何区分、预测矩阵如何构建与递推计算。

一、核心原理:从状态空间到预测方程

MPC 最常用的预测模型是离散线性状态空间模型。设系统在时刻 k 的状态为 x(k),控制输入为 u(k),则标准离散模型可写为:

x(k+1) = A x(k) + B u(k)
y(k)   = C x(k) + D u(k)

其中 A 为状态矩阵,B 为输入矩阵,C 为输出矩阵,D 为直馈矩阵。若系统为时变或非线性,可在工作点附近线性化后得到局部线性模型,或直接使用非线性模型进行预测。预测的本质是:已知当前状态 x(k),假设未来控制序列为 u(k), u(k+1), …, u(k+Nc-1),递推计算未来 Np 步的状态和输出。

关键理解:预测模型不是“猜测”,而是基于物理规律或辨识模型的确定性推演。MPC 的“预测”是条件预测——给定未来控制输入,系统状态将如何演化。

二、预测时域与控制时域

预测时域 Np(Prediction Horizon)表示控制器向前看多少步,即优化问题中考虑的未来输出或状态的范围。控制时域 Nc(Control Horizon)表示未来实际允许变化的控制输入步数。通常 Nc ≤ Np,且在 Nc 步之后,控制量保持不变或按某种规律衰减。

两者的关系直接影响控制性能与计算量:Np 过短,控制器“目光短浅”,容易忽略未来约束;Np 过长,计算负担增加,且模型误差累积可能降低预测可信度。Nc 过小,控制自由度不足,系统响应迟缓;Nc 过大,优化变量增多,实时性下降。工程中常取 Nc 为 Np 的 10%~30%,或根据系统阶跃响应时间与采样周期确定。

预测时域与控制时域关系示意图 k 当前 k 控制时域 Nc u(k), u(k+1), …, u(k+Nc-1) 预测时域 Np y(k+1|k), y(k+2|k), …, y(k+Np|k) u(k+Nc-1) 保持或衰减 k k+Nc-1 k+Np 状态递推 x(k+1)=Ax(k)+Bu(k) 控制时域 预测时域 控制保持段

三、预测矩阵的构建与递推计算

为了将预测过程写成紧凑的矩阵形式,便于优化求解,需要构建预测矩阵。以状态预测为例,从 x(k) 出发,逐步递推:

x(k+1|k) = A x(k) + B u(k)
x(k+2|k) = A x(k+1|k) + B u(k+1)
         = A² x(k) + A B u(k) + B u(k+1)
...
x(k+Np|k) = A^Np x(k) + Σ_{i=0}^{Np-1} A^{Np-1-i} B u(k+i)

将未来所有状态堆叠为向量 X = [x(k+1|k); x(k+2|k); …; x(k+Np|k)],控制输入堆叠为 U = [u(k); u(k+1); …; u(k+Nc-1)],则可写成:

X = F x(k) + Φ U

其中 F 为状态预测矩阵,Φ 为控制输入影响矩阵。类似地,输出预测可写为 Y = C X + D U,进一步整理为 Y = F_y x(k) + Φ_y U。这种矩阵形式将滚动优化问题转化为标准的二次规划(QP)或线性规划问题,极大方便了求解器实现。

递推计算技巧:实际编程中不必显式构造巨大的 Φ 矩阵。对于大规模系统,可采用稀疏矩阵或在线递推方式,每一步只计算 A x + B u,降低内存占用和计算复杂度。

四、案例与场景:温度控制系统

考虑一个一阶温度控制系统,采样周期 Ts = 1s,离散模型为:

A = 0.95, B = 0.05, C = 1, D = 0
Np = 10, Nc = 3

当前温度 x(k) = 25°C,目标温度 r = 30°C。控制器需要计算未来 3 步的加热功率 u(k), u(k+1), u(k+2),并预测未来 10 步的温度。通过构建预测矩阵,优化器在满足加热功率约束 0 ≤ u ≤ 1 的前提下,最小化温度跟踪误差与控制增量。若 Np 取 5,控制器可能只关注前 5 秒,导致温度上升后期出现超调;若 Nc 取 1,则控制量在第一步后保持不变,响应变慢。合理选择 Np 和 Nc 是调试 MPC 的关键环节。

五、常见误区与复盘

误区 后果 纠正方法
预测时域过短 忽略未来约束,闭环稳定性差 至少覆盖系统主要动态过程,通常取 20~30 倍采样周期
控制时域等于预测时域 优化变量过多,实时性下降 取 Nc 为 Np 的 10%~30%,或根据响应速度调整
直接使用连续模型预测 离散化误差导致预测偏差 先离散化,再构建预测方程,保持采样周期一致
忽略模型失配 预测轨迹与实际偏离,控制效果恶化 引入状态观测器或扰动估计,在线修正预测模型

复盘时,应重点检查预测模型的离散化方法、Np 与 Nc 的匹配性、预测矩阵的维度一致性,以及递推计算中的数值稳定性。只有预测模型准确、时域参数合理、矩阵构建无误,MPC 才能在滚动优化中发挥出真正的约束处理与前瞻控制优势。