当前位置: 首页 > news >正文

PSO详解变体上新!新型混合蛾焰粒子群优化(MFPSO)算法

1.2 标准 PSO 和 MFO 算法的算法基础

PSO,由 Kennedy 和 Eberhart 在 1995 年 [40] 提出,模拟了鸟类寻找食物的集体运动。候选解表示为粒子,基于个人最佳 p b e s t pbest pbest 和全局最佳 g b e s t gbest gbest 位置更新它们的速度。第 i i i 个粒子在第 t t t 次迭代中的速度 v i t v_i^t vit 和位置 x i t x_i^t xit 通过公式 1 和 2 更新,其中 w w w 是惯性权重, ( c 1 , c 2 ) (c_1, c_2) (c1,c2) 是加速系数, ( r a n d 1 , r a n d 2 ) (rand_1, rand_2) (rand1,rand2) 是 [0,1] 之间的随机数。

v i t + 1 = w ⋅ v i t + c 1 ⋅ r a n d 1 ⋅ ( p b e s t i t − x i t ) + c 2 ⋅ r a n d 2 ⋅ ( g b e s t t − x i t ) (1) v_i^{t+1} = w \cdot v_i^t + c_1 \cdot rand_1 \cdot (pbest_i^t - x_i^t) + c_2 \cdot rand_2 \cdot (gbest^t - x_i^t) \tag{1} vit+1=wvit+c1rand1(pbestitxit)+c2rand2(gbesttxit)(1)

x i t + 1 = x i t + v i t + 1 (2) x_i^{t+1} = x_i^t + v_i^{t+1} \tag{2} xit+1=xit+vit+1(2)

MFO [41] 受到蛾子利用月光导航的启发,被人工光源干扰。种群 ( M M M) 由蛾子(代理)组成,而火焰 ( F F F) 是排序后的 M M M,代表最佳位置。火焰 ( F n o F_{no} Fno) 的数量随着迭代次数的增加而减少,以平衡探索和开发,使用公式 3。

F n o = round ( n − t ∗ n − 1 maxIter ) (3) F_{no} = \text{round}(n - t * \frac{n - 1}{\text{maxIter}}) \tag{3} Fno=round(ntmaxItern1)(3)

i i i 只蛾子在第 t t t 次迭代中的位置 M i t M_i^t Mit 使用对数螺旋方程更新,如公式 4 所示,其中第 i i i 只蛾子围绕相应的第 i i i 个火焰 F i t F_i^t Fit 飞行, b b b 是定义对数螺旋形状的常数, r r r 是 [-1,1] 之间的随机数。这种方法通过确保火焰不会在迭代过程中固定在特定的蛾子上来保持多样性。

