0.02880799740083
0.09041620402208
-0.10596179278181
0.04937268170462
0.02167100708169
0.00683128713746
0.10412363938710
-0.00155161808080
-0.03170631614458
-0.07823689020613
-0.00618531208248
-0.06269497879824
-0.08382659983472
-0.09942586890615
0.14388862839814
0.08197659551915
-0.01410721469150
-0.04174986932337
-0.06641174740424
0.00620063351032
-0.05518644361385
-0.03026373082423
-0.03876521308842
-0.03038774286669
-0.03933142591163
-0.19757034775520
0.04597062634816
0.07739131697458
0.00076458971070
0.01195915068796
0.15106866494689
从上面总的求解结果可以看出,在其他参数不变的情况下,一般迭代步数越大,求得的解的精度越高,但这并不是绝对的,应为PSO算法本质上也是一种随机算法,即使用相同的参数,每一次求解也可能得出不同的结果,同时如果对于多峰函数,PSO算法还有可能陷入局部最优点。粒子群规模不是越大越好,关键是各个参数之间的搭配,才能求得比较好的结果。
2.3带压缩因子的粒子群算法
2.3.1算法原理
学习因子c1和c2决定了粒子本身的经验信息和其他例子经验信息对离子运行轨迹的影响,反映了粒子群之间的信息交流。设置c1较大的值,会使粒子过多的在局部范围内徘徊,而较大的c2值,则又会促使粒子过早收敛到局部最小值。
为了有效地控制粒子的飞行速度使算法达到全局探测与局部开采两者间的有效平衡,Clerc够早了引入收缩因子的PSO算法,其速度更新公式为:
(2-7)
(2-8)
为保证算法的顺利求解,c1+c2必须大于4.典型的取法有:
(1)c1=c2=2.05,此时C为4.1,收缩因子为0.729,这在形式上就等效于w=0.729,c1=c2=1.49445的基本PSO算法;
(2)微粒规模N=30,c1=2.8,c2=1.3,本文来自辣%文,论'文.网,毕业论文 www.751com.cn 加7位QQ324~9114找原文此时C为4.1,收缩因子为0.729.
2.3.2算法步骤
带压缩因子粒子群算法的基本步骤如下:
①随机初始化种群中各微粒的位置和速度;
②评价每个微粒的适应度,将当前各微粒的位置和适应值存储在各微粒的pbest中,将所有pbest中适应值最优个体的位置和适应值存储于gbest中;
③用下式更新粒子的速度和位移
(2-9)
(2-10)
其中
(2-11)
④对每个微粒,将其适应值与其经历过的最好位置作比较如果较好,则将其作为当前的最好位置
⑤比较当前所有的pbest和gbest的值,更新gbest;
⑥若满足停止条件,搜索停止,输出结果,否则返回③继续搜索
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >>