PSO粒子群算法【PSO学习笔记_01】

本文介绍了粒子群算法的基础知识,包括算法原理、特点、缺点和Matlab中的实现。算法通过迭代寻找全局最优解,但后期收敛速度慢。在Matlab中,通过设置适应度函数、粒子数量、学习因子等参数实现算法。文章提供了代码实现的补充解释,并引用了相关参考文献。
摘要由CSDN通过智能技术生成

本文为初学者对于粒子群算法的个人理解,有些地方为了方便理解描述可能不一定准确,还望指正。

目录

1 对粒子群算法的理解

补充:

2 粒子群算法的缺点

3 Matlab中的函数实现

算法的代码实现

对于代码的补充解释

参考文献

1 对粒子群算法的理解

粒子群算法是一种在解空间中,“随机”进行“穷尽探索”的算法

1.1.“随机”

“随机”是粒子群算法极为重要的特性,PSO初始化为一群随机粒子,这些粒子被赋予一个随机的位置信息,然后通过不断的迭代找到最优解。单个粒子找到的最优解为Pbest(可以理解为局部最优解);然后综合所有单个粒子的pbest,最终汇总得到一个gbest(可以理解为全局最优解)

可以把粒子群算法理解为一个从寻找局部最优解到全局最优解的过程。

1.2.“穷尽探索”

这里的“穷尽探索”,即只有当达到一定条件(迭代完毕)粒子群算法才会停止,这里的迭代次数在开始前就设定好。

补充:

粒子群算法,各个粒子信息互通,这不仅保证了运算的效率(就像抽签里的不放回抽取,每个粒子不用在整个空间中进行探索,只用探索一部分就好了);还可以保证基于pbest找到的gbest不会出错。

粒子群算法也是多目标搜索,有利于得到多目标意义下的最优解,可以并行的探索多个非劣解,也探索到多个pareto解。(也就是可以同时处理受多个因素影响的问题)

粒子由适应度函数(fitness function)确定适应值以判断“位置”的好坏,pbest/gbest均由适应度函数决定。也就是

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值