惯性权重和学习因子动态调整的粒子群算法的MATLAB实现

基本粒子群算法由位置更新公式和速度更新公式组成

其中惯性权重w和学习因子c1,c2的动态改进是目前常用的手段,惯性权重有如下改进:

 学习因子动态改进:

 初始选取系数a=1,b=0.7,d=2;e1、e2和f1、f2都取值为1与0.7

 代码实现为:

        w = 1+(1-0.7).*(it.^2)/(MaxIt^2);
        c1 = (1-0.7).*it/MaxIt+0.7;
        c2 = (1-0.7).*it/MaxIt+0.7;

对原始粒子群算法w取值为1,c1取值为1.5,c2取值为1.7

对相关参数进行设置:种群规模50次,最大迭代次数500次,取值范围为-100~100,速度取值范围设置为-10~10:


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部