无线传感器网络LEACH路由协议的节能改进算法

(整期优先)网络出版时间:2022-09-28
/ 2

无线传感器网络LEACH路由协议的节能改进算法

史莉莉

陕西黄河集团有限公司 西安 710043

摘要:LEACHLow Energy Adaptive Clustering Hierarchy)是一种经典的WSN自适应分簇分层路由协议,但协议没有考虑节点的剩余能量,随机的产生簇头节点,且在分簇过程中没有考虑簇头节点的数量,过多的簇头造成数据冗余,过少的簇头又因数据传输距离过长而消耗过多的能量,缩短了整个网络的生存周期。针对LEACH存在的以上缺陷,首先在阀值公式中引入节点的能量因素,然后提出一种新的簇头数的计算方法,通过控制簇头数量确保了网络负载的平衡。仿真结果表明:改进后的算法有效降低了能耗,延长了节点和网络的寿命。

   关键词:无线传感器网络,LEACH路由协议,最佳簇头数,能量消耗


1 引言   

无线传感器网络(WSN)是由大量传感器节点以自组织的方式构成的无线网络。传感器节点通常采用电池供电,其计算和存储能力十分有限,因此节能是无线传感器网络的一个重要研究方向[[1]]。其中LEACH路由协议是最早提出的一个能量利用率较高的分层路由协议,协议采用分簇的方式,实现网络能量消耗的均衡。本文针对LEACH协议的一些不足,提出改进算法。

2 LEACH 算法概述

LEACH算法是无线传感器网络最早提出的分簇路由协议, LEACH定义了轮的概念,每轮分为簇的建立阶段和稳定状态阶段。在簇的建立阶段,每个节点产生一个(0,1)之间的随机数,并把它和阀值              T(n)进行比较,如果这个数小于阀值,则该节点成为簇头节点。T(n)的计算公式为:

其中,P是簇头在所有传感器节点中所占的百分比,P=k/n,k为网络中的簇头个数,N为网络中的节点总数,r是当前的轮数,G是前1/P轮中未

当选过簇头节点的集合。在每1/P轮,每个节点有且只能成为一次簇头。

3 簇头选择的改进

Leach协议中所有节点被选为簇头的概率是相等的,但他们当选为簇头的概率依然是相等的。在这种情况下会出现一些剩余能量很少的节点依然被选为簇头节点,这样导致此节点的能量会很快耗尽,出现网络“洞点”使得整个网络的生存时间变短[2]。因此,应当把节点的剩余能量作为簇头选择的考虑因素。

本文根据Leach的阀值公式结合节点的剩余能量,提出改进的阀值为:    (2)

其中E0为表示节点的初始能量,EC表示节点的当前能量值。本文将改进后的LEACH称为LEACH-I,这种方法通过节点的剩余能量来调节阀值的大小,可以使剩余能量多的节点计算的阀值较大,从而提高其成为簇头的机会。该方法的缺陷是:只考虑了节点能量而忽略了最佳簇头数对网络性能的影响。下文是在LEACH-I的基础上,再进一步对簇头数目进行优化,并将改进后的算法命名为LEACH-II。

4 最佳簇头数目的改进算法

4.1 Leach协议节点的能耗模型

Leach协议采用一阶无线电模型,在无线电的传输过程中,信号能量的衰减与发送端和接收端的距离有关,定义阈值d0,表达式为:。如果距离d<d0,则采用自语空间(fs)模型,如果距离d>d0,则采用多径衰落(MP)模型[3]。因此,在距离发送一条长度l比特消息的电台耗能为:

接收这条消息的耗能为:

   (4)

其中表示电台电子元器件耗能;表示信号放大器的放大倍数

簇头广播一条消息耗能为:;每个簇头的平均耗能为:  ;

簇头消耗的能量为: ; 所以,簇建立阶段每个簇头节点消耗的能量为:                

(5)                        

簇建立阶段每个非簇头节点消耗的能量为:

    (6)

                                      综上所述,簇建立阶段的总能耗为:

 

(7)                                                                                                                     

4.2 稳定阶段的能量消耗

假设在簇头和基站之间距离较远,簇头节点要经过跳才能到达基站,设每跳距离相等,都等于,那么簇头节点的三部分耗能分别为:

接收簇内成员节点的耗能:             (8)                     

若每条数据消息的比特数为l,假定数据完全累积,故累积融合数据的耗能为:                    

(9)

簇头到基站之间采用多跳传输,假设簇头到中继节点的距离为γ,则,将数据发送给中继节点的耗能为:         (10)

所以,数据传输阶段一个簇头节点的总耗能为:

(11)

同理,中继节点将数据传给基站的耗能为:

(12)                             

每个非簇头节点的耗能为:

  (13)

所以稳定阶段的总耗能为:

                                       (14)

4.3 最优簇头数的优化算法

一轮运行过程中,所有节点消耗的总能量为建立阶段和稳定阶段的耗能之和,即  

                     (15)

则节点到簇头的距离的平方的期望值为:

                 (16)

将(16)式的值带入(15)式中,再对K进行求导,令导数等于零,即可得到最佳簇头数目k:

       (17)

上式中均是仿真实验室中固定的参数值,所以最佳簇头个数由网络区域M、传感器节点总数N。

5 仿真与分析

本文使用MATLAB进行仿真分析,分别对LEACH、LEACH-I、LEACH-II进行了仿真,仿真网络含有100个节点,随机分布在100*100的区域内,基站位于(50,175)。图1表明改进后的LEACH-II出现第一个死亡节点的时间明显较晚,所有节点死亡时网络运行的轮数明显较大,改进算法LEACH-II优化了网络性能,有效地延长了网络的生存周期

       图1-剩余节点数与轮数的关系

结束语

 LEACH路由协议中,簇头的产生是随机的,过多或过少的簇头数目造成网络能耗的不均匀,缩短整个网络的寿命,本文针对LEACH存在的这些不足,

提出了新的改进算法,仿真实验结果表明,改进后的算法均衡了网络能耗,有效地延长网络的生存时间。

参考文献

[1] 陈林星.无线传感器网络技术与应用[M].北京:电子工业出版社,2009。

[2]   孙利民,李建中.无线传感器网络[M].北京:清华大学出版社,2005.