APP下载

一种基于多参数优化的神经网络控制器研究

2011-04-10程若发

制造业自动化 2011年15期
关键词:复合控制鲁棒性遗传算法

程若发,刘 建

CHENG Ruo-fa1,2,LIU Jian1

(1. 南昌航空大学,南昌 330063;2. 江西先锋软件股份有限公司,南昌 330029)

0 引言

小脑模型神经网络(CMAC)是Albus JS在1975年提出的一种模拟小脑功能的神经网络模型,具有处理非线性、自学习、一定泛化能力等优点[1]。目前较为常用的是CMAC的前馈控制和固定增益反馈控制器相结合构成的复合控制。但是这种控制结构要设定的控制参数比较多,参数之间互相影响,非常麻烦;另一方面,如控制器的参数选取不当,不仅不能取得良好的控制效果,还会出现不稳定现象。文献[3]证明了采用固定增益的PD控制器在CMAC估计有偏和随机干扰存在时只能实现局部有界稳定。文献[4]提出采用遗传算法对固定增益PID控制器进行最优设计,文献[5]针对CMAC的收敛性,提出自适应遗传算法CMAC的学习率优化,这些文献在取得成果的同时,未涉及PID控制参数和CMAC控制参数之间的相互影响以及多参数自寻优的问题。基于以上所述,本文利用改进的遗传算法对包括CMAC学习率η、惯性量α,PID控制器的Kp、KI、KD等多个参数进行优化,以期获得最佳控制效果,并以一个给定的被控对象算例进行仿真比较研究。

1 CMAC的结构和算法

CMAC是一种非线性映射的联想网络[2],每一输入只有少部分的神经原与之相关,其具有局部泛化能力,也就是相似的输入产生相似的输出,而远离的输入产生独立的输出,其结构原理如图1所示。在数学上可将其看成由X到A和A到Y两个映射组成,X到A的映射是通过滚动组合得到的,其原则是输入空间中比较相近的矢量,要求在输出空间中也比较接近,即X在A中具有联想特性。其中X、A和Y分别表示输入空间、虚拟联想空间和物理存储空间。

CMAC工作原理是输入空间中的任一点xi将在A中同时激活C个单元(ai=1表激活,这里C=3),网络输出yi为A中C个被激活单元对应权值累加如(1)式,CMAC网络权值调整一般采用LMS的方法如(2)式。

图1 CMAC结构原理图

2 改进GA多参数优化CMAC复合控制

2.1 改进遗传算法

遗传算法 (GA)是1962年由美国Michigan大学的Hollad教授提出的模拟自然界遗传机制和生物进化论而形成的一种并行随机搜索最优化方法[6]。尽管遗传算法有其优点和特点,但存在许多问题与不足,主要在于:1)普通遗传算法存在早熟现象;2)在进化的后期即接近最优解时存在左右摇摆,收敛较慢。

针对遗传算法存在的缺点和不足,王成栋等人提出自适应遗传算法。其基本思想是对Pc和Pm进行调整,对于适应值高于群体平均适应值的个体, Pc与Pm取较小值,使该解得以保护进入下一代;而低于平均适应值的个体,Pc与Pm取较大值,使该解被淘汰掉。故该种方法可提供某个解的相对较佳的Pc与Pm,在保持群体多样性的同时,保证了GA的收敛性,形成自适应算法。具体公式为:

其中:fmax为群体最大适应值;favg为当代平均适应值;f'为要交叉的2个个体中较大的适应值; f为要变异个体的适应值;Pc1、Pc2、Pm1、Pm2取值均小于1。

本文在自适应算法基础上增加了最优保存策略,即是用历代最优个体替换掉当前群体中的最差个体,使迄今为止所得到的最优个体不会被选择、交叉、变异等遗传运算所破坏。具体操作:1)找出当前群体中适应度最高和最低的个体。2)若当前群体中最佳个体的适应度fc比历代最优个体的fh高,则复制该最佳个体取代原先的最优个体而成为新的历代最优个体。3)反之,则不替代,并用历代最优个体替换掉当前群体的最差个体而进入下一轮循环。

2.2 改进GA多参数优化的CMAC控制器设计

在常用的CMAC前馈复合控制器中,CMAC神经网络是局部的逆动态模型[4]。为了使CMAC网络的学习过程包括整个系统控制过程,即包括被控对象和CMAC本身在内的动态逆过程,提高控制系统的稳定性和抗干扰能力,本文设计一种基于改进遗传算法多参数优化的CMAC复合控制器,其结构如图2所示。

