基于遗传算法和BP神经网络的PID控制方法的交流伺服系统研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于遗传算法和BP神经网络的PID控制方法的交流伺服系统研究
【摘要】BP网络模型己成为神经网络的重要模型之一,在很多领域得到了应用,但它也存在一些不足。
如从数学上看,它是一个非线性优化问题,这就不可避免地存在局部极小点问题;BP网络学习算法收敛速度较慢,且收敛速度与初始权值的选择有关;网络的结构设计,即隐层及节点数的选择尚无理论直到,而是根据经验选取。
本文针对BP算法局部极值的缺点,考虑将遗传算法和BP 算法结合,进行对BP神经网络进行优化。
用遗传算法优化神经网络,主要包括三个方面:连接权的进化、网络结构的进化,学习规则的进化。
【关键词】GA-BP神经网络;遗传算法;学习规则
1 遗传算法基本原理
遗传算法(Genetic Algorithm,简称GA),最初由美国Michigan大学J.Holland 教授于1975年提出,模拟达尔文生物进化论的自然选择,遵循“生存竞争、优胜劣汰、适者生存”的竞争机制和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。
GA的特点是演算简单,并行搜索,直接对结构对象进行操作,不存在求导和函数连续性的限定,搜索效率高,不存在局部收敛问题。
遗传算法的基本操作有选择、交叉和变异。
(1)选择
选择不能创造出新的染色体,只能从旧种群中选择出优秀的个体,生物遗传基因的重组在自然界的生物进化过程中起着非常重要的核心作用。
(2)交叉
交叉是指把两个父代个体中的部分结构加以替换,重组而生成新的个体的操作。
遗传操作的交叉算子在遗传算法中起着核心作用。
交叉策略可分为单点交叉、多点交叉、均匀交叉等,最常用的交叉算子为单点交叉。
(3)变异
将变异引入遗传算法后,不但可以使遗传算法具有局部的随机搜索能力,又能使遗传算法维持群体的多样性,这样可以防止出现未成熟收敛现象,采用变异操作可以在尽可能大的空间中获得质量较高的优化解。
遗传算法中,交叉算子是因其全局搜索能力强而著称的主要算子,而变异算子是局部搜索能力较强辅助算子的。
因为交叉和变异既相互配合又相互竞争,而使遗传算法能够既具有全局搜索能力,又具有局部的均衡能力。
现在遗传算法的
一个重要研究内容就是如何有效地配合使用交叉和变异操作。
(4)终止条件
当最优个体的适应度达到给定的阈值、或当最优个体的适应度和群体适应度不再上升、或者迭代的次数已经达到预先设定好的代数则算法终止。
2 遗传算法在神经网络学习中的应用
目前,广泛研究的BP算法比较适用于局部搜索,但问题是当网络用BP算法进行学习时,学习的结果对初始权向量非常的敏感,所以会不可避免地出现一些不尽如人意的问题,如在具体的计算实施过程中,只能凭实验和经验来确定有关参数(如训练速率和惯性系数),假如采用不同的初始权向量可能导致完全不同的输出结果;或是极易陷人局部最小;再就是一旦取的值不合适,就会引起网络的振荡而不能收敛,即使能收敛也会因为收敛速度慢而导致训练时间过长,得不到最佳的权值分布。
解决这个问题可以采用遗传算法来优化BP的连接权。
先使用遗传算法GA 不断地对神经网络的连接权系数进行优化,直到这一代群体的进化状态停止。
此时种群经过解码后得到一组参数组合,已经非常接近于最佳的参数组合,在最佳参数组合的基础上再利用BP算法对它们进行精调操作,就能很快地得到最优解。
具体的说,可以用遗传算法来取代一些传统的算法并用于确定神经网络的权重,为人工神经网络提供了非常好的途径,图1为遗传算法与神经网络的结合图。
图1 遗传算法的一般流程
(1)产生初始种群——随机产生出一组数值分布,采用适当的编码方案对每个初始权值(或闽值)进行编码,从而构造出一个初始码链;
(2)计算出码链的误差函数后确定其函数的适应度值,一般的染色体的评价函数是运行后返回误差平方和的倒数,误差越大,则适应度会越小;
(3)选出若干最优个体(适应度函数值大)直接遗传给下一代;
(4)对当前一代群体再利用交叉、变异等遗传算子进行处理,直到产生下代群体;
(5)满足终止条件,则继续第6步,否则继续第2步;
(6)输出种群中适应度值最优的染色体作为最优解。
3 基于GA和NN的PID控制器结构形式及控制算法
将遗传算法、神经网络与PID控制相结合,利用GA的全局搜索能力,对神
经网络的权初值学习优化,提高了多层前向网络权系数的学习效率,减小了陷入局部解的可能性,快速地达到全局收敛;神经网络的自学习能力和逼近任意函数的能力,可在线调整PID参数,有效地控制较复杂的被控对象。
基于遗传算法和神经网络的PID控制器系统结构如图2所示。
图2 基于GA-BP的自学习PID控制器
图2包括三个部分:一是经典的传统PID控制器,可以直接对数控交流伺服系统的位置环进行闭环控制;二是遗传算法GA的寻优模块,对BP神经网络的初始权值进行优化学习;三是前向BP神经网络:可改变自身权系数,实现对PID控制参数的在线调整。
用遗传算法学习优化BP网络连接权值,学习优(下转第82页)(上接第71页)化的算法为:
用遗传算法学习优化BP网络的算法可总结如下:
(1)用w表示BP网络初始权系数的个数,用x表示输入的初始权参数值,则可用x1,x2…xw表征w个x输入,用L表示二进制编码串的长度,则可组成一个w×L位长的二进制编码串,从而构成一个个染色体。
(2)利用解码公式xi=xmin+■yi(i=1,…,w)确定解码方法,切断1中建立的w×L位长的二进制编码,将w个L位长的二进制编码串转换为对之对应的十进制整数代码,记为yi(i=1,2,…,w)。
(3)确定适配函数:考虑到数控交流伺服控制系统的准确性、稳定性和快速性,以控制量、误差和上升时间为约束条件,若e(t)为系统误差,tu为上升时间,u(t)为控制器输出,w1,w2,w3,w4为权值,可定义式J=■w1e(t)+w2u2(t)+w4e(t)dt+w3tu作为参数选择的目标函数,为了防止控制能量过大,上式中引入了控制量u的平方项,w4在未出现超调时值为零,一旦产生超调,将超调量作为最优指标的一项,此时w4大于w1。
(4)交叉和变异。
交叉和变异是遗传优化模块的基本操作,但并不是对所有的遗传算子进行交叉和变异,而只是以一定的概率进行。
种群的规模和交叉变异的概率的选择对算法都会有较大的影响,交叉概率一般是从0.25到1之间。
4 总结
本文将基于遗传算法和神经网络的PID控制方法应用于交流伺服系统,用GA(遗传算法)优化BP网络的初始连接权系数,得到一组接近最佳的BP网络初始权值的参数组合,再通过BP算法改变网络权值,实现PID参数的在线调整。
【参考文献】
[1]王璞,刘明利.基于题型和知识点的遗传组卷算法的应用[J].科技信息,2010(24):18-19.
[2]武飞周,薛源.智能算法综述[J].工程地质计算机应用,2005(2):25-27.
[3]刘双印,徐龙琴,沈玉利.改进小生境遗传算法在元搜索引擎调度优化中的研究[J].重庆师范大学学报:自然科学版,2008(3):38-40.
[4]梁兆阳.基于神经网络的非最小相位控制系统的研究[D].保定:华北电力大学,2008,42.
[5]郭红梅.遗传算法在BP神经网络学习中的应用[J].辽宁大学学报:自然科学版,2007(34-2):151-152.。