好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

粒子群算法论文正文.doc

9页
  • 卖家[上传人]:l****i
  • 文档编号:228723122
  • 上传时间:2021-12-23
  • 文档格式:DOC
  • 文档大小:86.50KB
  • / 9 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 粒子群算法的寻优算法摘要:粒子群算法是在仿真生物群体社会活动的基础上,通过模拟群体生物相互协同寻优能力,从而构造出一种新的智能优化算法这篇文章简要回顾了粒子群算法的发展历史;引入了一个粒子群算法的实例,对其用MATLAB进行编程求解,得出结论之后还对其中的惯性权重进行了延伸研究,对惯性权重的选择和变化的算法性能进行分析关键词:粒子群、寻优、MATLAB、惯性权重目录:1.粒子群算法的简介31.1 粒子群算法的研究背景31.2 起源31.3 粒子群理论42.案例背景52.1问题描述52.2 解题思路及步骤53.MATLAB编程实现63.1设置PSO算法的运行参数63.2种群初始化63.3寻找初始极值63.4迭代寻优73.5结果分析74.惯性权重对PSO算法的影响94.1惯性权重的选择94.2惯性权重变化的算法性能分析95 结论11参考文献:121.粒子群算法的简介粒子群算法〔Particle Swarm Optimization是一种新的智能优化算法谈到它的发展历史,就不得不先介绍下传统的优化算法,正因为传统优化算法自身的一些不足,才有新智能优化算法的兴起,而粒子群算法〔PSO就是在这种情况下发展起来的。

      1.1 粒子群算法的研究背景最优化是人们在科学研究、工程技术和经济管理等领域中经常遇到的问题优化问题研究的主要内容是在解决某个问题时,如何从众多的解决方案中选出最优方案它可以定义为:在一定的约束条件下,求得一组参数值,使得系统的某项性能指标达到最优 〔最大或最小传统的优化方法是借助于优化问题的不同性质,通常将问题分为线性规划问题、 非线性规划 问题、整数规划问题和多目标规划问题等相应的有一些成熟的常规算法,如应用于线性规划问题的单纯形法,应用于非线性规划的牛顿法、共扼梯度法,应用于整数规则的分枝界定 法、动态规划等列举的这些传统的优化算法能够解决现实生活和工程上的很多问题,但工业和科学领域大量实际问题的困难程度正在日益增长,它们大多是根本无法在可接受的时间 内找到解的问题这类优化问题的困难性不仅体现在具有极大的规模,更为重要的是,它们多数是非线性的、动态的、多峰的、具有欺骗性的或者不具有任何导数信息因此,发展通用性更强、效率更高的优化算法总是需要的 1.2 起源在自然界中,鸟群运动的主体是离散的,其排列看起来是随机的,但在整体的运动中它们却保持着惊人的同步性,其整体运动形态非常流畅且极富美感。

      这些呈分布状态的群体所表现出的似乎是有意识的集中控制,一直是许多研究者感兴趣的问题有研究者对鸟群的运动进行了计算机仿真,他们通过对个体设定简单的运动规则,来模拟鸟群整体的复杂行为1986 年 Craig ReynolS 提出了 Boid 模型,用以模拟鸟类聚集飞行的行为,通过对现实世界中这些群体运动的观察,在计算机中复制和重建这些运动轨迹,并对这些运动进行抽象建模,以发现新的运动模式之后,生物学家 Frank Heppner 在此基础上增加了栖息地对鸟吸引的仿真条件,提出了新的鸟群模型这个新的鸟群模型的关键在于以个体之间的运算操作为基础,这个操作也就是群体行为的同步必须在于个体努力维持自身与邻居之间的距离为最优,为此每个个体必须知道自身位置和邻居的位置信息这些都表明群体中个体之间信息的社会共享有助于群体的进化在 1995年,受到 Frank Heppner 鸟群模型的影响,社会心理学博士 James Kennedy 和电子工程学博士 Russell Eherhart 提出了粒子群算法粒子群算法其实也是一种演化计算技术,该算法将鸟群运动模型中的栖息地类比于所求问题空间中可能解的位置,通过个体间的信息传递,导引整个群体向可能解的方向移动, 在求解过程中逐步增加发现较好解的可能性。

      群体中的鸟被抽象为没有质量和体积的"粒子",通过这些"粒子"间的相互协作和信息共享,使其运动速度受到自身和群体的历史运动状态信息的影响以自身和群体的历史最优位置对粒子当前的运动方向和运动速度加以影响,较好地协调粒子本身和群体之间的关系,以利于群体在复杂的解空间中进行寻优操作1.3 粒子群理论求解优化问题的,算法中每个粒子都代表问题的一个潜在解,每个粒子对应一个由适应度函数决定的适应度值粒子的速度决定了粒子移动的方向和距离,速度随自身及其他粒子的移动经验进行动态调整,从而实现个体在可解空间中的寻优PSO 算法首先在可行解空间中初始化一群粒子,每个粒子都代表极值优化问题的一个潜在最优解,用位置、速度和适应度值三项指标表示该粒子特征,适应度值由适应度函数计算得到,其值的好坏表示粒子的优劣粒子在解空间中运动,通过跟踪个体极值 Pbest 和群体极值Gbest 更新个体位置个体极值 Pbest是指个体所经历位置中计算得到的适应度值最优位置,群体极值 Gbest 是指种群中的所有粒子搜索到的适应度最优位置粒子每更新一次位置,就计算一次适应度值,并且通过比较新粒子的适应度值和个体极值、群体极值的适应度值更新个体极值 Pbest 和群体极值 Gbest 位置。

      假设在一个D维的搜索空间中,由n个粒子组成的种群X=

      本题中,适应度函数为函数表达式,适应度值为函数值种群粒子数设置为20,每个粒子的维数为2,算法迭代次数定为300次3.MATLAB编程实现 根据PSO算法原理,在MATLAB里编程实现基于PSO算法的函数极值寻优算法3.1设置PSO算法的运行参数程序代码如下:%% 清空环境clcclear%% 参数初始化%粒子群算法中的两个参数c1 = 1.49445;c2 = 1.49445;maxgen=300; % 进化次数 sizepop=20; %种群规模Vmax=0.5; Vmin=-0.5;popmax=2;popmin=-2; %速度和个体最大最小值3.2种群初始化随机初始化粒子位置和粒子速度,并根据适应函数计算粒子适应度值 产生初始粒子和速度for i=1:sizepop %随机产生一个种群 pop=2*rands<1,2>; %初始种群 V=0.5*rands<1,2>; %初始化速度 %计算适应度 fitness=fun>; %计算粒子的适应度值end适应度函数代码如下:function y = fun%函数用于计算粒子适应度值 %x input 输入粒子 %y output 粒子适应度值 y=sin< sqrt.^2+x<2>.^2> >./sqrt.^2+x<2>.^2>+exp<>+cos<2*pi*x<2>>>/2>-2.71289;3.3寻找初始极值%% 个体极值和群体极值[bestfitness bestindex]=max;zbest=pop; %全局最佳gbest=pop; %个体最佳fitnessgbest=fitness; %个体最佳适应度值fitnesszbest=bestfitness; %全局最佳适应度值3.4迭代寻优 根据上文中的公式更新粒子位置和速度,并且根据新粒子的适应度值更新个体极值和群体极值。

      程序代码如下:%% 迭代寻优for i=1:maxgen for j=1:sizepop %速度更新 V = V + c1*rand* - pop> + c2*rand*>; V>Vmax>>=Vmax;V>=Vmin; %种群更新 pop=pop+V; pop>popmax>>=popmax; pop>=popmin; %适应度值 fitness=fun>; end for j=1:sizepop %个体最优更新 if fitness > fitnessgbest gbest = pop; fitnessgbest = fitness; end %群体最优更新 if fitness > fitnesszbest zbest = pop; fitnesszbest = fitness; end end yy=fitnesszbest; %每代最优值记录在yy数组中end3.5结果分析 PSO算法反复迭代300次,画出每代个体适应度值变化图形,程序代码如下:plottitle<最优个体适应度,fontsize,12>;xlabel<进化代数,fontsize,12>;ylabel<适应度,fontsize,12>;最优个体适应度值变化如图三所示。

      图3 最优个体适应度值 最终得到的最优个体适应度值为1.0053,对应的粒子位置为〔0.0015,-0.0008,PSO算法寻优得到的最优值接近函数实际最优值但在多次运行的时候会出现结果为0.8477左右的极值结果,如图4所示,原因在第四章进行探讨图4 最优个体适应度值的另一结果4.惯性权重对PSO算法的影响4.1惯性权重的选择惯性权重体现的是粒子继承先前的速度的能力,Shi.Y 最先将惯性权重引入 PSO算法中,并分析指出一个较大的惯性权值有利于全局搜索,而一个较小的惯性权值则更利于局部搜索为了更好地平衡算法的全局搜索与局部搜索能力,Shi.Y 提出了线性递减惯性权重,即其中,为初始惯。

      点击阅读更多内容
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.
      • QQ咨询
      • 微信客服
      • 返回顶部