浅谈群体智能算法

2017-09-17 12:19林辉
科学与财富 2017年25期
关键词:智能算法鸟群种群

摘 要:本文介绍了群智能算法的特点,PSO的基本原理、算法的改进,特别对相关国际发展现状进行了分析,让初学者轻松入门;给出了国内外具有重要影响的各种改进形式,不仅可以让初学者得到提高的机会,也让资深读者从中受到启发。

关键词:粒子群,群智能

1群体智能

1975年,美国Michigan大学的John Holland[1]教授发表了其开创性的著作《Adapatation in Natural and Artficial System 》,在该著作中作者对智能系统及其自然界中的自适应变化机制进行了详细的阐述,并提出了计算机程序的自适应变化机制,该著作的发表被认为是群体智能[2]算法的开山之作。随后John Holland 和他的学生对该算法机制进行了推广,并正式将该算法命名为遗传算法,遗传算法的出现和成功,极大地鼓舞了广大研究工作者向大自然现象学习的热情。经过多年的发展,已经诞生出了大量的群体智能算法,包括:遗传算法、蚁群算法,差异演化算法、粒子群优化算法等对智能系统及自然界中的自适应变化机制进行了详细阐述。

群体智能算法的特点:

(1)智能型

群体智能算法通过向大自然界中某些生命现象或自然现象学习,实现对于问题的求解,这一算法中包含了自然界生命现象所具有的自组织、自学习和自适应等特点,在运算过程中,通过获得的计算信息自行组织种群对解空间进行搜索。种群在搜索过程中依据事先设定的适应度函数值,采用适者生存、优胜略汰的方式进化,所以算法具有已经的智能性。

(2) 隐含本质并行性

群体智能算法通过设定相应的种群进化机制完成计算,而种群内的个体则具有一定的独立性。个体之间完全是一种本质上的并行机制。如果使用分布式多处理机来完成群体智能算法,可以将算法设置为多个种群并分别放置于不同的处理机实现进化,迭代期间完成一定的信息交流就可以,迭代完成后,根据适应度进行优胜略汰。所以,群体智能算法这种隐含的本质并行性,能够更充分利用多处理器机制,实现并行编程,提高算法的求解能力。更加适合目前云计算等分布式计算技术迅速发展的背景。

(3) 解的近似性

群体智能算法通常来对大自然中某种生命或其他事物的智能协作进化现象的模拟,利用某种机制指导种群对解空间进行搜索。由于该类算法缺乏严格的数学理论支持,对于问题的解空间采用反复迭代的概率性搜索,所以群體智能算法会存在早熟或解精度较低等问题,而这也是所有群体智能算法几乎都存在的弱点,所以很多时候对求解的问题来说,群体智能算法仅仅得到的是是一种最佳解的近似解。

自然界中一些昆虫的行为,如空中的鸟群和蜂群,地上的蚁群,水中的鱼群,它们单个个体的结构都非常简单,然而这些个体之间通过协同工作表现出来的行为能力却十分复杂,这种群体的运动称为群行为,研究人员受这些社会性生物群体行为的启发,通过对它们的进化过程或觅食过程的模拟,建立了一系列解决最优化问题的新方法。

2.粒子群优化算法的两种模式

Kennedy等人在观察鸟群觅食的过程中注意到,通常飞鸟并不一定看到鸟群中其他所有飞鸟的位置和动向,往往只是看到相邻的飞鸟的位置和动向。因此他在研究粒子群算法时,同时开发了两种模式:全局最优(Gbest)和局部最优(Lbest)[3]。

3粒子群算法基本原理

粒子群优化算法最原始的工作可追溯到1987年Reynolds对鸟群社会系统Boids(Reynolds对其仿真鸟群系统的命名)仿真研究[6] 。通常,群体的行为可以由几条简单的规则进行建模,虽然每个个体具有简单的行为规则,但是却群体的行为却是非常的复杂,所以他们在鸟类仿真中,即Boids系统中采取了下面的三条简单的规则:

(1)飞离最近的个体(鸟),避免与其发生碰撞冲突;

(2)尽量使自己与周围的鸟保持速度一致;

(3)尽量试图向自己认为的群体中心靠近。

