【北方蒼鷹算法】基于北方蒼鷹算法求解單目標(biāo)優(yōu)化問題附matlab代碼
1 簡介
優(yōu)化算法是解決優(yōu)化問題的有效隨機(jī)方法之一。在本文中,提出了一種新的基于群體的算法,稱為北蒼鷹優(yōu)化 (NGO) 算法,該算法模擬了北蒼鷹在獵物狩獵過程中的行為。這種狩獵策略包括獵物識別和追尾過程兩個(gè)階段。描述了所提出的 NGO 算法的各個(gè)步驟,然后提出了用于解決優(yōu)化問題的數(shù)學(xué)模型。在 68 個(gè)不同的目標(biāo)函數(shù)上評估 NGO 解決優(yōu)化問題的能力。









2 部分代碼
% DOI: 10.1109/ACCESS.2021.3133286
% Northern Goshawk Optimization: A New Swarm-Based Algorithm for Solving Optimization Problems
% Mohammad Dehghani1, Pavel Trojovsk媒1, and Stepan Hub謾lovsk媒2
% 1Department of Mathematics, Faculty of Science, University of Hradec Kr謾lov茅, 50003 Hradec Kr謾lov茅, Czech Republic
% 2Department of Applied Cybernetics, Faculty of Science, University of Hradec Kr謾lov茅, 50003 Hradec Kr謾lov茅, Czech Republic
% " Optimizer"
%%
clc
clear
close all
SearchAgents=30;
Fun_name='F4'; ?
Max_iterations=1000;
[lowerbound,upperbound,dimension,fitness]=fun_info(Fun_name);
[Score,Best_pos,NGO_curve]=NGO(SearchAgents,Max_iterations,lowerbound,upperbound,dimension,fitness);
figure('Position',[300 300 660 290])
subplot(1,2,1);
fun_plot(Fun_name);
title('Objective space')
xlabel('x_1');
ylabel('x_2');
zlabel([Fun_name,'( x_1 , x_2 )'])
subplot(1,2,2);
plots=semilogx(NGO_curve,'Color','g');
set(plots,'linewidth',2)
hold on
title('Objective space')
xlabel('Iterations');
ylabel('Best score');
axis tight
grid on
box on
legend('NGO')
display(['The best solution obtained by NGO is : ', num2str(Best_pos)]);
display(['The best optimal value of the objective funciton found by NGO is : ', num2str(Score)]);
3 仿真結(jié)果



4 參考文獻(xiàn)
M. Dehghani, ?. Hubálovsky and P. Trojovsky, "Northern Goshawk Optimization: A New Swarm-Based Algorithm for Solving Optimization Problems," in IEEE Access, vol. 9, pp. 162059-162080, 2021, doi: 10.1109/ACCESS.2021.3133286.
博主簡介:擅長智能優(yōu)化算法、神經(jīng)網(wǎng)絡(luò)預(yù)測、信號處理、元胞自動(dòng)機(jī)、圖像處理、路徑規(guī)劃、無人機(jī)等多種領(lǐng)域的Matlab仿真,相關(guān)matlab代碼問題可私信交流。
部分理論引用網(wǎng)絡(luò)文獻(xiàn),若有侵權(quán)聯(lián)系博主刪除。