图2 基于GA优化的自适应CMAC控制器结构

该控制器在结构上与Miller等人所提出的复合控制结构不同:1)改进型CMAC和PID复合控制器采用系统误差e(k)=Rin(k)-Yout(k)作为权值调整的学习训练信号,采用这种控制结构使得CMAC实现了包含常规PID控制器和CMAC控制器在内的整个系统的逆动态模型,有效的消除常规CMAC复合控制中出现的PID控制器和CMAC控制器在学习中产生冲突,导致系统不稳定的现象,消除原有控制方案中累积误差的影响,进而消除系统的过学习现象[7,8];2)改进的CMAC复合控制中,学习算法采用改进GA对CMAC的学习速率η、α和PID控制器Kp、KI、KD多参数优化,使系统在学习过程中能动态的调整学习速率和PID控制器参数,增强了自适应性和运行的稳定性,使其适应控制系统工况的变化和不确定因素的干扰,从而改善系统的控制品质。

改进后的CMAC复合控制器的工作过程也分为控制和学习两个阶段。控制时将期望输出Rin(k)和系统跟踪误差e(k)=Rin(k)-Yout(k)量化后作为二维地址输入,在CMAC存储器中找到与之对应的C个单元,并将这C个单元中的权重相加,得到CMAC的输出,其中Yout(k)为实际输出信号。

CMAC输出Un(k)与并联的经过GA优化后的PID控制器输出Un(k)相加,得到系统总控制量的输出。

在每一控制周期结束时,采用控制系统的期望输出与实际输出之差修正权值,进入学习阶段。

式中η为学习速率,e(k)为系统跟踪误差,学习目的使系统误差e(k)最小。

2.3 改进GA多参数优化的CMAC控制实现步骤

1)根据经验确定优化参数大约范围k[min,max]并根据式(8)对5个优化参数进行十进制编码;

式中:rand为(0,1)范围内符合均匀概率分布的一个随机数,单个样本为[Kp KIKDη α]。

2)随机产生n个个体形成初始种群P(0);

3)将种群中各个体解码成对应的参数值,用该参数按式(9)求代价函数值J及按1/J求适应函数值f,如果e(t)≤0按(式(10)求代价函数值J;

式中e(t)为系统误差;u(t)为控制器输出的总控制量;tu为上升时间;w1,w2,w3,w4为权值;w4〉〉w1;e(t)=y(t)-y(t-1);y(t)为系统输出;(10)式为了避免超调,采用惩罚函数作为优化目标函数;

4)利用式(3)进行复制操作,即通过适配函数求得适配值,进而求得每个串对应的复制概率;

5)从复制后的成员以Pc的概率选取字串组成匹配池,对池中成员随机匹配,交叉位置也是随机确定的;

6)利用式(4)概率Pm进行变异操作;

7)用历代中适配值最高的个体代替本代适配值最差的个体,于是得到新一代种群P(t=1);

8)若参数不收敛或得不到预定指标返回3);

9)群体中适应值最好的个体经过解码后就是最终的优化自调整参数。

3 自适应GA的多参数优化的CMAC仿真研究

被控对象采用二阶传递函数如(11)式,为了比较其控制性能,同时给出了相同条件下Miller提出的CMAC与PD并行控制常制效果[10]。

常规固定增益PD控制器参数设定为Kp=25,KD=0.28 ,CMAC的参数设定为η=0.1,C=5,N=100;基于改进GA优化的CMAC复合控制器Kp范围[0,30],KI为[0,0],KD为[0,1],η为[0,1],α为[0,1],C=5,N=100,目标函数中权值取w1=0.999,w2=0.001,w3=2.0,w4=100,采样周期T=1ms。

3.1 阶跃信号、方波信号的跟踪性能仿真

当激励信号分别为r(k)=1阶跃信号和幅值为0.5,频率为4Hz的方波信号时的仿真结果如图3所示。从图3的仿真结果比较可以看出,与常规的CMAC复合控制相比,提出的自适应CMAC控制器则具有更快的动态响应能力和跟踪连续变化信号的能力,具有输出误差小、超调量小、实时性好等优点。

图3 跟踪性能仿真结果

3.2 抗干扰性能的仿真