1995年Kennedy和Eberhart在Reynolds等人的研究基础上创造性地提出了粒子群优化算法,应用于连续空间的优化计算中 。Kennedy和Eberhart在boids中加入了一个特定点,定义为食物,每只鸟根据周围鸟的觅食行为来搜寻食物。Kennedy和Eberhart的初衷是希望模拟研究鸟群觅食行为,但试验结果却显示这个仿真模型蕴含着很强的优化能力,尤其是在多维空间中的寻优。最初仿真的时候,每只鸟在计算机屏幕上显示为一个点,而“点”在数学领域具有多种意义,于是作者用“粒子(particle)”来称呼每个个体,这样就产生了基本的粒子群优化算法[4]。

假设在一个D 维搜索空间中,有m个粒子组成一粒子群,其中第i 个粒子的空间位置为 ,它是优化问题的一个潜在解,将它带入优化目标函数可以计算出其相应的适应值,根据适应值可衡量xi的优劣;第i个粒子所经历的最好位置称为其个体历史最好位置,记为

相应的适应值为个体最好适应值 Fi ;同时,每个粒子还具有各自的飞行速度 。所有粒子经历过的位置中的最好位置称为全局历史最好位置,记为 ,相应的适应值为全局历史最优适应值 。在基本PSO算法中,对第n 代粒子,其第 d 维(1≤d≤D )元素速度、位置更新迭代如式(1)、(2):

(1)

(2)

4结论与展望

粒子群优化(PSO)是一种新兴的基于群体智能的启发式全局随机搜索算法,具有易理解、易实现、全局搜索能力强等特点,为各个领域的研究人员提供了一种有效的全局优化技术。本文对PSO的基本原理、在科学与工程实践领域,关心PSO的读者的共同兴趣所在是PSO本身,即“PSO是什么”和“有些什么样的改进形式”,而“用PSO怎样解决某个具体问题”则依赖于相应领域的专业知识[4];为了让尽可能多的国内读者从中受益而不局限于具体的工业背景,综述内容侧重于对基本PSO原理、算法改进,特别是相关国际发展现状进行分析。

由于PSO毕竟是一种新兴的智能优化算法,在以下方面仍然值得进一步研究:但是由于提出时间不长,算法还缺乏深刻的理论分析和坚实的数学基础, 还存在许多不完善的地方,还有很多问题有待进一步解决。(1)算法的理论分析。包括 PSO 算法的收敛性分析,鲁棒性分析,计算复杂性分析,参数设置的理论分析以及如何避免陷入局部最优等问题。(2)与其他演化算法的结合。PSO 算法主要的一个缺点是容易陷入局部最优,因此如何与其他演化算法,比如遗传算法,模拟退火算法,免疫算法,禁忌搜索算 法等等相结合,优势互补,扬长避短,组成一个混和的高性能的优化算法,亦将是未来研究的一个热点.(3)粒子群算法的生物学基础。如何根据群体进行行为完善算法,将群体智能引入算法中,借鉴生物群体进化规则和进化的智能性也是学者关注的问题。(4)粒子群优化算法与其他进化类算法的比较研究。与其他进化算法的融合,如何让将其他进化算法的优点和粒子群优化算法相结合,构造出有特色有实用价值的混合算法是当前算法改进的一个重要方向。

参考文献:

[1]Holland,J.H.Outline for a logical theory of adaptive systems. J. ACM 9(3), 297-314

[2王培崇,群体智能算法及其应用.北京:电子工业出版社,2015

[3]徐星,热力学粒子群优化算法研究及其应用.天津: 天津大学出版社,2011

[4]赵波,曹一家.电力系统无功优化的多智能体粒子群优化算法.中国电机工程学报,第25卷第5期。

作者简介:

林辉(1982-),男,陕西西安人,工程师,硕士,研究方向为网络安全。

猜你喜欢
智能算法鸟群种群
山西省发现刺五加种群分布
飞翔的鸟群
神经网络智能算法在发电机主绝缘状态评估领域的应用
基于超像素的图像智能算法在矿物颗粒分割中的应用
为什么鸟要成群飞翔?
为什么鸟群飞行时不会彼此冲撞?
中华蜂种群急剧萎缩的生态人类学探讨
从鸡群算法看群体智能算法的发展趋势
改进的多目标快速群搜索算法的应用
鸟群优雅