百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

无线传感器网络LEACH协议的改进

moboyou 2025-05-22 13:10 11 浏览

摘 要: 针对无线传感器网络典型分簇协议LEACH簇首随机选择和频繁分簇的问题,提出一种基于LEACH的改进协议。簇首的选择分为奇数轮和偶数轮,在奇数轮簇首的选择时,节点生成一个随机数,将此随机数和阈值进行比较,小于阈值的节点成为簇首节点,其中阈值的生成考虑了节点的能量。在偶数轮簇首选择时,每个簇选择上轮中簇内能量最高的节点作为本轮簇首。协议能够有效均衡网络的能量,延长了网络的生命周期。

0 引言

无线传感器网络(Wireless Sensor Network,WSN)是由部署在监测区域内大量的廉价微型传感器节点通过无线通信方式连接形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中感知对象的信息,并发送给观察者[1]。WSN不需要固定的网络支持,具有快速展开、抗毁性强等特点,可广泛应用于军事侦察、环境监测、医疗监护和其他商业领域[1]。

在WSN体系结构中,网络层的路由技术对WSN性能的好坏有重要影响。随着国内外对WSN的研究,许多路由协议被提了出来,从网络拓扑结构可以分为两类:平面路由协议和分簇路由协议。在WSN的实际应用中,由于通信损耗能量与传送的数据量和到达目标的距离平方成正比,因此采用基于分簇的路由协议相对平面路由协议具有更好的适应性和节能性[2]。

本文提出的路由协议是基于最经典的分簇路由协议LEACH(Low Energy Adaptive Clustering Hierarchy)提出的,协议中簇首的选择分为奇数和偶数轮。奇数轮簇首选择中引入节点能量等参数,避免低能量的节点成为簇首。簇首确定后,簇首广播自己为簇首的消息,其他节点根据接收到的信号强度加入不同的簇。在偶数轮簇首的选择时,网络不再大规模地动态生成簇,只是选择上一轮中簇内节点能量最大的节点作为本轮的簇首节点,簇首节点选择后,通过广播通知其簇内节点自己成为簇首节点。通过能量参数的引入使得簇首选择避免了低能量节点成为簇首节点,而且引入奇数和偶数轮降低了簇的生成开销,有效节省了网络的能量,延长了网络的生命周期。

1 LEACH协议

该协议使用自适应成簇和簇首节点轮换技术,周期性地执行任务,每一个周期分为两个阶段,分别是簇的建立阶段和稳定运行阶段,这两个阶段的时间比在协议中是1:19,稳定运行时间要远远长于建簇时间,这可避免分簇过于频繁造成过多的能量损失。在稳定运行阶段,各个非簇首节点将按簇首分给的时隙来发送数据给簇首,簇首收到各个簇成员发来的数据进行综合处理后再发给Sink节点。

LEACH[3]协议选择簇首策略具体如下:在建簇中的簇首选择阶段,每个节点在0~1之间随机选择一个数与阈值T(n)进行大小比较,如果小于阈值,则其将被选中成为新一轮的簇首,并广播自己是簇首的消息。如果节点已经被当选过簇首,则将T(n)置为0,这样将不可能再当选簇首了。阈值T(n)表示为:

其中,n表示传感器节点数,k表示簇头节点数,r为轮数,G为网络生存期的总回合数。

LEACH协议适用于大型的无线传感器网络,与平面路由协议相比,LEACH协议在节能方面有比较突出的表现,但也存在一些问题,比如LEACH算法簇头的选择没有考虑到节点的能量问题,如果一些能量较低的节点成为了簇首节点,那么此节点很快就会将能量耗尽而退出网络,降低了网络的寿命;同时LEACH算法簇的生成过于频繁,按照轮的方式运行,每轮完成后,网络将重新进入簇的生成阶段,簇的频繁生成将会增大网络的能量消耗。

2 LEACH-OE

在研究了LEACH协议存在的一些问题后,本文提出了一种基于奇偶轮选择簇首的协议LEACH-OE(Odd and Even number round of LEACH)。该协议大大降低了成簇的轮数,只有在奇数轮才会进行簇首的随机选择和簇内节点入簇操作,而且簇首选择时,考虑了能量因素,使得能量高的节点成为簇首节点的概率更大,在偶数轮仅仅是选择簇内能量最高的节点作为本轮的簇首节点,之后通知其他簇内节点自己为簇首节点,节省了成簇时的能量消耗。

2.1 模型介绍

(1)网络模型:基站(BS)固定且能量供应充足;各节点同构且具有节点编号;各节点可感知它的剩余能量;各节点可以与基站直接通信;各节点可根据接收者距离调整发射功率[4]。

(2)信道模型:传感器节点发送k bit消息d距离时消耗的能量ETX(k,d):

接收k bit消息消耗的能量ETR(k)是:

ETR(k)=ERXelec(k)=kEelec(3)

在式(2)中,发送与接收节点距离大于临界值d0=

时,使用多路径模型;否则使用自由空间模型。Eelec是发射电路和接收电路消耗的能量,εfs和εamp都是发射放大器所消耗的能量。

2.2 算法思想

