700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 粒子群算法PSO优化VMD 适应度函数为最小样本熵或最小包络熵(可自行选择 代码已集成

粒子群算法PSO优化VMD 适应度函数为最小样本熵或最小包络熵(可自行选择 代码已集成

时间:2019-10-27 11:18:50

相关推荐

粒子群算法PSO优化VMD 适应度函数为最小样本熵或最小包络熵(可自行选择 代码已集成

近期评论区有小伙伴私信需要粒子群优化算法PSO法化VMD的,所以打算再写一篇。

与上一篇灰狼算法优化VMD相似,这篇文章也是以最小样本熵或最小包络熵为适应度函数的,好的,废话不多说,大家不懂得可以看这篇文章。灰狼优化算法GWO,优化VMD,适应度函数为最小样本熵或最小包络熵(可自行选择,代码已集成好,很方便修改)包含MATLAB源代码_今天吃饺子的博客-CSDN博客

浅浅说一嘴,粒子群的速度确实是很快的,至于精度嘛,这个还是需要大家与我之前的几篇文章对比对比了哈。

老规矩,先上结果图:

首先是以最小样本熵为适应度函数的结果图:

然后是最小包络熵为适应度函数的结果图:

上代码:

%% 以最小包络熵或最小样本熵为目标函数,采用PSO算法优化VMD,求取VMD最佳的两个参数clear allclcaddpath(genpath(pwd))load 105.matD=2; % 优化变量数目lb = [100 3];ub = [2500 10];dim = 2;Max_iter=40; % 最大迭代数目SearchAgents_no=15; % 种群规模xz = 1; %xz=1 or 2, 选择1,以最小包络熵为适应度函数,选择2,以最小样本熵为适应度函数。if xz == 1 fobj=@EnvelopeCost;elsefobj=@SampleCost;endda = X105_DE_time(6001:7000); %这里选取105的DEtime数据[gBestScore,gBest,cg_curve]=PSO(SearchAgents_no,Max_iter,lb,ub,dim,fobj,da);%画适应度函数图figureplot(cg_curve,'Color',[0.9 0.5 0.1],'Marker','>','LineStyle','--','linewidth',1);title('Objective space')xlabel('Iteration');ylabel('Best score obtained so far');legend('PSO优化VMD')display(['The best solution obtained by PSO is : ', num2str(round(gBest))]); %输出最佳位置display(['The best optimal value of the objective funciton found by pso is : ', num2str(gBestScore)]); %输出最佳适应度值

大家注意看到xz这个变量,当选择是 xz=1,就是以最小包络熵为适应度函数,选择 xz=2,就是以最小样本熵为适应度函数。这样大家切换起来就很方便了!

完整代码获取:下方卡片回复关键词:PSOVMD

觉着不错的给博主留个小赞吧!您的一个小赞就是博主更新的动力!谢谢!

粒子群算法PSO优化VMD 适应度函数为最小样本熵或最小包络熵(可自行选择 代码已集成好 很方便修改)包含MATLAB源代码

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。