目录

1 简介

2 变分模态分解VMD原理

3 GA优化VMD效果

3.1 遗传算法优化VMD各分量信号图像

3.2 全部图像

4 主要代码

main.m


1 简介

针对从滚动轴承振动信号中所提取的故障信息精度低的问题,利用遗传算法对变分模态分解模态个数K和惩罚参数α 寻优,目标函数为多尺度排列熵参数,再根据VMD处理信号得到若干模态分量,筛选后进一步提取能量熵作为特征向量。使用特征提取向量,可进行后续轴承故障诊断等工作。

2 变分模态分解VMD原理

VMD能够自适应匹配每种模态的最佳中心频率和有限带宽,实现固有模态分量(IMF)有效分离,
其核心思想是构建和求解变分问题。

VMD实现步骤为:

由VMD分解步骤可知,分解信号前需要设置合适的模态个数K和惩罚参数α,K取值过大会导致过分解,反之,则会欠分解,α 取值过大,会造成频带信息丢失,反之,会信息冗余,所以需要确定最佳参数组合[K,α]。目前多用中心频率观察法,通过观察不同K值下的中心频率确定K值,但该法具有偶然性,且只能确定模态个数K,无法确定惩罚参数α。

使用遗传算法(GA)对VMD变分模态分解的惩罚参数alpha与分解模态层数K进行寻优,以局部包络熵极小值作为适应度函数。[alpha, K] 为进化个体的位置,局部包络熵极小值为个体的适应度值。

3 GA优化VMD效果

3.1 遗传算法优化VMD各分量信号图像

1.时域图像

2.频谱图像

3.2 全部图像

4 主要代码

main.m

%% 基于遗传算法(genetic algorithm, GA))优化变分模态分解(variational mode decomposition,VMD)参数clc
clear
close all
% 读取数据
[file,path,indx]  = uigetfile({'*.xlsx';'*.xls';'*.txt';'*.*'},'File Selector');
if indx == 1||indx==2data=xlsread(strcat(path, file));
elseif indx == 3data=load(strcat(path, file));
elsewarning('请选择数据集进行实验');return;
end%采样频率
fs=12800;
% 读取前1000长度的信号
len=1000;
s=data(1:len);
% 采样时间
t = (0:len-1)/fs;%% 设定遗传算法参数
popsize =6;   % 种群大小
iter =30;   % 最大迭代次数
dim = 2;   % 变量个数
lb = [100 3];   % alpha范围 K范围   下限
ub = [2000 7];  % 上限
pc=0.8;                       %交叉概率,0和1之间
pm=0.2;                    %变异概率,0和1之间%% 遗传算法GA优化VMD参数tic ,  % 开始计时GA_VMD(popsize,iter,dim,lb,ub,pc,pm,0);  % 0表示不保存IMF,1,导出IMF并保存toc,  % 结束计时

