为解决粒子群优化(Particle Swarm Optimization,PSO)算法中存在的种群多样性和收敛性之间的矛盾,该文提出了一种具备反向学习和局部学习能力的粒子群优化算法(Reverse-learning and Local-learning PSO,RLPSO).该算法保留了初始种群中满足排异距离要求的多个较差粒子以及每个粒子的历史最差位置.当检测到算法陷入局部最优时,利用这些较差粒子的位置信息指导部分粒子以较快飞行速度进行反向学习,将其迅速牵引出局部最优区域.反向学习过程可改善粒子种群的多样性,保证了算法的全局探测能力;同时,利用较优粒子间的差分结果指导最优粒子进行局部学习与搜索,该过程可与粒子群的飞行过程并行执行,且局部学习的缩放因子可随进化过程动态调节.局部学习可提高算法的求解精度,保证算法的迅速收敛.实验结果表明,RLPSO算法同其他PSO算法相比,在高维函数优化中具有收敛速度快、求解精度高的特点.
To resolve conflict between convergence and diversity in particle swarm optimization(PSO)algorithm,an improved PSO algorithm which called reverse-learning and local-learning PSO(RLPSO)algorithm is introduced.In RLPSO,a reverse-learning behavior is adopted by some particles and local-learning behavior is adopted by elite particles.In RLPSO,some inferior particles of initial population and each particle's historical worst position are reserved.Furthermore,the hamming distance among the inferior particles is no less than a rejection distance that predefined.While population has being trapped into a local optimum,the inferior particles and a particle's historical worst position can attract the particle to leap out of the local optimums in a high speed.This action is called reverse-learning behavior which can preservation population diversity and improve RLPSO's exploration ability.Furthermore,in each generation,the difference between the best particle and the second-best particle is adopted to guide the best one to carry out a local search process called local learning behavior by which exploitation ability of population canbe improved.In the local learning behavior that can parallel execute with population's evolution,the local scale factor is dynamic adjusted during the evolution.The results achieved by RLPSO were compared with some modified PSO algorithm,which indicated that RLPSO has better global searching ability and higher convergence speed especially in high dimension functions.