资源简介
用matlab实验的鲸鱼算法
鲸鱼算法(Whale Optimization Algorithm)是根据鲸鱼围捕猎物的行为而提出的算法。鲸鱼是一种群居的哺乳动物,在捕猎时它们也会相互合作对猎物进行驱赶和围捕。鲸鱼算法提出时间并不长,也是一个新兴的优化算法,研究应用案例不多。
鲸鱼算法中,每个鲸鱼的位置代表了一个可行解。在鲸鱼群捕猎过程中,每只鲸鱼有两种行为,一种是包围猎物,所有的鲸鱼都向着其他鲸鱼前进;另一种是汽包网,鲸鱼环形游动喷出气泡来驱赶猎物。在每一代的游动中,鲸鱼们会随机选择这两种行为来进行捕猎。在鲸鱼进行包围猎物的行为中,鲸鱼将会随机选择是向着最优位置的鲸鱼游去还是随机选择一只鲸鱼作为自己的目标,并向其靠近。
鲸鱼算法(Whale Optimization Algorithm)是根据鲸鱼围捕猎物的行为而提出的算法。鲸鱼是一种群居的哺乳动物,在捕猎时它们也会相互合作对猎物进行驱赶和围捕。鲸鱼算法提出时间并不长,也是一个新兴的优化算法,研究应用案例不多。
鲸鱼算法中,每个鲸鱼的位置代表了一个可行解。在鲸鱼群捕猎过程中,每只鲸鱼有两种行为,一种是包围猎物,所有的鲸鱼都向着其他鲸鱼前进;另一种是汽包网,鲸鱼环形游动喷出气泡来驱赶猎物。在每一代的游动中,鲸鱼们会随机选择这两种行为来进行捕猎。在鲸鱼进行包围猎物的行为中,鲸鱼将会随机选择是向着最优位置的鲸鱼游去还是随机选择一只鲸鱼作为自己的目标,并向其靠近。

代码片段和文件信息
% This function draw the benchmark functions
function func_plot(func_name)
[lbubdimfobj]=Get_Functions_details(func_name);
switch func_name
case ‘F1‘
x=-100:2:100; y=x; %[-100100]
case ‘F2‘
x=-100:2:100; y=x; %[-1010]
case ‘F3‘
x=-100:2:100; y=x; %[-100100]
case ‘F4‘
x=-100:2:100; y=x; %[-100100]
case ‘F5‘
x=-200:2:200; y=x; %[-55]
case ‘F6‘
x=-100:2:100; y=x; %[-100100]
case ‘F7‘
x=-1:0.03:1; y=x %[-11]
case ‘F8‘
x=-500:10:500;y=x; %[-500500]
case ‘F9‘
x=-5:0.1:5; y=x; %[-55]
case ‘F10‘
x=-20:0.5:20; y=x;%[-500500]
case ‘F11‘
x=-500:10:500; y=x;%[-0.50.5]
case ‘F12‘
x=-10:0.1:10; y=x;%[-pipi]
case ‘F13‘
x=-5:0.08:5; y=x;%[-31]
case ‘F14‘
x=-100:2:100; y=x;%[-100100]
case ‘F15‘
x=-5:0.1:5; y=x;%[-55]
case ‘F16‘
x=-1:0.01:1; y=x;%[-55]
case ‘F17‘
x=-5:0.1:5; y=x;%[-55]
case ‘F18‘
x=-5:0.06:5; y=x;%[-55]
case ‘F19‘
x=-5:0.1:5; y=x;%[-55]
case ‘F20‘
x=-5:0.1:5; y=x;%[-55]
case ‘F21‘
x=-5:0.1:5; y=x;%[-55]
case ‘F22‘
x=-5:0.1:5; y=x;%[-55]
case ‘F23‘
x=-5:0.1:5; y=x;%[-55]
end
L=length(x);
f=[];
for i=1:L
for j=1:L
if strcmp(func_name‘F15‘)==0 && strcmp(func_name‘F19‘)==0 && strcmp(func_name‘F20‘)==0 && strcmp(func_name‘F21‘)==0 && strcmp(func_name‘F22‘)==0 && strcmp(func_name‘F23‘)==0
f(ij)=fobj([x(i)y(j)]);
end
if strcmp(func_name‘F15‘)==1
f(ij)=fobj([x(i)y(j)00]);
end
if strcmp(func_name‘F19‘)==1
f(ij)=fobj([x(i)y(j)0]);
end
if strcmp(func_name‘F20‘)==1
f(ij)=fobj([x(i)y(j)0000]);
end
if strcmp(func_name‘F21‘)==1 || strcmp(func_name‘F22‘)==1 ||strcmp(func_name‘F23‘)==1
f(ij)=fobj([x(i)y(j)00]);
end
end
end
surfc(xyf‘Linestyle‘‘none‘);
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6325 2019-12-30 10:04 WOA\Get_Functions_details.m
文件 1841081 2016-02-27 17:00 WOA\The Whale Optimization Algorithm.pdf
文件 3190 2019-12-30 10:06 WOA\WOA.m
文件 2157 2019-12-30 10:07 WOA\func_plot.m
文件 649 2019-12-30 10:07 WOA\initialization.m
文件 1561 2019-12-30 10:08 WOA\main.m
目录 0 2019-12-30 10:09 WOA\
- 上一篇:matlab实现近似熵值的计算
- 下一篇:MATLAB 2014b破解
相关资源
- matlab_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
评论
共有 条评论