目录

2024最新算法:斑翠鸟优化算法(Pied Kingfisher Optimizer ,PKO)求解23个基准函数(提供MATLAB代码)

一、斑翠鸟优化算法

斑翠鸟优化算法(Pied Kingfisher Optimizer ,PKO),是由Abdelazim Hussien于2024年提出的一种基于群体的新型元启发式算法,它从自然界中观察到的斑翠鸟独特的狩猎行为和共生关系中汲取灵感。PKO 算法围绕三个不同的阶段构建:栖息/悬停猎物(探索/多样化)、潜水寻找猎物(开发/集约化)和培养共生关系。这些行为方面被转化为数学模型,能够有效地解决不同搜索空间中的各种优化挑战。

参考文献:

1\]Pied Kingfisher Optimizer: A new bio-inspired algorithm for solving numerical optimization and industrial engineering problems ### 二、23个函数介绍 ![](https://file.jishuzhan.net/article/1764092318060646402/3ea3af6a4cb623b78dd28fe776bae638.webp) 参考文献: \[1\] Yao X, Liu Y, Lin G M. Evolutionary programming made faster\[J\]. IEEE transactions on evolutionary computation, 1999, 3(2):82-102. ### 三、PKO求解23个函数 #### 3.1部分代码 ``` close all ; clear clc Npop=30;                 Function_name='F8';     % Name of the test function that can be from F1 to F23 (  Tmax=500;               [lb,ub,dim,fobj]=Get_Functions_details(Function_name); [Best_fit,Best_pos,Convergence_curve]=PKO(Npop,Tmax,lb,ub,dim,fobj); figure('Position',[100 100 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); semilogy(Convergence_curve,'Color','r','linewidth',3) title('Search space') xlabel('Iteration'); ylabel('Best score obtained so far'); axis tight grid on box on legend('PKO') saveas(gca,[Function_name '.jpg']); display(['The best solution is ', num2str(Best_pos)]); display(['The best fitness value is ', num2str(Best_fit)]); ``` #### 3.2部分结果 ![](https://file.jishuzhan.net/article/1764092318060646402/18c0ca9d2f7357ebd3e0bb5fa1344dd1.webp) ![](https://file.jishuzhan.net/article/1764092318060646402/528044b578e82337e2f098e769751c79.webp) ![](https://file.jishuzhan.net/article/1764092318060646402/a5b99fd5a693208603a9b8793a549134.webp) ![](https://file.jishuzhan.net/article/1764092318060646402/4cc15e4618e49f4ddb276f8f6fc53caa.webp) ![](https://file.jishuzhan.net/article/1764092318060646402/d040855d10430aeef1e576a5b6eb92ae.webp) ![](https://file.jishuzhan.net/article/1764092318060646402/8a4cd824d9e7d5329c8a39d921a9898d.webp) ![](https://file.jishuzhan.net/article/1764092318060646402/14aaf67de06baf8a446f7d00b8862725.webp) ### 四、完整MATLAB代码 文件夹夹内包含该算法求解23个函数的完整MATLAB代码,点击main.m即可运行。 ![](https://file.jishuzhan.net/article/1764092318060646402/b4c6d2cf62eb318d7cfc9c3fdb3184e4.webp)

本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
专注VB编程开发20年2 小时前
写.NET可以指定运行SUB MAIN吗?调用任意一个里面的类时,如何先执行某段初始化代码?
开发语言·vb.net
仙人掌_lz3 小时前
利用python从零实现Byte Pair Encoding(BPE):NLP 中的“变形金刚”
开发语言·python·gpt·自然语言处理·llm·token·deepseek
q567315233 小时前
使用Alamofire下载网站首页内容
开发语言·爬虫·python·scrapy·golang
龙俊杰的读书笔记4 小时前
[leetcode] 面试经典 150 题——篇9:二叉树(番外:二叉树的遍历方式)
数据结构·算法·leetcode·面试
Aerkui4 小时前
Python标准库-copy
开发语言·python
刚入门的大一新生4 小时前
C++初阶-C++的讲解1
开发语言·c++
Swift社区5 小时前
从表格到序列:Swift 如何优雅地解 LeetCode 251 展开二维向量
开发语言·leetcode·swift
hweiyu005 小时前
Python从入门到精通全套视频教程免费
开发语言·python
sml259(劳改版)6 小时前
数据结构--堆
数据结构·算法·
唐人街都是苦瓜脸7 小时前
Java RPC 框架是什么
java·开发语言·rpc