(1)基于剩余能量的簇首选举

本协议在簇首的选择和成簇机制上进行了改进,簇首选择时,分为奇数轮和偶数轮。当奇数轮时(r mod 2==1)采用簇首的随机生成,此过程中,不但考虑节点是否当选过簇首节点,还考虑节点的能量因素,降低了低能量节点优先成为簇首节点的概率。由各个传感器节点随机生成一个[0,1]之间的随机数,比较此随机数与阈值F(n)的大小,如果小于F(n)则成为簇首节点,然后广播自己成为簇首节点的信息,而其他节点根据接收到的信息的强度自主加入相应的簇。阈值F(n)表示如下:

当偶数轮(r mod 2==0)时,根据各个簇内节点的能量信息,由上轮簇首节点决定本轮簇首节点的选择,上轮簇首根据簇内节点能量Ecur(i)的大小将簇内节点进行排序,然后簇首将能量最大节点的编号ID向簇内进行广播,簇内各个节点根据接收到的信息和自己节点ID进行比较,当节点ID与接收到的信息中的节点ID相同时,该节点广播自己成为本轮簇首节点的信息,各个簇仅仅是改变了簇首而簇内节点不发生变化。图1是簇首选择流程图。

(2)数据发送阶段

在簇首选择成功后,簇首根据成员节点数目创建TDMA时间表,并告知成员节点发送数据的时隙,成员节点只有在所分配的时隙内发送数据,其余时间则处于休眠状态以节约能量,成员节点发送的数据在簇首处融合并最终由簇首发送至基站。在数据的传送中为了防止簇与簇之间的通信干扰,每个簇都使用一个特殊的代码,簇头到基站的数据发送采用载波检测多址接入技术(CSMA)。当簇头有数据发送时,先检测信道是否空闲,当信道有数据传送时节点等待,直到信道空闲一段时间后再进行数据的发送。

(3)能耗分析

在M×M的区域部署N个无线传感器节点,分为k个簇,每个簇中有N/K个节点(一个簇首节点,其余为非簇首节点),传感器节点发送l bit数据,簇首在一轮中消耗的能量为:

从以上可知,传感器网络中,网络的能耗主要是簇传输数据能量消耗和成簇的能量消耗。在已知网络中,节点数N、发送和接收电路的能耗Eelec、功率放大系数εamp和εfs、数据融合能耗EDA都是一定的,而簇数k、簇首节点到基站的距离dtoBS、簇内成员到簇首的距离dtoCH是不确定的,但是在本文讨论的网络中因为都是随机的,假设其差别不大。现在能量消耗的节省主要从成簇方面进行考虑,Etotal是一定的,因为引入奇数、偶数轮成簇机制,每两轮才产生一轮成簇的能量消耗,很显然延长了总的网络寿命,同时,在簇首的选择时,只有那些剩余能量较高的节点优先选为簇首节点,可以有效均衡网络能耗,进一步延长网络寿命。

3 仿真结果及其分析

3.1 仿真环境

为了验证本文算法的性能,在MATLAB平台上进行仿真比较。100个无线传感器节点随机分布在100 m×100 m的区域内,根据参考文献[5]的分析,LEACH算法每轮最佳簇首个数

,约为节点总数的5%,仿真中选择k为5,仿真参数如表1所示。

3.2 LEACH和LEACH-OE性能的比较

在MATLAB环境下仿真LEACH-OE与LEACH协议,两种协议运行5 000轮后生存和死亡节点的分布如图2所示。LEACH协议在1 127轮开始有节点死亡,而LEACH-OE在1 435轮开始有节点死亡,这是因为在簇首选择时LEACH-OE考虑了能量因素。而节点完全死亡LEACH-OE达到了2 782轮,远远大于LEACH的2 237轮,轮数提高了24.5%左右。因为LEACH-OE协议引入了奇数轮成簇机制,更节省网络的整体能量,延缓节点死亡的时间,从而使网络生命周期得到延长。

两种协议能量的消耗如图3所示,比较可知在运行同等轮数的情况下,LEACH-OE能量的消耗明显比LEACH要小,在运行轮数为1 000的情况下,LEACH-OE比LEACH能量消耗要少21%左右,如图可知,最终网络中节点全部死亡的时候网络总的能量消耗是相等的,运行的时间越长,网络更有优势。

4 结论

为提高网络的生存时间,平衡节点的能量消耗,本文提出了一种基于能量和奇偶轮的分簇式无线传感器网络路由协议(LEACH-OE),在奇数轮成簇的过程中,簇首的选择考虑到节点的能量因素,选择能量更高的节点作为簇首,在偶数轮直接选择能量最高节点作为簇首节点。通过MATLAB仿真实验,对LEACH和LEACH-OE在能量消耗、运行轮数方面进行比较。结果表明,LEACH-OE协议在负载均衡和能量消耗方面有很大的改善,可以有效地延长网络生存时间。

参考文献

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

[2] AKYKLDIZ I F. Wireless sensor networks: a survey[J]. Computer Network, 2002,38(4):393-422.

