热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

高斯同余理论_高斯模糊算法

高斯同余理论_高斯模糊算法针对鲸鱼优化算法在处理高维问题时存在收敛速度慢、容易陷入局部最优和收敛精度低等问题,提出一种基于对数惯性权重和高斯差分变异的鲸群优化算法。通过高斯差分变异

文章目录

  • 一、理论基础
    • 1、鲸群优化算法
    • 2、改进鲸群优化算法
      • (1)高斯差分变异策略
      • (2)对数惯性权重策略
      • (3)IGWOA算法步骤
  • 二、实验测试及分析
  • 三、参考文献
一、理论基础

1、鲸群优化算法

请参考这里。

2、改进鲸群优化算法


(1)高斯差分变异策略

利用当前最优鲸的位置、当前鲸的位置与鲸群中随机个体进行高斯差分,由于高斯差分变异可以在当前变异个体附近生成更大的扰动,使得算法更容易跳出局部极值,其数学表达式如下: X ( t + 1 ) = p 1 ⋅ f 1 ⋅ ( X ∗ − X ( t ) ) + p 2 ⋅ f 2 ⋅ ( X r a n d − X ( t ) ) (1) \boldsymbol X(t+1)=p_1\cdot f_1\cdot(\boldsymbol X^*-\boldsymbol X(t))+p_2\cdot f_2\cdot(\boldsymbol X_{rand}-\boldsymbol X(t))\tag{1} X(t+1)=p1f1(XX(t))+p2f2(XrandX(t))(1)其中, p 1 p_1 p1 p 2 p_2 p2为权重系数,取值均为0.5; f 1 f_1 f1 f 2 f_2 f2是以产生均值为0、方差为1的高斯分布随机数函数作为高斯分布函数系数; X ∗ \boldsymbol X^* X为当前最优个体位置; X r a n d \boldsymbol X_{rand} Xrand为随机选择鲸的位置向量; X ( t ) \boldsymbol X(t) X(t)为当前鲸的个体位置。
在算法迭代过程中根据式(1)对鲸群个体进行扰动,算法迭代前期,由于种群分布不均,所以个体位置分布差距较大,因此算法主要通过差分变量对个体进行扰动,从而产生多样性个体,使算法能够快速收敛;随着算法迭代的不断进行,鲸群大多数个体位置不会发生太大变化,此时算法主要通过高斯分布函数系数对种群进行扰动,从而帮助算法降低陷入局部最优
的可能性,避免发生早熟。将引入高斯差分变异策略的鲸群算法命名为GWOA。

(2)对数惯性权重策略

对数惯性权重策略如下: w = ( t / M a x _ i t e r ) × ( lg ⁡ w m a x / lg ⁡ w m i n ) − lg ⁡ w m a x (2) w=(t/Max\_iter)×(\lg w_{max}/\lg w_{min})-\lg w_{max}\tag{2} w=(t/Max_iter)×(lgwmax/lgwmin)lgwmax(2)其中, t t t为当前迭代次数; M a x _ i t e r Max\_iter Max_iter为最大迭代次数; w m a x w_{max} wmax表示惯性权重最大值, w m i n w_{min} wmin表示惯性权重最小值。权重将随着迭代次数增加而增加。新的位置更新公式如下: X ( t + 1 ) = w ⋅ X ∗ − A ⋅ D (3) \boldsymbol X(t+1)=w\cdot\boldsymbol X^*-\boldsymbol{A\cdot D}\tag{3} X(t+1)=wXAD(3)所以,本文采用对数惯性权重策略,迭代前期,惯性权重提高鲸群全局搜索能力,使鲸群个体能够更快地搜寻到最优猎物;迭代后期,通过惯性权重线性增长策略,使惯性权重增大,从而使算法在后期局部开发过程中更易跳出局部极值,从而寻找到最优值。将引入对数惯性权重和高斯差分变异策略的鲸群算法命名为IGWOA。

(3)IGWOA算法步骤

对原始WOA进行高斯差分变异与对数惯性权重两方面改进,得到的IGWOA的算法伪代码,如下所示:
在这里插入图片描述


图1 IGWOA算法伪代码

二、实验测试及分析

