当前位置: 首页 > news >正文

CEC2017:鱼鹰优化算法(Osprey optimization algorithm,OOA)求解cec2017(提供MATLAB代码)

一、鱼鹰优化算法简介

鱼鹰优化算法(Osprey optimization algorithm,OOA)由Mohammad Dehghani 和 Pavel Trojovský于2023年提出,其模拟鱼鹰的捕食行为。
在这里插入图片描述

鱼鹰是鹰形目、鹗科、鹗属的仅有的一种中型猛禽。雌雄相似。体长51-64厘米,体重1000-1750克。头部白色,头顶具有黑褐色的纵纹,枕部的羽毛稍微呈披针形延长,形成一个短的羽冠。头的侧面有一条宽阔的黑带,从前额的基部经过眼睛到后颈部,并与后颈的黑色融为一体。上体为暗褐色,略微具有紫色的光泽。下体为白色,胸部的暗色纵纹和飞羽,以及尾羽上相间排列的横斑均极为醒目。虹膜淡黄色或橙黄色,眼周裸露皮肤铅黄绿色,嘴黑色,蜡膜铅蓝色,脚和趾黄色,爪黑色。
在这里插入图片描述

鱼鹰栖息于湖泊、河流、海岸或开阔地,尤其喜欢在山地森林中的河谷或有树木的水域地带活动。常见在江河、湖沼及海滨一带飞翔,一见水中有饵,就直下水面,用脚掠之而去。趾具锐爪,趾底遍生细刺,外趾复能由前向后反转,这些都很适于捕鱼。在天气晴朗之日,盘旋于水面上空,定点后俯冲而下,再将捕获的鱼带至岩石、电杆、树上等地方享用。巢常营于海岸或岛屿的岩礁上。主要以鱼为食,有时也捕食蛙、蜥蜴、小型鸟类等其他小型陆栖动物。除了南极和北极,亚洲、北美洲等各大洲均有分布。
鱼鹰优化算法OOA的算法描述如下:
在这里插入图片描述

参考文献:
Dehghani Mohammad, Trojovský Pavel.Osprey optimization algorithm: A new bio-inspired metaheuristic algorithm for solving engineering optimization problems[J].Frontiers in Mechanical Engineering,2023,8.

二、CEC2017简介

CEC2017共有30个无约束测试函数分别是:单峰函数(F1-F3)、简单多峰函数(F4-F10)、混合函数(F11-F20)和组合函数(F21-F30)。测试维度包含:10D、30D、50D、100D。CEC2017无约束测试问题随着维度的增加求解极其困难。

在这里插入图片描述

三、求解结果

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

将鱼鹰优化算法OO运用于求解CEC2017中30个无约束函数,其中每个测试函数可以选择的维度分别有:10D、30D、50D、100D。增大迭代次数,OOA的求解效果更佳。本例测试函数维度均为为10D(可根据自己需求调整),最大迭代次数为5000次。

close all
clear 
clc
Function_name=1; %测试函数1-30
lb=-100;%变量下界
ub=100;%变量上界
dim=10;%维度 10/30/50/100
SearchAgents_no=100; % Number of search agents
Max_iteration=100;%最大迭代次数
[Best_score,Best_pos,Curve]=OOA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
figure
% Best convergence curve
semilogy(Curve,'LineWidth',2,'Color','r');
title(strcat('CEC2017-F',num2str(Function_name)))
xlabel('迭代次数');
ylabel('适应度值');
axis tight
box on
legend('OOA')
display(['The best solution is : ', num2str(Best_pos)]);
display(['The best optimal value of the objective funciton is : ', num2str(Best_score)]);

F1:

在这里插入图片描述

F2:

在这里插入图片描述

F3:

在这里插入图片描述

F4:

在这里插入图片描述

四、参考代码

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

相关文章:

CEC2017:鱼鹰优化算法(Osprey optimization algorithm,OOA)求解cec2017(提供MATLAB代码)

