APP下载

基于能量优化的三维空间LEACH改进算法研究

2022-10-25刘海隆

计算机仿真 2022年9期
关键词:能量消耗能量节点

于 雷,刘海隆

(电子科技大学资源与环境学院,四川成都 611731)

1 引言

近年来,随着无线通信技术和物联网技术发展的成熟,关于无线传感器网络(WirelessSensorNetwork,WSN)的研究更注重于解决实际应用问题[1]。WSN由大量传感器节点和汇聚节点组成,用于监测特定区域内的环境参数[2]。由于WSN终端节点能量有限、分布不均等原因,可能导致某些节点能量消耗过快、过早死亡,缩短网络的整体寿命[3]。因此,针对不同应用场景的网络设计一种低能量损耗的路由算法成为当前WSN领域研究的热点。

LEACH算法是一种最为常用的分簇式路由算法,适用于大规模、运行周期长的无线传感器网络[4]。但LEACH算法在每轮初始化阶段没有考虑节点能量,可能会加速某些网络节点的死亡。另外LEACH算法默认WSN是同构平面网络[5],能量模型过于理想化,与实际应用场景间存在较大差异。因而出现了一些针对LEACH算法缺陷的改进算法。例如TEEN算法[6]通过设置阈值减少冗余信息,节约网络节点能量。PEGASIS算法[7]将节点组成链式结构,每个节点只与邻居节点通信,并选择一个链首节点与sink节点通信,节约了远距能耗,也减少了簇重构的代价。以上改进算法或没有考虑节点剩余能量,或附带较多的约束条件,不能很好地维持算法复杂度和算法有效性之间的平衡。

针对以上算法的不足,本文提出了一种LEACH-RE算法,该算法在簇头选取阶段考虑节点当前的相对剩余能量,并将异构网络模型部署至立体空间中,综合考虑电磁衰落建立能量模型,模拟真实环境中的WSN。

2 LEACH算法概述

LEACH(Low Energy Adaptive Clustering Hierarchy)算法是典型的分簇式路由协议,适用于低功耗需求下的WSN[8]。分簇式协议将网络节点划分至不同簇内,簇头负责收集簇内节点的数据并汇聚到基站,因此簇头的能耗高于其它节点。LEACH算法的基本思路就是轮换簇头节点,使网络的能量负载趋于均衡,避免少数节点的死亡导致网络瘫痪。LEACH算法将网络的整个生命周期分为多轮,每轮又分为初始化阶段和稳定运行阶段。初始化阶段负责簇头选择、网络分簇及簇内信息同步,建立树型拓扑网络。稳定运行阶段负责数据的路由传输。LEACH算法流程图如图1所示。

2.1 初始化阶段

LEACH协议在初始化阶段,每个网络节点会产生一个(0,1)内的随机数,再与预设门限比较,如果随机数小于门限值,则当选为簇头。门限值定义如下式[9]:

(1)

其中p为当选簇头节点概率,r为当前周期的轮数,rmod(1/p)为该轮当选过簇头的节点数,G为该轮中未当选过簇头的节点集合。该式在网络节点中平等选举簇头,使能量消耗不会集中在某些节点。

簇头当选后会向网络中其它节点发送广播信息,其它节点接收到该信号,并通过RSSI(Received Signal StrengthIndicator)判断自身与发送节点的大致距离。节点通过比较不同的RSSI,选择最大值加入该簇。节点请求簇头为自己分配一个时隙。簇头收到所有请求,并为每个节点分配独立的时间片。

2.2 网络稳定运行阶段

WSN进入稳定运行阶段后,簇头会根据时间切片收集簇内各节点的数据并融合,将其汇聚到sink节点,完成数据传输。经过较长时间的稳定传输后,网络进入下一轮初始化阶段。

3 LEACH算法改进

由于LEACH协议的传输机制是基于节点当选簇头次数的,算法不能兼容异构网络;其次在网络初始化阶段也没有考虑网络节点的当前剩余能量。大大降低了普适性。

因此本文提出了LEACH-RE算法,主要针对两个方面对LEACH算法进行改进,簇头选举阈值和原算法适用范围。

3.1 三维空间传感器节点布设

假设WSN由m个随机部署在三维空间中的传感器组成,网络节点分布如图2所示,对应的网络节点集合为:

N={n1,n2,n3,…,nm}

(2)

其它条件假设如下:

1)汇聚节点位于立方体空间S的中央,传感器节点在部署后位置不再改变。

2)传感器节点之间、传感器节点和汇聚节点之间可以数据传输。并且网络节点能够通过信号接受强度(RSSI)近似计算发送者信号直线传输距离。

3)发送节点会根据接收节点的距离自动调节功率,减少能量消耗冗余。

4)网络节点在空闲时处于休眠状态,即不考虑能量消耗。

3.2 异构网络

LEACH算法的一个重要前提为分布均匀的同构网络,即网络节点初始能量是相同的;不同节点每次收发信号所消耗的能量也是相同的。满足以上的假设条件,根据节点当选簇头次数考虑簇头选举概率才是有效的,但是在真实的复杂环境下,很难满足上述条件。首先WSN的特点是低成本和高可靠性,大规模网络中不同节点在硬件和软件上实现统一标准难度很大,并且会影响网络可扩展性。其次WSN一般是自组织网络,复杂环境下设备节点会因意外情况容易掉电、重新入网,或者因后续网络规模的扩展需求而加入新的节点设备,如果每次设备入网都需要考虑网络整体拓扑结构保证每个节点的分布均匀性,会造成大量人力成本浪费,也会破坏WSN的自组织性。所以选取异构网络作为LEACH协议的使用对象是合理的,同时也拓宽了原算法的适用范围。

