Matlab官网例子:使用自适应模型预测控制的小车避障https://ww2.mathworks.cn/help/mpc/ug/obstacle-avoidance-using-adaptive-model-predictive-control.html

例子中的小车模型是连续非线性时不变的,状态变量x=[小车全局X坐标,小车全局Y坐标,小车航向角θ,小车车速v],控制变量u=[油门开度T,转角δ]。

这里的自适应是指在每个预测时间步,根据测量输出(这里就是状态x)和控制输入u,更新小车模型为(x,u)处的离散线性化模型,并且更新避障所需的约束条件。由于只有2个控制自由度,为了达到零稳态误差的完美跟踪,只能跟踪两个系统输出,这里的优化目标是使小车Y坐标和车速v跟踪参考信号(其中refSignal=[0 0 0 20]),因此mpc控制器里对测量输出的权重设置为

mpcobj.Weights.OutputVariables = [0 30 0 1]

查看matalb自带函数mpcmoveAdaptive,发现其甚至能求解时变离散线性化小车模型,也即可以显式指定每一预测时间步的小车模型!

P.S. mpcmoveAdaptive.m 里有一段话:

%   [u, Info] = mpcmoveAdaptive(MPCobj,x,Plant,Nominal,y,r,v,MoveOptions)

%   NOTE:  This command allows you to modify the controller's prediction
%   model(s) without re-defining the controller object, which involves 
%   considerable overhead.  If Plant and Nominal are constant, use MPCMOVE
%   instead.

意味着为了达到自适应控制的目的,除了使用mpcmoveAdaptive命令,还有一种方法是在每一计算时间步根据新的对象模型重新定义常规的mpc controller object,但是自适应mpc命令的计算开销要更小。

但官网的这个例子有点bug:小车原本的非线性模型只有一个平衡点[0,0,0,0],而随后设计AdaptiveMPC控制器时在其他状态处进行线性化,我尝试过,发现这样得到的控制器只能控制住线性化的(连续时间/离散时间)小车模型,而对原本的非线性小车模型控制效果很差。

Obstacle Avoidance Using Adaptive Model Predictive Control相关推荐

  1. 【Paper】2013_An efficient model predictive control scheme for an unmanned quadrotor helicopter

    Abdolhosseini M, Zhang Y M, Rabbath C A. An efficient model predictive control scheme for an unmanne ...

  2. 【控制】模型预测控制 model predictive control 简介

    目录 模型预测控制的一点笔记和看法 1 [控制]模型预测控制 model predictive control 简介 2 [控制]模型预测控制,公式推导,数值仿真,有程序有图 文章目录 1 模型预测控 ...

  3. 【模型】Model predictive control (MPC)控制策略简介

    参考https://en.wikipedia.org/wiki/Model_predictive_control MPC 控制是一种高级的进程控制(process control)方法.用来控制进程使 ...

  4. 模型预测控制(MPC,Model Predictive Control)

    发展历史 20世纪70年代后期,一类新型的计算机控制算法出现在美法等国的工业过程领域,如动态矩阵控制(DMC,Dynamic Matrix Control).模型算法控制(MAC,Model Algo ...

  5. 模型预测控制(Model predictive control,MPC)

    模型预测控制( MPC ) 是一种先进的过程控制方法,用于在满足一组约束条件的同时控制过程.自 1980 年代以来,它一直在化工厂和炼油厂的加工工业中使用.近年来,它还被用于电力系统平衡模型[1]和电 ...

  6. 10.15 杨秀建Model Predictive Control of Transitional Maneuvers for Adaptive Cruise Control Vehicles

    1.MPC间距控制策略 2.finite-time constrained OCP((FTCOCP)) 限时间约束OCP

  7. 自动驾驶中的模型预测控制(Model Predictive Control)

    一.什么是模型预测控制(MPC) MPC主要用于车道线的追踪,保持车辆轨迹相对平稳. MPC将车道追踪任务重构成一个寻找最优解的问题,优化问题的最优解就是最优的轨迹.我们每走一步都会按照目前的状态求解 ...

  8. 【附C++源代码】模型预测控制(MPC)公式推导以及算法实现,Model Predictive control介绍

    2022年的第一篇博客,首先祝大家新年快乐! 提示:本篇博客主要集中在对MPC的理解以及应用.这篇博客可以作为你对MPC控制器深入研究的一个开始,起到抛砖引玉,带你快速了解其原理的作用. 这篇博客将介 ...

  9. MPCC(Model Predictive Contouring Control)—自动驾驶中的轨迹控制算法

    MPCC(Model Predictive Contouring Control)-自动驾驶中的轨迹控制算法 引言 在自动驾驶技术快速发展的背景下,轨迹控制算法成为实现高性能自动驾驶的关键技术之一.而 ...

最新文章

  1. 我的puppet web 管理,彻底告别终端模式
  2. css对称旋转,CSS3 transform平面旋转
  3. 会计记忆总结之六:账务处理程序
  4. PHPcurl抓取AJAX异步内容(转载)
  5. Java进阶:java字符串定位语句
  6. ClipDrawable
  7. linux查看tmp,linux下find(文件查找)命令的用法总结-tmp文件
  8. Vivado官网下载
  9. SAXReader解析器
  10. 【汇编】从键盘输入16位有符号数x,y,z,w,编写程序实现:w=x+ y+24 - z,结果存放在w中, 并显示结果。
  11. 复习Python爬取必应的壁纸
  12. 【JVM Ⅵ】GC相关概念+引用
  13. 苹果账号总说连接服务器时出错,苹果手机连接iTunes时老是提示 “连接到AppleID服务器时出错”,怎么处理?...
  14. TaHomA:一套让你在iPad上控制房子,将其变身智能房屋的神奇系统
  15. vivo信号无服务器,vivo X50上手实测,连央视都夸的国货之光究竟体验如何?
  16. 关于Winxp U盘无法复制磁盘写保护解决办法
  17. [256个管理学理论]004.鲶鱼效应(Catfish Effect)
  18. 【二维码识别】灰度+二值化+校正二维码生成与识别【含GUI Matlab源码 635期】
  19. 分组密码设计准则概论
  20. 计算机本科论文胶装封面颜色,毕业论文装订、存档详解

热门文章

  1. 求助 | python画图横坐标时间问题
  2. 迟来的续集--Drawable+Animator,将优雅进行到底
  3. linux中v参数全称,[置顶] linux 命令中的 -v 参数
  4. 诺基亚Ovi Player
  5. 微信朋友圈图片对话php源码,微信小程序实现聊天对话(文本、图片)功能
  6. SOAP学习之二:全网最简单的ONVIF协议IPC云台PTZ控制VC++代码--不使用gsoap!!
  7. 下载全网音视频资源的神器—You-get
  8. gedit编辑html中文,gedit编辑器
  9. 机器学习实战--决策树ID3的构建、画图与实例:预测隐形眼镜类型
  10. 实验一 VMware Workstation 12的安装