基于GA的DRNN-PID算法在多电机系统中的应用
2012-06-09王智琳刘金保
王智琳,李 彦,刘金保
(江苏科技大学 江苏 镇江 212003)
在当前的工业生产过程中,如冶金、造纸、纺织、建材等领域,经常需要多台电机传送和卷取产品。为使产品不被拉断和堆积,提高产品运送的质量和效率,电机之间需保持协调运行,其中同步误差的控制是一个关键问题,它与系统的张力及电机间的转速之差有关,因此速度和张力的控制是多电机同步系统协调运行的关键。
而在多变量非线性强耦合控制系统中 ,若不采取一定的解耦措施难以获得满意的控制效果。传统的控制方法一般要首先知道对象参数 ,然后设计解耦器、控制器,这个过程比较繁琐,且常依赖于对象数学模型的准确性。因此传统的方法难以实现有效控制。神经网络解耦控制是控制理论界的重大课题之一,尤其适用于传统控制方法难以解决的问题,因此更具有研究价值。
目前有许多神经网络与PID结合的控制算法,对对象基本无要求,但是算法对初值选择要求较高,尽管采取了如带动量项的梯度下降法,变学习速率法等改进,还是会不可避免的陷入局部极值,且有时会振荡,文中对此采用了更具动态特性的对角递归神经网络 (Diagonal Recurrent Neural Network,DRNN)与PID相结合;并利用遗传算法(Genetic Algorithm,GA)的全局寻优特性来优化网络初值[1],以此用GA和DRNN两者的优点使系统获得更好的控制效果。
1 三电机系统
如图1为3台电机的速度张力运行时的简单物理模型,各电机轴上安装有皮带轮,电机之间通过皮带轮上的传输带连结;当电机运转时,转子旋转拉动皮带协调运行。
图1 多电机同步系统的物理模型Fig.1 Physical model of multi-motor synchronization system
根据虎克定律,考虑前滑量,相邻两台电机之间的张力表示为:
上式中有 1≤i<j≤3,Ki为传递系数,Tij为张力变化时间常数;ri、ki、ωri分别为第 i电机的半径、 速比和第 i台电机的电气角速度;rj、kj、ωrj分别为第 j电机的半径、速比和第 j台电机的电气角速度;npi和npj分别为两电机的磁极对数。
根据电机学中的拖动方程和公式(1)得到3台电机同步系统在磁场定向模式下的数学模型:
由上易知,此对象是一个高阶、多变量、非线性、强耦合系统,尤其是速度和张力间的耦合,所以对于该系统的控制,如果以其中一台电机为主电机,其他两台为从电机,则可减小控制难度。
2 基于GA的DRNN-PID算法
鉴于本对象的特性,文中采用了基于遗传算法的DRNN的PID控制算法。
图2 控制结构图Fig.2 Control chart
图2为本算法的控制结构图。其中DRNN网络为Elman网络的一种简化[2-3],它包含有输入层,隐层和输出层3层,其中隐层为回归层。设 I=[I1,I2,…,In]为网络输入向量,Ii(k)为输入层第i个神经元的输入,sj(k)为第j个回归神经元输入总和,O(k)为网络输出, f(·)为双 S 函数:f(x)=(1-e-x)/(1+e-x),DRNN的输入输出映射关系为:
上式中 r(k)为给定输入;u(k)为 DRNN-PID 控制器的输出,也即控制对象的输入;y(k)为控制对象的输出;T为采样周期;而系数 kp(k)、ki(k)、kd(k)采用 DRNN 网络进行整定:
上式中 E=0.5(r(k)-y(k))2,K 分别代表 PID 的 3 个系数:Kp,Ki,Kd;μ表示其各自对应的学习速率;X分别表示其对应的 x1,x2,x3 值;∂y/∂u 由 DRNN 网络辨识。
网络权值训练可采用梯度下降法:
上式中 Pj(k)=∂Xj(k)/,Qij(k)=∂Xj(k)/,且
故可知DRNN与PID结合的算法的步骤是:
1)网络输入层、回归层、输出层权值赋予小的随机初值,并设定网络各层的学习速率和惯性系数;
2)PID 控制器参数 kp,ki,kd 赋初值, 并同时给 Pj、Qij赋零初值;
3)计算PID控制器的输出u,将u和系统输出y作为网络输入I;
4)对神经网络的权值进行实时修正;
5)令 k=k+1,返回步骤 3。
当设计的系统稳定时,ym(k)≈y(k),则有:
而通常情况下随机赋的初值很难使网络得到很好的结果,且容易出现本文引言中提到的缺点:易振荡,易陷入局部极小值点等,所以需要优化初值。此时采用遗传算法(GA)的全局搜索特点来对DRNN的初值进行初步优化。
需要注意的是鉴于GA算法的特性,很难实现在线调整网络的初值,因此需要离线训练,文中采用改进的GA算法,采用实数编码,选择时采用轮盘赌法和最优保留法相结合,而交叉和变异时采用自适应交叉率和变异率,具体方法如下:
1)实数编码 它是对原参数直接进行遗传操作,具有求解精度高、便于大空间搜索等优点。编码时,每个连接权值直接用一个实数表示,整个网络的权值分布用一组实数表达,所有的每个权值按一定顺序级联为一个长串,即为一个染色体。2)自适应交叉和变异 交叉率和变异率的算式分别如下:
上式中α1和α2为大于0的常数,文中都取为1.5;fmax为最大适应度值,favg为平均适应度值,为交叉前两父串中适应度值较大者,f为需变异位串适应度值;Pc1、Pc2和 Pm1、Pm2为预先指定的常数,分别取为 Pc1=0.9,Pc2=0.6,Pm1=0.1,Pm2=0.001。 这样做的好处是:①可相应提高群体中表现优良的个体的交叉率和变异率,使得它们不会处于一种停滞不变的状态;②对于群体中适应度小于平均适应度的个体,其交叉率和变异率将以较大的概率进行交叉和变异;③对于群体中适应度大于平均适应度时,其交叉率和变异率以接近当前最佳适应度的形式进行动态调整,其调整沿着适应度增大的方向以指数衰减方式进行,衰减的强弱以系数α1和α2表示。
变异策略采用下述方法:
待变异个体 X=(x1,x2,…,xi,…,xk)的变异点基因值 xi的取值范围是[ximin,ximax],则变异后的新基因值由下式决定:
上式中rand为 (0,1)上的随机数,t为当前进化代数,T为最大进化代数,b为系统参数,一般取为2。该算法在开始阶段(t较小时)变异范围大,而在进化后期(t接近T)主要进行局部搜索,变异范围越来越小,由此产生的新基因值更接近原基因值,这样使得最优解的搜索更加集中于某一最有希望的重点区域中。
3 实验结果和仿真分析
图4是以文中的三电机系统[公式(2)]为对象的控制效果,3台电机以1主2从形式,图中wr1为主电机的转速,F12,F23分别表示第1、2台电机间和第2、3电机间的两个张力。该算法的关键是前期遗传算法的搜索要获得的大致的全局最优点,后面DRNN的精确调整就容易得多。
图3 基于GA的DRNN-PID的控制效果图Fig.3 Control rendering of DRNN-PID algorithm based on GA
图4 三电机系统控制效果图Fig.4 Control rendering of three motor system
4 结束语
综上得出,基于遗传算法的DRNN的PID控制算法完全不依赖于对象模型,通过恰当的训练和学习就可以获得很好的控制效果。算法结构简单,易于实现,应用在速度和张力的解耦控制或其他工业控制场合很方便,具有很好的推广应用价值。
[1]徐丽娜.神经网络控制[M].3版.北京:电子工业出版社,2009.
[2]张今朝,刘国海,潘天红.多电机同步系统的多模型辨识[J].电机与控制学报,2009,13(1):138-142.ZHANG Jin-zhao, LIU Guo-hai, PAN Tian-hong.Multimodel identification to multi-motor synchronous system[J].Electric Machines and Control,2009,13(1):138-142.
[3]KU Chao-lee,Lee K Y.Diagonal recurrent neural networks for dynamic systems control[J].IEEE.Transactions on Neural Networks,1995,6(1):144-156.
[4]XUN Liang.Comments on Diagonal recurrent neural networks for dynamic system control reproof of theorems 2 and 4[J].IEEE.Transactions on Neural Networks,1997,8(3):811-812
[5]韩贵金.一种基于对角递归神经网络的PID解耦控制器[J].电子科技,2007(9):22-26.HAN Gui-jin.A PID decoupling controller based on DRNN[J].Electronic Science&Technology,2007(9):22-26.
[6]段慧达,郑德玲,刘聪.基于对角递归神经网络的建模及应用[J].北京科技大学学报,2004,26(1):103-105.DUAN Hui-da, ZHENG De-ling, LIU Cong.Modeling and application based on diagonal recurrent neural network[J].Journal of University Beiing of Science and Technology,2004,26(1):103-105.
[7]王晓哲,顾树生.基于遗传算法的PID神经网络解耦控制[J].控制与决策,1999,14(Suppl):617-620.WANG Xiao-zhe,GU Shu-sheng.A PID neural network decoupling control based on genetic algorithm[J].Control and Decision,1999,14(Suppl):617-620.