【灰狼算法】基于内存、进化算子和局部搜索的改进灰狼优化器附matlab代码

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

个人主页:Matlab科研工作室

个人信条:格物致知。

更多Matlab仿真内容点击

智能优化算法       神经网络预测       雷达通信       无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机 

⛄ 内容介绍

即使对于进化算法和基于群体的算法,多模态函数的优化也具有挑战性,因为它需要有效探索以找到搜索空间的有希望区域,并有效利用以精确找到全局最优值。Gray Wolf Optimizer (GWO) 是最近开发的一种元启发式算法,其灵感来自于自然界,具有相对较少的参数进行调优。然而,GWO 及其大多数变体可能会遭受缺乏种群多样性、过早收敛以及无法在探索和剥削行为之间保持良好平衡的困扰。为了解决这些限制,这项工作提出了一种新的 GWO 变体,结合了记忆、进化运算符和随机局部搜索技术。它进一步集成了线性种群规模缩减(LPSR)技术。所提出的算法在 23 个数值基准函数、高维基准函数、13 个工程案例研究、4 个数据分类和 3 个函数逼近问题上进行了综合测试。基准函数主要取自CEC 2005和CEC 2010专场,包括轮换、移位函数。工程案例研究来自 CEC 2020 真实世界的非凸约束优化问题。所提出的 GWO 的性能与流行的元启发式算法进行了比较,即粒子群优化(PSO),引力搜索算法(GSA),拍击群算法(SSA),差分进化(DE),自适应差分进化(SADE),基本GWO及其三个最近改进的变体。已经进行了统计分析和弗里德曼测试获得的结果表明,所提出的 GWO 优于所测试的基准函数和工程案例研究的算法。

⛄ 部分代码

close all

clear all 

clc

SearchAgents=30; 

Fun_name='F2';  

Max_iterations=1000; 

[lowerbound,upperbound,dimension,fitness]=fun_info(Fun_name);

[Best_score,Best_pos,TSA_curve]=MELGWO(SearchAgents,Max_iterations,lowerbound,upperbound,dimension,fitness);

figure('Position',[500 500 660 290])

subplot(1,2,1);

func_plot(Fun_name);

title('Objective space')

xlabel('x_1');

ylabel('x_2');

zlabel([Fun_name,'( x_1 , x_2 )'])

subplot(1,2,2);

plots=semilogy(TSA_curve,'Color','g');

set(plots,'linewidth',2)

hold on

title('Objective space')

xlabel('Iterations');

ylabel('Best score');

axis tight

grid on

box on

legend('MELGWO')     

⛄ 运行结果

【灰狼算法】基于内存、进化算子和局部搜索的改进灰狼优化器附matlab代码_第1张图片

⛄ 参考文献

【灰狼算法】基于内存、进化算子和局部搜索的改进灰狼优化器附matlab代码_第2张图片

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

你可能感兴趣的:(优化求解,matlab,算法,开发语言)