第七章:模型预测控制 (Model Predictive Control, MPC) - 学习笔记

一、模型预测控制概述 (Introduction to Model Predictive Control)

1. 什么是模型预测控制?

模型预测控制 (MPC) 是一种先进的过程控制策略,它利用过程的动态模型来预测未来的输出行为,并通过在线优化计算未来一系列的控制动作,以使某个性能指标最优。然后,仅执行这一系列控制动作中的第一个,并在下一个采样时刻重复整个过程。

MPC也被称为:

核心思想:"基于模型预测,滚动优化,反馈校正"。

[MPC基本思想示意图:预测未来输出,优化控制序列,实施第一个控制,滚动进行]

(参考 Seborg 教材 Ch 20.1 "Overview of Model Predictive Control")

2. MPC的关键要素 / 基本原理

MPC策略主要包含三个核心环节:

  1. 预测模型 (Prediction Model)
    • 利用过程的动态模型(如传递函数、状态空间模型、阶跃响应模型、脉冲响应模型等)来预测未来一段时间内(预测时域 $P$)被控变量的输出轨迹。
    • 这个预测会同时考虑未来的控制动作序列和可测量的扰动。
  2. 滚动优化 / 在线优化 (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)
    • 优化过程需要考虑过程的操作约束(如输入变量约束、输出变量约束、变化速率约束)。
  3. 反馈校正 (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$ 执行以下步骤:

  1. 获取当前过程测量值 $y_m(k)$。
  2. 状态估计与扰动估计 (State/Disturbance Estimation):根据 $y_m(k)$ 和过去的输入 $u(k-1)$,以及过程模型,估计当前过程的状态和未测量扰动的影响。常用卡尔曼滤波器或简单的偏差反馈。

    预测误差 $d(k) = y_m(k) - \hat{y}(k|k-1)$ (实际测量与上一步预测的当前值之差)。这个误差用于校正未来的预测。

  3. 未来输出预测 (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$ 是动态矩阵或阶跃响应系数矩阵)

  4. 设定参考轨迹 (Setpoint / Reference Trajectory)

    定义未来 $P$ 步的期望输出轨迹 $Y_{sp}(k+j|k)$。

  5. 优化计算控制序列 (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}$ 是权重系数。

  6. 实施控制 (Implement Control Action)

    将优化得到的控制序列 $\Delta \mathbf{U}_M$ 中的第一个元素 $\Delta u(k)$ (或者 $u(k) = u(k-1) + \Delta u(k)$) 应用于实际过程。

  7. 等待下一个采样时刻,重复以上步骤。

(参考 Seborg 教材 Ch 20.2 "Predictions for SISO Models", Ch 20.3 "MPC Control Calculations")

2. MPC的关键设计与整定参数

(参考 Seborg 教材 Ch 20.5 "Selection of Design and Tuning Parameters")

三、MPC的优缺点与应用 (Advantages, Disadvantages, and Applications of MPC)

1. MPC的优点

2. MPC的缺点与挑战

3. MPC的应用领域

MPC已成功应用于各种工业过程,特别是在那些具有慢动态、大滞后、多变量耦合和操作约束的场合:

(参考 Seborg 教材 Ch 20.7 "Advantages and Disadvantages of MPC")

四、总结与解题重点 (Summary and Problem-Solving Focus)

本章核心在于理解模型预测控制的基本思想、工作原理以及其相对于传统控制方法的优势,特别是在处理复杂约束和多变量系统方面。

重点回顾:

通用解题技巧与理解要点:

模型预测控制是现代控制理论在工业实践中应用最成功的案例之一,代表了先进过程控制的一个重要方向。