文档介绍:word
word
1 / 15
word
粒子群优化(PSO)算法
[摘要]粒子群优化(PSO)算法是一种新兴的优化技术,其思想来源于人工生命和演化计算理论。PSO通过粒子追随自己找到的最优解和整个群的最优解来完成优化。该算法简且更新个体极值。如果所有粒子的个体极值中最好的好于当前的全局极值, 如此将gbest设置为该粒子的位置,记录该粒子的序
Step3粒子的更新,用式(1)和式(2)对每一个粒子的速度和位置进展更新。
Step4检验是否符合完毕条件,如果当前的迭代次数达到了预先设定的最大次数(或达到最小错误要求),如此停止迭代,输出最优解,否如此转到。
PSO的一些特点:
1)根本PSO算法最初是处理连续优化问题的。
2)类似于遗传算法(GA),PSO也是多点搜索。
3)式(1)的第一项对应多样化(diversification)的特点,第二项、
word
word
3 / 15
word
第三项对应于搜索过程的集中化(intensification)特点,因此这个方法在多样化和集中化之间建立均衡。PSO有全局版和局部版两种,全局版收敛快,但有时会陷入局部最优。局部版PSO通过保持多个吸引子来防止早熟,假设每一个粒子在大小l的邻域内定义为一个集合从Ni中选出最好的,将其位置作为lbest代替公式中的gbest,其他与全局版PSO一样。实验明确,局部版比全局版收敛慢,但不容易陷入局部最优。在实际应用中, 可以先用全局PSO找到大致的结果,再用局部PSO进展搜索。
3、PSO的改良
PSO算法的改良研究可归纳为两个方面:一方面的研究是讲各种先进理论引入PSO算法,研究各种改良和PSO算法;另一方面是将PSO无案发和其他智能优化算法相结合,研究各种混合优化算法,达到取长补短、改善算法某方面性能的效果。由于PSO中粒子向自身历史最优位置和领域或群体历史最优位置剧集,形成粒子种群的快速趋同效应,容易出现陷入局部极限、早熟收敛或停滞现象。
同时,PSO的性能也依赖于算法参数。算法具体参数设置不同,结果怒同。算法具体参数主要依赖于微粒个数、惯性权重、学****因子,以与添加压缩因子等参数。为了克制上述不足,各国研究人员相继提出了各种改良措施。本文将这些改良分为4类:粒子群初始化、邻域拓扑、参数选择和混合策略。
、粒子群初始化
研究明确,粒子群初始化对算法性能产生一定影响[16]。为了初始种群尽可能均匀覆盖整个搜索空间,提高全局搜索能力,Richard 和Ventura[17]提出了基于centroidal voronoi tessellations (CVTs)的种群初始化方法;薛明志等人[18]采用正交设计方法对种群进展初始化;Campana 等人[19]将标准PSO迭代公式改写成线性动态系统,并基于此研究粒子群的初始位置,使它们具有正交的运动轨迹;文献[16]认为均匀分布随机数进展初始化实现容易但尤其对高维空间效果差,并另外比拟了3种初始化分布方法。
、邻域拓扑
根据粒子邻域是否为整个群体,PSO分为全局模型和局部模型 [20]。Kennedy[21]指出,模型虽然具有较快的收敛速度,但更容易陷入局部极值。为了克制全局模型的缺点,研究人员采用每个粒子仅在一定的邻域内进展信息交换,提出各种局部模型[21,]。根据现有的研究成果,本文将邻域分为空间邻域(spatial neighborhood)、性能空间(performance space)邻域和社会关系邻域(sociometric neighborhood)。空间邻域直接在搜索空间按粒子间的距离(如欧式距离)进展划分,如Suganthan[23]引入一个时变的欧式空间邻域算子:在搜索初始阶段,将邻域定义为每个粒子自身;随着迭代次数的增加,将邻域X围逐渐扩展到整个种群。性能空间指根据性能指标
word
word
5 / 15
word
(如适应度、目标函数值)划分的邻域,如文献[24]采用适应度距离比值(fitness-distance-ratio)来选择粒子的相邻粒子。社会关系邻域通常按粒子存储阵列的索引编号进展划分[25],这也是研究最多的一种划分手段,主要有[21]:环形拓扑(ring or circle topology)、轮形拓扑(wheel topology)或星形拓扑(star topology)、塔形拓扑(pyramid topology)、冯-诺以曼拓扑(Von Neumann topology)以与随机拓扑(random topology)等。针对不同的优化问题,这些拓扑的性能表现各异;但总的来说,随机拓扑往往对大多数问题能表现出较好的性能,其次是冯-诺以曼拓扑[22]。M. Clerc[25]对随机拓