資源簡介
蝙蝠算法( BA) 是 Yang 教授于 2010 年基于群體智能提出的啟發式搜索算法,是一種搜索全局最優解的有效方法。該算法是一種基于迭代的優化技術,初始化為一組隨機解
代碼片段和文件信息
clcclearclose?all
warning?off
%?BA算法參數
maxiter?=?200;??%?迭代次數
sizepop?=?10;??%?種群數量
%?頻率范圍
popmin1?=?-1;??popmax1?=?1;?%?x1??頻率
popmin2?=?-1;??popmax2?=?1;?%?x2??頻率
Qmin?=?0.1;????%?最小頻率
Qmax?=?0.5;????%?最大頻率
impluse?=?0.4;?%?脈沖率
%%?初始化種群
for?i=1:sizepop
????x1?=?popmin1?+?(popmax1-popmin1)*rand;
????x2?=?popmin2?+?(popmax2-popmin2)*rand;
????pop(i1)?=?x1;
????pop(i2)?=?x2;
????fitness(i)?=?fun([x1x2]);
end
%?記錄一組最優值
[bestfitnessbestindex]=min(fitness);
zbest=pop(bestindex:);???%?全局最佳
gbest=pop;????????????????%?個體最佳
fitnessgbest=fitness;?????%?個體最佳適應度值
fitnesszbest=bestfitness;?%?全局最佳適應度值
%%?迭代尋優
for?i=1:maxiter
????for?j=1:sizepop
????????Q?=?Qmin+(Qmax-Qmin)*rand(12);
????????pop(j:)?=?pop(j:)?+?Q;
????????%?脈沖率
????????if?rand>impluse
?????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????1996??2016-09-10?21:21??蝙蝠算法Bat\Bat_Algorithm_ysw.m
?????文件????????2431??2016-09-10?21:25??蝙蝠算法Bat\Bat_Algorithm_ysw2.m
?????文件????????2546??2016-09-10?21:29??蝙蝠算法Bat\Bat_Algorithm_ysw3.m
?????文件?????????181??2016-09-10?21:29??蝙蝠算法Bat\fun.m
?????目錄???????????0??2017-05-06?13:42??蝙蝠算法Bat\
- 上一篇:關于MATLAB的IIR濾波器
- 下一篇:調制信號的GUI界面
評論
共有 條評論