基于遗传算法的BP神经网络优化策略研究概要.docx
- 文档编号:25762688
- 上传时间:2023-06-13
- 格式:DOCX
- 页数:12
- 大小:302.59KB
基于遗传算法的BP神经网络优化策略研究概要.docx
《基于遗传算法的BP神经网络优化策略研究概要.docx》由会员分享,可在线阅读,更多相关《基于遗传算法的BP神经网络优化策略研究概要.docx(12页珍藏版)》请在冰豆网上搜索。
基于遗传算法的BP神经网络优化策略研究概要
计算机与现代化
2010年第9期
JISUANJIYUXIANDAIHUA
总第181期
文章编号:
1006-2475(201009-0088-04
收稿日期:
2010-04-02
作者简介:
靳建彬(1984-,男,河北石家庄人,装备指挥技术学院硕士研究生,研究方向:
航天器测量与控制,人工智能;王元钦(1963-,男,吉林白城人,教授,博士生导师,研究方向:
航天器测量与控制;陈源(1983-,男,江苏扬州人,博士研究生,研究方向:
航天器测量与控制。
基于遗传算法的BP神经网络优化策略研究
靳建彬1
王元钦2
陈源
1
(1.装备指挥技术学院研究生管理大队,北京101416;2.装备指挥技术学院科研部,北京101416
摘要:
人工神经网络(ANN可用作机器人控制器,完成多机器人协作搬运作业。
针对这种方法收敛速度较慢,误差较大的不足,本文提出基于遗传算法优化的方法。
该方法利用遗传算法优化人工神经网络,通过改变ANN结构和遗传算法操作参数,找到最优网络,提高网络收敛速度。
仿真结果证明,该方法的可行性与有效性。
关键词:
人工神经网络(ANN;遗传算法;收敛速度;多机器人
中图分类号:
TP18文献标识码:
Ado:
i10.3969/.jissn.1006-2475.2010.09.025
ApplicationofArtificialNeuralNetworkBasedonGeneticAlgorithm
toCooperativeTransportofMult-irobotsSystem
JINJian-bin1
WANGYuan-qin2
CHENYuan
1
(1.CompanyofPostgraduateManagement,AcademyofEquipmentCommand&Technology,Beijing101416,China;2.DepartmentofScientificResearch,AcademyofEquipmentCommand&Technology,Beijing101416,China
Abstract:
Artificialneuralnetworkcanbeusedastherobotcontroller,inordertocompletethemult-irobotscooperationtranspor-tingtask.Inresponsetotheshortagesofslowconvergencespeedandlargeerrorsinthismethod,thispaperpresentsamethodop-timizedbythegeneticalgorithm.Thismethodmakesuseofgeneticalgorithmtooptimizetheartificialneuralnetworks,andchan-gestheANNstructureandtheoperationalparametersofgeneticalgorithmstofindtheoptimalnetworkandimprovethenetworkconvergencespeed.Simulationresultsshowthefeasibilityandeffectivenessofthemethod.Keywords:
artificialneuralnetwork(ANN;geneticalgorithm;convergencespeed;mult-irobot
0引言
20世纪80年代后期,多机器人协作成为一种新
的机器人应用形式日益引起国内外学术界的兴趣与
关注[1]
。
一方面,由于任务的复杂性,在单机器人难以完成任务时,人们希望通过多机器人之间的协调与合作来完成。
另一方面,人们也希望通过多机器人间的协调与合作,来提高机器人系统在作业过程中的效率。
1943年,Macullocu和Pitts融合了生物物理学和数学提出了第一个神经元模型。
从这以后,人工神经网络[2]
经历了发展、停滞、再发展的过程,时至今日正走向成熟,在广泛领域里得到了应用,其中将人工神经网络技术应用到多机器人协作成为新的研究领域。
本文研究通过人工神经网络控制多机器人完成协作搬运的任务[3]
并应用遗传算法来对神经网络进行优化。
仿真结果表明,经过遗传算法优化后的搬运工作效率显著提高,误差降低。
1人工神经网络(ANN的基本原理和结构
人工神经网络(ArtificialNeuralNetwork,ANN是抽象、简化与模拟大脑神经结构的计算模型,又称并行分布处理模型[4]
。
ANN由大量功能简单且具有自适应能力的信息处理单元人工神经元按照大规模并行的方式通过一定的拓扑结构连接而成。
ANN拓扑结构很多,其中采用反向传播(Back-Propa-gation,BP算法的前馈型神经网络(如图1所示,即
2010年第9期靳建彬等:
基于遗传算法的BP神经网络优化策略研究89
BP人工神经网络,是人工神经网络中最常用、最成熟
的神经网络之一。
图1BP网络前馈结构
BP网络模型处理信息的基本原理是:
输入信号Xi通过中间节点(隐层点作用于输出节点,经过非线形变换,产生输出信号Yk,网络训练的每个样本包括输入向量X和期望输出量T,网络输出值Y与期望输出值T之间的偏差,通过调整输入节点与隐层节点的联接强度取值Wij和隐层节点与输出节点之间的联接强度Yjk以及阈值,使误差沿梯度方向下降,经过反复学习训练,确定与最小误差相对应的网络参数(权值和阈值,训练即告停止。
此时经过训练的神经网络即能对类似样本的输入信息,自行处理输出误差最小的经过非线形转换的信息。
但是BP算法也有一些缺点
[5]
。
由于BP算法本
质上为梯度下降法,而它所要优化的目标函数又非常复杂,在进行全局搜索时,不可避免地存在收敛速度
慢的问题。
此外,从数学角度看,BP算法为一种局部搜索的优化方法,但它要解决的问题为求解复杂非线性函数的全局极值,因此算法很有可能陷入局部极小值,从而使训练失败
[6]
。
为了解决这些问题,本文提
出将遗传算法和人工神经网络相结合,用遗传算法对ANN的权值进行优化,进而改进BP网络性能。
2遗传算法的基本原理和步骤
遗传算法(GeneticAlgorithm,GA类似于自然进化,通过作用于染色体上的基因寻找好的染色体来求解问题
[7]
。
与自然界相似,遗传算法对求解问题的
本身一无所知,它所需要的仅是对算法所产生的每个染色体进行评价,并基于适应值来选择染色体,使适应性好的染色体有更多的繁殖机会。
在遗传算法中,通过随机方式产生若干个所求解问题的数字编码,即染色体,形成初始群体;通过适应度函数给每个个体一个数值评价,淘汰低适应度的个体,选择高适应度的个体参加遗传操作,经过遗传操作后的个体集合形成下一代新的种群。
对这个新种群进行下一轮进化。
遗传算法的步骤为:
(1初始化群体;
(2计算群体上每个个体的适应度值;
(3按由个体适应度值所决定的某个规则选择将进入下一代的个体;
(4按概率Pc进行交叉操作;
(5按概率Pe进行突变操作;
(6没有满足某种停止条件,则转第(2步,否则
进入第(7步;
(7输出种群中适应度值最优的染色体作为问题的满意解或最优解。
程序的停止条件最简单的有如下两种情况:
(1完成了预先给定的进化代数则停止;(2种群中的最优个体在连续若干代没有改进或平均适应度在连续若干代基本没有改进时停止。
3基于GA-ANN的系统结构设计
系统采用遗传算法对神经网络的连接权值进行优化训练,生成最佳决策的最优神经网络,用这样优化后的神经网络控制器来控制机器人。
3.1BP神经网络结构设计
(1拓扑结构。
本次设计由于网络输入输出不多,对网络的要求比较简单,所以采用的是三层BP网络,因此只有一层隐层。
(2隐层节点数。
在BP网络中,隐层节点数的选择非常重要,为尽
可能避免训练时出现过拟合[8]
现象,保证足够高的网络性能和泛化能力,确定隐层节点数的最基本原则是:
在满足精度要求的前提下取尽可能紧凑的结构,即取尽可能少的隐层节点数。
研究表明,若隐层节点数太少,网络可能根本不能训练或网络性能很差;若隐层节点数太多,虽然可使网络的系统误差减小,但一方面使网络训练时间延长,另一方面,训练容易陷入局部极小点而得不到最优点,也是训练时出现过拟合的内在原因。
因此,合理的隐层节点数应在综合考虑网络结构复杂程度和误差大小的情况下确定。
根据实验的内容,只给5个输入量和3个输出量,所以此次设计的网络给定15个隐层节点。
3.2训练函数和激活函数选择
不同的训练函数对网络的性能也有影响,比如收敛速度等。
常用训练函数有三种:
taringdx、trainlm、traingd。
其中函数trainlm收敛速度快,网络的训练误差也比较tr
90计算机与现代化2010年第9期
BP网络的激活函数(又称传递函数经常采用S型的对数(logsig或正切函数(tansig和线性函数(purelin。
本文选择最常用的双曲正切函数形式:
f(y=
1
(1
其中,参数>0可控制其斜率。
这类函数具
有平滑和渐进性,并保持单调性。
设实数(,ijR为神经元i和j之间的连接权值,t(i为神经元i在t时刻的激活值,则:
t(i=f(kI
t(k(k,i
(2
训练函数中,设置训练次数:
Epochs=50,训练目
标:
Goal=0.001。
3.3遗传算法设置
3.3.1编码
遗传算法是对群体中的个体,即以基因串形式表示的个体实施操作,它不能直接处理问题空间的参数。
因此,在应用遗传算法前,必须先进行编码操作,即把优化问题解的参数转换为用基因串码的表示形式。
遗传算法中常用的编码方法有二进制编码、十进制编码和多参数映射编码。
神经网络连接权值的个数为:
N=kn+nm
(3
其中,k为输入层数,n为隐藏层数,m为输出层数。
本文的连接权值的个数为120个,若采用二进制编码则编码会较长,这样导致遗传算法训练的解空间过大,计算时间过长[9]
。
因此,本文选用直观的实数
编码[10]
也避免了精度不够的情况。
3.3.2适应度函数
染色体的适应度函数由神经网络的目标函数取其倒数求得:
Fi=
1Ei=11
2mj=1
(Tj-Yj2(4
其中,T,Y分别为期望输出量和网络输出量;m
为输出层节点数;E为误差平方和;Fi为第i个染色体的适应度。
3.3.3操作参数选取
交叉和变异是遗传算法的基本操作[11]
但是并不是所有被选择了的染色体都要进行交叉操作和变异操作,而是以一定的概率进行。
交叉变异概率的选择对算法有很大的影响,此外种群的规模也有影响。
下面对这些参数进行设置:
(1交叉概率Pc的选取。
交叉概率Pc控制着交叉操作被使用的频度。
较
大的Pc能力,但抗体群中高性能的优良模式遭到破坏的可能性增大,以致产生较大的代沟,使搜索走向随机化。
若Pc太小,则更多的个体会被直接复制到下一代,可能会导致算法搜索陷入迟钝状态[9]
。
一般取Pc从
0.25到1之间。
此次取为0.5。
(2变异概率Pm的选取。
变异操作可以维持抗体群的多样性,并有可能对交叉过程中丢失的重要基因进行修复[12]
。
当Pm较小时,可以减小抗体中重要的单一基因因变异操作而丢失的可能性,但不利于产生新个体和抑制早熟收敛。
当Pm太大时,虽可增加抗体群的多样性,但有可能破坏掉群体中很多好的模式,并使算法趋向于纯粹的随机搜索。
一般取Pm从0.001到0.1之间,实验中取为0.09。
(3种群规模的选取。
种群的染色体总数叫种群规模,它对算法的效率也有明显的影响,规模太小不利于进化,而规模太大
将导致程序运行时间过长[13]
。
对不同的问题可能有各自适合的种群规模,通常种群规模为20至100。
本次实验取为50。
到此,遗传算法的设置基本完毕。
4仿真结果分析
Matlab中有很完善的遗传算法工具箱
[14]
根据
上面所述的原理和设置,编写、运行程序,并根据实验结果调节参数,就可以得到利用GA优化前、优化后的仿真结果,如图2和图3所示。
图2未优化训练结果
TRAINLM,Epoch42/50,MSE0.000719506/0.001,Gradient1.3567/1e-010
TRAINLM,Performancegoalmet.
图2为未经遗传算法优化的神经网络训练图,可以看出经过42步训练后,神经网络收敛,达到训练目0.
2010年第9期靳建彬等:
基于遗传算法的BP神经网络优化策略研究91
图3优化网络训练结果
TRAINLM,Epoch28/50,MSE0.000984835/0.001,Gradient2.23595/1e-010
TRAINLM,Performancegoalmet.
图3为经过遗传算法优化后的神经网络训练图,系
统在28步之内就能够找到最优网络,收敛速度明显
加快。
图4改进ANN结构后训练结果
图4是将神经网络的隐层节点数改为10个,步数仍是50步。
结果显示,经过25步训练,网络达到期望目标,网络的收敛速度进一步得到了提高。
由此可见,合理的隐层节点数应在综合考虑网络结构复杂程度和误差大小的情况下用节点删除法和扩张法调试确定。
5结束语
人工神经网络控制多机器人进行协作操作时,收敛速度比较慢,易于陷入局部搜索。
本文提出了运用遗传算法训练神经网络,并根据进化效果修改神经网络的网络结构,最终得到最佳的效果。
仿真结果显示,神经网络收敛速度得到明显提高,证明了该方法的可行性与有效性。
参考文献:
[1]PagelloE,AngeloAD.Cooperativebehaviorsinmult-irobot
systemsthroughimplicitcommunication[J].RoboticsandAutonomousSystems,1999,29(1:
65-77.[2]YaoX.Evolvingartificialneuralnetworks[C]//Proceed-ingsoftheIEEE.1999,87(9:
1423-1447.
[3]杨东勇.多机器人协作的学习与进化方法[D].杭州:
浙
江大学博士学位论文,2004.
[4]阎平凡,张长水.人工神经网络与模拟进化算法[M].北
京:
清华大学出版社,2000.[5]张铃,张钹.神经网络中BP算法的分析[J].模式识别
与人工智能,1994,7(3:
191-195.
[6]李昕,王原嵩,陈严飞.GA-BP人工神经网络应用于海
底腐蚀管道极限承载力的研究[J].中国海洋平台,2009,24(4:
43-49.[7]陈国良,等.遗传算法及其应用[M].北京:
人民邮电出版社,1996:
10-20.
[8]蔡自兴.智能控制[M].北京:
电子工业出版社,2004.[9]周世官,李钟侠.神经网络结构及其权值优化的遗传算
法[J].测控技术,2004,23(4:
48-49.[10]周育人,李元香,王勇.一种有效的实数编码遗传算法[J].武汉大学学报,2003,49(1:
39-43.
[11]张颖,谭冠政.改进的免疫遗传算法在多机器人协作中的
应用[J].计算机测量与控制,2008,16(7:
1001-1003.
[12]禹建丽,KroumovV,孙增圻,等.一种快速神经网络路径
规划算法[J].机器人,2001,23(3:
150-158.[13]李秋生,张策,刘政华.基于神经网络和遗传算法的智能PID控制[J].计算机测量与控制,2007,15(15:
610-612.[14]丛爽.面向Matlab工具箱的神经网络理论与应用[M].
合肥:
中国科学技术大学出版社,1998.(上接第87页[7]LiGuoliang,FengJianhua,WangJianyong,eta.lAneffec-tiveandversatilekeywordsearchengineonheterogenous
datasources[C]//ProceedingsoftheVLDBEndowment.2008,1(2:
1452-1455.
[8]陆宜梅.Web搜索技术现状分析[J].沈阳大学学报,
2006,18(2:
34-36.[9]Andy.2.5搜索引擎之关键字查询[EB/OL].http:
//www.
pqshow.com/webbiz/seo/200907/8400.htm,l2009-07-14.[10]JiShengyue,LiGuoliang,LiChen,eta.lEfficientinteractive
fuzzykeywordsearch[C]//InternationalWorldWideWeb.
[11]LiC,LuJ,LuY.Efficientmergingandfilteringalgorithms
forapproximatestringsearches[C]//ICDE.2008:
257-266.
[12]XiaoChuan,WangWe,iLinXuemin.Ed-Join:
Anefficient
algorithmforsimilarityjoinswitheditdistanceconstraints[C]//VLDB.2008:
131-140.[13]WagnerRA,FischerMJ.Thestring-to-stringcorrectionprob-lem[J].ACM,1974,21(1:
168-173.[14]XiaoChuan,WangWe,iLinXuemin,eta.lEfficientsimilar-ityjoinsfornearduplicatedetection[C]//17thWWWCon-ference(2008.2008:
131-140.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 遗传 算法 BP 神经网络 优化 策略 研究 概要