集群型无线传感器网络中能量分配和数据冗余带来的耗能问题制约了网络规模化和节能化。本文提出了集群型无线传感器网络中基于空间分布的有效节能方案(EESC算法),根据传感器节点、头节点、感知目标三者相对空间分布和能量分布,对各个集群的传感器节点进行筛选,能有效减少集群中传感器节点发送至头节点的数据量,降低数据阻塞的风险,从而提高能量保存的效率并提升数据融合有效性。仿真实验结果表明,该方法易于实现,鲁棒性强,效果明显,优于经典算法。 Energy consumption caused by energy allocation and data redundancy in cluster-based wireless sensor networks restricts the network scale and energy saving. In this paper, an effective ener-gy-saving scheme based on spatial distribution in clustering WSN (EESC algorithm) is proposed. According to the relative spatial distribution and energy distribution of sensor nodes, head nodes and perceived targets, the sensor nodes of each cluster can be effectively selected. This algorithm can effectively reduce the amount of data sent by the sensor nodes in the cluster to the head node and reduce the risk of data blockage so as to enhance the energy conservation efficiency and im-prove the effectiveness of data fusion. The simulation results show that the method is easy to im-plement, robust and effective, which is superior to classical algorithms.
肖晓晴1,陈小平1,赵阳2
1苏州大学电子信息学院,江苏 苏州
2清华大学电子工程系,北京
收稿日期:2018年4月3日;录用日期:2018年4月20日;发布日期:2018年4月27日
集群型无线传感器网络中能量分配和数据冗余带来的耗能问题制约了网络规模化和节能化。本文提出了集群型无线传感器网络中基于空间分布的有效节能方案(EESC算法),根据传感器节点、头节点、感知目标三者相对空间分布和能量分布,对各个集群的传感器节点进行筛选,能有效减少集群中传感器节点发送至头节点的数据量,降低数据阻塞的风险,从而提高能量保存的效率并提升数据融合有效性。仿真实验结果表明,该方法易于实现,鲁棒性强,效果明显,优于经典算法。
关键词 :集群型,无线传感器网络,EESC算法,节能
Copyright © 2018 by authors and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/
无线传感器网络(Wireless Sensor Networks, WSN)是一种分布式传感网络,根据传感器网络结构模型,传感器网络可分为:平面型网络、集群型网络、树型网络、网格型网络、自由结构网络等 [
其中从多个传感器传递聚合数据的过程称之为数据融合 [
1) 当测量数据相同的情况下,此时所有传感器节点会向头节点发送相同的数据,这将会导致头节点数据冗余;
2) 网络中发送和接收的冗余数据会造成传感器节点的能量浪费;
3) 发送和接收冗余数据时可能会网络拥堵,且发送和接收无线电信号的能量消耗要远远高出处理其他操作的能量消耗。
为解决此类问题,本文提出如下解决方案:集群型无线传感器网络中基于空间分布的有效节能方案(the Efficient Energy-saving Scheme Based on Spatial Distribution in Clustering Wireless Sensor Network, EESC)。该算法基于传感器节点与头结点和目标的相对空间位置以及各个传感器节点的能量分布进行节点筛选,优化集群中传感器节点数目,从而达到节约集群中传感器节点的能量的效果。本论文算法介绍分为三个主要部分:
1) 研究集群无线传感网的感知策略和分析传感器节点的能量损耗;
2) 提出集群型无线传感器网络中基于空间分布的有效节能方案;
3) 通过仿真模拟该解决方案的节能效果并分析。
本节着重讨论集群无线传感网的不同的感知策略导致不同的数据融合方式,以及对节点筛选的要求。同时,通过分析传感器节点能量损耗的模式,探讨节能的途径。
感知目标的策略通常分为面向轨迹和面向属性两类 [
1) 互补式感知模型
此类感知模型传感器节点间没有直接彼此相连,每一个传感器节点对监控目标感知不完善,测量结果也可能各不相同。在这种情况下,对于目标的感知需要多个传感器节点协作完成,每个传感器节点的测量结果是互补的,再将多个传感器节点的测量结果进行数据融合后形成的最终结果也会更加全面。
2) 竞争式感知模型
此类感知模型每个传感器节点能够独自测量整个目标的全部内容,此时对于目标的监测也相对全面。测量结果是来自不同传感器节点对相同目标相同属性的测量结果。由于不同传感器节点的位置与性能关系,在这种模型下,传感器头节点会接受到较多相似的测量结果,导致数据冗余,此时剔除部分有效性低的数据会使得数据融合后的结果误差更小,效果也更理想。
如图1所示,在具体应用中当传感器节点与感知目标距离较近时,每个传感器节点都可以准确具体探测到目标属性,不同的节点对于相同目标的感知结果基本一致,此时过多的节点会产生数据冗余,进而造成能量损耗,因此只需要少量传感器节点就可以准确高效的描绘出感知目标的全部属性,也就是上述的竞争式感知模型;相反,当传感器节点与感知目标相距较远时,每个节点只能感知到目标的一部分,对于目标的感知不完整,因此需要使用较多的传感器节点对目标进行监测,再将不同节点的感知结果进行数据融合,才能准确描述出感知目标的全部属性,即互补式感知模型。
传感器节点的能量损耗分主要分为3个部分,如图2所示。
1) 感知模块
感知模块主要用于检测目标属性和数据转换分装工作,其中括各类传感器模块和A/D(模拟/数字)信号转换模块两部分。
2) 处理模块
处理模块中能量损耗主要用于控制和数据计算等操作,其中包括数据存储模块和CPU处理模块两部分。
图1. 线数据冗余来源
3) 通信模块
通信模块中能量主要损耗在无线电波发送接收信号中,该模块实现传感器节点间的通信和传感器节点到基站间的通信等功能。
根据实验,电波信号经过多次转换或多级传输所消耗的能量将远远超过传感器节点内部的信号转换或数据计算所消耗的能量,如图3所示,其展示了传感器间的不同操作能量损耗的比例。
当节点间距离为d时,发送k位数据时能量损耗 E S 和接收k位数据时的能量损耗 E R 之间的关系是: E S = E N × k + E W × d 2 , E R = E N × k ;式中 E N 是节点发送或接收单位数据的固有能量损耗,而 E W 是节点通过无线电信号发送数据的能量损耗。在确保数据能到达目标节点的前提下,传感器节点间传输数据所消耗的能量会随着节点间距离减小而迅速下降 [
根据第2.1节的讨论,在集群型无线传感网中,不同传感器节点对目标的感知数据可能是完全相同的或是互不相关的。当数据通过网络传递给头节点时,数据冗余会引起头节点处理数据过量,增加了数
图2. 线数据冗余来源
图3. 线数据冗余来源
据堵塞的风险,并且加大了头节点处的能量损耗。在集群型无线传感器网络中合理地选择节点是增加数据有效性、挺高系统节能性的关键。本节将讨论节点选择的标准,引申出节点选择率的概念,提出集群型无线传感器网络中基于空间分布的有效节能方案。
假设某个传感器集群由同一平面上随机分布的N个节点构成 n 0 , n 1 , ⋯ , n N ,且待测目标和集群中头节点的位置已知。开始每个传感器节点存储的能量相同,而在感知处理和信号接收、发送的过程中,各个传感器节点的能量损耗及剩余能量会产生差异。不失一般性,点与点之间的度量采用平面下的欧氏距离。
这里我们假设各类节点处于二维平面,将传感器节点(Node)、待测目标(Tag)和头节点(Head)坐标分别表示为 N o d e ( x n o d e , y n o d e ) , T a g ( x t a g , y t a g ) , H e a d ( x h e a d , y h e a d ) 。传感器节点、头节点以及目标间的欧式距离表示分别为 d n o d e − h e a d 、 d n o d e − t a g 以及 d h e a d − t a g 。将头节点与目标相连构成直线 l 0 ,如图4所示传感器节点、头结点和待测目标的分布示意图。
从能量损耗的角度考虑,节点对目标的感知以及将数据发送至头节点都会降低传感器节点的能量存储。我们将传感器节点向头节点发送数据和对目标进行感知所带来的能量损耗分别表示为 E n o d e − h e a d 、 E n o d e − t a g ,如图4中位于头节点与目标间的连线上的 n 0 节点相较于 来说,由于 d n 0 − h e a d < d n 1 − h e a d 且 d n 0 − t a g < d n 1 − t a g ,所以 E n 0 − h e a d + E n 0 − t a g < E n 1 − h e a d + E n 1 − t a g ,此时 n 0 综合能量损耗会较低。另一方面,从图3的能量消耗比例图可知,对目标的感知所消耗的能量远远小于传输数据到头节点的耗能,所以在头节点旁边的 n 2 节点比 n 0 节点对于能量存储更有效率。而从数据探测的有效性的角度考虑, d n o d e − t a g 越小数据的真实性准确性越高。综上所述,在同时考虑能量损耗和数据有效性的前提下,本文认为传感器节点到头结点和目标的距离和越小,其优先级越高。
除此之外,在感知过程中,各个传感器节点的能量损耗有所不同,选用能量剩余较少的传感器节点可能会导致探测能量的下降,从而降低节点感知的有效性甚至会影响整个感知过程的运行。同时,从另一侧面来说,择优选择能量充足的节点,对提高无线传感器网络能量利用率,延长网络使用时间有积极意义。
同时考虑空间位置分布和各传感器节点的能量分布,这里我们用优先参数 P i 来评价节点 n i 的优先级:
P i = α ⋅ d i + 1 b p i (1)
图4. 传感器节点与头节点及目标相对位置
式中 d i = d n i − h e a d + d n i − t a g 表示 n i 到头结点和感知目标的空间距离和, b p i 表示节点剩余能量百分比(能量百分比为0的节点不参与计算直接排除),距离能量比率α用于调整两类参数对优先级影响的占比,其取值范围为 [ 0 , + ∞ ) 。由分析可知,对于节点 n i ,优先参数 P i 越小,该节点的优先级越高,即越应该被选择作为有效的感知节点。
上节讨论了传感器节点的筛选标准,对于集群中的N个节点,按照优先参数P可以将其从小到大排序,然后筛选节点。这里需要解决一个问题,选择多少个节点进行感知。为此我们引入节点选择率R的概念,即以R%的比率选择传感器节点参与感知。
由2.1节的分析可知,对于离感知目标较近的集群,传感器节点之间倾向于竞争式,这时我们应选择较少的节点来避免数据的冗余。反之,当集群离感知目标较远,此时为互补式感知,则需要留下较多的节点来提高数据的完整性。因此节点选择率R:
R = ( 1 N b p ∑ i & b p i ≠ 0 x n i − x t a g ) 2 + ( 1 N b p ∑ i & b p i ≠ 0 y n i − y t a g ) 2 λ × 100 % (2)
式中分子表示集群中所有能量不为0的节点(用 N b p 表示有能量剩余的节点个数)的算术平均几何中心离感知目标的距离,而分母λ则表示整个系统中(包括多个不同集群)离目标节点最远的节点与感知目标的距离。由上述表达式可知R的值域是[0%, 100%]。所以说最终选择节点的个数:
(3)
其中参数κ是指系统要求的最少感知节点,但如果集群中能量不为0的节点数 N b p < κ ,则选择优先级前 N b p 个节点。除特殊情况外,先计算节点选择率R,并选择前 ⌊ N b p ⋅ R ⌋ 个节点参与感知。此外头节点作为集群的核心节点,其优先级最高,一定入选。
利用经典的分簇算法LEACH生成集群,并在集群中选取合适的头节点。首先,对于每个集群,将传感器集群中的传感器节点和头节点进行标定;然后,确定传感器头节点和待测目标的位置,并以传感器头节点与目标所在直线为X轴,以头节点与目标的中点为O点建立坐标系;之后,确定各个传感器节点到头节点以及目标的距离,以及传感器头节点到目标的距离等;接下来,计算各传感器节点优先参数P,并排序;最后,计算节点选择率R,选出激活节点,即参与目标感知的节点,进行感知测量,并将测量结果发送到头节点进行数据融合。具体算法流程如下:
1) 输入集群中传感器节点集合 Φ n o d e ;头节点 H e a d ( x h e a d , y h e a d ) ;目标节点 T a g ( x t a g , y t a g ) ;激活节点集合 Φ a c t = { ∅ } ;各个先验参数 α , κ 等;
2) 以 和 T a g 的连线作为x轴, H e a d 与 节点的中点作为y轴建立坐标系,并更新各个节点的坐标;
3) 利用3.1节的节点选择标准方法,根据式(1)计算传感器节点的优先参数P,并按照P从小到大进行排序;
4) 计算集群的集合中心,根据式(2)算出节点选择率R,并由式(3)得出 N c h o o s e ;
5) 根据3)中排好的顺序从 Φ n o d e 中依次选出节点 N c h o o s e 个节点组成 Φ a c t ;
6) 将头节点 H e a d 加入 Φ a c t ;
7) Φ a c t 中的节点激活,感知目标数据并将感知数据发送到 H e a d 进行数据融合。
本节基于第3节的算法,在Linux平台下利用python进行仿真,分析了仿真结果,并将仿真结果与经典算法进行比较。仿真的主要参数如下表1所示。
这里定义一个感知周期的概念,即是指首先采用LEACH算法进行自动聚类,形成不同的集群(不同集群中的传感器节点数量可能不同),然后针对每个集群应用3.3节的节能算法进行进一步的节点筛选,同时模拟感知过程、信息发送以及数据融合,并更新各个节点的电量。感知周期结束后( T = 10 s 后),传感器网络重新分配集群,并进行下一次测量感知模拟。同时由于能量的损耗,部分传感器节点会因没有足够能量停机。如图5所示,可以看出每次分簇的传感器节点总数量会随着时间变化。前10个周期传感器节点维持在100个,之后由于感知工作的耗能,有部分节点停机,参与实际参与分簇的节点数下降。除此之外,图5还显示了节点总能量随时间变化的柱状图,可以看出能量是单调递减的,并且随着传感器节点的减少每个周期能量递减速率趋于缓慢。
以第五个周期为例,如图6所示,传感器网络节点被分为4个集群,并在每个集群中选择了相应的头节点,节点位置如下分布:集群1:包含17个节点,如图6(a)所示;集群2:包含41个节点,如图6(b)所示;集群3:包含24个节点,如图6(c)所示;集群4:包含18个节点,如图6(d)所示。
应用集群型无线传感器网络中基于空间分布的有效节能算法从集群中筛选传感器节点,设置感知目标Tag坐标为(31,67)。图7所示的集群2对感知目标的节点选择示意图。
集群2中包含41个传感器节点(包括头节点),在应用本论文提出的EESC节能算法后,集群的41
分布参数 | 自定参数 | 能量参数 | |||
---|---|---|---|---|---|
节点数量 | 100 | 集群个数 | 4 | 节点初始能量 | 5J |
节点分布范围 | 100 cm ´ 100 cm | 距离能量比α | 0.5 | 接收/发送单位 信号耗能 | 10 nJ/100 nJ |
节点分布方式 | 随机分布 | 最少节点数κ | 3 | 空闲或睡眠状态 节点耗能 | 0J |
表1. 主要参数表
图5. 可用节点数和节点总能量随时间变化图
图6. 四个集群中节点位置分布
个传感器节点中有23个被选做优先节点。因此,共有18个传感器节点没有参与数据传输故没有能量损失。利用表1中的传感器参数配置和仿真结果可以得出该传感器集群中来自传感器底层节点的数据大小为226 bit,而根据仿真结果如果不采用节能算法数据量大约为399 bit。由于数据传输时能量消耗的主要方面,因此在这种情况下,该集群的节能效率约为 ( 399 bit − 226 bit ) / 399 bit ≈ 43.4 % 。
进行20周期的模拟感知,对比于单纯的利用LEACH算法进行集群的划分与感知,由于良好的节点筛选策略,采用基于空间分布的有效节能算法在各个周期中的平均节能效率大约在40%~70%之间,如表2所示。
本文提出了集群型无线传感器网络中基于空间分布的节能方案,主要根据传感器节点、头节点、目
图7. 激活节点的选择(遵循EESC方案)
时间(s) | EESC算法(bit) | 经典算法(bit) | 节能效率(%) | 时间(s) | EESC算法(bit) | 经典算法(bit) | 节能效率(%) |
---|---|---|---|---|---|---|---|
10 | 828 | 2186 | 62.1 | 110 | 1129 | 2167 | 47.9 |
20 | 746 | 1798 | 58.5 | 120 | 976 | 1600 | 39.0 |
30 | 1383 | 2460 | 43.8 | 130 | 578 | 1222 | 52.7 |
40 | 948 | 1963 | 51.7 | 140 | 610 | 1530 | 60.1 |
50 | 675 | 1420 | 52.4 | 150 | 432 | 967 | 55.3 |
60 | 1011 | 1729 | 41.5 | 160 | 795 | 1429 | 44.4 |
70 | 754 | 2186 | 65.5 | 170 | 599 | 1668 | 64.1 |
80 | 822 | 2235 | 63.2 | 180 | 755 | 1834 | 58.8 |
90 | 855 | 2449 | 65.1 | 190 | 312 | 856 | 63.5 |
100 | 1022 | 2098 | 51.1 | 200 | 501 | 978 | 48.8 |
表2. EESC方案与LEACH方案的数据传输量对比
标三者的距离和能量分布进行各个集群中传感器节点的筛选,从而达到减少集群中传感器节点发送至头节点的数据量,保留了传感器节点的能量,降低了数据阻塞的风险。如果传感器节点间的能量存储相对统一,集群型无线传感器网络中基于空间分布的有效节能算法的效率会更好。另外,传感器节点测量的可靠性正在研究中,因为某些情况下来自单个传感器节点的测量数据可能比来自多个传感器节点的聚合效果更好。
肖晓晴,陈小平,赵 阳. 集群型无线传感器网络中基于空间分布的节能方案研究 An Effective Energy-Saving Research Based on Spatial Distribution in Clustering WSN[J]. 无线通信, 2018, 08(02): 70-79. https://doi.org/10.12677/HJWC.2018.82008