【智能算法】象群算法(EHO)原理及实现

目录


1.背景

2016年,Wang等人受到自然界中象群社会行为启发,提出了象群算法(Elephant Herding Optimization, EHO)。

2.算法原理

2.1算法思想

EHO将大自然中象群的氏族结构和游牧过程中公象离群的行为,抽象为氏族更新操作和分离操作,实现高效的寻优过程。

2.2算法过程

氏族更新操作

在一个氏族中,大象在一起生活,并受到一头雌性大象的领导:
x new , ci , j = x ci , j + α × ( x best , ci − x ci , j ) × r (1) x_{\text{new},\text{ci},j}=x_{\text{ci},j}+\alpha\times\left(x_{\text{best},\text{ci}}-x_{\text{ci},j}\right)\times r\tag{1} xnew,ci,j=xci,j+α×(xbest,ci−xci,j)×r(1)

其中,xbest,ci为氏族ci的雌性领袖,是氏族ci中适应度最好的个体。

论文中提出氏族中心概念,对雌性领袖位置进行更新:
x n e w , c i , j = β × x c e n t e r , c i (2) x_{\mathrm{new,ci,}j}=\beta\times x_{\mathrm{center,ci}}\tag{2} xnew,ci,j=β×xcenter,ci(2)

氏族中心表述为:
x c e n t e r , c i , d = 1 n c i × ∑ j = 1 n c i x c i , j , d (3) x_{\mathrm{center},\mathrm{ci},d}=\frac{1}{n_{\mathrm{ci}}}\times\sum_{j=1}^{n_{\mathrm{ci}}}x_{\mathrm{ci},j,d}\tag{3} xcenter,ci,d=nci1×j=1∑ncixci,j,d(3)

分离操作:

自然界中雄性大象的生活习性是成长到一定年龄就会离开象群独自生活:
x w o r s t , c i = x m i n + ( x m a x − x m i n + 1 ) × R (4) x_{\mathrm{worst,ci}}=x_{\mathrm{min}}+\bigl(x_{\mathrm{max}}-x_{\mathrm{min}}+1\bigr)\times R\tag{4} xworst,ci=xmin+(xmax−xmin+1)×R(4)

伪代码

3.结果展示

4.参考文献

1\] Wang G G, Deb S, Gao X Z, et al. A new metaheuristic optimisation algorithm motivated by elephant herding behaviour\[J\]. International Journal of Bio-Inspired Computation, 2016, 8(6): 394-409.

相关推荐
又是忙碌的一天6 分钟前
八大排序之:冒泡排序、快速排序和堆排序
数据结构·算法·排序算法
一直都在57224 分钟前
数据结构入门:哈希表和树结构
数据结构·算法·散列表
宵时待雨24 分钟前
C语言笔记归纳19:动态内存管理
java·开发语言·算法
喇一渡渡27 分钟前
Java力扣---滑动窗口(2)
算法·leetcode·职场和发展
智驱力人工智能31 分钟前
山区搜救无人机人员检测算法 技术攻坚与生命救援的融合演进 城市高空无人机人群密度分析 多模态融合无人机识别系统
人工智能·深度学习·算法·架构·无人机·边缘计算
郝学胜-神的一滴44 分钟前
OpenGL中的glDrawArrays函数详解:从基础到实践
开发语言·c++·程序人生·算法·游戏程序·图形渲染
_OP_CHEN1 小时前
【算法基础篇】(三十四)图论基础深度解析:从概念到代码,玩转图的存储与遍历
算法·蓝桥杯·图论·dfs·bfs·算法竞赛·acm/icpc
王璐WL1 小时前
【数据结构】栈和队列及相关算法题
数据结构·算法
麒qiqi1 小时前
Linux 线程(POSIX)核心教程
linux·算法
Zhi.C.Yue1 小时前
React 的桶算法详解
前端·算法·react.js