【智能算法】象群算法(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.

相关推荐
2301_8002561124 分钟前
8.2 空间查询基本组件 核心知识点总结
数据库·人工智能·算法
不穿格子的程序员24 分钟前
从零开始写算法——矩阵类题:矩阵置零 + 螺旋矩阵
线性代数·算法·矩阵
资深web全栈开发1 小时前
LeetCode 3432. 统计元素和差值为偶数的分区方案数
算法·leetcode
黎茗Dawn1 小时前
DDPM-KL 散度与 L2 损失
人工智能·算法·机器学习
wearegogog1231 小时前
DEA模型MATLAB实现(CCR、BCC、超效率)
开发语言·算法·matlab
业精于勤的牙1 小时前
浅谈:快递物流与算法的相关性(四)
算法
ghie90901 小时前
MATLAB自适应子空间辨识工具箱
数据结构·算法·matlab
过河卒_zh15667661 小时前
算法备案最新通知:26年1月批备案号发放名单已锁定,发放前的复审抽审已开始
人工智能·算法·aigc·算法备案
cici158741 小时前
基于反向传播算法实现手写数字识别的MATLAB实现
开发语言·算法·matlab
老欧学视觉1 小时前
0013机器学习聚类算法(无监督算法)
算法·机器学习·聚类