M i t + 1 = { ∣ F i t − M i t ∣ ∗ e b ⋅ r ∗ cos ⁡ ( 2 π r ) + F i t if  t ≤ F n o ∣ F i t − M i t ∣ ∗ e b ⋅ r ∗ cos ⁡ ( 2 π r ) + F n o t otherwise (4) M_i^{t+1} = \begin{cases} |F_i^t - M_i^t| * e^{b \cdot r} * \cos(2 \pi r) + F_i^t & \text{if } t \leq F_{no} \\ |F_i^t - M_i^t| * e^{b \cdot r} * \cos(2 \pi r) + F_{no}^t & \text{otherwise} \end{cases} \tag{4} Mit+1={FitMitebrcos(2πr)+FitFitMitebrcos(2πr)+Fnotif tFnootherwise(4)

Ling 等人开发了混合 HyMFPSO 算法,结合了 PSO 和 MFO,其在八个基准函数 (2-10 维) [42] 上的表现优于 PSO 和 MFO。在 HyMFPSO 中,PSO 速度 ( v i t + 1 v_i^{t+1} vit+1) 被添加到 MFO 位置更新中,如公式 5 所示。Shaikh 等人提出了 HMFPSO,这是 Hy-PSO-MFO 的改进版本,由 Yang 等人验证了基准函数和电力传输应用 [43]。HMFPSO 引入了基于 PSO 的局部吸引子 ( Q i t Q_i^t Qit),用于蛾子位置更新,如公式 6 所示。 p B e s t i t pBest_i^t pBestit g b e s t t gbest^t gbestt 代表局部和全局最佳火焰。
分别, ϕ \phi ϕ 是 [0, 1] 范围内的随机数 [43]。

Q i t = ϕ × p B e s t i t + ( 1 − ϕ ) × g b e s t t (5) Q_i^t = \phi \times pBest_i^t + (1 - \phi) \times gbest^t \tag{5} Qit=ϕ×pBestit+(1ϕ)×gbestt(5)

M i t + 1 = ∣ F i t − M i t ∣ × e b × r × cos ⁡ ( 2 π r ) + Q i t (6) M_i^{t+1} = |F_i^t - M_i^t| \times e^{b \times r} \times \cos(2 \pi r) + Q_i^t \tag{6} Mit+1=FitMit×eb×r×cos(2πr)+Qit(6)
在这里插入图片描述

2 提出的蛾火焰粒子群优化 (MFPSO) 算法

标准 PSO 算法存在过早收敛问题,可能会陷入局部最小值 [14]。粒子速度基于局部和全局最优值进行更新。粒子位置仅基于粒子速度进行更新,这增加了过早收敛的可能性。

2.1 提出的 MFPSO 算法的概念及其方程

提出的蛾火焰粒子群优化 (MFPSO) 算法旨在通过整合粒子群优化 (PSO) 和蛾火焰优化 (MFO) 算法的元素来改进原始 PSO 的性能。MFO 算法,受蛾子自然导航行为的启发,在探索方面表现出色,这是由于其火焰更新机制 [41]。通过结合 MFO 的强探索能力和 PSO 的强开发能力,MFPSO 算法旨在避免标准 PSO 中的过早收敛,并实现探索与开发之间的更好平衡。

在 MFPSO 算法中,将 PSO 中的粒子速度概念整合到蛾子的 MFO 算法中。MFPSO 的种群由一组蛾子组成,每只蛾子由速度 v i ( t ) v_i^{(t)} vi(t) 和位置 x i ( t ) x_i^{(t)} xi(t) 定义,其中 i i i 表示第 i i i 只蛾子, d d d 表示第 d d d 维, t t t 是迭代次数。每蛾只子的位置代表候选解,对应于速度控制应用中的 PID 参数。火焰种群 F F F 由基于适应度值排序的蛾子组成, f i ( t ) f_i^{(t)} fi(t) 表示第 i i i 只火焰在第 t t t 次迭代中第 d d d 维的位置。

蛾子的速度 v i ( t ) v_i^{(t)} vi(t) 根据当前蛾子位置 x i ( t ) x_i^{(t)} xi(t)、整个种群中全局最佳蛾子位置 g b e s t d gbest_d gbestd 和第 i i i 只蛾子的个人最佳位置 p b e s t i , d pbest_{i,d} pbesti,d 的差异步长进行更新。方程 8 显示了蛾子的速度更新,其中 v v v 是惯性权重, r 1 r_1 r1 r 2 r_2 r2 是 [0,1] 范围内的随机数, c 1 c_1 c1 c 2 c_2 c2 是加速系数,影响个人最佳位置和全局最佳位置的影响。这种机制反映了 PSO 算法中的速度更新。

v i , d ( t + 1 ) = w ⋅ v i , d ( t ) + c 1 ⋅ r 1 ⋅ ( p b e s t i , d − x i , d ( t ) ) + c 2 ⋅ r 2 ⋅ ( g b e s t d − x i , d ( t ) ) (8) v_{i,d}^{(t+1)} = w \cdot v_{i,d}^{(t)} + c_1 \cdot r_1 \cdot (pbest_{i,d} - x_{i,d}^{(t)}) + c_2 \cdot r_2 \cdot (gbest_d - x_{i,d}^{(t)}) \tag{8} vi,d(t+1)=wvi,d(t)+c1r1(pbesti,dxi,d(t))+c2r2(gbestdxi,d(t))(8)

MFPSO 算法的主要思想是结合 MFO 的探索能力与 PSO 在蛾子位置更新中的开发能力,从而提高性能并防止过早收敛。蛾子种群被分为两组。在第一组中,位置 x i , d ( t + 1 ) x_{i,d}^{(t+1)} xi,d(t+1) 根据新计算的速度 v i , d ( t + 1 ) v_{i,d}^{(t+1)} vi,d(t+1) 更新。在第二组中,位置基于围绕相应目标火焰位置 P i , d ( t ) P_{i,d}^{(t)} Pi,d(t) 的对数螺旋运动更新。混合位置更新方程由公式 9 给出,其中 b b b 是定义螺旋形状的常数(设为 1), l i , d l_{i,d} li,d i i i 只蛾子的第 d d d 维的随机数,范围为 [-1,1]。

x i , d ( t + 1 ) = { x i , d ( t ) + v i , d ( t + 1 ) , if rand ≤ 0.5 ∣ P i , d ( t ) + ∣ x i , d ( t ) − P i , d ( t ) ∣ ⋅ e b ⋅ l i , d ⋅ cos ⁡ ( 2 π ⋅ l i , d ) , otherwise (9) x_{i,d}^{(t+1)} = \begin{cases} x_{i,d}^{(t)} + v_{i,d}^{(t+1)}, & \text{if rand} \leq 0.5 \\ |P_{i,d}^{(t)} + |x_{i,d}^{(t)} - P_{i,d}^{(t)}| \cdot e^{b \cdot l_{i,d}} \cdot \cos(2 \pi \cdot l_{i,d}), & \text{otherwise} \end{cases} \tag{9} xi,d(t+1)={xi,d(t)+vi,d(t+1),Pi,d(t)+xi,d(t)Pi,d(t)ebli,dcos(2πli,d),if rand0.5otherwise(9)

目标火焰的数量 F n o F_{no} Fno 随着每次迭代而减少,从种群大小开始,如公式 3 所示。第 i i i 个目标火焰位置 P i , d ( t ) P_{i,d}^{(t)} Pi,d(t) 的第 d d d 维由公式 10 确定,其中 t t t 是迭代次数, f i , d ( t ) f_{i,d}^{(t)} fi,d(t) 表示第 i i i 个火焰的位置的第 d d d 维, f F n o , d ( t ) f_{F_{no},d}^{(t)} fFno,d(t) 表示位于种群中 F n o F_{no} Fno 索引的蛾子的第 d d d 维位置。

p i , d ( t ) = { f i , d ( t ) , if  t ≤ F n o f F n o , d ( t ) , otherwise (10) p_{i,d}^{(t)} = \begin{cases} f_{i,d}^{(t)}, & \text{if } t \leq F_{no} \\ f_{F_{no},d}^{(t)}, & \text{otherwise} \end{cases} \tag{10} pi,d(t)={fi,d(t),fFno,d(t),if tFnootherwise(10)

2.2 MFPSO 算法的逐步描述

算法 1 描述了 MFPSO 算法的步骤,图 1 显示了 MFPSO 序列的流程图。首先,初始化 MFPSO 参数,包括惯性权重和加速系数。MFPSO 算法的第二步初始化包含所有候选解的随机种群 M M M,其中 n P o p nPop nPop 是种群大小。每只蛾子有两个属性:位置 x i x_i xi,代表解决方案本身(例如,PID 参数),以及速度 v i v_i vi,这是从 PSO 算法继承的特征,用于位置更新。
在这里插入图片描述

相关文章:

  • 如何搭建一个简单的文件服务器的方法
  • 使用 DBeaver 将数据从 PostgreSQL 导出到 SQLite
  • Kotlin 常见问题
  • 深度解析 MyBatis`@TableField(typeHandler = JacksonTypeHandler.class)`:优雅处理复杂数据存储
  • 从 BERT 到 GPT:Encoder 的 “全局视野” 如何喂饱 Decoder 的 “逐词纠结”
  • 【语法】C++继承中遇到的问题及解决方法
  • E2E 测试
  • JavaScript 相关知识点整理
  • C++ 红黑树
  • 【Vagrant+VirtualBox创建自动化虚拟环境】Ansible测试Playbook
  • git fetch和git pull的区别
  • ​【空间数据分析】缓冲区分析--泰森多边形(Voronoi Diagram)-arcgis操作
  • Vue使用Sortablejs拖拽排序 视图显示与数据不一致、拖拽结束后回跳问题
  • excel如何做相关系数分析
  • 【网络原理】TCP异常处理(二):连接异常
  • 脑机接口:重塑人类未来的神经增强革命
  • HarmonyOS NEXT 诗词元服务项目开发上架全流程实战(二、元服务与应用APP签名打包步骤详解)
  • 什么是 MCP?AI 应用的“USB-C”标准接口详解
  • CentOS环境下搭建seata(二进制、MySQL)
  • [计算机网络]物理层
  • 智能终端出海服务创新联合体成立
  • 南京航空航天大学启动扁平化改革:管理岗规模控制在20%,不再统一设科级机构
  • 光明日报:回应辅警“转正”呼声,是一门政民互动公开课
  • 打造沪派水乡的“湿意”,上海正在保护营造一批湿地空间
  • 美国通过《删除法案》:打击未经同意发布他人私密图像,包括“深度伪造”
  • 发挥全国劳模示范引领作用,加速汽车产业电智化转型