第七章 粒子群化算法.docxVIP

  • 3
  • 0
  • 约5.44千字
  • 约 10页
  • 2019-03-17 发布于江苏
  • 举报
1 第七章 粒子群优化算法 2 第七章 粒子群优化算法 一.前言 二.基本算法 三.标准算法 四.PSO的改进与变形 五.学习PSO的几点体会 3 PSO的产生 Particle Swarm Optimization(PSO),粒子群优化或者微粒群优化 PSO算法由美国学者Kennedy (社会心理学家)和Eberhart(电机工程师) 于1995年提出,通过模拟鸟群和鱼群的社会交互行为而不仅仅依赖个体认知行为而设计的一种智能优化方法 一.前言 4 PSO的产生 2000年以后,PSO算法在国际上逐步被接受,并有大批不同领域的学者投入该算法相关研究,已经成为智能优化领域研究的热门算法 2003年,《控制与决策》第二期刊登国内第一篇综述性文章 一.前言 5 PSO的基本思想 对社会行为的模拟 对鸟群行为的模拟:Reynolds和Heppner,Grenander在1987年和1990年发表的论文中都关注了鸟群群体行动中蕴涵的美学。他们发现,由数目庞大的个体组成的鸟群飞行中可以改变方向,散开,或者队形的重组等等,那么一定有某种潜在的能力或者规则保证了这些同步的行为。这些科学家都认为上述行为是基于不可预知的鸟类社会行为中的群体动态学。在这些早期的模型中他们把重点都放在了个体间距的处理,也就是让鸟群中的个体之间保持最优的距离。 一.前言 6 PSO的基本思想 对社会行为的模拟 对鱼群行为的研究:1975年,生物社会学家Wilson在论文中阐述了对鱼群的研究。他在论文中提出:“至少在理论上,鱼群的个体成员能够受益于群体中其他个体在寻找食物的过程中发现的和以前的经验,这种受益是明显的,它超过了个体之间的竞争所带来的利益消耗,不管任何时候食物资源不可预知的分散于四处。”这说明,同种生物之间信息的社会共享能够带来好处。 一.前言 7 PSO的基本思想 对社会行为的模拟 对人类的社会行为的模拟: a. 与前者不同,最大区别在于抽象性! b. 鸟类和鱼类是调节他们的物理运动,来避免天敌, 寻找食物,优化环境的参数,比如温度等。人类调节 的不仅是物理运动,还包括认知和经验。我们更多的 是调节自己的信仰和态度,来和社会中的杰出人物或 者专家,或者在某件事情上获得最优解的人保持一致。 一.前言 8 PSO的基本思想 对社会行为的模拟 对人类的社会行为的模拟: c. 这种不同导致了计算机仿真上的差别,至少有一个 明显的因素:碰撞(collision)。 d. 两个个体即使不被绑在一块,也具有相同的态度和 信仰,但是两只鸟是绝对不可能不碰撞而在空间中占 据相同的位置。这是因为动物只能在三维的物理空间 中运动,而人类还在抽象的多维心理空间运动,这里 是碰撞自由的(collision-free)。 一.前言 9 PSO的基本思想 采纳基于种群(swarm)的机制 个体(particle)均是问题的一个潜在解 算法寻优依赖于在种群拓扑结构上个体间的社会交互行为 一.前言 10 名称的由来:Swarm和Particle Swarm:在美国传统字典中有三个意思 一大群尤指正在行进中的一大群昆虫或其它细小生物 蜂群由蜂王带领迁移到别处建立一新据点的一群蜜蜂 一大群尤指处于骚乱中或成群出动的一大批喧闹的人或动物 作者引用此词是借用了Millonas在1994年的论文中的人工生命的一个应用模型中的提法 一.前言 11 名称的由来:Swarm和Particle Particle: 算法中有速度和加速度的字眼,这比较适合于粒子。Reeves在1983年的论文中讨论了粒子系统包括基本粒子团和云、火、烟雾等弥漫性物体 作者的想法是让粒子尽量具有一种普遍性的意义 用粒子在超空间(Hyperspace)的飞行来模拟个体的社会性行为 一.前言 12 算法描述 种群中m个个体分布在一个D维搜索空间中 每个个体均具有当前位置、速度以及历史最优位置三个属性 种群具有一定的拓扑结构,个体可以基于种群拓扑结构与其邻域内的其他个体进行相互作用 算法迭代时,每个个体会根据自身信息(认知行为)和邻域内其他个体的信息(社会行为)进行状态更新 二.基本算法 13 基本PSO的公式 二.基本算法 Index 粒子i 粒子群 14 基本PSO的公式 二.基本算法 (2) (1) 15 基本PSO的公式 c1和c2:学习因子(learning factor)或加速系数(acceleration coefficient),一般为正常数。学习因子使粒子具有自我总结和向群体中优秀个体学习的能力,从而向自己的历史最优点以及群体内或邻域内的历史最优点靠近。通常等于2。 ξ和η:0-1之间的随机数 二.基本算法 16 基本PSO的公式 粒子的速度被限制在[-Vmax, Vmax]的范围内。引入Vmax的原因: 防止溢

文档评论(0)

1亿VIP精品文档

相关文档