伪随机数质量对简单粒子群优化算法性能的影响
2011-09-23谭阳
谭 阳
(湖南网络工程职业学院,湖南长沙 410004)
伪随机数质量对简单粒子群优化算法性能的影响
谭 阳*
(湖南网络工程职业学院,湖南长沙 410004)
伪随机数对粒子群优化算法的性能影响主要体现在算法种群多样性上。低质量的伪随机数会导致粒子群优化算法的性能出现不稳定的现象,通过对几种典型伪随机数的分析比较之后得出,粒子编码长度和伪随机数的周期的相互作用才是导致算法不稳定的原因。相关实验也验证了这一结果。
伪随机数;粒子群优化算法;种群多样性;海明距离
一、引言
通常把通过软件或数字电路实现一种确定性方法称为伪随机数算法,伪随机数因为其生成和使用十分方便,所以被广泛地应用于各种科学和工程领域。目前各种伪随机数发生器(pseudo-random number generator,PRNG)的类型很多,衡量其质量的高低主要通过各种统计检验来进行,其中Knuth和Diehard 是两个常用的统计检验集[1][2]。粒子群优化算法 (Particle Swarm Optimization,PSO)是Kenney和Eberhart于1995年提出的一种智能优化算法[3],PSO算法源于对鸟群和鱼群等群体运动行为的研究,与其他的演化算法一样也是一种基于迭代的优化工具;但相比较而言它具有算法简单,收敛速度快且对目标函数要求少等特点,通常PSO采用下式(1)的作为其标准算法:
Vi+1=c0vi+c1(pbesti-xi)+c2(gbesti-xi)
xi+1=xi+vi+1(1)
其中,式(1)中 i=1,2,…,N,N 为该群体中粒子的总数;vi是第i个粒子的速度向量;xi是第i个粒子当前的位置;c0,c1,c2为非负常数用以表示群体的认知系数,c0为粒子的惯性因子一般取(0,1)之间的随机数;c1,c2为粒子的学习因子一般取(0,2)之间的随机数;式(1)中的c1(pbesti-xi)部分被称为“认知”部分,表示粒子本身的思考,而c2(gbestixi)部分被称为“社会”部分,表示粒子间的信息共享与合作。……
