布谷鸟搜索(Cuckoo Search,缩写 CS),也叫杜鹃搜索,是由剑桥大学杨新社(音译自:Xin-She Yang)教授和S.戴布(S.Deb)于2009年提出的一种新兴启发算法。
定义CS算法是通过模拟某些种属布谷鸟的寄生育雏(BroodParasitism),来有效地求解最优化问题的算法。同时,CS也采用相关的Levy飞行搜索机制。研究表明,布谷鸟搜索比其他群体优化算法更有效。
算法在自然界中,布谷鸟寻找适合自己产卵的鸟窝位置是随机的或是类似随机的方式,为了模拟布谷鸟寻
窝的方式,首先,需要设定以下3个理想的状态
(1)布谷鸟一次只产一个卵,并随机选择鸟窝来孵化它;
(2)在随机选择的一组鸟窝中,最好的鸟窝将会被保留到下一代;
(3)可利用的鸟窝数量n是固定的,一个鸟窝的主人能发现一个外来鸟蛋的概率Pa∈[0,1],在这3
个理想状态的基础上,布谷鸟寻窝的路径和位置更新公式如下:
x(t+1)i=x(t)i+α*L(λ),i=1,2,…,n.(1)
其中x(t)i表示第i个鸟窝在第t代的鸟窝位置,*为点对点乘法,α表示步长控制量,L(λ)为Levy随机搜索路径,并且L~u=t-λ,(1pa,则对x(t+1)i进行随机改变,反之不变。最后保留测试值较好的一组鸟窝位置y(t+1)i,此时仍把y(t+1)i记为x(t+1)i。1
特点布谷鸟搜索算法,是 由剑 桥 大 学YANG等在文献 中提出的一种群智能优化算法,它也是一种新型元启发式搜索算法。其思想主要基于两个策略:布谷鸟的巢寄生性和莱维飞行机 制。通过随机游走的方式搜索得到一个最优的鸟窝来孵化自己的鸟蛋,这种方式可以达到一种高效的寻优模式。
CS算法主要优点是参数少、操作简单、易实现、随机搜索路径优和寻优能力强等,备受学者关注,相关的科研成果也日益倍增。目前,王凡、贺兴时等已在文献中通过建立CS算法的Markov链模型,理论证明了该算法可收敛于全局最优。CS算法的衍生算法以及应用研究也已得到了快速的发展,但目前国内外对CS算法的综述性研究比较少,YANG等在文献中对CS算法最初的发展和它的多种改进算法之间进行了比较,没有详细概述CS算法的发展现状。因此,有必要对CS算法的原理、算法改进、其各领域的应用、算法优缺点、使用范围、目前存在的问题以及下一阶段的研究方向等进行系统、全面的总结和评述,进而呈现CS算法的发展现状,期望该算法能够解决更多更有效的实际问题。1
布谷鸟搜索布谷鸟搜索(CS)使用蛋巢代表解。最简单情况是,每巢有一个蛋,布谷鸟的蛋代表了一种新的解。其目的是使用新的和潜在的更好的解,以取代不那么好的解。该算法基于三个理想化的规则:
每个杜鹃下一个蛋,堆放在一个随机选择的巢中;
最好的高品质蛋巢将转到下一代;
巢的数量是固定的,布谷鸟的蛋被发现的概率为P(a)。1
实际应用布谷鸟搜索到工程优化问题中的应用已经表现出其高优效率经过几年的发展,为了进一步提高算法的性能,CS算法的很多变体与改进逐步涌现。瓦尔顿(Walton)等提出了修正布谷鸟搜索(ModifiedCuckooSearch,缩写MCS);伐立安(Valian)等提出了一种可变参数的改进CS算法,提高了收敛速度,并将改进算法应用于前馈神经网络训练中;马里切尔凡姆(Marichelvam)将一种混合CS算法应用于流水车间调度问题求解中;钱德拉塞卡兰(Chandrasekaran)等将集成了模糊系统的混合CS算法应用于机组组合问题。
杨(Yang)和戴布(Deb)提出多目标布谷鸟搜索(MultiobjectiveCuckooSearch,缩写MOCS),应用到工程优化并取得很好的效果;詹(Zhan)等通过对种群分组,并根据搜索的不同阶段对搜索步长进行预先设置,提出了修正调适布谷鸟搜索(ModifiedAdaptiveCuckooSearch,缩写MACS),提高了CS的性能。2
科学与工程实践中的许多问题都可以归结为优化问题。相对于 ACO、PSO 等 发展较为完善的仿生智能算法来说,CS算法的应用研究在涉及电力系统、生 物 医 药、模 糊 控制、金融、电子与电磁场等领域还较少,如何找到 CS算法及其衍生算法与实际问题的切入点,将 CS算法与实际问题相结合,将会有力地推动 CS算法的快速发展。2
本词条内容贡献者为:
曹慧慧 - 副教授 - 中国矿业大学