预测方程的推导的核心思想是通过建立基于误差量的状态空间方程来推导。我们采用的是非线性系统线性化方法中的第一种:存在参考系统的线性化方法。(详见会员专享资料)

以自行车模型为例,在推导过程中下角标 r (reference),即参考的意思

图1中,我们首先建立运动学模型,选取3个状态量(横、纵坐标以及车辆横摆角)和两个控制量(速度和前轮转角);其次进行系统线性化。

这里阐述一下车辆位姿的概念:位姿就是位置+姿态,位置我们用横纵坐标来表示,姿态就是车辆在这个横纵坐标下的车头朝向。

注:在推导过程中下角标 r (reference),即参考的意思

图1

图2中,在由上述推导得到的线性化方程后,该状态方程是连续的,不能直接用于模型预测控制器的设计,所以有必要对其进行离散化处理。经过离散化后我们就能实现了由当前的状态量误差和当前时刻的控制量误差推导得到下一时刻的状态量误差。但是要注意在每一次程序设计的过程中 ,我们不一定要把所有的状态量误差都要输出来,比方说我可能只需要输出横向位置的误差,纵向位置和横摆角没必要输出,所以我们定义c矩阵来实现这个功能,从而有了输出方程的定义。

注:B以及B飘矩阵第三行第一列参考横摆角书写错误,应改为参考前轮转角。

图2

以下我们通过构建一个新的状态空间,这个空间包含k时刻的状态量误差以及k-1时刻的控制量误差,我们可以进行下一时刻状态空间的预测推导。推导完后我们一定要清楚矩阵A、B、C的维数,A为5*5的矩阵,B为5*2的矩阵,C为3*5的矩阵。k+1时刻的状态空间推导出来以后,继续进行k+2、k+3....一直到k+Np时刻的状态空间的预测,在此过程中通过找规律可以发现等号左边和等号右边的联系。从而拼凑出我们想要的矩阵。

图3

图4

转化为二次规划问题

二次规划详见:MPC的终结——二次规划求解约束极值问题_更适合青年研究者的资源库!公众号:杰哥的无人驾驶便利店-CSDN博客_mpc 二次规划

图5

有效集法和内点法

在预测控制模型中一般选用 ASM (Active Set Method)有效集法来对目标函数进行优化,但是IPM(Interior Point Method)内点法具有广泛的应用范围,既可以解决带约束的线性规划问题,又可以求解带约束的二次规划问题。有效集法适用于解决只有不等式约束的二次规划问题,而内点法是用于解决任何形式的二次规划问题。因此我们之后的每一章选用内点法来求解。

