cec2017(python):红狐优化算法(Red fox optimization,RFO)求解cec2017

2023-11-18

一、红狐优化算法

红狐优化算法(Red fox optimization,RFO)由Dawid Połap和 Marcin Woźniak于2021年提出,该算法模拟了红狐的狩猎行为,具有收敛速度快,寻优精度高等优势。
在这里插入图片描述

参考文献: Poap D , Woniak M . Red fox optimization algorithm[J]. Expert Systems with Applications, 2021, 166(10):114107.

二、RFO求解cec2017

cec2017简介

在这里插入图片描述

参考文献:
Awad, N. H., Ali, M. Z., Liang, J. J., Qu, B. Y., & Suganthan, P. N. (2016). “Problem definitions and evaluation criteria for the CEC2017 special session and competition on single objective real-parameter numerical optimization,” Technical Report. Nanyang Technological University, Singapore.

部分代码

完整代码添加博客下方博主微信

from RFO import RFO
import matplotlib.pyplot as plt
import numpy as np
import cec2017.functions as functions
#主程序
function_name =1 #测试函数 1-30
SearchAgents_no = 50#种群大小
Max_iter = 100#最大迭代次数
dim=10;#维度只能是 10/30/50/100
lb = -100*np.ones(dim)#下界
ub = 100*np.ones(dim)#上界
fobj= functions.all_functions[function_name-1]
BestX,BestF,curve = RFO(SearchAgents_no, Max_iter,lb,ub,dim,fobj)#问题求解


#画收敛曲线图
if BestF>0:
    plt.semilogy(curve,color='r',linewidth=2,label='RFO')
else:
    plt.plot(curve,color='r',linewidth=2,label='RFO')
plt.xlabel("Iteration")
plt.ylabel("Fitness")
plt.xlim(0,Max_iter)
plt.title("F"+str(function_name))
plt.legend()
plt.savefig(str(function_name)+'.png')
plt.show()
print('\nThe best solution is:\n'+str(BestX))
print('\nThe best optimal value of the objective funciton is:\n'+str(BestF))

部分结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、参考代码

完整代码添加博客下方博主微信

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

cec2017(python):红狐优化算法(Red fox optimization,RFO)求解cec2017 的相关文章

