单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)

一、火鹰优化算法

火鹰优化算法(Fire Hawk Optimizer,FHO)由Mahdi Azizi等人于2022年提出,该算法性能高效,思路新颖。

参考文献:Azizi, M., Talatahari, S. & Gandomi, A.H. Fire Hawk Optimizer: a novel metaheuristic algorithm. Artif Intell Rev (2022). https://doi.org/10.1007/s10462-022-10173-w

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第1张图片

FHO算法描述:

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第2张图片

FHO算法流程:

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第3张图片

二、CEC2020简介

CEC2020共有10个测试函数测试维度包含:2D、5D、10D、15D、20D。CEC2020测试问题随着维度的增加求解极其困难。

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第4张图片

三、求解结果

将火鹰优化算法FHO运用于求解CEC2020中10个函数,其中每个测试函数可以选择的维度分别有:2D、5D、10D、15D、20D。增大迭代次数,FHO的求解效果更佳。本例测试函数维度均为10D(可根据自己需求调整),种群大小为50,最大迭代次数为1000次。

close all
clear
clc
MaxFes = 1000;%迭代次数
VarNumber = 10;%维度 2/5/10/15/20
nPop = 50;%种群大小
VarMin=-100;%下限
VarMax=100;%上限
fitnessfunc=str2func('cec20_func');
Function_name=1;
[Best_Pos,Best_Fit,BestCosts]=FHO(VarMin,VarMax,MaxFes,nPop,VarNumber,CostFunction);
figure
plot(BestCosts,'linewidth',1.5)
xlabel('迭代次数')
ylabel('适应度值')
legend('FHO')
title(strcat('CEC2020-F',num2str(Function_name)))

部分求解结果:

F1:

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第5张图片

F2:

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第6张图片

F3:

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第7张图片

F4:

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第8张图片

四、参考代码

文件夹内包含FHO求解CEC2020完整代码,点击main.m即可运行。

单目标优化:火鹰优化算法(Fire Hawk Optimizer,FHO)求解cec2020(提供Matlab代码)_第9张图片

你可能感兴趣的:(CEC,智能优化算法,MATLAB,算法,matlab,python)