第8卷第4期 智能系统学报 Vol.8 No.4 2013年8月 CAAI Transactions on Intelligent Systems Aug.2013 D0I:10.3969/j.issn.1673-4785.201305026 网络出版地址:http://www.cnki.net/kcms/detail/23.1538.TP.20130827.1104.002.html 一种优化神经网络的教与学优化算法 拓守恒 (陕西理工学院数学与计算机科学学院,陕西汉中723001) 摘要:为了提高B即神经网络的输出精度,提出一种改进的教与学优化算法进行神经网络中的权值和阈值的优化 调整算法对基本的教与学优化算法的“教”阶段和“学”阶段分别进行改进,并提出一种“自学”机制来增强算法的学 习能力通过函数拟合实验和拖拉机齿轮箱故障诊断实验进行算法性能测试,结果表明,与遗传算法和基本的教与学 优化算法相比,该算法具有收敛速度快、求解精度高等优势: 关键词:改进的教与学优化算法;“自学”机制:神经网络;函数拟合;齿轮箱故障诊断 中图分类号:TP31文献标志码:A文章编号:1673-4785(2013)04-0327-06 中文引用格式:拓守恒.一种优化神经网络的教与学优化算法[J].智能系统学报,2013,8(4):327-332. 英文引用格式:TUO Shouheng..A modified teaching-.learning-based optimization algorithm and application in neural networks[J] CAAI Transactions on Intelligent Systems,2013,8(4):327-332. A modified teaching-learning-based optimization algorithm and application in neural networks TUO Shouheng (School of Mathematics and Computer Science,Shaanxi University of Technology,Hanzhong 723001,China) Abstract:In order to improve the output accuracy of back propagation neural network,a modified teaching-learn- ing-based optimization MTLBO)algorithm is proposed to train the weight and threshold value of neural network.In the MTLBO method,the "Teaching"phase and "Learning"phase were modified on the basis of TLBO algorithm, and a new "Self-Learning"mechanism was proposed to intensify global searching ability.Finally,the function fit- ting experiment and the tractor gearbox diagnosis experiment were used to test the performance of the proposed algo- rithm.Simulations show that this algorithm has a better convergence,prediction accuracy and robustness compared to the genetic algorithm (GA)and the basic teaching-learning-based optimization (TLBO)algorithm. Keywords:modified teaching-learning-based optimization algorithm;"self-learning"mechanism;neural network; function fitting;gearbox fault diagnosis 近年来,神经网络(neural network,NN)受到很 输出和问题的实际输出值之间的误差尽可能小.因 多学者的关注,它的应用取得了很好的成效.NN为 此如何调节网络连接权值就成为确定BP神经网络 解决大规模复杂问题提供了一种简单易行的方法, 结构的重点.目前,对神经网络的优化主要是梯度优 被广泛用于模式识别等分类和预测问题.BP(back 化技术,如反向传播学习算法.反向传播学习算 propagation)神经网络结构划分为输入层、隐含层和 法[1]在神经网络中得到了广泛的应用,BP神经网 输出层输人层节点用于接收一组预测变量,输出层 络由信息的正向传播和误差的反向传播2个过程组 节点输出相应的目标值(目标值可以不止一个).BP 成.输入层各神经元负责接收来自外界的输入信息, 神经网络构建的主要工作是通过调节连接输入层、 并传递给中间层各神经元:中间层是内部信息处理 隐含层和输出层之间的连接权值,使得神经网络的 层,负责信息变换,根据信息变化能力的需求,中间 层可以设计为单隐层或者多隐层结构:最后一个隐 收稿日期:2013-05-09.网络出版日期:2013-08-27 基金项目:陕西省教育厅科研计划资助项目(12K0863):陕西理工科 层传递到输出层各神经元的信息,经进一步处理后, 研项目(SLGKY12-16). 通信作者:拓守恒.E-mail:tmo_sh@126.com 完成一次学习的正向传播处理过程,由输出层向外
第 8 卷第 4 期 智 能 系 统 学 报 Vol.8 №.4 2013 年 8 月 CAAI Transactions on Intelligent Systems Aug. 2013 DOI:10.3969 / j.issn.1673⁃4785.201305026 网络出版地址:http: / / www.cnki.net / kcms/ detail / 23.1538.TP.20130827.1104.002.html 一种优化神经网络的教与学优化算法 拓守恒 (陕西理工学院 数学与计算机科学学院, 陕西 汉中 723001) 摘 要:为了提高 BP 神经网络的输出精度,提出一种改进的教与学优化算法进行神经网络中的权值和阈值的优化 调整.算法对基本的教与学优化算法的“教”阶段和“学”阶段分别进行改进,并提出一种“自学”机制来增强算法的学 习能力.通过函数拟合实验和拖拉机齿轮箱故障诊断实验进行算法性能测试,结果表明,与遗传算法和基本的教与学 优化算法相比,该算法具有收敛速度快、求解精度高等优势. 关键词:改进的教与学优化算法; “自学”机制;神经网络;函数拟合;齿轮箱故障诊断 中图分类号:TP31 文献标志码:A 文章编号:1673⁃4785(2013)04⁃0327⁃06 中文引用格式:拓守恒.一种优化神经网络的教与学优化算法[J]. 智能系统学报, 2013, 8(4): 327⁃332. 英文引用格式:TUO Shouheng. A modified teaching⁃learning⁃based optimization algorithm and application in neural networks[J]. CAAI Transactions on Intelligent Systems, 2013, 8(4): 327⁃332. A modified teaching⁃learning⁃based optimization algorithm and application in neural networks TUO Shouheng (School of Mathematics and Computer Science, Shaanxi University of Technology, Hanzhong 723001, China) Abstract:In order to improve the output accuracy of back propagation neural network, a modified teaching⁃learn⁃ ing⁃based optimization (MTLBO) algorithm is proposed to train the weight and threshold value of neural network. In the MTLBO method, the “Teaching” phase and “Learning” phase were modified on the basis of TLBO algorithm, and a new “Self⁃Learning” mechanism was proposed to intensify global searching ability. Finally, the function fit⁃ ting experiment and the tractor gearbox diagnosis experiment were used to test the performance of the proposed algo⁃ rithm. Simulations show that this algorithm has a better convergence, prediction accuracy and robustness compared to the genetic algorithm (GA) and the basic teaching⁃learning⁃based optimization (TLBO) algorithm. Keywords:modified teaching⁃learning⁃based optimization algorithm; “ self⁃learning” mechanism; neural network; function fitting; gearbox fault diagnosis 收稿日期:2013⁃05⁃09. 网络出版日期:2013⁃08⁃27. 基金项目:陕西省教育厅科研计划资助项目(12JK0863);陕西理工科 研项目(SLGKY 12⁃16). 通信作者:拓守恒. E⁃mail:tuo_sh@ 126.com. 近年来,神经网络( neural network,NN)受到很 多学者的关注,它的应用取得了很好的成效.NN 为 解决大规模复杂问题提供了一种简单易行的方法, 被广泛用于模式识别等分类和预测问题.BP ( back propagation)神经网络结构划分为输入层、隐含层和 输出层.输入层节点用于接收一组预测变量,输出层 节点输出相应的目标值(目标值可以不止一个).BP 神经网络构建的主要工作是通过调节连接输入层、 隐含层和输出层之间的连接权值,使得神经网络的 输出和问题的实际输出值之间的误差尽可能小.因 此如何调节网络连接权值就成为确定 BP 神经网络 结构的重点.目前,对神经网络的优化主要是梯度优 化技术, 如反向传播学习算法. 反向传播学习算 法[1⁃2]在神经网络中得到了广泛的应用,BP 神经网 络由信息的正向传播和误差的反向传播 2 个过程组 成.输入层各神经元负责接收来自外界的输入信息, 并传递给中间层各神经元;中间层是内部信息处理 层,负责信息变换,根据信息变化能力的需求,中间 层可以设计为单隐层或者多隐层结构;最后一个隐 层传递到输出层各神经元的信息,经进一步处理后, 完成一次学习的正向传播处理过程,由输出层向外
·328· 智能系统学报 第8卷 界输出信息处理结果.当实际输出与期望输出不符 习后的值,还有2个关键的参数:教学因子T℉,= 时,进入误差的反向传播阶段误差通过输出层,按 round[1+rand(0,1)]和学习步长r:=rand(0,1)用 误差梯度下降的方式修正各层权值,向隐层、输入层 于调整学习速率 逐层反传但是,梯度下降优化法存在不稳定和不可 1.2学员之间相互“学”阶段 预知的问题,并且对初始值非常敏感,对于多峰值优 在学员相互“学”阶段,每个学员X(i=1,2,…, 化问题,很容易陷入局部搜索而失去全局最优解.为 NP)在班级中随机选取一个学习对象X(j=1,2, 此,近年来,很多启发式智能全局优化算法被用于神 …,NP,j≠),X,通过分析自己和学员X的差异进 经网络的优化设计,例如,遗传算法(genetic algo- 行学习调整,学习改进的方法类似于差分算法中的 rithm,GA)[)、粒子群优化算法(particle swarm opti-- 差分变异算子,不同在于,TLB0算法中的学习步长 mization,PSO)[)、模拟退火算法(simulated annea- r对每个学员采用不同的学习因子.采用式(3)实现 ling,SA)等.本文提出一种改进的教与学优化算法 “学”的过程 teaching-learning-based optimization,TLBO)[561 (X+·(X:-X),X优于X: 行BP神经网络的优化设计. (3) X+r·(X-X),X优于X 1教与学优化算法 式中:=U(0,1)表示第i个学员的学习因子(学习 教与学优化算法由印度学者R.V.Rao和V.D. 步长) Kalyankar于2010年提出,TLBO算法通过模拟人类 1.3学员更新 在学习过程中的老师“教”和学生相互“学”2个阶 学员经过“教”阶段和“学”阶段都要分别进行 段的学习方法,促进每个学员的学习水平, 更新操作更新方法如下: 基本的TLBO算法是模拟以“班级”为单位的学 If X is better than Xod, 习方式,班级中学员水平的提高需要教师的“教”来 X=X", 引导,同时,学员之间需要相互“学习”交流来促进 End If. 知识的进步其中,教师和学员相当于进化算法中的 2 改进的教与学优化算法 个体,而教师是适应值最好的个体之一.每个学员所 学的某一科目相当于一个决策变量 对低维单模优化问题,基本的TLB0算法的收 下面是几个基本定义: 敛速度很快,求解精度很高,运行代价较小,算法的 1)学习知识范围(对应于搜索区域).学员所学 时间复杂度为O(NP×T),(NP是学员数量,T是最 知识范围定义为X=(x,x2,…,x4)∈[L,U],L= 大允许迭代次数).TLBO算法的缺点是,对于高维 (L,2,…,L)是空间下届,U=(U,U2,…,)是 “多模态”的复杂优化问题,全局探索能力较差,很 空间上届,d是学员所学科目数(对应于优化问题的 容易陷入局部搜索而丢失全局最优解.主要原因是 维数) TLB0算法在“教”阶段对所有学员采用相同的差异 2)班级:所有学员的集合称为班级(种群) 值Difference进行调整,使得算法的搜索策略比较单 3)教师:班级中水平最高的个体称为教师,记 一,学员很容易快速向“老师”聚集,导致学员知识 为icacher或Xen 多样性的快速丢失,从而陷入局部搜索.这样,对于 4)学员(个体):班级中第i个学员定义为X= 高维“多模态”问题,TLB0算法往往会丢失全局最 (x,x,…,x),其中,(=1,2,…,d)表示学员X 优解而获得局部最优解8】」 所学的第j门课程, 在TLB0算法中,学员的学习过程完全依赖老师 1.1教师的“教”阶段 的“教”和学员之间的交流“学习”,造成学员在学习 在TLBO算法的“教”阶段,班级中每个学员X 过程中对他人的过度依赖,但却丧失了学习过程中自 (i=l,2,…,NP)根据Xaa和班级中学员平均水平 我学习和自我创新能力的挖掘.因此,为了发挥群体 中每个学员的智慧和才能,本文针对TLB0算法的缺 值Mean=(∑X,)/NP之间的差异性进行学习.采 陷,提出一种改进的教与学优化算法(modified teach- 用式(1)~(2)实现“教”的过程. ing-learning-based optimization,MTLBO),算法借鉴和 X.=Xal Difference, (1) 声搜索算法思想进行个体的自我学习和自我探索创 Difference=r:·(Ktacher-TF:·Mean).(2) 新能力挖掘,用于加强每个个体的自我局部搜索能 式中:xX“和X"分别表示第i个学员学习前和学 力,从而增加种群的全局探索能力
界输出信息处理结果.当实际输出与期望输出不符 时,进入误差的反向传播阶段.误差通过输出层,按 误差梯度下降的方式修正各层权值,向隐层、输入层 逐层反传.但是,梯度下降优化法存在不稳定和不可 预知的问题,并且对初始值非常敏感,对于多峰值优 化问题,很容易陷入局部搜索而失去全局最优解.为 此,近年来,很多启发式智能全局优化算法被用于神 经网络的优化设计,例如,遗传算法( genetic algo⁃ rithm, GA) [3] 、粒子群优化算法(particle swarm opti⁃ mization, PSO) [4] 、模拟退火算法( simulated annea⁃ ling, SA)等.本文提出一种改进的教与学优化算法 ( teaching⁃learning⁃based optimization, TLBO) [5⁃6] 进 行 BP 神经网络的优化设计. 1 教与学优化算法 教与学优化算法由印度学者 R.V.Rao 和 V.D. Kalyankar 于 2010 年提出,TLBO 算法通过模拟人类 在学习过程中的老师“教”和学生相互“学” 2 个阶 段的学习方法,促进每个学员的学习水平. 基本的 TLBO 算法是模拟以“班级”为单位的学 习方式,班级中学员水平的提高需要教师的“教”来 引导,同时,学员之间需要相互“学习” 交流来促进 知识的进步.其中,教师和学员相当于进化算法中的 个体,而教师是适应值最好的个体之一.每个学员所 学的某一科目相当于一个决策变量. 下面是几个基本定义: 1) 学习知识范围(对应于搜索区域).学员所学 知识范围定义为 X = (x 1 ,x 2 ,…,x d )∈ [ L,U] ,L = (L 1 ,L 2 ,…,L d )是空间下届,U= (U 1 ,U 2 ,…,U d ) 是 空间上届,d 是学员所学科目数(对应于优化问题的 维数). 2) 班级:所有学员的集合称为班级(种群). 3) 教师:班级中水平最高的个体称为教师,记 为 Xteacher或 Xbest . 4) 学员(个体): 班级中第 i 个学员定义为Xi = (x 1 i ,x 2 i ,…,x d i ),其中,x j i(j = 1,2,…,d)表示学员 Xi 所学的第 j 门课程. 1.1 教师的“教”阶段 在 TLBO 算法的“教”阶段,班级中每个学员 Xi (i = 1,2,…,NP)根据 Xteacher和班级中学员平均水平 值 Mean = (∑ NP i = 1 Xi) / NP 之间的差异性进行学习.采 用式(1) ~ (2)实现“教”的过程. X new i = X old i + Difference, (1) Difference = ri·(Xteacher - TFi·Mean). (2) 式中:X old i 和 X new i 分别表示第 i 个学员学习前和学 习后的值,还有 2 个关键的参数:教学因子 TFi = round [1+rand(0,1) ] 和学习步长 ri = rand(0,1) 用 于调整学习速率. 1.2 学员之间相互“学”阶段 在学员相互“学”阶段,每个学员 Xi(i = 1,2,…, NP)在班级中随机选取一个学习对象 Xj( j = 1,2, …,NP,j≠i),Xi 通过分析自己和学员 Xj 的差异进 行学习调整,学习改进的方法类似于差分算法中的 差分变异算子,不同在于,TLBO 算法中的学习步长 r 对每个学员采用不同的学习因子.采用式(3)实现 “学”的过程. X new i = X old i + ri·(Xi - Xj), Xi 优于 Xj; X old i + ri·(Xj - Xi), Xj 优于 Xi { . (3) 式中:ri =U(0,1)表示第 i 个学员的学习因子(学习 步长). 1.3 学员更新 学员经过“教”阶段和“学”阶段都要分别进行 更新操作.更新方法如下: If X new i is better than X old i , X old i = X new i , End If. 2 改进的教与学优化算法 对低维单模优化问题,基本的 TLBO 算法的收 敛速度很快,求解精度很高,运行代价较小,算法的 时间复杂度为 O(NP ×T),(NP 是学员数量,T 是最 大允许迭代次数). TLBO 算法的缺点是,对于高维 “多模态”的复杂优化问题,全局探索能力较差,很 容易陷入局部搜索而丢失全局最优解.主要原因是 TLBO 算法在“教”阶段对所有学员采用相同的差异 值 Difference 进行调整,使得算法的搜索策略比较单 一,学员很容易快速向“老师”聚集,导致学员知识 多样性的快速丢失,从而陷入局部搜索.这样,对于 高维“多模态”问题,TLBO 算法往往会丢失全局最 优解而获得局部最优解[7⁃8] . 在 TLBO 算法中,学员的学习过程完全依赖老师 的“教”和学员之间的交流“学习”,造成学员在学习 过程中对他人的过度依赖,但却丧失了学习过程中自 我学习和自我创新能力的挖掘.因此,为了发挥群体 中每个学员的智慧和才能,本文针对 TLBO 算法的缺 陷,提出一种改进的教与学优化算法(modified teach⁃ ing⁃learning⁃based optimization, MTLBO),算法借鉴和 声搜索算法思想进行个体的自我学习和自我探索创 新能力挖掘,用于加强每个个体的自我局部搜索能 力,从而增加种群的全局探索能力. ·328· 智 能 系 统 学 报 第 8 卷
第4期 拓守恒:一种优化神经网络的教与学优化算法 ·329· 2.1改进的“教”阶段 弱,本文引入“自学”阶段,每个学员通过自学阶段, 本文通过对Mean进行改进,使Mean=(Xost+ 充分发挥每个学员的能力,增强算法的全局探索能 X)/2,这样计算的好处是Mean对每个个体X其值 力(exploration).本文中的“自学”阶段采用类似于作 都不同,从而保证种群的多样性,避免算法早熟,改 者提出的一种改进的和声算法[9思想进行. 进后的教学过程如下: 2.3“自我”学习阶段 For i=1:NP 在前面的“教”和相互“学”阶段,学习的对象是 TF=round [1+rand(1,d)], 学员整体进行,但是,由于每个学员都会学习多门科 Xe"=X,+rand(1,d)×[Xcacher-TF× 目(对应于搜索算法中的决策变量),学员学习时可 (Xm+X:)/2], 能会出现“偏科”现象,有些学员可能会部分科目学 End. 习较好,部分科目学习效果较差.因此,在“自学”阶 2.2改进的相互“学习”阶段 段,根据每个学员的特点对成绩不够理想的科目进 在相互“学习”阶段,TLB0算法中每个学员X 行针对性学习.采用3种学习策略对学员的某些科 (i=1,2,…,NP)每次随机选取另一个学习对象X 目进行自我学习调整:l)以学习率(learn from others (G=1,2,…,NP,≠i)进行学习.本文中,每次随机选 probability,LoP)选择学习对象;2)以概率(self re- 取2个学习对象X,和X,(r1=1,2,…,NP;r2=1,2, pair probability,SRP)进行自我学习方法调整;3)以 …,NP;1≠r2),通过比较X,和X,的优劣性并计算 概率(innovative learning probability,ILP)进行创新 二者的差异性进行学习,这样能够有效提高学习成 学习具体“自我”学习阶段的算法如下: 功率,避免“盲目学习”学习过程伪代码如下: For i=1 to NP For i=1:NP Forj=1tod//第i个学员开始“自我”学习 随机从种群中选择2个个体X,和X,(X,≠ If rand()<LoP/向他人学习 X,) xe=X,a∈U{1,2,…,NP}; Else If rand()<SRP/自我学习方法调整 If FITS(X,)<FITS(X) =rand(0,1)*Step(j); Y=2xX,-X Else If rand()<LP/创新学习 Else x=V+rand(0,1)×(U-); Y=2×X2-X,; Else End xhe=i 差异学习 End X=X+rand(1,d).x(Y-X) Xnn=(xn,x2n,…,xdn) End End rand(1,d)表示在[0,1]随机生成一个d维的 End 行向量 算法中,Step是自我学习调整步长,定义为 在本文算法的相互“学习"”阶段,与TLB0算法 Step=mins+(maxsp -minsp)(1-t/T). 不同的有: 式中:maxsup=(U-L)/50,minsp=(U-L)/3000,t 1)学习方法不同.根据文献[11]中的最好个体 是当前迭代次数,T是允许最大迭代次数: 与最差个体的差异性思想,算法首先利用2个随机 选择的学员作差异计算:Y=2×X,-X,,对X,修正后 3利用MTLBO算法进行函数优化 再次和学员X进行差异学习,使得算法具有更强的 3.1多峰值函数Schwefel2.26测试分析 自适应学习能力. 为了验证本文算法的性能,首先对一个经典的 2)更新操作不同.首先判断产生的新个体X 高维多峰值函数Schwefel2.26进行测试检验,将本 是否比原来的个体更好,如果是则用新个体替换原 文算法与GA和基本的TLBO算法进行比较,设置 个体,否则,再次判断新个体是否比种群中的最差个 函数维数d=100,种群大小NP=50,最大迭代次数 体X.优秀,如果是,则用X替换X. Tmx=5000.遗传算法参数:交叉概率cp=0.6,变异 由于算法在应用上述的“教”与“学”过程时,收 概率mp=0.1;本文算法参数:ToP=0.55,SRP=0.3, 敛速度很快,局部开发能力(exploitation)较强,种群 LP=0.1.为了公平起见,每个算法独立运行30次, 的多样性容易丢失,全局搜索能力(exploration)较 取其最优值,并统计其最佳解Best,最差解Worst,平
2.1 改进的“教”阶段 本文通过对 Mean 进行改进,使 Mean = (Xworst + Xi) / 2,这样计算的好处是 Mean 对每个个体 Xi其值 都不同,从而保证种群的多样性,避免算法早熟,改 进后的教学过程如下: For i = 1 ∶ NP TF = round [1+rand(1,d) ] , X new i = Xi + rand ( 1, d ) × [ Xteacher - TF × Xworst +Xi ( ) / 2], End. 2.2 改进的相互“学习”阶段 在相互“学习”阶段,TLBO 算法中每个学员 Xi (i = 1,2,…,NP)每次随机选取另一个学习对象 Xj (j = 1,2,…,NP,j≠i)进行学习.本文中,每次随机选 取 2 个学习对象 Xr 1 和 Xr 2 (r1 = 1,2,…,NP;r2 = 1,2, …,NP;r1≠r2 ),通过比较 Xr 1 和 Xr 2 的优劣性并计算 二者的差异性进行学习,这样能够有效提高学习成 功率,避免“盲目学习”.学习过程伪代码如下: For i = 1:NP 随机从种群中选择 2 个个体 Xr 1 和 Xr 2 (Xr 1 ≠ Xr 2 ) If FITS Xr 1 ( ) <FITS Xr 2 ( ) Y = 2×Xr 1 -Xr 2 ; Else Y = 2×Xr 2 -Xr 1 ; End 差异学习 Xnew =Xi +rand(1,d) .× Y-Xi ( ) ; End rand(1,d)表示在[0,1]随机生成一个 d 维的 行向量. 在本文算法的相互“学习”阶段,与 TLBO 算法 不同的有: 1)学习方法不同.根据文献[11]中的最好个体 与最差个体的差异性思想,算法首先利用 2 个随机 选择的学员作差异计算:Y = 2×Xr 1 -Xr 2 ,对 Xr 修正后 再次和学员 Xi进行差异学习,使得算法具有更强的 自适应学习能力. 2)更新操作不同.首先判断产生的新个体 Xnew 是否比原来的个体更好,如果是则用新个体替换原 个体,否则,再次判断新个体是否比种群中的最差个 体 Xworst优秀,如果是,则用 Xnew替换 Xworst . 由于算法在应用上述的“教”与“学”过程时,收 敛速度很快,局部开发能力( exploitation)较强,种群 的多样性容易丢失,全局搜索能力( exploration) 较 弱,本文引入“自学”阶段,每个学员通过自学阶段, 充分发挥每个学员的能力,增强算法的全局探索能 力(exploration).本文中的“自学”阶段采用类似于作 者提出的一种改进的和声算法[9⁃11]思想进行. 2.3 “自我”学习阶段 在前面的“教”和相互“学”阶段,学习的对象是 学员整体进行,但是,由于每个学员都会学习多门科 目(对应于搜索算法中的决策变量),学员学习时可 能会出现“偏科”现象,有些学员可能会部分科目学 习较好,部分科目学习效果较差.因此,在“自学”阶 段,根据每个学员的特点对成绩不够理想的科目进 行针对性学习.采用 3 种学习策略对学员的某些科 目进行自我学习调整:1)以学习率(learn from others probability, LoP) 选择学习对象;2) 以概率( self re⁃ pair probability, SRP)进行自我学习方法调整;3)以 概率 (innovative learning probability, ILP)进行创新 学习.具体“自我”学习阶段的算法如下: For i = 1 to NP For j = 1 to d / / 第 i 个学员开始“自我”学习 If rand()<LoP / / 向他人学习 x j new =X j a ,a∈U{1,2,…,NP} ; Else If rand()<SRP / / 自我学习方法调整 x j new = x j new ±rand(0,1) ∗Step(j) ; Else If rand()<ILP / / 创新学习 x j new = L j+rand(0,1)× U j-L j ( ) ; Else x j new = x j i End Xnew = (x 1 new ,x 2 new ,…,x d new ) End End 算法中,Step 是自我学习调整步长,定义为 Step = minStep + (maxStep - minStep )(1 - t / Tmax). 式中:maxStep = (U-L) / 50,minStep = (U-L) / 3 000,t 是当前迭代次数,T 是允许最大迭代次数. 3 利用 MTLBO 算法进行函数优化 3.1 多峰值函数 Schwefel2.26 测试分析 为了验证本文算法的性能,首先对一个经典的 高维多峰值函数 Schwefel 2.26 进行测试检验,将本 文算法与 GA 和基本的 TLBO 算法进行比较,设置 函数维数 d = 100, 种群大小 NP = 50,最大迭代次数 Tmax = 5 000.遗传算法参数:交叉概率 cp = 0.6,变异 概率 mp = 0.1;本文算法参数:ToP = 0.55,SRP = 0.3, ILP = 0.1.为了公平起见,每个算法独立运行 30 次, 取其最优值,并统计其最佳解 Best,最差解 Worst,平 第 4 期 拓守恒:一种优化神经网络的教与学优化算法 ·329·
·330· 智能系统学报 第8卷 均最优解Mean,标准差Std和算法运行时间Runt- 刻的方差平均值.通过跟踪记录种群在搜索空间的 ime,具体结果如表1所示.图1和图2分别给出3中 多样性变化,判断算法的空间探索能力.较好的优化 算法的优化过程曲线和30次独立运行最优解统计 算法前期具有较大的种群多样性,随着优化的进行, 盒图 种群逐步向全局最优点靠近,多样性逐步降低图3 表1算法GA、TLB0和MTLBO对函数Schwefel2.26的测 是在D=l00时.多峰值函数Schwefel2.26的种群多 试结果 样性变化曲线.从图3可以看出,本文算法的收敛曲 Table 1 The test results of three algorithms (GA,TLBO 线是在“活跃跳动”中逐步下降,使其能够获得高精度 and MTLBO)for function Schwefel 2.26 的全局最优解,而算法GA和TLBO算法的多样性很 参数 GA TLBO MTLBO 快就处于一种停滞状态,这是由于Schwefel2.26存在 Best 41507.39 16347.970 0.001590 很多函数值比较接近和相等的“局部”最优解,而全局 Mean 41503.93 25933.470 0.003708 最优解是在边界附近的点(420.9687,420.9687,…, Worst 41501.83 35622.770 0.007314 420.9687),在没有发现全局最优解时,个体是在各 Std 3.89908 5452.302 0.001547 个相近的局部最优解间跳动,使得搜索能力降低,全 运行时间/s 41.04843 12.779560 16.899730 局收敛性变差 3.010 43*10 ---TLBO---MTLBO—GA 2.5 4. 业Y%上恤 3.5 2.0叶 3.0 9ttt656纯的pp 燕1.5 2.5 2.0 1.0 -GA 1.5 -TLBO 0.5M 1.0 *一MTLBO 0.5 0.51.01.52.02.53.03.54.04.55.0 000132艺5节岁芳若搭芳ǒ10 迭代次数 迭代次数 图3种群多样性变化曲线 图13种算法平均优化过程曲线 Fig.3 The diversity curve of population Fig.1 The mean convergence curve of three algorithms 4.5r*10 基于MTLBO的BP神经网络优化 4.0h 本文目标是利用改进的教与学优化算法对神经 3.5 3.0 网络中的所有权值和阈值进行优化,使得网络的输 2.5 出值和期望输出值之间的误差尽可能的小、 2.0 盛 为了检验本文算法在神经网络优化中的性能, 1.5 1.0 分别通过函数拟合实验和拖拉机齿轮箱故障测试进 0.5 行验证.并且与遗传算法(GA)和基本TLBO算法进 行比较,算法的初始化参数设置如表2. GA TLBO MTLBO 图23种算法30次运行最优解统计盒 表2算法参数设置 Fig.2 The box diagram of optimal solution for three al- Table 2 Parameters setting of algorithms gorithms over 30 separate runs 最大评价次 3.2算法多样性与收敛性分析 算法 NP 其他参数 数(FEs) 为了验证本文算法的种群多样性变化和收敛 GA 50 cp=0.6,mp=0.1 性,利用下列公式跟踪记录种群的多样性变化 TLBO 50 20 ToP=0.55,SRP=0.3, MTLBO 50 su() LP=0.1 PV()=d 4.1 函数拟合 式中:Std,(t)表示在时刻t时,第i维上的标准差 本文选取函数Griewank:y(x)= 1 PV(t)(population variance,PV)表示所有维在t时 4000台
均最优解 Mean,标准差 Std 和算法运行时间 Runt⁃ ime,具体结果如表 1 所示.图 1 和图 2 分别给出 3 中 算法的优化过程曲线和 30 次独立运行最优解统计 盒图. 表 1 算法 GA、TLBO 和 MTLBO 对函数 Schwefel 2.26 的测 试结果 Table 1 The test results of three algorithms (GA, TLBO and MTLBO) for function Schwefel 2.26 参数 GA TLBO MTLBO Best 41 507.39 16 347.970 0.001 590 Mean 41 503.93 25 933.470 0.003 708 Worst 41 501.83 35 622.770 0.007 314 Std 3.899 08 5 452.302 0.001 547 运行时间/ s 41.048 43 12.779 560 16.899 730 图 1 3 种算法平均优化过程曲线 Fig.1 The mean convergence curve of three algorithms 图 2 3 种算法 30 次运行最优解统计盒 Fig.2 The box diagram of optimal solution for three al⁃ gorithms over 30 separate runs 3.2 算法多样性与收敛性分析 为了验证本文算法的种群多样性变化和收敛 性,利用下列公式跟踪记录种群的多样性变化. PV(t) = 1 d ∑ d i = 1 Stdi(t). 式中:Stdi(t) 表示在时刻 t 时,第 i 维上的标准差. PV(t) (population variance, PV)表示所有维在 t 时 刻的方差平均值.通过跟踪记录种群在搜索空间的 多样性变化,判断算法的空间探索能力.较好的优化 算法前期具有较大的种群多样性,随着优化的进行, 种群逐步向全局最优点靠近,多样性逐步降低.图 3 是在 D= 100 时,多峰值函数 Schwefel 2.26 的种群多 样性变化曲线.从图 3 可以看出,本文算法的收敛曲 线是在“活跃跳动”中逐步下降,使其能够获得高精度 的全局最优解,而算法 GA 和 TLBO 算法的多样性很 快就处于一种停滞状态,这是由于 Schwefel 2.26 存在 很多函数值比较接近和相等的“局部”最优解,而全局 最优解是在边界附近的点(420.968 7,420.968 7,…, 420.968 7), 在没有发现全局最优解时,个体是在各 个相近的局部最优解间跳动,使得搜索能力降低,全 局收敛性变差. 图 3 种群多样性变化曲线 Fig.3 The diversity curve of population 4 基于 MTLBO 的 BP 神经网络优化 本文目标是利用改进的教与学优化算法对神经 网络中的所有权值和阈值进行优化,使得网络的输 出值和期望输出值之间的误差尽可能的小. 为了检验本文算法在神经网络优化中的性能, 分别通过函数拟合实验和拖拉机齿轮箱故障测试进 行验证.并且与遗传算法(GA)和基本 TLBO 算法进 行比较,算法的初始化参数设置如表 2. 表 2 算法参数设置 Table 2 Parameters setting of algorithms 算法 最大评价次 数(FEs) NP 其他参数 GA 50 — cp = 0.6, mp = 0.1 TLBO 50 20 MTLBO 50 — ToP = 0.55,SRP = 0.3, ILP = 0.1 4.1 函数拟合 本文选取函数 Griewank: y ( x) = 1 4 000 ∑ d i = 1 x 2 i - ·330· 智 能 系 统 学 报 第 8 卷
第4期 拓守恒:一种优化神经网络的教与学优化算法 .331· (cos(点)+1(d=10)进行拟合测试在搜素空间 Errors norm(Y-T_test)= [-10,10]中随机产生40个点,其中30个作为训练 式中:N是测试样本的个数,d是输出层输出的节点数 输入数据,10个作为测试输入数据.通过对训练后 分别采用遗传算法GA、基本的TLBO和本文算 的神经网络进行测试数据的评价.评价函数定义为 法MTLBO算法进行神经网络的优化,具体实验结 户三引x-4,其中,x为测试数据对应的Grievan止 果如表4.图5是3种算法的优化过程中误差变化 曲线 函数值,t:为神经网络输出值.在同样的条件下分别 表43种算法对拖拉机齿轮箱故障诊断实验测试结果 利用遗传算法、基本TLBO算法和本文算法MTLBO Table 4 The test results of three algorithms on the tractor 进行神经网络的训练和测试,结果如表3,图4中给 gearbox diagnosis experiment 出了4种算法对测试样本的预测输出和函数期望输 算法 测试样本误差训练样本误差预测准确率/% 出值. GA 0.0061671 0.015546 99 表33种算法对Griewank函数的拟合实验测试结果 TLBO 0.0254180 0.063720 94 Table 3 The function fitting error of three algorithms on function Griewank MTLB00.0005988 0.000803 100 算法 测试样本的仿真误差训练样本的仿真误差 18r×10 米-MTLBO--TLBO--GA GA 1.16820 1.1609 16 14 TLBO 0.24106 1.6909 12 MTLBO 0.17336 1.1856 10 4.2拖拉机齿轮箱故障诊断 齿轮箱由齿轮副、轴、轴承、箱体、润滑油等组 成,故障大多出现在齿轮箱及传动轴等机械传动故 障四),对于其故障的诊断可以根据其在1~6挡时 各个轴承的15个频率特征(转速、转频、滚珠数、内 1020 30 0 40 代数 圈、外圈等)值进行判断.齿轮箱状态可划分为无故 图53种算法进行神经网络故障诊断误差曲线 障、齿根裂纹和齿断3种 Fig.5 The neural network error curve of three algo- 2.0m ,★,MTLBO rithms on the tractor gearbox diagnosis experi- 一。一函数期望值 1.8 ·-TLBO ment BGA 1.6 由表4可以明显看出,本文算法优化的神经网 络进行齿轮箱故障诊断时误差非常小,诊断准确率 鏢 100%.图5中的误差曲线变化可以看出,与GA和 1.2 TLB0相比,本文算法进行优化时具有收敛速度快, 求解精度高等优势 0.8 5结束语 0.6 0.4 本文提出了一种用于神经网络优化的教与学优 c3 样本点 化算法,该算法通过对神经网络的网络权值和阈值 图43种算法对函数Griewank拟合输出结果对比 进行优化,使得网络的输出和期望输出的误差最小 Fig.4 The function fitting curve comparison of three 最后,通过函数拟合实验和拖拉机齿轮箱故障诊断 algorithms on function Griewank 实验,实验结果表明,本文算法在对神经网络进行优 本文使用文献[13]中提供的拖拉机故障检测 化时,与遗传算法和基本的TLB0算法相比具有明 数据中的9组数据作为训练样本和3组测试样本 显优势 优化算法的适应值评价函数定义[为: 参考文献: f=minErrors, [1]YU X H.Can backpropagation error surface not have local
∏ d i = 1 (cos( xi i ))+1 (d = 10)进行拟合测试.在搜索空间 [ -10,10] d中随机产生 40 个点,其中 30 个作为训练 输入数据,10 个作为测试输入数据.通过对训练后 的神经网络进行测试数据的评价.评价函数定义为 f =∑ NP i = 1 yi -t i ,其中,yi 为测试数据对应的 Griewank 函数值,t i 为神经网络输出值.在同样的条件下分别 利用遗传算法、基本 TLBO 算法和本文算法 MTLBO 进行神经网络的训练和测试,结果如表 3,图 4 中给 出了 4 种算法对测试样本的预测输出和函数期望输 出值. 表 3 3 种算法对 Griewank 函数的拟合实验测试结果 Table 3 The function fitting error of three algorithms on function Griewank 算法 测试样本的仿真误差 训练样本的仿真误差 GA 1.168 20 1.160 9 TLBO 0.241 06 1.690 9 MTLBO 0.173 36 1.185 6 4.2 拖拉机齿轮箱故障诊断 齿轮箱由齿轮副、轴、轴承、箱体、润滑油等组 成,故障大多出现在齿轮箱及传动轴等机械传动故 障[12] ,对于其故障的诊断可以根据其在 1 ~ 6 挡时 各个轴承的 15 个频率特征(转速、转频、滚珠数、内 圈、外圈等)值进行判断.齿轮箱状态可划分为无故 障、齿根裂纹和齿断 3 种. 图 4 3 种算法对函数 Griewank 拟合输出结果对比 Fig. 4 The function fitting curve comparison of three algorithms on function Griewank 本文使用文献[13]中提供的拖拉机故障检测 数据中的 9 组数据作为训练样本和 3 组测试样本. 优化算法的适应值评价函数定义[14]为: f = minErrors, Errors = norm(Y - T_test) = 1 N∑ N i = 1 ∑ d j y j i - t j i ( ) . 式中:N 是测试样本的个数,d 是输出层输出的节点数. 分别采用遗传算法 GA、基本的 TLBO 和本文算 法 MTLBO 算法进行神经网络的优化,具体实验结 果如表 4. 图 5 是 3 种算法的优化过程中误差变化 曲线. 表 4 3 种算法对拖拉机齿轮箱故障诊断实验测试结果 Table 4 The test results of three algorithms on the tractor gearbox diagnosis experiment 算法 测试样本误差 训练样本误差 预测准确率/ % GA 0.006 167 1 0.015 546 99 TLBO 0.025 418 0 0.063 720 94 MTLBO 0.000 598 8 0.000 803 100 图 5 3 种算法进行神经网络故障诊断误差曲线 Fig.5 The neural network error curve of three algo⁃ rithms on the tractor gearbox diagnosis experi⁃ ment 由表 4 可以明显看出,本文算法优化的神经网 络进行齿轮箱故障诊断时误差非常小,诊断准确率 100%.图 5 中的误差曲线变化可以看出,与 GA 和 TLBO 相比,本文算法进行优化时具有收敛速度快, 求解精度高等优势. 5 结束语 本文提出了一种用于神经网络优化的教与学优 化算法,该算法通过对神经网络的网络权值和阈值 进行优化,使得网络的输出和期望输出的误差最小. 最后,通过函数拟合实验和拖拉机齿轮箱故障诊断 实验,实验结果表明,本文算法在对神经网络进行优 化时,与遗传算法和基本的 TLBO 算法相比具有明 显优势. 参考文献: [1]YU X H. Can backpropagation error surface not have local 第 4 期 拓守恒:一种优化神经网络的教与学优化算法 ·331·
.332. 智能系统学报 第8卷 minims[J].Neural Networks,1992,3(6):1009-1021. [10]GEEM Z W,KIM J H,LOGANATHAN G V.A new heu- [2]YU X H,CHEN G A.On the local minima free condition of ristic optimization algorithm:harmony search[J].Simula- backpropagation learning[J].IEEE Transactions on Neural tiom,2001,76(2):60-68. Networks,1995,6(5):1300-1303. [11]TUO Shouheng,YONG Longquan.An improved harmony [3]GOLDBERG D E,KORB B.DEB K.Messy genetic algo- search algorithm with chaos[].Joural of Computational rithms:motivation,analysis,and first results[J.Complex Information Systems,2012,8(10):4269-4276. Systems,1989,3(5):493-530. [12]赵爽.基于SVM的拖拉机齿轮箱多故障诊断方法研究 [4]CLERC M,KENNEDY J.The particle swarm-explosion, [J刀.农机化研究,2011,33(5):207-209. stability,and convergence in a multidimensional complex ZHAO Shuang.Research of multi-faults in the Tractor's space[J].IEEE Transactions on Evolutionary Computation, gearbox based on support vector machines method [J]. 2002,6(1):58-73. Journal of Agricultural Mechanization Research,2011,33 [5]RAO R V,SAVSANI V J,VAKHARIA D P.Teaching- (5):207-209. learning-based optimization:a novel method for constrained [l3]史峰,王辉,胡斐,等.Matlab智能算法30个案例分析 mechanical design optimization problems[].Computer Ai- [M].北京:北京航空航天大学出版社,2011:137- ded Design,2011,43(3):303-315. 144. [6]RAO R V,SAVSANI V J,VAKHARIA D P.Teaching- [14]杜文莉,周仁,赵亮,等.基于量子差分进化算法的神经 learning-based optimization:an optimization method for 网络优化方法[J].清华大学学报:自然科学,2012,52 continuous non-linear large scale problems[].Information (3):331-335. Sciences,2012,183(1):1-15. DU Wenli,ZHOU Ren,ZHAO Liang,et al.Cooperative [7]MATEJ C.LIU S H,MERNIK L.A note on teaching-learn- quantum differential evolution algorithm based method for ing-based optimization algorithm[].Information Sciences, optimizing neural networks[J].Journal of Tsinghua Univer- 2012,212(1):79-93. sity:Science and Technology,2012,52(3):331-335. [8]RAO R V,PATEL V.An elitist teaching-learning-based op- 作者简介: timization algorithm for solving complex constrained optimi- 拓守恒,男,1978年生,讲师,CCF zation problems[J.International Journal of Industrial Engi- 会员,主要研究方向为智能优化算法与 neering Computations,2012,3(4):535-560. 智能信息处理,发表学术论文多篇 [9]ZOU D X.GAO L Q,WU J H,et al.A novel global har- mony search algorithm for reliability problems[].Comput- ers and Industrial Engineering,2010,58(2):307-316
minims[J]. Neural Networks, 1992, 3(6): 1009⁃1021. [2]YU X H, CHEN G A. On the local minima free condition of backpropagation learning[ J]. IEEE Transactions on Neural Networks, 1995, 6(5): 1300⁃1303. [3]GOLDBERG D E, KORB B, DEB K. Messy genetic algo⁃ rithms: motivation, analysis, and first results[J]. Complex Systems, 1989, 3(5): 493⁃530. [4]CLERC M, KENNEDY J. The particle swarm—explosion, stability, and convergence in a multidimensional complex space[J]. IEEE Transactions on Evolutionary Computation, 2002, 6 (1): 58⁃73. [5] RAO R V, SAVSANI V J, VAKHARIA D P. Teaching⁃ learning⁃based optimization: a novel method for constrained mechanical design optimization problems[J]. Computer Ai⁃ ded Design, 2011, 43(3): 303⁃315. [6] RAO R V, SAVSANI V J, VAKHARIA D P. Teaching⁃ learning⁃based optimization: an optimization method for continuous non⁃linear large scale problems[ J]. Information Sciences, 2012, 183 (1): 1⁃15. [7]MATEJ C, LIU S H, MERNIK L. A note on teaching⁃learn⁃ ing⁃based optimization algorithm[ J]. Information Sciences, 2012, 212 (1): 79⁃93. [8]RAO R V, PATEL V. An elitist teaching⁃learning⁃based op⁃ timization algorithm for solving complex constrained optimi⁃ zation problems[J]. International Journal of Industrial Engi⁃ neering Computations, 2012, 3(4): 535⁃560. [9]ZOU D X, GAO L Q, WU J H, et al. A novel global har⁃ mony search algorithm for reliability problems[ J]. Comput⁃ ers and Industrial Engineering, 2010, 58 (2): 307⁃316. [10]GEEM Z W, KIM J H, LOGANATHAN G V. A new heu⁃ ristic optimization algorithm: harmony search[ J]. Simula⁃ tion, 2001, 76(2): 60⁃68. [11] TUO Shouheng, YONG Longquan. An improved harmony search algorithm with chaos[ J]. Journal of Computational Information Systems, 2012, 8(10): 4269⁃4276. [12]赵爽. 基于 SVM 的拖拉机齿轮箱多故障诊断方法研究 [J]. 农机化研究, 2011, 33(5): 207⁃209. ZHAO Shuang. Research of multi⁃faults in the Tractor’ s gearbox based on support vector machines method [ J ]. Journal of Agricultural Mechanization Research, 2011, 33 (5): 207⁃209. [13]史峰,王辉,胡斐,等. Matlab 智能算法 30 个案例分析 [M]. 北京: 北京航空航天大学出版社, 2011: 137⁃ 144. [14]杜文莉,周仁,赵亮,等. 基于量子差分进化算法的神经 网络优化方法[J]. 清华大学学报:自然科学, 2012, 52 (3): 331⁃335. DU Wenli, ZHOU Ren, ZHAO Liang, et al. Cooperative quantum differential evolution algorithm based method for optimizing neural networks[J].Journal of Tsinghua Univer⁃ sity: Science and Technology, 2012, 52(3): 331⁃335. 作者简介: 拓守恒,男,1978 年生,讲师,CCF 会员,主要研究方向为智能优化算法与 智能信息处理,发表学术论文多篇. ·332· 智 能 系 统 学 报 第 8 卷