【优化求解】基于混合蛙跳算法实现最优求解matlab源码

205 阅读1分钟

1 简介

2 部分代码

clc;clear all;
close all
m=50; %种群分组数
n=35; %t每组青蛙包含的个数
Ne=25; %组内迭代数
smax = 100;  %最大步长
MAXGEN=100;  %种群总进化代数
d=25; %优化问题维数
pmax =1024; %d维最大值
pmin = -1024;%d维最小值



   end

            temp=pw+s1;
            temp(find(temp>pmax))=pmax;
           temp(find(temp<pmin))=pmin;
           end
            local(n,:) = temp;
            for loc=1:n
            fitlocal(loc)=fun(local(loc,:));
            end
            [localsort,indexlocal]=sort(fitlocal);
            for loc=1:n
              localnew(loc,:) = local(indexlocal(loc),:);
             end    
            local=localnew;
       end   %结束Ne
            p(i4:m:end,:) =local;
   end    %结束m
 %最好的青娃适配值 
end  %结束MAXGEN
toc
%结果分析
plot(yy)
title('混合跬跳算法优化');
xlabel('总进化代数');ylabel('函数最优解');

img =gcf;  %获取当前画图的句柄
print(img, '-dpng', '-r600', './img.png')         %即可得到对应格式和期望dpi的图像

3 仿真结果

4 参考文献

[1]张海玉, 刘军, and 刘志都. "基于混沌优化策略的SFLA算法." 计算机应用研究 06(2013):1708-1711.​

 5 MATLAB代码与数据下载地址

见博客主页头条