为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 基于改进遗传算法的PID参数寻优与控制器设计

基于改进遗传算法的PID参数寻优与控制器设计

2018-03-26 14页 doc 33KB 10阅读

用户头像

is_954223

暂无简介

举报
基于改进遗传算法的PID参数寻优与控制器设计基于改进遗传算法的PID参数寻优与控制器设计 基于改进遗传算法的PID参数寻优与控制 器设计 总第233期 2009年第3期 计算机与数字工程 Computer&DigitalEngineering V01.37No.3 78 基于改进遗传算法的PID参数寻优与控制器设计 成学亮尉字王涛 (武汉科技大学信息科学与工程学院武汉430080) 摘要相比传统的调节方法,遗传算法具有更好的鲁棒性,最优性,能较好的实现参数的自动化调节.对标准遗传算 ,并在SGA的基础上进行了改进.改进的遗 法(SGA)进...
基于改进遗传算法的PID参数寻优与控制器设计
基于改进遗传算法的PID参数寻优与控制器 基于改进遗传算法的PID参数寻优与控制 器设计 总第233期 2009年第3期 计算机与数字工程 Computer&DigitalEngineering V01.37No.3 78 基于改进遗传算法的PID参数寻优与控制器设计 成学亮尉字王涛 (武汉科技大学信息科学与工程学院武汉430080) 摘要相比传统的调节方法,遗传算法具有更好的鲁棒性,最优性,能较好的实现参数的自动化调节.对遗传算 ,并在SGA的基础上进行了改进.改进的遗 法(SGA)进行了,研究 传算法从提高全局搜索性能和加快收敛速度出发, 提出了改进的选择算子,交叉算子和变异算子,仿真结果表明,改进的遗传算法的全局搜索性能和收敛速度远远优于标准遗 传算法. 关键词遗传算法PID控制器参数优化 中图分类号TP301.6 ParametersOptimizationandDesignforPIDController BasedonaNewGeneticAlgorithm ChengXueliangWeiYuWangTao (Dept.ofInformationScienceandEngineering,WuhanUniversityofScienceandTechnology,Wuhan430081) AbstractComparedwiththecommonmethods,thetuningmethodbasedonGAcangetbetterparameters,with fewerlimits.Theauthoranalyzedandstudiedthestandardgeneticalgorithms(GA),improvedthealgorithmbasedon SGA.Addedsomenewimprovedsteps,improvedalgorithmefficientlysolvestheproblemofglobalconvergenceandim- provestheconvergencespeed.Thenewstepsareselectoperator,crossoveroperatorandmutationoperator.Theglobal convergenceandtheconvergencespeedofimprovedalgorithmaremoresatisfierthanSGA. Keywordsgeneticalgorithms,PIDcontroller,parametertuning ClassNumberTP301.6 …l刖百 目前随着现代工业控制过程和环境的日趋复 杂化,对PID控制系统的控制品质提出了更高的 要求.由于常规理论整定法复杂,繁琐且效果不 佳,而工程整定法实际上属于人工整定法,需要实 际操作者有一定的控制领域知识和丰富的经验,且 往往整定效果不理想.传统的整定方法当系统结 构和参数发生变化时,需要停下来重新进行整定, 不能满足生产的连续性要求,更不要说一些实时性 要求高的系统;目前随着模糊控制,神经网络,专 家系统智能控制理论的发展,形成了多种智能控制 与PID控制相结合的智能PID控制策略l_1]. 遗传算法(GeneticAlgorithm,GA)研究的历 史比较短,2O世纪6O年代末期到70年代初期,主 要由美国Michigan大学的JohnHolland与其同 事,学生们研究形成了一个较完整的理论和方 法l2],从试图解释自然系统中生物的复杂适应过程 人手,模拟生物进化的机制来构造人工系统的模 型.随后经过20余年的发展,取得了丰硕的应用 成果和理论研究的进展.遗传算法是一种具有良 好的全局搜索能力,鲁棒性好,不需要问题本身解 空间可微,不依赖于先验知识的一种优化算法,近 年来已有很多国内外学者将遗传算法用于PID控 制器的参数优化设计[3]. 针对遗传算法在PID参数调节应用中存在的 遗传算法的局限性问题(如早熟收敛,搜索停滞 等),一些文献在研究GA用于PID参数整定时将 * 收稿日期:2008年1O月21日,修回日期:2008年11月7日 第37卷(2009)第3期计算机与数字工程 标准遗传算法进行了改进.但是,在大多数文献资 料中都忽略了一个问题,即在用遗传算法进行参数 优化的过程中,适应度计算耗用了大部分时间和资 源,减少个体适应度的评价次数才能根本提高优化 速度. 针对遗传算法的编码问题,为了保证算法性能 绝大多数文献对PID控制器的三个参数进行二进 制编码(因为二进制编码比实值编码有更好的搜 索能力),但是没有解决解的精度与计算量之间的 矛盾(编码越短,计算量越小,但精度不高;增加码 长能提高精度,但同时加重了计算量),因此需要一 种高性能的遗传算法. 2遗传算法的改进 2.1编码 由于遗传算法的广泛应用,迄今为止研究人员 已提出许多种编码.总的来说,这些编码方法 可分为二进制编码方法,格雷码编码方法,浮点数 编码方法,符号编码方法等方法.本文使用基于二 进制编码的遗传算法,二进制编码具有以下优点: 1)--进制编码类似于生物染色体的组成,因而 算法易于用生物遗传理论来解释并使得遗传操作 如交叉,变异很容易实现;2)采用二进制编码,算法 处理的模式最多;3)编码,解码操作简单易行;4)符 合最小字符集编码原则; 举例编码方法如下: f(-z1,z2)===lO0(x}一z;).4-(1一Lz;)… 一 2.4084z42.408(一1,2)<上 用长度为10位的二进制数编码串分别表示两 个决策变量.该二进制串可以表示从0,1023之 间的1024个不同的数,所以可以将-z,z离散化 为1023个均等的区域,总共有1024个不同的点. 从离散点一2.048到2.048,依次分别对应于 0000000000(O)111l11111l(1023)之间的二进制 编码.再将表示z,的二进制串连接起来,就形 成了一个20位长的二进制串,其中前1O位表示 ,后10位表示.27.这就是针对这个函数的二进 制编码方法.如果要解码时,将2O位长的二进制 编码分为各1O位两部分,然后再将它们分别转换 为十进制数字,分别记为,z,可知解码公式为: z一4.096×一2.048(1,2)(2) 2.2适应度函数的选取 在遗传算法中使用适应度这个概念来度量各个 个体在优化计算中能达到或接近有助于找到最优解 的优良程度.适应度高的个体遗传到下一代的概率 较大,适应度小的个体就会被淘汰掉.适应度函数 是根据目标函数确定的用于区分群体中个体好坏的 标准,是种群进化的驱动力,也是进行选择的唯一依 据,适应度函数是非负且数值越大越好. 本章要对PID控制器的三个参数进行寻优. 为了获取满意的过渡过程的动态特性,采用误差绝 对值时间积分性能指标作为参数选择的最小目标 函数值.为了防止控制能量过大,在目标函数中加 入了控制输入的平方项选用下式作为参数选择的 最优指标: J—I(叫1le()l+W2(,))dr+3?t (3) 其中,P(,)为系统误差,U(,)为控制器输出,t为上 升时间,w1,7x.,2,w3为权值. 为了避免超调,采用了惩罚功能,即一旦产生 超调,就将超调量作为最优指标的一项,此时最优 指标为: J—l(叫1}(,)l4-硼2(,)4-W4{ey()1) +W3?t(4) 其中Wl,W2,叫3为权值,且W4》3,ey(,)一() 一 (f一1),()为被控对象输出. 则现在适应度函数可以取为: J『(W1IP(,)I+w2U2()+l(,)f)dr1 +W3. l (5) 2.3选择算子 选择(Selection)又称复制(Reproduction),是 在群体中选择生命力强的个体产生下一代群体的 过程.遗传算法使用选择算子来对种群中的个体 进行选择操作;根据每个个体的适应度大小来进行 选择,适应度高的被遗传到下亮等:基于改进遗传算法的PID参数寻 优与控制器设计第37卷 最优解.本文对几种常用的选择经过总结后,提 出如下的一种选择算子. 1)首先计算种群中所有个体的适应度,再对所 有个体的适应度求和; 2)再计算种群中所有个体的适应度与种群适 应度的比值,将每个个体的适应度与适应度之和相 除,再乘于种群个体数; 3)对以上运算得出的数值,凡是大于1的个体 将会被选中进行下步运算; 4)对于本代种群中适应度最高几个个体的直 接进人下一代不参加交叉与变异运算; 5)对于种群中被淘汰的个体的位子,将再次随 机产生个体添满,确保搜索的全局性. 使用这种选择算子,可以很好地保留适应度高 的几个个体不被淘汰和改变,且保证本代适应度最 高的几个个体直接进入下一代种群,不经过交叉, 变异运算,确保优良的遗传基因能够得到遗传,不 良的基因被淘汰. 2.4交叉算子 在自然界的遗传中,两个同源染色体通过交配 而重组,从而产生新的个体.交配重组是生物遗传 和进化过程中的一个主要环节.通过模仿这个环 节,遗传算法使用交叉算子来产生新的个体,它通 过一定的概率从群体中选择两个个体,交叉两个体 的某些位.产生的子代继承了父代的基本特征. 遗传算法中的交叉运算,对两个相互配对的染 色体按照一定的方式交换部分基因,从而形成两个 新的个体.交叉运算可以有效的避免运算过早收 敛,保证搜索的全局性.这也是遗传算法的重要特 征.有许多学者已经研究了很多非常有效的遗传 算子,如:单点交叉,两点交叉,均匀交叉,多点交 叉,顺序交叉,循环交叉,算术交叉等.但是交叉算 子的设计和实现与具体问题密切相关,还要和编码 方式一同考虑,并不是一成不变的,基于本文采用 二进制编码,针对的是PID控制器参数寻优的问 题,采用以下的交叉算子. 由于本文针对的是PID参数寻优的问题,它的 编码是由三个参数的二进制编码连接在一起形成的 二进制串,所以决定采用三点交叉的交叉算子,即让 PID三个参数的二进制串都有一定交叉的概率,且 随机生成交叉点.虽然三点交叉很可能破坏掉好的 个体,但是本文采用的选择算子,对最优秀的个体采 用了保留的方法,确保了最优秀的几个个体不会破 坏,所以在这里采用三点交叉的方法可以增加群体 的多样性,增加寻找到最优解的可能性. 2.5变异算子 在生物的遗传和自然进化过程中,细胞分裂复 制环节可能会因为某些偶然因素影响而产生一些 变化,直接导致生物的某些基因发生变异,从而产 生新的染色体_6],这些变异有些是有益变异,有些 是有害变异.但正是因为变异的存在,使得生物的 多样性成为可能.遗传算法模仿生物遗传和进化 过程中的变异环节,以较小的概率对个体编码串上 的某些位值进行改变,对于本文的二进制编码就是 将”0”变为”l”或者将”1”变为”0”. 遗传算法引入变异运算有以下两个好处: 1)改善遗传算法的局部搜索能力,对于选择和 交叉运算得来的优秀个体,已经很接近于最优解, 通过变异算子来调整个体编码串中的部分基因值, 就可以从局部的角度出发使个体更逼近最优解; 2)维持群体的多样性,防止出现早熟现象.变 异算子用新的基因值替换原有的基因值,从而改变 个体编码的结构,维持群体的多样性. 到目前为止,已经有很多学者研究出一些有效 的变异操作方法.如基本位变异,均匀便宜,边界 变异,非均匀变异,高斯近似变异等.本文采用以 下的变异操作方法. 首先对已经计算出适应度的群体进行升序的 排列,变异概率随适应度的减小而增大,这样使得 优秀个体的变异概率减小,不良个体的变异概率增 大,可以有效地去除不良基因,产生优秀基因.变 异概率如下: P一0.01一I-1:1:size]?0.01/size(6) 其中size为排序后数列的序号,0.01为变异概率. 3遗传算法早熟问题的防止 早熟问题,即未成熟收敛,这是遗传算法十分 常见的问题.当还未达到全局最优解或满意解的 时候,群体不再产生性能超过父代的后代,群体中 的各个个体非常相似.导致整个群体在找到最优 解之前就收敛到一个非优的个体上. 3.1早熟问题产生的原因 早熟问题产生的主要原因有以下几点: 1)理论与实际的距离,在理论上选择,交叉,变 异操作都是精确且相互间协调,能搜索到整个空 间,但具体实现时很难做到. 2)所求解的问题对于标准遗传算法来说比较 困难时,遗传算法就会偏离寻优方向,即遗传算法 第37卷(2009)第3期计算机与数字工程81 的欺骗问题. 3)遗传算法处理的群体是有限的,因而存在误 差. 上述三个方面都可能产生早熟现象,使群体中 个体的多样性过早的丢失,得到局部最优解. 在遗传算法处理过程的每个环节都有可能遇 到早熟的因素,在迭代的过程中,未得到最优解之 前,群体就失去了多样性,表现如下: 1)在迭代的初期即产生了很高适应度的个体 x; 2)在基于适应度比例的选择下,其他个体被淘 汰,大部分个体与X一致; 3)相同的两个个体进行交叉,不能生成新的个 体; 4)变异生成的个体适应度高但数量少,淘汰的 概率很大; 5)群体中的大部分个体都处于和X一致的状 态. 对于遗传算法的应用,解决早熟问题是必要 的,否则,遗传算法的全局寻优能力和其他优秀品 质将无法体现,遗传算法的优越性也无从谈起. 3.2早熟问题的防止 在分析了早熟问题产生的原因后,就要防止该 现象的出现,维持群体的多样性直至最优解或满意 解出现.本文将采用重新启动的方法来避免早熟 现象. 重新启动是实际应用中最早出现的方法之一, 在遗传算法搜索中遇到早熟问题时,则随机选择一 组初始值重新进行遗传算法操作l6].在本文中,上 一 代的最优个体与本代的最优个体进行比较,如果 两者相等,则说明遗传算法进入了早熟状态,随机 选择一组初始值进行运算,另外为了保存以前的运 算结果,使收敛的最优个体进入下一代进行运算, 保留优秀的基因. 4仿真结果 本文选取被控对象的二阶传递函数如下: 1 G(S)一—$2—+2—S一+1(7) 采样时间为lOOms,输人为阶跃信号.目标函 数选取如下: r.. J—I(叫1le(,)I+2U())dr+叫3?tJ0 (8) ifey()<O J===J(叫1IP()I+训2”(,)+ley(f)1)dt+叫3 ?t(9) P()为误差,U(f)为控制器输出,t为上升时 间;叫1,训,3为权值;()为被控对象的输出. 遗传算法中使用的样本个数为30,交叉概率和 变异概率分别为:P一0.9,Pm一0.003,参数的取值 范围为:K,K,.取一0.799,一0.01,一 1.0,W4—10采用二进制编码,获得优化参数为:PID 整定结果为k一11.2502,k一3.4712,===2.0205 性能指标J一7.4564.代价函数的优化过程和采 用整定后的PID控制阶跃响应如图1和图2所示. 图1代价函数 J的优化过程 5结语 图2整定后的PID 控制阶跃响应图 针对基本遗传算法早熟收敛,局部搜索能力不 足等问题,本文对基本遗传算法进行了一些改进, 主要是对编码,选择算子,交叉算子,变异算子进行 了改进.针对遗传算法早熟收敛的问题采用了重 新启动的方法,经过MATLAB仿真后,证明改进 是有效的,防止了遗传算法早熟收敛的问题. 参考文献 [1]王耀南.智能控制系统[M].长沙:湖南大学出版 社,1996 E2]HollandJH.AdaptationinNaturalandArtificial Systems[M].AnnArbor:TheUniversityofMichigan Press,1975 [-3]GrefensteteJJ.optimizationofcontrolparameters forgeneticalgorithms[-J].IEEETrans,SMC,1989,16(1): 122,128 [-4]Mzhang.DPAthertorLAutomatictuningofopti— mumPIDcontrollers[J].IEEEprocD,1993,140(3):216, 244 [5]W.Huang,H.N.La叽Usinggeneticalgorithms tOoptimizecontrollerparametersforHVACsystems[J]. energyandbuidings.1997,26:277~282 E6]雷英杰,张善文,李续武等.MATLAB遗传算法工 具箱及应用[M].西安:西安电子科技大学出版社,2005
/
本文档为【基于改进遗传算法的PID参数寻优与控制器设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索