杨艳琦
(西安培华学院教务管理中心,陕西 西安 710125)
无线传感器网络(WSNs,Wireless Sensor Networks)是一种无基础设施的无线自组织网络,综合了传感器技术、嵌入式技术、分布式信息处理技术和通信技术,能够协作地实时监测、感知和采集网络分布区域内的各种环境或监测对象的信息,并对这些信息进行处理,从而获得详细准确的信息,传送给需要这些信息的用户。无线传感器网络被称为对21世纪具有巨大影响力的技术之一[1]。无线传感器节点具有数量庞大、体积微小、通信和计算能力弱、电源能量有限且无法弥补、能量异构等特点[2]。
传感器节点计算所消耗的能量要远远小于数据传输所消耗的能量,网内查询处理成为提高网络寿命的重要手段,其核心手段就是采取数据聚合技术来尽可能地减少数据传送的能量消耗,利用节点对数据的预处理,可以减少消息传送的数量或者大小,从而实现能量的有效利用。数据聚合是WSNs中实现节能的关键技术,通过去除冗余的数据信息,减少网络的通信量,提高能量的有效性[3-6]。
分簇算法主要是选择簇头以及更好地使用簇头节点对收集到的数据进行处理然后转发至Sink节点,这里如果不对簇头节点收集到的数据进行聚合处理的话,簇头节点会很快地消耗掉能量,导致网络的负载不均衡。通过对LEACH算法[5]进行仿真,如果簇头不进行数据聚合而直接收集转发的话,在网络运行一定轮数之后会发现很多节点的剩余能量很低。
为了更好地表述所提算法,在这里对网络作以下假设:
1)在正方形区域内随机部署N个同构节点,节点布置好之后不再移动;
2)每个节点具有相同的通信半径;
3)邻居节点信息可知;
4)节点的初始能量相同;
5)节点具有压缩数据功能;
6)Sink节点位置可调;
7)网络运行一轮更新一次;
8)只有一种类型的攻击节点。
本研究的能耗模型同LEACH,假设一个节点传输l比特的能耗是:
一个节点接收lbits比特的能耗是:
其中,εfs代表自由空间下单位距离传输数据的放大器能耗,Eelec代表节点收发一个单位数据包消耗的单位能量,l代表单位数据包的大小,εmp代表多路衰减模型下单位距离传输数据的放大器能耗。
在簇头节点的选择中,LEACH算法根据提前设置好的概率随机选择网络中的传感器节点成为簇头节点,本研究在簇头节点选择时综合考虑节点的剩余能量、节点可通信节点的数量以及节点离Sink节点的距离。首先根据以上几种考虑因素计算每个节点作为簇头候选节点的值,然后在满足最大连通子图占比90%的条件下从候选簇头节点中,按照候选值从高到低依次选择合适的候选簇头节点成为真正的簇头节点。
假设簇头节点的候选集合Cadidate_CH{ },簇头节点集合List CH{ },对于任意的一个节点vi,ERemain-i表示vi节点的剩余能量,EInitial代表网络中所有节点的初始能量,Degmax表示网络中节点可通信最多的节点数,Degi表示节点vi可通信的节点数。
计算vi节点作为簇头的候选值:
其中α,β表示大于零的参数,满足α+β=1。
分簇完成之后,网络基于上述最大覆盖、最小能耗问题构建了本研究提出的最优数据通信链路构建算法。按照上述方法对网络进行分簇处理之后,接下来构建每一个簇头节点到Sink节点的路径。为了降低算法的复杂,使簇内的通信为单向直接通信,即成员节点直接将收集到的数据传送给簇头节点。簇内数据传完之后,簇头节点此时需要将数据传送给Sink节点,研究者经常采取以下三种方法:1)Sink节点使用贪婪算法构建到簇头的多跳路径,路径中只有簇头节点;2)Sink节点使用贪婪算法构建到簇头的多跳路径,路径中只有非簇头节点,所有簇头节点均为叶子节点,不再作为中继节点;3)混合路径,构建簇头到Sink节点的最优路径,簇头节点、非簇头节点均可以作为中继节点。为了加强节点的负载平衡,选择第三种树型-分簇型混合路径模型进行数据的传输。最优数据通信链路构建算法1如下。
输入:最优数据通信链路Data Trans{ }=NULL,存活节点数N,Sink节点位置S(a,b),存活节点位置V(xi,yi),i=1,2,…,N,节点vi的邻居节点信息集合Neighborvi{ },节点通信半径r。
笔者针对OTCEE算法与经典的混合型算法EEICS、PEDAD,树型算法GIT以及混合型算法LEACH,将从网络寿命、网络平均延迟等角度进行仿真比较。
各算法网络寿命的比较图如图1所示,可以从图1中看出算法OTCEE的寿命明显优于其他几种比较的算法LEACH、GIT、PEDAP、EEICS。当有第一个节点死亡时,OTCEE算法的寿命为8 015轮,EEICS为7 514轮,PEDAP为4 632轮,GIT为4 520轮,LEACH为4 026轮。当有10个节点死亡时,OTCEE算法的寿命为10 526轮,EEICS为8 074轮,PEDAP为8 106轮,GIT为7 835轮,LEACH为7 726轮,算法的寿命提升率较EECIS提升了30.36%,较PADAP提升了34.34%。这是因为本研究所提算法OTCEE分簇时均衡考虑了能量的消耗等,建立了最优的分簇拓扑结构,并且在最终的数据传输阶段建立了混合型的数据传输路径,将网络中剩余能量较多的节点加入数据传输路径从而降低了节点的能耗,延迟了节点死亡的时间。
图1 网络寿命
数据传输的实时性是网络开销的重要指标,延迟越低数据传输的性能越强。各算法网络平均延迟比较图如图2所示。从图2中可以看出LEACH 算法的延迟最低,因为LEACH算法的数据传输拓扑单一,簇内直接传播,簇头节点到Sink也是单向直接传播,从而延迟最低。但是延迟低的代价是网络寿命较低,需基于此综合考虑网络开销。从图2中可以看出几种算法延迟均随着网络节点的增加而增加,这是因为数据量的增加以及拓扑中中继节点的数量增加从而导致了延迟的增加。同样的仿真环境下本研究所提算法OTCEE的延迟低于其他几种算法的延迟,这是因为从簇头到Sink建立了最优的混合路径,从而有效地降低了数据的传输延迟。
图2 网络平均延迟
综上所述,无线传感器网络被称为对21世纪具有巨大影响力的技术之一,无线传感器节点具有数量庞大、体积微小、通信和计算能力弱、电源能量有限且无法弥补、能量异构等特点。构建一种能量高效且负载均衡的分簇算法是研究无线传感器网络的主要目的。