一、鱼鹰优化算法简介 鱼鹰优化算法(Osprey optimization algorithm,OOA)由Mohammad Dehghani 和 Pavel Trojovsk于2023年提出,其模拟鱼鹰的捕食行为。 鱼鹰是鹰形目、鹗科、鹗属的仅有的一种中型猛禽。雌雄相似。体长51-64厘米…...

Vue3 企业级项目实战:通关 Vue3 企业级项目开发,升职加薪快人一步

Vue3 企业级项目实战 - 程序员十三 - 掘金小册Vue3 Element Plus Spring Boot 企业级项目开发,升职加薪,快人一步。。「Vue3 企业级项目实战」由程序员十三撰写,2744人购买https://s.juejin.cn/ds/S2RkR9F/ 课程介绍 很高兴为大家介绍这个…...

vue样式绑定(v-if)

文章目录一.第一次用vue框架二.要求:1.定义两种样式,一种描述正确的状态,一种描述错误的状态。2.在结构代码中定义一个块,实现绑定正确的样式状态。3.定义一个按钮,实现正确和错误两种状态的class切换。三.源代码四.效果一.第一次…...

无需公网IP,安全稳定实现U8C异地访问

用友是全球领先的企业云服务与软件提供商,在财务、人力、供应链、采购、制造、营销、研发、项目、资产、协同等领域为客户提供数字化、智能化、社会化的企业云服务产品与解决方案。 U8C是用友针对成长型、创新型企业,提供企业级ERP整体解决方案。在系统…...

Graph Neural Network(GNN)图神经网络

Graph Neural Network(GNN)图神经网络,是一种旨在对图结构数据就行操作的深度学习算法。它可以很自然地表示现实世界中的很多问题,包括社交网络,分子结构和交通网络等。GNN旨在处理此类图结构数据,并对图中的节点和边进行预测或执…...

JSTL核心库的简单使用

JSTL核心库的简单使用 7.1考试重点 7.1.1c:out输出数据 考试重点就是c的相关的 jar包下载地址:Apache Tomcat - Apache Taglibs Downloads 看会典型应用就可以<% page contentType"text/html;charsetUTF-8" language"java" %> <% taglib uri"…...

ffmpeg.dll丢失怎么办,有什么修复ffmpeg.dll的方法

如果你在运行某些音视频软件或游戏时遇到了“ffmpeg.dll丢失”的错误消息&#xff0c;这意味着你的Windows系统中缺少了ffmpeg.dll文件&#xff0c;这是一个必要的动态链接库&#xff08;DLL&#xff09;文件&#xff0c;用于支持许多音视频软件和游戏的运行。在这篇文章中&…...

【学习笔记】NOIP爆零赛9

这场考炸了&#xff0c;不过也还好&#xff0c;正好给自己警醒的作用 t1t1t1应该是想到正解了&#xff0c;就是最后边界那个地方还是没有想清楚&#xff0c;哎这种交互题卡询问次数还是挺难受的&#xff0c;并且似乎我对于这种细节并不能很好把握。然后就少了50pts50pts50pts是…...

SpringMVC的常用组件和工作流程及部分注解解析

一丶SpringMVC常用的组件 1.前端控制器DispatcherServlet 作用&#xff1a;统一处理请求和响应。除此之外还是整个流程控制的中心&#xff0c;由 DispatcherServlet 来调用其他组件&#xff0c;处理用户的请求 接收请求&#xff0c;响应结果&#xff0c;相当于转发器&#xff…...

创建Firebase项目并接入Firebase推送: Firebase Cloud Messaging (FCM)

1.FCM简介&#xff1a;Firebase Cloud Messaging (FCM) 是一种跨平台消息传递解决方案&#xff0c;可供您可靠地传递消息&#xff0c;而且还是免费的服务。支持 Android&#xff0c;IOS,Web,Flutter,Unity.消息类型可以使用 FCM 向客户端发送两种类型的消息&#xff1a;通知消息…...

MyBatis的简单使用

MyBatis是一个优秀的持久型框架用于简化JDBC开发&#xff0c;JDBC的原生写法普遍都很麻烦&#xff0c;还要写原汁原味的sql语句&#xff0c;mybatis将很多东西都放到了配置文件里面然后用少量代码简化了免除了几乎所有的JDBC代码以及设定参数和获取结果集的工作。MyBatis 可以通…...

