[发明专利]一种基于多种群的粒子群计算方法有效
| 申请号: | 201310677980.4 | 申请日: | 2013-12-13 |
| 公开(公告)号: | CN103646281B | 公开(公告)日: | 2017-07-21 |
| 发明(设计)人: | 张俊;颜秉珩;崔赢;张现忠 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
| 主分类号: | G06N3/00 | 分类号: | G06N3/00 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 250014 山东*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 多种 粒子 算法 模型 | ||
1.一种基于多种群的粒子群计算方法, 其特征在于基于多种群的并发搜索,在每次迭代搜索过程中,都会有包含种群内以及种群间的信息交互,这样能够有效避免算法过早收敛,减小算法陷入局部极值的可能性,进而提高问题的求解质量;
基本粒子群计算方法采用速度-位置搜索策略,描述为:在一个n维的解空间中,有一个由m个粒子组成的种群,每个粒子代表解空间的一个候选解;其中,第i个粒子在n维解空间中的位置表示为Xi =(Xi1, Xi2,…, Xin),其中:i = 1,2,3,…,m;
速度表示为Vi =(Vi1, Vi2,…, Vin);第i个粒子从开始到当前迭代次数得到的最优解:
个体极值Pi =(Pi1, Pi2,…, Pin),整个粒子种群目前的最优解:
全局极值Pg =(Pg1, Pg2,…, Pgn);单个粒子通过以下两个公式分别对速度和位置进行更新;
Vid(t+1) = wVid(t) + c1r1 (Pid(t) - Xid(t)) + c2r2 (Pgd(t) - Xid(t))(公式1)
Xid(t+1) = Xid(t) + Vid(t+1)(公式2)
其中,d = 1,2,3,…,n;w为惯性因子,t表示时间,c1,c2称为学习因子或加速因子,在0到2之间取值;r1,r2为0到1之间的随机数;公式1由三部分组成,第一部分为惯性部分,反应了粒子的运动惯性,代表粒子有维持自己先前速度的趋势;第二部分为认知部分,反映了粒子对自身历史经验的记忆,代表粒子有向自身历史最佳位置逼近的趋势;第三部分为社会部分,反映了粒子间协同合作与知识共享的群体历史经验,代表粒子有向群体历史最佳位置逼近的趋势;计算条件如下:
(1)该计算方法的模型中存在多个粒子种群,每个种群都会对解空间进行搜索;
(2)粒子间的协同合作与知识共享分为两类:同一种群内部和不同种群之间的信息交互;
(3)每个种群之间交换的信息为各种群的历史最优适应值和相应的位置矢量;
(4)粒子的位置更新公式不用变化,而粒子的速度更新公式变为:
Vid(t+1) = wVid(t) + c1r1 (Pid(t) - Xid(t)) + c2r2 (Pgd(t) - Xid(t)) + c3r3 (PGd(t) - Xid(t)) (公式3)
其中:Pg = ( PG1, PG2,…,PGn)为所有种群中的最优解,符号g表示:在种群中所有粒子经历过的最好位置的索引号,即Pg;符号G表示:在所有种群中粒子得到的最优解的索引号,即
PG;同时增加了相应的学习因子c3和随机数r3,t表示时间;
(5)种群间采用不同的惯性参数w,学习因子c1,c2,c3以及随机数r1,r2,r3,体现种群间的差异性;
基本计算步骤如下:
step1 随机初始化多个种群以及种群中的每个粒子;
step2 判断是否满足算法终止条件,若是,则退出算法;否则,继续以下步骤;
step3 针对每一个粒子,计算该粒子的适应值,判断是否更新该粒子的历史最优适应值和位置矢量;
step4 选择该粒子所属种群中适应值最优的粒子,判断是否更新该粒子所属种群的历史最优适应值和位置矢量;
step5 选择所有种群中适应值最优的粒子,判断是否更新所有种群的历史最优适应值和位置矢量;
step6 按照公式3和公式2更新每个粒子的速度和位置,跳转到step2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310677980.4/1.html,转载请声明来源钻瓜专利网。





