【智能算法】能量谷优化算法(EVO)原理及实现

在这里插入图片描述


1.背景

2023年,M Azizi等人受到物理理论粒子稳定性与衰变性启发,提出了能量谷优化算法(Energy Valley Optimizer, DVO)。

2.算法原理

2.1算法思想

EVO基于粒子物理反应的优化过程。在这个过程中,稳定性较差的粒子会通过衰变释放能量,并趋向于向能量谷或稳定带移动,以提高其稳定性水平。这种物理过程启发了元启发式算法的发展,其中候选解倾向于逐步改进以达到更稳定的状态。
在这里插入图片描述

2.2算法过程

考虑富中子粒子和贫中子粒子之间的差异,对每个粒子进行目标函数评价,并确定为粒子的中子富集水平(NEL):
E B = ∑ i = 1 n N E L i n ,   i = 1 , 2 , … , n (1) \mathrm{EB=\frac{\sum_{i=1}^nNEL_i}n,~i=1,2,\ldots,n}\tag{1} EB=ni=1nNELi, i=1,2,,n(1)
式中,NELi为第i个粒子的中子富集能级,EB为宇宙中粒子的富集界。

确定粒子的稳定水平:
S L i = N E L i − B S W S − B S ,   i = 1 , 2 , … , n (2) \mathrm{SL_i=\frac{NEL_i-BS}{WS-BS},~i=1,2,\ldots,n}\tag{2} SLi=WSBSNELiBS, i=1,2,,n(2)
其中,SLi为第i个粒子的稳定水平,BS和WS为宇宙内稳定水平最佳和最差的粒子。

如果粒子的中子富集水平高于富集界(NELi > EB),则假设该粒子具有较大的N/Z比,因此采用α、β或γ衰变过程。在[0,1]范围内生成一个随机数,它模拟了宇宙中的稳定界(Stability Bound, SB)。如果粒子的稳定水平高于稳定界(SLi > SB),则认为发生α和γ衰变。
在这里插入图片描述
发射的射线是候选溶液中的决策变量,将其去除并替换为具有最佳稳定水平(XBS)的粒子或候选溶液中的射线:
X i N e w 1 = X i ( X B S ( x i j ) ) , { i = 1 , 2 , … , n . j = A l p h a I n d e x I I . (3) \left.\mathrm{X_i^{New1}}=\mathrm{X_i}\Big( \mathrm{X_{BS}}\Big( \mathrm{x_i^j}\Big)\Big),\left\{\begin{array}{c}i=1,2,\ldots,n.\\j=Alpha Index II.\end{array}\right.\right.\tag{3} XiNew1=Xi(XBS(xij)),{i=1,2,,n.j=AlphaIndexII.(3)
其中,Xi为第i个粒子(解候选)的当前位置向量,XBS为稳定性等级最好的粒子的位置向量。

在伽马衰变中,发射γ射线以提高受激粒子的稳定性水平,位置更新为:
D i k = ( x 2 − x 1 ) 2 + ( y 2 − y 1 ) 2 , { i = 1 , 2 , … , n . k = 1 , 2 , … , n − 1. (4) \mathrm D_{\mathrm i}^{\mathrm k}=\sqrt{(\mathrm x_2-\mathrm x_1)^2+\left(\mathrm y_2-\mathrm y_1\right)^2},\left\{\begin{array}{c}i=1,2,\dots,n.\\k=1,2,\dots,n-1.\end{array}\right.\tag{4} Dik=(x2x1)2+(y2y1)2 ,{i=1,2,,n.k=1,2,,n1.(4)
第二个候选解决方案位置更新为:
X i N e w 2 = X i ( X N g ( x i j ) ) , { i = 1 , 2 , … , n . j = Gamma Index II . (5) \mathrm X_{\mathrm i}^{\mathrm New2}=\mathrm X_{\mathrm i}\Big(\mathrm X_{\mathrm Ng}\Big(\mathrm x_{\mathrm i}^{\mathrm j}\Big)\Big),\left\{\begin{matrix}i=1,2,\ldots,n.\\j=\text{Gamma Index II}.\end{matrix}\right.\tag{5} XiNew2=Xi(XNg(xij)),{i=1,2,,n.j=Gamma Index II.(5)
其中,XNg为第i个粒子周围邻近粒子的位置向量。

如果粒子的稳定水平低于稳定界(SLi≤SB),则认为发生了β衰变。β射线从粒子中释放出来,以提高粒子的稳定水平,因此由于这些粒子的不稳定水平较高,应该在搜索空间中进行大的跳跃:
X C P = ∑ i = 1 n X i n ,   i = 1 , 2 , … , n . X i N e w 1 = X i + ( r 1 × X B S − r 2 × X C P ) S L i ,   i = 1 , 2 , … , n . (6) \mathrm{X_{CP}=\frac{\sum_{i=1}^nX_i}n,~i=1,2,\ldots,n.}\\\mathrm{X_{i}^{New1}=X_{i}+\frac{(r_{1}\times X_{BS}-r_{2}\times X_{CP})}{SL_{i}},~i=1,2,\ldots,n.}\tag{6} XCP=ni=1nXi, i=1,2,,n.XiNew1=Xi+SLi(r1×XBSr2×XCP), i=1,2,,n.(6)
其中,XBS是稳定水平最好的粒子的位置向量,XCP是粒子中心的位置向量。
为了提高算法的开发和探索水平,对采用β衰变的粒子进行另一个位置更新过程,在粒子的稳定水平不影响运动过程的情况下,对具有最佳稳定水平(XBS)的粒子或候选粒子和邻近的粒子或候选粒子(XNg)进行控制:
X i N e w 2 = X i + ( r 3 × X B S − r 4 × X N g ) ,   i = 1 , 2 , … , n . (7) \mathrm{X_i^{New2}=X_i+\begin{pmatrix}r_3\times X_{BS}-r_4\times X_{Ng}\end{pmatrix},~i=1,2,\ldots,n.}\tag{7} XiNew2=Xi+(r3×XBSr4×XNg), i=1,2,,n.(7)
其中,XBS是稳定性水平最好的粒子的位置向量,XNg是第i个粒子周围邻近粒子的位置向量。
如果粒子的中子富集水平低于富集界(NELi≤EB),则认为该粒子的N/Z比较小,因此粒子倾向于通过电子捕获或正电子发射向稳定带移动:
X i N e w = X i + r ,   i = 1 , 2 , … , n . (8) \mathrm{X_i^{New}=X_i+r,~i=1,2,\ldots,n.}\tag{8} XiNew=Xi+r, i=1,2,,n.(8)

伪代码

在这里插入图片描述

3.结果展示

在这里插入图片描述

4.参考文献

[1] Azizi M, Aickelin U, A. Khorshidi H, et al. Energy valley optimizer: a novel metaheuristic algorithm for global and engineering optimization[J]. Scientific Reports, 2023, 13(1): 226.

  • 29
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小O的算法实验室

谢谢大佬的肯定!

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

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

打赏作者

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

抵扣说明:

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

余额充值