目录

前言:将控制技术进行分类

1. 基于模型控制

2.基于数据驱动控制


前言:将控制技术进行分类

一说到控制,我想大多数人的第一反应就是PID控制,而工程上还有学术圈还有很多类型的控制,但为什么PID控制这么流行,主要原因就是鲁棒性好,易于在程序上进行实现,以至于到目前依旧宝刀不老。但控制离不开被控对象,因此选择控制算法要依据被控对象以及工作环境的特点进行选择,就像多大号脚就要穿多大号鞋一样,选择了合适的鞋子,脚穿上了才会舒服,控制效果才会事半功倍。本篇文章就是从鞋子和脚的关系上向大家强调解基于模型控制和基于数据驱动控制的重要性,以更广的学术维度去看待你所要解决的问题,这样才会找到合适的解决方案。

其实对控制算法的分类还可以分成经典控制、现代控制以及智能控制。大家还听到过什么自适应控制,其实自适应控制可以分为两派:一派是利用什么遗传算法、蚁群算法、粒子群算法、爬山算法、退火算法这种优化算法去优化控制器参数的自适应控制,它们本身并不是控制器,只是用这种算法去优化控制器的参数,如PID控制器参数;另一种则是以神经网络算法或深度学习算法为代表的动态演化算法,简单说就是你确定一组理想输出数据,然后利用神经网络算法或深度学习算法去不断学习让输出结果去逼近这组样本数据,在完成输出数据逼近后在智能算法中一定会存在一组使得输出数据满足理想数据集的关键参数。也就是说神经网络能够根据目标输出自动配置好自己的控制参数,当然在实际操作上会比较复杂。

1. 基于模型控制

基于模型的控制是用相对精确的数学表达式对受控目标的物理工作特性进行描述,通过对受控目标的数学描述方便对其进行相应的算法控制。因此在基于模型验证下所得到的控制器转化成实际控制器的作用效果是一致的。总的来说,基于模型控制是在对目标模型已知或能够建立的前提下设计控制器以及进行参数整定。被控对象模型的建立可以通过参数辨识法或根据被控对象所具有的相关物理参数结合目标的物理定理推导出来,图1为基于模型控制的研究流程图。

2.基于数据驱动控制

针对一些难以构建精准数学模型的受控目标,或根本无法构建受控目标的数学模型。基于模型控制的方法就很难在实际中获得良好的控制效果甚至无法对其设计合适的控制器。解决上述问题的关键所在就是在设计控制器时弱化被控对象对于精确数学模型的要求。针对上述问题早在二十世纪八十年代就产生了基于数据驱动控制的思想。Takagi T等人在1985年的论文中阐述了模糊控制框架,通过在SISO数据中建立模糊规则和模糊参数以实现不依赖模型控制,可是该控制框架依然有不足之处,因为建立模糊规则和参数只是在当前被控对象的输入输出数据下建立的,换成其他被控对象后其之前所建立的模糊规则和参数都会失效,必须从新分析建立规则和参数,缺乏自学习能力和自整定能力。其实在控制领域被广泛应用的PID控制器也是基于数据驱动思想,PID控制器本质上并不需要具体受控目标的数学模型就可以对其控制,因为传统的PID控制器设计仿真都需要构建被控对象的数学模型让很多人误以为PID控制器是基于模型的控制算法。但究其根本PID控制器仅仅利用输入到控制器的数据作为控制量。Ziegler等人于1942年提出了基于临界系数的PID控制器参数整定方法以来,PID控制器凭借其原理简洁明了,工程上方便操作,稳定性强等优势,广泛运用于工业自动化控制领域。但该方法也只针对线性系统有良好的控制效果,因为PID控制器存在滞后性,也可以通过增加前馈的方法提升系统的响应速度,但该控制器依旧存在着对强耦合、非线性时变系统无法实时控制的缺点。其根本原因就是PID控制器依旧没有充分利用系统所产生的数据,很明显系统所产生的数据本身就包含了被控对象系统结构的变化,未建模的动态特性以及无法建模的未知干扰等信息。常见的基于数据的控制算法还有机器学习控制、神经网络控制、支持向量机、虚拟参考反馈整定、去伪控制、惰性学习、无模型自适应控制、迭代反馈整定、迭代学习控制等。其研究流程也与基于模型控制有异同,具体见图2。

以上两大类控制研究方法并无优劣之分,在选择控制算法时应当明确一点就是没有哪一种控制算法能够适合所有被控对象,应当根据受控目标的特点以及控制要求,采取相应的控制手段。侯忠生教授在2013年对基于模型控制和基于数据驱动控制的选择做出了解释,提出应基于被控对象是否能精确建模的前提下选择控制方式。该意见的提出给后续研究人员提供了参考,具体见图3。

参考文献:

[1] Zhong-Sheng Hou, Zhuo Wang. From model-based control to data-driven control: Survey, classification and perspective[J]. Information Sciences 2013, 235: 3-35.

往期博客:

通信的硬件层协议和软件层协议

