【无标题】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、粒子群算法(pso)

今天对粒子群算法进行了复习,并对粒子群算法的程序进行了整理。
粒子群算法是一种基于鸟类的群体智能算法,算是很经典的一个群体智能算法。粒子群算法是收到最优粒子和历史的最优粒子的位置牵引进行寻优,具有参数少,前期寻优快的优点。后面的一些改进大概也是由于算法通病:局部最优、收敛速度吧???

二、更新方式

1更新

智能算法的不同之处也就是在于其更新和寻优方式的区别。
pso包含有位置和速度的更新。更新方式如下:
vi = wv+c1rand*(pbest-x)+c2rand(gbest-x); (1)
x = x+v; (2)
在式子(1)中,第一部分为记忆项,表上次速度和位置对这次的影响;第二项为自身认知,为粒子个体的经验和认知,第三项为群体认知,来自群体间的经验交流。
pbest为个体的历史最优粒子位置,gbest为全局最优粒子位置;rand为随机数,c1和c2为学习因子,一般取2;w为惯性因子。pso的代码如下:
代码如下(示例):

function [fit_best,x_best,bestx_inter,bestfit_inter] = pso_fun(N,Dim,max_inter,up,lb,fobj)
[position,vectory]=initional(N,Dim,up,lb);
c1 = 2;
c2 = 2;
wmax = 0.9;
wmin = 0.2;
vmax = 100;
vmin = -100;
for i =1:N
fitness(i) = fobj(position(i,:));
end
fitnesspbest = fitness;
pbest_x = position;
[fitnessgbest,gbest_index] = min(fitness);
gbest_x = position(gbest_index,:);
for inter =1:max_inter
w = (wmax - wmin)(max_inter-inter)/max_inter+wmin;%惯性因子
for i =1:N
vectory(i,:) = w
vectory(i,:) + c1rand(pbest_x(i,:) - position(i,:)) + c2rand(gbest_x - position(i,:));
vectory(i,find(vectory(i,:)>vmax))=vmax;
vectory(i,find(vectory(i,:)<vmin))=vmin;
position(i,:)=position(i,:)+vectory(i,:);
position(i,find(position(i,:)>up))=up;
position(i,find(position(i,:)<lb))=lb;
fitness(i) = fobj(position(i,:));
end
for j = 1:N
if fitness(j)<fitnesspbest(j)
fitnesspbest(j)=fitness(j);
pbest_x(j,:)=position(j,:);
end
if fitness(j)<fitnessgbest
fitnessgbest = fitness(j);
gbest_x = position(j,:);
end
end
bestfit_inter(inter) = fitnessgbest;
bestx_inter(inter,:) = gbest_x;
end
fit_best = min(bestfit_inter);
x_best = gbest_x;
end

2一些结果

此次的测试结果选取了几组cec的测试函数进行测试:
三个单峰值,两个多峰值(哈哈哈,太多了懒!!!)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述best_fit为找到的最优值!!!
在这里插入图片描述best_fit为找到的最优值!!!
在这里插入图片描述best_fit为找到的最优值!!!
在这里插入图片描述best_fit为找到的最优值!!!
哈哈哈 ,没了没了,说的有点乱,大家将就看!

总结

就是怕忘了,写一个小结哈哈哈,大家随便看看,轻喷!!!拜了个拜!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值