柯西变异和自适应权重优化的蝴蝶算法[通俗易懂]

柯西变异和自适应权重优化的蝴蝶算法[通俗易懂]文章目录一、理论基础1、蝴蝶优化算法2、改进的蝴蝶优化算法(1)柯西变异(2)自适应权重(3)动态切换概率策略(4)算法描述二、函数测试与结果分析三、参考文献四、Matlab仿真程序一、理论基础1、蝴蝶优化算法请参考这里。2、改进的蝴蝶优化算法为了改进蝴蝶算法容易陷入局部最优和收敛精度低的问题,本文从三个方面对蝴蝶算法进行改进。首先通过引入柯西分布函数的方法对全局搜索的蝴蝶位置信息进行变异,提高蝴蝶的全局搜索能力;其次通过引入自适应权重因子来提高蝴蝶的局部搜索能力;最后采用动态切换概率ppp平衡算

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

一、理论基础

1、蝴蝶优化算法

请参考这里

2、改进的蝴蝶优化算法

为了改进蝴蝶算法容易陷入局部最优和收敛精度低的问题,本文从三个方面对蝴蝶算法进行改进。首先通过引入柯西分布函数的方法对全局搜索的蝴蝶位置信息进行变异,提高蝴蝶的全局搜索能力;其次通过引入自适应权重因子来提高蝴蝶的局部搜索能力;最后采用动态切换概率 p p p平衡算法局部搜索和全局搜索的比重,提升了算法的寻优性能。因此本文提出一种混合策略改进的蝴蝶优化算法(CWBOA)。

(1)柯西变异

针对蝴蝶优化算法易陷入局部最优的特点,利用柯西变异来增加种群的多样性,提高算法的全局搜索能力,增加搜索空间。柯西分布函数在原点处的峰值较小但在两端的分布比较长,利用柯西变异能够在当前变异的蝴蝶个体附近生成更大的扰动从而使得柯西分布函数的范围比较广,采用柯西变异两端分布更容易跳出局部最优值。本文融入柯西算子,充分利用柯西分布函数两端变异的效果来优化算全局最优个体,使得算法能够更好地达到全局最优。
在求得当前最优解后,本文使用公式 (1)所示的更新公式对当前全局最优解进行变异处理。 x n e w b e s t = x b e s t + x b e s t × Cauchy ( 0 , 1 ) (1) x_{newbest}=x_{best}+x_{best}×\text{Cauchy}(0,1)\tag{1} xnewbest=xbest+xbest×Cauchy(0,1)(1)

(2)自适应权重

自适应权重公式如式(2)所示 w = s i n ( π t 2 ⋅ i t m a x + π ) + 1 (2) w=sin(\frac{\pi t}{2\cdot itmax}+\pi)+1\tag{2} w=sin(2itmaxπt+π)+1(2)其中, t t t为当前迭代次数, i t m a x itmax itmax为最大迭代次数。
改进后的局部搜索公式为 x i t + 1 = w ⋅ x i t + ( r 2 × x j t − x k t ) × f i (3) x_i^{t+1}=w\cdot x_i^t+(r^2×x_j^t-x_k^t)×f_i\tag{3} xit+1=wxit+(r2×xjtxkt)×fi(3)通过融合自适应权重因子 w w w,使蝴蝶个体具有更好的局部寻优能力。

(3)动态切换概率策略

引入动态切换概率来平衡局部开采和全局开采的比重,来实现更好的寻优策略。动态切换概率 p p p的公式如下 p = 0.6 − 0.1 × ( M a x I t e r − t ) / M a x I t e r (4) p=0.6-0.1×(MaxIter-t)/MaxIter\tag{4} p=0.60.1×(MaxItert)/MaxIter(4)

(4)算法描述

CWBOA的具体执行步骤如下:
在这里插入图片描述


图1 改进算法的流程图

二、函数测试与结果分析

本文选取了基于柯西变异和动态自适应权重的蝴蝶优化算法(CWBOA) 、基本蝴蝶算法 (BOA)、鲸鱼算法(WOA)以及花授粉算法(FPA)进行对比。为了实验的公平、客观性,本文将所有算法的初始种群规模统一设为30, 迭代次数设置为500,四个算法的共有参数保持一致。CWBOA和BOA 中的 c c c感官形态设置为0.01, a a a幂指数在迭代过程从0.1迭代到0.3;基本的BOA和FPA中的切换概率均为 p = 0.8 p=0.8 p=0.8
为了验证改进后的BOA在收敛性和鲁棒性两方面的性能上更优,本文基于14个测试函数进行对比实验,标准测试函数的信息见表1。


表1 测试函数的基本信息

在这里插入图片描述本文以f1、f3、f7、f9、f11、f12、f14为例。
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述最大值、最小值、平均值和标准差显示如下:

