SCI一区TOP|电鳗觅食优化算法(EEFO)原理及实现【免费获取Matlab代码】


1.背景

2024年,W Zhao受到自然界中电鳗群体觅食行为启发,提出了电鳗觅食优化算法(Electric Eel Foraging Optimization, EEFO)。

在这里插入图片描述
在这里插入图片描述

2.算法原理

2.1算法思想

EEFO灵感来自于自然界中电鳗群体觅食行为,其对交互行为、休息行为、狩猎行为和迁移行为四种关键觅食行为进行数学建模。

在这里插入图片描述

2.2算法过程

交互行为

在EEFO中,每条电鳗都是一个候选解,每一步得到的最佳候选解被认为是目标猎物。这种相互作用表明,每条鳗鱼都利用鳗鱼的位置信息与其他个体进行合作互动。电鳗可以通过使用种群中所有个体的位置信息,与从种群中随机选择的任何鳗鱼进行互动。
{ { v i ( t + 1 ) = x j ( t ) + C × ( x ˉ ( t ) − x i ( t ) ) p 1 > 0.5 v i ( t + 1 ) = x j ( t ) + C × ( x r ( t ) − x i ( t ) ) p 1 ⩽ 0.5 f i t ( x j ( t ) ) < f i t ( x i ( t ) ) { v i ( t + 1 ) = x i ( t ) + C × ( x ˉ ( t ) − x j ( t ) ) p 2 > 0.5 v i ( t + 1 ) = x i ( t ) + C × ( x r ( t ) − x j ( t ) ) p 2 ⩽ 0.5 f i t ( x j ( t ) ) ⩾ f i t ( x i ( t ) ) (1) \begin{cases} \begin{cases} v_i(t + 1) = x_j(t)+C\times(\bar{x}(t)-x_i(t)) p_1 > 0.5\\ v_i(t + 1) = x_j(t)+C\times(x_r(t)-x_i(t)) p_1 \leqslant 0.5\end{cases} fit\big(x_j(t)\big) < fit(x_i(t)\big)\\ \\ \begin{cases} v_i(t + 1) = x_i(t)+C\times(\bar{x}(t)-x_j(t)) p_2 > 0.5\\ v_i(t + 1) = x_i(t)+C\times(x_r(t)-x_j(t)) p_2 \leqslant 0.5\end{cases} fit\big(x_j(t)\big) \geqslant fit(x_i(t))\end{cases}\tag{1} {vi(t+1)=xj(t)+C×(xˉ(t)xi(t))p1>0.5vi(t+1)=xj(t)+C×(xr(t)xi(t))p10.5fit(xj(t))<fit(xi(t)){vi(t+1)=xi(t)+C×(xˉ(t)xj(t))p2>0.5vi(t+1)=xi(t)+C×(xr(t)xj(t))p20.5fit(xj(t))fit(xi(t))(1)
其中,平均位置和随机个体表述为:
x ‾ ( t ) = 1 n ∑ i = 1 n x i ( t ) x r = L o w + r × ( U p − L o w ) (2) \overline{x}(t)=\frac1n\sum_{i=1}^nx_i(t)\\x_r=Low+r\times(Up-Low)\tag{2} x(t)=n1i=1nxi(t)xr=Low+r×(UpLow)(2)

休息行为

为了提高搜索效率,将鳗鱼位置向量的任意一维投影到搜索空间的主对角线上,在该区域建立一个休息区域。为了确定鳗鱼的休息区域,搜索空间和鳗鱼的位置都归一化为0-1的范围。鳗鱼位置的一个随机选择的维度被投射到归一化搜索空间的主对角线上。投影位置被认为是鳗鱼休息区域的中心。
{ X ∣ X − Z ( t ) ∣ ⩽ α 0 × ∣ Z ( t ) − x p r e y ( t ) ∣ } α 0 = 2 ⋅ ( e − e t T ) (3) \begin{aligned}&\left\{X|X-Z(t)|\leqslant\alpha_{0}\times\left|Z(t)-x_{prey}(t)\right|\right\}\\&\alpha_{0}=2\cdot\left(e-e^{\frac{t}{T}}\right)\end{aligned}\tag{3} {XXZ(t)α0×Z(t)xprey(t)}α0=2(eeTt)(3)

在这里插入图片描述

Z ( t ) = L o w + z ( t ) × ( U p − L o w ) z { t = x r a n d { n r a n d { d { t − L o w r a n d { d U p r a n d { d − L o w r a n d { d (4) Z(t)=Low+z(t)\times(Up-Low)\\z\{t=\frac{x_{rand\{n}^{rand\{d}\{t-Low^{rand\{d}}{Up^{rand\{d}-Low^{rand\{d}}\tag{4} Z(t)=Low+z(t)×(UpLow)z{t=Uprand{dLowrand{dxrand{nrand{d{tLowrand{d(4)
在进行休息行为之前,在其休息区域内获得鳗鱼的休息位置:
R i ( t + 1 ) = Z ( t ) + α × ∣ Z ( t ) − x p r e y ( t ) ∣ α = α 0 × sin ⁡ ( 2 π r 2 ) (5) \begin{aligned}&R_{i}(t+1)=Z(t)+\alpha\times\left|Z(t)-x_{prey}(t)\right|\\&\alpha=\alpha_{0}\times\sin(2\pi r_{2})\end{aligned}\tag{5} Ri(t+1)=Z(t)+α×Z(t)xprey(t)α=α0×sin(2πr2)(5)
其中α为静息区的尺度,r2为(0,1)内的随机数。尺度α使静息区的范围随着迭代的进行而减小,休息行为:
ν i ( t + 1 ) = R i ( t + 1 ) + n 2 × ( R i ( t + 1 ) r o u n d ( r a n d ) × x i ( t ) ) n 2 ∼ N ( 0 , 1 ) (6) \begin{aligned}&\nu_{i}(t+1)= R_{i}(t+1)+n_{2}\times(R_{i}(t+1)round(rand)\times x_{i}(t))\\&n_{2}\sim N(0,1)\end{aligned}\tag{6} νi(t+1)=Ri(t+1)+n2×(Ri(t+1)round(rand)×xi(t))n2N(0,1)(6)

狩猎行为
当鳗鱼发现猎物时,它们通过低电器官放电不断地与同伴交流和合作:
{ X ∣ X − x p r e y ( t ) ∣ ⩽ β 0 × ∣ x ‾ ( t ) − x p e r y ( t ) ∣ } β 0 = 2 × ( e − e t T ) (7) \begin{Bmatrix}X\big|X-x_{prey}(t)\big|\leqslant\beta_0\times\big|\overline{x}(t)-x_{pery}(t)\big|\end{Bmatrix}\\\beta_0=2\times\begin{pmatrix}e-e^{\frac{t}{T}}\end{pmatrix}\tag{7} {X Xxprey(t) β0× x(t)xpery(t) }β0=2×(eeTt)(7)
其中,β0为狩猎区域的初始尺度。猎物位置为:
H p r e y ( t + 1 ) = x p r e y ( t ) + β × ∣ x ‾ ( t ) − x p e r y ( t ) ∣ β = β 0 × sin ⁡ ( 2 π r 3 ) (8) \begin{aligned}&H_{prey}(t+1) = x_{prey}(t)+\beta\times\left|\overline{x}(t)-x_{pery}(t)\right|\\&\beta=\beta_{0}\times\sin(2\pi r_{3})\end{aligned}\tag{8} Hprey(t+1)=xprey(t)+β×x(t)xpery(t)β=β0×sin(2πr3)(8)
其中,β为狩猎区域的尺度,r3为(0,1)范围内的随机数。尺度β使狩猎区域的范围随着时间的推移而变小。鳗鱼在狩猎过程中所表现出的卷曲行为:
v i ( t + 1 ) = H p r e y ( t + 1 ) + η × ( H p r e y ( t + 1 ) − r o u n d ( r a n d ) × x i ( t ) ) (9) \begin{matrix}v_i(t+1)&=&H_{prey}(t+1)+\eta\times(H_{prey}(t+1)-round(rand)\times x_i(t))\end{matrix}\tag{9} vi(t+1)=Hprey(t+1)+η×(Hprey(t+1)round(rand)×xi(t))(9)
η表示卷曲因子:
η = e r 4 ( 1 − t ) T × cos ⁡ ( 2 π r 4 ) (10) \eta=e^{\frac{r_4(1-t)}{T}}\times\cos(2\pi r_4)\tag{10} η=eTr4(1t)×cos(2πr4)(10)

在这里插入图片描述

迁移行为

当鳗鱼发现猎物时,它们往往会从休息区迁移到捕猎区,迁徙行为:
ν i ( t + 1 ) = − r 5 × R i ( t + 1 ) + r 6 × H r ( t + 1 ) − L × ( H r ( t + 1 ) − x i ( t ) ) H r ( t + 1 ) = x p r e y ( t ) + β × ∣ x ˉ ( t ) − x p r e y ( t ) ∣ (11) \begin{aligned}&\nu_{i}(t + 1) = - r_{5}\times R_{i}(t+1) + r_{6}\times H_{r}(t+1)-L\times(H_{r}(t+1) - x_{i}(t))\\&H_{r}(t+1)=x_{prey}(t)+\beta\times\left|\bar{x}(t)-x_{prey}(t)\right|\end{aligned}\tag{11} νi(t+1)=r5×Ri(t+1)+r6×Hr(t+1)L×(Hr(t+1)xi(t))Hr(t+1)=xprey(t)+β×xˉ(t)xprey(t)(11)
鳗鱼可以通过低放电感知猎物的位置,因此它可以随时调整自己的位置。如果鳗鱼在觅食过程中感觉到猎物的靠近,它们就会移动到候选位置;否则,鳗鱼将停留在当前位置。
x i ( t + 1 ) = { x i ( t ) f i t ( x i ( t ) ) ⩽ f i t ( ν i ( t + 1 ) ) v i ( t + 1 ) f i t ( x i ( t ) ) > f i t ( ν i ( t + 1 ) ) (12) x_i(t+1)=\left\{\begin{array}{ccc}x_i(t)&&fit(x_i(t) )\leqslant fit(\nu_i(t+1) )\\v_i(\text{t} + 1)&&fit(x_i(t) )>fit(\nu_i(t+1) )\end{array}\right.\tag{12} xi(t+1)={xi(t)vi(t+1)fit(xi(t))fit(νi(t+1))fit(xi(t))>fit(νi(t+1))(12)

在这里插入图片描述

流程图

在这里插入图片描述

伪代码

在这里插入图片描述
在这里插入图片描述

3.结果展示

在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/b55c18d69e474069b1ce88398a80897a.png

4.参考文献

[1] Zhao W, Wang L, Zhang Z, et al. Electric eel foraging optimization: A new bio-inspired optimizer for engineering applications[J]. Expert Systems with Applications, 2024, 238: 122200.

5.代码获取

  • 8
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
仿生传感器是模仿生物系统的工作原理和结构来设计的人造传感器,它们通常具有高灵敏度、自适应性和复杂功能。这里列举几种常见的仿生传感器及其工作原理: 1. **电鳗皮肤传感器(Electroreception)**:电鳗皮肤上分布有大量的感受器,能感知微弱的电信号变化。例如,电鳗可以通过感知周围水体中的电压梯度来确定猎物的位置。这些传感器通常包含电极阵列,能转换外部信号为电信号。 2. **蜂眼视觉系统(Pseudocolor Vision)**:蜜蜂眼睛中的复眼由无数小的视锥细胞组成,能同时捕获不同角度的信息,形成宽视角。这种模拟蜂眼的传感器可用于全景成像或环境监测,通过多像素融合实现对周围环境的高分辨率感知。 3. **嗅觉受体(Artificial Olfactory System)**:仿生鼻或气味传感器模仿生物嗅觉器官,如果蝇的触须毛。它们通过分子识别元件检测特定气体分子,用于空气污染检测、疾病诊断或食品质量控制。 4. **听觉生物启发传感器(Bionic Hearing)**:如人工耳蜗,这是模仿人耳内部结构设计的植入式设备。它将声音信号转化为电信号,然后通过植入人脑的电极直接刺激听神经,帮助耳聋患者恢复听力。 5. **触觉传感器(Tactile Sensors)**:如手指触控传感器(force/torque sensors)模仿人类皮肤的感觉,用于机器人技术,使机器人能感知接触压力、摩擦力等信息,实现更精准的交互。 相关问题: 1. 仿生传感器的主要应用领域是什么? 2. 如何实现电鳗皮肤传感器的信号转换? 3. 蜜蜂复眼视觉系统的优势是什么? 4. 人工嗅觉系统的分子识别元件如何工作? 5. 人工耳蜗是如何与大脑连接的?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小O的算法实验室

谢谢大佬的肯定!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值