0
点赞
收藏
分享

微信扫一扫

【孔雀优化算法】基于孔雀优化算法求解单目标优化问题附matlab代码POA

登高且赋 2022-04-07 阅读 82
matlab

1 简介

本文开发了一种新的孔雀 (Pavo muticus/cristatus) 优化算法 (POA),其中包含其在固体氧化物燃料电池 (SOFC) 参数估计中的设计、评估和应用。 POA主要复制了孔雀群的求偶、觅食和追逐行为,其中使用孔雀、孔雀和孔雀幼崽三种类型的孔雀来模拟觅食过程中的动态群体行为和层次结构。特别是,实现了有效且高效的探索性和利用性搜索算子,即孔雀的食物搜索和独特的旋转舞蹈行为,以及孔雀和孔雀的自适应搜索和接近机制。采用电化学模型和稳态模型两种广泛应用的 SOFC 模型在不同的运行条件下进行验证。仿真结果表明,POA 优于其竞争对手,例如粒子群优化 (PSO)、灰狼优化 (GWO)、蚁狮优化 (ALO) 和蜻蜓算法 (DA)。例如,在基于 79 节电池堆的电化学模型的验证下,POA 获得的 RMSE 分别仅为 ALO、DA、GWO 和 PSO 的 0.42%、0.27%、2.05% 和 3.99%。此外,使用23个标准基准函数进行分析,实验结果表明POA可以有效地探索理想的搜索区域并定位全局最优解。

2 部分代码

%% ***************************************************************%  Peafowl Optimization Algorithm (POA) source codes version 1.0%% ***************************************************************%% Clear spaceclcclearclose all;SearchAgents_no=30; % Number of search agentsFunction_name='F12'; % Name of the test function that can be from F1 to F23 (Table 1,2,3 in the paper)Max_iteration=1000; % Maximum numbef of iterations% Load details of the selected benchmark function[lb,ub,dim,fobj]=Get_Functions_details(Function_name);[Best_pos,WOA_cg_curve]=POA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);figure('Position',[269   240   660   290])%Draw search spacesubplot(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 spacesubplot(1,2,2);semilogy(WOA_cg_curve,'Color','r','linewidth',2)title('Objective space')xlabel('Iteration');ylabel('Best score obtained so far');axis tightgrid onbox onlegend('POA')

3 仿真结果

4 参考文献

[1] A J W ,  A B Y ,  A Y C , et al. Novel phasianidae inspired peafowl ( Pavo muticus/cristatus ) optimization algorithm: Design, evaluation, and SOFC models parameter estimation. 

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

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

举报

相关推荐

0 条评论