这项研究提出了一种新的元启发式算法,称为沙猫群优化 (SCSO),它模仿试图在自然界中生存的沙猫行为。这些猫能够探测到低于 2 kHz 的低频,并且具有难以置信的挖掘猎物的能力。受这两个特征的启发,所提出的算法包括两个主要阶段(搜索和攻击)。该算法以平衡的方式控制探索和利用阶段的转换,并在找到具有较少参数和操作的良好解决方案方面表现良好。它是通过使用定义的自适应策略找到适当运动的方向和速度来执行的。 SCSO 算法用 20 个著名的 CEC2019 基准函数以及现代 10 个复杂的测试函数进行了测试,并将所得结果与著名的元启发式算法进行了比较。根据结果,在 63.3% 的测试函数中找到最佳解的算法是 SCSO。此外,SCSO算法应用于焊接梁设计、拉压弹簧设计、压力容器设计、活塞杆设计、减速器设计、三杆桁架设计、悬臂梁设计等七大具有挑战性的工程设计问题。获得的结果表明,SCSO 在收敛速度和定位全部或大部分局部/全局最优值方面取得了成功,并且优于其他比较方法。
%___________________________________________________________________%
% Grey Wolf Optimizer (GWO) source codes version 1.0 %
% %
% Developed in MATLAB R2011b(7.13) %
% %
% Author and programmer: Seyedali Mirjalili %
% %
% e-Mail: ali.mirjalili@gmail.com %
% seyedali.mirjalili@griffithuni.edu.au %
% %
% Homepage: http://www.alimirjalili.com %
% %
% Main paper: S. Mirjalili, S. M. Mirjalili, A. Lewis %
% Grey Wolf Optimizer, Advances in Engineering %
% Software , in press, %
% DOI: 10.1016/j.advengsoft.2013.12.007 %
% %
%___________________________________________________________________%
% This function initialize the first population of search agents
function Positions=initialization(SearchAgents_no,dim,ub,lb)
Boundary_no= size(ub,2); % numnber of boundaries
% If the boundaries of all variables are equal and user enter a signle
% number for both ub and lb
if Boundary_no==1
Positions=rand(SearchAgents_no,dim).*(ub-lb)+lb;
% Positions=rand(SearchAgents_no,dim).*(ub-lb)+lb;
end
% If each variable has a different lb and ub
if Boundary_no>1
for i=1:dim
ub_i=ub(i);
lb_i=lb(i);
Positions(:,i)=rand(SearchAgents_no,1).*(ub_i-lb_i)+lb_i;
end
end
[1] Seyyedabbasi A , Kiani F . Sand Cat swarm optimization: a nature-inspired algorithm to solve global optimization problems[J]. Engineering with Computers, 2022:1-25.
部分理论引用网络文献,若有侵权联系博主删除。