原创!

您所在的位置:网站首页 灰狼算法英文怎么写 原创!

原创!

2024-07-04 19:22| 来源: 网络整理| 查看: 265

麻雀搜索算法(SSA)是薛建凯等人[1]提出的一种群体智能优化算法,是受麻雀觅食和躲避捕食者行为启发而设计出的算法。该算法于2020年首次提出,具有局部搜索能力强、调整参数少等特点,已成功应用于CT图像的现场检测、电池堆参数的优化识别、机器学习算法的参数优化等实际问题中。

但麻雀搜索算法在面对复杂优化问题时仍有全局搜索能力较弱、容易陷入局部最优、对初始解的依赖性等问题。为克服以上缺陷,卡卡(我)在本文提出了混合灰狼层次结构的自适应麻雀搜索算法。

00 目录

1 麻雀搜索算法原理

2 改进的麻雀搜索算法

3 代码目录

4 算法性能

5 源码获取

01 麻雀搜索算法原理

麻雀搜索算法原理及其MATLAB代码在卡卡往期文章中有过叙述,这里不再说明,感兴趣的朋友可以找我的往期文章

02 改进的麻雀搜索算法

2.1 混沌初始化策略

群体的算法的初始化影响其搜索性能。由于没有先验信息,SSA中的麻雀通常是由随机初始化产生的。这种策略在某种意义上是有用的。但是,有时候麻雀在搜索域中的分布并不均匀,这可能会使麻雀远离全局最优解,导致收敛速度较低。混沌具有遍历性、随机性和规律性等特征,是非线性系统中的一种普遍现象。

目前文献中常用的混沌扰动方程有Logistic映射和Tent映射等。由文献[2]可知Logistic映射的分布特点是:中间取值概率比较均匀,但在两端概率特别高,因此当全局最优点不在设计变量空间的两端时,对寻找最优点是不利的。而Tent混沌映射结构简单,具有比Logistic混沌映射更好的遍历均匀性和更快的搜索速度,但 Tent映射迭代序列中存在小周期, 还存在不稳定周期点, 为避免Tent混沌序列在迭代时落入小周期点和不稳定周期点,在原有的Tent 混沌映射表达式上引入一个随机变量rand(0, 1) × 1 /N[3]。则改进后的Tent混沌映射表达式如下:

在这里插入图片描述

其中: N 是序列内粒子的个数。引入随机变量rand(0, 1) /N 不仅仍然保持了Tent混沌映射的随机性、遍历性、规律性,而且能够有效避免迭代落入小周期点和不稳定周期点内。本文算法引入的随机变量,既保持了随机性, 又将随机值控制在一定的范围之内,保证了Tent混沌 的规律性。

在这里插入图片描述

图显示了Logistic、Tent和改进的Tent混沌映射产生的混沌序列在二维区域中的初始分布,可以观察到,改进后的Tent混沌映射的分布均匀性较好,因此本文以改进Tent混沌性来代替麻雀搜索算法的随机初始化,以提高和改善初始种群在搜索空间上的分布质量,加强其全局搜索能力,从而提高算法求解精度。

2.2 比例自适应变化

在 SSA算法中,发现者和加入者的数目比例保持不变,这会导致在迭代前期,发现者的数目相对较少,无法对全局进行充分的搜索,在迭代后期,发现者的数目又相对较多,此时已不需要更多的发现者进行全局搜索,而需要增加加入者的数量进行精确的局部搜索。为解决这个问题,提出发现者-加入者自适应调整策略,该策略在迭代前期,发现者可以占种群数目的多数,随着迭代次数的增加,发现者的数目自适应减少,加入者的数目自适应增加,逐步从全局搜索转为局部精确搜索,从整体上提高算法的收敛精度。发现者和加入者数目调整式为 在这里插入图片描述

在这里插入图片描述

式中:pNum 为发现者数目;sNum为加入者数目;b为比例系数,用于控制发现者和加入者之间的数目;k为扰动偏离因子,对非线性递减值 r 进行扰动。如图,本文提出的发现者和追随者的数量之比随着迭代的进行逐渐收敛,可以在早期的全局搜索和后期的局部优化之间达到平衡。 在这里插入图片描述

2.3 动态惯性权重

根据SSA算法机制,注意到从每次迭代开始发现者向最优解的移动过程容易呈现出“跳跃式”的步进状态,该模式固然有利于提高算法的收敛速度,但种群在较短的时间内大量汇集将在一定程度上降低搜索过程的多样性,并出现因忽略搜索盲点和搜索范围不足而陷入局部极值。同时,且发现者在其更新过程中对自身位置的利用程度始终未发生改变。受粒子群优化算法以及文献[4]启发,本文将惯性权重的扰动策略引入到麻雀搜索算法中来更新发现者的位置,从而提高发现者的全局搜索能力,使原种群中适应度较好的个体在其原位置的不同地点之间扰动,改善麻雀种群之间的信息交换,改进的发现者位置更新公式如下:

在这里插入图片描述

在这里插入图片描述

其中,wmax和wmin是权重变化的最大和最小值,Tmax为最大迭代数,t为当前迭代次数。在迭代前期,较大的惯性权值有利于发现者的全局探索, 而迭代后期较小的惯性权值有利于发现者的局部搜索.提高算法的收敛速度和精度。

在这里插入图片描述

2.4 等级制度

根据侦察者位置更新的公式: 在这里插入图片描述

在遇到危险时,麻雀个体逃生方式单调狭窄,并在更新中仅考虑当前状态的最优解,没有考虑其他次优解,将过早使全部个体收敛于当前最优个体,若当前最优个体非全局极值点,将使结果容易陷入局部解。所以引入灰狼优化算法(GWO)中的等级制度策略,选取前3个历史最优位置{Xα, Xβ,Xγ}以得到潜在的最优解,该策略能够更为灵活搜索附近的可靠解,降低了SSA陷入局部最优的概率。改进后的侦察者位置更新公式为: 在这里插入图片描述

其中,各头狼对应权重θi 计算公式如下: 在这里插入图片描述

通过引入等级制度,使得SSA的逃生范围扩大,但是个体在向最优解靠近的过程中,由式得到的个体更新位置是当前最优解、次优解和再次优解的加权平均和,具有一定的随机性,所以更新的位置不一定更优,即算法可能不会收敛,甚至出现发散现象。为了使算法能够收敛到最优解,根据差分进化中的“贪婪”策略,个体的更新位置只选取当前的代价最优值。当得到的更新位置Xnew(t+1)的适应度优于当前的位置,即fnew



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3