长春理工大学学报(自然科学版)
Journal of Changchun University of Science and Technology (Natural Science Edition )
Vol.44No.1Feb.2021
第44卷第1期2021年2月
收稿日期:2019-11-11
基金项目:吉林省科技厅项目(20190302103GX )
作者简介:张铭悦(1996-),女,硕士研究生,E-mail :*****************
通讯作者:陈桂芬(1964-),女,博士,教授,博士生导师,E-mail :****************
张铭悦,陈桂芬,王鹤霏
(长春理工大学
电子信息工程学院,长春
130022)
摘要:无线传感器网络作为物联网(Internet of Things ,IOT )收集信息的重要一环,分为异构和同构网络,本文研究的
主要是能量异构网络(Energy Heterogeneous Wireless Sensor Networks ,EHWSN )。DEEC 算法(Distribute Energy-Efficient Clustering Algorithm )是应用于能量异构网络的基本算法,由于无线传感器网络受硬件限制,能量是非常有限的。因
此,尽可能延长网络的生命周期,降低能量消耗是分簇算法的首要功能。提出了一种改进的DEEC 算法—DEEC-BD (Distribute Energy-Efficient Clustering Algorithm based on distance ),其核心思想是引入距离因子改进概率P i ,并在数据传输阶段使用多跳的方式,通过对路径质量参数的大小的比较来选择下一跳,达到降低能耗的目的。仿真结果表明,DEEC-BD 与DEEC 、CREEP 相比,生命周期分别提高了79%、37.5%,数据传输量分别提高了450%、41.5%,网络能耗分别降低了52%、16.7%。
关键词:异构网络;生命周期:能耗:距离因子;路径质量中图分类号:TN929.5
文献标志码:A
文章编号:1672-9870(2021)01-0064-07
Research on Clustering Rounting Algorithm for Heterogeneous Energy Wireless Sensor Networks
ZHANG Ming-yue ,CHEN Gui-fen ,WANG He-fei
(School of Electronics and Information Engineering ,Changchun University of Science and Technology ,Changchun 130022)Abstract :As an important part of information collection in internet of things (Internet of Things ,IOT ),wireless sensor networks are divided into heterogeneous and homogeneous networks.This paper mainly studies energy heterogeneous net-works (Energy Heterogeneous Wireless Sensor Networks ,EHWSN ).DEEC algorithm applied to heterogeneous energy network.Due to the energy limitation of wireless sensor networks ,prolonging the network lifetime as much as possible and reducing energy consumption are the primary functions of clustering algorithm.In this paper an improved DEEC algorithm —DEEC-BD is proposed.Its core idea is to improve the probability P i by introducing distance factor and use multi-top method in the data transmission stage to select the next hop through path quality paraments to achieve the purpose of reducing energy consumption.Simulation results show that compared with D
EEC CREEP ,the lifetime of DEEC-BD is increased by 79%37.5%,the data transmission capacity is increased by 450%41.5%,and the network energy consumption is reduced by 52%16.7%
Key words :HWSN ;lifetime ;energy consumption ;distance factor ;path quality
物联网技术被誉为当今伟大的技术之一,它的应用主要与三项关键技术密不可分。其中一
项关键技术—无线传感器网络相当于“触手”,针对无处不在的信息流进行感知,并将获得的
信息进行处理。传感器节点可以分布在森林、会议室、患者身体等特殊区域。可以实现对多种实时动态数据的采集。之后,来自传感器的数据传递给实时接收设备,通过互联网传递给用户[1]。随着社会的发展需要,数据产生的途径也更加多样化,现今有效的数据收集手段也很有限,传感器的发展仍然重要。 70sec
无线传感器网络(WSN)由多个传感器节点组成,这些节点分布在各个需要收集数据的区域,每个节点的通信方式、计算和感知能力都是相同的[2]。无线传感器网络适用于栖息地监测,建筑监测和森林监测等领域,在生物科学、生物医学等重要领域中扮演着重要的角[3]。无线传感器网络收集的信息量很大,在电池、传感器以及附近的能量消耗速度较快。能量的不均匀消耗会导致网络寿命的缩短。分簇算法的出现大大延长了网络的生命周期,并节约了很多能量[4]。
早期对无线传感器网络的研究主要集中在同构网络上,但现实环境下,同构网络的作用并不好,相对而言,异构网络的发展更具有现实意义。异构无线传感器网络分为节点能量异构网络、计算能量异构网络、链路异构网络、网络协议异构网络等[5]。
胡中栋、伍华林等人[6]提出了MEECR算法,该算法优化DEEC算法的方式是将节点位置与剩余能量引入簇头选举机制,通过改进选举阈值公式,优化网络性能。Raju Pal等人[7]提出的BEECP是将BBO算法(Biogeography-based optimi⁃zation)引入到异构网络中,用于出传感器节点 的最佳组合,达到降低能耗的作用。Jin-Shyan Lee等人[8]提出了一种基于三层结构的半分布式分簇方法,实现了上下层的簇头选择,有效提高了网络死亡生命周期。Saini P等人[9]提出了E-DEEC算法,该算法在异构无线传感器网络中原有的两种节点的基础上,加入了超级节点,增加了网络的异构性和能量水平。Nematollahi P等人[10]提出了SEDC算法(Simple Energyefficient Data Collecting protocol),该算法是通过设置能量阈值,
让能量不符合要求的节点不参与簇头的选举,使得簇头选举更加准确快速。Dutt S等人[11]提出了一种簇头能量受限的算法CREEP,该算法通过修改双层异构网络中的簇头选择阈值,来克服原算法在簇头上的限制。Vançin等人[12]提出了一种基于三层异构分簇的分布式节能路由算法TBSDEEC,该算法考虑了能量消耗模型中,阈值平衡采样的影响,通过设置两种不同的应用场景,来设置参数。
上述针对异构网络算法的改进,不仅仅从网络本身的异构性进行考虑,还有参数和算法的结构。应用场景也是优化异构网络性能的重要考虑因素。
1DEEC算法
异构网络的研究起步晚于同构网络,为了更好的理解异构网络,首先,介绍一下同构网络的研究状况。
大部分适用于同构网络的算法均可改进为适用于异构网络的算法。DEEC算法就是从LEACH算法改进而来的。这种改进同构网络算法方式,使得其实用价值得到提高。同构网络与异构网络的区别主要体现在两个方面:参数设置的不同和协议的混合应用。参数的设置可以随着环境的变化而变化,协议的不同,则需要特殊技术,将其融和在一起,共同对网络发挥作用。
DEEC算法主要目的是将剩余能量更多的节点选做簇头,节约网络能量,使其利用率提高。该算法主要应用于二级能量异构无线传感器网络。
(1)簇的建立阶段
两种节点的区别直观体现在初始能量的差异上,普通节点的初始能量为E0,那么高级节点的初始能量是E0(1+α)。α为高级节点多于普通节点的能量倍数。由于存在两种不同的节点,对两种节点的概率
值P i的设置也不同,如公式(1)所示:
张铭悦,等:能量异构无线传感器网络分簇路由算法研究
第1期65
长春理工大学学报(自然科学版)2021年
P i=ì
í
î
ï
ï
ï
ï
P opt
1+αλ
P opt(1+α)
1+α
=
ì
í
î
ï
ïï
ï
ï
斜管隔油池ïï
ï
P opt E
i(r)
(1+αλ)------E(r),普通节点
P opt(1+α)E i(r)
(1+αλ)------E(r),高级节点
(1)
其中,P opt表示期望簇头比例;E i(r)表示节点在r 轮剩余的能量值;P i表示节点在轮中当选为簇头节点的平均概率节点。
在节点的剩余能量不一致的情况下,剩余能
量高的节点将有更大的概率当选簇头。------E(r)表
示网络节点在第r轮的平均能量值,如下:
--
----E(r)=1N∑i=1N E i(r)(2)在第r轮,用当前节点的能量与网络平均能量做比值,可以得到:
P
i=P opt é
ë
êê
ù
û
úú
1-------E(r)-E i(r)
--
----E(r)=P opt E i
(r)
--
----E(r)(3)
由公式(3)可以看出节点当选簇头的概率是根据能量比值决定的,节点的剩余能量越多,节点当选簇头的概率越大。
假设每轮的能量消耗E round是相同的,并且节点能耗均匀,可以估算出网络的生命周期为:
R=E total
E round(4)
其中,E total为全网节点初始的总能量;E round为每一轮全网所消耗的总能量。
由于节点能耗均匀,每轮消耗的能量都几乎
相同,于是得到第r轮节点的平均能量--
----E(r)为:
--
----E(r)=E
total(1-r R)(5)簇头选举阈值函数T(n)的表达式为:
T(n)=ì
í
î
ï
ï
ï
ï
P
i
1-P i(r mod(1P
i
))
鱼塘全自动增氧控制器,if n i∈G 0,otherwise
(6)
选举出的簇头将会向一定范围内的节点广播信息,同时普通节点在接收到入簇指令后,通过选择最近的簇头,进行入簇。
多级异构网络由二级异构网络推广而来,将其带入到公式(3)中,得到:
P
i=
P opt N(1+a
i)
N+∑i=1N a i=
P opt N(1+a
i)E i(r)
N+∑i=1N a i------E(r)(7)其中,αi为多于E0的能量倍数。
∑i=1N P i=P opt∑i=1N E i(r)------E(r)=NP opt(8)
I
i=(N+
∑i=1Nαi)/P opt N(1+αi)(9)网络的全部节点数如公式(9)所示,I i表示节点的基本轮转周期,节点成为簇头的周期为:
n
i=
1
P
i
(10)当E i(r)>------E(r),则n i<I i,通过上述理论分析,节点能量越高,当选簇头的概率就会越大。
(2)稳定传输阶段
经过筛选的簇头将簇内成员收集来的信息进行整理,并将融合的数据以单跳的方式传输数据到Sink节点。
2仿真模型
2.1系统的能量模型
系统的能量采用无线电模型。该模型的功能的实现取决于d0的设置。发送数据能耗
E
提花机Tx(l,d)表达式为:
E
Tx(l,d)=
{lE elec+lεfs d2,d<d0
lE elec+lεmp d4,d≥d0(11)接收数据能耗E Rx(l)表达式为:
E
Rx(l)=lE elec(12)数据融合能耗E m表达式为:
E
m=(N
DA
(13)
d0=(14)其中,l为数据包长度;E elec为发射电路的能量;
ε
fs
和εmp为功率放大器的能耗;E DA为单位数据融合能耗;N为簇内成员节点数;若d>d0,则为多径衰减模型:反之为自由空间模型。
66
2.2系统的网络模型
为了搭建合理的仿真环境,做出如下假设:
(1)在100×100的矩形区域中,设置Sink节点在网络的中心。
(2)所有的节点的标识号都是唯一的且不会中途发生改变。
(3)所有的节点都是固定不动的,相对的,其坐标也是固定的。
(4)所有节点的硬件配置都是相同的,节点具有的各方面能力都是相同的,并且会按照设置好的通信速率发送数据。
(5)普通节点仅仅负责采集和向簇头发送数据,簇头的主要功能是存储、融合、发送数据,并将融合好的数据发送到Sink节点。
(6)通信链路的能量消耗是相同的,且不分主动被动。
(7)假设Sink节点不会死亡并且能量消耗为0。
2.3算法分析
DEEC是一种基于LEACH并适用于多级能量异构网络的分布式高能效分簇路由算法。DEEC算法并未考虑网络中簇头分布不均、簇头产生数目不稳定等问题。针对上述问题,目前的解决算法多种多样,主要差别是参数的改进和算法结构的优化。
通过上述理论分析,DEEC算法的簇首选举考虑了剩余能量,使得簇头选择更加合理。由于簇头与Sink节点是采用单跳通信的,而在实际应用中,网络的规模都偏大,这种机制使得该算法不适用于大规模网络,并且DEEC算法的簇头选举仅仅考虑了剩余能量,对于其它影响因素,比如节点之间的距离,可能存在簇头选择不合理的情况,加快节点死亡。
CREEP算法在簇首选举中的概率P i进行改进,主要将节点距离与平均距离的比值引入到P i 上,该算法同DEEC算法,也考虑了能量因素,但CREEP算法在多跳路径的选择中,并未设置合理的参数来限制下一跳的选择,因此会出现路径选择不合理的情况。
3DEEC-BD算法概述
DEEC-BD算法主要包括两个方面:
(1)针对簇头选举概率P i进行改进,在考虑剩余节点能量的同时,引入节点距离因子。根据距离的不同选择不同的距离因子,可以灵活的调整簇头选举概率。
(2)设置路径质量Q(r),通过对比每条路径的路径质量参数,选择合适的下一跳,缓冲簇头的压力,适当的延长网络的生命周期。
3.1距离因子
距离因子的形式根据距离阈值产生的,本文设置的距离阈值为D0:
D0=d avg=0.765M2(15)式中,d avg为全部节点距Sink节点距离的平均值。当d i≥d avg时,P i概率如下:
P
i=
ì
í
î
ï
ï
ïï
ï
ï
ïï
P opt E
i(r)
(1+αλ)------E(r)(1-
d
i-d avg
d max-d avg),普通节点
P opt(1+α)E i(r)(1-d i-d avg
d max-d avg)
(1+αλ)------E(r),高级节点
(16)式中,d i为节点到Sink节点的距离;d max为节点到Sink节点的最大距离。由本式可知,节点距Sink 的距离越小,被选为簇头的概率相对更大,反之,则更小。
当d i<d avg时,P i概率如下:
P
i=
ì
í
î
ï
ïï
ï
ï
ïï
ï
P opt E
i(r)
(1+αλ)------E(r)(
d avg-d i
d max-d avg),普通节点
P opt(1+α)E i(r)
(1+αλ)------E(r)(
d avg-d i
d max-d avg),高级节点
软件自动化测试技术(17)如上所述,剩余能量较大、距离Sink节点较近的节点,在簇头选举机制中,增大了被选为簇头的概率。距离Sink节点较远的节点,在数据传输过程中,会耗费更多的能量,从而影响网络的
张铭悦,等:能量异构无线传感器网络分簇路由算法研究
第1期67
长春理工大学学报(自然科学版)2021年
综合性能。DEEC-BD 算法的簇头选举机制,通过设置距离阈值,减少分布在区域边缘节点被选做簇头的概率,也减少了由于能量消耗过快而快速死亡的簇头,即在相同轮数内,网络能耗减少的同时,网络的可用节点数量能够显著增加。3.2
路径质量
利用单跳的形式将数据传输给Sink 节点是分簇算法的默认方式,但是单跳传输会使得簇头更快死亡,影响网络的生命周期,数据的传输量也会受到影响,因此,多跳机制可以减轻在数据传输过程中簇头的负担,并能够适当的延长网络的生命周期。
多跳机制中下一跳的选择是重中之重,本文引入路径质量参数,使得簇头向Sink 节点传输数据的时间延长。
网络的使用范围,与算法本身的可扩展性息息相关。根据对上述算法的分析,引入了路径质量参数Q (r ),该参数考虑了簇头剩余能量和簇头到Sink 节点距离,根据这个参数选择最优路径,在能量消耗较少的情况下,传输大量数据。
Q (r )=max é
ë
êù
û
úα(1-D i D max )+β(E i (r )E 0
)(18)式中,
D i 为簇头到Sink 节点的距离;D max 为簇头到Sink 节点的最大距离。3.3
阿尔玛蓝DEEC-BD 算法流程
(1)部署节点、设置基本参数。
(2)计算距离阈值D 0,根据d i 与D 0之间的关系,选择合适的P i 形式,依据改进的簇头选举阈值函数计算出该节点簇头选举的阈值,选择合适的簇头。
(3)该步骤是成簇的最终阶段,其主要将那些并未成为簇头的节点,根据感知的信号强弱,寻距离自己最近的节点,然后入簇。然后,把从各个区域收集来的数据,发送到簇头。
(4)簇头则将簇内节点收集的数据进行融合,利用改进的多跳机制,根据路径质量参数,选择合适路径,将数据传输到Sink 节点。
(5)网络开始新的一轮,重复上述步骤,直到全部节点都死亡。
4仿真结果分析
在仿真分析中,本文主要针对多级能量异构
网络,在死亡节点数(生命周期)、数据传输量和能量消耗三个方面。实验环境设置见1.2、1.3节。
针对Q (r )中的权值α和β的取值,经过仿真,结果如表1所示。
表1
α、β的取值
α、β的取值
α=0.2β=0.8α=0.3β=0.7α=0.4β=0.6α=0.5β=0.5α=0.6β=0.4α=0.7β=0.3α=0.8β=0.2节点全部死亡轮数
2774284332512994263225872
425
图1权值取值对比图
根据图1所示,可以得到α和β的最优取值,仿真参数如表2所示。
表2
仿真参数
参数网络范围位置/m 节点数量/m 数据包/J P/bit d 0/m
α/bit β/bit 数据包
参数值100×100(50,50)100
40000.1870.40.6400068