请尊重原创劳动成果 转载请注明本文链接 及文章作者:机器学习之心 点击阅读原文或复制以下链接到浏览器获取文章完整源码和数据: https:///o/bread/mbd-ZZaUlJpy 效果 使用教程1 数据格式数据方便替换。 2 基本使用北方苍鹰算法NGO优化VMD,对其分解层数,惩罚因子数做优化,利用NGO优化算法确定其最佳参数,适应度函数为样本熵。 NGO-VMD北方苍鹰算法NGO优化VMD变分模态分解 可直接运行 分解效果好 适合作为创新点(Matlab完整源码和数据) 1.利用北方苍鹰算法算法优化vmd中的参数k、a,分解效果好,包含边际谱、频率图、收敛曲线等图,满足您的需求,使用者较少,适合作为创新点。 2.包含VMD超参数优化迭代过程图,凸显每次迭代过程的变化。 3.北方苍鹰算法(NGO)是一种新型的群智能优化算法,具有收敛速度快、寻优能力强等优点。 4.数据为excel数据,方便替换,运行主程序main即可,可直接运行matlab程序。 2 网络结构训练和测试
设置网络参数
function [Best_rime_rate,Best_rime,Convergence_curve,result]=RIME(N,Max_iter,lb,ub,dim,fobj)
fobj = @(x) fun(x,f,tau, DC, init, tol); [~,Target_pos,process] = NGO(pop,Max_iteration,lb,ub,dim,fobj);%优化函数 求K Alpha 熵值 %_________________________________________________________________________% % NGO 北方苍鹰优化算法 % %_________________________________________________________________________% function [Score,Best_pos,NGO_curve,result]=NGO(Search_Agents,Max_iterations,Lowerbound,Upperbound,dimensions,fobj) tic
disp('PLEASE WAIT, The program is running.')
Lowerbound=ones(1,dimensions).*(Lowerbound); % 变量的下限 Upperbound=ones(1,dimensions).*(Upperbound); % 变量的上限
X=[]; X_new=[]; fit=[]; fit_new=[]; NGO_curve=zeros(1,Max_iterations);
%% for i=1:dimensions X(:,i) = Lowerbound(i)+rand(Search_Agents,1).*(Upperbound(i) -Lowerbound(i)); % 初始种群 end for i =1:Search_Agents %L=X(i,:); fit(i)=fobj(X(i,:)); % 初始群体适应度评估 ) end
disp('打印迭代次数');
完整代码注意: class % @author : 机器学习之心 % 完整代码:https:///o/bread/mbd-ZZaUlJpy % @author : 机器学习之心
end
完属实不易,如果有用请留个赞 叭~ 未经允许本代码请勿作商业用途!!!
|