- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅谈粒子群算法改进方法.doc
浅谈粒子群算法改进方法
【摘要】本文介绍了粒子群算法的基本概念及粒子群算法的训练过程,分别从基本进入、改变惯性因子、改变收缩因子三个方面对其进行优化改进。
【关键词】粒子群;进化方程;惯性因子;收缩因子
1.粒子群算法综述
二十世纪九十年代,美国的社会心理学家James Kennedy和电气工程师Russell通过对自然界的鸟群进行觅食的行为进行观察和研究,提出了模仿鸟群行为的新型群体智能算法――粒子群(Particle Swarm Optimization,PSO)算法。
粒子群算法与其它进化类算法十分相似,同样也是采用“群体”与“进化”的概念,同样也是依据粒子的适应值大小进行操作。而与之不同的是,粒子群算法不像其它进化算法那样,对于每个个体使用进化算子,而是将每个个体看作是在一个n维搜索空间中的没有重量没有体积的微粒,并在搜索空间中以一定的速度进行飞行。该飞行速度这个个体的飞行经验和群体的飞行经验来进行动态的调整。
2.粒子群算法实现的步骤
这里将基本粒子群算法的训练过程描述如下:
(1)首先将初始化方程作为依据,将该粒子群体的随机位置和速度进行初始化设置;
(2)计算粒子群中每个粒子的适应度值;
(3)将该粒子群中每个粒子的适应值与其经历过的最好位置Pi的适应值进行比较,如果好,将它作为当前的最好位置;
(4)将该粒子群体中每个粒子的适应值与所有粒子经历的最好位置Pg的适应值进行比较,如果好,将它作为当前的全局最好位置;
(5)以粒子群进化方程为依据,进化粒子的速度及位置;
(6)如果没有达到设置的结束条件或达到一个设置的最大迭代次数,则返回到第二步,否则结束。
3.粒子群算法进化方程的改进
3.1 基本粒子群算法进化方程的分析
本文中我们将基本粒子群算法的基本形式描述如下:
(1)
(2)
在这个进化方程中用Pi来表示第i个粒子所经历过的最好位置,用Pg来表示在所有粒子中经历的最好位置,c1、c2为常数,为均匀分布的一组随机数值。
为了方便研究和分析基本粒子群算法,我们这里将(1)式改写成下面的形式:
(3)
在这种形式中:
(4)
(5)
(6)
在式子3中我们可以看出,我们这里将粒子群算法的进化方程分成了三个部分:第一部分为原有的速度项;第二部分与第三部分分别为在原有的速度项基础上做的调整。在这里,第二部分则描述粒子历史最好位置对当前位置的影响程度,而第三部分刚描述的是整个粒子群体的历史最好位置对当前位置的影响程度。
为了更好的分析G1、G2、G3这三部分分别对粒子群搜索能的影响,首先,我们将式子3改写成:
(7)
在式子3.7中,这里只保留该粒子群进化方程的第一项,这时粒子的速度将保持不变,沿着一个方向一直飞,一直飞到边界为止。因此,粒子很难找到比较优化的解。
然后我们接着将式子3改写为:
(8)
在这个式子中,我们保留了粒子群基本进化方程中的第二项和第三项,这时粒子的速度只受粒子历史的最优位置和该粒子群体的历史最优位置的影响,直接导致无法对粒子的速度进行记忆。对于基本的粒子群算法进化方程而言,它具有全局搜索的能力,即方程中的第一项是用来保证全局搜索能力的,通过以上分析,我们可以得出粒子群速度的进化方程的第一项用来保证全局收敛能力,而第二项与第三项用来保证局部收敛性能。
3.2 带有惯性因子的改进粒子群算法
将粒子群算法应用到不同的问题中,确定局部搜索能力与全局搜索能力的比例关系,是求解过程中一个重要的问题,有时对于同一个问题,其进化过程中也伴随着不同的比例关系,因此,在这里提出了带有惯性权重的改进粒子群算法进化方程为:
(9)
(10)
当式9中的惯性权重w=1时,式子9与式子1相同,也就是说基本粒子群算法为带惯性权重的粒子群算法的特殊形式。文献中建议我们这里的惯性权重w的取值范围在0到1.4之间,但经过多次实验结果表明,当w的取值范围在0.8到1.2之间时,粒子群算法的收敛速度是最快的,而当w的取值大于1.2时,粒子群算法往往出现陷入局部极值的情形。
惯性权重w类似于模拟退火中的温度,较大的w会得到较好的全局收敛能力,较小的w会得到较好的局部收敛能力。所以,随着迭代次数的增加,惯性权重w的取值应该呈现不断减小的趋势,只有这样才能使粒子群算法在进化初期具有较强的全局收敛能力,后期具有较强的局部收敛能力,在文献中提出,惯性权重w应满足以下表达式:
(11)
这里称之为最大的迭代次数,惯性权重w为迭代次数t的函数,可在0.9到0.4之间进行线性递减,通过对四个测
文档评论(0)