微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 一种基于LEACH的改进型无线传感器网络路由算法

一种基于LEACH的改进型无线传感器网络路由算法

时间:04-29 来源:互联网 点击:

2 基于距离能量选择的两层LEACH算法DE―LEACH
DE―LEACH算法与LEACH算法一样,分为簇建立阶段与稳定运行阶段。
在簇建立阶段,首先,各节点仍然利用自身产生的随机数自主决定是否成为簇头并通知网络中所有节点,在此不再赘述。不同之处在于,选出的簇头节点将自己的剩余能量和到基站的距离加入到广播数据包中进行广播。之后,在已选出的第一层簇头中根据其剩余能量和到基站的距离关系参数Th选出第二层簇头。
Th定义为:


其中i是网络中节点编号,En(i)是i节点剩余能量,Dist(i)是i节点到基站的距离。
具体的选举第二层簇头的策略为:簇头j将自己的Th(i)值与接收、计算出到的其他簇头Th值进行比较,若自己最大,则成为第二层簇头;若比较中发现簇头i节点的Th(i)值最大,则认为i是第二层簇头。这里需要注意的是:
(1)第二层簇头同时也完成第一层簇头的广播、分配时隙、采集数据和融合的工作;
(2)各个簇头节点在计算Th值并比较过后,已经能够确认哪个第一层簇头节点同时承担第二层簇头节点职能,因此第二层簇头节点不需要再就自己身份进行广播;又由于各簇头节点已经收到其他簇头节点编号,可按编号顺序进行数据传递,因此第二层簇头节点不需要为第一层簇头节点分配时隙而进行广播;这样就省去了广播开销;
(3)各个普通节点无需知道谁是第二层簇头,他们只与第一层簇头通信,而第二层簇头同时也承担第一层簇头的功能。
在稳定运行阶段,普通节点与第一层簇头通信方式与LEACH相同。但数据采集、融合工作完成之后不是将数据包直接发送到基站,而是依据簇头节点编号顺序分时隙由第一层簇头发送到第二层簇头节点。再由第二层簇头节点进行二次融合后,发送至基站。
LEACH算法假设基站离监控区域较远,若第一层簇头节点均与基站直接通信,则通信能量消耗较大,且易造成网络中各节点剩余能量差距较大的情况,使首末节点死亡时间间隔较长,产生监控盲点。而DE―LEACH算法能够有效推迟首节点死亡时间,缩小首末节点死亡时间间隔,使监控盲点出现时间明显缩短。这样,在所有节点集中死亡后再进行抛撒,无疑在经济上和控制上都将更加高效。
另外,考虑到传感器节点所采集的数据在较短时间内具有相关性,可以采用事件驱动的方式进一步延长网络生存期。下面将对DE―LEACH与LEACH进行性能上的比较,并仿真分析了加人事件驱动因素后DE―LEACH的生存期改善程度。

3 仿真分析
3.1 DE―LEACH与LEACH性能比较
利用Matlab工具对LEACH算法和DE―LEACH算法进行仿真比较,主要比较:
(1)存活节点数随轮次变化曲线;
(2)数据采集总比特数(二次融合前)随轮次变化曲线。
仿真中,假设无线传感器网络由100个相同的无线传感器节点组成,随机抛撒在100 m×100 m的区域内,远程基站位于坐标点(x=0,y=一100)。每个节点初始能量为O.5 J,发送和接收电路损耗为Elec=50 nJ/b,数据融合消耗为Eda=5 nJ/b。放大系数为Efs=10 pJ/b/m2(dd0),Emp=O.001 3 pJ/b/m4(d>d0),其中数据包长度为2 000 b,广播包长度
为200 b,总带宽为1 MHz。为简化仿真复杂度,监测区域内通信按自由空间模型取Efs=10 pJ/b/m2,而簇头节点与基站通信由于距离较远(>100 m),按多径传播模型取Emp=O.001 3 pJ/b/m4。
根据第二层簇头对收到的第一层簇头数据进行二次融合的融合率不同,这里分完全不融合、50%融合、完全融合分别进行了仿真比较。
完全不融合,即将第一层簇头发送来的数据包不加处理地组成一个长数据包发送到基站,这时第二层簇头相当于只是完成了数据接收和转发的功能。仿真发现,即使在完全不融合的情况下,DE―LEACH的首节点死亡时间也要比LEACH晚30%,50%节点死亡时间晚15%(如图1)。数据采集总比特数DE―LEACH比LEACH高出12%(如图2)。虽然末节点死亡时间早于LEACH,但网络中存活期非常集中,网络出现大面积监控盲区的时间短,若要保证数据采集的持续性和完整性,对监控区域重新部署节点将比LEACH算法更经济有效。

50%融合,即将第一层簇头发送来的数据包压缩一半之后发送到基站。各个第一层簇头发送的数据包中仍然含有第一层簇头数据包的包头等基站不需要的冗余信息,可以进行进一步融合。仿真发现,进行50%融合后,DE―LEACH的首节点死亡时间比LEACH晚40%,50%节点死亡时间晚25%(如图3)。数据采集总比特数DE―LEACH比LEACH高出22%(如图4)。

完全融合,即将第一层簇头发送来的数据包压缩成一个2 000 b的数据包发送到基站。由于融合率较大,不仅要用到数据级融合,特征级融合,还要用到决策级融合。即最后传输

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top