一、山瞪羚优化算法简介

山瞪羚优化算法(Mountain Gazelle Optimizer,MGO)由BenyaminAbdollahzadeh等人于2022年提出,该算法模拟山瞪羚的社会生活和等级制度,思路新颖,性能高效。

山瞪羚,雄性头体长101-115厘米;体重17-29.5千克;雌性头体长98-101厘米;角长5.8-11.5厘米;体重16-25千克。山瞪羚上体黑褐色,下体白色,侧腹和四肢浅棕色。面部标有与黑边交际的灰白色条纹。还有一道狭窄的,用于分隔腹侧和白色下体的暗色侧面带。下侧腹的皮毛颜色是浅黄色。黑尾巴短而浓密。耳朵也比较短。下体的白色分界线直到大腿关节。夏季太阳辐射强时皮毛短而圆润,冬季皮毛会加厚,用于抵制冬天的寒冷与冻雨。两性均有角。雄性长220-294毫米,角的长短很大程度上会受栖息地影响。同一族群的雌性山瞪羚的角比雄性小70%,角长84-153毫米。雄性的角是粗厚,上具有显着的螺纹,而雌性的角没有螺纹。角的横截面是椭圆形,底部的空隙为约25毫米。雄性的角几乎都是指向天空,在雌性的角稍微向前弯曲。山瞪羚聚群活动,一般是3-8个的小群,有时更多。社会结构是由一只雄性为头领,有自己的领地,保持其领土的永久群体内有几只年轻雌性。雄性争夺领土的控制权,在两个区域之间发生边界冲突时,通常用打斗的暴力形式来准定成败。参赛者停在相距约30厘米的地方多次相互用头撞击。一只年轻的山瞪羚试图占有他国领土之间的战斗中,雄性可以造成对方重伤,甚至打断对方的腿。这些瞪羚是昼夜动物,所有亚种,除了巴勒斯坦山瞪羚,均在月夜下吃草,通常情况下,在黎明和黄昏中休息,度过一天中最热的时光。山瞪羚是典型的食草动物。饮食包括草本和灌木植物,根据栖息地不同有差别。分布在阿拉伯半岛和以色列的山瞪羚,由于该地区分布着金合欢树,这些树木形成了大量的叶片和豆荚。它们通常走到相思树枝前,用后腿支撑站立,前腿倚在树上,取食树叶和荚果。由于当地水源稀缺,山瞪羚挖鳞茎、球茎和其他肉质植物的地下器官来改善躯体内的水平衡。

山瞪羚优化算法MGO全局搜索和局部搜索同步进行,采用如下四种机制更新位置:

MGO种群更新依据四种机制(TSM、MH、BMH、MSF),其流程如下:

二、MGO算法描述及流程图



参考文献:
Abdollahzadeh, B., Gharehchopogh, F. S., Khodadadi, N., & Mirjalili, S. (2022). Mountain Gazelle Optimizer: A new Nature-inspired Metaheuristic Algorithm for Global Optimization Problems. Advances in Engineering Software, 174, [103282]. https://doi.org/10.1016/j.advengsoft.2022.103282

三、CEC2017简介

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

四、求解结果

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

close all
clear
clc
Function_name=1; %测试函数1-30
lb=-100;%变量下界
ub=100;%变量上界
dim=10;%维度 10/30/50/100
SearchAgents_no=30; % Number of search agents
Max_iteration=100;%最大迭代次数
ObjectiveFunction=str2func('cec17_func');
[Best_score,Best_pos,MGO_cg_curve]=MGO(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);
figure('color','w')
% Best convergence curve
semilogy(MGO_cg_curve,'Color','r')
title(strcat('CEC2017-F',num2str(Function_name)))
xlabel('迭代次数');
ylabel('适应度值');
axis tight
grid on
box on
legend('MGO')
display(['The best solution obtained by MGO is : ', num2str(Best_pos)]);
display(['The best optimal value of the objective funciton found by MGO is : ', num2str(Best_score)]);%全部代码链接
%链接:https://pan.baidu.com/s/11I6eMyMU3k-UHfUu1O_mIA
%提取码:1234

F1:

F2:

F3:

F4:

F5:

F6:

五、参考代码

源文件夹包含MGO求解CEC2017的所有代码,测试函数共30个。每个函数可选择维度分别为:10、30、50与100。直接点击main.m文件直接运行,支持二次开发。