函数:F1
BOA:最大值: 1.4499e-11,最小值:1.1241e-11,平均值:1.2801e-11,标准差:8.858e-13
WOA:最大值: 7.3975e-73,最小值:2.3916e-85,平均值:3.131e-74,标准差:1.353e-73
FPA:最大值: 23803.0104,最小值:947.6602,平均值:4173.2952,标准差:5457.3121
CWBOA:最大值: 0,最小值:0,平均值:0,标准差:0
函数:F3
BOA:最大值: 5.7184e-09,最小值:2.2932e-09,平均值:4.4704e-09,标准差:1.278e-09
WOA:最大值: 8.9851e-50,最小值:4.8473e-58,平均值:5.076e-51,标准差:1.8277e-50
FPA:最大值: 8710.4476,最小值:28.1287,平均值:513.6911,标准差:1768.5884
CWBOA:最大值: 4.7981e-249,最小值:7.7934e-279,平均值:1.6759e-250,标准差:0
函数:F7
BOA:最大值: 0.41445,最小值:1.7408e-13,平均值:0.068926,标准差:0.15676
WOA:最大值: 0,最小值:0,平均值:0,标准差:0
FPA:最大值: 2.755,最小值:2.959e-11,平均值:0.10097,标准差:0.50222
CWBOA:最大值: 0,最小值:0,平均值:0,标准差:0
函数:F9
BOA:最大值: 1.2352e-11,最小值:8.7385e-12,平均值:1.012e-11,标准差:1.0014e-12
WOA:最大值: 5.2454e-05,最小值:1.6577e-46,平均值:4.0482e-06,标准差:1.0357e-05
FPA:最大值: 3505.7816,最小值:70.2088,平均值:711.0633,标准差:1036.3243
CWBOA:最大值: 0,最小值:0,平均值:0,标准差:0
函数:F11
BOA:最大值: 6.6915e-09,最小值:5.2465e-09,平均值:6.057e-09,标准差:3.692e-10
WOA:最大值: 7.9936e-15,最小值:8.8818e-16,平均值:4.6777e-15,标准差:2.6279e-15
FPA:最大值: 19.9631,最小值:14.2613,平均值:17.6983,标准差:1.6073
CWBOA:最大值: 8.8818e-16,最小值:8.8818e-16,平均值:8.8818e-16,标准差:0
函数:F12
BOA:最大值: 7.7948e-12,最小值:8.4921e-13,平均值:4.5165e-12,标准差:2.1098e-12
WOA:最大值: 0,最小值:0,平均值:0,标准差:0
FPA:最大值: 223.7537,最小值:9.77,平均值:31.449,标准差:40.2159
CWBOA:最大值: 0,最小值:0,平均值:0,标准差:0
函数:F14
BOA:最大值: 0.043863,最小值:7.9381e-14,平均值:0.026527,标准差:0.021455
WOA:最大值: 0.043671,最小值:0,平均值:0.011645,标准差:0.019642
FPA:最大值: 0.047395,最小值:8.7206e-05,平均值:0.011072,标准差:0.015677
CWBOA:最大值: 0,最小值:0,平均值:0,标准差:0

Jetbrains全家桶1年46,售后保障稳定

由函数的收敛曲线可知,改进的CWBOA在收敛的速度和精度上要优于BOA、WOA、FPA。

三、参考文献

[1] 高文欣, 刘升, 肖子雅, 等. 柯西变异和自适应权重优化的蝴蝶算法[J]. 计算机工程与应用, 2020, 56(15): 43-50.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213532.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • FLAG_ACTIVITY_NEW_TASK谨慎使用「建议收藏」

    FLAG_ACTIVITY_NEW_TASK谨慎使用「建议收藏」前段时间在适配android权限的时候,遇到一问题1::在Activity的onCreate中去申请权限2:对申请结果进行判断,如果全部拒绝了权限,则弹出退出或者是去设置中打开权限其中点击设置中打开权限的时候启动activity时添加NEW_TASKTAG.并且对返回结果进行判断,如果仍然没有权限的时候,程序直接finish结果用户点击了设置-权限,去打开或者关闭权限,并且按back键返回后,a…

    2022年10月6日
    5
  • spring 整合 mybatis原理

    spring 整合 mybatis原理SqlSessionFactoryBean的创建1.SqlSessionFactoryBean这个类实现了三个接口,一个是InitializingBean,另一个是FactoryBean,还有就是ApplicationListener接口。下面说明一下实现了这三个接口的,有什么作用InitializingBean接口:实现了这个接口,那么当bean初始化的时候,spring就会调用该接口的实现…

    2022年6月3日
    47
  • vmware workstation15.5 密钥_senorita是哪国语言

    vmware workstation15.5 密钥_senorita是哪国语言Workstation 11.0.0多国语言(含简体中文)+永久激活密钥”alt=”VMware Workstation 11.0.0多国语言(含简体中文)+永久激活密钥”src=”http://s7.sinaimg.cn/mw690/001gFAKHgy6O5Pq5emy06&690″width=”690″height=”239″> 昨天,VMware虚拟机11.0简体中文版正式

    2025年11月16日
    4
  • mysql创建数据库的步骤_MySQL创建数据表

    mysql创建数据库的步骤_MySQL创建数据表MYSQL建立数据库的步骤:通过练习查询、创建数据库,并且向数据库内单个或通过txt文件批量插入数据的方法。

    2022年9月25日
    3
  • 淘宝店铺固定背景代码

    淘宝店铺固定背景代码全屏固定背景是指在淘宝店铺里下拉滚动条时背景依然位置不动 不会跟随滚动条滚动的全屏背景 效果在线展示 http www tbzxiu com zx xinwangpu 14 htm 如果要制作全屏固定背景 首先要开通新旺铺专业版 新旺铺专业版全屏固定背景制作教程第一步 制作背景素材网店装修网提供了一套绿色的背景素材 适合各种类型的淘宝店铺使用 点击下

    2025年12月3日
    7
  • windows程序设计第五版_windows程序设计入门

    windows程序设计第五版_windows程序设计入门Ellipse函数的用法函数功能:该函数用于画一个椭圆,椭圆的中心是限定矩形的中心,使用当前画笔画椭圆,用当前的画刷填充椭圆。函数原型:BOOL Ellipse(HDC hdc, int nLeftRect, int nTopRect, nRightRect, int nBottomRect);参数:hdc:设备环境句柄。nLeftRect:指定限定矩形左上角的X坐标。nTopRect…

    2022年8月18日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号