粒子群算法(基础精讲)ppt课件.pptx
《粒子群算法(基础精讲)ppt课件.pptx》由会员分享,可在线阅读,更多相关《粒子群算法(基础精讲)ppt课件.pptx(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物粒子群算法粒子群算法2015年12月9日我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物目录一一. .集群智能(集群智能(Swarm Intelligence)二二. .粒子群算法粒子群算法(PSO)简介简介三、三、PSOPSO的一般数学模型的一般数学模型四、四、PSOPSO的各种改进算法的各种改进算法 五、五、PSOPSO的优缺点的优缺点六、六、PSOPSO的的matla
2、bmatlab实现实现我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物一、集群智能(一、集群智能(Swarm Intelligence) Swarm可被描述为一些相互作用相邻个体的集合体,蜂群、蚁群、鸟群都是Swarm的典型例子。鱼聚集成群可以有效地逃避捕食者,因为任何一只鱼发现异常都可带动整个鱼群逃避。蚂蚁成群则有利于寻找食物,因为任一只蚂蚁发现食物都可带领蚁群来共同搬运和进食。一只蜜蜂或蚂蚁的行为能力非常有限,它几乎不可能独立存在于自然世界中,而多个蜜蜂或蚂蚁形成的Swarm则具有非常强的生存能力,且这
3、种能力不是通过多个个体之间能力简单叠加所获得的。社会性动物群体所拥有的这种特性能帮助个体很好地适应环境,个体所能获得的信息远比它通过自身感觉器官所取得的多,其根本原因在于个体之间存在着信息交互能力。 我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物 生物社会学家E.O.Wilson指出:“至少从理论上,在搜索食物过程中群体中个体成员可以得益于所有其他成员的发现和先前的经历。当食物源不可预测地零星分布时,这种协作带来的优势是决定性的,远大于对食物的竞争带来的劣势。”鱼群觅食模型鱼群觅食模型我吓了一跳,蝎子是多
4、么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物二、粒子群算法二、粒子群算法(PSO)简介简介 粒子群算法(particle swarm optimization,PSO)由Kennedy和Eberhart在1995年提出,该算法模拟鸟集群飞行觅食的行为,鸟之间通过集体的协作使群体达到最优目的,是一种基于Swarm Intelligence的优化方法。同遗传算法类似,也是一种基于群体叠代的,但并没有遗传算法用的交叉以及变异,而是粒子在解空间追随最优的粒子进行搜索。PSO的优势在于简单容易实现同时又有深刻的智能背景,既适合科学研
5、究,又特别适合工程应用,并且没有许多参数需要调整。 我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物产生背景:产生背景: 设想一个场景:一群鸟随机的分布在一个区域中,在这个区域里只有一块食物。所有的鸟都不知道食物在哪里。但是他们知道当前的位置离食物还有多远。那么找到食物的最优策略是什么呢?最最简单有效的方法就是追寻自己视野中目前离食物最近的鸟。简单有效的方法就是追寻自己视野中目前离食物最近的鸟。如果把食物当作最优点,而把鸟离食物的距离当作函数的适应度,那么鸟寻觅食物的过程就可以当作一个函数寻优的过程。由此受
6、到启发,经过简化提出了粒子群优化算法。我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物基本思想基本思想: : 在PSO中,把一个优化问题看作是在空中觅食的鸟群,那么 “食物食物”就是优化问题的最优解,而在空中飞行的每一只觅食的 “鸟鸟”就是PSO算法中在解空间中进行搜索的一个“粒子粒子”(Particle)(Particle)。“群群”(Swarm)(Swarm)的概念来自于人工生命,满足人工生命的五个基本原则。因此PSO算法也可看作是对简化了的社会模型社会模型的模拟,这其中最重要的是社会群体中的信息共享机
7、制,这是推动算法的主要机制。我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物 粒子在搜索空间中以一定的速度飞行,这个速度根据它本身的飞行经验和同伴的飞行经验来动态调整。所有的粒子都有一个被目标函数决定的适应值(fitness value),这个适应值用于评价粒子的“好坏”程度。 每个粒子知道自己到目前为止发现的最好位置(particle best,记为pbest)和当前的位置,pbest就是粒子本身找到的最优解,这个可以看作是粒子自己的飞行经验。 除此之外,每个粒子还知道到目前为止整个群体中所有粒子发现的最
8、好位置(global best,记为gbest),gbest是在pbest中的最好值,即是全局最优解,这个可以看作是整个群体的经验。我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物当前位置当前位置当前位置与群体最当前位置与群体最好位置之间的距离好位置之间的距离当前速度当前速度当前位置与自己最好当前位置与自己最好位置之间的距离位置之间的距离每个粒子使用下列信息改变自己的当前位置:每个粒子使用下列信息改变自己的当前位置:我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉
9、快,证实我的猜测没有错:表里边有一个活的生物粒子群算法的基本粒子群算法的基本思想:思想: 用随机解初始化一群随机粒子,然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个“极值”来更新自己: 一个是粒子本身所找到的最好解,即个体极值(pbest),另一个极值是整个粒子群中所有粒子在历代搜索过程中所达到的最优解(gbest)即全局极值。 找到这两个最好解后,接下来是PSO中最重要的“加速”过程,每个粒子不断地改变其在解空间中的速度,以尽可能地朝pbest和gbest所指向的区域“飞”去。我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜
10、测没有错:表里边有一个活的生物三、粒子群优化算法的一般数学模型三、粒子群优化算法的一般数学模型 假设在一个N维空间进行搜索,粒子i的信息可用两个N维向量来表示:第i个粒子的位置可表示为 ;速度为 ; 在找到两个最优解后,粒子即可根据下式来更新自己的速度和位置:TiNiiixxxx,21TiNiiivvvv,2111122()()kkkkkkkkididididdidvvcrandPbestxcrandGbestx11kkkidididxxv :是粒子i在第k次迭代中第d维的速度; :是粒子i在第k次迭代中第d维的当前位置;kidvkidx我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这
11、样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物i=1,2,3,M:种群大小。c1和c2:学习因子(或称加速系数),合适的c1和c2既可加快收敛又不易陷入局部最优。rand1和rand2:是介于0,1之间的随机数。 :是粒子i在第d维的个体极值点的位置; :是整个粒子群在第d维的全局极值点的位置。 kidPbestkdGbest最大速度最大速度v vmaxmax:决定了问题空间搜索的力度,粒子的每一维速度vid都会被限制在-vdmax,+vdmax 之间,粒子每一维的位置xid变化范围为-xdmax,+xdmax ,迭代中若位置和速度超过边界范围则取边界值。我吓
12、了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物11122()()kkkkkkkkididididdidvvcrandPbestxcrandGbestx“认知”部分,仅考虑了粒子自身的经验,表示粒子本身的思考“社会”部分,表示粒子间的群体或领域内信息共享粒子先前的速度我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物参数意义:参数意义:(1)粒子的长度N:问题解空间的维数。(2)粒子种群大小M:粒子种群大小的选择视具体问题而定
13、,但是一般设置粒子数为20-50。对于大部分的问题10个粒子已经可以取得很好的结果,不过对于比较难的问题或者特定类型的问题,粒子的数量可以取到100或200。另外,粒子数目越多,算法搜索的空间范围就越大,也就更容易发现全局最优解。当然,算法运行的时间也较长。(3)加速常数c1和 c2:分别调节向Pbest和Gbest方向飞行的最大步长,决定粒子个体经验和群体经验对粒子运行轨迹的影响,反映粒子群之间的信息交流。我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有错:表里边有一个活的生物 如果c1=0,则粒子只有群体经验,它的收敛速度较快
14、,但容易 陷入局部最优; 如果c2 = 0,则粒子没有群体共享信息,一个规模为M的群体等价于运行了M个各行其是的粒子,得到解的几率非常小,因此一般设置c1 = c2 。这样,个体经验和群体经验就有了相同重要的影响力,使得最后的最优解更精确。 改变这些常数会改变系统的“张力”,较低的c1 和 c2值使得粒子徘徊在远离目标的区域,较高的c1 和 c2值产生陡峭的运动或越过目标区域。 Shi和Eberhart建议,为了平衡随机因素的作用,一般情况下设置c1 c2,大部分算法都采用这个建议。我吓了一跳,蝎子是多么丑恶和恐怖的东西,为什么把它放在这样一个美丽的世界里呢?但是我也感到愉快,证实我的猜测没有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 粒子 算法 基础 ppt 课件
限制150内