单目标优化:山瞪羚优化算法(Mountain Gazelle Optimizer,MGO)求解CEC2017(提供Matlab代码)相关推荐

  1. 单目标应用:瞪羚优化算法GOA求解旅行商问题TSP(提供Matlab代码)

    一.瞪羚优化算法 瞪羚优化算法(Gazelle Optimization Algorithm,GOA)由Agushaka等人于2022年提出,该算法模拟了瞪羚逃避捕食者的行为,思路新颖,性能高效. 瞪 ...

  2. 单目标应用:瞪羚优化算法(Gazelle Optimization Algorithm,GOA)优化BiLSTM权值和阈值(提供Matlab代码)

    瞪羚优化算法(Gazelle Optimization Algorithm,GOA)由Agushaka等人于2022年提出,该算法模拟了瞪羚逃避捕食者的行为,思路新颖,性能高效. 瞪羚的身高60-11 ...

  3. 单目标应用:基于北方苍鹰优化算法NGO的概率神经网络PNN数据分类(提供MATLAB代码)

    一.北方苍鹰优化算法NGO 北方苍鹰优化算法(Northern Goshawk Optimization,NGO)由MOHAMMAD DEHGHANI等人于2022年提出,该算法,该算法模拟了北方苍鹰 ...

  4. 单目标应用:白鲸优化算法(Beluga whale optimization,BWO)优化双向长短时记忆BiLSTM的权值和阈值(提供MATLAB代码)

    一.算法简介 白鲸优化算法(Beluga whale optimization,BWO)由Changting Zhong等人于2022年提出,该算法模拟了白鲸游泳,觅食和"鲸鱼坠落" ...

  5. 无人机三维路径规划:杨氏双缝实验优化算法(Young’s double-slit experiment optimizer,YDSE)提供MATLAB代码

    一.无人机模型 三维无人机路径规划专栏 无人机三维路径规划是无人机在执行任务过程中的非常关键的环节,无人机三维路径规划的主要目的是在满足任务需求和自主飞行约束的基础上,计算出发点和目标点之间的最佳航路 ...

  6. 海马算法 (Sea-Horse optimizer ,SHO)附matlab代码

    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信.

  7. 单目标优化:飞狐优化算法(Flying Foxes Optimization,FFO)求解cec2017(提供Matlab代码)

    一.飞狐优化算法简介 飞狐优化算法(Flying Foxes Optimization,FFO)由Konstantinos Zervoudakis与Stelios Tsafarakis于2022年提出 ...

  8. 单目标应用:基于蛇群优化算法(SO)的无人机(UAV)三维路径规划(提供MATLAB代码)

    一.蛇群优化算法SO 蛇群优化算法(Snake Optimizer,SO)由Fatma A. Hashim和Abdelazim G. Hussien于2022年提出,该算法思路新颖,快速高效,模拟了蛇 ...

  9. 多目标优化算法:多目标非洲秃鹫优化算法MOAVOA(提供Matlab代码)

    一. 算法简介 非洲秃鹫优化算法(African vultures optimization algorithm,AVOA)由Benyamin Abdollahzadeh等人受非洲秃鹫的觅食和导航行为 ...

最新文章

  1. EAP-MD5认证暴力破解工具eapmd5pass
  2. 【深度学习入门到精通系列】Deep Q Network
  3. 模拟电路技术之基础知识(六)
  4. 成功解决VS编译环境下C++语言出现的异常提示:烫烫烫烫烫烫烫烫烫烫
  5. 蓝牙L2CAP剖析(二)
  6. 5.15云原生中间件 Meetup 成都站来啦!
  7. C语言 字符串大小写转换
  8. mac磨皮插件_Adobe Pr 黑科技插件合集,一键安装,Mac+Win
  9. 【英语学习】【English L06】U01 Breakfast L2 A large breakfast
  10. 临界区设计太大或太小有何缺点_空压机100课之016:离心式压缩机的结构、原理及优缺点...
  11. 代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧
  12. AFA人工鱼群算法函数优化求解实例C++(2020.11.4)
  13. 详解PWM原理、频率与占空比
  14. java中412是什么错_412错误是什么 412错误怎么解决
  15. 卷积神经网络结构图绘制,卷积神经网络图怎么画
  16. [Mysql] 3.Mysql 数据类型
  17. php radio是什么意思,radio是什么意思_radio在线翻译_英语_读音_用法_例句_海词词典...
  18. 电子邮箱号码大全,至尊邮为你打开邮箱的正确格式
  19. JVM2:垃圾收集器与内存分配策略
  20. QPython+uiautomator2安卓手机自动化脚本编写

热门文章

  1. 访谈李开复:谁主宰微软未来
  2. do with与deal with用法
  3. 模块:time(时间)
  4. 经典好诗 词。。。。。
  5. 吴恩达机器学习课后作业ex3(python实现)
  6. “寻梦之路 阿里之行”北城大数据学院学生代表团赴北京阿里中心参观
  7. Win10 电脑能连接手机热点上网,但是连接wifi时却只能登qq不能浏览网页的问题
  8. 南桥杯嵌入式——TIM
  9. Jekyll建站之搜索引擎收录小技巧
  10. 不能上美国邮箱服务器地址,我的邮箱不能接收国外的邮件,国内的可以接收,请解决!...