最新的Windows docker安装方法

什么是Docker&#xff1f;关于Docker的相关概述&#xff0c;请看&#xff1a;Docker_面向架构编程的博客-CSDN博客在Windows10 or Windows11中安装docker主要就两步&#xff1a;1.安装wsl22. 安装docker一、安装WSL2安装wslwsl --install然后重启一下电脑在cmd窗口可以查看自己…...

2023软件测试工程师涨薪攻略,3年如何达到30K

1.软件测试如何实现涨薪 首先涨薪并不是从8000涨到9000这种涨薪&#xff0c;而是从8000涨到15K加到25K的涨薪。基本上三年之内就可以实现。 如果我们只是普通的有应届毕业生或者是普通本科那我们就只能从小公司开始慢慢往上走。 有些同学想去做测试&#xff0c;是希望能够日…...

【算法题】1927. 求和游戏

题目&#xff1a; Alice 和 Bob 玩一个游戏&#xff0c;两人轮流行动&#xff0c;Alice 先手 。 给你一个 偶数长度 的字符串 num &#xff0c;每一个字符为数字字符或者 ‘?’ 。每一次操作中&#xff0c;如果 num 中至少有一个 ‘?’ &#xff0c;那么玩家可以执行以下操…...

有趣的 Kotlin 0x10:操作符 ..<

操作符 …< ..< 操作符是 Kotlin 在 1.7.20 版本中引入的不包含尾部元素的左闭右开区间操作符。之前我们使用的比较多的操作符可能是 .. 和 until&#xff0c;两者均表示区间&#xff0c;前者是闭区间&#xff0c;后者则表示不包含末端元素的左闭右开区间。 OptIn(Expe…...

mysql数据库之索引使用原则

一、最左前缀法则。 1、如果索引使用了多列&#xff08;联合索引&#xff09;&#xff0c;要遵守最左前缀法则。最左前缀法则指的是查询从索引的最左列开始&#xff0c;并且不跳过索引中的列。 如果跳跃到某一列&#xff0c;索引将部分失效&#xff08;后面的字段索引失效&am…...

【Java】Spring Boot 日志文件

文章目录SpringBoot日志文件1. 日志有什么用2. 日志怎么用3. 自定义日志打印3.1 在程序中得到日志对象3.2 使用日志对象打印日志4. 日志级别4.1 日志级别有什么用&#xff1f;4.2 日志级别的分类与使用5. 日志持久化6. 更简单的日志输出--lombok6.1 添加 lombok 依赖6.2 输出日…...

软件项目管理计算题复习(1)

软件项目管理计算题复习&#xff08;1&#xff09; 1.关键路径&#xff1a;决定项目最早完成的一系列的活动。网络图中最长的路&#xff0c;最少的时差&#xff0c;总是差为0&#xff0c;也是关键路径。 2.最短路径也是最短工期 3.总时差&#xff1a;最晚开始-最早开始最晚结…...

BMI160 BOSCH/博世 六轴 加速度 陀螺仪 传感器

BMI160 6轴惯性运动传感器&#xff0c;采用MEMS传感器封装&#xff0c;将16位3轴加速度计和超低功耗3轴陀螺仪集成在一起。当加速度计和陀螺仪在全速模式下运行时&#xff0c;耗电典型值低至950A&#xff0c;仅为市场上同类产品耗电量的50%或者更低。 Bosch BMI160专为智能手机…...

ROS探索[wpr_simulation的编译]

遇到的多种挑战最终的解决方式是通过重新删除所有编译文件夹重新生成工程原因如下 第一次生成的catkin_make文件的时候针对环境变量进行了设置,如果不删除环境变量相关的设置则后续新装的工具工程都会受到影响掣肘Protocbuf相关问题系统中存在多个版本的Protocbuf,因此优先级…...

LeAgent多智能体协作框架:从任务规划到实战部署的完整指南