线性时变模型预测控制推导相关推荐

  1. 无人驾驶运动学模型——线性时变模型预测控制的思路推演过程

    无人驾驶运动学模型--线性时变模型预测控制的思路推演过程 在做MPC仿真时,有些代码看不太懂,就去重翻了龚建伟的<无人驾驶车辆模型预测控制>这本书,怎么说呢,这么说吧,应该说它是目前为止讲 ...

  2. 无人驾驶运动学模型——线性时变模型预测控制的思路推演过程_百叶书的博客-CSDN博客_线性时变模型预测控制 转

    无人驾驶运动学模型--线性时变模型预测控制的思路推演过程_百叶书的博客-CSDN博客_线性时变模型预测控制

  3. MPC控制器设计,模型预测控制,线性时变模型预测控制,LTV MPC,提供理论讲解与应用实现

    MPC控制器设计,模型预测控制,线性时变模型预测控制,LTV MPC,提供理论讲解与应用实现. 提供MPC算法.LTV MPC 算法在直升机和四旋翼中的应用实例. 提供模型预测控制资料. 提供matl ...

  4. 《无人驾驶车辆模型预测控制》(第2版)第五章主动转向详细学习——算法部分(非线性系统线性化)

    一.状态轨迹的线性化方法 1.理解: 第四章的期望轨迹给出了路径上每个点的状态信息(包括状态量和控制量),这类轨迹比较规则,比如直线.圆等,因此其控制量也容易得到,而对于"期望轨迹无法给出所 ...

  5. 无人驾驶车辆模型预测控制第四章轨迹跟踪代码(圆形篇)下

    目录 4.Simulink框图搭建 5.MPC代码 注解:克罗内克积 代码详解与推导过程一致:线性时变模型预测控制推导_更适合青年研究者的资源库!公众号:杰哥的无人驾驶便利店-CSDN博客_线性系统模 ...

  6. 《无人驾驶车辆模型预测控制》(第二版)第四章详细学习——算法部分

    目录 ①前言 ②车辆的运动学方程 ③线性化过程 ④离散化 ⑤推导下一时刻状态 ⑥迭代推导 ⑦目标函数优化 ⑧约束条件 ⑨上下限约束 ⑩学习遗留问题 ①前言 本文主要参考了下面的博客线性时变模型预测控制 ...

  7. Apollo代码学习(六)—模型预测控制(MPC)

    Apollo代码学习-模型预测控制 前言 模型预测控制 预测模型 线性化 单车模型 滚动优化 反馈矫正 总结 前言 非专业选手,此篇博文内容基于书本和网络资源整理,可能理解的较为狭隘,起点较低,就事论 ...

  8. 自动驾驶之无人驾驶车辆与模型预测控制

    无人驾驶车辆 无人车辆( Unmanned Vehicle),根据其行驶环境的不同,可以分为空中无人机( Unmanned Aerial Vehicle).水面无人艇( Unmanned Surfac ...

  9. 无人驾驶运动控制(二):模型预测控制

    1.引言 模型预测控制是目前控制领域研究的热点,本文将简要介绍模型预测控制的基本概念.特点.研究范围,并推导基于状态空间方程的控制量模型预测控制.控制增量模型预测控制的数学公式. 2.模型预测控制概念 ...

  10. 模型预测控制(MPC)——动态矩阵控制(DMC)

    目录 一.模型预测的发展 1.1.先进控制技术及其分类 1.2.工业过程特点 1.3.预测控制的产生 1.4.模型预测控制系统大致包括四部分 1.5.模型预测控制历史 1.6.模型预测 1.7.滚动优 ...

最新文章

  1. .net Tuple特性
  2. 链表相交以及找循环链表入口
  3. d3.js学习笔记--Mike Bostock: Thinking with Joins
  4. 通过简单的 ResourceManager 管理 XNA 中的资源,WPXNA(二)
  5. 计算机专业学教育技术优势,西南交通大学教育技术学(040110)专业介绍
  6. leecode-12整数转化为罗马数字C版
  7. 磁盘建立swap分区,gpt分区和磁盘LUKS加密、配额
  8. android异步工作,Android异步消息机制详解
  9. java 图像渲染_对具有大量图像的视图执行本机渲染性能
  10. 学python还有机会吗_此时此刻,拥有一套全方面学习Python的机会是怎样一种体验?...
  11. 如何在Rancher 2.0上快速部署Datadog
  12. 支持秒赞的php脚本一键安装,easy-hiphop一键安装hiphop脚本
  13. python爬取instom图片_用python爬虫保存instagram图片
  14. Java——JButton按钮
  15. 安装Ubuntu18.10并安装华硕AC57无线网卡驱动
  16. JAVA 分片上传、断点下载场景
  17. win10系统如果更改战网服务器,win10系统无法登录战网的四种解决方法
  18. mysql, mysqladmin, mysqld之间的区别。
  19. ISO三标体系认证是什么?企业应该如何来通过三体系认证
  20. 系统集成项目管理工程师知识点总结

热门文章

  1. 华为P7解锁码申请及解锁详细教程
  2. PHP-laravel框架一1
  3. 期货反向跟单的四大跟单禁忌
  4. C#之DotNetBar2使用方法 - superTabControl1
  5. 芒果云 在线代码编辑器
  6. python语音识别终极指南_Python语音识别终极指南-帮你完成那个最难的从0到1
  7. 2020年全国大学生数学建模B题题目概要
  8. 微课录制神器,新手老师必备录屏软件!
  9. mysql删除的表怎么恢复_误删除mysql数据库表该如何恢复操作方法
  10. [黑苹果]简单修改FB实现显存增加至2048MB修复某些花屏