现实中,当然不只是PID。比如过程控制,十几个以上、乃至几十几百个输入输出,耦合不可忽略,约束条件比较强,同时又要优化一定的性能指标,单用PID几乎是不可能的,即使用解耦。此时用预测控制比较多。当然,底层还是多为PID。
自适应与鲁棒是两个很大的概念。
自适应控制,工程需要很大,比如很多控制系统不能随便换挂载的,就是因为换了挂载之后,需要重新调参。而想做出一劳永逸的自适应控制,则非常难调。其实自适应控制没有clear cut的边界,什么意思呢,自适应的控制都等算上自适应控制。而这自适应的可以是时间上的时变造成的,也可以是空间上的非线性造成的,也可以是人为地换挂载等造成的,也可以是故障(这时就多称为容错控制了)造成的。所以,随着情况变而控制率也变的控制,都可称为自适应控制。最简单的,分为不同的工况,设计不同控制率,然后检测出工况变,而控制率变。
鲁棒控制的本质,是按照鲁棒性能指标来调参(可以是状态反馈,也可以是PID等等)。而鲁棒性分析,工程中到处都是,比鲁棒控制本身应用要广。比如有时候调完PID,还得分析、测试下它的鲁棒性。而鲁棒控制中的LQR、H无穷等,在比如自动跟踪阳光的太阳能板、射电望远镜、旋翼飞行器等等中有不少应用。其本质是个频域方法(灵感来源),转化为时域求解,然后写成算法,但一般实行之前要看频域特性,才敢放行。其实话说回来,鲁棒控制也是没有clear cut的边界的,从一般意义上说,鲁棒的控制都可成为鲁棒控制,比如容错控制也可以作为鲁棒的。所以,控制率不变,但至少原则上可以容忍不同情况的控制,都可称为鲁棒控制。其实可以想见,实习生了每种情况的性能的。
其实PID也可以做成自适应的,当然也可以按照鲁棒性能指标来调参。其实现实中的PID,很少只是用PID的基本形式的,而是都往往带有很多小trick。预测控制也可以啊。容错控制可以是自适应,也可以是鲁棒,也可以两者兼而有之。
其实说到实例,一找一大堆。比如上面提到的某射电望远镜,还有某世界巨头硬盘生产商,还有某世界著名公司的无人驾驶地铁,比如很多世界著名石油化工类公司,比如风电、太阳能并网的直流转交流等。都不是论文中的,但也因此不能详细说。
有句话说,实际中在用的控制器大部分是PID。其实确切的说,是大部分包含PID,但也大部分不只包含PID。运动控制,底层一般是电机,可串级,串级后每级阶数不高,都用PID往往就够了;过控,底层也常用PID就够了。有时候中、上层也是PID。但另外一方面,PID的局限很多,特别是在中、上层的时候,比如遥操作(时延无关控制),比如负载慢变的系统(自适应),比如相似环境重复动作的系统(迭代学习),比如输入输出较多且耦合强硬约束的系统(预测控制)。
现在发展CPS,IoT,但控制算法/参数大多还是要结合硬件来调(现在主要还是人靠经验离线调),是其中一个不小的问题,因为这意味着可扩展性大大受限制,很难往模块化、定制方向发展。
这里岔开一句,PID用鲁棒的性能指标来调参,有人说这还是PID,有人说这就是鲁棒控制了。很多时候,争论源于此。其实究其本源,是没有什么可争的。当然,PID也可用其他方法来调参,比如模糊PID,自适应PID。有人说这还是PID,有人说这就是非线性了,自适应了。这只是名词的争论。
其实要说严谨,最常用的,PID加上饱和,就是非线性的了。有人说这还是PID,有人说这就是非线性控制了。这些名词之争,确实没必要。因为控制系统是由很多模块组成的。任何单一的模块指代整体,都会以偏概全。
还有个问题,通信中解决的比较好,就是极限问题。通信中有信息论给出极限,然后各种编码方式趋近极限就行了,有个比较量化的比较。相对而言,控制这方面还有很多欠缺,在给定传感器与模型误差时,不知道极限(比如精密控制中的variance)是什么,也就不知道还能不能改进。
相信有工程经验的都有类似的疑惑,一个系统用一个方法,控制得不错。但不能说明别的方法不能控制得更好啊。回到最基本的问题,如何决定选择哪个控制方法呢?PID上面增增添添,用trick,对系统理解更深(比如一些环节,如发达启动过程的建模、辨识,也就是旋翼或是阀门等的启动过程),乃至分工况(专家、模糊、自适应等都能往上用),能改进不少性能;鲁棒、自适应调得好,也都不错。不知道一个框架的极限在什么地方,也就不知道在现有框架下控制器还能不能改进,还能改进多少,也就不知道什么时候该换另一个框架。即使一个框架在现有问题上效果不好,也不知道是在这个框架本身不好,还是自己没调好。甚至连调到什么程度了都不知道,往往是也许大概差不多了。如此等等,只能靠经验。但经验有时也是靠不住的,因为经验只是对已有的东西的熟悉,往往会阻碍新东西的引进。也许控制还处于地心说时代,之后还有日心说,牛顿三大定律,相对论,量子力学等等呢。其实辨识、滤波(估计)也差不多。比如滤波,对某些环节理解更深,比如去除信号中的确定分量,只留随机分量,是个很难的trick。而这个trick可能比调滤波器参数更重要。这更让人想到了地心说,为了拟合而用trick。一般来说,从物理学的历史来看,trick代表着背后应该有更‘宏大’的理论。
大家看过最强大脑吧,其中有一期,是两个盲人比定位,一个是吹气(要求距离近,精密),一个是通过发出声音听反射(距离远,但不够精细)。而非盲人则用视力便可以了(距离远,而且精细)。这说明了什么?就是不同的传感器特征,决定了用什么定位(滤波)方法最优,也决定了性能。控制也一样啊。假设这三个人去骑自行车,他们的最优策略也是不一样的。现在的控制技术,很多时候往往瓶颈在于传感技术和建模技术。就传感技术而言,曲线一般都很差(漂移、噪声、干扰等),还不能有效的利用视觉等。而且建模技术也是如此,包括系统建模和外界干扰建模。系统本身、外界干扰模型都不精确,传感器传回来的数据也不完全可信,那能怪控制么?有可能,未来的这些技术发展,最适用的控制算法也就跟着变了。也许PID还是接着用,但同时以前不能用的很多也可以用了,而且说不定会有很多崭新的框架,乃至新的控制结构。谁知道呢。
跟互联网相比,工业的设备、算法的更新换代算是很慢的,而且很不「平」:很可能人家壳牌用某种先进控制很多年了,中国的一些过控的公司还在用default的算法。但另一方面,因为为了省能源(比如把某个控制指标的variance降低10%就能省很多)的驱动,也为了现在很多更加精密(这方面降低variance的价值就更直观了,比如精密机床加工、乃至芯片生产、纳米级操作positioning等)的需要,等等,现在世界范围内,很多公司都在慢慢试行先进控制算法。当然中国也在慢慢追赶。很多时候PID够用,不代表没有更好的算法;而且PID是线性时不变的,且只有三个自由度,在很多系统中的极限还是比较明显的:比如再怎么调,也调不出迭代学习控制的效果,当然后者的使用那个范围非常有限。可是在这非常有限的范围内,迭代学习控制效果就是比单纯的PID好。当然迭代学习控制底层也可有PID这一环节。
现代的先进控制理论先进在哪里?如何评价在PID控制器份额在95%条件下稳定性逊色的先进控制系统? - 小心假设的回答---
以下是任性的回答。
如果仔细观察的话,其实每个人的走路姿势(算法?)都不一样的。刑侦学中,就有如何根据人的脚印来判断这个人的体态特征、乃至职业等等的方法。
其实我们自己就有这样的经验,比如在泥地里、在潮湿的地面、在冰上,在负重时,在受伤时,在水下,在大风中,乃至在月球上,在加速的列车上,走路姿势都不一样。
或者想象,你如果是大象,身体变得沉重,或者你是鸵鸟,或者你是某个机器人,乃至你视力很差,或者是盲人,那步态又不一样。
再扯远一点,不仅步态,就连定位方法,在森林里(方向很重要),在地铁里(方向不那么重要),在城市里,在乡下,其实都是不同场景下不同的。
这是自适应,还是鲁棒呢?人可以做到,为什么控制理论做不到?难道控制理论的发展到今天就是尽头了?毕竟才有一百年左右的历史,今后的一百年呢?会不会一百年之后会看,现在的自适应只不过是所有自适应中的一小类,鲁棒、非线性等也是如此?
还有一个问题,那就是存不存在终极理论?如果存在的话,会是什么?人类内嵌的控制算法是什么?难道是数学?难道是我们现在看到的PID(也许)、鲁棒控制、自适应控制等?再比如在人脸识别方面,难道是SVM?难道是L1 norm、神经网络(也许)?也许是不同方法的切换?