一个与powell算法相结合的改进微粒群算法(格式修改完2) 联系客服

发布时间 : 星期六 文章一个与powell算法相结合的改进微粒群算法(格式修改完2)更新完毕开始阅读7d285e1ca8114431b90dd82e

3.2 改进Powell方法的计算步骤

在改进的方法中Powell 放弃逐个替换搜索方向的原则,而是设法使替换后所得的方向越来越接近共轭方向。经过冗长的推导,找到了满足上述新原则的较简单替换方法,其基本步骤如下:

1.给定初始点x(0),计算精度??0,n个初始的线性无关的搜索方向(一般取为n个坐标轴方向)e1,e2,…,en。令

sj?ej?1, j?0,1,…,n?1, k?0;

2.进行一维搜索,决定?k,使得

f(x(k)??ksk)?minf(x(k)??sk)

令x(k?1)?x(k)??ksk,若k?n,令k?k?1,转向2;否则转向3;

3.若||x(n)?x(0)||??,计算结束,取x*?x(n);否则求整数j(0≤j≤n?1),使

??f(x(j))?f(x(i?1))?max[f(x(i)?f(x(i?1))]

1≤i≤n?14.令f1?f(x(0)),f2?f(x(n)),f3?f(2x(n)?x(0)),若2??f1?2f2?f3,则方向

s0,s1,…,sn?1不变,令x(0)?x(n),返回2;否则令

x(n)?x(0), 或sn?x(n)?x(0) sn?(n)(0)||x?x||si?si?1,i?j,j?1,…,n?1

转向5; 5.求?n,使得

f(x(n)??nsn)?minf(x(n)??sn)

令x(0)?x(n)??nsn,k?0,返回2。

改进的方法不再具有二次收敛性,但是它使其一维搜索的次数降低了一半,计算效率明显提高。

9

第4章 混合Powell-PSO方法

4.1 算法原理

标准PSO算法在寻找全局最优解时,不需要局部信息,并且很少陷入到局部最优,但缺点在于局部搜索能力较弱,计算成本相对较高,通常只能搜索到全局最优解附近的较优解。改进后的PSO算法调整了惯性权重因子,使得它比标准PSO算法具有更好的效果。Powell直接搜索法的收敛速度较快,但却不能保证收敛到全局最优解,容易陷入局部最优。本节将改进的PSO算法与局部寻优能力极强的Powell算法相结合,提出了一种混合Powell-PSO算法。该算法在运行微粒群算法之前,先对全局最优微粒执行Powell算法,这样利用Powell方法收敛速度快的优点,加快了全局最优微粒向目标位置的移动速度,使微粒群算法的收敛速度加快,计算成本大大降低。

4.2 算法步骤

采用PSO算法一般情况下均能找到满意的结果,但是在算法结束的时候,始终无法确定算法找到的解就是解空间中的最优解,甚至无法确定当前找到的解是附近解空间的极小值点。而Powell算法具有极强的局部寻优能力。这就可以将两种算法结合起来解决问题。基于上述讨论,本文提出一种混合算法,将PSO算法的全局搜索能力与Powell算法的局部寻优能力有机地结合起来。该算法具体步骤描述如下:

(1) 随机初始化一群微粒,包括随机位置和随机速度; (2) 评价每个微粒的适应度,即分别对每个微粒求目标函数值; (3) 对当前最好微粒使用Powell算法进行优化计算;

(4) 根据方程(1)、(2)和(3)更新每个微粒的速度和位置;

(5) 对每个微粒,将其适应值与其经历过的最好位置pbest作比较,如果较好,则将其作为当前的最好位置pbest;

(6) 对每个微粒,将其适应值与全局所经历的最好位置gbest作比较,如果较好,则将

10

其作为当前的全局最好位置;

(7) 如果没有达到结束条件(通常为足够好的适应值或达到一个预先给定的最大迭代次数或最优解停滞不再变化),则返回第(2)步。

混合Powell-PSO算法的源程序见附录2。

第5章实验用例

首先比较Powell-PSO算法与PSO、GCPSO和NM-PSO算法的鲁棒性。每个函数评价次数2000,算法每次测试独立运行50次。如果最终搜索结果与全局最优值差的绝对值小于或等于规定的域值?,我们就说它是成功的且它的评价数被储存。为叙述方便,定义两个指数:成功率(简记为SR)和平均有效评价数(简记为AVEN)

NSR?v?100% , AVEN?50?Nvi?1ni

Nv 这里Nv表示算法独立运行100次成功的次数,ni表示第i次成功运行的评价数。

序成功率 号 NM- Powell-ε PSO PSO ε PSO GCPSO PSO PSO NM- Powell- 平均有效评价数 PSO GCPSO 1 2 94 100 100 100 100 100 0.001 0.001 100 100 9.8e-5 1e-323 20242 4188 12375 2340 2971 1124 35 71 11

3 4 5 6 7 8 9 100 100 99 100 100 13 10 100 100 96 100 100 79 97 100 100 100 100 100 100 100 0.001 0.001 0.001 0.001 0.001 0.001 0.001 100 100 100 100 100 100 100 1e-323 1e-323 1e-160 1e-147 1e-172 3e-20 1e-323 2.4e-25440 3848 28736 9308 44599 79930 84041 2792 2128 6446 3031 6432 34193 22615 1458 1065 2552 1957 3406 4769 71763 144 143 1521 1506 1434 106 1537 10 49 100 100 0.001 100 6 84020 17170 3806 139 11 100 12 100 100 100 100 100 0.001 0.001 100 100 2e-20 1e-12 4.8e-141184 328040 5591 64040 4255 44907 112 54 13 98 100 100 0.001 100 1 328040 168020 114734 62 -(3280414 0 85 100 0.001 100 1e-323 0) 15 89 100 100 0.001 100 1e-323 328040 -(504616 0 0 82 0.001 100 1e-323 57) 17 30 0 60 0.001 100 1e-323 5.7e-218 0 100 100 0.001 100 8 0) -(4530119 0 100 100 0.001 100 1e-323 50) 200000 87024 1626 510050 -(11146) -(51005176540 28836 154 12353 91 -(9253) 14076 79 128735 28239 1607 71152 255866 1558 12