第9卷第3期 智能系统学报 Vol.9 No.3 2014年6月 CAAI Transactions on Intelligent Systems Jun.2014 D0:10.3969/j.issn.1673-4785.201310014 网络出版地址:http://www.enki..net/kcms/doi/10.3969/j.issn.16734785.201310014.html 改进的蝙蝠算法在数值积分中的应用研究 肖辉辉,段艳明 (河池学院计算机与信息工程学院,广西宜州546300) 摘要:蝙蝠算法具有收敛速度快、潜在分布式和并行性等特点,但也存在着寻优精度不高、后期收敛速度慢、易陷 入局部最优等问题。针对蝙蝠算法和目前数值积分方法的不足,把具有很强的全局寻优能力和局部搜索能力的差 分进化算法融合到蝙蝠算法中,提出了一种基于差分进化算法的改进蝙蝠算法求任意函数数值积分的新方法,该算 法不仅能求解通常意义下任意函数的定积分,而且能计算振荡积分和奇异积分。通过6个不同算例与当前数值积 分方法比较,实验仿真结果表明,该算法是有效的和可行的,能够快速有效地获取任意函数的数值积分值。同时,扩 展了蝙蝠算法的应用领域。 关键词:蝙蝠算法:数值积分:差分进化算法:收敛速度:适应度:函数 中图分类号:TP301.6文献标志码:A文章编号:1673-4785(2014)03-0364-08 中文引用格式:肖辉辉,段艳明.改进的蝙蝠算法在数值积分中的应用研究[J].智能系统学报,2014,9(3):364371. 英文引用格式:XIAO Huihui,DUAN Yanming..Application of the improved bat algorithm in numerical integration[J].CAAI Transactions on Intelligent Systems,2014,9(3):364-371. Application of the improved bat algorithm in numerical integration XIAO Huihui,DUAN Yanming (College of Computer and Information Engineering,Hechi University,Yizhou 546300,China) Abstract:The bat optimization algorithm is a new swarm intelligence algorithm that has appeared in recent years.It is a kind of intelligent optimization tool with very good and strong optimization ability.This algorithm has character- istics including fast convergence,potential distribution and parallelism.However,it also has shortcomings including low precision in optimizing,low convergence speed in later periods,ease of falling into local optimization,etc.To overcome the shortcomings of current numerical integration methods and the bat algorithm,by fusing the differential evolution algorithm that has excellent abilities of local searching and global optimizing into the bat algorithm,this paper presents an improved bat algorithm based on the differential evolution algorithm that is applied to solving the numerical integration of any function.This algorithm not only can solve the definite integral for any function of com- mon sense,but it can also calculate the oscillatory integrals and singular integrals.By comparing six different exam- ples with current numerical integration methods,the simulations show that the improved algorithm is efficient and feasible.It is able to compute the numerical integration of any function.Meanwhile,it extends the application field of the bat algorithm. Keywords:bat algorithm;numerical integration;differential evolution algorithm;convergence speed;fitness;func- tion 收稿日期:2013-10-16.网络出版日期:2014-06-14 基金项目:国家自然科学基金资助项目(61165015):河池学院引进人才 在生产实践领域和科学计算研究中,存在大量 科研启动基金资助项目(2011QS-N001):河池学院青年科研涉及函数积分的求解问题,比如PID调节器设计、 课题资助项目(2012B-N005,2012B-N007). 通信作者:段艳明.E-mail:-yanhui0(920@126.com. 桥梁设计、计算机图形学、金融数学等,因此研究数
第 9 卷第 3 期 智 能 系 统 学 报 Vol.9 №.3 2014 年 6 月 CAAI Transactions on Intelligent Systems Jun. 2014 DOI:10.3969 / j.issn.1673⁃4785.201310014 网络出版地址:http: / / www.cnki.net / kcms/ doi / 10.3969 / j.issn.16734785.201310014.html 改进的蝙蝠算法在数值积分中的应用研究 肖辉辉,段艳明 (河池学院 计算机与信息工程学院,广西 宜州 546300) 摘 要:蝙蝠算法具有收敛速度快、潜在分布式和并行性等特点,但也存在着寻优精度不高、后期收敛速度慢、易陷 入局部最优等问题。 针对蝙蝠算法和目前数值积分方法的不足,把具有很强的全局寻优能力和局部搜索能力的差 分进化算法融合到蝙蝠算法中,提出了一种基于差分进化算法的改进蝙蝠算法求任意函数数值积分的新方法,该算 法不仅能求解通常意义下任意函数的定积分, 而且能计算振荡积分和奇异积分。 通过 6 个不同算例与当前数值积 分方法比较, 实验仿真结果表明,该算法是有效的和可行的,能够快速有效地获取任意函数的数值积分值。 同时,扩 展了蝙蝠算法的应用领域。 关键词:蝙蝠算法;数值积分;差分进化算法;收敛速度;适应度;函数 中图分类号: TP301.6 文献标志码:A 文章编号:1673⁃4785(2014)03⁃0364⁃08 中文引用格式:肖辉辉,段艳明. 改进的蝙蝠算法在数值积分中的应用研究[J]. 智能系统学报, 2014, 9(3): 364⁃371. 英文引用格式:XIAO Huihui, DUAN Yanming. Application of the improved bat algorithm in numerical integration [ J]. CAAI Transactions on Intelligent Systems, 2014, 9(3): 364⁃371. Application of the improved bat algorithm in numerical integration XIAO Huihui, DUAN Yanming (College of Computer and Information Engineering, Hechi University, Yizhou 546300, China) Abstract:The bat optimization algorithm is a new swarm intelligence algorithm that has appeared in recent years. It is a kind of intelligent optimization tool with very good and strong optimization ability. This algorithm has character⁃ istics including fast convergence, potential distribution and parallelism. However, it also has shortcomings including low precision in optimizing, low convergence speed in later periods, ease of falling into local optimization, etc. To overcome the shortcomings of current numerical integration methods and the bat algorithm, by fusing the differential evolution algorithm that has excellent abilities of local searching and global optimizing into the bat algorithm, this paper presents an improved bat algorithm based on the differential evolution algorithm that is applied to solving the numerical integration of any function. This algorithm not only can solve the definite integral for any function of com⁃ mon sense, but it can also calculate the oscillatory integrals and singular integrals. By comparing six different exam⁃ ples with current numerical integration methods, the simulations show that the improved algorithm is efficient and feasible. It is able to compute the numerical integration of any function. Meanwhile, it extends the application field of the bat algorithm. Keywords:bat algorithm; numerical integration; differential evolution algorithm; convergence speed; fitness; func⁃ tion 收稿日期:2013⁃10⁃16. 网络出版日期:2014⁃06⁃14. 基金项目:国家自然科学基金资助项目(61165015);河池学院引进人才 科研启动基金资助项目(2011QS⁃N001);河池学院青年科研 课题资助项目(2012B⁃N005,2012B⁃N007). 通信作者:段艳明. E⁃mail:.yanhui0920@ 126.com. 在生产实践领域和科学计算研究中,存在大量 涉及函数积分的求解问题,比如 PID 调节器设计、 桥梁设计、计算机图形学、金融数学等,因此研究数
第3期 肖辉辉,等:改进的蝙蝠算法在数值积分中的应用研究 ·365· 值积分问题对科学研究和工程实践具有重要参考价 项式而提出的。其设计思想是:应用当前种群个体 值。目前,求解函数的数值积分的方法有许多,常用 的差异来重组得到中间种群,然后再利用后代个体 的传统数值积分方法有Simpson法、Newton法、梯形 与父代个体之间的相互竞争来产生下一代新的种 法、矩形法、Remberg法、Gauss法等ua),但这些传统 群。其优点主要有收敛速度快、需待定的参数较少、 的方法在工程技术和科学研究中都存在一定程度的 不易陷入局部最优、易与其他智能算法融合,并构造 不足,比如积分精度不高、计算量较大、系数和节点 出具有性能更优的群智能优化算法。 的计算比较困难、收敛性得不到保证、求解被积函数 1.2.2DEBA算法的设计思想 的原函数非常困难等问题。近年来,随着智能算法 本文基于基本的BA算法,引入差分进化策略, 的发展,有学者利用智能算法求解函数的数值积分 融合其各自的优点,提出了基于差分进化策略的改 问题,从而克服了传统的数值积分方法的缺陷。如 进BA算法(differential evolution bat algorithm,DE- 2008年,周永权等人提出了基于进化策略求解任意 BA)。考虑到随机初始种群个体会影响算法的计算 函数数值积分),该算法能快速有效地求出任意函 量,另外,R L Haupt等[1s)指出,在基于种群迭代搜 数的数值积分值:2009年,韦杏琼等)提出了一种 索的全局优化算法中,在迭代初期,多样性较好的种 基于粒子群算法的不等距节点数值积分方法,该算 群对提高算法的全局寻优能力很有帮助。因此,本 法能求解任意函数的数值积分值,对被积函数要求 文提出的DEBA算法在算法的迭代初期就把变异等 低,计算精度较高:同年,聂黎明等6提出一种基于 算子融入进来,从而保证了迭代初期种群的多样性。 人工鱼群算法求解任意函数的数值积分方法,该算 对基本的蝙蝠算法的深入剖析得知,由于算法 法对参数选取不敏感且对初始值无要求,计算积分 缺乏相应的变异机制,使得基本的蝙蝠算法具有收 精度较高:2013年陈欢[刀提出了一种基于杂草算法 敛精度低、易陷入局部极小等缺陷。为了克服这些 求解任意函数的数值积分方法,该算法对积分精度 不足,把差分进化策略融入到基本的蝙蝠算法中来, 有所提高。上述智能算法都在一定程度上解决了传 从而形成了本文算法,它跟基本的蝙蝠算法最显著 统数值积分方法的不足,取得了较大的成功,但在积 的区别在于使原来没有变异操作的基本蝙蝠算法具 分精度、鲁棒性、收敛性等方面仍存在不足。同时, 有变异机制。 目前国内外对蝙蝠算法在函数数值积分方面的研究 DEBA算法的设计思想:在基本的蝙蝠算法基 较少。 础上,经过演化后的蝙蝠位置x‘不是直接进入下一 次(t+1)迭代,而是继续对其进行差分进化,通过 1 蝙蝠优化算法 变异机制来获得种群中优秀个体与当前个体之间的 1.1基本蝙蝠优化算法 差异,从而引导个体的演化方向,使其向种群中的优 蝙蝠算法(bat algorithm,BA)[8)是YANG X S 秀个体靠近,在得到新的蝙蝠位置后,再进入下一次 2010年提出的一种新的群智能优化算法。是模拟蝙 迭代,继续利用基本的蝙蝠算法进行搜索和位置更 蝠采用一种声呐来探测猎物、避免障碍物的生物学特 新。这样就增加了种群的多样性,使其避免陷入局 性发展而来的一种新颖的群智能优化算法,具有并行 部最优而获得全局最优解,同时也提高了收敛速度 性、收敛速度快、分布式等特征。目前,BA算法作为 和收敛精度。 一种新的群智能优化算法,已广泛应用于自然科学、 1.2.3DEBA算法实现步骤 工程科学与生产实践中,如PSP调度问题)k均 DEBA算法的具体实施步骤如下: 值聚类优化o、工程优化山、多目标优化]等问题 1)初始化DEBA算法的各个参数。 中。但该算法存在着缺乏变异机制)]、易陷入局部 2)根据目标函数计算种群个体的适应度函数 极小、后期收敛速度慢与收敛精度低等缺点,使其在 值,确定当前的最优值及最优解。 很多领域的应用被严重地制约了,因此在具体的实际 3)利用式(1)~(3)对蝙蝠的搜索脉冲频率」 应用中需要经常对它进行改进。 速度和位置进行更新: 1.2具有差分进化策略的蝙蝠算法 f=fmin+(fax-fn)×B (1)》 1.2.1差分进化算法 =+(x-x)×f (2) 差分进化算法(differential evolution,DE)【i4是 x=x;1+ (3) 一种基于群体差异的启发式全局智能优化算法,它 式中:B∈[0,1]是均匀分布的随机数;f是蝙蝠i 是K Price和R Storn在1997年为求解切比雪夫多 的搜索脉冲频率,f方∈[fmfx];:、:分别表
值积分问题对科学研究和工程实践具有重要参考价 值。 目前,求解函数的数值积分的方法有许多,常用 的传统数值积分方法有 Simpson 法、Newton 法、梯形 法、矩形法、Remberg 法、Gauss 法等[1⁃3] ,但这些传统 的方法在工程技术和科学研究中都存在一定程度的 不足,比如积分精度不高、计算量较大、系数和节点 的计算比较困难、收敛性得不到保证、求解被积函数 的原函数非常困难等问题。 近年来,随着智能算法 的发展,有学者利用智能算法求解函数的数值积分 问题,从而克服了传统的数值积分方法的缺陷。 如 2008 年,周永权等人提出了基于进化策略求解任意 函数数值积分[4] ,该算法能快速有效地求出任意函 数的数值积分值;2009 年,韦杏琼等[5] 提出了一种 基于粒子群算法的不等距节点数值积分方法,该算 法能求解任意函数的数值积分值,对被积函数要求 低,计算精度较高;同年,聂黎明等[6] 提出一种基于 人工鱼群算法求解任意函数的数值积分方法,该算 法对参数选取不敏感且对初始值无要求,计算积分 精度较高;2013 年陈欢[7]提出了一种基于杂草算法 求解任意函数的数值积分方法,该算法对积分精度 有所提高。 上述智能算法都在一定程度上解决了传 统数值积分方法的不足,取得了较大的成功,但在积 分精度、鲁棒性、收敛性等方面仍存在不足。 同时, 目前国内外对蝙蝠算法在函数数值积分方面的研究 较少。 1 蝙蝠优化算法 1.1 基本蝙蝠优化算法 蝙蝠算法( bat algorithm, BA) [8] 是 YANG X S 2010 年提出的一种新的群智能优化算法。 是模拟蝙 蝠采用一种声呐来探测猎物、避免障碍物的生物学特 性发展而来的一种新颖的群智能优化算法,具有并行 性、收敛速度快、分布式等特征。 目前,BA 算法作为 一种新的群智能优化算法,已广泛应用于自然科学、 工程科学与生产实践中,如 PFSP 调度问题[9] 、k_均 值聚类优化[10] 、工程优化[11] 、多目标优化[12] 等问题 中。 但该算法存在着缺乏变异机制[13] 、易陷入局部 极小、后期收敛速度慢与收敛精度低等缺点,使其在 很多领域的应用被严重地制约了,因此在具体的实际 应用中需要经常对它进行改进。 1.2 具有差分进化策略的蝙蝠算法 1.2.1 差分进化算法 差分进化算法( differential evolution,DE) [14] 是 一种基于群体差异的启发式全局智能优化算法,它 是 K Price 和 R Storn 在 1997 年为求解切比雪夫多 项式而提出的。 其设计思想是:应用当前种群个体 的差异来重组得到中间种群,然后再利用后代个体 与父代个体之间的相互竞争来产生下一代新的种 群。 其优点主要有收敛速度快、需待定的参数较少、 不易陷入局部最优、易与其他智能算法融合,并构造 出具有性能更优的群智能优化算法。 1.2.2 DEBA 算法的设计思想 本文基于基本的 BA 算法,引入差分进化策略, 融合其各自的优点,提出了基于差分进化策略的改 进 BA 算法( differential evolution bat algorithm, DE⁃ BA)。 考虑到随机初始种群个体会影响算法的计算 量,另外, R L Haupt 等[ 15 ]指出,在基于种群迭代搜 索的全局优化算法中,在迭代初期,多样性较好的种 群对提高算法的全局寻优能力很有帮助。 因此,本 文提出的 DEBA 算法在算法的迭代初期就把变异等 算子融入进来,从而保证了迭代初期种群的多样性。 对基本的蝙蝠算法的深入剖析得知,由于算法 缺乏相应的变异机制,使得基本的蝙蝠算法具有收 敛精度低、易陷入局部极小等缺陷。 为了克服这些 不足,把差分进化策略融入到基本的蝙蝠算法中来, 从而形成了本文算法,它跟基本的蝙蝠算法最显著 的区别在于使原来没有变异操作的基本蝙蝠算法具 有变异机制。 DEBA 算法的设计思想:在基本的蝙蝠算法基 础上,经过演化后的蝙蝠位置 xi t 不是直接进入下一 次( t + 1)迭代,而是继续对其进行差分进化,通过 变异机制来获得种群中优秀个体与当前个体之间的 差异,从而引导个体的演化方向,使其向种群中的优 秀个体靠近,在得到新的蝙蝠位置后,再进入下一次 迭代,继续利用基本的蝙蝠算法进行搜索和位置更 新。 这样就增加了种群的多样性,使其避免陷入局 部最优而获得全局最优解,同时也提高了收敛速度 和收敛精度。 1.2.3 DEBA 算法实现步骤 DEBA 算法的具体实施步骤如下: 1) 初始化 DEBA 算法的各个参数。 2) 根据目标函数计算种群个体的适应度函数 值,确定当前的最优值及最优解。 3) 利用式(1) ~ (3) 对蝙蝠的搜索脉冲频率、 速度和位置进行更新: f i = fmin + (fmax - fmin ) × β (1) vi t = vi t-1 + (xi t - x ∗ ) × f i (2) xi t = xi t-1 + vi t (3) 式中: β ∈[0,1] 是均匀分布的随机数; f i 是蝙蝠 i 的搜索脉冲频率, f i ∈[ fmin ,fmax ]; vi t 、 vi t-1 分别表 第 3 期 肖辉辉,等:改进的蝙蝠算法在数值积分中的应用研究 ·365·
·366 智能系统学报 第9卷 示蝙蝠i在t和t-1时刻的速度:x、x1分别表 的理论最优值为0。 示蝙蝠i在t和t-1时刻的位置;x·表示当前所有 蝙蝠的最优解。 =三 4)对当前最优解进行随机扰动,产生一个新的 2)Rastrigrin函数:D=10,-5.12≤x:≤5.12, 解,并对新的解进行越界处理。 函数的理论最优值为0。 5)生成均匀分布随机数rand,如果rand<A且 6(x)=2[x-100s(2mx,)+10] f(x:)<f(x·),则接受4)产生的这个新解,然后按 i=1 式(4)~(5)对r:和A:进行更新: 3)Rosenbrock函数:D=10,-30≤x:≤30,函 A1=a4,' 数的理论最优值为0。 (4) r1=Ro[1 exp(-yt) (5) f(x)= [10-》+医-1月 6)利用差分进化算法以每一个蝙蝠位置为初 i=1 4)Schaffer F6函数:D=2,-100≤x:≤100,函 始点进行变异、交叉、选择操作,得到新的蝙蝠位置。 数的理论最优值为-1。 7)根据种群蝙蝠个体的适应度值优劣,来更新 种群的最优值和种群的最优解。 sin22+2-0.5 8)在算法完成一次迭代后,进入下一次迭代之 )1+0.01(x,°+5,万-05 前,判断算法是否满足终止条件,如满足条件,则退 在本文算法中参数设置如下:最大脉冲率R。= 出程序并输出种群的最优解及种群的最优值,否则, 0.5,最大脉冲音量A。=0.25,脉冲频率增强系数ga 转3)。 ma=0.05,脉冲频率范围[0,2],尺度因子F=0.5, 脉冲音量衰减系数af=0.95,交叉概率CR=0.1,种 2 DEBA算法性能实验仿真与分析 群数最大为200,最大迭代次数为1000。 为了验证本文算法的寻优精度、收敛速度、鲁棒 2.1固定演化迭代次数的性能比较 性等性能优于基本的蝙蝠优化算法,本文利用4个 为了防止算法的偶然性带来的误差,分别对每 不同维数的经典测试函数进行性能比较测试。测试 个函数独自执行20次,取其最优值、平均值、最差值 函数[16刀及其参数如下: 和标准差,并与基本的蝙蝠算法进行比较,测试结果 1)Sphere函数:D=10,-100≤x:≤100,函数 如表1所示。 表1固定演化迭代次数的性能比较 Table 1 Performance comparison of fixed evolution iterations 函数 算法 最优值 平均值 最差值 标准差 DEBA 9.69563834601188E-19 5.84379322609028E-18 1.62619389692447E-17 4.83833694643861E-18 f(x) BA 2.16605159265E+03 1.24378646804E+04 3.68689654162E+04 7.91305595959E+03 DEBA 0 0 0 0 f(x) BA 4.87664433735E+01 9.77629405876E+01 1.78104931825E+02 3.24392513245E+01 DEBA 22.86069418838456 55.24989150912832 88.59947945489543 17.80577852011065 f5(x) BA 4.13821313748E+03 1.01326679645E+07 5.38275134994E+07 1.37257696079E+07 DEBA -1 -0.99992590333598 -0.99943890712016 1.32120767991106e-04 f(x) BA -0.92181081785627 -0.64017500307743 -0.51119158750609 1.2404397445565e-01 由表1可以获得,对f单峰函数,DEBA比BA DEBA的最小适应值达到了理论最优值,平均适应 的最优值提高了22个数量级,平均值提高了22个 值提高了0.35,标准差提高了3个数量级。由仿真 数量级,标准差提高了21个数量级:对高维、复杂的 实验结果表明,本文算法(DEBA)效果较好,并对高 多峰函数,DEBA的最优值达到了理论最优值,平 维多峰函数也是可行有效的。 均适应值提高了1个数量级,标准差提高了1个数 图1是本文算法与基本的蝙蝠算法的收敛曲线 量级;对单峰病态函数,DEBA比BA的最优值提 对比图。可以看出本文算法在收敛速度、迭代次数 高了2个数量级,平均适应值提高了6个数量级,标 收敛精度等性能上显著优于基本的蝙蝠算法,而且 准差提高了6个数量级:对强烈振荡的多峰函数f, 对于复杂多极值点函数,本文算法能收敛到函数的
示蝙蝠 i 在 t 和 t - 1 时刻的速度; xi t 、 xi t-1 分别表 示蝙蝠 i 在 t 和 t - 1 时刻的位置; x ∗ 表示当前所有 蝙蝠的最优解。 4) 对当前最优解进行随机扰动,产生一个新的 解,并对新的解进行越界处理。 5) 生成均匀分布随机数 rand,如果 rand< Ai 且 f(xi) < f(x ∗ ) ,则接受 4)产生的这个新解,然后按 式(4) ~ (5)对 ri 和 Ai 进行更新: Ai t+1 = αAi t (4) ri t+1 = R0 [1 - exp( - γt)] (5) 6) 利用差分进化算法以每一个蝙蝠位置为初 始点进行变异、交叉、选择操作,得到新的蝙蝠位置。 7) 根据种群蝙蝠个体的适应度值优劣,来更新 种群的最优值和种群的最优解。 8) 在算法完成一次迭代后,进入下一次迭代之 前,判断算法是否满足终止条件,如满足条件,则退 出程序并输出种群的最优解及种群的最优值,否则, 转 3)。 2 DEBA 算法性能实验仿真与分析 为了验证本文算法的寻优精度、收敛速度、鲁棒 性等性能优于基本的蝙蝠优化算法,本文利用 4 个 不同维数的经典测试函数进行性能比较测试。 测试 函数[16⁃17]及其参数如下: 1) Sphere 函数: D = 10,-100 ≤ xi ≤ 100,函数 的理论最优值为 0 。 f 1(x) = ∑ n i = 1 x 2 i 2) Rastrigrin 函数: D = 10,-5.12 ≤ xi ≤ 5.12, 函数的理论最优值为 0。 f 2(x) = ∑ n i = 1 [x 2 i - 10cos(2πxi) + 10] 3) Rosenbrock 函数: D = 10,-30 ≤ xi ≤ 30,函 数的理论最优值为 0。 f 3(x) = ∑ n-1 i = 1 [100 (xi+1 - x 2 i ) 2 + (xi - 1) 2 ] 4) Schaffer F 6函数: D = 2,-100 ≤ xi ≤ 100,函 数的理论最优值为-1。 f 4(x) = sin 2 x1 2 + x2 2 - 0.5 [1 + 0.001(x1 2 + x2 2 )] 2 - 0.5 在本文算法中参数设置如下:最大脉冲率 R0 = 0.5,最大脉冲音量 A0 = 0.25,脉冲频率增强系数 ga⁃ ma = 0.05,脉冲频率范围[0,2],尺度因子 F = 0.5, 脉冲音量衰减系数 alf = 0.95,交叉概率 CR = 0.1,种 群数最大为 200,最大迭代次数为 1 000 。 2.1 固定演化迭代次数的性能比较 为了防止算法的偶然性带来的误差,分别对每 个函数独自执行 20 次,取其最优值、平均值、最差值 和标准差,并与基本的蝙蝠算法进行比较,测试结果 如表 1 所示。 表 1 固定演化迭代次数的性能比较 Table 1 Performance comparison of fixed evolution iterations 函数 算法 最优值 平均值 最差值 标准差 f 1(x) DEBA 9.69563834601188E⁃19 5.84379322609028E⁃18 1.62619389692447E⁃17 4.83833694643861E⁃18 BA 2.16605159265E+03 1.24378646804E+04 3.68689654162E+04 7.91305595959E+03 f 2(x) DEBA 0 0 0 0 BA 4.87664433735E+01 9.77629405876E+01 1.78104931825E+02 3.24392513245E+01 f 3(x) DEBA 22.86069418838456 55.24989150912832 88.59947945489543 17.80577852011065 BA 4.13821313748E+03 1.01326679645E+07 5.38275134994E+07 1.37257696079E+07 f 4(x) DEBA -1 -0.99992590333598 -0.99943890712016 1.32120767991106e⁃04 BA -0.92181081785627 -0.64017500307743 -0.51119158750609 1.2404397445565 e⁃01 由表 1 可以获得,对 f 1 单峰函数,DEBA 比 BA 的最优值提高了 22 个数量级,平均值提高了 22 个 数量级,标准差提高了 21 个数量级;对高维、复杂的 多峰函数 f 2 ,DEBA 的最优值达到了理论最优值,平 均适应值提高了 1 个数量级,标准差提高了 1 个数 量级;对单峰病态函数 f 3 ,DEBA 比 BA 的最优值提 高了 2 个数量级,平均适应值提高了 6 个数量级,标 准差提高了 6 个数量级;对强烈振荡的多峰函数 f 4 , DEBA 的最小适应值达到了理论最优值,平均适应 值提高了 0.35,标准差提高了 3 个数量级。 由仿真 实验结果表明,本文算法(DEBA)效果较好,并对高 维多峰函数也是可行有效的。 图 1 是本文算法与基本的蝙蝠算法的收敛曲线 对比图。 可以看出本文算法在收敛速度、迭代次数、 收敛精度等性能上显著优于基本的蝙蝠算法,而且 对于复杂多极值点函数,本文算法能收敛到函数的 ·366· 智 能 系 统 学 报 第 9 卷
第3期 肖辉辉,等:改进的蝙蝠算法在数值积分中的应用研究 ·367. 理论全局最优解。 表2方平均运行时间对比 410 Table 2 Comparison of average running timef3 BA DEBA 维数 DEBA BA 巡3 10 0.9555 0.3276 30 1.0109 0.3526 50 1.1069 0.3853 ×10 3 4 5 迭代次数 3 DEBA算法求解数值积分算法 (a)函数的收敛对比曲线 通过上述实验仿真表明,改进的蝙蝠算法DE 200 BA具有收敛精度高、收敛速度快等特性。针对目前 BA @150 DEBA 数值积分方法存在的缺陷,利用DEBA算法求数值 100 积分,其基本思想是:在积分区间[a,b]随机生成 50 NP个节点位置,然后通过本文算法优化这些点的位 置,最终获得精度较高的积分值,实现步骤为 ×10 法代次数 10 1)在积分区间随机生成NP个D维个体的种 群,并确定种群中的每个个体的表达式,个体的表示 (b)函数的收敛对比曲线 形式为(X,V)=((x1,x2,…,xp),(1,2,…,D)。 5*10 2)计算适应度。对积分区间内的每个个体的 BA D维分量进行升序排列,接着分别计算D+2个节点 --DEBA 相邻之间的距离dj=1,2,…,D+1,然后计算D+ 1个小段中间节点和D+2个节点的函数值,并比较 ◇ 每小段中间节点、左端点和右端点的函数值,记下最 大的函数值为Max,最小的函数值为MinJ=1,2, 50 100 150 200 迭代次数 ,D+1,每个个体的适应度定义为:i)= D+1 (c)∫函数的收敛对比曲线 0.5∑d,1Max-Mim,l,设定一个很接近0的值s -0.5 作为程序的终止条件,当最小适应度小于ε时程序 -0.6 BA -0.7 DEBA 运行终止,适应度越接近于0,表明该个体越优良。 0.8 3)对算法的终止条件进行判断,假如终止条件 -0.9 不成立,则算法往下继续执行,如终止条件满足,算 .0 *10 法停止运行,并输出种群的最优个体,同时求出函数 迭代次数 的积分值。 (d)f函数的收敛对比曲线 4)更新蝙蝠种群。 图1DEBA与BA的收敛曲线对比 5)重复运行4),直到终止条件满足为止,输出 Fig.1 Comparison of convergence curves of DEBA and BA 种群的最优个体,并把它作为结果。 2.2算法复杂度的分析 6)算法停止执行时,算法最终所求出的函数积 一个好的智能优化算法,时间复杂度应该比较 分值近似于 低。由于篇幅限制,这里只选用了测试函数对本 文算法的时间复杂度进行测试分析,取相同的种群 4 (6) j=1 数(40)、独立运行次数(20次),计算所需要的平均 式中,(d1,d2,…,do)是积分区间的D+1个小段 运行时间,仿真结果如表2所示。从表2的平均运 对应的距离,(m1,m2,…,mo+1)为积分区间的D+1 行时间来看,虽然DEBA算法多了利用差分进化策 个小段对应的中间点所对应的函数值。 略进行变异操作,但在不同维数情况下DEBA算法 的平均运行时间比BA算法的平均运行时间略长一 4数值积分仿真实验与分析 些,说明本文算法是可行和有效的。 为验证DEBA算法求解数值积分问题的有效性
理论全局最优解。 (a) f 1 函数的收敛对比曲线 (b) f 2 函数的收敛对比曲线 (c) f 3 函数的收敛对比曲线 (d) f 4 函数的收敛对比曲线 图 1 DEBA 与 BA 的收敛曲线对比 Fig.1 Comparison of convergence curves of DEBA and BA 2.2 算法复杂度的分析 一个好的智能优化算法,时间复杂度应该比较 低。 由于篇幅限制,这里只选用了测试函数 f 3 对本 文算法的时间复杂度进行测试分析,取相同的种群 数(40)、独立运行次数(20 次),计算所需要的平均 运行时间,仿真结果如表 2 所示。 从表 2 的平均运 行时间来看,虽然 DEBA 算法多了利用差分进化策 略进行变异操作,但在不同维数情况下 DEBA 算法 的平均运行时间比 BA 算法的平均运行时间略长一 些,说明本文算法是可行和有效的。 表 2 f 3 平均运行时间对比 Table 2 Comparison of average running time f 3 维数 DEBA BA 10 0.9555 0.3276 30 1.0109 0.3526 50 1.1069 0.3853 3 DEBA 算法求解数值积分算法 通过上述实验仿真表明,改进的蝙蝠算法 DE⁃ BA 具有收敛精度高、收敛速度快等特性。 针对目前 数值积分方法存在的缺陷,利用 DEBA 算法求数值 积分,其基本思想是:在积分区间[ a,b ] 随机生成 NP 个节点位置,然后通过本文算法优化这些点的位 置,最终获得精度较高的积分值,实现步骤为 1) 在积分区间随机生成 NP 个 D 维个体的种 群,并确定种群中的每个个体的表达式,个体的表示 形式为 (X,V) = ((x1 ,x2 ,…,xD),(v1 ,v2 ,…,vD)) 。 2) 计算适应度。 对积分区间内的每个个体的 D 维分量进行升序排列,接着分别计算 D + 2 个节点 相邻之间的距离 dj,j = 1,2,…,D + 1,然后计算 D + 1 个小段中间节点和 D + 2 个节点的函数值,并比较 每小段中间节点、左端点和右端点的函数值,记下最 大的函数值为 Maxj ,最小的函数值为 Minj,j = 1,2, …,D + 1, 每 个 个 体 的 适 应 度 定 义 为: f(i) = 0.5∑ D+1 j = 1 dj | Maxj - Minj | ,设定一个很接近 0 的值 ε 作为程序的终止条件,当最小适应度小于 ε 时程序 运行终止,适应度越接近于 0,表明该个体越优良。 3) 对算法的终止条件进行判断,假如终止条件 不成立,则算法往下继续执行,如终止条件满足,算 法停止运行,并输出种群的最优个体,同时求出函数 的积分值。 4) 更新蝙蝠种群。 5) 重复运行 4),直到终止条件满足为止,输出 种群的最优个体,并把它作为结果。 6) 算法停止执行时,算法最终所求出的函数积 分值近似于 ∑ D+1 j = 1 mjdj (6) 式中, (d1 ,d2 ,…,dD+1 ) 是积分区间的 D + 1 个小段 对应的距离, (m1 ,m2 ,…,mD+1 ) 为积分区间的 D +1 个小段对应的中间点所对应的函数值。 4 数值积分仿真实验与分析 为验证 DEBA 算法求解数值积分问题的有效性 第 3 期 肖辉辉,等:改进的蝙蝠算法在数值积分中的应用研究 ·367·
·368- 智能系统学报 第9卷 和正确性,选取了文献[1-7]中给出的一些算例,并 x、√个+元、1/1+x、sin(x)、e在[0,2]积分区 与传统的梯形法、Simpson方法、Composite Simpson 间的积分值,DEBA算法计算结果和文献[4-7]、文 方法、Romberg方法及一些智能算法(粒子群算法, 献[18]、文献[19]、文献[20]结果对比如表3。函 杂草算法、人工鱼群算法)数值积分方法进行比较。 数x和函数√1+x积分误差变化曲线如图2~3。 例1取N=15,D=60,分别计算6个函数:x2、 表39种算法对例1的函数积分值比较 Table 3 Integral values comparison of the example 1 with 9 algorithms 函数 2 x vI+x 1/1+x sin(x) e 精确值 2.667 6.400 2.958 1.099 1.416 6.389 本文算法 2.66698573 6.401201 2.9581690 1.098754 1.416082 6.388921 IWO 2.66633 6.39865 2.95781 1.09859 1.41632 6.38873 PSO 2.666 6.398 2.9587 1.0985 1.416 6.3887 AFS 2.666593 6.399501 2.957868 1.098598 1.416173 6.388949 FN 2.667 6.3995 2.95789 1.0986 1.416 6.389 ES 2.666 6.398 2.9577 1.098 1.416 6.388 NN 2.665 6.393 2.959 1.101 1.415 6.388 Simpson 2.667 6.667 2.964 1.111 1.425 6.421 梯形法 4.000 16.000 3.326 1.333 0.909 8.389 0.7 0.6 5*10 0.5 0.4 0.3 账3 0.2 0.1F 20 4060 80 100 迭代次数 0 20 4060 80100 迭代次数 图2函数x的积分误差变化曲线 图4例2的积分误差变化曲线 Fig.2 The integral error change curve of functionx Fig.4 The integral error change curve of example 2 ×10 10 表47种算法对例2的函数积分值比较 8 6 Table 4 Integral values comparison of the example 2 with 7 algorithms 2 算法 函数积分值 20 40 60 80100 本文算法 1.5460388345767 迭代次数 Est4) 1.5459805 图3函数√个+x的积分误差变化曲线 PSOIs] 1.546032 Fig.3 The integral error change curve of function 1+x AFSIo] 1.54603261 例2计算奇异函数积分: Iwo7 1.545994 e,0≤x<1 NN[19] 1.5467 fx)= n,1≤x<2 e FNI2o] 1.54604 en,2≤x≤3 该奇异函数的精确积分值是1.546036。本文取 例3求解函数积分 N=15,D=60,获得该函数的积分值与文献[47]、文 由于被积函数的原函数不是初等函数,因此不能 献[19]、文献[20]的计算结果对比如表4所示。DEBA 用牛顿一莱布尼茨公式进行计算)。例3的函数的 算法求解该函数的积分误差变化曲线如图4。 精确积分值是0.746824。本文取N=15,D=200
和正确性, 选取了文献[1⁃7]中给出的一些算例, 并 与传统的梯形法、Simpson 方法、Composite Simpson 方法、Romberg 方法及一些智能算法(粒子群算法, 杂草算法、人工鱼群算法)数值积分方法进行比较。 例 1 取 N = 15,D = 60,分别计算 6 个函数: x 2 、 x 4 、 1 + x 2 、 1 / 1 + x 、 sin(x) 、 e x 在[ 0,2] 积分区 间的积分值,DEBA 算法计算结果和文献[4⁃7]、文 献[18]、文献[19]、文献[20] 结果对比如表 3。 函 数 x 4 和函数 1 + x 2 积分误差变化曲线如图 2~3。 表 3 9 种算法对例 1 的函数积分值比较 Table 3 Integral values comparison of the example 1 with 9 algorithms 函数 x 2 x 4 1 + x 2 1 / 1 + x sin(x) e x 精确值 2.667 6.400 2.958 1.099 1.416 6.389 本文算法 2.666 985 73 6.401 201 2.958 169 0 1.098 754 1.416 082 6.388 921 IWO 2.666 33 6.398 65 2.957 81 1.098 59 1.416 32 6.388 73 PSO 2.666 6.398 2.958 7 1.098 5 1.416 6.388 7 AFS 2.666 593 6.399 501 2.957 868 1.098 598 1.416 173 6.388 949 FN 2.667 6.399 5 2.957 89 1.098 6 1.416 6.389 ES 2.666 6.398 2.957 7 1.098 1.416 6.388 NN 2.665 6.393 2.959 1.101 1.415 6.388 Simpson 2.667 6.667 2.964 1.111 1.425 6.421 梯形法 4.000 16.000 3.326 1.333 0.909 8.389 图 2 函数 x 4 的积分误差变化曲线 Fig.2 The integral error change curve of function x 4 图 3 函数 1 + x 2 的积分误差变化曲线 Fig.3 The integral error change curve of function 1 + x 2 例 2 计算奇异函数积分: f(x) = e -x ,0 ≤ x < 1 e -x / 2 ,1 ≤ x < 2 e -x / 3 ,2 ≤ x ≤ 3 ì î í ï ï ïï 该奇异函数的精确积分值是 1.546 036。 本文取 N = 15,D = 60,获得该函数的积分值与文献[4⁃7]、文 献[19]、文献[20]的计算结果对比如表 4 所示。 DEBA 算法求解该函数的积分误差变化曲线如图 4。 图 4 例 2 的积分误差变化曲线 Fig.4 The integral error change curve of example 2 表 4 7 种算法对例 2 的函数积分值比较 Table 4 Integral values comparison of the example 2 with 7 algorithms 算法 函数积分值 本文算法 1.546 038 834 576 7 ES [4] 1.545 980 5 PSO [5] 1.546 032 AFS [6] 1.546 032 61 IWO [7] 1.545 994 NN [19] 1.546 7 FN [20] 1.546 04 例 3 求解函数积分 ∫ 1 0 e -x 2 dx 由于被积函数的原函数不是初等函数,因此不能 用牛顿—莱布尼茨公式进行计算[5] 。 例 3 的函数的 精确积分值是 0.746 824。 本文取 N = 15,D = 200, ·368· 智 能 系 统 学 报 第 9 卷
第3期 肖辉辉,等:改进的蝙蝠算法在数值积分中的应用研究 ·369 获得该函数的积分值与文献[4-7]、文献[19]、文献 [20]的计算结果对比如表5所示。DEBA算法求解 该函数的积分误差变化曲线如图5所示。 6 ×10 0 20 4060 80 100 迭代次数 图6例4的积分误差变化曲线 0 20 4060 80100 Fig.6 The integral error change curve of example 4 迭代次数 图5例3的积分误差变化曲线 例5计算振荡函数积分 sin(20x)dx Fig.5 The integral error change curve of example 3 该函数的精确积分值为0.05,本文取N=15, 表58种算法对例3的函数积分值比较 Table 5 Integral values comparison of the example 3 with 8 al- D=120,计算的结果为0.0499928607447172。在 gorithms 用复化梯形公式计算此积分2]时,为了使此函数的 算法 函数积分值 积分误差不超过10-3,则至少应该取503个点,求解 本文算法 中的计算工作量非常大,运用神经网络计算的结果 0.7468269544604 为0.04992,利用粒子群计算的结果为 PSO 0.746866 0.050038,采用杂草算法获得的结果为 IWO 0.746834 0.050025239093085)。DEBA算法求解该函数 AFS 0.746827304 的积分误差变化曲线如图7所示。 ES 0.74683 1.0m 矩形法 0.77782 0.8 阳 梯形法 0.74621 0.6 0.4 Simpson 0.74683 0.2 例4计算积分 √1+(cosx)2d 20 4060 80100 送代次数 该积分函数在利用Romberg方法进行计算时遇到 了困难s】。用Composite Simpson rule法计算时,把积 图7例5的积分误差变化曲线 分区间划分为100个等距子区间,计算结果为 Fig.7 The integral error change curve of example 5 58.4708215[18]。例4的函数的精确积分值是 例6计算振荡函数积分xsinxsin(100x)dx 58.4704691。运用DEBA算法,取N=15,D=100,得 该函数积分值与文献[4-7]、[19]、[20]的结果对比如 该振荡函数积分的精确值为-0.0073279,利用 表6。DEBA法求解该函数积分误差变化曲线如图6。 粒子群进行计算得到的结果为-0.0073409),采用 表68种算法对例4的函数积分值比较 人工鱼群算法计算得到的结果为 Table 6 Integral values comparison of the example 4 with 8 -0.00733208492792[6),运用杂草算法计算得到 algorithms 的结果为-0.00736273,本文取N=15,D=360, 算法 函数积分值 计算得到的结果为-0.00733541185521367。DE 本文算法 58.470505372351 BA算法求解该函数的积分误差变化曲线图如图8。 PSO 58.47024 0.4 IWO 58.470492 AFS 58.47044483 ≤0.1 ES 58.47065 20 40 60 80 100 FN 58.4705 迭代次数 梯形法 58.5209 图8例6的积分误差变化曲线 Simpson 58.4708215 Fig.8 The integral error change curve of example 6
获得该函数的积分值与文献[4⁃7]、文献[19]、文献 [20]的计算结果对比如表 5 所示。 DEBA 算法求解 该函数的积分误差变化曲线如图 5 所示。 图 5 例 3 的积分误差变化曲线 Fig.5 The integral error change curve of example 3 表 5 8 种算法对例 3 的函数积分值比较 Table 5 Integral values comparison of the example 3 with 8 al⁃ gorithms 算法 函数积分值 本文算法 0.746 826 954 460 4 PSO 0.746 866 IWO 0.746 834 AFS 0.7468 273 04 ES 0.746 83 矩形法 0.777 82 梯形法 0.746 21 Simpson 0.746 83 例 4 计算积分 ∫ 48 0 1 + (cos x) 2 dx 该积分函数在利用 Romberg 方法进行计算时遇到 了困难[18] 。 用 Composite Simpson rule 法计算时,把积 分区 间 划 分 为 100 个 等 距 子 区 间, 计 算 结 果 为 58.470 821 5 [18] 。 例 4 的 函 数 的 精 确 积 分 值 是 58.470 469 1。 运用 DEBA 算法,取 N = 15,D = 100,得 该函数积分值与文献[4⁃7]、[19]、[20]的结果对比如 表 6。 DEBA 法求解该函数积分误差变化曲线如图 6。 表 6 8 种算法对例 4 的函数积分值比较 Table 6 Integral values comparison of the example 4 with 8 algorithms 算法 函数积分值 本文算法 58.470 505 372 351 PSO 58.470 24 IWO 58.470 492 AFS 58.470 444 83 ES 58.470 65 FN 58.470 5 梯形法 58.520 9 Simpson 58.470 821 5 图 6 例 4 的积分误差变化曲线 Fig.6 The integral error change curve of example 4 例 5 计算振荡函数积分 ∫ 5π 8 0 sin(20x)dx 该函数的精确积分值为 0.05,本文取 N = 15, D =120,计算的结果为 0.049 992 860 744 717 2。 在 用复化梯形公式计算此积分[21] 时,为了使此函数的 积分误差不超过 10 -3 ,则至少应该取 503 个点,求解 中的计算工作量非常大,运用神经网络计算的结果 为 0. 049 92 [22] , 利 用 粒 子 群 计 算 的 结 果 为 0.050 038 [5] , 采 用 杂 草 算 法 获 得 的 结 果 为 0.050 025 239 093 085 [7] 。 DEBA 算法求解该函数 的积分误差变化曲线如图 7 所示。 图 7 例 5 的积分误差变化曲线 Fig.7 The integral error change curve of example 5 例 6 计算振荡函数积分 ∫ 1 0 xsinxsin(100x)dx 该振荡函数积分的精确值为-0.007 327 9,利用 粒子群进行计算得到的结果为-0.007 340 9 [5] ,采用 人 工 鱼 群 算 法 计 算 得 到 的 结 果 为 -0.007 332 084 927 92 [6] ,运用杂草算法计算得到 的结果为-0.007 362 73 [7] ,本文取 N = 15,D = 360, 计算得到的结果为-0.007 335 411 855 213 67。 DE⁃ BA 算法求解该函数的积分误差变化曲线图如图 8。 图 8 例 6 的积分误差变化曲线 Fig.8 The integral error change curve of example 6 第 3 期 肖辉辉,等:改进的蝙蝠算法在数值积分中的应用研究 ·369·
·370 智能系统学报 第9卷 通过上述6个不同数值积分算例对本文DEBA 191-195 算法的正确性和有效性进行的测试结果分析得到: [2]刘玉琏,傅沛仁数学分析讲义[M].北京:高等教育出版 从表3可以得知,对算例1中的6个普通函数进行 社,1992:309.342 [3]华东师范大学数学系数学分析[M].北京:高等教育出版 数值积分,DEBA算法相比目前的数值积分方法所 社,2001:106-109. 求的积分值精度都要高,且优势明显:从表4可以得 「4]周永权,张明,赵城.基于进化策略方法求任意函数的数 知,对算例2的奇异函数积分,DEBA算法相比神经 值积分[J].计算机学报,2008,31(2):196-205. 网络算法(NN)精度高2个数量级,比杂草算法 ZHOU Yongquan,ZHANG Ming,ZHAO Bin.Solving nu- (IWO)和进化策略(ES)精度高1个数量级,比粒子 merical integration based on evolution strategy method[J]. 群算法(PSO)、人工鱼群算法(AS)、三角函数作为 Chinese Journal of Computers,2008.31(2):196-205. [5]韦杏琼基于粒子群算法的数值方法研究[D].南宁:广西 泛函神经元(FN)3种方法的精度都要略高一些;从 民族大学,2009:11-15. 表5可以得知,对算例3的积分,DEBA算法分别比 WEI Xinggiong.Research on numerical methods based on 矩形法、梯形法精度高4个数量级和2个数量级,比 PSO[D].Nanning:Guangxi Uiversity for Nationalities, 粒子群算法和杂草算法精度高1个数量级,比进化 2009:11-15. 「61聂黎明,周永权基于人工鱼群算法求任意函数的数值积 策略、人工鱼群算法和Simpson法的精度都要略高 分[J].数学的实践与认识,2009,39(19):127-134. 一些:从表6可以得知,对算例4的积分,DEBA算 NIE Liming,ZHOU Yongquan.Solving numerical integration 法相比梯形法精度高3个数量级,比进化策略、粒子 based on artificial fish-swarm algorithm.Mathematics in 群算法和Simpson法精度高1个数量级,跟杂草算 Practice and Theory,2009,39(19):127-134. 法、人工鱼群算法、FN法3种方法相比,积分精度相 [7]陈欢杂草优化算法的改进分析及应用研究[D].南宁:广 当,积分误差的数量级都是10;对于算例5的振荡 西民族大学,2013:34-39. 函数积分,DEBA算法相比神经网络算法、粒子群算 CHEN Huan.Improvements and applications of invasive weed optimization algorithm[D].Nanning:Guangxi Univer- 法和杂草算法精度都要高1个数量级:对于算例6 sity for Nationalities,2013:34-39. 的振荡函数积分,DEBA算法比粒子群算法、杂草算 [8]YANG Xinshe.A new metaheuristic bat-inspired algorithm 法的精度都要高1个数量级,跟人工鱼群算法相比, [C]//Nature Inspired Cooperative Strategies for Optimiza- 积分精度相当,积分误差的数量级都是10。从图 tion.Berlin:Springer-Verlag,2010:65-74. 2~8可以看出,DEBA算法收敛性较好,经过较少的 [9]盛晓华,叶春明.蝙蝠算法在PFSP调度问题中的应用研 究「J].工业工程,2013,16(1):119-124 迭代次数就能获得精度较高的积分值。从以上数值 SHENG Xiaohua,YE Chunming.Application of bat algorithm 积分实验仿真结果表明,DEBA算法是非常有效的。 to permutation flow-shop scheduling problemJ.Industrial Engineering Journal,2013,16(1):119-124. 5结束语 [10]KOMARASAMY G,WAHI A.An optimized k-means clus- 本文提出了基于改进的蝙蝠算法求函数数值积 tering technique using bat algorithm[J].European Journal 分的新方法DEBA算法,对6个不同数值积分算例 of Scientific Research,2012,84(2):263-273. [11]YANG X S,GANDOMI A H.Bat algorithm:a novel ap- 进行测试,仿真结果表明,该算法收敛性、计算精度 proach for global engineering optimization [J].Engineering 相比目前的数值积分方法优势比较明显,验证了 0 mputation,2012,29(5):464-483. DEBA算法的有效性和可行性,不仅可以对普通函 [12]YANG X S.Bat algorithm for multi-objective optimization 数进行积分,还可以计算振荡积分、奇异积分和被积 J.International Joumal of Bio-Inspired Computation, 2011,3(5):267-274. 函数的原函数不是初等函数积分,此方法可看作对 [13]刘长平,叶春明.具有Lvy飞行特征的蝙蝠算法[J].智 目前数值积分方法的一种深入扩展。同时,也可以 能系统学报,2013,8(3):240-246. 看作蝙蝠算法应用领域的一种补充。如何利用其他 LIU Changping,YE Chunming.Bat algorithm with the char- 智能算法的优点来改进基本的BA算法,如与花朵 acteristics of Levy flights[J].CAAI Transaction on Intelli- 授粉算法进行融合:如何扩展BA算法的应用领域, gent System,2013,8(3):240-246. 利用BA算法解决离散性问题:对蝙蝠算法的理论 [14]STORM R,PRICE K.Differential evolution dash a simple and efficient heuristic for global optimization over continu- 研究(如利用Markov链证明蝙蝠算法的收敛性)等 ous spaces[J].Journal of Global Optimization,1997(11): 问题是今后进一步研究的内容和方向。 341-359. 参考文献: [15]HAUPT R L,HAUPT S E.Practical genetic algorithm [M].New Jersey:John Wiley Sons,2004:1-25. [1]薛密数值数学和计算[M].上海:复旦大学出版社,1991: [16]李明,曹德欣.混合CS算法的DE算法[J].计算机工程
通过上述 6 个不同数值积分算例对本文 DEBA 算法的正确性和有效性进行的测试结果分析得到: 从表 3 可以得知,对算例 1 中的 6 个普通函数进行 数值积分,DEBA 算法相比目前的数值积分方法所 求的积分值精度都要高,且优势明显;从表 4 可以得 知,对算例 2 的奇异函数积分,DEBA 算法相比神经 网络算法 (NN) 精度高 2 个数量级,比杂草算法 (IWO)和进化策略(ES)精度高 1 个数量级,比粒子 群算法(PSO)、人工鱼群算法(AFS)、三角函数作为 泛函神经元(FN)3 种方法的精度都要略高一些;从 表 5 可以得知,对算例 3 的积分,DEBA 算法分别比 矩形法、梯形法精度高 4 个数量级和 2 个数量级,比 粒子群算法和杂草算法精度高 1 个数量级,比进化 策略、人工鱼群算法和 Simpson 法的精度都要略高 一些;从表 6 可以得知,对算例 4 的积分,DEBA 算 法相比梯形法精度高 3 个数量级,比进化策略、粒子 群算法和 Simpson 法精度高 1 个数量级,跟杂草算 法、人工鱼群算法、FN 法 3 种方法相比,积分精度相 当,积分误差的数量级都是 10 -5 ;对于算例 5 的振荡 函数积分,DEBA 算法相比神经网络算法、粒子群算 法和杂草算法精度都要高 1 个数量级;对于算例 6 的振荡函数积分,DEBA 算法比粒子群算法、杂草算 法的精度都要高 1 个数量级,跟人工鱼群算法相比, 积分精度相当,积分误差的数量级都是 10 -5 。 从图 2~8 可以看出,DEBA 算法收敛性较好,经过较少的 迭代次数就能获得精度较高的积分值。 从以上数值 积分实验仿真结果表明,DEBA 算法是非常有效的。 5 结束语 本文提出了基于改进的蝙蝠算法求函数数值积 分的新方法 DEBA 算法,对 6 个不同数值积分算例 进行测试,仿真结果表明,该算法收敛性、计算精度 相比目前的数值积分方法优势比较明显,验证了 DEBA 算法的有效性和可行性,不仅可以对普通函 数进行积分,还可以计算振荡积分、奇异积分和被积 函数的原函数不是初等函数积分,此方法可看作对 目前数值积分方法的一种深入扩展。 同时,也可以 看作蝙蝠算法应用领域的一种补充。 如何利用其他 智能算法的优点来改进基本的 BA 算法,如与花朵 授粉算法进行融合;如何扩展 BA 算法的应用领域, 利用 BA 算法解决离散性问题;对蝙蝠算法的理论 研究(如利用 Markov 链证明蝙蝠算法的收敛性)等 问题是今后进一步研究的内容和方向。 参考文献: [1]薛密.数值数学和计算[M].上海:复旦大学出版社,1991: 191⁃195. [2]刘玉琏,傅沛仁.数学分析讲义[M].北京:高等教育出版 社,1992: 309⁃342. [3]华东师范大学数学系.数学分析[M].北京:高等教育出版 社,2001: 106⁃109. [4]周永权,张明,赵斌.基于进化策略方法求任意函数的数 值积分[J]. 计算机学报, 2008,31(2): 196⁃205. ZHOU Yongquan, ZHANG Ming, ZHAO Bin. Solving nu⁃ merical integration based on evolution strategy method [ J]. Chinese Journal of Computers, 2008, 31(2): 196⁃205. [5]韦杏琼.基于粒子群算法的数值方法研究[D].南宁:广西 民族大学,2009: 11⁃15. WEI Xingqiong. Research on numerical methods based on PSO [ D]. Nanning: Guangxi Uiversity for Nationalities, 2009: 11⁃15. [6]聂黎明,周永权.基于人工鱼群算法求任意函数的数值积 分[J].数学的实践与认识, 2009, 39(19): 127⁃134. NIE Liming, ZHOU Yongquan. Solving numerical integration based on artificial fish⁃swarm algorithm[ J]. Mathematics in Practice and Theory, 2009, 39(19): 127⁃134. [7]陈欢.杂草优化算法的改进分析及应用研究[D].南宁:广 西民族大学,2013:34⁃39. CHEN Huan. Improvements and applications of invasive weed optimization algorithm[D]. Nanning: Guangxi Univer⁃ sity for Nationalities, 2013: 34⁃39. [8] YANG Xinshe. A new metaheuristic bat⁃inspired algorithm [C] / / Nature Inspired Cooperative Strategies for Optimiza⁃ tion. Berlin: Springer⁃Verlag, 2010: 65⁃74. [9]盛晓华,叶春明.蝙蝠算法在 PFSP 调度问题中的应用研 究[J].工业工程, 2013, 16(1): 119⁃124. SHENG Xiaohua,YE Chunming.Application of bat algorithm to permutation flow⁃shop scheduling problem [ J]. Industrial Engineering Journal, 2013, 16(1): 119⁃124. [10]KOMARASAMY G, WAHI A. An optimized k⁃means clus⁃ tering technique using bat algorithm[ J]. European Journal of Scientific Research, 2012, 84(2): 263⁃273. [11] YANG X S,GANDOMI A H. Bat algorithm: a novel ap⁃ proach for global engineering optimization [ J].Engineering Omputation,2012, 29(5): 464⁃483. [12] YANG X S. Bat algorithm for multi⁃objective optimization [ J]. International Journal of Bio⁃Inspired Computation, 2011, 3(5): 267⁃274. [13]刘长平, 叶春明.具有 Levy 飞行特征的蝙蝠算法[ J].智 能系统学报,2013, 8(3): 240⁃246. LIU Changping,YE Chunming.Bat algorithm with the char⁃ acteristics of Levy flights[ J].CAAI Transaction on Intelli⁃ gent System, 2013, 8(3): 240⁃246. [14]STORM R, PRICE K. Differential evolution dash a simple and efficient heuristic for global optimization over continu⁃ ous spaces[ J].Journal of Global Optimization,1997(11): 341⁃359. [15] HAUPT R L, HAUPT S E. Practical genetic algorithm [M]. New Jersey: John Wiley & Sons, 2004: 1⁃25. [16]李明,曹德欣. 混合 CS 算法的 DE 算法[ J].计算机工程 ·370· 智 能 系 统 学 报 第 9 卷
第3期 肖辉辉,等:改进的蝙蝠算法在数值积分中的应用研究 .371. 与应用,2013,49(9):57-60. [22]徐理英,李立军.数值积分的神经网络算法研究[J]系 [17]刘佳昆,周永权.一种最大最小萤光素值人工萤火虫算 统仿真学报,2008,20(7):1922-1924. 法[J].计算机应用研究,2011,28(10):3662-3664. XU Liying,LI Lijun.Neural network algorithm for solving LIU Jiakun,ZHOU Yongquan.Glowworm swarm optimiza- numerical integration J.Journal of System Simulation, tion algorithm based on max-min luciferinJ.Application 2008,20(7):1922-1924 Research of Computers,2011,28(10):3662-3664. 作者简介: [18]BURDEN R L,FSIRES J D.Numerical Analysis[M].To- 肖辉辉,男,1977年生,讲师,主要 ronto:Thomson Brooks/Cole,2001:206-212. 研究方向为智能优化计算以及数据库 [19]WANG X H,HE Y G,ZENG ZZ.Numerical integration 技术。主持、参与科研项目多项,发表 study based on triangle basis neural network algorithm[]. 学术论文20余篇,主编、副主编十二五 Journal of Electronics Information Technology,2004,26 规划教材各一部。 (3):394-299. [20]韦修喜,周永权,蓝晓玲.一种基于泛函网络求数值积分 方法研究[J].计算机科学,2009,36(4):224-226,238. 段艳明,女,1978年生,讲师,主要 WEI Xiuxi,ZHOU Yongquan,LAN Xiaoling.Numerical 研究方向为智能优化计算、人工智能。 integration method study based on function network[]]. Computer Science,2009,36(4):224-226,238. [21]丁丽娟,程杞元数值计算方法[M].北京:北京理工大学 出版社,2005:165-204. 2014机器人、微机电一体化和人工智能国际会议 2014 International Conference on Robotics,Micro-Mechanotronics and Artificial Intelligence 2014 International Conference on Robotics,Micro-Mechanotronics and Artificial Intelligence (RMAI 2014)will be held from December 6 to December 7,2014,in Shenyang,China.RMAI2014 is sponsored by Shenyang Aerospace University and co- sponsored by Shenyang University,Liaoning Shihua University,University of Management and Economics(Cambodia).This con- ference is a premier international forum for scientists and researchers to present the state of the art of Robotics,Micro-Mecha- notronics and Artificial Intelligence.Topics of interests are in the broad areas of Robotics,Micro-Mechanotronics and Artificial Intelligence.Robotics:The design,manufacture,navigation,control,sensors,actuators,environmental perception,obstacle a- voidance technology,formation technology and application of all kinds of robot like industrial robots,health robot,special robot, land robots,underground robot,aerial robot (also known as UAV),USV(Unmanned Surface Vehicle),underwater robot,space robot,parallel robot,nano-robots,etc. Micro-Mechanotronics:advanced mechanotronics equipment,sensing and control of mechanotronics,intelligent actuator and ma- terials,MEMS (Micro electro metro-mechanical system),NEMS (Nanoelectromechanical system),the application of microsys- tems and mechanotronics in life sciences,Networked electromechanical systems sensor and network,etc. Artificial Intelligence:troubleshooting,comprehensive health management,health forecast,fault-tolerant control,machine vi- sion,image processing,biological characteristics and behavior analysis,pattern recognition and its application,neural network, SVM(support vector machine),fuzzy logic,artificial intelligence algorithm,control and optimization technique,expert system, decision support system(DSS),DM(data mining),etc. This conference is a premier intemational forum for scientists and researchers to present the state of the art of Robotics,Micro- Mechanotronics and Artificial Intelligence.Topics of interests are in the broad areas of Robotics,Micro-Mechanotronics and Arti- ficial Intelligence. 1)Robotics; 2)Micro-Mechanotronics; 3)Artificial Intelligence: Contact E-mail:rmai2014@163.com;liyibo_sau@163.com Website:http://rmai2014.sau.edu.cn/
与应用, 2013, 49(9): 57⁃60. [17]刘佳昆,周永权. 一种最大最小萤光素值人工萤火虫算 法[J].计算机应用研究, 2011, 28(10): 3662⁃3664. LIU Jiakun, ZHOU Yongquan. Glowworm swarm optimiza⁃ tion algorithm based on max⁃min luciferin[ J].Application Research of Computers, 2011, 28(10): 3662⁃3664. [18]BURDEN R L, FSIRES J D. Numerical Analysis[M]. To⁃ ronto: Thomson Brooks/ Cole, 2001: 206⁃212. [19]WANG X H, HE Y G, ZENG Z Z. Numerical integration study based on triangle basis neural network algorithm[ J]. Journal of Electronics & Information Technology, 2004, 26 (3): 394⁃299. [20]韦修喜,周永权,蓝晓玲.一种基于泛函网络求数值积分 方法研究[J].计算机科学, 2009, 36(4): 224⁃226, 238. WEI Xiuxi, ZHOU Yongquan, LAN Xiaoling. Numerical integration method study based on function network [ J]. Computer Science, 2009, 36(4): 224⁃226, 238. [21]丁丽娟,程杞元.数值计算方法[M].北京:北京理工大学 出版社,2005: 165⁃204. [22]徐理英,李立军. 数值积分的神经网络算法研究[ J].系 统仿真学报,2008, 20(7): 1922⁃1924. XU Liying, LI Lijun. Neural network algorithm for solving numerical integration [ J ]. Journal of System Simulation, 2008, 20(7): 1922⁃1924. 作者简介: 肖辉辉,男,1977 年生,讲师,主要 研究方向为智能优化计算以及数据库 技术。 主持、参与科研项目多项,发表 学术论文 20 余篇,主编、副主编十二五 规划教材各一部。 段艳明,女,1978 年生,讲师,主要 研究方向为智能优化计算、人工智能。 2014 机器人、微机电一体化和人工智能国际会议 2014 International Conference on Robotics, Micro⁃Mechanotronics and Artificial Intelligence 2014 International Conference on Robotics, Micro⁃Mechanotronics and Artificial Intelligence (RMAI 2014) will be held from December 6 to December 7, 2014, in Shenyang, China. RMAI2014 is sponsored by Shenyang Aerospace University and co⁃ sponsored by Shenyang University, Liaoning Shihua University,University of Management and Economics(Cambodia) . This con⁃ ference is a premier international forum for scientists and researchers to present the state of the art of Robotics,Micro⁃Mecha⁃ notronics and Artificial Intelligence. Topics of interests are in the broad areas of Robotics, Micro⁃Mechanotronics and Artificial Intelligence.Robotics: The design, manufacture, navigation,control, sensors, actuators, environmental perception, obstacle a⁃ voidance technology, formation technology and application of all kinds of robot like industrial robots, health robot,special robot, land robots, underground robot, aerial robot (also known as UAV), USV(Unmanned Surface Vehicle),underwater robot, space robot, parallel robot, nano⁃robots, etc. Micro⁃Mechanotronics: advanced mechanotronics equipment, sensing and control of mechanotronics, intelligent actuator and ma⁃ terials, MEMS (Micro electro metro⁃ mechanical system), NEMS (Nanoelectromechanical system), the application of microsys⁃ tems and mechanotronics in life sciences, Networked electromechanical systems sensor and network, etc. Artificial Intelligence: troubleshooting, comprehensive health management, health forecast, fault⁃tolerant control, machine vi⁃ sion, image processing, biological characteristics and behavior analysis, pattern recognition and its application, neural network, SVM(support vector machine), fuzzy logic, artificial intelligence algorithm, control and optimization technique, expert system, decision support system(DSS) , DM(data mining), etc. This conference is a premier international forum for scientists and researchers to present the state of the art of Robotics, Micro⁃ Mechanotronics and Artificial Intelligence. Topics of interests are in the broad areas of Robotics, Micro⁃Mechanotronics and Arti⁃ ficial Intelligence. 1)Robotics; 2)Micro⁃Mechanotronics; 3)Artificial Intelligence: Contact E⁃mail: rmai2014@ 163.com;liyibo_sau@ 163.com Website: http:/ / rmai2014.sau.edu.cn/ 第 3 期 肖辉辉,等:改进的蝙蝠算法在数值积分中的应用研究 ·371·