首页 基于MATLAB遗传算法工具箱的控制系统设计仿真

基于MATLAB遗传算法工具箱的控制系统设计仿真

举报
开通vip

基于MATLAB遗传算法工具箱的控制系统设计仿真 第 12卷 第 4期 广 西 工 学 院 学 报 2001年 12月 JOURNAL 0F GuANGXI uNIVERs1TY oF TECHNOL0GY Vo1.12 No.4 Dec 200I 文章编号 1004—6410(2001)04—0006—04 基于MATLAB遗传算法工具箱的控制系统设计仿真 姜 阳 ,孔 峰。 (1广西大学电气工程学院,广西 南宁 530004;2.广西工学院电子信息与控制工程系,广西 柳州 545006) 捕 要:本文介 绍了基 于 MATLAB的遗...

基于MATLAB遗传算法工具箱的控制系统设计仿真
第 12卷 第 4期 广 西 工 学 院 学 报 2001年 12月 JOURNAL 0F GuANGXI uNIVERs1TY oF TECHNOL0GY Vo1.12 No.4 Dec 200I 文章编号 1004—6410(2001)04—0006—04 基于MATLAB遗传算法工具箱的控制系统设计仿真 姜 阳 ,孔 峰。 (1广西大学电气工程学院,广西 南宁 530004;2.广西工学院电子信息与控制工程系,广西 柳州 545006) 捕 要:本文介 绍了基 于 MATLAB的遗传算法工具箱 (GAOT),阐述了如何利用遗传算法工具箱结合 SIMULINK平台米实现控制系统的设计和仿真t井给出利用遗传算法工具箱对 PID控制器进行参数整定的仿真 实例。 关 键 词:MATLAB~遗传算法 (GA);控制系统仿真 中囤分类号:TP273 5 文献标识码:A O 引言 遗传算法 (GA)是一种成熟的具有极高鲁棒性和广泛适用性的全局优化方法。由于遗传算法不受问题 性质 (如连续性、可微性)限制,能够处理传统优化算法难以解决的复杂问题,因此它在控制系统优化方 面具有巨大潜力。近年来 .遗传算法在控制领域的PID控制、线性和非线性控制、最优控制、鲁棒性、自 适应控制、滑模、模糊逻辑、神经网络、参数估计和系统辨识、模型线性化和控制器降阶、机器人手臂控 制和轨迹规划等方面均得到了广泛的应用 ]。 MathWorks公司推出的MATLAB软件包集强大的数值计算、便捷的图形图像处理、友好的界面于一 身,现在已经开始成为控制领域不可缺少的工具。与此同时,控制领域许多学者将 自己擅长的控制手段用 MATI AB加以实现,出现了诸多的MATI AB工具箱,如:非线性控制工具箱、神经网络工具箱、模糊控 制工具箱等等。本文将讨论利用MATLAB遗传算法工具箱GAOT实现控制系统设计和仿真的新方法。 1 遗传算法工具箱结构与功能 遗传算法工具箱GAOT包括了许多实用的函数,这些函数按照功能可以分为以下几类 1、1 主界面 函数 主程序 ga、iTs提供了遗传算法工具箱与外部的接口。在MATI AB环境下,执行ga并设定相应的参数, 就可以完成优化 它的格式如下: function[x,endPop,bPop,tracelnfo]=ga(bounds,evalFN.evalOps,startPop,opts⋯ .termFN,termOps, selectFN,select0ps,xOverFNs,xOverOps,mutFNs,mutOps) 由于 MATI AB是以矩阵为基本运算单元,因此它的每一个出口参数和人 口参数均为矩阵。主程序 ga.m的出、人 口参数组成是 : 出口参数: x;找到的最优解,包括染色体和适配度;endPop:最终种群;bPop:种群变化的记录;tracelnfo:记 录每一代的最好适应度和平均适应度。 鉴墓昙害 2广0<西)1毂-07育-0厅6科研基金资助项目.桂毂科(98)l一6l号 作者简介:姜阳 (1976一).男一陕西铜川人.广西大学电气T程学院硬士研究生 维普资讯 http://www.cqvip.com 第 4期 姜 阳等:基于 MATLAB遗传算法工具箱的控f}l系统设计仿真 7 入 口参数: bounds:变量上下界矩阵,矩阵的行数确定变量个数;evalFN :适应度函数;evalOps:适应度函数 参数:startPop:初始种群;opts:选项;terraFN :终止函数{termOps:终止函数参数;selectFN :选择 函数;sdectOps:选择函数参数;xOverFN :交叉函数:xOverOps:交叉函数参数}mufFN :变异函数; mutOps:变异函数参数。 当输人参数有缺省时,工具箱为startPop以后的参数设定了默认值。输出参数有缺省时,MATI AB将 先忽略后面的参数,没有指定输出参数时,将最优解赋给变量 “ans” 这类函数还包括两个初始化函数 initializega.m和initializeoga.m,前者是二进制格式和浮点数格式的初 始化函数,后者是 “有序数据” 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示的胡始化函数 l 2 选择 函数 遗传算法工具箱提供了三个选择函数roulette.m,normGeomSelect.rn和tournSeleet.m。roulette.m是常 用的轮盘赌法,normGeomSeleet.m是基于归一化的优先选择法,tournSeleet.m则是竞争选择法。 1.3 演化 函数 遗传算法的演化过程包括交叉和变异两部分,因此演化函数也可以分为交叉和变异两类。依照数据类 型又可以把演化函数分为二进制格式、浮点数格式和 “有序数据”三类。例如:simpleXover.m为二进制格 式或浮点数格式的交叉函数;cyclicXover.In,linerXover.m,linerorderXover.m等为 “有序数据”的交叉函 数;boundaryMutation.m.nonUnifMutation.m等为浮点数格式的变异函数。 在优化过程中,如果单一的演化函数不能满足需要,那么可以将演化函数组台来使用。 1.4 其它 其它的一些函数包括终止函数、二进制表示函数、演示程序等等。 终止函数:maxGenTerm m和optMaxGenTerm.m,主程序ga.m用这两个终止函数来判断是否满足终 止条件 二进制表示函数:calcbits.m用来计算遗传算法满足精度要求时,染色体所需要的二进制位数。f2b.m 和b2f.m用来完成二进制数和浮点数之问的相互转换。 遗传算法工具箱还提供了演示程序。用户可以通过演示程序学习一维、多维空间上的寻优,基于二进 制数表示或基于浮点数表示的寻优,以及利用遗传算法求解著名的旅行商问题。 2 设计与仿真 PID控制是连续系统控制理论中十分成熟的一种控制方式,它被广泛地应用在实际生产中。PID控制经 过近 80年的发展,已经有了众多的参数整定方法;基于遗传算法的PID参数整定是对PID参数整定方法的 一 种重要补充和发展 这里针对文献口一中的一个PID参数整定示例.使用遗传算法工具箱结合SIMUI INK 平台对系统的PID控制器进行设计与仿真,以此来说明遗传算法工具箱在控制系统设计与仿真中的应用。 2.1 系统结构 SIMUI INK是MATI AB软件包中一个非常成功的系统仿真工具,它允许设计人员使用近似于画框图 的方法定 义系统 在本设计 中.首先利用 SIMUI INK平台对控制系统的结构进行设计。 基于遗传算法的 PID控制系统在结构上类似 于 传统 的 PID控制系统,PID控制系统在 SIMUI INK平台上表示如图 1。控制对象的传 1 n 递函数为G(s)= 图1 控制系统结构图 PID算法采用 MATLAB中给出的表达式 Gc( )一 K +K 了1+K 其中K K,、K。分别为比例、积分和微分系数。 为了测试系统的性能 ,在 系统的输 入端加人一个阶跃函数产毕器,输出端加入一个 显示模块 Seope。闭 维普资讯 http://www.cqvip.com 8 广西工学院学报 2001年 1 2月 环系统的阶跃响应和阶跃输入被同时送到显示模块 Scope,并以图形的方式加以显示。 2.2 遗传算法整定PID参数 应用遗传算法工具箱优化系统的主要步骤为以下几点: A)制定优化指标 一 个控制系统的优劣需要规定的优化指标来衡量。优化指标(即系统的目标函数)的选择可以是多种 的,例如:f;I l ( )ldt;-r;l e2(t)dt;-r—l £ (t)dt;等等。式中 (f)是误差信号,为方便起见,可设 为阶跃函数辖人信号和系统输出信号的差。不同的优化指标表示对系统的要求不同,选择的优化指标不一 样,最终得到的结果也不一样。就优化指标f—I (t)dt;,一l (t)dt相比较而言,相同误差量越向时 J 0 J 0 ⋯ 间轴正方向推移,对指标f— I 。(t)dt带来的影响就越大。因此+如果要求系统快速收敛,采用指标f— J O r+呻 r+∞ J te (t)dt要好于指标f—J (t)dt。在控制系统设计中,因为控制性能指标通常不是求目标函数的最大 J O J O 值,所以还需要对目标函数作逶当的变换。变换的方法很多,如:取倒数、仿模拟退火过程等。 B)染色体编码 遗传算法工具箱中的染色体编码可以选择二进制编码或浮点数编码。同样的问题常常可以使用不同的 编码,但是不同的编码对编程的方便性和程序运行效率的影响是不同的。在这个设计中,考虑到后面适应度 函数编程的方便性,对 , , o选择浮点数编码 程序中具体实现时,只需要将ga.m的参数opts的第二个 矩阵元素设为 1即可 C)适应度函数的编程实现。 遗传算法在搜索进化过程中一般不需要其他外部信息,仅用适应度来评价个体的优劣,并以此作为遗 传操作的依据。在利用遗传算法工具箱进行控制系统设计时,适应度函数用来定义要解决的优化问题,因而 说适应度函数的实现是整个优化过程最重要的一步。对适应度函数的编程使用MATI,AB语言,并以M文件 的形式保存,文件名将作为ga.m的evalFN参数的实参。 下面以PID控制系统为例说明适应度函数的实现方法: function[arg.value]一 PIDSysEval(arg) 适应度函数名为PIDSysEva] 函数有一个人口参数 arg,即染色体个体;两个出口参数,染色体和对应的适应度。 sye— PIDsys(arg(1),arg(2),arg(3)); 计算系统的闭环传递函数 其中arg(1),arg(2),arg(3)分别是从染色体中分离出的 , ,, D Ey,t,x] step(sys); 计算阶跃响应 deha= (y一1). (y一1). t; 计算 te (t) value一 一trapz(t,delta); %对 te (t)求数值积分 D)选取演化函数 依据优化问题的性质选取演化函数。以交叉函数为例 :simpleXover函数是简单的单点交叉,适用于一 些普通问题;arithXover函数是基于数学的交叉方法,对一些浮点数运算非常有效。如果单一的演化函数不 能满足需要,遗传算法工具箱还允许将几个演化函数组合起来使用。 E)初始化种群 由于遗传算法的群体型操作需要,所以J必须为遗传操作准备一个由若干初始解组成的初始群体。初始 化可以使用工具箱提供的初始化函数initializega.m或 initializeoga.m,也可以通过编程来实现较特殊的方 法 初始化过程除了需要明确群体的大小,产生初始数据串之外,还要求出每一个个体的适应度。主程序 ga以初始群体作为初始点开始迭代。 F)调用 ga函数完成优化 调用ga函数之前,还要依照ga函数人口参数的格式和实际问题的需要进行设置一些参数,如:evalOps (适应度函数参散)、演化函效参数 (变异率等)以及在opts中定义运算精度等等。 维普资讯 http://www.cqvip.com 第4期 姜 阳等:基于MATLAB遗传算法工具箱的控制系统设计仿真 9 完成了以上的步骤之后,调用Ra函数完成优化过程。 G)控制系统仿真 将通过优化得到的参数代人 PID控制器中,使用 SIMUI INK进行系统仿真,检测结果。 2.3 仿真结果 作为比较,首先对文献 中使用 Ziegler--Nkhds法得到的一组参数 (KP一1.0468,K,一 1.2836, D 一 0.2134)在SIMUI INK平台上进行仿真,系统的阶跃响应如图 2所示。接着利用遗传算法工具箱计算 PID参数。计算中选取的种群大小为 20。浮点数计算精度为 lO一 演化函数均取组合型函数,具体如下:交 叉函数为arithXover,heuristieXover,simpleXover;变异函数为boundaryMutation,muhiNonUnifMutation, № nonUnifMutation,unifMutation。适应度函数为f一一 J (t)dt。在繁殖50代之后,求得PID参数为 P 一 1.78,K 一0.128,K。=1.0,系统的阶跃响应如图 3所示。 围 2 Ziegler—Nichols涪得到的阶跃响应 田3 GA得到的阶跃响应 以上仿真结果表明:PID控制器使用遗传算法工具箱计算得到的参数后,系统特性对于优化指标 ,一 ~ (z)出有较大改善 , 系统没有产生超调,大大减少了调节时间。而且由于引入了遗传算法,参数调 试的方便性比传统方法有较大提高。 3 结束语 利用 MATI AB的遗传算法工具箱 GAOT对控制系统进行设计和仿真,可以方便灵活地选择编码方 式、计算精度和种群大小,适应度函数的编程也十分简单 在遗传进化中,有多种策略可供选择、组合,可 便捷地制定新策略。在 SIMUI INK平台上,遗传算法工具箱还可以与其它先进控制方法如模糊控制、人工 神经网络等结合,以实现更复杂和更有效的控制手段。 [ 参 考 文 献 ] [】]C.R,Houck.J,Joines and M,Kay,A genetic algo~thm for function optimimti~:A Matlab implementation,ACM T~ansactions on Mathmat[ca[Softwa~,l996. [2]杨智民,王 旭,庄显义 .遗传算法在自动控制领域的应用综述 [刀 .信息与控制,2000,8(4):329—339. [33魏克新,王云亮,陈志敏 .MATLAB语言与自动控制系统设计 [M].北京:机槭工业出版社,1997.8. The design and simul ation of the control system based on the MATLAB genetic al gorithm tool box JIANG Yang ;KoNG Feng0 (1一Electric Engineering College,Guangxi University,Nanning 530004,China;2-Dept-of Electronic Information and Control Engineering,Guangxi University of Teehndlogy,Liuzhou 545006,China) Abstract In this paper we introduced a MATLAB-based genet~ algorithm toolbox,and discussed the realization of the design and simulation of the control system by using the genet~ algorithm (GA)toolbox combining with SIMUI INK,and offered a simulation example of applying the GA toolbox tO the determining of the parameter of PID controclet. Key words:MATI AB;genetic algorithm (GA);control system sim"elation 维普资讯 http://www.cqvip.com
本文档为【基于MATLAB遗传算法工具箱的控制系统设计仿真】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_672950
暂无简介~
格式:pdf
大小:134KB
软件:PDF阅读器
页数:4
分类:互联网
上传时间:2011-05-24
浏览量:36