郝 锐 王建萍 陈丹阳 路慧敏
(北京科技大学计算机与通信工程学院 北京 100083)
近年来,随着地球环境的不断变化,世界各地自然灾害频发。当某地发生地震、山火、飓风等自然灾害时,当地的基站等通信基础设施会遭到损毁,导致灾区内外通信中断,救援面临着严峻的挑战,应急通信和救援将起到至关重要的作用[1]。无人机(Unmanned Aerial Vehicle, UAV)具有操控简单、机动性高、协作性强[2]等特点,近年来被广泛应用于灾情侦察、物资投递、消防救援、应急基站搭建[3-5]等工作,而多架小型无人机在指挥中心的操控下集结而成的无人机编队[6]在执行任务的过程中具有高速率、高动态的特点,已成为应急通信的首选方案之一。无人机编队参照蜜蜂等昆虫的集体行动模式,以分簇的方式共同完成特定任务[7]。通过分簇方式可以增强无人机节点间的通信能力,使得无人机对灾区信息的感知获取能力得以扩展,提高救援效率[8-10]。然而,随着无人机技术的快速发展,无人机编队通信也面临着一些新的挑战,比如射频频谱稀缺、相互干扰、网络连接问题等。由于sub-6G频谱已被大量应用于地面通信网络,无人机的广泛使用会严重破坏地面蜂窝网络,并使其系统容量下降远远超过系统规划中的预期,从而降低地面用户的通信质量[11]。此外,在执行紧急任务时,无人机群的连通性也会受到复杂大气环境和强电磁干扰等影响,导致系统性能的下降和执行任务效率的降低。
紫外光的大气吸收、大气散射以及处在“日盲”波段(200~280 nm)的特点[12],使得以紫外光为主的无线光通信网络具有低窃听率、低位辨率、全方位性、全天候性等优点[13],非常适合组成小范围内的移动局域网,将其作为一种传统无线通信的补充通信方式,可极大地增强续航、侦察、救援等能力。为了提升数据处理和网络规划能力,将紫外光通信设备应用于无人机编队,可以用来解决无人机编队通信的射频频谱稀缺、干扰和网络联通性等问题,成为了一种应急救灾场景下的有潜力的解决方案。无人机编队通常工作在“长机-簇首-成员”的模式下,通过无线紫外光通信形成一个自组织多跳网络去采集处理监测区域内感知对象的信息,从而实现信息的交互和任务的分配。
在实际救灾任务执行过程中,无人机编队携带的能量有限,特别是紫外光通信链路传输损耗大,高效率的分簇算法以及能效优化的路由算法对于延长无人机编队的任务执行时间以及提高救灾能力具有重要意义。低功耗自适应集簇分层算法(Low Energy Adaptive Clustering Hierarchy, LEACH)[14]在选举簇首时节点具有相同的竞争概率,但该算法未考虑当前簇首节点的剩余能量,这可能导致距离较远的簇首节点因为长距离发送数据而过早消耗能量而死亡,进而对整个网络的生命周期造成影响。为解决这个问题,Yu等人[15]提出了一种移动预测的动态分簇算法,该算法能够适应高度动态的大型自组网,但同样未考虑节点能量对网络生命周期的影响。Wu等人[16]进一步考虑了节点能量的影响,提出了一种能适应能量变化的分簇路由协议。该算法根据节点分布生成大小均匀的簇,并在选举簇首时构造了一个优先级函数,但未考虑到簇间信息传递过程的能量损耗问题。针对基于紫外光传输的无人机编队系统,Zhao等人[17]提出了一种无人机蜂群能效优化路由算法,该算法对LEACH算法的候选簇首选举门限进行了改进,并在簇间通信过程中,可以选择一个中继节点将数据从簇首传递给长机,有效延长了网络生存期,但仅考虑使用一个中继节点,未实现能量利用的最大化。
为了延长紫外光通信无人机编队有效作业时间,本文给出了基于改进LEACH算法和离散JAYA(Discrete JAYA, DJAYA)算法[18]以及竞争半径JAYA低功耗自适应集簇分层(Rcomp JAYA LEACH,RJLEACH)路由优化方法。本算法能够在无人机编队的分簇过程中引入竞争半径改进簇首选举过程,并在簇间通信过程中使用DJAYA算法寻找一条簇首到长机的最佳路由进行信息的传输。应用本方法,在搭建紫外光通信无人机编队分簇系统模型的基础上,对不同中继节点个数无人机编队网络进行路由优化,并与其它算法得到的路由规划结果进行对比分析。
本文对紫外光通信无人机编队路由规划的研究基于分簇模型,如图1所示。即将整个无人机网络划分簇群,每个簇中会有一个簇首节点作为管理者,协助长机掌握全局信息并分担其通信和控制压力。长机在无人机编队中担任核心角色,配备高性能计算单元[19],以解决紧急通信时可能出现的负载拥堵问题。在任务分配方面,成员僚机会将自身状态数据发送给簇首僚机,簇首僚机将其整合并去除冗余数据,然后将结果发送给长机。长机会根据接收到的数据包向簇首和成员僚机发送控制信号,以协调任务分配,同时让簇首僚机分担部分计算任务,以减轻长机的负担。分簇模型可以有效减少冗余链路,因此可以作为一种有效的能耗均衡策略。
图1 无人机编队分簇模型
在本文采用的分簇模型中,无人机编队由1个长机和若干个成员节点构成,整个编队在同一水平面飞行。通过距离和节点剩余能量等约束规则在整个无人机网络中选取若干无人机作为簇首,簇首将成员节点的数据信息汇总后转发至长机,是无人机编队的通信枢纽。长机作为整个网络的控制中心,负责发送控制信号等高级指令。分簇模型以轮询的方式工作,即周期性地让每个节点有机会成为簇头,以平衡能量消耗和延长网络生命周期。在每个轮次开始时,节点根据概率决定是否成为簇头,以负责数据收集和传输。一轮工作结束,分簇解散,同时进入下一轮的分簇及通信工作。
由于应急通信时现场的废墟、浓烟等障碍物的存在,不同无人机编队节点间很难进行对准,而由于大气对紫外波段光子的散射作用,紫外光可以通过一条非视距(Non-Line-Of-Sight, NLOS)链路被接收端所探测到,即只要发射端和接收端的视场角存在交叠,就可以形成通信链路,因此本文主要考虑紫外光的非视距通信链路[20],如图2所示。其中收发端 RX 和 TX 的间距为r,有效散射体V到 TX和RX 的距离分别为r1和r2,θ1为发送仰角,ϕ1为发散角,θ2为接收仰角,ϕ2为接收视场角,θs为散射角。此外,本文主要考虑θ1和θ2都小于90°的定向发射、定向接受模式紫外光链路,由于其能量损耗较小,通信带宽较大,适合作为无人机编队的机间通信方式。
图2 紫外光NLOS散射通信链路模型
紫外光在大气中通信时的衰减严重,随着通信收发端间距的增大,路径损耗以指数形式衰减。设能量为ET的紫外光光束经过体积元δV被散射至接收端,可以得到单位面积上接收的能量并记为:δER。对δER在公共散射体V上进行积分,可以得到接收总能量为[21]
其中,ER表示接收到的总能量,P(µ)是散射相函数,µ=cosθs,ks为大气散射系数,ke为大气消光系数。
定义路径损耗L=ET/ER,根据文献[21]中对散射体体积V的近似方法得
其中,D1=h1φ1/2,h1=r1+r2φ2,D2=h2ϕ1/2,h2=r1-r2ϕ2。
将相关参数代入式(1),即可得到路径损耗为
为了简化计算,在近距离通信时(r<1 km),可以将路径损耗公式简化为[22]
其中,ξ是路径损耗因子,定义为发收两端的功率之比;α是路径损耗指数,表示接收信号强度随距离减小的速率,二者均与发收仰角θ1和θ2有关。在一定角度内(0°~90°),ξ随θ1和θ2的增大而增加,α随θ1和θ2的增大先增大后减小,同时,当θ1和θ2处于30°~60°时,二者的变化与其他角度区间相比较为平缓[23]。因此,本文综合考虑链路性能和实际通信情况,在仿真中将θ1和θ2均设置为40°。
本文在对紫外光通信无人机编队进行路由优化时基于能耗模型,传输衰减L所损耗的能量EL[24]为
其中,ET为发射单位比特数据所消耗的能量。当无人机收发节点相距为r时,发送k bit的数据,其所消耗的发送数据能耗ETX和接收数据能耗ERX分别为
其中,ER为接收单位比特数据所消耗的能量。另外,簇首节点需要对簇内成员节点的信息进行融合来消除数据冗余,数据融合时使用的能量Ec为
其中,EDA为融合单位比特数据所消耗的能量;m为簇内成员节点的个数。
基于分簇模型的路由规划的首要任务即分簇的建立,本文将经典LEACH算法引入到协议中。协议采用轮询的工作方式,每一轮中进行簇首选举、节点入簇、簇间通信,然后进行下一轮,直到任务完成或者所有无人机节点能量耗尽,网络死亡。
首先选取候选簇首。每一轮中,每个无人机节点产生一个随机数r0,与选举门限T(n)进行比较,若r0<T(n),则将该节点列为候选簇首;否则成为进入睡眠状态,等待簇首选举完毕后入簇。选举门限为
其中,p代表每一轮中期望成为簇首的节点占无人机节点总数的百分比;N代表当前轮数;每1/p轮为一个周期进行簇首的选举,G代表这1/p轮中未成为簇首的无人机节点集合。
为了克服经典LEACH算法对于簇首选举没有加以限制导致簇首分布不均匀,无人机编队内各节点剩余能量相差过大,最终编队过早失去任务执行能力的情况,本文通过引入竞争半径R,在簇首选举阶段对候选簇首进行筛选,即将候选簇首si的竞争半径Ri定义为
其中,rc是定义在[0,1]内控制竞争半径大小的参数;dmax和dmin分别代表无人机编队到长机距离的最大值和最小值;di,leader代表候选簇首si到长机的距离;R0代表最大竞争半径,是一个经验值,需要根据不同的无人机编队范围来设置,R0过小,会导致簇头过多,反之会导致簇头过少,通常将R0设置在编队长度和宽度的1/2左右。产生竞争半径后,候选簇首si建立邻居簇首集合,并选出集合内剩余能量最大的无人机节点作为簇首,其余在集合内的节点不再参与本轮的簇首选举。si的邻居簇首集合为
其中,C代表本轮的候选簇首集合;di,j代表候选簇首si和sj的距离。簇首节点个数首先由p大致确定,然后根据式(7)和式(8)进行相应地删减。
选举出所有簇首后,无人机编队内的其余剩余节点被唤醒,并选择距离最近的簇首进行入簇,成为该簇首的成员节点。至此,一轮内的簇首选举和节点入簇过程结束,簇首和成员节点的分簇关系保持至本轮结束。
对于基于紫外光传输的无人机编队的簇间通信,令簇首和长机进行直接进行信息传输,可能会造成簇首节点能量衰减过快的问题。基于此,本文引入距离阈值Dmax,如果簇首到长机的距离小于Dmax,采取直接通信的方式将数据传输给长机;否则,引入中继节点,将数据以多跳的方式通过其它簇首进行转发,并设置目标函数进行路径优化。无人机编队具备高度的动态性,引入中继节点可能会引发内部通信的不稳定情况。为了应对这种情况对通信链路质量的不利影响,可以采取建立备份通信路径、引入数据冗余机,以及应用像本文中提出的路由规划算法等措施。设一个无人机编队中有n个节点,其中一个簇首节点ni到长机C的信息传输要经过k个中继节点转发,无人机编队距离矩阵为Dn×n,则该路由的总距离为
其中,dm,m+1表示该路由中相邻两节点之间的距离。设节点的剩余能量为Erest,则该路由的节点总剩余能量为
其中,Erest(m)表示该路由中第m个节点的剩余能量;长机节点的剩余能量不计入。若仅优化路由距离,不考虑中继节点的剩余能量,虽然可以找到一条能量消耗最小的路由,但也可能造成某些中继节点过早死亡的情况;反之仅考虑中继节点剩余能量,不考虑距离,则会导致该路由上所有节点的能量迅速下降。因此,综合考虑无人机编队路由距离和剩余能量,需要找到一条距离最短且剩余能量最大的路由,则可得无人机簇间路由的目标函数为
本文采用基于DJAYA算法的无人机编队簇间路由优化方法,DJAYA算法输入参数较少,与其他启发式算法相比,能够更好地避免因不当的参数调整而容易陷入局部最优解的问题。将DJAYA算法生成的一条无人机簇间路由作为一个种子,当前迭代中所有的种子组成一个种群。由于无人机簇间路由目标函数Fitness为非负值,并且是求函数的最小值作为优化目标,因此可以直接使用目标函数值作为种子的适应度。基于适应度Fitness的大小,使用种群中的当前种子、最优种子和最差种子对无人机簇间路由进行更新,以提高种群的多样化,从而在路由优化问题的搜索空间上发现潜在的解决方案。同时,为了在DJAYA算法的解空间上建立探索和利用之间的平衡,引入搜索趋势参数[25]PST1,PST2(PST1+PST2=1) 来增强其搜索能力。根据PST1和PST2,选择当前、最优或最差种子来产生候选路由方案。有多个可以参与的中继簇首时,在DJAYA算法中通过随机选择其余簇首节点进行路径变换,并比较新解与当前解的适应度函数,如果新解优于当前解,则产生新解,中继簇首就由新解中的这些节点进行确定,否则保留旧解。
基于DJAYA算法的无人机簇间路由优化可以分为以下6个步骤:
步骤1 初始化参数,包括无人机种群数量N、迭代次数Imax、搜索趋势参数PST1和PST2、簇间路由中继节点个数k;创建初始种群;
步骤2 根据无人机种群内每个种子的适应度函数选出最优簇间路由和最差簇间路由;
步骤3 根据随机数r1,r2(r1,r2∈(0,1))选择当前簇间路由、最优簇间路由或者最差簇间路由作为候选种子;随机数r1,r2为算法引入随机性,使得算法有一定概率跳出局部最优而选择全局最优。其与搜索趋势参数PST1,PST2决定了算法产生候选种子的方式。
步骤4 将候选种子进行路径变换,产生新的簇间路由;
步骤5 根据适应度函数选择是否使用新路由替换旧路由;
步骤6 判断是否满足迭代停止条件;否则返回执行步骤2-步骤5。
本文在仿真中借鉴消融实验(ablation study)的思路,将3.1和3.2节中提出的算法分别封装为竞争半径模块Rcomp和DJAYA模块。则系统的原始系统由经典LEACH算法组成,新的系统在其基础上增加了上述两个模块,构成RJLEACH算法。同时,需要在经典LEACH算法的基础上分别加入上述两个模块,以单独研究竞争半径模块Rcomp和DJAYA模块对系统的影响。因此,在仿真中一共有4种算法,下面分别分析4种算法的时间复杂度。
经典LEACH算法:设无人机编队中有n个无人机节点,无人机编队工作的最大轮次为Rmax,每一轮选出的簇首个数为nCH。则每一轮中,首先要遍历所有的无人机节点,来选出这一轮的簇首;再遍历所有的簇头,来计算收发信息的能耗。则时间复杂度为O(Rmax×max(n,nCH)) 。由于n ≥nCH,因此时间复杂度为O(Rmax×n)。
经典LEACH算法+竞争半径模块Rcomp:竞争半径模块需要在每一轮中遍历所有无人机节点时选出候选簇首,再在候选簇首中选出最终簇首。设候选簇首个数为nc, 则时间复杂度为O(Rmax×(n,nc))。由于n ≥nc,因此时间复杂度仍然为O(Rmax×n)。
经典LEACH算法+DJAYA模块:DJAYA算法作为簇间路由优化的算法,需要在一轮中选出所有簇首之后,对簇首进行遍历,以将各个分簇的簇间路由目标函数降到最小。设无人机种群数量为N,迭代次数为Imax,因此时间复杂度为O(Rmax×max(n,nc×N×Imax))。
经典LEACH算法+竞争半径模块Rcomp +DJAYA模块(即RJLEACH算法):综上分析,RJLEACH算法的时间复杂度为O(Rmax×max(n,nc×N×Imax))。
采用以上方法,本文进一步对紫外光无人机编队进行路由规划,设置无人机节点数100个,随机分布在200 m×200 m的仿真区域内,且都具有相同的航向和飞行速度,目标状态协同一致,网络拓扑不变。在应急救援情境中,无人机网络主要传输实时视频和语音数据,这些信息需要快速传递,而通信距离通常在几百米到几公里之间[26],因此需要降低通信时延,以满足实时性要求。时分多址(Time Division Multiple Access, TDMA)接入协议为无人机编队提供了一种清晰的时间分割方法,这意味着无人机节点在发送数据时冲突概率较低,时延也较小。这种协议在网络密度较高或负载较重的情况下表现出更好的性能[27]。因此,在簇内通信中采用TDMA,簇首为每个成员节点分配不同的时隙。成员节点将本机数据发送至簇首,经过信息融合后,簇首再将数据转发至长机,长机根据收到的信息进行任务决策。仿真实验中设置PST1=PST2=0.5,种群数量N=50,迭代次数Imax=50,簇首数占总节点数百分比p=20%,rc=0.5, 最大竞争半径R0=90 m,选取中继节点k=1,2,3,4分别进行仿真,分析中继节点个数对网络性能的影响,并将本文提出的RJLEACH算法与经典LEACH算法进行比较分析。其余参数如表1所示。
表1 仿真实验参数
从以上说明可以看出,采用DJAYA算法对紫外光通信无人机编队进行分簇内路由规划,距离阈值Dmax会对路由规划算法有较大的影响,因此首先仿真了该参数对系统的影响。仿真结果如图3所示,横轴代表Dmax的选取范围(0~200 m),纵轴代表出现第1个死亡节点时的轮数。可以看出,出现第1个死亡节点的轮数随着Dmax的增大先上升后下降,峰值出现在100 m左右。这是因为当Dmax较小时,系统倾向于使用中继节点进行通信,过多地使用中继节点会导致能量衰减速度过快;而当Dmax过大时,系统倾向于使无人机直接与长机通信,会导致衰减不平均而使部分簇头的能量过早地耗尽。因此,综合考虑以上情况,本文将Dmax距离阈值设置为100 m。
图3 距离阈值Dmax对系统性能的影响
另外,中继节点数的设置也是影响系统性能的关键参数。将中继节点个数分别设置为1, 2, 3, 4时,存活节点数随轮数的变化趋势如图4所示。可以看出,算法在使用2个中继节点时性能达到最优,在4个中继节点时性能最差,存活节点数下降得最快。这是因为当中继节点较少时(中继节点数为1),其适应度函数到达不了最优值;当中继节点数过多时(中继节点数为3, 4),会造成节点的重复使用,浪费了资源。因此之后的性能分析及对比中,均选用2个中继节点进行簇间信息传输。
图4 使用不同中继节点数时的对比
为了验证不同节点密度带来的影响,仿真了同样规模的无人机编队在200 m×200 m, 300 m×300 m和400 m×400 m区域内的算法运行情况。图5给出了不同节点密度下的平均剩余能量对比和存活节点数对比。图5(a)可以看出,在200×200, 300×300和400×400仿真区域内,无人机编队平均剩余能量分别在第1 000轮、800轮和700轮左右耗尽;由图5(b)可得,300×300, 400×400仿真区域的无人机编队出现第1个死亡节点的轮数分别为800轮、620轮,相比200×200仿真区域的974轮,分别缩短了17.9%,36.3%。仿真区域越大,无人机网络密度越低,通信距离变长,消耗能量越快,节点死亡时间越早。
图5 不同节点密度的影响
本文也针对该紫外光通信无人机编队,将所提出的基于DJAYA路由规划算法得到的结果,同传统LEACH算法得到结果进行对比分析。其中成簇的对比结果如图6、图7所示,图6(a),图6(c)代表LEACH算法的成簇结果,耗时2.42 s;图7(a),图7(c)代表RJLEACH算法的成簇结果,耗时3.11 s。其中分别截取了死亡节点为1, 50和90时的无人机网络。其中中间大圆代表长机,实心圆代表簇首节点,空心圆代表簇内成员节点,叉号代表已死亡节点,即无人机能量已耗尽。当只有一个死亡节点时,网络运行基本不受影响;死亡节点超过50时,网络性能损耗过半;死亡节点超过90时,网络基本无法正常工作。对比优化前后的簇首分布情况可以看出,采用经典LEACH算法,簇首节点分布比较随机且不均匀,存在两簇首相距过近的问题,这更进一步导致了孤立簇首的存在,即簇内没有成员节点。当增加DJAYA优化算法后,其簇首节点分布均匀,不存在相距过近的问题。
图6 LEACH算法成簇结果
图7 RJLEACH算法成簇结果
为了进一步分析给出的路由规划算法在紫外光通信无人机编队分簇建立过程中的性能,本文将RJLEACH算法得到的簇首随轮数的变化趋势和经典LEACH算法得到的结果也进行了对比。同时以经典LEACH算法为基准,对比分别单独加入竞争半径模块Rcomp和DJAYA算法模块时带来的影响,如图8所示。可以看出,LEACH算法在网络有效生存期(存活节点数大于50%)生成的平均簇首数目大约为20,生成的最大簇首数目为26,最小数目为12,上下波动幅度较大;当只加入DJAYA模块时,生成的平均簇首数目大约为19,与LEACH算法基本持平;当只加入Rcomp模块时,生成的平均簇首数目大约为7;同时加入两模块,即RJLEACH算法在网络有效生存期生成的平均簇首大约为7,生成的最大簇首数目为11,最小数目为4,上下波动幅度较小。可以看出,对于簇首数目控制较为明显的是Rcomp模块,且簇首数目波动较为平稳,每一个簇内的成员节点数量也比较均衡。
图8 采用LEACH算法和RJLEACH算法时平均簇首数目对比
无人机编队的网络寿命也与负载能量是否均衡有关。如果一部分节点的剩余能量要比另一部分更快地耗尽,则无人机编队会更早地失去任务执行能力;如果剩余能量分布较为均衡,则可以工作得更久。图9(a)显示了RJLEACH算法以及LEACH算法分别单独加入Rcomp模块和DJAYA模块后的剩余能量方差对比。可以看出,算法的剩余能量方差均呈先上升后下降的趋势。这是因为簇首节点由于需要进行融合和转发,在网络中消耗的能量比其它节点更快,因此剩余能量方差呈现逐步升高的趋势;随着算法的运行,先后有无人机节点能量耗尽,剩余能量方差呈现下降的趋势。在只加入DJAYA模块时,算法的平均方差为90.62;在只加入Rcomp模块时,算法的平均方差为32.11;在同时加入两模块时,算法剩余能量的平均方差为29.46,相比LEACH算法的130.29,降低了77.39%,这是因为Rcomp模块的加入使得节点的能耗均衡性要好于LEACH算法。图9(b)对比了不同算法的平均剩余能量曲线,可以看出轮数增大导致网络中无人机节点的平均剩余能量逐渐减小。由于RJLEACH算法使用了竞争半径Rcomp模块对网络进行了能耗均衡,使用了DJAYA优化算法模块对路由进行了优化,无人机网络的平均剩余能量始终高于LEACH算法,无人机网络的有效任务执行时间也更长。
图9 采用LEACH算法和RJLEACH算法时剩余能量方差和平均剩余能量对比
网络生存期也是衡量网络性能的重要指标。图10对比了RJLEACH算法以及LEACH算法分别单独加入Rcomp模块和DJAYA模块后的网络生存期。使用LEACH算法时的第1个节点死亡时间、1/2节点死亡时间和全部节点死亡时间分别为740轮、870轮和1 000轮;只加入Rcomp模块时的3个节点死亡时间分别为915轮、921轮和950轮;只加入DJAYA模块时的3个节点死亡时间为760轮、910轮、1 019轮;同时加入两模块,即使用RJLEACH算法时的第1个节点死亡时间、1/2节点死亡时间和全部节点死亡时间分别为975轮、990轮和1 041轮,相比LEACH算法,分别延长了31.8%,13.8%和4.1%。可以看出,RJLEACH算法对网络生存期的提升在1/2节点死亡之前较为明显,而无人机编队的高效执行时间也处于这个阶段。在死亡节点数超过1/2后,网络的拓扑结构变差,任务执行效率迅速降低,延长此阶段网络生存期的意义相比前半段来说有所减小。
图10 采用LEACH算法和RJLEACH算法时网络生存期对比
接下来对比了不同算法在任务执行过程中的存活节点数。同时也对比了LEACH算法分别单独加入竞争半径模块Rcomp和DJAYA算法模块时带来的影响,结果如图11所示。可以看出,当只加入Rcomp模块时,大概从900轮开始出现节点死亡,但下降速率较快;只加入DJAYA模块时,节点之间由于剩余能量不平均,簇头的能量较早地耗尽而死亡,存活节点数从750轮左右开始下降,但下降速率较为缓慢;当同时使用两模块,即使用RJLEACH算法时,同样由于方差较小,其节点死亡速度较快,从第1个节点死亡到最后一个节点死亡只用了50轮左右。但第1个死亡节点出现在975轮,在高效率下的任务执行时间也更久。
图11 采用LEACH算法和RJLEACH算法时存活节点数对比
无人机编队在应急救援场景下显现出日益重要的价值。本文旨在提高无人机编队在应急场景下执行任务的效率,以此来延长其执行任务的有效时长。本文结合无线紫外光的通信优势,以LEACH分簇算法作为编队基础,通过引入竞争半径和DJAYA智能优化算法,来改进无人机网络中的簇首选举和簇间路由规划。仿真结果表明,本文提出的RJLEACH算法优于经典的LEACH算法,无论在网络生存期还是平均能量消耗上都有更明显的优势。与经典LEACH算法相比,本文的RJLEACH算法使得网络出现第1个死亡节点的时间增加了31.8%,出现1/2死亡节点的时间增加了13.8%,平均能量方差降低了77.39%,从而显著延长了无人机编队的有效应急任务执行时间。