基于PSO优化算法的RBF神经网络预测控制

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

基金项目:国家自然科学基金资助项目(60575009)作者简介:杨鹏(1960-),男,河北昌黎人,教授,博士生导师,要从事计算机智能控制、智能假肢等方面的教学与科研工作,Email:w033202202@yahoo.com.cn基于PSO优化算法的RBF神经网络预测控制杨鹏王桂玲张燕(河北工业大学电气与自动化学院天津300130)摘要:针对传统的RBF神经网络学习策略上的的缺点,将PSO优化算法应用到神经网络预测控制中,提出了提出了基于PSO-RBF优化策略的模型预测器。并用PSO完成对神经网络预测控制的滚动优化,对滚动优化的传统目标函数做了改进。仿真结果表明基于PSO的神经网络模型预测器预测精度高,误差小。应用PSO优化的控制器响应速度快,控制效果好,证明了该方法的可行性。关键词:PSO优化算法;RBF神经网络;预测控制;滚动优化中图分类号:TP273文献编码:ARBFNeuralNetworkPredictiveControlBasedOnPSOAlgorithmYANGPengWANGGui-lingZHANGYan(SchoolofElectricalEngineeringandAutomationHebeiUniversityofTechnologyTianjin,300130,China)Abstract:FortheshortcomingofthetraditionalRBFneuralnetworkstudyingstrategy,combiningmodifiedparticleswarmoptimization(PSO)withneuralnetworkpredictivecontrol(NNPC),Thispaperproposedamodel-predictioncontrollerbased-onmodifiedparticleswarmoptimization(PSO)andradialbasisfunction(RBF)optimizationstrategy(PSO-RBF).andfinishedthewholerollingoptmizationproceducebyPSOforNNPC,thetraditionalobjectivefunctionofrollingoptmizationisimproved.Simulationresulthasshownthatthemodel-predictioncontrollerbased-onPSO-RBFhasmanyadvantagessuchashigherprecision,smallerrors.TheControllerbased-onPSOhastheadvantagesofhighreliabilityandfastresponsespeed,andthefeasibilityisproved.Keywords:PSOAlgorithm;RBFNeuralNetwork;PredictiveControl;rollingoptmization1引言对于大多数工业过程来说,几乎都具有不确定性、非线性、变量间的关联性以及信息的不完全性和大纯滞后性等特性,这就使得单纯的预测控制算法显得力不从心。RBF神经网络具有简单的拓扑结构、学习速率快学习过程透明等优点。但是传统的RBF神经网络的学习策略有很大的缺点,他们只能在局部空间寻找最优解,来确定网络结构参数,目前,在理论上很难求得网络结构等参数的最佳值。粒子群优化(ParticleSwarmOptimization-PSO)算法[1]是近年来发展起来的一种新的进化算法(EvolutionaryAlgorithm-EA).PSO算法属于进化算法的一种,和遗传算法相似,它也是从随机解出发,通过迭代寻找最优解,它也是通过适应度来评价解的品质.但是它比遗传算法规则更为简单,它没有遗传算法的“交叉”(Crossover)和“变异”(Mutation)操作.它通过追随当前搜索到的最优值来寻找全局最优。本文将神经网络预测控制和粒子群优化算法(PSO)相结合,提出了一种基于粒子群算法的预测控制。利用PSO算法来对传统的RBF神经网络学习策略进行优化,经过PSO算法优化得出来的参数就是全局最优参数,并用PSO优化算法进行实时在线滚动优化,通过对已辨识模型的控制仿真,表明该控制算法具有较好的控制效果。2粒子群简介PSO初始化为一群随机粒子(随机解)。然后通过叠代找到最优解。在每一次叠代中,粒子通过跟踪两个极值来更新自己。第一个就是粒子本身所找到的最优解。这个解叫做个体极值pb.另一个极值是整个种群目前找到的最优解。这个极值是全局极值pg。另外也可以不用整个种群而只是用其中一部分最为粒子的邻居,那么在所有邻居中的极值就是局部极值。在找到这两个最优值时,粒子根据如下的公式来更新自己的速度和新的位置:图1RBF神经网络结构图))()((*()*2))()((*()*1)(*)1(kxkpgrandckxkpbrandckvwkv(1))1()()1(kvkxkx(2)v是粒子的速度,x是当前粒子的位置.Pb和pg如前定义,rand()是介于(0,1)之间的随机数.c1,c2是学习因子.通常c1=c2=2.05。,w是惯性权重。为了改善算法的收敛性能通常取tMaxttMaxwMinwMaxwMaxw)(*)((3)其中wMax,wMin分别为最大、最小加权系数,t为当前迭代次数;tMax为算法迭代总次数。3粒子群在神经网络预测模型中的应用3.1预测模型设系统辨识模型为)](,),(),(,),([)1(ˆmkukunkykyfkyNN(4)其中n和m分别为输出)(ky和输入)(ku的阶次,NNf是用一个神经网络逼近的非线性函数,将(4)式作为系统预测模型,即得一步向前预测,利用迭代算法可得P步向前预测模型:)]1(,),1(),1(,),1([)|(ˆmjkujkunjkyjkyfkjkyNNPj,,2,1(5)在RBF的结构中,TnxxxX],,,[21为网络的输入向量。设网络的径向基向量TmhhhH],,,[21,其中jh为高斯基函数[2]:yˆW2xnx1x1hmh22||||expjjjbCXhmij,,2,(6)其中网络的第j个节点的中心矢量为],,,[21jnjjjcccC,设网络的基宽向量为:Tmbbbb],,,[21,b是节点j的基宽度参数,且为大于零的数。网络的权向量为:Tm],,,[21,辨识网络的输出为:mmhwhwhwky2211)(ˆ(7)辨识器的目标函数为:21)](ˆ)([21kykyJnk(8)RBF网络的性能主要取决于隐藏层函数的中心和宽度以及输出层的权值。在确定这些参数的时候,传统的RBF神经网络的学习策略有很大的缺点,他们只能在局部空间寻找最优解,来确定网络结构参数,如果这些参数设置不当,会造成逼近精度的下降甚至网络的发散[4],因此在本文中选择了PSO算法对传统RBF神经网络的学习策略进行优化。需要优化的参数有中心矢量c,基宽向量b,以及权向量w,它们在PSO中表示的是粒子的位置:],,2,1;,,2,1;,,2,1[[]wmwwcjncjcjbmbbpresent(9)优化算法设计步骤:步骤1初始化粒子群及神经网络;步骤2计算各粒子的适应度;步骤3对每个粒子,比较它的适应度与它经历最好位置的适应度,如果更好,更新pb步骤4对每个粒子,比较它的适应度与群体所经历最好位置的适应度,如果更好,更新pg;步骤5更新粒子的速度和位置;步骤6重复步骤2~4,直到达到计算要求为止;步骤7将群体所经历最好位置解码后的值作为RBF神经网络的结构参数,并对网络进行学习;步骤8停止运算。4粒子群优化神经网络控制器滚动优化是预测控制的核心,它保持了控制的原理,但不是进行全局的整体优化,而是随时间推移逐步优化,在每一时刻都提出一个立足于该时刻且仅涉及到预测时域的局部优化指标,进行反复在线优化。在滚动优化过程中选取的系统性能指标函数为:)1()()1()1()1()()(][)1()]()([12112021ikuikuikujkyjkyejkyjkyeeeikujkyjkyJcrjcrjjjPjMicrPj(10)上式较传统的目标函数多了一项21][jjee,在这里称其为微分项,它的作用和传统PID控制中的微分作用类似,可提前动作,减小系统的超调量,缩短调节时间,该微分项在较复杂系统尤其在实际控制中效果比较明显[3]。在预测系统Pk时刻的输出时,通过引入k时刻的实时输出信息进行校正,构成闭环控制以减少静差及减小由于时变、扰动等原因造成的模型失配对系统的影响。系统的预测校正误差为:)(ˆ)()(kykyke(11)在预测误差校正下系统的闭环预测输出为:)()|(ˆ)|(khekikykikyc(12)目前最广泛采用的参考轨迹为一阶的,其定义为:)()1()1()()()(krikyikykykyrrr(13)式中Pi,,2,1,)(kr为系统设定值,)1,0(为柔化因子,)(ky为系统的实际输出值。滚动优化计算是建立在上述预测输出基础上的,要获得最优控制律,必须使式(10)所示的性能指标函数值为最小,一般采用梯度下降法令0)(kuJ,显然当预测步数较大时,该计算过程非常复杂,而且在考虑约束的情况下则需求解有约束的二次规划,要求目标函数和约束条件可微,一般只能求得局部最优解。尤其对于快速系统将不能满足实时性要求。为避免这种复杂性本文采用PSO进行滚动优化。采用PSO进行滚动优化就是从控制量的允许区间寻找一组最优控制序列[4]{u*(t+j-1),j=1,2,…,M},使得目标函数J最小。利用粒子群滚动优化的步骤:步骤1初始化;步骤2计算出系统的当前实际输出y(k)及模型输出)(ˆky;步骤3进入PSO优化;步骤4在每次PSO迭代中,根据每个粒子的位置计算出预测系统的未来输出)(ˆiky,及经过误差校正下的实际预测输出)(ˆikyc;步骤5计算目标函数,并根据目标函数得到粒子个体最优及全局最优;步骤6重复步骤4~5,直到达到计算要求为止;步骤7把种群最优值对应的粒子位置的第一个时间序列用到对象上;步骤8是否到达仿真时间,是则停止运算,否则返回步骤2。5应用仿真5.1仿真比较选取文献[6]中的非线性系统模型:23)1(1)1(1_)(kykyuky输入为阶跃信号。RBF采用2-4-1,粒子数m取25,b的范围是[3,0.1],c的范围是[3,-2],w的范围是[1,-1],=0.1,c1=c2=2.05,wMax=0.9,wMin=0.4,预测步长P=8,控制步长M=2。=0.8,=0.06,=0.5。图2是RBF以及PSO—RBF的模型辨识误差比较。从中我们可以看出基于PSO—RBF的辨识误差小,能够达到更高的辨识精度。从图3可以看出通过PSO滚动优化后,系统能很快的跟踪到设定值,提高了响应速度,缩短了调节时间。图2PSO—RBF和RBF的模型辨识误差图3PSO—RBF和RBF网络跟踪设定值曲线5.2针对锅炉温度系统模型本文所应用的系统是基于MATLAB的半实物混合仿真平台上的锅炉系统,该系统是应用MATLAB/SIMULINK下的RTW工具箱,并结合浙江天煌公司的THJ-3型高级过程控制对象系统实验装置为硬件系统设计并搭建的。该锅炉系统是一个带有输入时滞和惯性时滞的非线性系统。被控量是锅炉内胆的温度。由系统辨识,得锅炉的近似模型为一个一阶大滞后系统,用传递函数近似表示为sessG4517986.15)(,用此函数代替被控对象锅炉系统,把上述方法应用到此仿真平台的锅炉

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功