多策略融合的随机自适应引力搜索算法

作者: 任玉艳 潘玥 郑凡 李真真 应佳盈

多策略融合的随机自适应引力搜索算法0

摘要:针对标准引力搜索算法存在的收敛速度过快、探索能力较弱以及容易陷入局部最小区域等问题,提出了一种改进的随机自适应引力搜索算法(RSGSA) 。首先,引入随机策略以改进引力常数,从而提高算法在迭代初期的全局探索能力,避免过早收敛。其次,利用混沌序列提升总作用力的随机性和遍历性,增强算法的突变能力。最后,在粒子速度更新中引入自适应权重,并在粒子位置更新中引入随机变量,以平衡算法的全局探索能力和局部挖掘能力。通过对多个基准函数进行仿真测试,并与其他智能优化算法进行对比,实验结果表明,随机自适应引力搜索算法在解决复杂基准函数时的寻优精度较引力搜索算法提高了约10个数量级。

关键词:引力搜索算法;随机策略;自适应权重

中图分类号:TP183 文献标识码:A

文章编号:1009-3044(2024)31-0024-03

开放科学(资源服务)标识码(OSID) :

0 引言

引 力 搜 索 算 法 (Gravitational Search Algorithm, GSA) 是由 Rashedi 等人[1] 提出的一种群体智能优化算法,灵感来源于万有引力定律。在该算法中,搜索空间中的粒子受到万有引力的影响,趋向于质量最大的粒子,而搜索空间中的最优位置始终是质量最大的粒子,从而找到优化问题的最优解。GSA 作为一种理论简单且易于收敛的优化方法,能够解决各类最优解问题,被广泛应用于路径优化、参数估计以及车间调度等多个领域[2-4]。然而,与其他算法相比,GSA 的收敛速度较快,这导致在整个寻优过程中的全局探索不足,容易陷入局部最优区域[5]。对引力搜索算法的参数进行有效控制在解决相关优化问题时尤为重要。张娜等人[6] 通过利用混沌映射初始化粒子并采用动态调整策略改进引力常数 G,结果表明改进后的算法能够有效克服 GSA 易于过早收敛和陷入局部最优的缺点。刘紫阳等人[7] 在 GSA 中引入莱维飞行以动态调整粒子位置,实验结果显示,改进的 GSA 具有更好的寻优精度和稳定性。Feng 等人[8] 将突变策略和精英主义选择策略引入引力搜索算法中,从而提高算法的探索能力和收敛速度。Mirjalili 等人[9]将 GSA 与粒子群算法(Particle Swarm Optimization, PSO) 进行混合,相较于 GSA 和 PSO,这种混合算法具有更好的局部最优逃逸能力且收敛速度更快。

为了更好地改善 GSA 易于早熟收敛的缺点,并提升算法寻优能力,本文提出了一种改进的随机自适应引力搜索算法(Random Self-adaptive Gravitational Search Algorithm, RSGSA) 。首先,使用随机策略改进引力常数 G,以提高算法的全局探索能力和突变能力。其次,将总作用力中的随机因子替换为混沌序列,以提升算法的随机性和遍历性。最后,在粒子更新过程中,对粒子速度引入自适应权重,并在粒子位置中加入随机变量,以平衡算法的全局搜索与局部搜索能力。本文针对6个基准测试函数进行了仿真实验,结果表明,相较于 GSA 和 PSO,RSGSA 在寻优精度上表现更优,能够更好地解决复杂优化问题。

1 引力搜索算法

在随机生成个体种群后,将其置于搜索空间中,作为粒子。在D 维搜索空间中,存在N 个粒子在万有引力的作用下不断运动。粒子i 的位置表达式如下:

Xi = (x1i ,x2i ,...,xdi,...,xDi); i = 1,2,...,d,...,N (1)

粒子i 在t 时刻于搜索空间的运动过程中,通过适应度函数不断更新惯性质量Mi (t),其表达式如下:

3 实验仿真与分析

为了验证RSGSA的性能,本实验将RSGSA与引力搜索算法(GSA) 和粒子群算法(PSO) 在6个常见的基准函数上进行测试。其中,f1、f2、f3为单峰基准测试函数,而f4、f5、f6为多峰基准测试函数。各基准函数的相关信息如表1所示。

本文在以下环境中进行了仿真实验:Intel Core i5-1035G1 [email protected] GHz,8.00 GB内存,Windows 10 操作系统,以及MATLAB 2019a。实验对本文算法进行了测试,并与GSA和PSO算法进行了对比。实验中,种群规模设置为100,最大迭代次数为200。为了避免偶然误差,每种基准函数进行了30次运行,并记录了各个算法的最优值、平均值和标准差。表2展示了粒子维度D=30时,RSGSA算法与PSO及GSA的对比结果。

如表2 所示,在单峰函数和多峰函数测试中,RSGSA算法的寻优结果均优于PSO和GSA,这验证了RSGSA在探索和开发能力方面的优势。在本文所选取的基准测试函数中,f1 ~ f3为单峰函数,旨在测试算法的全局搜索性能。以f1为例,GSA的寻优精度要高于PSO,而本文提出的RSGSA 在f1 上的寻优精度比GSA高约130个数量级,其均值与标准差均为最小,展现出绝对的优越性。f4 ~ f6为多峰函数,具有较多局部最优值,可测试算法脱离局部最优的能力。以f5为例,GSA和PSO的寻优结果与理论最优值相差较大,而本文提出的RSGS在f5上的寻优精度比GSA和PSO高约16个数量级。

4 结论

本文所提出的RSGSA算法通过引入随机策略来改进引力常数,从而提升了算法的全局探索能力。随机因子赋予粒子在进入局部最优区域时具备突变跳跃的能力。此外,在计算总作用力时,利用混沌序列进一步提升了算法的随机性,从而增强其突变性。最后,利用自适应权重调整粒子的移动速度,避免不规律运动,并在粒子位置更新过程中加入随机变量,从而平衡算法的全局探索能力和局部挖掘能力。通过对比实验验证了本文算法的有效性和优越性,与GSA 和PSO相比,该算法在收敛速度和寻优精度上均有显著提高。

【通联编辑:唐一东】

上一篇 点击页面呼出菜单 下一篇