首页 理论教育 粒子群算法原理及应用-人脸检测与识别研究

粒子群算法原理及应用-人脸检测与识别研究

时间:2023-11-23 理论教育 版权反馈
【摘要】:它们会将某些粒子当成邻居,而不是把整个种群当作邻居,所有邻居的极值叫做局部极值。惯性因子的选择不但能够对粒子群优化算法的整体搜索能力进行调整,还能提升局部搜索水平。他引进的收缩因子能够提高算法的收敛速率,其速率和位置可以用式做出改良:式中,收缩因子用式来表示:粒子群优化算法包含下面这些参数:种群大小m,惯性权重w,收缩因子χ ,学习因子c1,c2,速度最大值Vmax,迭代步数Tmax以及计算精度ε 等。

粒子群算法原理及应用-人脸检测与识别研究

对PSO 算法进行优化,也就是从任意的粒子开始进行迭代,最后得到最佳解这一过程[133]。在迭代时,粒子经过追踪个体的最大值和整体最大值来对自己做出更新。它们会将某些粒子当成邻居,而不是把整个种群当作邻居,所有邻居的极值叫做局部极值。

如果由N 个粒子构成一个群体,此群体在D 维空间中,第i 个粒子的一个D 维向量能够使用式(4-27)来表示:

那么,第i 个粒子的运行速度也是一个D 维向量,用式(4-28)表示:

第i 个粒子通过改良得到的最佳位置称为个体极值,用式(4-29)表示:

整个粒子群通过改良得到的最佳位置称为全局极值,用式(4-30)表示:

找出pbest和 gbest后,粒子会按照式(4-31)和(4-32)来对自身的速度及位置实现更新。

其中,c1和c2表示学习因子,也叫做加速常数;r1和r2值需在[0, 1]中来选择。从式(4-31)可以看出,等式右边由三部分叠加,其中,第一部分说明了粒子的运动习性,也叫做惯性或者动量部分,说明粒子能够继续目前运动的情况;第二部分描述了粒子对自己以往经验的记忆,体现粒子能够靠近自身以往最好的位置,也叫做认知部分;第三部分描述了粒子间能够实现知识互享和协调情况,表明粒子能够接近种群或者邻域历史最好的位置,叫做社会部分。按照经验,一般情况下,c1= c2= 2,i=1,2,… ,D。 vid是粒子的速度,vid∈[-vid, vid],vmax是常数,取值可以任意选定;而r1和r2值要在[0, 1]中来选择。(www.xing528.com)

为了提升该算法的收敛水平,Shi 和Eberhart 在原始粒子群算法的前提下借助惯性权重,推出了具有惯性权重的粒子群算法[135],也叫做标准粒子群算法。速度的更新是用式(4-33)来实现的:

其中,w 也叫做惯性权重,其值表示粒子的以往速度对目前速度带来的作用,选择适当能够提升粒子的开发水平及探索水平。惯性因子的选择不但能够对粒子群优化算法的整体搜索能力进行调整,还能提升局部搜索水平。如果w 值比较大,那么粒子的整体搜索水平就高一些,并且局部搜索能力会比较低,反之亦然。

不仅如此,Clere 对PSO 算子进行了收敛性剖析,并且给出了一种把收缩因子引进PSO 的改良算法[136]。他引进的收缩因子能够提高算法的收敛速率,其速率和位置可以用式(4-34)做出改良:

式(4-34)中,收缩因子用式(4-35)来表示:

粒子群优化算法包含下面这些参数:种群大小m,惯性权重w,收缩因子χ ,学习因子c1,c2,速度最大值Vmax,迭代步数Tmax以及计算精度ε 等。算法终止条件为是否达到最大迭代次数Tmax以及计算精度ε。而在处理问题时,必须根据算法的搜索效率、优化品质等做出判定。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