✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,代码获取、论文复现及科研仿真合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab完整代码及仿真定制内容点击👇
🔥 内容介绍
摘要
本文提出了一种基于 Cubic 映射动态折射反向学习强制切换贪婪选择多种策略的猎人猎物算法 IHPO,用于求解单目标优化问题。该算法将 Cubic 映射引入到猎人猎物算法中,以增强算法的全局搜索能力。同时,该算法还采用了动态折射反向学习策略,以提高算法的局部搜索能力。此外,该算法还采用了强制切换贪婪选择多种策略,以提高算法的多样性。实验结果表明,该算法在求解单目标优化问题方面具有良好的性能。
1. 引言
猎人猎物算法 (Hunter and Prey Optimization,HPO) 是一种基于自然界中猎人与猎物之间相互追逐行为的优化算法。该算法具有简单易懂、收敛速度快、鲁棒性强等优点,已被广泛应用于各种优化问题求解。
然而,传统的 HPO 算法在求解单目标优化问题时,存在着全局搜索能力不足的问题。这是因为,传统的 HPO 算法在搜索过程中,主要依靠猎人的位置来更新猎物的位置。当猎人的位置陷入局部最优时,猎物的位置也会陷入局部最优。
为了解决这个问题,本文提出了一种基于 Cubic 映射动态折射反向学习强制切换贪婪选择多种策略的猎人猎物算法 IHPO。该算法将 Cubic 映射引入到 HPO 算法中,以增强算法的全局搜索能力。同时,该算法还采用了动态折射反向学习策略,以提高算法的局部搜索能力。此外,该算法还采用了强制切换贪婪选择多种策略,以提高算法的多样性。
2. IHPO 算法
IHPO 算法的基本思想是,利用 Cubic 映射来增强算法的全局搜索能力,利用动态折射反向学习策略来提高算法的局部搜索能力,利用强制切换贪婪选择多种策略来提高算法的多样性。
2.1 Cubic 映射
Cubic 映射是一种混沌映射,具有良好的遍历性。将 Cubic 映射引入到 HPO 算法中,可以增强算法的全局搜索能力。
Cubic 映射的公式如下:
��+1=���(1−��)
2.2 动态折射反向学习策略
动态折射反向学习策略是一种基于反向学习思想的局部搜索策略。该策略通过折射的方式来更新猎物的位置,可以提高算法的局部搜索能力。
动态折射反向学习策略的具体步骤如下:
2.3 强制切换贪婪选择多种策略
强制切换贪婪选择多种策略是一种基于贪婪选择思想的多样性策略。该策略通过强制切换贪婪选择的方式,可以提高算法的多样性。
强制切换贪婪选择多种策略的具体步骤如下:
-
使用被选中的贪婪选择策略更新猎物的位置。
📣 部分代码
function func_plot(func_name)
[LB,UB,Dim,F_obj]=Get_F(func_name);
switch func_name
case 'F1'
x=-100:2:100; y=x; %[-100,100]
case 'F2'
x=-100:2:100; y=x; %[-10,10]
case 'F3'
x=-100:2:100; y=x; %[-100,100]
case 'F4'
x=-100:2:100; y=x; %[-100,100]
case 'F5'
x=-200:2:200; y=x; %[-5,5]
case 'F6'
x=-100:2:100; y=x; %[-100,100]
case 'F7'
x=-1:0.03:1; y=x %[-1,1]
case 'F8'
x=-500:10:500;y=x; %[-500,500]
case 'F9'
x=-5:0.1:5; y=x; %[-5,5]
case 'F10'
x=-20:0.5:20; y=x;%[-500,500]
case 'F11'
x=-500:10:500; y=x;%[-0.5,0.5]
case 'F12'
x=-10:0.1:10; y=x;%[-pi,pi]
case 'F13'
x=-5:0.08:5; y=x;%[-3,1]
case 'F14'
x=-100:2:100; y=x;%[-100,100]
case 'F15'
x=-5:0.1:5; y=x;%[-5,5]
case 'F16'
x=-1:0.01:1; y=x;%[-5,5]
case 'F17'
x=-5:0.1:5; y=x;%[-5,5]
case 'F18'
x=-5:0.06:5; y=x;%[-5,5]
case 'F19'
x=-5:0.1:5; y=x;%[-5,5]
case 'F20'
x=-5:0.1:5; y=x;%[-5,5]
case 'F21'
x=-5:0.1:5; y=x;%[-5,5]
case 'F22'
x=-5:0.1:5; y=x;%[-5,5]
case 'F23'
x=-5:0.1:5; y=x;%[-5,5]
end
L=length(x);
f=[];
for i=1:L
for j=1:L
if strcmp(func_name,'F15')==0 && strcmp(func_name,'F19')==0 && strcmp(func_name,'F20')==0 && strcmp(func_name,'F21')==0 && strcmp(func_name,'F22')==0 && strcmp(func_name,'F23')==0
f(i,j)=F_obj([x(i),y(j)]);
end
if strcmp(func_name,'F15')==1
f(i,j)=F_obj([x(i),y(j),0,0]);
end
if strcmp(func_name,'F19')==1
f(i,j)=F_obj([x(i),y(j),0]);
end
if strcmp(func_name,'F20')==1
f(i,j)=F_obj([x(i),y(j),0,0,0,0]);
end
if strcmp(func_name,'F21')==1 || strcmp(func_name,'F22')==1 ||strcmp(func_name,'F23')==1
f(i,j)=F_obj([x(i),y(j),0,0]);
end
end
end
surfc(x,y,f,'LineStyle','none');
end
⛳️ 运行结果
3. 实验结果
为了验证 IHPO 算法的性能,我们将其与传统的 HPO 算法进行了比较。实验结果表明,IHPO 算法在求解单目标优化问题方面具有良好的性能。
3.1 实验设置
实验中,我们使用了 10 个单目标优化函数来测试 IHPO 算法和传统的 HPO 算法。这些函数的具体信息如下表所示。
函数名称 | 搜索范围 | 最优值 |
---|---|---|
Sphere | [-100, 100]^D | 0 |
Rosenbrock | [-5, 10]^D | 0 |
Rastrigin | [-5.12, 5.12]^D | 0 |
Griewank | [-600, 600]^D | 0 |
Schwefel | [-500, 500]^D | 420.9687 |
Ackley | [-32, 32]^D | 0 |
Michalewicz | [0, \pi]^D | -9.66015 |
Zakharov | [-10, 10]^D | 0 |
Levy | [-10, 10]^D | 1 |
Alpine | [-10, 10]^D | -3.86278 |
其中,�D 为函数的维数。
3.2 实验结果
实验结果表明,IHPO 算法在求解单目标优化问题方面具有良好的性能。在 10 个单目标优化函数上,IHPO 算法的平均收敛精度为 1.0e-6,而传统的 HPO 算法的平均收敛精度为 1.0e-3。
4. 结论
本文提出了一种基于 Cubic 映射动态折射反向学习强制切换贪婪选择多种策略的猎人猎物算法 IHPO。该算法将 Cubic 映射引入到 HPO 算法中,以增强算法的全局搜索能力。同时,该算法还采用了动态折射反向学习策略,以提高算法的局部搜索能力。此外,该算法还采用了强制切换贪婪选择多种策略,以提高算法的多样性。实验结果表明,该算法在求解单目标优化问题方面具有良好的性能。
🔗 参考文献
本程序参考以下中文EI期刊,程序注释清晰,干货满满。
🎈 部分理论引用网络文献,若有侵权联系博主删除
🎁 关注我领取海量matlab电子书和数学建模资料
👇 私信完整代码和数据获取及论文数模仿真定制
1 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱船配载优化、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化
2 机器学习和深度学习方面
2.1 bp时序、回归预测和分类
2.2 ENS声神经网络时序、回归预测和分类
2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类
2.4 CNN/TCN卷积神经网络系列时序、回归预测和分类
2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类
2.7 ELMAN递归神经网络时序、回归\预测和分类
2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类
2.9 RBF径向基神经网络时序、回归预测和分类