本文将网络节点分为一般节点和高级节点,不同节点的初始能量不同,并且当选簇头的概率也不同。

3.3 基于相对剩余能量的簇头选举

LEACH算法选举簇头时只考虑当前节点当选簇头的次数,无法很好地解决复杂环境下的WSN能耗问题。参选节点的当前剩余能量在一定程度上能够反映节点未来的生存状况。网络节点剩余能量越多,则该节点的生存周期期望越大,有能力承担较多信号收发带来的能量消耗,因此更适合当选簇头节点。在此基础上,再考虑参选节点的初始能量,如果网络节点的当前剩余能量与初始能量的比值越小,则说明此节点在历史周期中消耗的能量比网络节点平均能量消耗要多,为了减轻该节点的负载,改善生存状况,应该减少它当选簇头的概率。

综上所述,本文的一般节点簇头选举概率公式和高级节点簇头选举概率用公式可以分别表示为

(3)

(4)

其中En为当前节点的剩余能量,E0表示一般网络节点的初始能量,1+α表示高级网络节点初始能量和一般网络节点初始能量的倍数,因此E0(1+α)表示高级节点的初始能量。pn表示每轮选举中一般节点当选簇头的概率,pa表示每轮选举中高级节点当选簇头的概率,Gn为该轮中未当选过簇头的一般网络节点的集合,Ga为该轮中未当选过簇头的高级网络节点的集合。簇头选举阶段结束,进行簇内信息同步。当整个网络初始化完成后,节点便按照正常流程进入稳定运行阶段。

无线通信能量消耗模型为文献[10]中收发机通信模型,构成如图3所示。模型包含发送信号能量消耗和接收信号能量消耗,其中发送信号消耗的能量又可分为发射电路损耗和功率放大损耗,公式如下式所示[11]:

(5)

(6)

其中,l表示网络节点发送或接收的数据包长度(bit),Eelec表示网络节点发送或接收单位bit的数据所消耗的能量,d表示发送节点和接收节点之间的直线传播距离,节点i和节点j之间的距离如下式

(7)

当传输距离小于阈值d0时,只考虑电磁波的直射,功率放大损耗采用自由空间损耗模型;当传输距离大于阈值d0时,还考虑电磁波的反射、折射和绕射,功率放大损耗采用多径损耗模型。

接收信号消耗的能量为

ERX(l)=lEelec

(8)

因此无线传感器网络节点收发信号的能量模型如图3所示。

数据融合过程极其复杂[11],本文将其消耗的能量过程简化为

EDA(l)=lEda

(9)

其中Eda为融合单位bit所消耗的能量。本文假设簇头节点会根据事先设定的数据融合率将本簇簇内节点上传的数据进行融合,去除部分数据冗余。

4 仿真及结果分析

通过MATLAB对LEACH-RE算法进行验证。假设100个网络节点(包含一般节点和高级节点)随机分布在100m×100m×40m空间中,sink节点位于空间正中心,即(50m,50m,20m),其它仿真参数初始化如下表所示:

表1 仿真参数

通过仿真运行,结果下图所示。

从仿真结果中可以分析得出循环周期与网络节点存活数量的关系以及循环周期与无线传感器网络剩余能量的关系。在图4和图5中,‘x’表示死亡节点,可见LEACH-RE算法节点存活情况优于LEACH算法。从图6可知,在1000轮周期后,LEACH-RE算法中的节点生存状况明显优于LEACH算法中的节点生存状况,这是因为LEACH-RE算法改善单个节点的生存状况,从而均衡网络节点的能量负载。从图7可知WSN的能量变化,曲线斜率表示网络能量消耗速度,可以看出LEACH-RE算法的整体网络剩余能量高于LEACH算法中的整体网络剩余能量,且网络能量消耗速度慢于原算法,证明改进路由协议能够有效均衡网络能量,延长网络生存周期。

5 结语

通过在三维空间的LEACH算法的基础上结合网络节点的异构性,引入相对剩余能量减少低能量节点当选簇头的概率,从而实现算法有效改进,通过MATLAB平台对WSN存活节点数量和整体网络剩余能量两项指标进行仿真验证,得到如下结论:

1)设置100个网络节点,网络经过1500轮周期运行后,LEACH-RE算法存活28个节点,原算法只存活8个节点,改进算法较原算法提升250%;

2)LEACH-RE算法在1500轮周期左右耗尽能量,LEACH算法在1300轮周期耗尽能量,改进算法较原算法提升15%。结果证明改进算法能够有效均衡网络能量,延长网络生存周期。

猜你喜欢

能量消耗能量节点
太极拳连续“云手”运动强度及其能量消耗探究
中年女性间歇习练太极拳的强度、能量消耗与间歇恢复探究分析
基于图连通支配集的子图匹配优化算法
正能量
没别的可吃
结合概率路由的机会网络自私节点检测算法
面向复杂网络的节点相似性度量*
采用贪婪启发式的异构WSNs 部分覆盖算法*
变速器对电动汽车能量消耗的影响
诗无邪传递正能量