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 为直馈矩阵。若系统无直馈,则 D=0。状态预测方程的核心思想是:从当前测量或估计得到的 x(k) 出发,依次代入未来控制序列 u(k), u(k+1), …, u(k+N-1),得到未来各时刻的状态预测值。

展开后,未来第 i 步的状态预测可表示为:

x(k+i|k) = A^i x(k) + Σ_{j=0}^{i-1} A^{i-1-j} B u(k+j)

该式表明,未来状态由两部分组成:一部分是当前状态经系统自然演化后的“自由响应”,另一部分是未来控制输入经系统动态作用后的“受控响应”。MPC的优化变量正是未来控制序列,而状态预测方程则把控制序列映射为未来状态轨迹。

二、输出预测方程:把状态预测转化为可评价的输出

实际控制目标通常针对输出 y,而不是状态 x。因此需要将状态预测进一步代入输出方程,得到输出预测方程:

y(k+i|k) = C x(k+i|k) + D u(k+i|k)

若 D=0,则输出预测完全由状态预测决定。将状态预测展开式代入,可得到输出预测与未来控制序列之间的显式关系。工程上常将其写成矩阵形式:

Y = F x(k) + Φ U

其中 Y 为未来输出序列,U 为未来控制序列,F 为自由响应矩阵,Φ 为受控响应矩阵。这一形式直接进入QP优化:目标函数中的跟踪误差、控制增量惩罚、约束条件,都围绕 Y 和 U 展开。

关键理解:状态预测方程解决“系统会怎么走”,输出预测方程解决“我们关心什么会怎么变”。两者共同构成MPC的预测模型骨架。

三、预测时域与控制时域:两个不同却协同的参数

预测时域(Prediction Horizon,记为 Np)指控制器向前预测的步数。它决定了控制器“看多远”。Np 过小,控制器可能只顾眼前,无法提前处理大惯性、大滞后或未来约束;Np 过大,计算量和优化变量增加,且远期预测误差可能稀释近期控制效果。

控制时域(Control Horizon,记为 Nc)指优化问题中允许自由变化的未来控制步数。通常 Nc ≤ Np。在 Nc 步之后,控制量常假设保持不变或按某种规律衰减。其关系可表示为:

Nc ≤ Np
u(k+Nc-1|k) = u(k+Nc|k) = … = u(k+Np-1|k)

控制时域越小,优化自由度越低,计算越快,但控制灵活性下降;控制时域越大,优化能力越强,但QP规模增大,实时性压力上升。工程整定中,常见做法是先根据系统响应时间选取 Np,再取 Nc 为 Np 的 10%~30%。

MPC预测时域与控制时域关系示意 时间 当前 k 预测时域 Np:向前预测 Np 步 控制时域 Nc:自由控制步 控制量保持 / 衰减 状态预测轨迹 x(k+i|k) 输出预测轨迹 y(k+i|k) k k+1 k+2 … k+Np 预测时域 控制时域 状态预测 输出预测

四、模型精度与鲁棒性影响:预测模型不是越“准”越好

模型精度直接影响MPC的闭环性能。若模型与实际系统存在偏差,预测输出会偏离真实输出,导致优化器基于错误信息做出决策。常见偏差来源包括:参数辨识误差、未建模动态、执行器非线性、传感器噪声、时滞估计不准等。

但工程中有一个重要认知:MPC并不要求模型绝对精确,而是要求模型在关键频段和关键工况下足够可靠。这是因为MPC具有滚动优化和反馈校正机制,每个采样时刻都会用最新测量重新预测,从而在一定程度上容忍模型误差。然而,容忍是有限度的。模型误差过大时,可能出现以下问题:

  • 跟踪性能下降:稳态误差增大,响应变慢或超调加剧。
  • 约束违反:预测输出未超限,实际输出却超出安全边界。
  • 闭环失稳:在极端情况下,模型与对象严重失配导致振荡甚至发散。
  • 鲁棒性不足:面对工况变化、负载扰动、参数漂移时,控制品质显著恶化。
工程建议:在模型精度与鲁棒性之间做权衡。对于安全关键系统,可适当降低模型阶次、增加约束裕量、引入扰动观测器或采用鲁棒MPC,以牺牲部分最优性换取可靠性。

五、参数整定与模型验证清单

下表汇总了预测模型相关参数与验证要点,便于工程落地时逐项检查。

项目 含义 典型取值/做法 影响
采样周期 Ts 离散模型时间步长 取系统主导时间常数的 1/10~1/20 过大丢失动态,过小增加计算负担
预测时域 Np 向前预测步数 覆盖系统主要响应过程,常取 20~60 过小短视,过大计算重且远期误差大
控制时域 Nc 自由控制步数 Np 的 10%~30%,常取 3~10 过小控制保守,过大优化激进
模型阶次 状态维数 在精度与实时性间折中 高阶精确但计算量大,低阶易失配
模型验证 开环/闭环预测误差 用独立数据检验多步预测精度 验证不足会导致上线后性能不达预期

六、案例与复盘:模型失配导致的约束违反

某温度控制系统中,MPC采用一阶惯性模型,预测时域 Np=30,控制时域 Nc=5。实际对象存在未建模的传输滞后,且滞后时间随流量变化。调试初期,控制器在设定值阶跃时表现良好,但在流量突降工况下,实际温度超出安全上限,而预测温度仍在约束内。复盘发现:模型滞后估计偏小,导致预测输出“提前到达”,优化器误判约束满足。改进措施包括:增大滞后估计、在约束中加入安全裕量、引入输出反馈校正项,并将 Np 适当增大以覆盖更长的滞后。调整后,约束违反消除,跟踪性能略有下降但可接受。

常见误区:把预测模型当作“一次性辨识结果”长期使用。实际系统会随磨损、结垢、环境变化而漂移,应建立模型在线校验或定期再辨识机制,否则MPC性能会随时间逐渐退化。

总结来看,状态预测方程和输出预测方程构成MPC的预测骨架;预测时域与控制时域决定控制器“看多远”和“动多少”;模型精度影响预测可信度,而鲁棒性设计则决定系统在失配和扰动下能否安全运行。工程实践中,应把预测模型视为一个需要持续验证和调整的动态资产,而不是静态公式。