• 大小: 3KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-03
  • 语言: Matlab
  • 标签: 蝙蝠算法  MATLAB  

资源简介

蝙蝠算法( 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\

评论

共有 条评论