泛微e8做网站门户,网站优化时间,wordpress新建导航,上传网站步骤鲸鱼优化算法(Whale optimization algorithm, WOA)是Mirjalili根据座头鲸的捕食行为而提出来的#xff0c;算法对座头鲸的狩猎行为进行模仿#xff0c;通过对猎物的寻找#xff0c;然后攻击进行觅食#xff0c;以此来达到优化的目的#xff0c;已有很多学者将算法用于实际… 鲸鱼优化算法(Whale optimization algorithm, WOA)是Mirjalili根据座头鲸的捕食行为而提出来的算法对座头鲸的狩猎行为进行模仿通过对猎物的寻找然后攻击进行觅食以此来达到优化的目的已有很多学者将算法用于实际工程问题中今天咱们用鲸鱼优化算法优化一下VMD参数。 同样以西储大学数据集为例选用105.mat中的X105_BA_time.mat数据中1000个数据点。没有数据的看我这篇文章。西储大学轴承诊断数据处理matlab免费代码获取 选取四种适应度函数进行优化以此确定VMD的最佳k和α参数。四种适应度函数分别是最小包络熵最小样本熵最小信息熵最小排列熵。至于应该选择哪种作为自己的适应度函数大家可以看这篇文章。VMD为什么需要进行参数优化最小包络熵/样本熵/排列熵/信息熵适应度函数到底该选哪个 1.最小包络熵作为适应度函数 2.最小样本熵作为适应度函数 3.最小信息熵作为适应度函数 4.最小排列熵作为适应度函数 代码 %% 以最小包络熵、最小样本熵、最小信息熵、最小排列熵为目标函数任选其一采用WOA算法优化VMD求取VMD最佳的两个参数
clear
clc
close all
xz 4; %xz1 or 2, 选择1以最小包络熵为适应度函数选择2以最小样本熵为适应度函数选择3以最小信息熵为适应度函数选择4以最小排列熵为适应度函数
if xz 1 fobjEnvelopeEntropyCost; %最小包络熵
elseif xz 2fobjSampleEntropyCost; %最小样本熵
elseif xz 3fobjinfoEntropyCost; %最小信息熵
elseif xz 4fobjPermutationEntropyCost; %最小排列熵
end%% 选取数据
load 105.mat
da X105_DE_time(6001:7000); %这里选取105的DEtime数据注意这里替换为自己的数据即可数据形式为n行*1列列数必须为1。%% 设置参数
lb [100 3]; %惩罚因子和K的下限
ub [2500 10]; %惩罚因子和K的上限
dim 2; % 优化变量数目
Max_iter20; % 最大迭代数目
SearchAgents_no25; %种群规模%% 调用WOA函数
[fMin , bestX, Convergence_curve ] WOA(SearchAgents_no,Max_iter,lb,ub,dim,fobj,da);%% 画适应度函数曲线图并输出最佳参数
figure
plot(Convergence_curve,Color,[0.9 0.5 0.1],Marker,,LineStyle,--,linewidth,1);
title(Objective space)
xlabel(Iteration);
ylabel(Best score obtained so far);
legend(WOA优化VMD)
display([The best solution obtained by WOA is : , num2str(round(bestX))]); %输出最佳位置
display([The best optimal value of the objective funciton found by WOA is : , num2str(fMin)]); %输出最佳适应度值 大家注意看到xz这个变量当选择1以最小包络熵为适应度函数选择2以最小样本熵为适应度函数选择3以最小信息熵为适应度函数选择4以最小排列熵为适应度函数。这样大家切换起来就很方便了。 完整代码获取点击下方卡片回复关键词WOAVMD 觉着不错的给博主留个小赞吧您的一个小赞就是博主更新的动力谢谢