时序分解 | TTNRBO-VMD改进牛顿-拉夫逊算法优化变分模态分解
目录
- 时序分解 | TTNRBO-VMD改进牛顿-拉夫逊算法优化变分模态分解
- 效果一览
- 基本介绍
- 程序设计
- 参考资料
效果一览
基本介绍
(创新独家)TTNRBO-VMD改进牛顿-拉夫逊优化算优化变分模态分解TTNRBO–VMD
优化VMD分解层数K和惩罚因子alpha,采用西储大学数据集,matlab代码
一、内容:
- 以包络熵做为适应度函数
- 包含 Hilbert边际谱图
- 包含TTNRBO–VMD 迭代曲线图
- 包含 VMD 分解图
- 包含频域图
- 代码里含有注释
二、TTNRBO瞬态三角牛顿-拉夫逊优化算法是在牛顿-拉弗森优化算法(2024年2月发表在中科院2区Top SCI期刊《Engineering Applications of Artificial Intelligence》)基础上改进,是一种受瞬态搜索优化器(TSO)和牛顿-拉弗森优化启发而设计的混合优化算法;优化策略包括:
1、陷阱规避操作符的决策因子(DF)
2、动态参数delta
3、动态调整DF
4、额外的探索分量
5、探索增强分量
6、陷阱规避操作符的动态调整
程序设计
- 完整源码和数据获取方式私信博主回复:TTNRBO-VMD改进牛顿-拉夫逊优化算优化变分模态分解。
%% 设置参数
lb = [0.15 50]; % 噪声幅值权重的优化范围设置为[0.15,0.6],噪声添加次数的优化范围为[50,600]
ub = [0.6 600];
dim = 2; % 优化变量数目
Max_iter=20; % 最大迭代数目
SearchAgents_no=10; % 种群规模
%% 画适应度函数曲线图,并输出最佳参数
figure
plot(Convergence_curve,'linewidth',1);
title('迭代曲线图')
xlabel('迭代次数');
ylabel('适应度值');
set(gcf,'color','w')
%% CEEMDAN分解图
X = da;
Nstd = bestX(1);
NR = fix(bestX(2));
MaxIter = 10;
[anmodes,its]=ceemdan(X,Nstd,NR,MaxIter);
%% 频谱图
fs=1;
N=400;
u=anmodes;
figure('Name','频谱图','Color',[1 1 1])
for i=1:size(u,1)
subplot(size(u,1) ,1,i)
[cc,y_f]=plot_fft(u(i,:),fs,1);
plot(y_f,cc,'b','LineWIdth',1);
ylabel(['IMF',num2str(i)]);
end
参考资料
[1] https://blog.csdn.net/kjm13182345320/article/details/129215161
[2] https://blog.csdn.net/kjm13182345320/article/details/128105718## 标题