CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)

一、星雀优化算法NOA

星雀优化算法(Nutcracker optimizer algorithm,NOA)由Mohamed Abdel-Basset等人于2023年提出,该算法模拟星雀的两种行为,即:在夏秋季节收集并储存食物,在春冬季节搜索食物的存储位置。
CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第1张图片
星鸦单独或成对活动,偶成小群。栖于松林,以松子为食。也埋藏其他坚果以备冬季食用。动作斯文,飞行起伏而有节律。星鸦收集松子,储藏在树洞里和树根底下,准备冬天吃。冬天星鸦从这个地方游荡到哪个地方,从这座森林飞到另一座森林,享用着它们储藏的松子。其实它们每个星鸦每天找到的储藏的食物不一定是自己储藏的,自己储藏的松子也可能成为别人的食物。它们无论谁飞到一片新林子,就到处寻找松子,因为总有别的星鸦藏下的种子。它把树洞扒拉开看看,到树根底下翻检,刨开灌木丛,就是大雪覆盖的灌木丛下,它们也能找到自己同类藏下的食粮。
CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第2张图片
星鸦体羽大都咖啡褐色,具白色斑;飞翔时黑翅,白色的尾下覆羽和尾羽白端是很醒目的。体上的白斑点飞行慢时易见。鼻羽污白具不显著暗褐色基部、暗褐羽缘;眼先区为污白或乳白色;额前部为很暗的咖啡褐色到淡黑褐,头顶和颈项则逐渐变为稍亮的暗咖啡褐;下腰到尾上覆羽淡褐黑色;尾下覆羽白色;体羽的其余部分概为暗咖啡褐色,具众多的白色点斑和条纹。颊部、喉和颈部羽毛具纵长白色尖端;下体、翕部、背部和肩部的羽端有点状白斑,每一白色点斑周缘是淡褐黑。翅黑具稍淡蓝灰或淡绿闪光,小覆羽尖端白色,有时中覆羽、大覆羽亦有白色尖端;初级飞羽和次级飞羽有时具细小的白色尖端,但后者常经磨损而消失;第6枚和第7枚在内翈基部具白色新月形斑,有时第5枚初级飞羽亦有较小的白斑。尾羽亮黑,中央尾羽狭窄,最外侧尾羽具宽的白色端斑。翅下覆羽淡黑、尖端白。虹膜暗褐;嘴、跗蹠和足黑色。
CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第3张图片

参考文献:
Mohamed Abdel-Basset, Reda Mohamed, Mohammed Jameel, Mohamed Abouhawwash.Nutcracker optimizer: A novel nature-inspired metaheuristic algorithm for global optimization and engineering design problems[J]. Knowledge-Based Systems,2023,262.

二、CEC2005测试简介

CEC2005 测试集共包含 25 个测试问题, 即 f 1 − f 25 f_{1}-f_{25} f1f25 。根据问题的特征, 可进一 步将其分为 4 类: 单峰问题 f 1 − f 5 f_{1}-f_{5} f1f5 , 基本多峰问题 f 6 − f 12 f_{6}-f_{12} f6f12 , 扩展多峰问题 f 13 − f 14 f_{13}-f_{14} f13f14混合复合问题 f 15 − f 25 f_{15}-f_{25} f15f25 。特别地, 单峰问题 f 1 − f 5 f_{1}-f_{5} f1f5的结构相对简单, 常被用来测试算法的收 玫性能,;而基本多峰问题 f 6 − f 12 f_{6}-f_{12} f6f12 有多个局部最优解, 用来测试算法对决策空间进行全局 探索和局部开发的平衡能力 ; 扩展多峰和混合复合问题 f 13 − f 25 f_{13}-f_{25} f13f25 具有更加复杂的结构, 因而对算法的挑战性更大。此外, 该测试集包含了八组可比较的问题, 可测试算法对不同类型问题特征的性能, 如不同条件数、旋转、噪音干扰、不连续、全局最优邻域形状、全局最优解的位置和种群初始范围等. 由此可见, 该测试集能有效评估算法性能。
CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第4张图片
参考文献:
[1] Suganthan P N , Hansen N , Liang J J , et al. Problem Definitions and Evaluation Criteria for the CEC 2005 Special Session on Real-Parameter Optimization[J]. Natural Computing, 2005, 341-357.
[2]田梦男. 全局优化问题的高效差分进化算法研究[D].陕西师范大学,2020.

三、实验结果

close all
clear 
clc
addpath(genpath(pwd));%加载路径
SearchAgents_no=50; % 种群大小
Function_name=21; %测试函数1-25
Max_iteration=50; % 最大迭代次数
dim=2;%维度 2/10/30/50
Xmin=[-100,-100,-100,-100,-100,-100,0,-32,-5,-5,-0.5,-pi,-3,-100,-5,-5,-5,-5,-5,-5,-5,-5,-5,-5,2];
Xmax=[100,100,100,100,100,100,600,32,5,5,0.5,pi,1,100,5,5,5,5,5,5,5,5,5,5,5];
lb=Xmin(Function_name);%变量下界
ub=Xmax(Function_name);%变量上界
[fMin,bestX,curve]=NOA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);  
figure
plot(curve,'Color','c','linewidth',2.5)
title(['F' num2str(Function_name)])
xlabel('Iteration');
ylabel('BestScore');
grid on
legend('NOA')
% function_plot(Function_name)%画函数图像
display(['The best solution obtained  is : ', num2str(bestX)]);
display(['The best optimal value of the objective funciton found  is : ', num2str(fMin)]);


cec2005之F24求解过程

cec2005之F25求解过程

部分实验结果:

3.1F21

CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第5张图片

3.2F22

CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第6张图片

3.3F23

CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第7张图片

3.4F24

CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第8张图片

3.5F25

CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)_第9张图片

四、完整MATLAB代码

你可能感兴趣的:(CEC,MATLAB,IT技术,matlab,算法,开发语言)