-
无线传感器网络(Wireless Sensor Networks,WSN)是由多个空间分布的独立传感器组成的通信平台,广泛应用于目标跟踪、环境监测等领域[1-2].在WSN中,通过不同的通信方式来传输传感器收集的数据.直接通信时,网络中存在节点到基站的直接路由,但是由于节点的长距离通信,导致能量消耗大,网络寿命低.间接通信一般采用多跳技术,多跳通信的使用减少了传感器节点能量的消耗,但是也会导致节点之间的干扰,从而影响网络性能[3].为了减少干扰,基于聚类的数据收集方式在WSN中流行.每个簇中都有一个带有集中控制算法的簇头(Cluster Head,CH)和以随机方式分布的一组传感器[4].每个CH都被允许在其自己的簇中保持能效.传感器节点的能耗问题一直是困扰无线传感器网络的难点之一.
为了最大限度地降低传感器节点能耗,延长网络寿命,研究人员已经开发了多种提高节点能量使用效率的簇头选择优化算法.Reddy等[5]采用自适应鲸鱼优化算法,通过结合WSN中传感器节点的能量、距离和延迟等参数,实现了能量感知型簇头的选择.Poonguzhali等[6]使用蚁群算法与和声搜索算法来优化簇头选择和最小密度簇,通过减少路由路径,加快数据包传输速度来达到能耗降低的目的.冉涌[7]提出一种多事件节能蚁群优化数据传输无线网络传感器协议,该协议根据簇中节点剩余能量和距离基站的长度来选择簇头,利用蚁群算法优化通信路径,有效提高了网络的寿命和传输性能.Mittal等[8]为了克服基于聚类分层方法的局限性,提出一种基于阈值敏感节能聚类协议的模糊扩展灰狼优化算法,采用模糊聚类和灰狼算法对簇头选择和路由路径进行优化.
现有的群智能优化方法对WSN网络的节点能耗及路由选择起到一定的优化作用,但这些算法也容易出现局部最优、收敛速度慢和精度不够等问题.为了进一步提高节能效率和吞吐量以及延长网络寿命,本文提出基于灰狼和乌鸦搜索混合优化算法的簇头选择路由方案,该混合算法是将乌鸦搜索算法引入灰狼优化中,解决了由于GWO算法早熟收敛而无法有效地搜索最优解的问题.混合算法通过考虑延迟时间、节点传输距离和能耗等方面来选择簇头,在保证无线传感器自组织网络的高效簇和路由的同时,提高节点的能量利用率,延迟网络寿命.
全文HTML
-
灰狼优化算法(Grey Wolf Optimization,GWO)是模拟自然界灰狼族群狩猎行为而提出的一种启发式方法[9],具有操作简单、调节参数少等优点.在GWO算法中,种群分为头狼α、从属狼β、普通狼δ和底层狼ω共4种,狼群在狩猎时假定α、β和δ具有获得潜在猎物所在位置的能力,因此在迭代过程中优先找出三者的个体位置,并以此更新下一代个体的位置,最终达到捕食猎物的目的.假定D维搜索空间中,种群数量为N,灰狼个体的位置定义为X,则由式(1)和式(2)计算出个体与α,β和δ的距离为
式(2)中:t表示当前迭代,A=2ar1-a和C=2r2表示协同系数向量,r1和r2表示随机向量,a表示收敛因子,其元素在迭代过程中由2线性递减到0,即:
式(3)中:Tmax表示最大迭代次数.个体向猎物移动的方向可以表示为
GWO算法经过多次迭代后捕获猎物,得到最优解.GWO算法在许多领域中获得了较成功的应用,但是算法也存在解精度低、早熟收敛过快和容易陷入局部最优等缺点.
-
乌鸦搜索算法(Crow Search Algorithm,CSA)是根据乌鸦觅食行为而提出来的一种智能算法[10].在CSA算法中,乌鸦存储食物的位置代表问题的可行解,乌鸦通过搜寻存储食物最多的位置获得最优解.假定乌鸦群体总量为N,第i只乌鸦在第t次迭代时的位置为xi(t),食物存储位置为mi(t).当乌鸦i随机选择乌鸦j进行跟踪时,跟踪过程中会出现两种情况:①乌鸦j未发现乌鸦i的跟踪,则乌鸦i偷取j的食物;②乌鸦j发现乌鸦i的跟踪,则乌鸦j随机飞行,避免食物被偷.综合两种情况,乌鸦i的位置更新公式为
式(5)中:ri,rj为随机数,fli(t)和pi(t)为乌鸦i在第t次迭代时的飞行步长和感知概率.使用更新的乌鸦个体对食物存储位置进行更新.CSA算法通过飞行步长和感知概率2个参数来控制算法的全局和局部搜索进程,经过多次迭代后获得问题的最优解.CSA算法具有参数少、操作灵活、易于实现的优点,但是也存在收敛速度慢和寻优搜索盲目性的缺陷.
1.1. 灰狼优化算法
1.2. 乌鸦搜索算法
-
本文提出一种基于灰狼和乌鸦搜索混合优化算法的最优簇头选择方案,该方案通过将灰狼优化算法与乌鸦搜索算法相结合,解决了由于早熟收敛而无法有效地搜索最优解的问题.混合算法通过考虑延迟时间、节点传输距离和能耗等方面来选择簇头,在保证无线传感器自组织网络的高效簇和路由的同时,提高了节点的能量利用率,延迟了网络的寿命.
-
对于无线传感器网络,本文的网络模型设置为:面积为M×M的监测区域内随机布置N个节点,基站布置在传感场内,节点和基站位置不可移动;所有传感器节点的初始能量相同,可以获取自身的剩余能量和位置;节点根据接收到的信号强度,可以计算相邻节点之间的距离.根据文献[11],当网络节点发送kbit数据到距离为dm处的相邻节点时,需要消耗的能量为
式(6)中:Eelec表示接受和发送1 bit数据时电路的功耗系数,εfs和εmp分别表示自由空间和多径衰落模型下的功耗常数.同理,节点接收和处理kbit数据的能量消耗为
式(9)中:Eda表示处理1 bit数据时的能耗.
-
簇头的选择对路由算法的性能影响重大,为了节省传感器节点的能量,本文采用基于GWO-CSA算法对簇头选择进行优化.在传统的GWO中,每次迭代算法根据α,β和δ灰狼的位置对狼群其他个体进行更新,导致全局搜索能力较弱,容易陷入局部最优.而CSA算法在式(5)描述的位置更新搜索方程中,飞行步长fl和感知概率p作为控制参数允许群内个体从当前区域跳入其他区域,全局搜索能力较强.混合算法充分利用GWO算法与CSA算法的优点,实现探索和开发阶段之间的适当平衡.
在无线传感器网络中,节点的剩余能量、距离以及密度都能够影响簇头的选择.因此,本文将适应度函数定义为
能量因素E、距离因素D和密度因素S分别表示为
式(11)中:Ei是节点i的剩余能量,Eavg是节点i所在区域内的剩余能量,Di是节点i到基站的距离,Dmax和Davg分别是区域内节点到基站的最大距离和平均距离,Si是节点i的邻居数,Smax和Smin分别是最大和最小邻居数.式(10)中λ1,λ2和λ3为权重因子,和值为1.
基于混合算法的簇头选择具体过程如下:
步骤1:对传感器网络节点、GWO种群以及参数进行初始化;
步骤2:根据式(10)计算种群个体的适应度值,并对其排序,选出α和β灰狼,其值所在位置对应的传感器节点极有可能被选为簇头;
步骤3:基于CSA的感知概率,设定混合算法的自适应平衡概率PAB为
自适应平衡概率PAB是为了平衡探索阶段和开发阶段,保证算法在优化早期阶段获得种群多样性和较大的空间搜索能力,同时在优化后期具有较强的局部搜索能力和收敛性.
步骤4:在式(1)和式(2)的基础上,利用式(15)、式(16)更新传感器节点的位置为
式(16)中:rand是区间[0, 1]上的随机数,FL是飞行步长.CSA算法中FL的大值用于全局探索,FL的小值用于局部开采.为了利用CSA的全局探索优点,使用较大的FL值.本文没有采用传统GWO算法使用的3个最优解,而是采取了缩减方法:当PAB大于rand时选择式(15),采用α和β两个最优解更新节点位置;否则采用式(16),仅α一个最优解控制搜索方向.取消δ灰狼是为了减弱最优解对探测范围的影响.
步骤5:对当前迭代的自适应平衡概率PAB和收敛因子a进行更新.为了获得更好的寻优性能,收敛因子采用非线性变换形式为
步骤6:根据式(10)计算种群个体的适应度值,更新α和β值;
步骤7:判断算法是否终止条件,若满足,输出最优解α,其对应的节点位置被选为簇头,算法终止;否则,t=t+1,返回步骤2.
-
簇头选择旨在提高所有收集信息的准确性.簇头选出之后,将向周围节点广播自己成为簇头的消息,簇成员根据收到的广播消息选择距离自己最近的簇头加入该簇,并发送包含自己位置和剩余能量的信息.当网络中的节点成簇后,通过簇头构建多跳路由.首先,簇内节点将收集到的信息发送至簇头节点.由于节点距离和监视区域之间存在重叠,因此传感器节点收集的数据存在冗余信息.在传输过程中,冗余信息增加了节点能耗,减少了无线传感器网络的寿命.因此,簇头节点需要将消息融合去掉冗余的消息,本文采用K-means算法对数据进行融合,将参量相近的数据聚成一类,提取关键信息.最后,当簇头位置与基站之间的距离较近时,簇头选择直接将信息传输到基站;当两者距离较远时,通过其他簇头以多跳的方式选择跳数最小的路径,把数据传送给基站.
2.1. 网络模型
2.2. 基于混合算法的簇头选择
2.3. 数据转发
-
为了评价所提算法的性能,使用MATLAB R2018a软件在Intel(R) Core(TM)i7-7820X CPU @3.60 GHz和8 GB RAM的机器上进行测试实验,并在相同条件下与改进灰狼优化算法(IGWO)[9]、基于蚁群优化与和声搜索算法(ACO-HSA)[6]、基于改进果蝇优化算法(IFFOA)[12]以及基于萤火虫和灰狼优化混合算法(FGWO)[13]的簇头选择方法进行比较.
首先,根据不同轮数的存活节点和死亡节点的百分比来评估本文提出算法的性能.图 1和图 2给出了不同算法在0~2 000不同轮次中的存活节点和死亡节点数量对比结果.从图 1、图 2中可以看出,本文提出的算法具有明显的优势,相同轮数时存活节点最多,死亡节点最少.具体来讲,本文方案与IGWO,ACO-HSA,IFFOA和FGWO算法对应的网络存活节点百分比在大约1 810,1 529,1 690,1 510和1 415轮时完全收敛到零;而死亡节点百分比在1 980,1 690,1 765,1 650和1 480轮时达到最大100%.原因是本文提出的算法在簇头选择过程中综合考虑了节点的能量平衡问题,从而维持了网络的生存期.
-
本文提出的基于灰狼和乌鸦搜索混合优化算法的簇头选择路由方案,主要用于解决无线传感器网络节点吞吐量低、生命周期短和延迟时间长等问题.该算法考虑了节点剩余能量、节点之间的距离和延迟时间等因素,结合GWO算法的局部开发潜力和CSA算法的全局优化能力在基于簇头选择过程中实施动态搜索,通过优化选择簇头的精度来实现能量的均匀利用,进而提高网络的预期寿命.相比于其他算法,本文提出的方案在吞吐量、传输速率和网络寿命方面性能更佳.