全球旧事资料 分类
受到启发经过简化提出了粒子群优化算法。
22粒子群优化算法的原理
在粒子群优化算法中每个优化问题的潜在解都是搜索空间中的一只鸟称之为“粒子”。所有的粒子都有一个由被优化的函数决定的适应值每个粒子还有一个速度决定他们飞翔的方向和距离。然后粒子们就追随当前的最优粒子在解空间中搜索。优化开始时先初始化为一群随机粒子随机解。然后通过迭代找到最优解。在每一次迭代中粒子通过跟踪两个极值来更新自己。第一个极值就是整个种群目前找到的最优解。这个极值是全局极值。另外也可以不用整个种群而只是用其中一部分作为粒子的邻居那么在所有邻居中的极值就是局部极值。第二个极值是粒子本身所找到的最优解称为个体极值。这是因为粒子仅仅通过跟踪全局极值或者局部极值来更新位置不可能总是获得较好的解。这样在优化过程中粒子在追随全局极值或局部极值的同时追随个体极值则圆满的解决了这个问题。这就是粒子群优化
f算法的原理。
在算法开始时随机初始化粒子的位置和速度构成初始种群初始种群在解空间中为均匀分布。其中第i个粒子在
维解空间的位置和速度可分别表示为Xixi1xi2…xid和Vivi1vi2…vid然后通过迭代找到最优解。在每一次迭代中粒子通过跟踪两个极值来更新自己的速度和位置。一个极值是粒子本身到目前为止所找到的最优解这个极值称为个体极值PbiPbi1Pbi2…Pbid。另一个极值是该粒子的邻域到目前为止找到的最优解这个极值称为整个邻域的最优粒子NbestiNbesti1Nbesti2…Nbestid。粒子根据如下的式21和式22来更新自己的速度和位置
ViVic1ra
dPbestiXic2ra
dNbestiXi21
XiXiVi22式中c1和c2是加速常量分别调节向全局最好粒子和个体最好粒子方向飞行的最大步长若太小则粒子可能远离目标区域若太大则会导致突然向目标区域飞去或飞过目标区域。合适的c1c2可以加快收敛且不易陷入局部最优。ra
d是0到1之间的随机数。粒子在每一维飞行的速度不能超过算法设定的最大速度Vmax。设置较大的Vmax可以保证粒子种群的全局搜索能力Vmax较小则粒子种群优化算法的局部搜索能力加强。
粒子群优化算法是在模拟鸟群觅食时受到启发提出的。提出之后却发现用动物或人的认知来解释算法的原理更加完美。在速度更新公式21中由3个部分构成。第1个部分是Vi表示粒子在解空间有按照原有方向和速度进行搜索的趋势这可以用人在认知事物时总是用固有的习惯来解释。第2个部分是c1ra
dPbestiXi表示粒子在解空间有朝着过去曾碰到的最优解r
好听全球资料 返回顶部