MPC模型——预测控制器
目录
一、最优控制——Optimal Control
1.1 单输入单输出——SISO
1.2 多输入多输出——MIMO
二、MPC 模型
2.1 MPC 模型预测的流程
STEP 1:采样
STEP 2:代价函数
STEP 3:滚动优化
2.2 MPC 模型的详细数学建模推导
2.2.1 MPC 数学建模目标分析
2.2.2 建立MPC 数学模型
三、后记
3.1 MPC 模型的局限性
3.2 MPC 模型预测的延申
参考资料:
MPC(Model Predictive Control),即为模型预测控制技术的一种广泛应用方法。简言之,则是基于模型对系统状态进行未来趋势的预判。从学术角度来看,在每个采样周期内进行状态空间的测量,并结合优化算法求解最优操作序列以实现最佳未来的调控效果。该方法自上世纪60年代至70年代初期起源于工业界,并逐渐发展成为除PID控制外应用最为广泛的现代控制策略。
一、最优控制——Optimal Control
在深入探讨MPC模型之前
1.1 单输入单输出——SISO
当前我们正在首先考虑这种基本的SISO模型(SISO, Single Input Single Output),来进行分析研究

图1.1 SISO 系统框图
其中,在时间t点上定义的r(t) 为 reference value(Ref),即在理想状态下我们希望系统达到的目标状态。误差 e 被定义为输出 y 和 reference value Ref 之间的差距,并且其计算公式为 e = y - Ref。

可用于表示轨迹追踪过程。当E值越低时,系统的跟踪性能将更为出色,并使输出y更快趋近于参考值r。

则可用来描述输入的大小。
接着,我们引入代价函数:

其中q 和 r 作为调节因子,在其中起着重要程度的作用,在系统中扮演着关键角色。这些调节因子的数值大小将直接影响系统的响应特性与稳定性表现,在实际应用中可以通过设定不同的参数值来优化系统的性能指标。我们的主要目标即是通过设定控制变量u 的值域范围,在此过程中寻求使指标函数J 达到最低点的方法,并以此实现系统的最优运行状态。
1.2 多输入多输出——MIMO
我们再从多输出多输出模型( MIMO, Multiple Input Multiple Output )来分析。MIMO 系统中,有以下关系:

这边可以查阅上一篇关于 LQR 中调整矩阵与权重系数相关内容的文章。作为补充说明,在这里再来一个例子具体阐述调节矩阵与权重系数是如何工作的。作为上文的补充部分。
我们在这里假设有两个状态空间和两个输入量,则有:

在这边,我们的状态量即是输出量,再假定参考量为0 ,则有:

则误差可表示为:

则前面的代价函数可以改写成:

其中,Q 和R 都为调节矩阵,

、

、

、

为权重系数。
二、MPC 模型
MPC模型的核心思想在于利用模型预测未来时间段内的系统行为以实现优化控制。作为在计算机系统中采用二进制编码实现离散时间和量化振幅策略技术的基础框架,MPC模型主要应用于数字控制系统的设计与实现,其中涉及的状态空间描述与输入变量设定均建立于离散时间域之上

2.1 MPC 模型预测的流程
STEP 1:采样
测量读取当前时间点系统的状态变量,即

。
STEP 2:代价函数
模型预测控制的基本理论是实时处理最优化问题。其中,最优化问题被定义为以目标函数的形式描述。其一般形式为:



式(1)
可见,代价函数

由过程项

和终端项

组成。
其中过程项主要由系统的性能指标构成;即系统的优化目标;通常包括状态、输入与期望值之间的偏差值;用于衡量系统接近最优目标的程度。通过观察可以发现;终端项时刻N是过程项时刻N-1下一时刻;这正是为什么

称为终端项。其作用是为了保证系统的稳定性,设计成二次型的形式。
STEP 3:滚动优化

图2.1 MPC模型输入量与输出量的关系
MPC模型预测应用的是滚动预测策略,在每一次优化步骤中仅考虑单个输入变量以预估下一时间段的状态变化情况。如图2.1所示,在第K时刻基于包含有...

和

的控制区间预测出了

、

以及

的预测区间,但是在K时刻,我们只对系统输入在K时刻的

。在下一时刻即K+1时刻,在预测判断输入

