基于莱维飞行分布算法的函数寻优算法

一、理论基础

1、莱维飞行分布算法

本文提出了一种新的基于莱维飞行的元启发式算法,称为莱维飞行分布(Lévy flight distribution, LFD),用于求解实际优化问题。LFD算法的灵感来自莱维飞行随机游走,用于探索未知的大搜索空间(例如,无线传感器网络(Wireless sensor network, WSN))。
为该算法的数学模型建模的仿真环境是WSN环境,在该环境中,算法首先计算每两个相邻传感器节点之间的欧几里德距离 E D ED ED,然后根据计算结果确定传感器节点是否处于其原始位置计算出的距离 E D ED ED或将其移动到另一个位置。将使用LFs模型执行另一位置,其中新位置将位于靠近具有少量邻居节点的传感器节点的位置,或位于部署区域(搜索空间)中没有传感器节点的位置,以减少传感器节点之间发生重叠的机会。
LFs的数学模型具体请参考这里。从数学上讲,所提出的LFD算法使用式(1)计算前两个相邻代理位置之间的欧氏距离 E D ED ED,即 X i X_i Xi X J X_J XJ( X i X_i Xi的邻居)。 E D ( X i , X J ) = ( x J − x i ) 2 + ( y J − y i ) 2 (1) ED(X_i,X_J)=\sqrt{(x_J-x_i)^2+(y_J-y_i)^2}\tag{1} ED(Xi,XJ)=(xJxi)2+(yJyi)2 (1)其中, ( x i , y i ) (x_i,y_i) (xi,yi) X i X_i Xi的位置坐标, ( x J , y J ) (x_J,y_J) (xJ,yJ) X J X_J XJ的位置坐标。将距离 E D ED ED与给定阈值进行比较,直到代理在特定次数的迭代后完成。如果距离小于阈值(这意味着在搜索空间中部署代理时存在问题),则该算法通过使用式(2)调整这些代理的位置来启动LFs机制。 X J ( t + 1 ) = L e v y _ F l i g h t ( X J ( t ) , X L e a d e r , L B , U B ) (2) X_J(t+1)=Levy\_Flight(X_J(t),X_{Leader},LB,UB)\tag{2} XJ(t+1)=Levy_Flight(XJ(t),XLeader,LB,UB)(2)其中, t t t是当前迭代次数; L e v y _ F l i g h t Levy\_Flight Levy_Flight是根据步长和方向执行Lévy飞行工作的函数,算法1演示了此函数的伪代码; U B UB UB L B LB LB分别是搜索空间的最大值和最小值; X L e a d e r X_{Leader} XLeader是邻居数最少的代理的位置,将用作LF方向。式(2)将代理 X J X_J XJ移向具有最少邻居数的代理位置。
在这里插入图片描述
X J ( t + 1 ) = L B + ( U B − L B ) r a n d ( ) (3) X_J(t+1)=LB+(UB-LB)rand()\tag{3} XJ(t+1)=LB+(UBLB)rand()(3)其中, r a n d ( ) rand() rand()是用于生成 [ 0 , 1 ] [0,1] [0,1]间均匀分布的随机数 R R R的函数。式(3)为在搜索空间中发现非访问位置解提供了更多机会,并增加了所提出算法的探索阶段。该方程将 X J X_J XJ的位置更新为搜索空间中没有其他代理的新区域。 R = r a n d ( ) ,    C S V = 0.5 (4) R=rand(),\,\,CSV=0.5\tag{4} R=rand(),CSV=0.5(4)其中, C S V CSV CSV是在 X J X_J XJ位置的每次更新中与 R R R进行比较的标量值。为了更新传感器节点 X J X_J XJ,算法在每次迭代时都会检查式(4)中的 R R R值,如果该值小于 C S V CSV CSV,则执行式(2);否则,执行式(3)以使算法有更多机会发现搜索空间。改变算法的解将增加其探索能力并提高其性能。所提出的算法使用式(5)更新 X i X_i Xi的位置。 X i ( t + 1 ) = T P + α 1 × T F N e i g h b o u r s + r a n d ( ) × α 2 × ( ( T P + α 3 X L e a d e r ) / 2 − X i ( t ) ) (5) X_i(t+1)=TP+\alpha_1\times TF_{Neighbours}+rand()\times\alpha_2\times((TP+\alpha_3X_{Leader})/2-X_i(t))\tag{5} Xi(t+1)=TP+α1×TFNeighbours+rand()×α2×((TP+α3XLeader)/2Xi(t))(5) X i N e w ( t + 1 ) = L e v y _ F l i g h t ( X i ( t + 1 ) , T P , L B , U B ) (6) X_i^{New}(t+1)=Levy\_Flight(X_i(t+1),TP,LB,UB)\tag{6} XiNew(t+1)=Levy_Flight(Xi(t+1),TP,LB,UB)(6)其中,新位置 X i X_i Xi由式(5)计算,而 X i X_i Xi的最终位置由式(6)给出, L e v y _ F l i g h t Levy\_Flight Levy_Flight是算法1中说明的函数,而 T P TP TP是达到目标函数的最佳适应值的位置(解),称为目标位置。随机数 α 1 \alpha_1 α1 α 2 \alpha_2 α2 α 3 \alpha_3 α3的取值范围为 0 ≤ α 1 , α 2 , α 3 ≤ 10 0\leq\alpha_1,\alpha_2,\alpha_3\leq10 0α1,α2,α310 X i ( t ) X_i(t) Xi(t)邻居的目标适应度 T P N e i g h b o u r s TP_{Neighbours} TPNeighbours如式(7)所示: T F N e i g h b o u r s = ∑ k = 1 N N D ( k ) × X k N N (7) TF_{Neighbours}=\sum_{k=1}^{NN}\frac{D(k)\times X_k}{NN}\tag{7} TFNeighbours=k=1NNNND(k)×Xk(7)其中, X k X_k Xk X i ( t ) X_i(t) Xi(t)的邻居位置, k k k是邻居的索引, N N NN NN X i ( t ) X_i(t) Xi(t)邻居的总数, D ( k ) D(k) D(k)是每个邻居的适应度,由式(8)给出: D ( k ) = ∂ 1 ( V − M i n ( V ) ) M a x ( V ) − M i n ( V ) + ∂ 2 (8) D(k)=\frac{\partial_1(V-Min(V))}{Max(V)-Min(V)}+\partial_2\tag{8} D(k)=Max(V)Min(V)1(VMin(V))+2(8)其中, V = F i t n e s s ( X J ( t ) ) F i t n e s s ( X i ( t ) ) ,     a n d    0 < ∂ 1 , ∂ 2 ≤ 1 (9) V=\frac{Fitness(X_J(t))}{Fitness(X_i(t))},\,\,\,and\,\,0<\partial_1,\partial_2\leq1\tag{9} V=Fitness(Xi(t))Fitness(XJ(t)),and0<1,21(9)