[3] HEINZELMAN W, CHANDRAKASAN A, BALAKRISHNAN H. An application-specific protocol architecture for wireless microsensor networks[J]. IEEE Transaction on Wireless Communications,2002,1(4):660-670.

[4] BANDYOPADHYAY S, COYLE E J. Minimizing communication costs in hierarchically clustered networks of wireless sensors[J]. Wireless Communications and Networking,2003(2):1274-1279.

[5] 张辉,许峰.WSN中基于权值的Leach协议的研究与改进[J].微计算机信息,2010,26(8):199-201.

相关推荐

NASA研发飞机机身机器人自动检测系统

NASA近期对外公布,在“NASA先进复合材料项目”的支持下,正在研发飞机机身机器人自动检测系统。先进复合材料项目的目标是通过改进相关方法、工具和协议,将飞机复合材料构件的开发和认证时间缩短30%。此...

是什么使牛顿定律成立?这里有一个简单的方法.

牛顿定律何以成立?答案在这里。物理定律确定了行星的运行轨道。(图片来源:MarkGarlick/SciencePhotoLibraryviaGettyImages)保罗M·萨特是天体物理...

卡塔兰数列(应用场景、反射定理、生成函数和通项公式)

卡塔兰(EugèneCatalan)在19世纪中叶系统研究卡塔兰数列,使其得名,但未涉及现代生成函数工具。递归分治结构:每个复杂问题可拆解为两个独立子问题(如左子树/右子树、括号内/括号外),子问题...

Python数据分析(五)Pandas数据预处理

合并数据在实际工作中,我们的数据源往往是来自多个地方(比如分散在不同的表里),具体分析的时候需要把相关联的数据信息整合在一张表里,可能会有如下操作:横向或纵向堆叠合并数据主键合并数据重叠合并数据...

轴荷为什么要乘以0.98

对于才进门的小白授权签字人,最大的疑问莫过于计算制动率时,轴荷为什么要乘以0.98,那是因为制动力的单位为牛顿(N),轴荷的单位为千克(Kg)。牛顿(N)和千克(kg)是不同物理量的单位,它们之间的换...

碾压牛顿力学,拉格朗日力学到底有多强大? #前沿知识

这个看似很简单的双摆模型实际上一点都不简单。如果你没学过拉格朗日力学,只用牛顿力学分析,那你写满三页纸都算不出两个摇摆小球的受力情况。因为牛顿力学更适用于简单的受力分析,比如单摆运动以及自由落体运动。...

机房精密空调基础知识

空调与制冷常用术语:摄氏温标:在标准大气压下,把水的冰点作为O度,沸点作为100度,在O度与100度之间分成100格,每格为1度,以符号℃表示。华氏温标:在标准大气压下,把水的冰点定为32度,而沸点定...

深度学习风管设计(经典课件)

风管系统的构成风管的分类风管称呼及压力范围根据压力分类的风管称呼压力范围流速范围[m/s]常用压力[Pa]{mmAq}限制压力[Pa]{mmAq}低压风管+490{+50}以下-490{-50}以下+...

屁有颜色吗?真的有“彩虹屁”吗?|No.143

小朋友们总是会问起充满想象力的问题这些问题老师不教爸妈不会不问憋得慌比如下面这个问题屁有没有颜色啊?1Q冬天的手机为什么更费电?by秦智琛A首先,我们来解析一下题目:冬天的手机真的会更费电吗?其实不...

整理一份详细的数据预处理方法

数据预处理的主要步骤分为:数据清理、数据集成、数据规约和数据变换。本文将从这四个方面详细的介绍具体的方法。如果在一个项目中,你在这几个方面的数据处理做的都很不错,对于之后的建模具有极大的帮助,并且能快...

动画必备神器:AE牛顿动力学插件汉化版+独家教程。免费领取

动画必备神器:AE牛顿动力学插件汉化版+独家教程。免费领取!今天花荞为伙伴们分享的是动画必备神器:AE牛顿动力学插件汉化版+独家教程,有需要的伙伴可免费领取。(领取方式见文末)牛顿是一款2D动力学插件...

从郭守敬招差术 看 牛顿插值与泰勒公式的原理

郭守敬累裁招差术既是通过已知数据2,9,24,50,90,147,224,324,450,605,求这些数据的原函数y=ax+bx^2+cx^3。求解三次方程中的系数a,b,c。累裁来自于唐朝的一行...

牛顿插值公式的三种表达方式

1、系数用向前差分公式表示;2、区间n等分:x=x0+th(t=0,1,2,……,n;h为步长);3、系数用差商公式表示,分别为零阶、一阶、二阶……n阶差商。...

牛顿插值表达式如何记住

从上图可以看出,随着点数的增加,拉格朗日插值中的Li(x)在计算机程序中需要重新计算。为了解决这个矛盾,提出了牛顿插值法,还是先考虑两个点:上述过程显而易见,再考虑三个点上述过程也不存在困难,而那些待...

三个免费物联网平台推荐

物联网平台是指通过云计算、大数据分析、物联网通信技术等手段,将各种设备、传感器等智能化产品互联互通,实现设备之间的数据共享和交互。随着物联网技术的不断发展和普及,越来越多的人开始关注物联网平台。在众多...