原创未发表!24年新算法CPO优化ICEEMDAN实现分解+四种熵值+频谱图+参数变化图+相关系数图!

作品简介

声明:文章是从本人公众号中复制而来,因此,想最新最快了解各类智能优化算法及其改进的朋友,可关注我的公众号:强盛机器学习,不定期会有很多免费代码分享~

今天为大家带来一期CPO-ICEEMDAN分解代码,知网和WOS都是搜不到的!可以说是尚未发表的创新点!

由于 ICEEMDAN 方法的分解效果取决于白噪声幅值权重(Nstd)和噪声添加次数(ME),因此可以用优化算法进行寻优!同时,为了满足大家各种需求,增强创新性、增加论文篇幅,程序里附带还附带了ICEEMDAN分解图、频谱图、参数变化图、相关系数图

适应度可函数可任选包络熵、排列熵、样本熵、信息熵四种,可完全满足你的需求!

特别需要指出的是,我们在各个学术平台上搜索CPO-ICEEMDAN,都是完全搜索不到这个模型的!!!不信的可以看下面截图!

知网平台:

WOS平台:

数据介绍

在分解模型的输入时,一般只输入一列数据即可,比如信号、时间序列、功率等等,为了方便大家操作,这里使用Excel输入!以一列信号(时间序列)为例,展示数据输入格式。

大家在更换自己的数据时,只需替换这一列放想要分解的信号等等内容,无需更改代码,非常方便!如果你是mat格式等文件的话,可以复制数据到Excel中!

优化流程

以下这些内容,如果大家需要用这个程序写论文,都是可以直接借鉴参考的!

由于 ICEEMDAN 方法的分解效果取决于白噪声幅值权重(Nstd)和噪声添加次数(ME)。因此,采用24年新算法CPO算法对 ICEEMDAN 的2个参数进行优化,适应度函数采用包络熵(或排列熵、信息熵、样本熵自己选),如果适应度值越小,则代表分解的效果越好。通过优化和更新,来确定最终的最佳参数组合(Nstd, NE)。

    优化的步骤如下:

    (1)CPO算法的种群初始化,设置 CPO 的迭代次数和种群规模,并设置 ICEEMDAN 算法的参数优化范围;

    (2)利用 ICEEMDAN 分解齿轮箱振动信号,并计算各个 IMF 分量的包络熵,以包络熵的最小值为适应度函数;

    (3)判断优化是否达到算法的终止条件,若是,则继续下一步;若否,则更新种群位置,并返回第(2)步;

    (4)保存最优的 ICEEMDAN 参数组合,并将其代入至 ICEEMDAN 中,为ICEEMDAN 构建CPO算法;

    (5)利用CPO-ICEEMDAN 方法分解齿轮箱振动信号,得到最佳的 IMF 分量。

以上所有流程,作者都已精心整理过代码,都可以一键运行main直接出图!

适用平台:Matlab推荐在2021以上,没有的文件夹里已经免费提供安装包,直接下载即可!

创新点

以下这些文字,如果大家需要用这个程序写论文,都是可以直接搬运的!

使用ICEEMDAN的创新点在于:

ICEEMDAN(改进的完全集成的经验模态分解自适应噪声)算法相较于原始的EMD及其改进版本,如集成经验模态分解(EEMD)和完全集成经验模态分解(CEEMDAN),ICEEMDAN效果更佳!比如:

1.自适应噪声添加机制:ICEEMDAN改进了噪声添加过程,通过自适应地调整添加到信号中的噪声水平,以提高分解质量。这种自适应机制能够基于信号的特性,如能量或频谱分布,动态调整噪声水平,从而优化分解过程。

2.分解效率的提高:通过优化算法的内部迭代机制,ICEEMDAN减少了不必要的计算,提高了分解效率。这包括改进的极值点检测算法和插值方法,这些优化使得算法能够更快地收敛到最终结果。

3.模态混叠的减少:模态混叠是EMD及其变体中的一个常见问题,即不同频率的信号成分在分解过程中相互干扰。ICEEMDAN通过更精确的噪声水平调整和改进的分解策略,有效减少了模态混叠现象。

使用CPO冠豪猪优化算法创新点在于:

冠豪猪优化器刚刚于2024年1月发表在中科院1区顶级SCI期刊Knowledge-Based Systems上!实验结果表明,NRBO算法在大部分函数上均取得了最优结果!你先用,你就是创新!

图片

之前推文有做过CPO和23年新算法RIME的比较,效果显而易见!对比代码可以免费获取!链接如下

2024年新算法-冠豪猪优化算法(CPO)-公式原理详解与性能测评 附赠Matlab代码

参考文献

[1]陈爱午,王红卫.基于HBA-ICEEMDAN和HWPE的行星齿轮箱故障诊断[J].机电工程,2023,40(08):1157-1166.​

结果展示

原始信号图:

适应度迭代曲线:

两个参数的变化曲线图!:

ICEEMDAN分解结果:

频谱图(这里IMF8即为残差,名字不同而已,其实都一样的):

相关系数图:

结果显示:

最后,窗口也会输出方便各个结果,非常方便和清晰!

同时,为了方便大家存储数据,程序也会自动输出分解结果的Excel,这边展示一下程序文件!

所有图片替换Excel后均可一键运行main生成,Matlab比Python配置环境什么方便多了!非常适合新手小白!

其他更多代码可复制以下链接:

https://docs.qq.com/sheet/DT1hWRkpoVVJ3TGZv?tab=BB08J2



创作时间: