优化算法:粒子群算法

目录

1 粒子群算法简介

1.1 与遗传算法对比

1.2 基本思想

1.3 相关概念

2 算法流程及参数

2.1 算法流程

2.2 算法参数


1 粒子群算法简介

粒子群优化算法是模仿生物社会系统,更确切地说,是由简单个体组成的群体与环境以及个体之间的互动行为,是一种基于群智能方法的进化计算技术,它由Eberhant 博士和 Kennedy 博士等于 1995年提出,源于对鸟群捕食的行为研究。粒子群算法同遗传算法类似,是一种基于群体迭代的优化工具。

1.1 与遗传算法对比

  1. 相同点:系统初始化为一组随机解,通过迭代搜寻最优值。
  2. 不同点:没有遗传算法用的交叉以及变异,而是粒子在解空间追随最优的粒子进行搜索。
  3. 优点:更简单、容易实现并且没有许多参数需要调整。

因为以上特点,粒子群算法一提出短短几年时间便获得了很大的发展,出现了大量的研究成果,并被应用于函数优化、神经网络训练、模糊系统控制以及其他遗传算法的应用领域。

1.2 基本思想

粒子群算法源于对鸟群捕食行为的模拟。一群鸟在一个固定区域里随机搜索食物,在这个区域里只有一块食物,所有的鸟都不知道食物在哪里,但是它们知道当前自己所处的位置离食物还有多远,那么找到食物的最优策略是什么?最简单有效的方法就是搜寻目前离食物最近的鸟的周围区域。粒子群算法从这种模型中得到启示并用于解决优化问题。

1.3 相关概念

在粒子群算法中,每个优化问题的解都是搜索空间中的一只鸟,称为“粒子”。所有的粒子看成搜索空间中没有质量和体积的点,而且都有一个适应值,这个适应值根据被优化的函数确定。每个粒子还有一个速度决定它们飞翔的方向和距离,这个速度根据它自己的飞行经验和同伴的飞行经验进行动态调整。

优化问题的解 鸟,称为“粒子”
适应值 优化函数确定
速度 自己的飞行经验和同伴的飞行经验进行动态调整

粒子群算法初始化为一群随机粒子(随机解),然后通过迭代找到最优解。在每一次迭代中,粒子通过两种经验来更新自己。自己的飞行经验就是粒子经历过的最好位置(有最好的适应值),即本身所找到的最优解,这个解叫做个体极值。同伴的飞行经验就是群体所有粒子经历过的最好位置,即整个种群目前找到的最优解,这个叫做全局极值。另外,也可以不用整个群体而只用其中一部分作为粒子的邻居,那么在所有邻居中的极值就是局部极值。

自己飞行经验 粒子经历过的最好位置 本身找到的最优解(个体极值)
同伴飞行经验 所有粒子经历过的最好位置 整个种群找到的最优解(全局极值)
部分同伴飞行经验 部分粒子经历过的最好位置 部分个体找到的最优解(局部极值)

注:最好位置,即有最好的适应值。</

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值