随机推荐

  • 【java笔记】泛型定义和使用

    为什么使用泛型 泛型的字面意思就是广泛的类型 利用泛型 同一套代码可以用于多种数据类型 这样 不仅可以复用代码 降低耦合 而且可以提高代码的可读性和安全性 可读性 var s new ArrayList
  • 【OpenGL进阶】04.支持多贴图的Shader

    这篇文章来实现一下多贴图的效果 在这篇文章中 再次对代码进行了封装 是代码看起来更加清晰明了 shader h中添加了SetTexture接口 pragma once include ggl h struct UniformTexture
  • [canvas] 坐标旋转

    坐标旋转 做圆周运动 vr 0 1 angle 0 radius 100 centerX 0 centerY 0 object x centerX Math sin angle radius object y centerY Math co
  • git报错:warning: unable to access

    git操作的时候出现该错误 warning unable to access Users a10 12 config git ignore Permission denied warning unable to access Users a
  • 一个女孩的就业之路(同济大学BBS上两年不沉的帖子)

    文章很长 有机会见到这篇文章的童鞋 希望能耐心看完 其他不多说 我是2005年毕业的 偶尔来这里看看 不常灌水 今天来随意写下一些 如果对各位有任何的帮助 是我衷心所愿 1 考研与就业 2004年的暑假 我和大多数人一样 艰难的抉择 究竟是
  • NacosValue 注解

    NacosValue 定义在 nacos api 工程中 com alibaba nacos api config annotation NacosValue 注解解析在 nacos spring project 工程中 com aliba
  • 阻塞队列java实现

    阻塞队列 目前队列存在的问题 1 很多场景要求分离生产者和消费者两个角色 它们得由不同的线程来担当 而之前的实现根本没有考虑线程安全问题 2 队列为空 那么在之前的实现里会返回null 如果硬拿到一个元素 只能不断循环尝试 3 队列为满 那
  • PHP魔术方(2)

    PHP魔术方 2 文章目录 PHP魔术方 2 1 toString 和 invoke tostring 和 invoke 两者的触发形式接近 2 call 用来检测所调用的成员方法是否存在 3 callStatic 4 get 5 set
  • 在Linux系统上用C++将主机名称转换为IPv4、IPv6地址

    在Linux系统上用C 将主机名称转换为IPv4 IPv6地址 功能 指定一个std string类型的主机名称 函数解析主机名称为IP地址 含IPv4和IPv6 解析结果以std vector
  • vue div高度自适应

    1 在 js文件中编写自定义指令 export default install Vue 在组件标签上绑定 v resizable 指令 并使用对象的形式通过绑定值传递宽度和高度以及最大 最小高度的值 在 bind 函数中 获取传递的值 并根
  • 走进区块链企业 I 用实践赋能实体产业,坚持提供价值服务的旺链科技

    作为华东师范大学MBA高材生 他在高科技制造 金融行业有着超过16年的业务咨询管理和技术架构经验 他是中国云体系产业创新联盟理事会常务理事 边缘计算产业联盟专家委员 也是原 Accenture资深总监 集成技术专家 而在如今话题正盛的 区块
  • linux创建,恢复和删除screen

    学习记录 侵删 目录 1 创建 2 恢复 3 删除 使用服务器训练模型时 如果服务器断开 之前的训练结果显示的终端就不好找到了 貌似可以通过线程去恢复 没试过 可以使用screen 训练前先打开一个screen 如果服务器断开 重连后可以恢
  • 最新免费版 Office 全家桶Copilot,Gamma+MindShow 两大ChatGPT AI创意工具GPT-4神器助力高效智能制作 PPT,一键生成,与AI智能对话修改PPT(免安装)

    目录 前言 ChatGPT MindShow 1 使用ChatGPT工具生成PPT内容 2 使用MindShow工具一键智能制作PPT MindShow简介 使用网页版制作 pdf转ppt GAMMA AI神器 GAMMA app介绍 注册
  • MySQL基础篇:sql_mode配置

    文章目录 零 简介 一 sql mode常用来解决的几类问题 二 sql mode包含的模式 三 sql mode各个选项作用示例 3 1 sql mode为空 对于不符合定义的值 会截断到符合定义类型 3 2 sql mode为ANSI
  • 编程语言用 Java 开发一个打飞机小游戏(附完整源码)

    编程语言用 Java 开发一个打飞机小游戏 附完整源码 上图 写在前面 技术源于分享 所以今天抽空把自己之前用java做过的小游戏整理贴出来给大家参考学习 java确实不适合写桌面应用 这里只是通过这个游戏让大家理解oop面向对象编程的过程
  • 【React】路由(详解)

    目录 单页应用程序 SPA 路由 前端路由 后端路由 路由的基本使用 使用步骤 常用组件说明 BrowserRouter和HashRouter的区别 路由的执行过程 默认路由 精确匹配 Switch的使用 重定向路由 嵌套路由 向路由组件传
  • 计算机网络体系结构 - 运输层

    一 运输层协议概述 运输层为应用进程之间提供端到端的逻辑通信 二 运输层的端口 端口 port 也称为协议端口号 protocol port number 对上层的应用进程进行标识 端口用一个16位端口号进行标志 端口号只具有本地意义 端口
  • 剑指offer-输出字符串所有种类的排列组合

    常规题 先校验长度 不符合则直接输出 符合则判断是否为最后一个字符 是则直接new对象输出 不是则交换begin和i位置的数字 再用递归输出 public class Test28 先校验 public static void permut
  • 笔试

    文章目录 前言 40 复位电路设计 1 recovery time和removal time 2 同步复位和异步复位 3 异步复位同步释放 本文参考 往期精彩 前言 嗨 今天来学习复位电路设计相关问题 微信关注 FPGA学习者 获取更多精彩
  • cec2017(python):红狐优化算法(Red fox optimization,RFO)求解cec2017

    一 红狐优化算法 红狐优化算法 Red fox optimization RFO 由Dawid Po ap和 Marcin Wo niak于2021年提出 该算法模拟了红狐的狩猎行为 具有收敛速度快 寻优精度高等优势 参考文献 Poap D