2、LFD算法流程图

LFD算法的流程图如图1所示。
在这里插入图片描述

图1 LFD算法流程图

二、仿真实验与结果分析

1、函数测试与数值分析

以IEEE CEC 2019[2]测试函数F1、F3、F5、F7、F9为例,结果显示如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验结果表明:LFD算法在复杂函数测试中能够取得不错的效果。

2、WSN覆盖优化

本文采取0/1覆盖模型,具体描述请参考这里。设监测区域为 50 m × 50 m 50m×50m 50m×50m的二维平面,传感器节点个数 N = 35 N=35 N=35,其感知半径是 R s = 5 m R_s=5m Rs=5m,通信半径 R c = 10 m R_c=10m Rc=10m,迭代500次。初始部署、LFD优化覆盖、LFD算法覆盖率进化曲线如下图所示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

初始部署和最终部署的节点位置及对应的覆盖率分别为:

初始位置:
12.0759     41.7792     
11.5346     7.1594     
49.7403     35.5009     
2.8143     32.6912     
8.6019     38.704     
47.8574     44.9733     
46.3158     33.9835     
33.6528     24.6405     
36.8374     17.0185     
23.5378     36.4429     
6.938     13.8543     
42.9107     47.9338     
19.582     14.8836     
17.3175     30.7272     
26.6631     29.6912     
37.6012     35.5387     
0.11532     12.4429     
47.5906     8.3037     
41.1344     32.9728     
24.2799     45.1179     
41.4758     8.1617     
3.6379     41.6474     
13.6829     44.7971     
32.1833     19.951     
43.9869     4.8925     
33.7995     21.0245     
44.7298     1.525     
23.7567     5.1091     
13.7469     13.299     
23.0245     33.432     
40.1515     17.9911     
5.5947     45.1971     
8.7989     42.2701     
32.7145     8.855     
5.1326     3.7284     
初始覆盖率:0.6682
最优位置:
25.4406     35.2932     
22.6948     17.2012     
46.1572     37.0037     
42.1345     7.0717     
1.9135     46.9157     
35.7124     32.7617     
19.5928     2.2712     
3.3252     44.3469     
48.9015     13.2704     
34.1787     11.1672     
11.7195     21.8172     
32.3862     2.9025     
37.8697     44.5897     
47.2718     3.4247     
5.1375     17.4529     
2.5824     10.737     
14.6132     46.3916     
8.7555     27.8153     
46.5386     20.1929     
45.3048     45.8603     
46.2572     29.2407     
16.8096     23.859     
34.1228     40.7691     
25.8544     25.5033     
2.6144     33.3828     
7.8023     4.0375     
29.4761     2.9576     
13.1543     11.9176     
8.1993     37.9867     
31.8471     22.3021     
39.3084     20.5194     
13.3124     32.3056     
27.3255     14.3125     
26.5268     47.0383     
1.4609     23.6899     
最优覆盖率:0.83506

结果表明:LFD算法在WSN二维覆盖优化问题上取得一定的效果。

三、参考文献

[1] Essam H. Houssein, Mohammed R. Saad, Fatma A. Hashim. Lévy flight distribution: A new metaheuristic algorithm for solving engineering optimization problems[J]. Engineering Applications of Artificial Intelligence, 2020, 94: 103731.
[2] K. V. Price, N. H. Awad, M. Z. Ali, P. N. Suganthan. Problem Definitions and Evaluation Criteria for the 100-Digit Challenge Special Session and Competition on Single Objective Numerical Optimization[R]. Technical Report, Nanyang Technological University, Singapore, November 2018.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

心️升明月

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值