目录
前言:将控制技术进行分类
一说到控制,我想大多数人的第一反应就是PID控制,而工程上还有学术圈还有很多类型的控制,但为什么PID控制这么流行,主要原因就是鲁棒性好,易于在程序上进行实现,以至于到目前依旧宝刀不老。但控制离不开被控对象,因此选择控制算法要依据被控对象以及工作环境的特点进行选择,就像多大号脚就要穿多大号鞋一样,选择了合适的鞋子,脚穿上了才会舒服,控制效果才会事半功倍。本篇文章就是从鞋子和脚的关系上向大家强调解基于模型控制和基于数据驱动控制的重要性,以更广的学术维度去看待你所要解决的问题,这样才会找到合适的解决方案。
其实对控制算法的分类还可以分成经典控制、现代控制以及智能控制。大家还听到过什么自适应控制,其实自适应控制可以分为两派:一派是利用什么遗传算法、蚁群算法、粒子群算法、爬山算法、退火算法这种优化算法去优化控制器参数的自适应控制,它们本身并不是控制器,只是用这种算法去优化控制器的参数,如PID控制器参数;另一种则是以神经网络算法或深度学习算法为代表的动态演化算法,简单说就是你确定一组理想输出数据,然后利用神经网络算法或深度学习算法去不断学习让输出结果去逼近这组样本数据,在完成输出数据逼近后在智能算法中一定会存在一组使得输出数据满足理想数据集的关键参数。也就是说神经网络能够根据目标输出自动配置好自己的控制参数,当然在实际操作上会比较复杂。
1. 基于模型控制
基于模型的控制是用相对精确的数学表达式对受控目标的物理工作特性进行描述,通过对受控目标的数学描述方便对其进行相应的算法控制。因此在基于模型验证下所得到的控制器转化成实际控制器的作用效果是一致的。总的来说,基于模型控制是在对目标模型已知或能够建立的前提下设计控制器以及进行参数整定。被控对象模型的建立可以通过参数辨识法或根据被控对象所具有的相关物理参数结合目标的物理定理推导出来,图1为基于模型控制的研究流程图。
2.基于数据驱动控制
针对一些难以构建精准数学模型的受控目标,或根本无法构建受控目标的数学模型。基于模型控制的方法就很难在实际中获得良好的控制效果甚至无法对其设计合适的控制器。解决上述问题的关键所在就是在设计控制器时弱化被控对象对于精确数学模型的要求。针对上述问题早在二十世纪八十年代就产生了基于数据驱动控制的思想。Takagi T等人在1985年的论文中阐述了模糊控制框架,通过在SISO数据中建立模糊规则和模糊参数以实现不依赖模型控制,可是该控制框架依然有不足之处,因为建立模糊规则和参数只是在当前被控对象的输入输出数据下建立的,换成其他被控对象后其之前所建立的模糊规则和参数都会失效,必须从新分析建立规则和参数,缺乏自学习能力和自整定能力。其实在控制领域被广泛应用的PID控制器也是基于数据驱动思想,PID控制器本质上并不需要具体受控目标的数学模型就可以对其控制,因为传统的PID控制器设计仿真都需要构建被控对象的数学模型让很多人误以为PID控制器是基于模型的控制算法。但究其根本PID控制器仅仅利用输入到控制器的数据作为控制量。Ziegler等人于1942年提出了基于临界系数的PID控制器参数整定方法以来,PID控制器凭借其原理简洁明了,工程上方便操作,稳定性强等优势,广泛运用于工业自动化控制领域。但该方法也只针对线性系统有良好的控制效果,因为PID控制器存在滞后性,也可以通过增加前馈的方法提升系统的响应速度,但该控制器依旧存在着对强耦合、非线性时变系统无法实时控制的缺点。其根本原因就是PID控制器依旧没有充分利用系统所产生的数据,很明显系统所产生的数据本身就包含了被控对象系统结构的变化,未建模的动态特性以及无法建模的未知干扰等信息。常见的基于数据的控制算法还有机器学习控制、神经网络控制、支持向量机、虚拟参考反馈整定、去伪控制、惰性学习、无模型自适应控制、迭代反馈整定、迭代学习控制等。其研究流程也与基于模型控制有异同,具体见图2。
以上两大类控制研究方法并无优劣之分,在选择控制算法时应当明确一点就是没有哪一种控制算法能够适合所有被控对象,应当根据受控目标的特点以及控制要求,采取相应的控制手段。侯忠生教授在2013年对基于模型控制和基于数据驱动控制的选择做出了解释,提出应基于被控对象是否能精确建模的前提下选择控制方式。该意见的提出给后续研究人员提供了参考,具体见图3。
参考文献:
往期博客:
转载:https://blog.csdn.net/Roger_717/article/details/105859540