粒子群优化算法及其应用

产生背景

粒子群优化(Particle Swarm Optimization, PSO)算法是由美国普渡大学的Kennedy和Eberhart于1995年提出,它的基本概念源于对鸟群觅食行为的研究。

设想这样一个场景:

一群鸟在随机搜寻食物,在这个区域里只有一块食物,所有的鸟都不知道食物在哪里,但是它们知道当前的位置离食物还有多远。那么找到食物的最优策略是什么呢?

最简单有效的就是搜寻目前离食物最近的鸟的周围区域。

粒子群优化算法的基本原理

基本思想

将每个个体看作n维搜索空间中一个没有体积质量的粒子,在搜索空间中以一定的速度飞行,该速度决定粒子飞行的方向和距离。所有粒子有一个由优化函数决定的适应值。

基本原理

PSO初始化为一群随机粒子,然后通过迭代找到最优解。在每一次迭代中,粒子通过跟踪两个”极值”来更新自己。第一个就是粒子本身所找到的最优解,这个解称为个体极值。另个一是整个种群目前找到的最优解,这个解称为全局极值。

算法定义

在n 维连续搜索空间中,对粒子群中的第i (i=1, 2, , m)个粒子进行定义:

粒子群优化算法及其应用
粒子群优化算法及其应用
粒子群优化算法及其应用
第1部分是粒子在前一时刻的速度;
第2部分为个体”认知”分量,表示粒子本身的思考,将现有的位置和曾经经历过的最优位置相比。
第3部分是群体”社会(social)”分量,表示粒子间的信息共享与相互合作。
粒子群优化算法及其应用
分别控制个体认知分量和群体社会分量相对贡献的学习率。
随机系数增加搜索方向的随机性和算法多样性。
基于学习率
Kennedy给出以下4种类型的PSO模型:
粒子群优化算法及其应用
粒子群优化算法及其应用
粒子群优化算法及其应用
粒子群优化算法及其应用

; 粒子群优化算法的流程:

(1)初始化每个粒子。在允许范围内随机设置每个粒子的初始位置和速度。
(2)评价每个粒子的适应度。计算每个粒子的目标函数。
(3)设置每个粒子的Pi。对每个粒子,将其适应度与其经 历过的最好位置Pi进行比较,如果优于Pi,则将其作为该粒子的最好位置Pi。
(4)设置全局最优值Pg。对每个粒子,将其适应度与群体经历过的最好位置Pg进行比较,如果优于Pg,则将其作为当前群体的最好位置Pg。
(5)更新粒子的速度和位置。根据式(6.20)更新粒子的速度和位置。
(6)检查终止条件。如果未达到设定条件(预设误差或者迭代的次数),则返回第(2)步。

粒子群优化算法流程图

粒子群优化算法及其应用

; 粒子群优化算法的参数分析

PSO算法的参数

粒子群优化算法及其应用
最大速度Vmax
粒子群优化算法及其应用
权重因子
粒子群优化算法及其应用

; 位置更新方程中各部分的影响

粒子群优化算法及其应用
粒子群优化算法及其应用
粒子群优化算法及其应用
粒子群优化算法及其应用
粒子群优化算法及其应用

粒子群优化算法及其应用

粒子群优化算法应用领域

粒子群优化算法已在诸多领域得到应用,归纳如下:

(1)神经网络训练 (7)经济领域
(2)化工系统领域 (8)图像处理领域
(3)电力系统领域 (9)生物信息领域
(4)机械设计领域 (10)医学领域
(5)通讯领域 (11)运筹学领域
(6)机器人领域 ………….

粒子群优化算法求解车辆路径问题

车辆路径问题(VRP)的模型

粒子群优化算法及其应用
粒子群优化算法及其应用

粒子群优化算法及其应用

实验结果

粒子群优化算法的各个参数设置如下:
种群规模:50
迭代次数:1000
c1的初始值为1,随迭代的进行,线性减小到0
C2=c3=1.4
Vmax

Original: https://blog.csdn.net/weixin_45962068/article/details/124139535
Author: 小段学长
Title: 粒子群优化算法及其应用

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/795020/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球