这是MPC模型中一个非常重要的特点称为滚动预测,在这种机制下系统会不断根据当前状态调整未来的行为以达到预期目标。其原因在于工业生产过程中不可避免地存在各种外部干扰因素以及设备本身的局限性导致实际输出无法完全吻合理论预测值。例如图所示在时间K点系统基于历史数据做出的输出预测值为黑色线条但实际运行中由于各种不可控因素的影响实际输出轨迹呈现出红色走向两者之间存在显著偏差即使是在时间K点初始偏差较小但由于过程累积效应随着时间推移这种偏差将对系统的稳定性造成严重威胁。因此滚动预测本质上是一种实时迭代的过程需要消耗较大的计算能力和时间资源这也就限制了MPC模型在处理快速响应型工业过程时的应用效果尤其是在追求低成本和高效率的工业化生产环境中这一挑战显得尤为突出
2.2 MPC 模型的详细数学建模推导
2.2.1 MPC 数学建模目标分析
经过长期的发展,MPC目前的求解算法已相当成熟,无需人工干预,只需让计算机负责处理计算包中的相关功能模块。在应用MPC模型时,主要难点在于构建相应的数学框架,选择何种形式的数学模型将直接影响系统的性能。
MPC 模型是建立在二次规划这一系统性分析的有效手段上的。对二次规划(Quadratic Programming)的标准形式进行阐述时,请考虑以下内容:包括一个 n 维向量 x 的存在,并满足一系列线性约束条件以及一个二次目标函数 min f(x) = ½xᵀQx + cᵀx,在定义域内寻求其最小值点 x*。

式(2)
其中,

为调节对角矩阵,即:

值得注意的是,整个式(2)中,有且只用一个变量,即

变量。我们反观上面的式(1),除开

、

和

三个调节矩阵,共有

和

两个变量。那么思路就是,找出变量

和

之间的关系,将式(1)化成式(2)的形式。
2.2.2 建立MPC 数学模型
现有离散时间系统:

接着定义状态空间和输入量:

式(3)
结合MPC 预测,则有K+1 时刻的状态变量:






结合式(3),写成矩阵的形式:

简化为:

式(4)
现在将式(1)中部分项展开:




现在我们可以将式(1)改写成为:

再代入式(4):



已知:我们知道

、

和

- 维度均为1 \times 1。
- 那么可推出剩下的两个元素也同样是1 \times 1级数,
- 即等于一个标量值。
- 根据线性代数原理,
- 1 \times 1阶矩阵的转置矩阵即为其自身。
- 那么可以用如下形式表示:


式(4)
其中:

。
比较式(4)和式(2),可以发现,整个代价函数中有且只有一个变量

了(

为系统最初时刻测量得到的状态量,可以视作常数处理)。
三、后记
3.1 MPC 模型的局限性
在MPC模型预测流程中讨论到,在滚动优化过程中确实存在一种实时反馈机制的特点,在这种情况下系统需要投入较高的计算规模与运行时长以保证操作效率。由此可见,在实际应用中该种方法主要局限于低动态阶次系统以及依赖于先进水平硬件配置的支持环境之下,并非适用于所有复杂场景。由此可见该方法存在明显缺陷。列举了以下几点在现有文献中常提到的MPC模型存在的主要问题
1)MPC 模型预测适用于慢动态过程和具有高性能计算机的环境;
2)受限于线性和准线性过程;
大多数现有的预测控制算法倾向于采用工业界较为容易获取的阶跃响应或脉冲响应等非参数模型,并通常通过在线求解约束优化问题来实现优化控制。当处理受约束系统的时侯, 如果该系统的解析表达式难以获得解, 就会导致利用传统定量分析方法探索设计参数与系统性能之间的关系变得极为困难。这不仅使得这些算法中的大量设计参数仍需由人工设定,并且通过大量的仿真研究来进行验证。因此,在实际应用中除了需要投入较大的前期成本外,在线仿真技术和实际操作经验对于系统的成功应用也起到了至关重要的作用。
3.2 MPC 模型预测的延申
随着 MHC 模型预测技术在多个领域中的广泛应用,在复杂多变的环境下研究者们发现传统的 MHC 方法无法确保控制器的有效性 因此 将系统的不确定性纳入控制器设计问题对于 MHC 的实际应用具有重要意义 现阶段针对不确定性问题的 MHC 方法主要可分为两类 鲁棒 MHC 和随机 MHC 前者主要应用于有界扰动场景 后者则专注于随机扰动情况 此外 还有考虑安全性的避障 MHC 容错 MHC 以及注重计算效率的分布式 MHC 和显式 MHC 等等
参考资料:
MPC模型预测控制器
MPC模型预测控制器
MPC模型预测控制方法
[沈强,赵泽阳,康泽禹等]针对航天器模型的预测控制方法进行了系统性综述[J].《南京航空航天大学学报》, 2023, 《南京航空航天大学学报》第几卷第几期:多少到多少页.Doi: 数字或字母如需修改请告知
[3] 席裕庚,李德伟,林姝.模型预测控制——现状与挑战[J].自动化学报,2013,39(03):222-236.
