D0I:10.13374/1.issm100103.2008.09.03 第30卷第9期 北京科技大学学报 Vol.30 No.9 2008年9月 Journal of University of Science and Technology Beijing Sep·2008 多感官群集智能算法及其在前向神经网络训练方面的 应用 刘 帆12)解仑)李秉太)王志良)郑雪峰) 1)北京科技大学信息工程学院,北京1000832)西安卫星测控中心,西安710043 3)民政部一零一研究所,北京101601 摘要针对连续域函数优化问题,提出了一种新的全局极大值搜索方法一多感官群集智能算法(multi-sense swarm intelli~ gence algorithm,MSA)·受鱼群算法(artificial fish"swarm algorithm,AFA)和FS算法((free search algorithm,FSA)的启发,MSA的 搜索机制将大范围勘察和小范围精确搜索相结合,个体在使用视觉信息快速逼近局部较优解的同时,利用嗅觉信息避免群体 过于集中并引导个体向全局较优解方向移动·仿真结果证明:MSA鲁棒性较强,全局收敛性好,收敛速度较快,收敛精度较 高·最后,将该方法应用于前向神经网络训练,结果表明满足应用要求, 关键词多感官群集智能算法;人工鱼群算法;FS算法:连续函数优化;神经网络训练 分类号TP301.6 Multi-sense swarm intelligence algorithm and its application in feed-forward neu- ral networks training LIU Fan2),XIE Lun),LI Bingjie),WANG Zhiliang).ZHENG Xuefeng) 1)School of Information Engineering.University of Science and Technology Beijing.Beijing 100083.China 2)Xian Satellite Control Center,Xian 710043.China 3)No-1 Institute of Domestic Affairs.Beijing 101601,China ABSTRACI A novel method for global optimization,multi-sense swarm intelligence algorithm (MSA).was presented to solve con- tinuous function optimization problems.Inspired by the artificial fish"swarm algorithm(AF A)and the FS algorithm(free search algo- rithm.FSA),the search mechanism of MSA combined large scale exploration and local precise search:even more,in this algorithm. the unit employed both visual information for quick approaching to local optimization solution and pheromone information to avoid overcrowding and to guide itself to global solution.Simulation shows that MSA has strong robust ness,good global convergence,quick convergence speed and high convergence accuracy.At last,MSA was applied to feed-forward neural network training.The result shows that this algorithm is fit for the application. KEY WORDS multi-sense swarm intelligence algorithm:artificial fish-swarm algorithm:free search algorithm:continuous function optimization;neural network training 自然界中动物、昆虫常以集体的力量进行觅食 能难以做到的山,在群集智能的研究基础上,人们 生存,单个个体所表现的行为通常是缺乏智能的,但 先后提出了多种群集智能算法(swarm intelligence 由个体组成的群体则表现出了一种有效的复杂的智 algorithm),如遗传算法(GA)、蚁群算法(AC0)、粒 能行为一群集智能(swarm intelligence),群集智 子群算法(PSO)以及人工鱼群算法(AFA)·群集智 能可以在适当的进化机制引导下通过个体交互以某 能算法将搜索和优化过程模拟成个体的进化或觅食 种突现形式发挥作用,这是个体以及可能的个体智 过程,用搜索空间中的点模拟自然界中的个体;将求 收稿日期:2007-09-20修回日期:2008-07-30 基金项目:国家自然科学基金资助项目(N。.60573059):国家高技术研究计划资助项目(No.2007AA04忆218) 作者简介:刘帆(1978-),男,硕士研究生:解仑(1968一),男,副教授.博士,E-mail:y9ao@mail,tsinghua:cd~cm
多感官群集智能算法及其在前向神经网络训练方面的 应用 刘 帆12) 解 仑1) 李秉杰3) 王志良1) 郑雪峰1) 1) 北京科技大学信息工程学院北京100083 2) 西安卫星测控中心西安710043 3) 民政部一零一研究所北京101601 摘 要 针对连续域函数优化问题提出了一种新的全局极大值搜索方法———多感官群集智能算法(mult-i sense swarm intelligence algorithmMSA).受鱼群算法(artificial fish-swarm algorithmAFA)和 FS 算法(free search algorithmFSA)的启发MSA 的 搜索机制将大范围勘察和小范围精确搜索相结合个体在使用视觉信息快速逼近局部较优解的同时利用嗅觉信息避免群体 过于集中并引导个体向全局较优解方向移动.仿真结果证明:MSA 鲁棒性较强全局收敛性好收敛速度较快收敛精度较 高.最后将该方法应用于前向神经网络训练结果表明满足应用要求. 关键词 多感官群集智能算法;人工鱼群算法;FS 算法;连续函数优化;神经网络训练 分类号 TP301∙6 Multi-sense swarm intelligence algorithm and its application in feed-forward neural networks training LIU Fan 12)XIE L un 1)LI Bingjie 3)W A NG Zhiliang 1)ZHENG Xuefeng 1) 1) School of Information EngineeringUniversity of Science and Technology BeijingBeijing100083China 2) Xian Satellite Control CenterXian710043China 3) No.1Institute of Domestic AffairsBeijing101601China ABSTRACT A novel method for global optimizationmult-i sense swarm intelligence algorithm (MSA)was presented to solve continuous function optimization problems.Inspired by the artificial fish-swarm algorithm (AFA) and the FS algorithm (free search algorithmFSA)the search mechanism of MSA combined large scale exploration and local precise search;even morein this algorithm the unit employed both visual information for quick approaching to local optimization solution and pheromone information to avoid overcrowding and to guide itself to global solution.Simulation shows that MSA has strong robustnessgood global convergencequick convergence speed and high convergence accuracy.At lastMSA was applied to feed-forward neural network training.T he result shows that this algorithm is fit for the application. KEY WORDS mult-i sense swarm intelligence algorithm;artificial fish-swarm algorithm;free search algorithm;continuous function optimization;neural network training 收稿日期:2007—09—20 修回日期:2008—07—30 基金项目:国家自然科学基金资助项目(No.60573059);国家高技术研究计划资助项目(No.2007AA04Z218) 作者简介:刘 帆(1978—)男硕士研究生;解 仑(1968—)男副教授博士E-mail:ygao@mail.tsinghua.edu.cn 自然界中动物、昆虫常以集体的力量进行觅食 生存单个个体所表现的行为通常是缺乏智能的但 由个体组成的群体则表现出了一种有效的复杂的智 能行为———群集智能(swarm intelligence).群集智 能可以在适当的进化机制引导下通过个体交互以某 种突现形式发挥作用这是个体以及可能的个体智 能难以做到的[1].在群集智能的研究基础上人们 先后提出了多种群集智能算法(swarm intelligence algorithm)如遗传算法(GA)、蚁群算法(ACO)、粒 子群算法(PSO)以及人工鱼群算法(AFA).群集智 能算法将搜索和优化过程模拟成个体的进化或觅食 过程用搜索空间中的点模拟自然界中的个体;将求 第30卷 第9期 2008年 9月 北 京 科 技 大 学 学 报 Journal of University of Science and Technology Beijing Vol.30No.9 Sep.2008 DOI:10.13374/j.issn1001-053x.2008.09.023
,1062 北京科技大学学报 第30卷 解问题的目标函数度量成个体对环境的适应能力; 物在进行生物行为时,动物个体的行为特性依靠自 将个体的优胜劣汰过程或觅食过程类比为搜索和优 身本能一直觉(sense)和运动(mobile),而种群整 化过程中用好的可行解取代较差可行解的迭代过 体仍处于一种有序的进程之中,其中的个体存在着 程.从而,形成了一种以“生成十检验”特征的迭代 与整体进程相协调的个体随意行为,不考虑群体首 搜索算法,它是一种求解极值问题的自适应人工智 领的作用,个体与群体之间保持着协调一致性, 能技术。自组织性、突现性成为群集智能优化算法 FS算法(free search algorithm,FSA)中的一次 的两大基本特征[四].本文针对连续域函数优化问 行走包括两类行为:大范围内的勘察和小范围内的 题,借鉴AFA和FSA中的个体行为模式,提出了一 搜索。个体首先进行小范围搜索,即在小范围内进 种使用视觉和信息素的多感官群集智能算法(mlti 行有限步随机搜索,个体位置的修正策略决定于勘 sense swarm intelligence algorithm,MSA). 察边界和个体在第i维解空间中的可变领域值,并 且允许以大于0的概率在解空间中间进行搜索,从 1人工鱼群算法和FS算法 而避免陷入局部最优陷阱,完成有限步随机搜索 1.1人工鱼群算法 后,记录最大搜索解,并据此更新信息素表,个体转 人工鱼群算法是由李晓磊、邵之江等提出的一 为进行大范围内的勘察,首先随机生成敏感系数,然 种群集智能优化算法,它采用了自上而下的寻优模 后根据敏感系数并参照信息素表选择勘察位置,由 式模仿自然界鱼群觅食行为,主要利用鱼的觅食、聚 此完成一次行走[6] 群和追尾行为,构造了个体的底层行为]:通过鱼 群中各个体的局部寻优,达到全局最优值在群体中 2多感官群集智能算法(MSA) 突现出来的目的[). 2.1SA简介 聚群行为模仿了鱼出于生存和躲避危害的需要 本文提出的MSA借鉴并改进了人工鱼群算法 而自发聚集成群的生活习性,人工鱼个体搜索其可 中的个体行为模式和FS算法中的搜索策略,是一 见域范围内的伙伴数目及伙伴中心,如果伙伴中心 种基于视觉和嗅觉的全局优化搜索策略,该算法适 有较多的食物并且不太拥挤,则朝伙伴的中心位置 用于连续域函数优化问题.相对于其他群集算法, 方向前进一步,否则执行觅食行为 MSA拥有如下特点: 鱼的追尾行为模仿在鱼群的游动过程中,当其 (1)搜索策略将大范围勘察和小范围精确搜索 中一条或几条发现食物时,其临近的伙伴会尾随其 相结合,通过小范围精确搜索提高个体对极值解的 快速到达食物点,人工鱼个体搜索其可见域内的适 逼近精度,同时通过大范围勘察实现了个体对极值 应度最大的伙伴,如果该伙伴的食物浓度高且周围 的快速逼近, 不太拥挤,则人工鱼向伙伴的位置方向前进一步,否 (2)个体采用了基于视觉和嗅觉的勘察模式 则执行觅食行为 个体通过视觉信息分析群体当前搜索结果的同时, 觅食行为模仿了鱼在水中随机地自由游动,当 也通过嗅觉信息充分了解群体的过往搜索结果,由 发现食物时,则会向食物逐渐增多的方向游去,一般 此提高了群体对全局极值解的逼近速度, 作为人工鱼个体的缺省行为,人工鱼在其可见域随 (③)依据个体与信息素中心间的距离判断群体 机选择一个状态,如果该状态的适应度大于人工鱼 疏密,促使个体向新的领域探索,防止其陷于局部极 当前适应度,则向该状态方向前进一步,反之,再重 大值 新随机选择状态并判断是否满足前进条件,重复几 (4)采用信息素表记录群体搜索过程,在信息 次后如果仍不满足前进条件,则随机移动一步. 素表未满时依次记录最新搜索解,而在信息表已满 人工鱼在选择追尾行为和聚群行为时,一般采 时依据当前搜索解更新表中最小记录, 用试探的方法,最终以行动结果大的行为为准 (5)引入了健康因子,使个体的感知范围和移 1.2FS算法 动步长包含随机因素,扩大了个体的随机搜索范围. FS算法[]是由Penev和Littlefair提出的一种 2.2算法流程图 新的进化计算方法,这种算法在求解机制上采用的 MSA流程图如图1,个体搜索流程图如图2. 是一种具有个体意识的、自由的、不确定的个体行为 2.3算法步骤 方式,适用于解决实数空间的优化问题,具备鲁棒性 (1)程序初始化并开始迭代.对程序基本运行 强、收敛速度较快等特点,它仿照一些高等群居动 参数进行初始化,包括个体数目、个体状态、迭代上
解问题的目标函数度量成个体对环境的适应能力; 将个体的优胜劣汰过程或觅食过程类比为搜索和优 化过程中用好的可行解取代较差可行解的迭代过 程.从而形成了一种以“生成+检验”特征的迭代 搜索算法它是一种求解极值问题的自适应人工智 能技术.自组织性、突现性成为群集智能优化算法 的两大基本特征[2].本文针对连续域函数优化问 题借鉴 AFA 和 FSA 中的个体行为模式提出了一 种使用视觉和信息素的多感官群集智能算法(mult-i sense swarm intelligence algorithmMSA). 1 人工鱼群算法和 FS 算法 1∙1 人工鱼群算法 人工鱼群算法是由李晓磊、邵之江等提出的一 种群集智能优化算法.它采用了自上而下的寻优模 式模仿自然界鱼群觅食行为主要利用鱼的觅食、聚 群和追尾行为构造了个体的底层行为[3];通过鱼 群中各个体的局部寻优达到全局最优值在群体中 突现出来的目的[4]. 聚群行为模仿了鱼出于生存和躲避危害的需要 而自发聚集成群的生活习性.人工鱼个体搜索其可 见域范围内的伙伴数目及伙伴中心如果伙伴中心 有较多的食物并且不太拥挤则朝伙伴的中心位置 方向前进一步否则执行觅食行为. 鱼的追尾行为模仿在鱼群的游动过程中当其 中一条或几条发现食物时其临近的伙伴会尾随其 快速到达食物点.人工鱼个体搜索其可见域内的适 应度最大的伙伴如果该伙伴的食物浓度高且周围 不太拥挤则人工鱼向伙伴的位置方向前进一步否 则执行觅食行为. 觅食行为模仿了鱼在水中随机地自由游动当 发现食物时则会向食物逐渐增多的方向游去一般 作为人工鱼个体的缺省行为.人工鱼在其可见域随 机选择一个状态如果该状态的适应度大于人工鱼 当前适应度则向该状态方向前进一步.反之再重 新随机选择状态并判断是否满足前进条件.重复几 次后如果仍不满足前进条件则随机移动一步. 人工鱼在选择追尾行为和聚群行为时一般采 用试探的方法最终以行动结果大的行为为准. 1∙2 FS 算法 FS 算法[5]是由 Penev 和 Littlefair 提出的一种 新的进化计算方法.这种算法在求解机制上采用的 是一种具有个体意识的、自由的、不确定的个体行为 方式适用于解决实数空间的优化问题具备鲁棒性 强、收敛速度较快等特点.它仿照一些高等群居动 物在进行生物行为时动物个体的行为特性依靠自 身本能———直觉(sense)和运动(mobile)而种群整 体仍处于一种有序的进程之中其中的个体存在着 与整体进程相协调的个体随意行为不考虑群体首 领的作用个体与群体之间保持着协调一致性. FS 算法(free search algorithmFSA)中的一次 行走包括两类行为:大范围内的勘察和小范围内的 搜索.个体首先进行小范围搜索即在小范围内进 行有限步随机搜索个体位置的修正策略决定于勘 察边界和个体在第 i 维解空间中的可变领域值并 且允许以大于0的概率在解空间中间进行搜索从 而避免陷入局部最优陷阱.完成有限步随机搜索 后记录最大搜索解并据此更新信息素表.个体转 为进行大范围内的勘察首先随机生成敏感系数然 后根据敏感系数并参照信息素表选择勘察位置由 此完成一次行走[6]. 2 多感官群集智能算法(MSA) 2∙1 MSA 简介 本文提出的 MSA 借鉴并改进了人工鱼群算法 中的个体行为模式和 FS 算法中的搜索策略是一 种基于视觉和嗅觉的全局优化搜索策略该算法适 用于连续域函数优化问题.相对于其他群集算法 MSA 拥有如下特点: (1) 搜索策略将大范围勘察和小范围精确搜索 相结合.通过小范围精确搜索提高个体对极值解的 逼近精度同时通过大范围勘察实现了个体对极值 的快速逼近. (2) 个体采用了基于视觉和嗅觉的勘察模式. 个体通过视觉信息分析群体当前搜索结果的同时 也通过嗅觉信息充分了解群体的过往搜索结果由 此提高了群体对全局极值解的逼近速度. (3) 依据个体与信息素中心间的距离判断群体 疏密促使个体向新的领域探索防止其陷于局部极 大值. (4) 采用信息素表记录群体搜索过程.在信息 素表未满时依次记录最新搜索解而在信息表已满 时依据当前搜索解更新表中最小记录. (5) 引入了健康因子使个体的感知范围和移 动步长包含随机因素扩大了个体的随机搜索范围. 2∙2 算法流程图 MSA 流程图如图1个体搜索流程图如图2. 2∙3 算法步骤 (1) 程序初始化并开始迭代.对程序基本运行 参数进行初始化包括个体数目、个体状态、迭代上 ·1062· 北 京 科 技 大 学 学 报 第30卷
第9期 刘帆等:多感官群集智能算法及其在前向神经网络训练方面的应用 ,1063 式中,Health为健康因子,a、B为比例因子且满足 初始化 a十B-1(0≤a≤1,0≤≤1),random(0,1)为区间 判断是否达到最大迭代次数.是,则终止迭代 [0,1]上的均匀分布随机数 判衡是否完成一次群体迭代.是,则迭代次数加1 Sense-HealthXSense-std (2) 式中,Sense-std为标准感知范围,Sense表示个体感 个体寻优,返回搜索解 知范围 判断个体搜索解是否大于群体最优解 Step=HealthXStep-std (3) 判断群体最优解是否小于收敛门限。是,则继续选代 式中,Step-std为个体的标准步长,Step为移动步长. 输出结果 ②进行小范围精确搜索,在小范围精确搜索 过程中,个体进行有限次随机搜索,在每次搜索中, 图1MSA流程图 个体都依据 Fig.1 MSA flow chart X;=X;+Stepx(2random(0,1)-1),(4) 生成随机的新状态,并通过比较新引旧两状态的适应 、个搜索开始 度决定是否进行状态更新.这里提到的适应度代表 随机生成健康因子 一个个体所对应解的优劣,通常由适应度函数表示. 对于求极大值问题,适应度函数可直接采用待优化 小范围精确搜索 函数,也可采用设定的指标函数,式中,X:=(x1, 大范围助察 x2,…,x)为个体i当前状态,s为个体状态的分量 判断个体与信息素中心是否 总数,X:表示个体状态的第j个分量,j取值范围为 过近.是,则转入随机拗察 1到s间的整数.X:表示个体i新状态.X:、X:满 行为选择 足d:=‖X-X‖<Step 状态更新公式如下: 随机勘察 Xi=X (5) 返回搜索解 ③进行大范围勘察,小范围精确搜索完成后, 个体计算出信息素中心状态和感知范围内的群体中 图2个体搜索流程图 Fig.2 Unit search flow chart 心状态,并搜索出感知范围内拥有最大适应度的相 邻个体状态 限、收敛门限、信息素表记录个数、个体的标准感知 信息素中心状态计算公式如下: 范围和标准步长,在实际使用中,须注意以下问题: 个体状态是寻优问题的优化解,可采用两种初始化 Paner=1' 台 P (6) 方法:随机赋初值或指定固定值;个体的标准感知范 式中,Pcenter=(p1,p2,…,ps)为信息素中心状态, 围、标准步长应设为固定比例,对于连续域函数优 P(U=1,2,…,S)表示信息素的第j个分量.P表 化问题,参考比例一般可取为5:1;信息素表记录个 示信息素表中第k条信息素记录,m为信息素表中 数不宜过多,一般应小于等于个体数目, 记录总数 (2)判断是否达到迭代上限.是,则退出并返 群体中心状态计算公式如下: 回当前群体最优解:否则继续进行执行 (③)判断是否所有个体已轮流搜索过一遍 -h 2X1 是,则迭代次数加1:否则继续执行. d=‖X:-X,‖Sense (7) (4)各个体轮流从当前状态开始搜索,具体流 式中,Ycenter为群体中心状态,X,为其感知范围内的 程如下, 相邻个体状态,n为可感知个体总数 ①随机生成健康因子,并据此计算出个体的感 ④判别是否拥挤,若信息素中心与个体间的 知范围和移动步长,各个体在进行每次搜索前,均 距离当前小于某固定值e(e远小于标准感知范 需先随机生成健康因子,健康因子与个体的嗅觉范 围),说明个体周围过于拥挤或其处于某一极值附 围、视觉范围和移动步长直接相关: 近,此时个体直接转入第⑥步,进行随机勘察 Health=a+Prandom(0,1) (1) ⑤行为选择,依次将信息素中心状态、群体中
图1 MSA 流程图 Fig.1 MSA flow chart 图2 个体搜索流程图 Fig.2 Unit search flow chart 限、收敛门限、信息素表记录个数、个体的标准感知 范围和标准步长.在实际使用中须注意以下问题: 个体状态是寻优问题的优化解可采用两种初始化 方法:随机赋初值或指定固定值;个体的标准感知范 围、标准步长应设为固定比例.对于连续域函数优 化问题参考比例一般可取为5∶1;信息素表记录个 数不宜过多一般应小于等于个体数目. (2) 判断是否达到迭代上限.是则退出并返 回当前群体最优解;否则继续进行执行. (3) 判断是否所有个体已轮流搜索过一遍. 是则迭代次数加1;否则继续执行. (4) 各个体轮流从当前状态开始搜索具体流 程如下. ① 随机生成健康因子并据此计算出个体的感 知范围和移动步长.各个体在进行每次搜索前均 需先随机生成健康因子.健康因子与个体的嗅觉范 围、视觉范围和移动步长直接相关: Health=α+βrandom(01) (1) 式中Health 为健康因子α、β为比例因子且满足 α+β=1(0≤α≤10≤β≤1)random(01)为区间 [01]上的均匀分布随机数. Sense=Health×Sense—std (2) 式中Sense—std 为标准感知范围Sense 表示个体感 知范围. Step=Health×Step—std (3) 式中Step—std 为个体的标准步长Step 为移动步长. ② 进行小范围精确搜索.在小范围精确搜索 过程中个体进行有限次随机搜索.在每次搜索中 个体都依据 X′i=Xi+Step×(2random(01)—1) (4) 生成随机的新状态并通过比较新旧两状态的适应 度决定是否进行状态更新.这里提到的适应度代表 一个个体所对应解的优劣通常由适应度函数表示. 对于求极大值问题适应度函数可直接采用待优化 函数也可采用设定的指标函数.式中Xi=( x1 x2…xs)为个体 i 当前状态s 为个体状态的分量 总数Xj 表示个体状态的第 j 个分量j 取值范围为 1到 s 间的整数.X′i 表示个体 i 新状态.Xi、X′i 满 足 di=‖Xi—X′i‖<Step. 状态更新公式如下: Xi=X′i (5) ③ 进行大范围勘察.小范围精确搜索完成后 个体计算出信息素中心状态和感知范围内的群体中 心状态并搜索出感知范围内拥有最大适应度的相 邻个体状态. 信息素中心状态计算公式如下: Pcenter= 1 m ∑ m k=1 Pk (6) 式中Pcenter=( p1p2…ps)为信息素中心状态 Pj( j=12…s)表示信息素的第 j 个分量.Pk 表 示信息素表中第 k 条信息素记录m 为信息素表中 记录总数. 群体中心状态计算公式如下: Xcenter= 1 n ∑ n l=1 Xl d′i=‖Xi—Xl‖≤Sense (7) 式中Xcenter为群体中心状态Xl 为其感知范围内的 相邻个体状态n 为可感知个体总数. ④ 判别是否拥挤.若信息素中心与个体间的 距离当前小于某固定值 ε(ε远小于标准感知范 围)说明个体周围过于拥挤或其处于某一极值附 近此时个体直接转入第⑥步进行随机勘察. ⑤ 行为选择.依次将信息素中心状态、群体中 第9期 刘 帆等: 多感官群集智能算法及其在前向神经网络训练方面的应用 ·1063·
,1064 北京科技大学学报 第30卷 心状态和最大相邻个体状态代入 始个体状态均设为(一10,一10),个体标准感知范围 X=X:+SenseX(X-X:)/‖x-X:‖(8) 为2.5,个体标准步长为0.5,迭代上限为500次,收 选取其中适应度最大者与个体当前适应度进行比 敛门限为0.995,适应度函数直接取为Scharffer's 较.若大于,则据此更新个体当前状态并返回勘察 F6函数, 结果;否则执行⑥步 为作比较,这里同时给出了鱼群算法和FS算 ⑥随机勘察,个体在其感知范围内随机选择 法测试结果。计算过程中,这两种算法所采用的个 个新状态,如 体数、初始个体状态、迭代上限和迭代门限均与 X;=X;+Sensex(2random(0,1)-1)(9) MSA计算时相同. 若新状态的适应度大于当前值,则以此更新个体状 测试计算各进行10次,三种算法的计算结果 态并返回勘察结果;否则继续勘察,重复几次后如 表1~3.三种算法的综合比较结果如图4所示. 果仍不满足条件,则以最后一次选择的状态进行更 表1MSA测试结果 新并返回勘察结果, Table 1 MSA simulation results (5)若该返回解大于当前群体最优解,则将该 序号迭代次数 搜索解 序号迭代次数 搜索解 返回解赋给当前群体最优解 1 88 0.9952 6 104 0.9957 (6)更新信息素表,若信息素表未满,将返回 2 137 0.9963 7 48 0.9971 解直接添加至表中;若已满,则仅在返回解的适应度 3 60 0.9956 8 125 0.9977 值大于表中最小解时以返回解覆盖表中最小解 49 0.9989 9 42 0.9995 (7)判断是否达到收敛门限.是,则退出并返 92 0.9962 10 24 0.9957 回当前群体最优解;否则返回步骤(②)继续执行, 2.4算法仿真测试 表2基本AFA测试结果 Table 2 AFA simulation results Scharffer'sF6函数[优化问题数学描述如下: 序号迭代次数 搜索解 序号迭代次数搜索解 maxf(1,x2)=0.5+(sm什通)2-0.5 1 65 0.9964 6 48 0.9972 [1+0.001×(x+x)]2 2 ” 0.9955 7 43 0.9956 (10) 3 128 0.9999 8 121 0.9992 Scharffer'sF6函数有无数个极大指点,全局极 25 0.9993 47 0.9990 大值点为(0,0),最大值为1.全局极大值点由一圈 71 0.9975 10 160 0.9977 圈的脊峰围绕,其中最内一圈脊峰取值均为 0.990283,故极易陷入在此的局部极大点,是一个 表3FSA测试结果 Table 3 FSA simulation results 很难求解的多蜂值优化函数,该函数的局部三维如 序号迭代次数 搜索解 序号迭代次数 搜索解 图3所示. 1 202 0.9988 6 159 0.9989 2 119 0.9965 88 0.9981 3 160 0.9964 8 67 0.9994 4 209 0.9995 9 34 0.9987 0 146 0.9984 203 0.9961 o 160 口平均选代次效 0.2 ▣平均计算精度 9120 口送代成功率 99.68100 99.77100 99.81100 700 0 -10-105 图3 Scharffer'sF6函数局部三维视图 Fig.3 Scharffer's F6 three-dimensional chart MSA AFA FSA 以Scharffer'sF6函数优化问题对多感官群集 图4三种算法计算结果的比较 智能算法(MSA)进行测试,设定个体数为10个,初 Fig.4 Comparison of results by three algorithms
心状态和最大相邻个体状态代入 Xj=Xi+Sense×( X′i—Xi)/‖X′i—Xi‖ (8) 选取其中适应度最大者与个体当前适应度进行比 较.若大于则据此更新个体当前状态并返回勘察 结果;否则执行⑥步. ⑥ 随机勘察.个体在其感知范围内随机选择 一个新状态如 Xj=Xi+Sense×(2random(01)—1) (9) 若新状态的适应度大于当前值则以此更新个体状 态并返回勘察结果;否则继续勘察.重复几次后如 果仍不满足条件则以最后一次选择的状态进行更 新并返回勘察结果. (5) 若该返回解大于当前群体最优解则将该 返回解赋给当前群体最优解. (6) 更新信息素表.若信息素表未满将返回 解直接添加至表中;若已满则仅在返回解的适应度 值大于表中最小解时以返回解覆盖表中最小解. (7) 判断是否达到收敛门限.是则退出并返 回当前群体最优解;否则返回步骤(2)继续执行. 2∙4 算法仿真测试 Scharffer’s F6函数[7]优化问题数学描述如下: max f ( x1x2)=0∙5+ (sin x 2 1+ x 2 2) 2—0∙5 [1+0∙001×( x 2 1+ x 2 2)] 2 (10) Scharffer’s F6函数有无数个极大指点全局极 大值点为(00)最大值为1.全局极大值点由一圈 圈的 脊 峰 围 绕其 中 最 内 一 圈 脊 峰 取 值 均 为 0∙990283故极易陷入在此的局部极大点是一个 很难求解的多峰值优化函数.该函数的局部三维如 图3所示. 图3 Scharffer’s F6函数局部三维视图 Fig.3 Scharffer’s F6three-dimensional chart 以 Scharffer’s F6函数优化问题对多感官群集 智能算法(MSA)进行测试设定个体数为10个初 始个体状态均设为(—10—10)个体标准感知范围 为2∙5个体标准步长为0∙5迭代上限为500次收 敛门限为0∙995适应度函数直接取为 Scharffer’s F6函数. 为作比较这里同时给出了鱼群算法和 FS 算 法测试结果.计算过程中这两种算法所采用的个 体数、初始个体状态、迭代上限和迭代门限均与 MSA 计算时相同. 测试计算各进行10次三种算法的计算结果 表1~3.三种算法的综合比较结果如图4所示. 表1 MSA 测试结果 Table1 MSA simulation results 序号 迭代次数 搜索解 1 88 0∙9952 2 137 0∙9963 3 60 0∙9956 4 49 0∙9989 5 92 0∙9962 序号 迭代次数 搜索解 6 104 0∙9957 7 48 0∙9971 8 125 0∙9977 9 42 0∙9995 10 24 0∙9957 表2 基本 AFA 测试结果 Table2 AFA simulation results 序号 迭代次数 搜索解 1 65 0∙9964 2 91 0∙9955 3 128 0∙9999 4 25 0∙9993 5 71 0∙9975 序号 迭代次数 搜索解 6 48 0∙9972 7 43 0∙9956 8 121 0∙9992 9 47 0∙9990 10 160 0∙9977 表3 FSA 测试结果 Table3 FSA simulation results 序号 迭代次数 搜索解 1 202 0∙9988 2 119 0∙9965 3 160 0∙9964 4 209 0∙9995 5 146 0∙9984 序号 迭代次数 搜索解 6 159 0∙9989 7 88 0∙9981 8 67 0∙9994 9 34 0∙9987 10 203 0∙9961 图4 三种算法计算结果的比较 Fig.4 Comparison of results by three algorithms ·1064· 北 京 科 技 大 学 学 报 第30卷
第9期 刘帆等:多感官群集智能算法及其在前向神经网络训练方面的应用 ,1065. 数据显示,上述三种算法在测试过程中均未出 (2)生成训练样本集K={=(x,y),2= 现陷于局部极值的情况,当参数设定接近时,MSA (x2,y2),…,=(x,y“),适应度函数可取为 与基本AFA在计算速度和计算精度方面性能是比 较接近的,而相对于FS,MSA的计算速度要稍快一 g=专为0-月或E=-空g- 些,可见,多感官群集智能算法具备鲁棒性强、全局 y)2. 收敛性好、收敛速度较快、收敛精度较高等优点, (③)程序初始化,设置个体数目、个体状态、最 大迭代次数、收敛门限、个体标准感知范围、个体标 3使用MSA训练前向神经网络 准步长以及信息素表记录个数, 前向神经网络是整个神经网络体系中最常见的 (4)调用多感官群集算法进行群体寻优,当达 种网络结构,其网络中各个神经元接受前一级的 到收敛门限或迭代上限时,停止迭代并输出结果 输入,并输出到下一级,网络中没有反馈,可以用有 3.2网络训练及结果分析 向无环路图表示(如图5),这种网络实现信号从输 这里选取训练前向神经网络逼近sine函数来 入空间到输出空间的变换,它的信息处理能力来自 评价MSA的训练性能.设定神经网络结构为1一4一 于简单非线性函数的多次复合 1,输入层有1个神经元,隐含层有4个神经元,激励 函数为sigmoid,输出层有1个神经元,激励函数为 pureline,网络结构如图6所示. 输人层 隐含层 输出层 四E b.(1,1) 0-(1,1) 输人层 隐层 输出层 园团 (1.2) (3,1)i(2,) 图5前向神经网络 四团 〉园日 0a1,3)b,1,1) Fig-5 Feed-forward neural network 1b,3,1) 0z(1,4) 前向神经网络训练的训练问题实际上是一个无 1b(4,1) 约束连续域函数优化问题,目前对其训练算法的研 究主要集中在以下三方面[8: 图6前向神经网络结构图 (1)改进基于梯度信息的一阶算法(BP算法), Fig.6 Feed-forward neural network 如增加动量项或采用变学习率,这种算法一般都比 应用MSA,设置个体数为30,个体标准感知范 较有效,但是收敛速度仍较慢,且属于局部搜索算 围为2.5,个体标准步长为0.5,个体状态初始化为 法,从本质上仍然摆脱不了陷入局部极小的可能; [一5,5]内均匀分布的随机数,每个状态都包含13 (2)改进并引入新的二阶算法,如拟Newton 个状态变量,样本点选为[0,2π]上等间距分布的 法、LM算法等,这些算法因为充分利用了二阶导 500个点,算法迭代及训练结果如图7和图8. 数信息,具有收敛速度快、逼近精度高的优点,但仍 属局部搜索算法; (3)引入和改进具备全局优化特性的群集算 -0.1 法,如遗传算法、蚁群算法、粒子群算法以及人工鱼 0.2 群算法[,本文将多感官群集智能算法(MSA)应用 0.3 于神经网络训练就属于这个研究方向 3.1前向神经网络的MSA训练方法 0.5 以三层神经网络为例,训练方法如下, -0.6 (1)根据设定网络结构,构造个体状态X:= {w21,b2,w32,b3[0.其中,w21为输入层到隐含 0.10 100 200 300 400 500 迭代次数 层权值矩阵、w32为隐含层到输出层权值矩阵、b2为 隐含层阈值向量、3为输出层阈值向量,每个个体 图7MSA迭代情况 代表一个神经网络 Fig.7 MSA iteration
数据显示上述三种算法在测试过程中均未出 现陷于局部极值的情况.当参数设定接近时MSA 与基本 AFA 在计算速度和计算精度方面性能是比 较接近的.而相对于FSMSA 的计算速度要稍快一 些.可见多感官群集智能算法具备鲁棒性强、全局 收敛性好、收敛速度较快、收敛精度较高等优点. 3 使用 MSA 训练前向神经网络 前向神经网络是整个神经网络体系中最常见的 一种网络结构其网络中各个神经元接受前一级的 输入并输出到下一级网络中没有反馈可以用有 向无环路图表示(如图5).这种网络实现信号从输 入空间到输出空间的变换它的信息处理能力来自 于简单非线性函数的多次复合. 图5 前向神经网络 Fig.5 Feed-forward neural network 前向神经网络训练的训练问题实际上是一个无 约束连续域函数优化问题目前对其训练算法的研 究主要集中在以下三方面[8]: (1) 改进基于梯度信息的一阶算法(BP 算法) 如增加动量项或采用变学习率这种算法一般都比 较有效但是收敛速度仍较慢且属于局部搜索算 法从本质上仍然摆脱不了陷入局部极小的可能; (2) 改进并引入新的二阶算法如拟 Newton 法、L—M 算法等这些算法因为充分利用了二阶导 数信息具有收敛速度快、逼近精度高的优点但仍 属局部搜索算法; (3) 引入和改进具备全局优化特性的群集算 法如遗传算法、蚁群算法、粒子群算法以及人工鱼 群算法[9]本文将多感官群集智能算法(MSA)应用 于神经网络训练就属于这个研究方向. 3∙1 前向神经网络的 MSA 训练方法 以三层神经网络为例训练方法如下. (1) 根据设定网络结构构造个体状态 Xi = {w21b2w32b3}[10].其中w21为输入层到隐含 层权值矩阵、w32为隐含层到输出层权值矩阵、b2 为 隐含层阈值向量、b3 为输出层阈值向量每个个体 代表一个神经网络. (2) 生成训练样本集 K={r 1=( x 1y 1)r 2= (x 2y 2)…r n=( x ny n )}适应度函数可取为 E=1 1 2 ∑ n j=1 (^y j — y j ) 2 或 E=— 1 2 ∑ n j=1 (^y j — y j ) 2. (3) 程序初始化.设置个体数目、个体状态、最 大迭代次数、收敛门限、个体标准感知范围、个体标 准步长以及信息素表记录个数. (4) 调用多感官群集算法进行群体寻优当达 到收敛门限或迭代上限时停止迭代并输出结果. 3∙2 网络训练及结果分析 这里选取训练前向神经网络逼近 sine 函数来 评价 MSA 的训练性能.设定神经网络结构为1—4— 1输入层有1个神经元隐含层有4个神经元激励 函数为 sigmoid输出层有1个神经元激励函数为 pureline.网络结构如图6所示. 图6 前向神经网络结构图 Fig.6 Feed-forward neural network 图7 MSA 迭代情况 Fig.7 MSA iteration 应用 MSA设置个体数为30个体标准感知范 围为2∙5个体标准步长为0∙5个体状态初始化为 [—55]内均匀分布的随机数每个状态都包含13 个状态变量.样本点选为[02π]上等间距分布的 500个点.算法迭代及训练结果如图7和图8. 第9期 刘 帆等: 多感官群集智能算法及其在前向神经网络训练方面的应用 ·1065·
,1066 北京科技大学学报 第30卷 网络结构一高维函数优化问题,该算法存在收敛 1.0 速度慢、收敛精度低的缺点,这两,点是多感官群集 0.6 智能算法需要改进的方面, 0.2 参考文献 -0.2 [1]Duan H B.Wang D B.Yu X F.Research on some novel bionic optimization algorithms.Comput Simul.2007.24(3):169 -0.6 (段海滨,王道波,于秀芬.几种新型仿生优化算法的比较研究 计算机仿真,2007,24(3):169) 100 3 4 [2]Zhang T H.Lu X Y.Prospect and research for swarm intelli 输人值 gence optimum algorithm.Shanxi Archit,2007.33(1):14 (张统华,鹿晓阳,群体智能优化算法的研究进展与展望.山西 图8神经网络训练结果 建筑,2007,33(1):14) Fig-8 Neural network training [3]Li X L.Shao Z J.Qian JX.An optimizing method based on au- 由图7可以看出,MSA的训练速度在起始阶段 tonomous animates:fish swarm algorithm.Syst Eng Theory Prac,2002,22(11):32 是比较快的,实际上当迭代次数达到50次时训练误 (李晓磊,邵之江,钱积新.一种基于动物自治体的寻优模式:人 差已降至0.0006,当达到100次时训练误差降至 工鱼群算法.系统工程理论与实践,2002,22(11):32) 0.0004.但在此后的迭代过程中,训练误差并未进 [4]Li X L.Qian JX.Studies on artificial fish swarm optimization al- 一步减小.这主要是受MSA的搜索机制所限制,它 gorithm based on decomposition and coordination techniques. 只能达到满意解域:当需要获得精确解时,则必须借 Cireuits Syst.2003.8(1):1 助其他算法,图8为所训练网络的输出特性,可见 (李晓磊,钱积新·基于分解协调的人工鱼群优化算法研究电 路与系统学报.2003,8(1):1) 网络输出与样本输出符合得很好,为进一步检验 [5]Gao B.Tian D.Hu L,et al.Free Search:a novel evolutionary MSA的训练性能,将变学习率BP算法和MSA对 algorithm.Chin J Sci Instrum,2006,27(Suppl 1):819 sine函数的实验结果对比,如表4.结果表明,相对 (高波,田东,胡亮,等.Free Search:一种新的进化算法.仪器仪 于变学习率BP算法,使用MSA训练前向神经网络 表学报,2006,27(增刊1).819) 速度更快,精度更高, [6]Penev K,Littlefair G.Free search:a comparative analysis.Inf Sci,2005,172(122):173 表4前向神经网络训练误差 [7]Sachffer J D.Caruana R.Eshelman L J.et al.A study of control Table 4 Feed-forw ard neural network training errors parameters affection online performance of genetic algorithms for 选代次数 变学习率BP算法 MSA function optimization//Proceedings of the 3rd International Con 10 0.2214 0.0124 ference on Genetic Algorithm.San Diego,1991:51 [8]Jia L H.Zhang X R.Analysis and improvements of BP algo 20 0.0167 0.0010 rithm.Comput Technol Dev.2006.16(10):101 50 0.0088 0.0006 (贾丽会,张修如.BP算法分析与改进.计算机技术与发展, 100 0.0016 0.0004 2006,16(10):101) [9]Guo J.Studies on BP Neural Network Algorithm Disserta- tion]-Wuhan:Huazhong University of Science and Technology 4结论 2005,8 多感官群集智能算法是一种新的针对连续域函 (郭军.BP神经网络算法研究[学位论文]武汉:华中科技大 学,2005:8) 数优化问题的全局极大值搜索方法,它鲁棒性强,全 [10]Ma J W,Zhang G L.Xie H.et al.Optimization of feed for- 局收敛性好,收敛速度较快,收敛精度较高,将其应 ward neural networks based on artificial fish swarm algorithm. 用于前向神经网络训练,结果显示其满足应用要求, Comput Appl,2004,24(10):21 在实验过程中,多感官群集智能算法也暴露出 (马建伟,张国立,谢宏,等.利用人工鱼群算法优化前向神 些问题,首先是该算法只能达到满意解域,当迭 经网络.计算机应用,2004,24(10):21) 代精度要求较高时计算效率较低:其次是对于复杂
图8 神经网络训练结果 Fig.8 Neural network training 由图7可以看出MSA 的训练速度在起始阶段 是比较快的实际上当迭代次数达到50次时训练误 差已降至0∙0006当达到100次时训练误差降至 0∙0004.但在此后的迭代过程中训练误差并未进 一步减小.这主要是受 MSA 的搜索机制所限制它 只能达到满意解域;当需要获得精确解时则必须借 助其他算法.图8为所训练网络的输出特性可见 网络输出与样本输出符合得很好.为进一步检验 MSA 的训练性能将变学习率 BP 算法和 MSA 对 sine 函数的实验结果对比如表4.结果表明相对 于变学习率 BP 算法使用 MSA 训练前向神经网络 速度更快精度更高. 表4 前向神经网络训练误差 Table4 Feed-forward neural network training errors 迭代次数 变学习率 BP 算法 MSA 10 0∙2214 0∙0124 20 0∙0167 0∙0010 50 0∙0088 0∙0006 100 0∙0016 0∙0004 4 结论 多感官群集智能算法是一种新的针对连续域函 数优化问题的全局极大值搜索方法它鲁棒性强全 局收敛性好收敛速度较快收敛精度较高.将其应 用于前向神经网络训练结果显示其满足应用要求. 在实验过程中多感官群集智能算法也暴露出 一些问题.首先是该算法只能达到满意解域当迭 代精度要求较高时计算效率较低;其次是对于复杂 网络结构———高维函数优化问题该算法存在收敛 速度慢、收敛精度低的缺点.这两点是多感官群集 智能算法需要改进的方面. 参 考 文 献 [1] Duan H BWang D BYu X F.Research on some novel bionic optimization algorithms.Comput Simul200724(3):169 (段海滨王道波于秀芬.几种新型仿生优化算法的比较研究. 计算机仿真200724(3):169) [2] Zhang T HLu X Y.Prospect and research for swarm intelligence optimum algorithm.Shanxi A rchit200733(1):14 (张统华鹿晓阳.群体智能优化算法的研究进展与展望.山西 建筑200733(1):14) [3] Li X LShao Z JQian J X.An optimizing method based on autonomous animates:fish-swarm algorithm. Syst Eng Theory Pract200222(11):32 (李晓磊邵之江钱积新.一种基于动物自治体的寻优模式:人 工鱼群算法.系统工程理论与实践200222(11):32) [4] Li X LQian J X.Studies on artificial fish swarm optimization algorithm based on decomposition and coordination techniques. J Circuits Syst20038(1):1 (李晓磊钱积新.基于分解协调的人工鱼群优化算法研究.电 路与系统学报20038(1):1) [5] Gao BTian DHu Let al.Free Search:a novel evolutionary algorithm.Chin J Sci Instrum200627(Suppl1):819 (高波田东胡亮等.Free Search:一种新的进化算法.仪器仪 表学报200627(增刊1):819) [6] Penev KLittlefair G.Free search:a comparative analysis.Inf Sci2005172(122):173 [7] Sachffer J DCaruana REshelman L Jet al.A study of control parameters affection online performance of genetic algorithms for function optimization∥ Proceedings of the3rd International Conference on Genetic Algorithm.San Diego1991:51 [8] Jia L HZhang X R.Analysis and improvements of BP algorithm.Comput Technol Dev200616(10):101 (贾丽会张修如.BP 算法分析与改进.计算机技术与发展 200616(10):101) [9] Guo J. Studies on BP Neural Network Algorithm [ Dissertation].Wuhan:Huazhong University of Science and Technology 2005:8 (郭军.BP 神经网络算法研究[学位论文].武汉:华中科技大 学2005:8) [10] Ma J WZhang G LXie Het al.Optimization of feed-forward neural networks based on artificial fish-swarm algorithm.J Comput Appl200424(10):21 (马建伟张国立谢宏等.利用人工鱼群算法优化前向神 经网络.计算机应用200424(10):21) ·1066· 北 京 科 技 大 学 学 报 第30卷