1. 项目概述&#xff1a;当AI学会“派活”&#xff0c;一个智能体协作框架的诞生最近在折腾AI智能体&#xff08;Agent&#xff09;开发的朋友&#xff0c;估计都绕不开一个核心痛点&#xff1a;单个智能体能力再强&#xff0c;面对复杂任务也常常力不从心。比如&#xff0c;你…...

[特殊字符] 论文查重还在花钱?这个AI平台凭什么敢免费?一条给你讲透

各位正在跟论文死磕的朋友们&#xff0c;今天咱们不聊选题&#xff0c;不聊文献&#xff0c;聊一个每个毕业生都绑不开的刚需——查重。 你有没有算过一笔账&#xff1f;本科论文查一次少说三四十&#xff0c;硕士论文动辄上百&#xff0c;有些平台甚至标价两三百。一篇论文改…...

3步解锁百度网盘Mac版高速下载:逆向工程实践指南

3步解锁百度网盘Mac版高速下载&#xff1a;逆向工程实践指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘在macOS平台上的下载速度限…...

5分钟搞定VRoid Studio中文界面:汉化插件完全使用指南

5分钟搞定VRoid Studio中文界面&#xff1a;汉化插件完全使用指南 【免费下载链接】VRoidChinese VRoidStudio汉化插件 项目地址: https://gitcode.com/gh_mirrors/vr/VRoidChinese 你是否因为VRoid Studio的全英文界面而感到困扰&#xff1f;作为一款功能强大的3D角色设…...

终极指南:5分钟快速修复Windows更新问题的完整解决方案

终极指南&#xff1a;5分钟快速修复Windows更新问题的完整解决方案 【免费下载链接】Script-Reset-Windows-Update-Tool This script reset the Windows Update Components. 项目地址: https://gitcode.com/gh_mirrors/sc/Script-Reset-Windows-Update-Tool 当Windows更…...

SK海力士晶圆代工战略:特色工艺如何重塑半导体产业格局

1. 韩国半导体雄心&#xff1a;从存储巨头到晶圆代工的野望最近几年&#xff0c;全球半导体产业的新闻头条几乎被台积电、英特尔和三星的千亿美元级投资计划所占据。然而&#xff0c;在2021年5月&#xff0c;一则来自韩国的消息&#xff0c;虽然声量相对较小&#xff0c;却揭示…...

用MATLAB复现机载雷达杂波频谱:从Morchin模型到LFM信号仿真的保姆级教程

MATLAB实战&#xff1a;机载雷达杂波频谱建模与LFM信号仿真全解析 雷达信号处理工程师常面临一个经典难题&#xff1a;如何将教科书中的杂波理论转化为可运行的代码&#xff1f;本文将以Morchin模型为核心&#xff0c;手把手带你完成从地/海杂波建模到LFM雷达回波仿真的完整链路…...

别再花冤枉钱!手把手教你用Arduino+ESP32自制车机CAN模拟器(附开源代码)

用ArduinoESP32打造高性价比CAN总线模拟器&#xff1a;从硬件搭建到报文解析全指南 在汽车电子和工业控制领域&#xff0c;CAN总线作为可靠的通信标准已经存在三十余年。面对市面上动辄上千元的商业CAN模拟器&#xff0c;许多开发者、学生和DIY爱好者常常望而却步。实际上&…...

SEM轮廓技术在22nm以下OPC建模中的创新应用

1. SEM轮廓技术在OPC建模中的革命性突破在22nm及以下节点的半导体制造工艺中&#xff0c;光学邻近效应校正&#xff08;OPC&#xff09;面临着前所未有的挑战。传统基于CD&#xff08;临界尺寸&#xff09;测量的建模方法在应对复杂2D结构时显得力不从心&#xff0c;特别是在处…...

Poppins几何无衬线字体:9种字重与多语言支持的技术实现深度解析

Poppins几何无衬线字体&#xff1a;9种字重与多语言支持的技术实现深度解析 【免费下载链接】Poppins Poppins, a Devanagari Latin family for Google Fonts. 项目地址: https://gitcode.com/gh_mirrors/po/Poppins Poppins几何无衬线字体是一款由Indian Type Foundry…...