首页 百科知识 算法的思想和流程

算法的思想和流程

时间:2022-10-11 百科知识 版权反馈
【摘要】:定义5.2 在物理学中,温度是用来表示物体冷热程度的物理量,微观上来讲是物体分子热运动的剧烈程度。温度是大量分子热运动的集体表现,含有统计意义。DPSO算法中采用了双种群,分别用种群A和种群B表示,并且对两个种群的操作完全一致。基于扩散机制的双种群粒子群优化算法的具体流程如下。Step12:未满足算法终止条件则转Step2,否则DPSO算法结束。

5.3.2 DPSO算法的思想和流程

受扩散现象和多种群思想的启发,作者采用双种群来模拟扩散机制,提出了一种基于扩散机制的双种群粒子群优化算法[126,类比于扩散理论中的扩散激活能和温度的概念,给出了DPSO算法中粒子的扩散能、种群温度和粒子的扩散概率三个定义,并在这三个定义基础上详细地介绍DPSO算法的核心思想和算法流程。

定义5.1 物理学中物体由于运动而具有的能叫动能,它的大小是运动物体的质量和速度平方乘积的1/2。类比于物理学中的动能,粒子克服势垒从原来的位置扩散到其他位置上所具有的能量称为扩散能,忽略粒子的质量,扩散能的大小定义为粒子速度矢量的每一维分量平方和的1/2。

img111

其中,Dim是粒子在搜索空间的维数,i是种群中粒子的下标,Vij是粒子i速度矢量的第j维分量。

定义5.2 在物理学中,温度是用来表示物体冷热程度的物理量,微观上来讲是物体分子热运动的剧烈程度。从分子运动论观点看,温度是物体分子平均动能的一种表现形式,分子运动愈快,物体愈热,即温度愈高;分子运动愈慢,物体愈冷,即温度愈低。温度是大量分子热运动的集体表现,含有统计意义。对于个别分子来说,温度是没有意义的。类比于物理学中的温度,定义了粒子群的种群温度。

img112

其中,M为种群的粒子数量,即种群大小。

从公式(5.5)可以看出,种群的温度是种群粒子扩散能的算术平均。

定义5.3 粒子的扩散概率定义为1减去扩散系数与扩散常数的比值,表示为

img113

其中,Qi是粒子i的扩散能,T是种群的温度,气体常数R设置为1。粒子的扩散能和当前种群的温度共同决定了粒子扩散的概率,当粒子的扩散能大于种群温度时,粒子将具有较大的扩散概率,反之,当粒子的扩散能小于种群温度时,粒子将具有较小的扩散概率。

DPSO算法中采用了双种群,分别用种群A和种群B表示,并且对两个种群的操作完全一致。在算法的每一迭代中,根据种群A(B)中每个粒子的速度矢量计算得到每个粒子的扩散能,然后根据所有粒子的扩散能计算当前迭代的种群A(B)温度,然后根据公式(5.6)计算得到每个粒子的扩散概率值,生成服从均匀分布的随机数,如果此随机数小于粒子的扩散概率值,则将此粒子放入到种群A(B)的扩散池当中,在扩散池中随机选择两个粒子,生成一个差异向量对种群A(B)中的全局极值进行一个扰动,如果扰动后的向量优于另一种群B(A)中的全局极值,则替换其全局极值。基于扩散机制的双种群粒子群优化算法的具体流程如下。

Step1:分别初始化种群A和B中的所有粒子(种群规模都为M),包括位置、速度。

Step2:评价种群A和B中每个粒子的适应值。

Step3:分别更新种群A和B中粒子的个体历史极值及种群A和B的全局极值,分别用img114和pBg表示。

Step4:根据公式(5.4)计算种群A和B中所有粒子的扩散能。

Step5:根据公式(5.5)计算种群A和B的温度。

Step6:根据公式(5.6)计算种群A和B中所有粒子的扩散概率。

Step7:对于种群A

img115

Step9:如果扩散池A中的粒子数目大于等于2,则从中随机选择两个粒子m和n作为扩散粒子,粒子m和n生成一个差异向量η(Xm-Xn)对全局极值pAg添加一个随机扰动,得到一个临时的向量pAg+η(Xm-Xn),如果此向量优于种群B的全局极值pBg,则替换之,否则不替换;同时,如果扩散池B中的粒子数目大于等于2,则从中随机选择两个粒子a和b作为扩散粒子,粒子a和b生成一个差异向量η(Xa-Xb)对全局极值pBg添加一个随机扰动,得到一个临时的向量pBg+η(Xa-Xb),如果此向量优于种群A的全局极值pAg,则替换之,否则不替换。通过此步骤来实现两个种群之间信息的交流和扩散。

Step10:输出种群A和B的全局极值pAg和pBg中的最优者。

Step11:根据公式(2.2)、(2.3)调整种群A和B中粒子的速度和位置。Step12:未满足算法终止条件则转Step2,否则DPSO算法结束。

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

我要反馈