六种智能优化算法(NOA、MA、PSO、GA、ZOA、SWO)求解23个基准测试函数(含参考文献及MATLAB代码)

一、23个基准测试函数简介

在智能优化算法的性能测试过程中,经常需要借助一些测试函数对算法的全局搜索和局部搜索的性能测试。CEC(国际进化计算会议) 测试函数,常用的23组整理如下:

参考文献:

1\] Yao X, Liu Y, Lin G M. Evolutionary programming made faster\[J\]. IEEE transactions on evolutionary computation, 1999, 3(2):82-102. ### 二、求解结果 #### (1)部分MATLAB代码 ```bash AlgorithmName={'NOA','MA','PSO','GA','ZOA','SWO'};%算法名称 Function_name='F10';%测试函数F1-F23(可以修改) addpath('./AlgorithmCode/')%添加算法路径 SearchAgents_no=100; % 种群大小(可以修改) Max_iteration=100; %最大迭代次数(可以修改) [lb,ub,dim,fobj]=Get_Functions_details(Function_name);%获取测试函数上下界、维度及目标函数 for i=1:size(AlgorithmName,2)%遍历每个算法,依次求解当前问题 Algorithm=str2func(AlgorithmName{i});%获取当前算法名称,并将字符转换为函数 [Best_pos,Best_score,Convergence_curve]=Algorithm(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);%当前算法求解 %将当前算法求解结果放入data中 data(i).Best_score=Best_score;%保存该算法的Best_score到data data(i).Best_pos=Best_pos;%保存该算法的Best_pos到data ``` #### (2)部分结果 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/01162a7783314e8aa55a2399e1859118.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/e5d5cfe933434cf9bc6a3dacfd4a9e72.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/92682c2ae61e4f9db4824cfba461ec82.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/b6b2029b1919456a911b08cc72fa88e9.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/eec8c0c1239144488539be0fc1583e79.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/673d06dd927c48708bc10c04f8b1f045.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6c7afd05e056419ebe3184ed4a09b30b.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/1f329c8fe6d94fb6bb09a35ae4ec7efd.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/a3c265f4543346d6916c1e0ed23600b6.jpeg) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6bb676df08764645835e33cf0d815328.jpeg)

相关推荐
特种加菲猫8 小时前
从零开始手撕AVL树:详解插入、平衡因子更新与四种旋转
开发语言·c++
萑澈8 小时前
算法竞赛入门:C++ STL核心用法与时空复杂度速查手册
数据结构·c++·算法·stl
roman_日积跬步-终至千里8 小时前
如何分析复杂架构:一套真正能落地的方法
java·开发语言·架构
geovindu8 小时前
go: Semaphore Pattern
开发语言·后端·设计模式·golang·企业级信号量模式
Don.TIk9 小时前
ChaperTwo-整合 SaToken 实现 JWT 登录功能
java·开发语言
Godspeed Zhao9 小时前
从零开始学AI16——SVM
算法·机器学习·支持向量机
yaoxin5211239 小时前
406. Java 文件操作基础 - 字符与二进制流
java·开发语言·python
江屿风9 小时前
C++OJ题经验总结(竞赛)1
开发语言·c++·笔记·算法
nebula-AI9 小时前
人工智能导论:模型与算法(核心技术)
人工智能·深度学习·神经网络·算法·机器学习·集成学习·sklearn
运筹vivo@9 小时前
LeetCode 2405. 子字符串的最优划分
c++·算法·leetcode·职场和发展·哈希表