【智能优化算法】基于金豺优化算法求解单目标优化问题附matlab代码

简介: 【智能优化算法】基于金豺优化算法求解单目标优化问题附matlab代码

 1 内容介绍

提出了一种新的自然启发优化方法,称为金豺优化(GJO)算法,旨在为解决现实世界的工程问题提供一种替代优化方法。 GJO 的灵感来自金豺 (Canis aureus) 的协作狩猎行为。 算法的三个基本步骤是猎物搜索、包围和突袭,它们都经过数学建模和应用。 通过与不同的最先进的元启发式算法进行比较,在基准函数上评估了所提出算法的能力。 所提出的算法被进一步测试以解决七个不同的工程设计问题,并介绍了该方法在电气工程领域的实际实现。 经典工程设计问题和实际实现的结果验证了所提出的算法适用于解决具有未知搜索空间的挑战性问题。

2 仿真代码

%___________________________________________________________________%

%  Golden Jackal Optimization  (GJO)            

%   Main paper: Chopra, Nitish, and Muhammad Mohsin Ansari. "Golden Jackal Optimization: A

%              Novel Nature-Inspired Optimizer for Engineering Applications."

%              Expert Systems with Applications (2022): 116924.

%

%               DOI: https://doi.org/10.1016/j.eswa.2022.116924            

%                                                                   %

%___________________________________________________________________%

%% TESTING GJO ON ENGINEERING DESIGN

SearchAgents_no=20; % Number of search agents

Max_iteration=100; % Maximum numbef of iterations

Function_name='F4';

% 'F1'Tension/compression spring design;

% 'F2' %Pressure vessel design

% 'F3' %Welded beam design

% 'F4' %Speed Reducer design

% 'F5'  Gear train design problem

% 'F6' Three-bar truss design problem

%% Load details of the selected engineering design problem

[lb,ub,dim,fobj]=Get_Functions_details(Function_name);

runn=1;% maximum number of re-run of GJO

cost=zeros(runn,1);pos=zeros(runn,4);

for i=1:runn

   disp(['Run no: ',num2str(i)]);

[Male_Jackal_score,Male_Jackal_pos,GJO_cg_curve]=GJO(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);

cost(i,:)=Male_Jackal_score;

end

mean_cost=mean(cost);

min_cost=min(cost);

max_cost=max(cost);

disp(['best value GJO:  ',num2str(min_cost,10),'  Mean: ', num2str(mean_cost),'  Max: ', num2str(max_cost)]);

   figure('Position',[269   240   660   290])

%Draw search space

subplot(1,2,1);

func_plot(Function_name);

title('Parameter space')

xlabel('x_1');

ylabel('x_2');

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

%Draw objective space

subplot(1,2,2);

plot(GJO_cg_curve,'Color','r','linewidth',1.5)

title('Objective space')

xlabel('Iteration');

ylabel('Best score obtained so far');

axis tight

grid on

box on

legend('GJO')

       

3 运行结果

image.gif编辑

image.gif编辑

4 参考文献

[1] Nc A ,  Mma B . Golden Jackal Optimization: A Novel Nature-Inspired Optimizer for Engineering Applications.  2022.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

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

相关文章
|
4天前
|
机器学习/深度学习 算法 数据挖掘
基于PSO优化的CNN-LSTM-Attention的时间序列回归预测matlab仿真
该文档介绍了使用MATLAB2022A中PSO优化算法提升时间序列预测模型性能的过程。PSO优化前后对比显示了优化效果。算法基于CNN、LSTM和Attention机制构建CNN-LSTM-Attention模型,利用PSO调整模型超参数。代码示例展示了PSO的迭代优化过程及训练、预测和误差分析环节。最终,模型的预测结果以图形形式展示,并保存了相关数据。
|
10天前
|
机器学习/深度学习 算法 网络架构
matlab使用贝叶斯优化的深度学习
matlab使用贝叶斯优化的深度学习
16 0
|
18天前
|
存储 人工智能 机器人
【Matlab】Matlab电话拨号音合成与识别(代码+论文)【独一无二】
【Matlab】Matlab电话拨号音合成与识别(代码+论文)【独一无二】
|
1月前
|
机器学习/深度学习 算法 数据可视化
基于GA优化的CNN-GRU-Attention的时间序列回归预测matlab仿真
该内容描述了一个使用CNN-LSTM-Attention模型优化时间序列预测的过程。在优化前后,算法的预测效果有明显提升,软件版本为matlab2022a。理论部分介绍了CNN用于特征提取,LSTM处理序列依赖,Attention关注重要信息,以及遗传算法(GA)优化超参数。提供的核心代码展示了GA的优化迭代和模型训练,以及预测结果的可视化比较。
|
1月前
|
算法 搜索推荐
基于遗传优化的协同过滤推荐算法matlab仿真
该内容是关于推荐系统和算法的描述。使用Matlab2022a执行的算法生成了推荐商品ID列表,显示了协同过滤在个性化推荐中的应用。用户兴趣模型通过获取用户信息并建立数学模型来提高推荐性能。程序片段展示了遗传算法(GA)的迭代过程,确定支持度阈值,并基于关联规则生成推荐商品ID。最终结果是推荐的商品ID列表,显示了算法的收敛和支持值。
|
2月前
|
机器学习/深度学习 算法 计算机视觉
霍夫变换车道线识别-车牌字符识别代码(matlab仿真与图像处理系列第5期)
霍夫变换车道线识别-车牌字符识别代码(matlab仿真与图像处理系列第5期)
30 2
|
2月前
|
算法
MATLAB | 插值算法 | 一维interpl插值法 | 附数据和出图代码 | 直接上手
MATLAB | 插值算法 | 一维interpl插值法 | 附数据和出图代码 | 直接上手
40 0
|
3月前
|
Perl
【MFAC】基于全格式动态线性化的无模型自适应控制(Matlab代码)
【MFAC】基于全格式动态线性化的无模型自适应控制(Matlab代码)
|
3月前
【数值分析】迭代法求方程的根(附matlab代码)
【数值分析】迭代法求方程的根(附matlab代码)
|
3月前
【数值分析】Jacobi、Seidel和Sor迭代法求解线性方程组(附matlab代码)
【数值分析】Jacobi、Seidel和Sor迭代法求解线性方程组(附matlab代码)