粒子群优化算法(ParticleSwarmOptimizationPSO)是一种相对较新的

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

粒子群优化算法(ParticleSwarmOptimizationPSO)是一种相对较新的进化优化算法,它由Eberhart博士和Kennedy博士在1995年首次提出。粒子群优化算法源于对鸟类捕食行为的模拟,与遗传算法(GA)相比,它没有选择、交叉、变异等遗传操作,算法参数少,因此算法实现简单。目前,在一些学者的努力下,粒子群优化算法己经广泛应用于函数优化,并在系统辨识、神经网络训练等问题中取得了可喜的进展。自1998年以来,粒子群优化算法逐渐成为进化计算的领域内在遗传算法之后的又一个研究热点。算法模拟鸟群飞行觅食的行为,通过鸟之间的集体协作使群体达到最优,与遗传算法类似,它也是基于群体迭代,但没有交叉和变异算子,是一种利用群体在解空间中找寻最优粒子进行搜索的计算智能方法。首先,PSO中每个优化问题的解都是搜索空间中的一个粒子,所有的粒子都有一个由被优化的函数决定的适应值(fitnessvalue),每个粒子还有一个速度决定他们运动的方向和距离;然后粒子们就追随当前的最优粒子在解的空间中搜索。PSO初始化为一群随机粒子(随机解);最后通过迭代找到最优解。该方法能快速地产生很好的效果,这样就可以使整个系统的效率有所提高。PSO的优点在于收敛速度快、设置参数少,简单易实现,算法本身具有深刻的智能背景,既适合科学研究,又特别适合工程应用。PSO算法求解优化问题时,所求问题的解就是搜索空间中的每一只鸟的位置,称这些鸟为基本粒子。所有的粒子都由一个被优化的函数决定的适应值(候选解)和一个决定他们飞翔方向和距离的速度。在优化过程中,每个粒子记忆,追随当前的最优粒子,在解空间中进行搜索。PSO算法初始化为一群随机粒子(随机候选解),然后通过迭代找到最优的解。在每一次迭代的过程中,粒子通过追逐两个极值来更新自己的位置。一个是粒子自身找到的当前最优解称为个体极值pbest,另一个是整个群体当前找到的最优解,这个解称为全局极值gbest。图2介绍了PSO算法的具体流程[14,15]。在PSO算法中,每一个可能的解都会表示成一个粒子。每一个粒子都有一个位置坐标x和一个速率坐标v,位置坐标和速率坐标分别有以下表达式表示:,1,2,(,,,)iiiiNxxxx(11),1,2,(,,,)iiiiNvvvv(12)这里每一个矢量长度N表示问题或未知变量个数,在每一次迭代中,都会计算每一个粒子的适应度函数。这个函数应该认真选择表达出希望的结果。每个粒子的位置和速度坐标都会根据个体最优值和全局最优值,由下面的公式表示:12122()()nnnbestnbestiiiiiiivcxxcxx(13)11nniiixxtv(14)上脚标中的1n和n表示当前和之前迭代次数,系数1和2是平均分布在(0,1)之间的任意数,这些任意数随着粒子每一次参数的改变而发生更新,每一个个体的最佳位置分别由参数1c和2c进行控制。1c和2c最典型的值是2.0。参数n表示在第n次重复时的惯性权数。这个系数根据它自己目前的速率和自己在群体中的最佳相对位置,在0到1范围内取值。粒子群按照公式(13)和公式(14)所描述的路线从不同方位向一个点聚集,但是,最大的速度值maxV不应超过任何粒子在寻找过程中的一个有意义的解空间。由各个粒子的最佳位置参数便可以求出各个参数的最佳赋值。该算法就是通过这样一个不停地反复过程最终确定一个最佳的结果。在评价粒子适应度的时候,可以根据实际需要确定一个适应度函数,通过每个粒子适应度值的计算来确定他的最优解[16]。否否是是否present优于pbest初始化粒子位置和速度计算粒子适应度值更新粒子速度更新粒子位置present优于gbest判断是否满足算法收敛gbest=presentpbest=present输出gbest

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功