第七章:模型预测控制 (Model Predictive Control, MPC) - 学习笔记
一、模型预测控制概述 (Introduction to Model Predictive Control)
1. 什么是模型预测控制?
模型预测控制 (MPC) 是一种先进的过程控制策略,它利用过程的动态模型来预测未来的输出行为,并通过在线优化计算未来一系列的控制动作,以使某个性能指标最优。然后,仅执行这一系列控制动作中的第一个,并在下一个采样时刻重复整个过程。
MPC也被称为:
- Receding Horizon Control (RHC) / 滚动时域控制
- Moving Horizon Control (MHC) / 移动时域控制
核心思想:"基于模型预测,滚动优化,反馈校正"。
[MPC基本思想示意图:预测未来输出,优化控制序列,实施第一个控制,滚动进行]
(参考 Seborg 教材 Ch 20.1 "Overview of Model Predictive Control")
2. MPC的关键要素 / 基本原理
MPC策略主要包含三个核心环节:
-
预测模型 (Prediction Model):
- 利用过程的动态模型(如传递函数、状态空间模型、阶跃响应模型、脉冲响应模型等)来预测未来一段时间内(预测时域 $P$)被控变量的输出轨迹。
- 这个预测会同时考虑未来的控制动作序列和可测量的扰动。
-
滚动优化 / 在线优化 (Receding Horizon Optimization / Online Optimization):
- 在每个采样时刻,根据预测的输出和期望的参考轨迹(设定值),在一个未来控制时域 $M$ ($M \le P$) 内,通过优化算法(如二次规划QP)计算出一系列最优的控制动作序列 $\Delta \mathbf{u}(k), \Delta \mathbf{u}(k+1|k), \dots, \Delta \mathbf{u}(k+M-1|k)$。
- 优化的目标是最小化一个预定义的目标函数 (Objective Function / Cost Function) $J$。目标函数通常包括:
- 跟踪误差的平方和 (Predicted output error from setpoint)
- 控制动作的变化量或幅值的平方和 (Control effort / move suppression)
- 优化过程需要考虑过程的操作约束(如输入变量约束、输出变量约束、变化速率约束)。
-
反馈校正 (Feedback Correction / Receding Horizon Implementation):
- 虽然计算出了一系列 $M$ 个未来的控制动作,但只执行第一个控制动作 $\Delta u(k)$ (或 $u(k)$)。
- 在下一个采样时刻 $k+1$,重新测量当前过程输出,利用这个最新的测量值来校正模型预测(例如,通过比较实际输出和模型预测输出的差异,更新预测的初始状态或扰动估计)。
- 然后重复步骤1和2,基于新的状态和预测,重新进行优化计算新的控制序列。
- 这种滚动实施的方式使得MPC能够处理模型失配和未预料的扰动,体现了反馈控制的思想。
[MPC控制策略的三个核心环节图示:预测、优化、实施第一个并滚动]
(参考 Seborg 教材 Ch 20.1, Ch 20.3 "MPC Control Calculations")
二、MPC的控制结构与计算 (MPC Control Structure and Calculations)
1. MPC控制回路
[典型的MPC控制系统结构框图,包含过程模型、优化器、反馈校正环节]
一个典型的MPC控制器在每个采样时刻 $k$ 执行以下步骤:
- 获取当前过程测量值 $y_m(k)$。
- 状态估计与扰动估计 (State/Disturbance Estimation):根据 $y_m(k)$ 和过去的输入 $u(k-1)$,以及过程模型,估计当前过程的状态和未测量扰动的影响。常用卡尔曼滤波器或简单的偏差反馈。
预测误差 $d(k) = y_m(k) - \hat{y}(k|k-1)$ (实际测量与上一步预测的当前值之差)。这个误差用于校正未来的预测。
-
未来输出预测 (Future Output Prediction):
基于校正后的模型和未来的控制动作序列(待优化),预测未来 $P$ 步的输出 $\hat{y}(k+j|k)$ for $j=1, \dots, P$。
预测通常分为两部分:
- 自由响应 (Free Response):假设未来控制动作保持不变(例如 $\Delta u = 0$)时的输出预测。
- 强迫响应 (Forced Response):由未来控制动作序列 $\Delta U_M = [\Delta u(k), \dots, \Delta u(k+M-1|k)]^T$ 引起的输出预测。
$\hat{\mathbf{Y}}_P = \text{FreeResponse} + S \Delta \mathbf{U}_M$ (其中 $S$ 是动态矩阵或阶跃响应系数矩阵)
-
设定参考轨迹 (Setpoint / Reference Trajectory):
定义未来 $P$ 步的期望输出轨迹 $Y_{sp}(k+j|k)$。
-
优化计算控制序列 (Optimization of Control Sequence):
求解优化问题,最小化目标函数 $J$:
$\min_{\Delta \mathbf{U}_M} J = \sum_{j=1}^{P} w_{y,j} [\hat{y}(k+j|k) - y_{sp}(k+j|k)]^2 + \sum_{j=0}^{M-1} w_{u,j} [\Delta u(k+j|k)]^2$
约束条件 (Subject to):
- $u_{min} \le u(k+j|k) \le u_{max}$ (输入幅值约束)
- $\Delta u_{min} \le \Delta u(k+j|k) \le \Delta u_{max}$ (输入变化率约束)
- $y_{min} \le \hat{y}(k+j|k) \le y_{max}$ (输出约束,通常是软约束)
$w_{y,j}$ 和 $w_{u,j}$ 是权重系数。
-
实施控制 (Implement Control Action):
将优化得到的控制序列 $\Delta \mathbf{U}_M$ 中的第一个元素 $\Delta u(k)$ (或者 $u(k) = u(k-1) + \Delta u(k)$) 应用于实际过程。
- 等待下一个采样时刻,重复以上步骤。
(参考 Seborg 教材 Ch 20.2 "Predictions for SISO Models", Ch 20.3 "MPC Control Calculations")
2. MPC的关键设计与整定参数
- 预测时域 $P$ (Prediction Horizon):预测未来输出的时间步数。应足够长以覆盖过程的主要动态响应和达到稳态。
- 控制时域 $M$ (Control Horizon):计算未来控制动作的时间步数 ($M \le P$)。在 $M$ 步之后,通常假设控制增量为零或控制输入保持不变。较小的 $M$ 可以减少计算量。
- 采样周期 $T_s$ (Sampling Period):影响模型精度、计算负载和控制性能。
- 权重系数 $w_y, w_u$ (Weighting Factors):在目标函数中用于平衡跟踪性能和控制动作的平稳性。
- 增大 $w_y$ (或减小 $w_u$):更强调跟踪设定值,可能导致控制动作更激进。
- 增大 $w_u$ (或减小 $w_y$):更强调控制动作的平稳性,抑制过大的控制变化,响应可能更平缓。
- 模型 (Process Model):模型的准确性对MPC性能至关重要。
- 约束处理 (Constraint Handling):如何定义和处理输入、输出及变化率约束。
(参考 Seborg 教材 Ch 20.5 "Selection of Design and Tuning Parameters")
三、MPC的优缺点与应用 (Advantages, Disadvantages, and Applications of MPC)
1. MPC的优点
- 显式处理约束:能够直接在优化问题中考虑输入、输出和变化率等约束,这对于实际工业过程非常重要。
- 处理多变量系统 (MIMO):天然适用于多输入多输出系统,能有效处理变量间的耦合。
- 处理大纯滞后系统:基于模型的预测能够有效补偿纯滞后的影响。
- 处理非最小相位系统:通过预测可以预见并应对反向响应。
- 优化性能:通过在线优化,可以在满足约束的前提下使预定义的性能指标最优。
- 灵活性:可以采用不同类型的过程模型,目标函数和约束可以根据需求定制。
- 前馈控制能力:可以将可测量的扰动模型加入预测,实现前馈补偿。
2. MPC的缺点与挑战
- 依赖精确模型:性能高度依赖于过程模型的准确性。模型失配会导致性能下降。
- 计算量大:尤其对于复杂的MIMO系统、长预测时域或非线性模型,在线优化计算可能非常耗时,对硬件要求高。
- 参数整定复杂:涉及多个设计参数 ($P, M, T_s$, 权重等),整定相对PID更为复杂,需要经验和反复试验。
- 理论分析困难:闭环系统的稳定性、鲁棒性等理论分析不如传统控制方法成熟(尽管已有很大进展)。
- 实现成本较高:相比传统PID,MPC的软件和硬件成本以及维护要求通常更高。
3. MPC的应用领域
MPC已成功应用于各种工业过程,特别是在那些具有慢动态、大滞后、多变量耦合和操作约束的场合:
- 石油化工:精馏塔、裂解炉、反应器等。
- 炼油:原油蒸馏、催化裂化等。
- 聚合物生产。
- 制浆造纸。
- 水泥生产。
- 电力系统。
- 航空航天、机器人等领域也有应用。
(参考 Seborg 教材 Ch 20.7 "Advantages and Disadvantages of MPC")
四、总结与解题重点 (Summary and Problem-Solving Focus)
本章核心在于理解模型预测控制的基本思想、工作原理以及其相对于传统控制方法的优势,特别是在处理复杂约束和多变量系统方面。
重点回顾:
- MPC三要素:预测模型、滚动优化、反馈校正。
- MPC工作流程:在每个采样时刻,基于当前测量,预测未来输出,在线优化未来控制序列,实施第一个控制动作,然后滚动进行。
- 关键参数:预测时域 $P$,控制时域 $M$,采样周期 $T_s$,目标函数中的权重 $w_y, w_u$。
- 核心优势:处理约束、MIMO系统、大滞后、优化性能。
- 主要挑战:依赖模型精度、计算量、参数整定。
通用解题技巧与理解要点:
- 概念理解:清晰解释MPC的"预测"、"优化"和"滚动时域"的含义。
- 框图识别:能够识别MPC系统的基本结构和信号流。
- 参数影响:理解 $P, M$ 和权重系数如何影响MPC的控制行为(例如,过小的 $P$ 可能看不到过程的全部动态,过大的 $M$ 增加计算负担,权重影响响应的激进程度)。
- 与传统控制对比:能够说出MPC与PID等传统控制方法在处理约束、多变量问题上的主要区别和优势。
- 应用场景判断:了解MPC适合应用于哪些类型的工业过程。
模型预测控制是现代控制理论在工业实践中应用最成功的案例之一,代表了先进过程控制的一个重要方向。