• 大小: 591KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-18
  • 语言: 其他
  • 标签: 算法  

资源简介

该代码本人详细注释了,还包含参考资料,具体理论解析参考博客(https://blog.csdn.net/weixin_43935696/article/details/107045716)

资源截图

代码片段和文件信息

% script 布谷鸟算法,求解函数最小值
% @author zhaoyuqiang 
%#ok<*SAGROW> Remove hints of syntax
%#ok<*CLALL>
%#ok<*FNDSB>
clear all ; 
close all ;
clc ;
N = 25; % 鸟巢的数量Number of nests(The scale of solution)
D = 10 ; % 问题的维度 Dimensionality of solution
T =500 ; %迭代次数的上限 Number of iterations
Xmax = pi ;
Xmin = -pi ;
Pa = 0.25 ; % Probability of building a new nest(After host bird find exotic bird eggs)
%绘图
%fv = @(a) cumsum(a.^22);%11*sin(6*a) + 7*cos(5*a);
x = 0:10;
fv = cumsum(x.^22);
plot(x fv);
hold on
h = plot(00‘*‘);


nestPop = rand(ND)*(Xmax-Xmin)+Xmin ;  % 初始化寄主的鸟巢Random initial solutions
for t=1:T
    levy_nestPop =  func_levy(nestPopXmaxXmin) ; % 通过levy飞行产生一个解Generate new solutions by Levy flights
    nestPop = func_bestNestPop(nestPoplevy_nestPop);  % 与上一代比较,更新适应度较优的鸟窝Choose a best nest among  new and old nests     
    rand_nestPop = func_newBuildNest(nestPopPaXmaxXmin); % 舍弃最糟糕的鸟巢并建立一个新鸟巢Abandon(Pa) worse nests and build new nests by (Preference random walk )
    nestPop = func_bestNestPop(nestPoprand_nestPop) ; %列出当前最佳的鸟巢 Choose a best nest among  new and old nests
    [~index] = max(func_fitness(nestPop)) ; % Best nests更新当代最优鸟巢的位置
    trace(t) = func_objValue(nestPop(index:)) ;
    %trace(t) = func_objValue(nestPop(index)) ;
    %fval = func_objValue(nestPop(index:));
   % h = plot(nestPop(index:)func_objValue(nestPop(index:))‘*‘);
    fprintf(“%f-----%f\n“nestPop(index:)func_objValue(nestPop(index:)));
    
end
h = plot(nestPop(index:)func_objValue(nestPop(index:))‘*‘);
figure 
plot(trace);
xlabel(‘迭代次数‘) ;
ylabel(‘适应度值‘) ;
title(‘适应度进化曲线‘) ;

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2020-07-08 22:10  CSCode\
     目录           0  2020-07-06 00:56  CSCode\Book\
     文件      629677  2020-07-05 10:08  CSCode\Book\布谷鸟搜索算法综述.pdf
     目录           0  2020-07-08 22:08  CSCode\CSTofunction\
     文件        3138  2020-07-04 21:38  CSCode\CSTofunction\CS.zip
     文件        1833  2020-07-07 20:38  CSCode\CSTofunction\CSMain.m
     文件         351  2020-07-05 12:52  CSCode\CSTofunction\func_bestNestPop.m
     文件         224  2018-06-26 16:15  CSCode\CSTofunction\func_fitness.m
     文件         797  2020-07-05 10:24  CSCode\CSTofunction\func_levy.m
     文件         551  2020-07-05 10:46  CSCode\CSTofunction\func_newBuildNest.m
     文件         205  2020-07-05 13:02  CSCode\CSTofunction\func_objValue.m

评论

共有 条评论