CEC2013(MATLAB):螳螂搜索算法(Mantis Search Algorithm,MSA)求解CEC2013

一、螳螂搜索算法

螳螂搜索算法(Mantis Search Algorithm,MSA)由Mohamed Abdel-Basset等人于2023年提出,该算法模拟螳螂独特的狩猎和性同类相食行为。MSA由三个优化阶段组成,包括寻找猎物(探索),攻击猎物(剥削)和性同类相食,具有搜索效率高等优势。

CEC2013(MATLAB):螳螂搜索算法(Mantis Search Algorithm,MSA)求解CEC2013_第1张图片

参考文献:

[1]Mohamed Abdel-Basset, Reda Mohamed, Mahinda Zidan, Mohammed Jameel, Mohamed Abouhawwash,Mantis Search Algorithm: A novel bio-inspired algorithm for global optimization and engineering design problems,Computer Methods in Applied Mechanics and Engineering,415,2023https://doi.org/10.1016/j.cma.2023.116200.

二、cec2013简介

在CEC 2013 Special Session on Real-Parameter Optimization中共有28个测试函数维度可选择为10/30/50/100。每个测试函数的信息如下表所示:(详细信息见下方参考文献

CEC2013(MATLAB):螳螂搜索算法(Mantis Search Algorithm,MSA)求解CEC2013_第2张图片

CEC2013的28个函数_IT猿手的博客-CSDN博客

参考文献:

[1] Liang J J , Qu B Y , Suganthan P N ,et al.Problem Definitions and Evaluation Criteria for the CEC 2013 Special Session on Real-Parameter Optimization[J]. 2013.

三、MSA求解cec2013

(1)部分代码

close all;
clear ; 
clc;
dim =10;      %维度
TestProblem=1; %测试函数索引可以选择 1-28
[Fun_Name,lb,ub,opt_f,err] = get_fun_info_CEC2013(TestProblem,dim);%获取函数信息
fob=str2func('cec13_0');
SearchAgents_no=50; % 种群大小(可以修改)
Max_iteration=500; % 最大迭代次数(可以修改)
[Xbest,Best_score,Convergence_curve]=MSA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
figure
plot(Convergence_curve,'r','linewidth',2)
xlabel('Iteration')
ylabel('Fitness')
title(['CEC2013-F' num2str(TestProblem)])
legend('MSA')

(2)部分结果

CEC2013(MATLAB):螳螂搜索算法(Mantis Search Algorithm,MSA)求解CEC2013_第3张图片

CEC2013(MATLAB):螳螂搜索算法(Mantis Search Algorithm,MSA)求解CEC2013_第4张图片

CEC2013(MATLAB):螳螂搜索算法(Mantis Search Algorithm,MSA)求解CEC2013_第5张图片

CEC2013(MATLAB):螳螂搜索算法(Mantis Search Algorithm,MSA)求解CEC2013_第6张图片

CEC2013(MATLAB):螳螂搜索算法(Mantis Search Algorithm,MSA)求解CEC2013_第7张图片

四、完整MATLAB代码

你可能感兴趣的:(CEC,MATLAB,优化算法,matlab,算法,开发语言,CEC2013,螳螂搜索算法,演化计算,进化计算)