粒子群优化算法

粒子群优化算法

1、简介

粒子群算法,也称粒子群优化算法或鸟群觅食算法,英文为:Particle Swarm Optimization,缩写为 PSO, 是由J. Kennedy和R. C. Eberhart等开发的一种新的进化算法。PSO 算法属于进化算法的一种,和模拟退火算法相似,它也是从随机解出发,通过迭代寻找最优解,它也是通过适应度来评价解的品质,但它比遗传算法规则更为简单,它没有遗传算法的“交叉”(Crossover) 和“变异”(Mutation) 操作,它通过追随当前搜索到的最优值来寻找全局最优。这种算法以其实现容易、精度高、收敛快等优点引起了学术界的重视,并且在解决实际问题中展示了其优越性。这一段介绍来之百度百科:粒子群优化算法
先来瞻仰一下大佬的容颜-_-

2、思想

1、粒子群算法的思想源于对鸟群捕食行为的研究.
2、模拟鸟集群飞行觅食的行为,鸟之间通过集体的协作使群体达到最优目的,是一种基于群体智能的优化方法。
核心思想: 利用群体中的个体对信息的共享从而使得整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得问题的最优解。

粒子群优化算法来源于对鸟类、鱼群的捕食行为,进而抽象成的一种算法,那么,我将介绍一个鸟类如何捕食的粒子来讲解粒子群优化算法。
例子:
**已知条件:**在一片区域中,有一群鸟,而且在这一片区域中的某处或者多处存在一些食物,鸟类就是鸟类,他们是不知道食物具体的位置,也不知道哪个位置食物最多,但是他们遇到食物的时候,是知道这是食物的-_-,而且能够区分食物量的多少。自然界中一切生物都是在不停的寻找食物,这也是能够得以生存的原因。
**求解:**找打食物最多的地方

**解:**这一个流程:已知条件,求解,解。瞬间把我带回了初中的数学课。。。
那么,鸟群如何找到食物呢?如何找到这篇区域中食物最多的地方呢?

1、鸟群之间信息共享,朝着群体已知食物最多的地方飞行
2、根据自己的经验,朝着自己已知食物最多的地方飞行


通过这两种行为,鸟群之间相互分享信息,随着不断的寻找就能够找到食物最多的位置。

通过以上的分析,鸟类有两种行为:1、社会行为;2、个体行为;
社会行为:鸟会根据鸟群中最好的鸟学习,即朝着目前已知食物最多的地方移动。
个体行为:根据自己搜索的情况,向自己已知食物最多的地方移动。
然后,根据鸟群的这种寻找食物的方法进行抽象,每一个鸟抽象成一个粒子,每个粒子都有上述的两种行为,就产生了粒子群优化算法(particle swarm optimization,PSO)。

粒子群优化算法分析

公式:
根据以上抽象,粒子群优化算法中有两个公式:速度更新公式与位置更新公式。
速度更新公式
位置更新公式
公式详解:
在这里插入图片描述
公式中 v v v为速度, x x x为位置, w w w是惯性因子, c 1 c_1 c1 c 2 c_2 c2为学习因子, p b e s t pbest pbest是个体最优位置, g b e s t gbest gbest是全局最优位置。
上述公式中有三个标红的框,第一个框中为:记忆项,表示粒子按上次的速度大小与方向移动的趋势。第二个框中为:自身认知项,表示粒子根据自身经验移动。第三个框中为:群体认知项,表示粒子根据全局中最好的经验进行移动。

在根据 p b e s t pbest pbest g b e s t gbest gbest计算出粒子的速度之后,根据位置更新公式即可对粒子的位置进行更新。根据粒子上一时刻的位置,与上一时刻的速度(矢量,包含大小与方向),即可求得当前时刻的位置。应该没有疑问吧-_-。

终止条件:
1、达到最大迭代次数(不能无休止的找下去,会累死的。。。)
2、达到可接受满意度(得到的结果已经满意了,就停止吧,知足常乐)
再对粒子群优化算法来个总体的流程介绍吧,通过一个流程图,帮助你进一步了解粒子群优化算法。
在这里插入图片描述

优缺点分析:
优点:简单、收敛快、计算复杂度低
缺点:多样性丢失、容易陷入局部最优

粒子群优化算法应用

1、函数优化
2、神经网络训练
3、模糊控制器设计
4、作业调度
5、路径规划
6、自动目标检测
7、目标跟踪
从上面的应用场合可知,粒子群优化算法真是不所不能-_-,至于能够用到什么方面,具体能够解决什么问题,大家去感兴趣的可以去知网搜索“粒子群优化算法(PSO)”。
这里放一个视频例子,是粒子群优化算法求解函数最优值的求解过程。
在这里插入图片描述
应用到目标跟踪中的例子:
在这里插入图片描述

总结

粒子群优化算法是一个很强大的算法,能够应用到各行各业中,在学校的毕业论文中粒子群优化算法也占据着很大一部分,有很多学生的毕业论文中都涉及到了粒子群优化算法。
希望通过这篇文章,能够让你对粒子群优化算法有个一清晰的认识吧。如果您发现文章中存在问题,欢迎交流讨论。
本人在研究生期间一直用粒子群优化算法做相关的学术工作,也算对粒子群优化算法有一点了解,还希望能够帮助到您。
至此,粒子群优化算法就讲完了,把在群体智能优化算法这个文章中挖的一个坑填上了,后续会继续填坑。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值