CEC2013(python):五种算法(CSO、WOA、GWO、DBO、PSO)求解CEC2013(python代码)

一、五种算法简介

1、鸡群优化算法CSO

2、鲸鱼优化算法WOA

3、灰狼优化算法GWO

4、蜣螂优化算法DBO

5、粒子群优化算法PSO

二、5种算法求解CEC2013

(1)CEC2013简介

参考文献:

[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. 2013.

(2)部分python代码

from CEC2013.cec2013 import *
import numpy as np
from WOA import WOA
from GWO import GWO
from PSO import PSO
from CSO import CSO
from DBO import DBO
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['Microsoft YaHei']
#主程序
#主程序
function_name =1 #测试函数1-28
SearchAgents_no = 50#种群大小
Max_iter = 100#迭代次数
dim=10#维度 10/30/50/100
lb=-100*np.ones(dim)#下限
ub=100*np.ones(dim)#上限
cec_functions = cec2013(dim,function_name)
fobj=cec_functions.func#目标函数
BestX1,BestF1,curve1 = WOA(SearchAgents_no, Max_iter,lb,ub,dim,fobj)#问题求解
BestX2,BestF2,curve2 = GWO(SearchAgents_no, Max_iter,lb,ub,dim,fobj)#问题求解
BestX3,BestF3,curve3 = PSO(SearchAgents_no, Max_iter,lb,ub,dim,fobj)#问题求解
BestX4,BestF4,curve4 = CSO(SearchAgents_no, Max_iter,lb,ub,dim,fobj)#问题求解
BestX5,BestF5,curve5 = DBO(SearchAgents_no, Max_iter,lb,ub,dim,fobj)#问题求解
#画收敛曲线图
Labelstr=['WOA','GWO','PSO','CSO','DBO']
Colorstr=['r','g','b','k','c']
if BestF1>0:plt.semilogy(curve1,color=Colorstr[0],linewidth=2,label=Labelstr[0])plt.semilogy(curve2,color=Colorstr[1],linewidth=2,label=Labelstr[1])plt.semilogy(curve3,color=Colorstr[2],linewidth=2,label=Labelstr[2])plt.semilogy(curve4,color=Colorstr[3],linewidth=2,label=Labelstr[3])plt.semilogy(curve5,color=Colorstr[4],linewidth=2,label=Labelstr[4])
else:plt.plot(curve1,color=Colorstr[0],linewidth=2,label=Labelstr[0])plt.plot(curve2,color=Colorstr[1],linewidth=2,label=Labelstr[1])plt.plot(curve3,color=Colorstr[2],linewidth=2,label=Labelstr[2])plt.plot(curve4,color=Colorstr[3],linewidth=2,label=Labelstr[3])plt.plot(curve5,color=Colorstr[4],linewidth=2,label=Labelstr[4])plt.xlabel("Iteration")
plt.ylabel("Fitness")
plt.xlim(0,Max_iter)
plt.title("cec2013-F"+str(function_name))
plt.legend()
plt.savefig(str(function_name)+'.png')
plt.show()
#

(3)部分结果

三、完整python代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/284383.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【智慧之窗】AI驱动产品探索

一.初识 ChatGPT ChatGPT 是由 OpenAI 开发的自然语言处理(NLP)模型,基于 GPT(Generative Pre-trained Transformer)架构。GPT 系列的模型旨在理解和生成自然语言文本。ChatGPT 专注于支持对话性任务,即与…

Windows本地搭建开源企业管理套件Odoo并实现公网访问

文章目录 前言1. 下载安装Odoo:2. 实现公网访问Odoo本地系统:3. 固定域名访问Odoo本地系统 前言 Odoo是全球流行的开源企业管理套件,是一个一站式全功能ERP及电商平台。 开源性质:Odoo是一个开源的ERP软件,这意味着企…

ArcGIS Pro SDK 右键获取选中的图层

需求&#xff1a; 获取右键选中的图层 解决方法&#xff1a; 地图页面获取选中的图形 // 获取所选要素 var firstFeatureLayer MapView.Active.Map.GetLayersAsFlattenedList().OfType<FeatureLayer>().FirstOrDefault(); 布局页面获取选中的地图框 Layout layout …

Linux系统管理、服务器设置、安全、云数据中心

前言 「作者主页」&#xff1a;雪碧有白泡泡 「个人网站」&#xff1a;雪碧的个人网站 我们来快速了解liunx命令 文章目录 前言解析命令提示符linux的文件和目录文件和目录管理文件操作 进程管理命令系统管理网络管理 书籍推荐 本文以服务器最常用的CentOS为例 解析命令提示…

自动化测试 (四) 读写64位操作系统的注册表

自动化测试经常需要修改注册表 很多系统的设置&#xff08;比如&#xff1a;IE的设置&#xff09;都是存在注册表中。 桌面应用程序的设置也是存在注册表中。 所以做自动化测试的时候&#xff0c;经常需要去修改注册表 Windows注册表简介 注册表编辑器在 C:\Windows\regedit…

无框架Java转go语言写http与tcp请求

项目地址 https://github.com/cmdch2017/http_tcpServer 项目结构 如何快速上手 http篇 1、controller包就相当于RestController&#xff0c;这里返回了一个Person对象&#xff0c;当你需要新建一个接口时&#xff0c;再新写一个func仿照下面的方法就行了 package control…

Java已死、前端已凉?巨大骗局!

Java已死、前端已凉&#xff1f;巨大骗局&#xff01; 1 引言2 Java的现状与挑战3 前端技术的现状与挑战4 Java和前端技术的未来发展趋势5 扩展讨论6 结论 摘要&#xff1a;近年来&#xff0c;随着技术的发展和市场需求的变化&#xff0c;Java和前端技术面临着前所未有的挑战。…

Domino 14.0消灭密码(二)

大家好&#xff0c;才是真的好。 这篇主要讲Domino 14无密码登录新功能的配置过程&#xff0c;好看&#xff0c;而且简单。 不知道上一节《Domino 14.0消灭密码&#xff08;一&#xff09;》看了和搞懂了没有。如果没搞懂也没关系&#xff0c;翻回去看看&#xff0c;或者看看…

谷歌手机安装证书到根目录

1、前提你已经root&#xff0c;安装好面具 2&#xff0c;下载movecert模块&#xff0c;自动帮你把证书从用户证书移动成系统证书 视频教程&#xff0c;手机为谷歌手机 https://www.bilibili.com/video/BV1pG4y1A7Cj?p11&vd_source9c0a32b00d6d59fecae05b4133f22f06 软件下…

新书推介——《AI摄影绘画与PS优化从入门到精通》

在这个数字化时代的浪潮中&#xff0c;人工智能技术以其惊人的创造力和创新性席卷全球。从智能助手到自动驾驶&#xff0c;从自然语言处理到机器学习&#xff0c;AI正日益成为我们日常生活和各个领域不可或缺的一部分。摄影和绘画领域也不例外&#xff0c;AI技术为我们提供了前…

字符分类函数字符转换函数

字符分类函数 在C语言当中有一系列的函数是专门做字符分类的&#xff0c;就是看这个属于什么类型字符的函数&#xff0c;这类函数的使用都需要包含一个头文件ctype.h 我们通过讲解其中一个函数带大家了解一下&#xff0c;其余的函数都是十分相似的 islower函数是属于字符分类…

C++设计模式之——外观模式

外观模式 概念使用场景示例示例代码运行结果 总结 概念 外观模式是一种结构型设计模式&#xff0c;它提供了一个统一的接口&#xff0c;用于访问子系统中的一组接口。外观模式隐藏了子系统的复杂性&#xff0c;使客户端可以更容易地使用子系统。 使用场景 外观模式的使用场景…