遗传算法优化变分模态分解VMD包络熵和参数及MATLAB代码相关推荐

  1. 鲸鱼算法优化变分模态分解(VMD)包络熵和参数的特征提取及MATLAB代码实现

    目录 1 简介 2 变分模态分解VMD原理 3 鲸鱼优化算法优化VMD原理 3.1. 鲸鱼优化算法优化VMD原理及流程 3.2. 特征提取流程 4 优化效果 4.1. VMD各分量信号时域图 4.2. ...

  2. vmd变分模态分解程序matlab论坛_博士兼职辅导员论坛分享会第三期

    新一期经验分享报告会又来了!本次报告满满干货,快来看看都有些什么内容吧? 报告题目 齿轮箱关键零部件复合故障特征提取方法研究 报告摘要: 基于振动信号的复合故障特征提取技术一直以来都是旋转机械故障诊断 ...

  3. 利用智能算法优化参数的自适应变分模态分解,VMD实现混合储能系统的分频

    关键词:混合储能,VMD,麻雀搜索算法,遗传算法,混合储能容量配置优化,混合储能功率分配,利用智能算法优化参数的自适应变分模态分解,VMD实现混合储能系统的分频,高频分配给超级电容器,低频分配给蓄电池 ...

  4. 变分模态分解 python_浅谈VMD(变分模态分解)

    学号:19011210554   姓名:袁博 [嵌牛导读]:好多人看着VMD看博客最想知道的就是这东西的应用和大概步骤原理,而具体原理算法不太感兴趣,而且也不太容易看懂.本文既然是浅谈,就讲解一下VM ...

  5. matlab中使用VMD(变分模态分解)

    最近我们被客户要求撰写关于VMD(变分模态分解)的研究报告,包括一些图形和统计输出. 拨号音信号的变模分解 创建一个以4 kHz采样的信号,类似于拨打数字电话的所有键.将信号另存为MATLAB®时间数 ...

  6. 分解得到的时频域特征_【推荐文章】基于变分模态分解和广义Warblet变换的齿轮故障诊断...

    <机械传动>2018年  第42卷   第7期 文章编号:1004-2539(2018)07-0157-05 DOI:10.16578/j.issn.1004.2539.2018.07.0 ...

  7. 变分模态分解_Android小部件示例中的模态对话框(弹出)

    变分模态分解 在此示例中,我们将看到如何在主屏幕中创建一个可以打开弹出对话框的Android小部件. 如您所知,Android Widgets是小型应用程序,基本上可以做两件事. 按下时启动新的活动, ...

  8. 双隐藏层BP网络的matlab仿真,求遗传算法优化含有两个隐含层的BP神经网络的matlab程序...

    怎样用遗传算法优化含有两个隐含层的BP神经网络的matlab程序啊,这个代码是错的,可不知道错在哪,求高手帮忙解答,非常感谢! FieldD=[repmat(PRECI,1,N);repmat([-0 ...

  9. 【故障诊断】基于粒子群和多元宇宙算法优化最大相关峭度解卷积(MCKD)实现信号处理附matlab代码

    1 内容介绍 1.1研究背景及意义 制造业的发展支撑着国家经济的稳定快速发展,是人民生活幸福和国家局势 稳定的保障.发展制造业离不开科技创新.加强制造业创新.推动产业转型升级是 提升我国国际地位.实现 ...

  10. 鲁棒优化入门(4)-两阶段鲁棒优化及行列生成算法(CCG)超详细讲解(附matlab代码)

    本文的主要参考文献: Zeng B , Zhao L . Solving Two-stage Robust Optimization Problems by A Constraint-and-Colu ...

最新文章

  1. oracle里minis用法,Oracle初学者必知的39个问题
  2. 一步一步教你如何导出JAR包后将多个JAR包合并,并混淆
  3. wxpython开发的软件_Python GUI开发环境的搭建(wxPython)
  4. 从PHP5到PHP7自我封装MongoDB以及平滑升级
  5. TinkPHP框架学习-01基本知识
  6. 原创:PHP内核研究:HASH表和变量
  7. Dx11DemoBase 基类(三) 实例应用 【已实现】【附带源码】
  8. 5.1 vim介绍 5.2-5.3 vim颜色显示和移动光标、vim一般模式下移动光标 5.4 vim 一般模式下复制剪切粘贴...
  9. 4天卖断货3次!悄然登顶新书榜,这书绝对是四月最大黑马!
  10. APP测试——经典面试题分享
  11. 机器学习——数据的预处理(总结大全)
  12. 文本加密(PTA厦大慕课)
  13. LSB信息隐藏的卡方分析
  14. microsoftedge无限弹出_Win10升级之后edge浏览器总是弹出欢迎页面解决方法
  15. 计算机中丢失audiodsp,AudioDsp.dll(缺失AudioDsp.dll文件修复工具)V1.0 免费版
  16. 认知SaaS产品和MVP流程
  17. 上海社保金额精确计算公式
  18. WSTMART电商开源版安装教程-徐新帅-专题视频课程
  19. sau交流学习社区第三方登陆github--oauth来实现用户登录
  20. 【实际开发14】- 进阶 A

热门文章

  1. yagmail发送带图片和链接的邮件
  2. OpenSSL密码库算法笔记——第5.4章 椭圆曲线点的简介
  3. CSDN在线下载免费获取积分
  4. 苹果偷学微信代码,程序员小哥:天知道微信为什么会引用这个变量
  5. WCF技术内幕之面向服务
  6. Java 2 实用教程 第一章 Java入门
  7. xe android 联系人,Delphi XE 开发android后台服务例程
  8. 将华为路由器做成ftp服务器(实现上传下载功能)
  9. linux安装jdk8
  10. 佳能ir2002g无法扫描到计算机,佳能ir2002g扫描驱动官方版