【理论】基于模型控制和基于数据驱动控制相关推荐

  1. 【控制】《复杂运动体系统的分布式协同控制与优化》-方浩老师-第10章-基于模型预测控制的人机协同控制

    第9章 回到目录 第11章 第10章-基于模型预测控制的人机协同控制 10.1 引言 同时干预问题 10.2 问题描述 10.3 基于模型预测的人机协同控制器设计 模型预测控制 10.3.1 基于模型 ...

  2. 【控制control】机器人运动控制器----基于模型的控制方法(关节控制--阻抗控制)

    系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录 前言 一.设计基于模型泛型控制器的步骤 二.机械臂控制科普 1.工业机械臂 ...

  3. 基于模型与不基于模型的深度增强学习_CVPR2018: 基于时空模型无监督迁移学习的行人重识别...

    Unsupervised Cross-dataset Person Re-identification by Transfer Learning of Spatial-Temporal Pattern ...

  4. 飞控教程基于模型的开发(across)

    摘自:https://mp.weixin.qq.com/s/SESLziI-qk_UYLX56Upl9A 飞控教程&基于模型的开发 原创 across超越者 across说 7月28日 ACR ...

  5. 【腾讯TMQ】基于模型的自动化测试工具——GraphWalker

    一.概述 GraphWalker就是一个基于测试模型的用例生成工具.它主要应用于FSM, EFSM模型.可以用来它可以直接读取FSM, EFSM图形模型.json模型.生成测试用例. 二.背景知识 要 ...

  6. 基于模型预测控制(MPC)的悬架系统仿真分析

    目录 前言 1.悬架系统 2.基于MPC的悬架系统仿真分析 2.1 simulink模型 2.2仿真结果 2.2.1 随机C级路面 2.2.2 正弦路面 2.3 结论 3 总结 前言 模型预测控制是无 ...

  7. 基于模型的强化学习比无模型的强化学习更好?错!

    作者 | Carles Gelada and Jacob Buckman 编辑 | DeepRL 来源 | 深度强化学习实验室(ID:Deep-RL) [导读]许多研究人员认为,基于模型的强化学习(M ...

  8. 【数据挖掘】聚类算法 简介 ( 基于划分的聚类方法 | 基于层次的聚类方法 | 基于密度的聚类方法 | 基于方格的聚类方法 | 基于模型的聚类方法 )

    文章目录 I . 聚类主要算法 II . 基于划分的聚类方法 III . 基于层次的聚类方法 IV . 聚合层次聚类 图示 V . 划分层次聚类 图示 VI . 基于层次的聚类方法 切割点选取 VII ...

  9. 数字图像处理:第二十二章 基于模型的编码

    第二十二章基于模型的编码 目录 引言 基于对象的编码 基于模型的编码 作业 1. 引言 为了获得更高的压缩效率并保持一定的视频质量以支持超低码率(大约10kbps)双向视频应用,不考虑内容特点的仅仅针 ...

  10. 【控制control】机器人运动控制器----基于模型预测控制MPC方法

    系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录 前言 一.模型预测控制(MPC)的介绍及构成 1.介绍 2.构成 二.模型 ...

最新文章

  1. Python标准库threading模块Condition原理浅析
  2. linux中double大小,linux 下 float 和 double 精度计算差别
  3. [mybatis]动态sql_if_where_trim判断OGNL
  4. Linux总线设备驱动框架的理解(非常棒的文章!)
  5. aop阻止方法运行_新型AOP高级氧化高浓度COD废水处理系统介绍
  6. 关于PHP的OpenSSL的加密问题
  7. 【报告分享】2020年中国知识图谱行业研究报告.pdf(附下载链接)
  8. 【转载】Gradle命令行黑魔法
  9. am最新版安装包_am软件下载-am剪辑软件(alight motion)中文版下载v2.3.1-11玩家网
  10. Spark采用分区方式读取数据库时partitionColumn, lowerBound, upperBound, numPartitions的理解与验证
  11. spring中的class配置不能使用properties中的字符串
  12. 本地如何搭建FPT服务
  13. PMP-8. 项目经理的能力
  14. hd4600黑苹果html5死机,HD4600终于可以不花屏了,写下心得。
  15. 编写函数求阶乘(完整版)
  16. 判断xarray中小于0的位置坐标
  17. 【JAVA】500勇士问题,杀掉第三个人
  18. 电脑端,PC端,微信小程序打不开,加载空白,或者提示加载失败
  19. 2019-12-21(98)
  20. 在成为Android工程师的一年里,我经历了什么?

热门文章

  1. 阿里云实践 - HTML5断点播放m3u8视频(videojs)
  2. linux riot密码,拳头账号密码忘了怎么办?riot账号怎么找回密码修改密码
  3. html数独游戏源代码,数独算法及源代码
  4. 公众号点击图片变成另一张_朋友圈也能发九宫格图片,再也不犯选择困难症
  5. 【Python项目】贪吃蛇小游戏
  6. 分享四款实用流程图模板
  7. bugku之凯撒部长的奖励
  8. java 小游戏Flappy bird的源码以及图片素材
  9. QT从入门到入土系列教程(一)——Qt5.14.2安装教程和VS2019环境配置
  10. FITS文件标准 1:介绍