问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

MPC模型预测控制器——数学推导

创作时间:
作者:
@小白创作中心

MPC模型预测控制器——数学推导

引用
1
来源
1.
https://docs.phillweston.com/article/model-prediction-control-mathematical-deduction

模型预测控制器(MPC)是一种基于模型的优化控制方法,通过在线求解有限时间开环优化问题来实现对系统的控制。本文将从最优化控制的基本概念出发,逐步介绍MPC的原理和数学建模过程,重点讲解二次规划方法在最优化问题中的应用,并通过矩阵运算推导出最终的代价函数形式。

模型控制基本内容

最优化控制和基本概念

参考链接:

最优控制的研究动机:在约束条件下达到最优的系统表现

Get the best performance within certain limitation

注:

所谓“最优”就是设计“惩罚函数”,把“惩罚函数”映射到“解空间”

最优不是唯一解

误差

举例:

下图是一个典型的单输入单输出系统(SISO):

假设该系统是一个轨迹跟踪控制系统,其中e为轨迹跟踪误差,u为控制输入,则

  • 越小,说明轨迹追踪效果越好
  • 越小,就表明该控制器的输入越小,能量消耗就越低

基于此,定义一个 Cost Function(目标/代价函数):

,控制器看重误差

,控制器看重输入

根据现实中不同的控制系统要求调节。而最优控制的目标就是使得代价函数J最小。

拓展到MIMO(多输入多输出)系统中:

其代价函数就可以写为:

其中Q、R分别为调节矩阵。

例如:

其中为权重系数。

关注哪个变量就把哪个变量对应的权重参数调大,另一个权重参数调小

MPC:模型预测

MPC作用机理描述为:在每一个采用时刻,根据获得的当前测量信息,在线求解一个有限时间开环优化问题,并将得到的控制序列的第一个元素作用于被控对象。在下一个采样时刻,重复上述过程:用新的测量值作为此时预测系统未来动态的初始条件,刷新优化问题并重新求解 。

即MPC算法包括三个步骤:

  1. 在k时刻估计/测量当前系统状态
  2. 基于来进行最优化
    先找到曲线对应的控制区间和预测区间
    上式中第三项为最终代价
    对代价函数进行最优化,找到在预测区间内代价函数的最小值
  3. 只施加的控制量
    该步骤被称为滚动优化控制(Receding Horizon Control):
    预测的模型很难完美描述现实的系统,现实的系统可能会有扰动
    当时间从k到k+1时,对应的控制区间和预测区间也向右移动一个时刻,然后重复进行第二步

最优化数学建模推导

参考链接

介绍最常用的一种最优化方法——二次规划

一般形式:

前面的部分是线性规划——最小二乘法:

Q是对角矩阵

举例

x为状态向量,u为输入向量

在k时刻

N称为预测空间(Predictive Horizon)

假设系统输出

参考值

误差

代价函数

上式可以理解为:

J=误差加权和+输入加权和+终端误差

系统的初始条件:

上述矩阵化为:

将代价函数展开

将上式展开之后合并可得

上式为新的代价函数

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号