MPC(模型预测控制) 原理及理论推导

您所在的位置:网站首页 优化控制器 MPC(模型预测控制) 原理及理论推导

MPC(模型预测控制) 原理及理论推导

2024-06-30 23:52| 来源: 网络整理| 查看: 265

一、前言

其实去年就已经跑通代码了,因为懒惰,没有整理,所以现在补作业了。今年给自己定下目标,做过的算法都要从底层原理推导一遍,并记录下来。

MPC(全称Model Predictive Control)模型预测控制。 一句话通俗易懂的解释:根据状态转移模型(已知当前状态的情况下,给定一个控制,可以准确推导未来的状态),推导出未来一段时间的状态表达式(工程上实现一般用误差表示,即未来状态和目标状态的差值),求解未来一段时间的控制量,做到尽量接近目标状态、尽量的小的控制变化,同时满足控制输出的阈值范围约束。

二、算法流程

MPC一般用于车辆的控制,特别是在智能驾驶领域,路径的跟踪控制大都离不开此算法,正好也是我熟悉的方向,那我们就以车辆控制来说明MPC的主要步骤:

1、建立车辆的运动学模型(准确说是误差模型,有问题可以看我之前LQR理论中的推导); 2、模型的线性及离散化; 3、预测模型推导(建立关于未来一段时间车辆的状态矩阵); 4、目标函数设计(设计未来车辆状态好坏的评价函数); 5、约束设计(速度、加速度等限制); 6、优化求解。

总的来说:以上过程就是一个 高阶版的线性规划问题(高中应该都学过,在一定区间范围内,如何取值使得目标最好),只是里面优化求解的计算过程不需要人工计算,我们只需要根据车辆的模型、约束条件、目标等计算或设计出一些基本的矩阵,然后丢给二次规划优化求解器即可得到。 需要注意的是:MPC求解出的是 未来一段时间的控制量(实际上是控制量的变化),我们在使用的过程中只用第一个控制量,为什么这样做?是不是预测未来一段时间越短计算复杂度越低?这两个问题是相辅相成的,模型预测控制的精髓就是具备预测性,如果建立预测模型时,未来状态时间越短,计算量确实越低,但它的预测性会降低,只使用第一个控制量的原因时增强控制主体对环境变化的响应能力。

插一段车辆模型控制的仿真,里面不涉及到MPC跟踪问题,只是为下一期文章 使用MPC进行路径跟踪及源码解读 仿真做准备!

车辆运动模型(后轮单车)

三、算法理论推导

公式编辑太麻烦了,所以直接用手推的图片吧! 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 推导的过程还是比较复杂的,里面涉及到大量的矩阵知识,我手推的过程难免有笔误,欢迎大家指正!推导一遍之后会对MPC的理解更加透彻,工程应用中调参也会更加得心应手!

下期预告:使用MPC进行路径跟踪及源码解读。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3