遗传算法在BP神经网络优化中的应用.

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

遗传算法在 BP 神经网络优化中的应用

2O世纪80年代后期,多机器人协作成为一种新的机器人应用形式日益引起国内外学术界的兴趣与关注。一方面,由于任务的复杂性,在单机器人难以完成任务时,人们希望通过多机器人之间的协调与合作来完成。另一方面,人们也希望通过多机器人间的协调与合作,来提高机器人系统在作业过程中的效率。1943年,Maeullocu和 Pitts融合了生物物理学和数学提出了第一个神经元模型。从这以后,人工神经网络经历了发展、停滞、再发展的过程,时至今日正走向成熟,在广泛领域里得到了应用,其中将人工神经网络技术应用到多机器人协作成为新的研究领域。本文研究通过人工神经网络控制多机器人完成协作搬运的任务-3 J,并应用遗传算法来对神经网络进行优化。仿真结果表明,经过遗传算法优化后的搬运工作效率显著提高,误差降低。

1 人工神经网络 ANN)的基本原理和结构

人工神经网络(Artiifcial Neural Network,ANN)) 是抽象、简化与模拟大脑神经结构的计算模型,又称并行分布处理模型 J。ANN 由大量功能简单且具有自适应能力的信息处理单元——人工神经元按照大规模并行的方式通过一定的拓扑结构连接而成。ANN拓扑结构很多,其中采用反向传播(Back-Propa- gation,BP)算法的前馈型神经网络(如下图1所示),即BP人工神经网络,是人工神经网络中最常用、最成熟的神经网络之一。

BP网络模型处理信息的基本原理是:输入信号x;通过中间节点(隐层点 )作用于出节点,经过非线形变换,产生输出信Yk,网络训练的每个样本包括输入向量 x和期望输出量 T,网络输出值Y与期望输出值T之间的偏差,通过调整输入节点与隐层节点的联接强度取值w;;和隐层节点与输出节点之间的联接强度Y以及阈值,使误差沿梯度方向下降,经过反复学习训练,确定与最小误差相对应的网络参数 (权值和阈值),训练即告停止。此时经过训练的神经网络即能对类似样本的输入信息,自行处理输出误差最小的经过非线形转换的信息。

2 遗传算法的基本原理和步骤

遗传算法 (Geneitc Algoirthm,GA)类似于自然进化,通过作用于染色体上的基因寻找好的染色体来求解问题J。与自然界相似,遗传算法对求解问题的本身一无所知,它所需要的仅是对算法所产生的每个染色体进行评价,并基于适应值来选择染色体,使适应性好的染色体有更多的繁殖机会。在遗传算法中,通过随机方式产生若干个所求解问题的数字编码,即染色体,形成初始群体;通过适应度函数给每个个体一个数值评价,淘汰低适应度的个体,选择高适应度的个体参加遗传操作,经过遗传操作后的个体集合形成下一代新的种群。对这个新种群进行下一轮进化。这就是遗传算法的基思想。

遗传算法的步骤为:

(1)初始化群体;

(2)计算群体上每个个体的适应度值;

(3)按由个体适应度值所决定的某个规则选择

将进入下一代的个体;

(4)按概率 P。进行交叉操作;

(5)按概率 P 进行突变操作;

(6)没有满足某种停止条件,则转第 (2)步,否则进入第(7)步;

(7)输出种群中适应度值最优的染色体作为问题的满意解或最优解。程序的停止条件最简单的有如下两种情况:(1)完成了预先给的进化代数则停止;(2)种群中的最优个体在连续若干代没有改进或平均适应度在连续若干代基本没有改进时停止。

为了改善BP神经网络学习算法易陷入局部极小的缺陷,本文采用遗传算法来优化BP神经网络的性能。首先采用遗传算法来优化BP神经网络的权值和阈值,然后将这些优化值赋给网络得到优化的BP神经网络,最后用仿真数据评估该优化网络的性能。数值仿真结果表明:经遗传算法优化BP神经网络能有效地避免原始BP神经网络容易出现的局部极小,且具有收敛速度快和精度高等优点。前馈神经网络(BP模型)是目前神经网络领域研究最多应用最广的网络模型。其非线性逼近能力是它博得青睐的主要原因,而BP算法作为前馈网络的主要学习算法,则无可争议的对其推广应用起了举足轻重的促进作用。BP算法因其简单、易行、计算量小、并行性强等优点,是目前神经网络训练采用最多也是最为成熟的训练算法之一。然而,由BP 算法是一种梯度下降搜索方法,因而不可避免地存在固有的不足,如易陷入误差函数的局部极值点,而且对于较大搜索空间、多峰值和不可微函数也不能有效搜索到全局极小点,而遗传算法则是克服这一不足的有效解决方法,主要是因为遗传算法是一种全局优化搜索算法,因而能够避开

局部极小点,而且在进化过程中也无需提供所要解决问题的梯度信息。

3.遗传算法优化 BP 神经网络

1 遗传算法优化 BP 神经网络算法流程

利用遗传算法来训练神经网络的大部分工作是预先固定好网络的拓扑,而后用遗传算法优化神经网络的权重。进化训练方法可分为两个主要步骤:

(1)决定网络连接权重的编码方案;(2)用遗传算法完成进化。对于固定的神经网络结构,进化网络连接权重的过程典型地分为以下几个步骤:

(1)确定权重编码方案,生成初始群体;

(2)解码群体中每个个体,构造出相应的神经网络;

(3)根据一定的性能评价准则(如均方差、学习速度

等)计算网络适合度;

(4)根据适合度大小决定各个个体繁衍后代的概率,

完成选种;

(5)按照一定的概率,对选种后群体施以遗传算子(如

交配、突变等)得到新一代群体;

(6)返回(2),直至满足性能要求。

2 遗传算法实现

遗传算法优化神经网络是用遗传算法来优化 BP 神经网络的初始权值和阈值,使优化后的 BP 神经网络能够更好的预测输出。遗传算法优化 BP 神经网络的实现步骤如下:

(1) 编码方式

神经网络的权值学习是一个复杂的连续参数优化问题,如果采用二进制编码,会造成编码串过长,且需要再解码为实数,使权值变化为步进,影响学习精度。本文采用实数编码,神经网络的各个权值按照一定的顺序级联为一个长串,串上的每一个位置对应着网络的一个权值。编码串的顺序按照从输入到输出的顺序排列。

(2) 适应度函数计算

将个体上表示的各连接权值按照对应方式分配到给定的网络结构中,网络以训练集样本为输入输出,运行后返

回均方差误差 mse,其中最大的 mse,表示为 msemax。则个体适应度值 F,计算公式为

相关文档
最新文档