IGWOA与WOA和GWOA对24个测试函数进行算法比较,与WOA和GWOA进行比较,各算法的参数设置为:种群规模均设置为30, p 1 = 0.5 , p 2 = 0.5 , w m a x = 0.9 , w m i n = 0.4 , M a x _ i t e r = 500 p_1=0.5,p_2=0.5,w_{max}=0.9,w_{min}=0.4,Max\_iter=500 p1=0.5,p2=0.5,wmax=0.9,wmin=0.4,Max_iter=500,3种算法对每个函数独立运行30次,记录它们的最大值、最小值、平均值与标准差。以F1~F3为例。
下图为对F1的测试寻优曲线。
在这里插入图片描述最大值、最小值、平均值与标准差显示如下:

函数:F1
WOA:最大值: 7.8859e-66,最小值:6.4042e-86,平均值:2.6287e-67,标准差:1.4398e-66
GWOA:最大值: 2.2057e-193,最小值:4.1476e-219,平均值:7.3525e-195,标准差:0
IGWOA:最大值: 0,最小值:0,平均值:0,标准差:0

下图为对F2的测试寻优曲线。
在这里插入图片描述最大值、最小值、平均值与标准差显示如下:

函数:F2
WOA:最大值: 1.5564e-49,最小值:4.3065e-58,平均值:8.7126e-51,标准差:2.9127e-50
GWOA:最大值: 1.1184e-101,最小值:4.7713e-110,平均值:6.4373e-103,标准差:2.1564e-102
IGWOA:最大值: 6.9392e-185,最小值:3.5595e-198,平均值:3.1056e-186,标准差:0

下图为对F3的测试寻优曲线。
在这里插入图片描述最大值、最小值、平均值与标准差显示如下:

函数:F3
WOA:最大值: 60074.57,最小值:44313.3563,平均值:50857.0743,标准差:3582.8828
GWOA:最大值: 1.5995e-183,最小值:1.3018e-221,平均值:5.3318e-185,标准差:0
IGWOA:最大值: 0,最小值:0,平均值:0,标准差:0

综上,IGWOA在收敛精度、收敛速度、个体多样性以及鲁棒性方面与其他改进群智能优化算法相比具有优势。

三、参考文献

[1] 陈雷, 尹钧圣. 高斯差分变异和对数惯性权重优化的鲸群算法[J]. 计算机工程与应用, 2021, 57(2): 77-90.


推荐阅读
  • 网易严选Java开发面试:MySQL索引深度解析
    本文详细记录了网易严选Java开发岗位的面试经验,特别针对MySQL索引相关的技术问题进行了深入探讨。通过本文,读者可以了解面试官常问的索引问题及其背后的原理。 ... [详细]
  • 深入理解C++中的KMP算法:高效字符串匹配的利器
    本文详细介绍C++中实现KMP算法的方法,探讨其在字符串匹配问题上的优势。通过对比暴力匹配(BF)算法,展示KMP算法如何利用前缀表优化匹配过程,显著提升效率。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 利用存储过程构建年度日历表的详细指南
    本文将介绍如何使用SQL存储过程创建一个完整的年度日历表。通过实例演示,帮助读者掌握存储过程的应用技巧,并提供详细的代码解析和执行步骤。 ... [详细]
  • 自学编程与计算机专业背景者的差异分析
    本文探讨了自学编程者和计算机专业毕业生在技能、知识结构及职业发展上的不同之处,结合实际案例分析两者的优势与劣势。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • TechStride 网站
    TechStride 成立于2014年初,致力于互联网前沿技术、产品创意及创业内容的聚合、搜索、学习与展示。我们旨在为互联网从业者提供更高效的新技术搜索、学习、分享和产品推广平台。 ... [详细]
  • 本文深入探讨了二叉搜索树(Binary Search Tree, BST)及其操作,包括查找、插入和删除节点。同时,文章还介绍了平衡二叉树(AVL树)的概念及调整方法,并详细讨论了如何判断两个序列是否构成相同的二叉搜索树。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • 本文详细介绍了IBM DB2数据库在大型应用系统中的应用,强调其卓越的可扩展性和多环境支持能力。文章深入分析了DB2在数据利用性、完整性、安全性和恢复性方面的优势,并提供了优化建议以提升其在不同规模应用程序中的表现。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • SQL中UPDATE SET FROM语句的使用方法及应用场景
    本文详细介绍了SQL中UPDATE SET FROM语句的使用方法,通过具体示例展示了如何利用该语句高效地更新多表关联数据。适合数据库管理员和开发人员参考。 ... [详细]
  • 深入理解Spring:Aware接口、异步编程与计划任务
    本文将带你深入了解Spring框架中的 Aware 接口、异步编程以及计划任务。通过具体示例和详细解释,帮助你掌握这些核心功能的实现原理和应用场景。 ... [详细]
author-avatar
719苗苗113
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有