资源描述
基于合作粒子群算法的基于合作粒子群算法的PID神经网络非线性控制系统神经网络非线性控制系统汇报人:张辉汇报人:张辉 导师:郭强导师:郭强20122012年年4 4月月2424日日 北京科技大学冶金工程研究院北京科技大学冶金工程研究院Engineering Research Institute of USTBEngineering Research Institute of USTB来源:朴海国,王志新,张华强.基于合作粒子群算法的PID神经网络非线性控制系统J,控制理论与应用,2009年12期.12作者简介:作者简介:朴海国(1977),男,博士研究生,目前研究方向为兆瓦级风力发电机组偏航控制系统研究,E-mail:;王志新(1964),男,教授,博士,博士生导师,目前研究方向为风力发电及其控制、智能机电控制系统、制造执行系统;张华强(1967),男,教授,博士,目前研究方向为阵变换器的控制策略、基于矩阵变换器的交流励磁变速恒频风力发电技术研究.PID神经元网络(PIDNN)模型为一种新型的神经网络模型,兼有PID与神经网络的共同优点,应用于复杂的控制系统,取得优良控制性能,但其后向传播算法(BP)限制了该模型的应用范围.为实现对非线性多变量系统的有效控制,扩展神经网络的应有范围,本文采用PIDNN神经网络设计了多变量PIDNN神经网络(MPIDNN)控制器,并用本文作者提出的合作粒子群算法(CPSO)取代了传统BP后向传播算法,通过比较MPIDNN CPSO、MPIDNNCRPSO、MPIDNN PSO和MPIDNN BP4种控制器的控制性能,仿真结果表明,基于CPSO算法的MPIDNN控制器实现了对非线性多变量不对称系统的有效控制.与传统的BP算法相比,CPSO算法提高了控制系统的稳定性、精确性与鲁棒性.1.1.摘要摘要32.PIDNN神经网络结构与算法PIDNN基本结构由3部分构成:输入层、隐含层和输出层.输入层包含两个比例神经元,一个用于输入系统给定,一个用于输入系统输出反馈.输出层则由一个比例神经元构成,用于被控系统控制量的输出.隐含层为PIDNN主要构成部分,含有3种神经元:比例神经元(P)、积分神经元(I)和微分神经元(D).网络结构与单变量控制系统如图1所示:4图1 PIDNN控制系统基本结构图52.1 前向传播算法 由图1可知,PIDNN前向传播算法也是由3部分构成.输入层中,两个神经元的输入输出函数定义如下式:式中:i=1;2,为输入层比例神经元编号;k为采样时刻;q 为输入最大限制值;q为超过最大限制值q时的实际输出值;ui(k)为输入层第i个神经元在k采样时刻的输入值;xi(k)为输入层第i个神经元在k采样时刻的输出值.在隐含层中,神经元的输入定义如下:式中:j=1;2;3,为隐含层神经元编号;为输入层与隐含层之间的连接权值.6隐含层各神经元的输入输出函数分别定义如下式:在输出层中,唯一的比例神经元,其输入定义为:式中:h=1,为输出神经元的编号,为隐含层与输出层的连接权值.输出层比例神经元的输入输出函数为下式:2.2 价值函数与后向传播价值函数与后向传播(BP)算法算法 价值函数为神经网络训练的依据,作为评估方法,在神经网络控制器设计中不可或缺.基本PIDNN的价值函数定义如下:m为采样点总的数目;r(k)、y(k)分别为控制系统的输入和输出.第n0步后,BP算法的权值修改公式为:式(9)中:为学习步长;其符号的正负决定权值的变化方向,其数值只影响权值的变化速度,而权值变化速度可以通过学习步长加以调节,因此,这种替代是许可的。93.CPSO合作粒子群算法与合作粒子群算法与MPIDNN控制系统控制系统3.1.1 传统PSO粒子群算法 PSO为一种新颖的进化算法,来源于对鸟群或鱼群寻索食物的模仿。PSO中的每个粒子代表着一只飞鸟或是一条鱼,拥有一个位置和一个速度,分别代表最优问题在解空间的解与搜寻方向。每一个粒子根据自身在搜寻过程中获得的最好经验pbest与全群粒子在搜寻过程中的获得的最好经验gbest来调整自身的速度与位置.粒子的速度与位置更新公式为:3.1 CPSO合作粒子群算法合作粒子群算法式中:v与x代表粒子的速度与位置;k为采样时刻;w为平衡PSO算法全局搜索能力与局部搜索能力的时间衰减因子;c1与c2为正值的加速常数;r1与r2为介于0与1之间的随机数值;pbest代表粒子自身发现的最优位置;gbest为全群粒子发现的最优位置.103.1.2 CRPSO随机合作粒子群算法 CRPSO的目标是使用多个子群来搜寻解空间的不同部分,通过采用随机合作机制来平衡全局搜索与局部搜索能力。在CRPSO算法中,每一子群中的粒子通过随机方式选择其他子群发现的最优位置gbest 用于更新粒子速度与最优位置.CRPSO的速度、位置更新公式如公式(11)所示:式中:i=1,n,为算法中子群的数目;r为介于1到n之间的随机整数,用于选择不同子群间的最优位置值gbest,以期达到信息共享的目的,并提高算法的全局与局部搜索能力。3.1.3 CPSO合作粒子群算法 为提高算法在控制上的全局与局部搜索能力,CPSO算法通过随机方式使用其他子群最优位置gbest,并保留每个子群自身最优位置gbest,同时将两种最优位置值用于子群中粒子的速度与最优位置更新.CPSO算法的更新公式定义为:式中0.5用于平衡粒子最优位置pbest、子群自身最优位置gbest与其他子群最优位置gbest(r)在更新公式中的作用。3.2 多变量多变量PIDNN(MPIDNN)控制系统控制系统3.2.1 MPIDNN控制系统结构为实现非线性不对称MIMO系统的解耦控制,建立了MPIDNN控制系统.结构图如图2所示,由图2可知,被控系统为3输入2输出多变量系统,各层间的连接权值分别定义为wsij与wsjh,其中s为基本PIDNN网络结构的数目;i,j,h定义如前。13 与单变量PIDNN控制系统相比,MPIDNN控制系统中的输出层由基本PIDNN网络结构的输出共同决定.同时,价值函数与权值修改公式相应的改变为:14式(14)中:为学习步长;3.2.2 CPSO训练实现训练实现MPIDNN控制系统的控制训练过程可简单的归结为如下步骤:1.初始化MPIDNN与CPSO的全部参数;定义速度、位置的维数与范围。2.初始化所有子群粒子的速度与位置。3.计算第一步仿真步中每一个粒子的价值函数值,即所有粒子的适应值;初始化每一子群。4.随机产生1至n中的随机整数r。5.根据公式(11)更新子群中第i个粒子的速度与位置。6.如果f(xi)f(pbest),则更新子群中第i个粒子的pbest。7.如果f(pbest)f(gbest),则更新子群的gbest.8.保存所有子群中最小的gbest于gbest中.9.重复Step4.8,直到设定的最大循环仿真步数.10.应用gbest中存储的权值最优解控制MPIDNN控制系统.15
展开阅读全文