为了验证基于改进GA多参数优化的CMAC自适应控制方案的系统抗干扰能力,当系统运行在0.3s和0.5s之间时,在被控制对象的输入端突加一个幅值为5的脉冲信号,系统跟随r(k)=0.5sin(8πt)正弦波信号时的仿真结果如图4所示,其中Un为CMAC输出信号;Up为参数优化后PID输出信号;U为控制对象的总输入信号;error则为系统的跟踪误差。从该图可以看出,通过CMAC的学习和GA对控制器的参数优化调整,当外加扰动结束后使得PID控制器输出的控制量Up很快为零,CMAC产生的输出控制量Un逐渐逼近控制器的总输出U。与常规CMAC复合控制方案相比,基于CMAC的自适应控制器通过GA的在线优化PID参数和CMAC神经网络的学习率,系统具有明显的抗未知负载干扰能力、鲁棒性强和自适应能力好的优点。

图4 抗干扰性能仿真结果

3.3 鲁棒性仿真

为了考察自适应CMAC控制器在系统参数变化时的鲁棒性,当系统运行在0.3s时,将控制对象的传递函数变为式(12),同时系统仍然跟随r(k)=0.5sin(8πt)的正弦波信号,其相应的仿真结果如图5所示。从图5(a)仿真结果比较可以看出,常规PD控制对控制对象参数变化是敏感的,当出现参数变化时不能很好地跟踪系统给定信号的变化;从图5(b)可以看出,当控制对象的模型参数发生变化后,通过CMAC的自学习和改进遗传算法的在线调节,CMAC产生的输出控制量Uc逐渐逼近控制器总输出U,输出误差始终保持在一个很小的范围内,与常用的CMAC复合控制相比,自适应CMAC控制器则具有鲁棒性好和学习速度快等优点。

图5 鲁棒性仿真结果

4 结束语

在前人理论的基础上,本文提出了一种基于改进GA多参数优化的CMAC神经网络控制器,该控制器以系统动态误差和给定信号量作为CMAC的激励信号,采用改进遗传算法对PID控制参数、CMAC神经网络学习率和惯性量等多参数进行寻优,把常规PID控制、CMAC神经网络和遗传算法的优点结合起来,克服了常规前馈型PID+CMAC复合控制器中多个控制参数难以确定的问题。通过仿真表明,提出的多参数优化的自适应CMAC控制器具有良好的鲁棒性、抗干扰能力和自适应能力。

[1] Albus J S,A new approach to manipulator control:The cerebellar model articulation controller (CMAC),IEEE Transactions ASME Journal of dynamic system,measurement control,1975,9(3):220-227.

[2] Miller W T,Real-time application of neural network for sensor-based control of robots with vision,IEEE Transactions on systems,Man and Cybernetics,1990,19(2):825-831.

[3] 李世敬,王解法,冯祖仁.层叠CMAC补偿的并联机器人变结构控制研究[J].系统仿真学报,2002,14(8):1045-1048.

[4] 周旭东,王国栋,李淑华.小脑模型控制系统的遗传算法最优设计[J].信息与控制,1997,26(6):455-458.

[5] 林旭梅,梅涛.一种基于自适应遗传算法的CMAC的学习率优化研究[J].系统仿真学报,2005,17(12): 3081-3088.

[6] 李敏强,等.遗传算法的基本理论与应用[M].北京:科学出版社,2002.

[7] 蒋志明,林廷圻,黄先祥.一种基于CMAC的自学习控制器[J].自动化学报,2000,26(4):542-545.

[8] 何超,徐立新,张宇河.CMAC算法收敛性分析及泛化能力研究[J].控制与决策,2001,16(5):523-529.

[9] 李辉.一种自适应CMAC神经网络控制器的设计与仿真[J].2005,17(9):2233-2235.

[10]刘金琨.先进PID控制及其MATLAB仿真[M].北京:电子工业出版社,2003.

猜你喜欢

复合控制鲁棒性遗传算法
前馈复合控制在提高遥测跟踪性能中的应用
武汉轨道交通重点车站识别及网络鲁棒性研究
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
基于确定性指标的弦支结构鲁棒性评价
基于遗传算法的智能交通灯控制研究
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
惯性稳定平台扩张状态观测器/PD复合控制
一种基于三维小波变换的鲁棒视频水印方案
基于改进的遗传算法的模糊聚类算法
基于改进多岛遗传算法的动力总成悬置系统优化设计