CN104093196A - 一种基于能耗的leach轮换时间动态优化方法 - Google Patents

一种基于能耗的leach轮换时间动态优化方法 Download PDF

Info

Publication number
CN104093196A
CN104093196A CN201410320567.7A CN201410320567A CN104093196A CN 104093196 A CN104093196 A CN 104093196A CN 201410320567 A CN201410320567 A CN 201410320567A CN 104093196 A CN104093196 A CN 104093196A
Authority
CN
China
Prior art keywords
bunch
round
centerdot
node
elec
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410320567.7A
Other languages
English (en)
Other versions
CN104093196B (zh
Inventor
礼欣
李遵光
张鸿雁
樊秀梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201410320567.7A priority Critical patent/CN104093196B/zh
Publication of CN104093196A publication Critical patent/CN104093196A/zh
Application granted granted Critical
Publication of CN104093196B publication Critical patent/CN104093196B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及一种基于能耗的LEACH轮换时间动态优化方法,属于无线传感器网络技术领域。该方法包括如下步骤:首先计算LEACH协议中节点每轮能量消耗,然后根据每轮的能量消耗计算每轮持续时间,最后基于每轮能量消耗均衡原则动态调整各簇每轮的持续时间。LEACH协议中应用本发明提出的基于能耗的LEACH轮换时间动态优化方法,可以有效优化选簇周期、平衡节点间能量消耗、延长网络生存周期。

Description

一种基于能耗的LEACH轮换时间动态优化方法
技术领域
本发明涉及一种基于能耗的Leach轮换时间的动态优化方法,属于无线传感器网络技术领域。 
背景技术
延长网络的生命周期是一个无线传感网络中重要的问题。很多学者也提出了很多高效节能的协议来延长无线传感网络的生命周期。目前,通过网络分簇来实现能量的均衡以此实现延长网络生命周期是研究的热点方向。LEACH算法是由Heinzelman等人提出的最流行的基于分簇的高效节能的通信协议,协议通过对节点进行分簇并将能量均衡负载到各个簇中来降低网络中总能量的消耗。为了确保能量的均衡消耗,LEACH周期性的在所有节点中随机选择节点来充当簇头。LEACH协议是以“轮”来实现的。每一轮包括:建立阶段和稳定运行阶段。建立阶段要完成簇头节点的选择、簇头节点的广播、非簇头节点的加入的簇形成过程以及簇头节点为簇内成员分配TDMA时隙的TDMA调度过程;在稳定运行阶段,簇头接受来自其成员的消息并将聚合后的数据发送到基站。然而,LEACH的许多参数可以影响协议的性能,这些参数都有待优化,如,阀值,簇的数目等等。因此,许多学者都致力于优化LEACH的参数来提高LEACH的性能。尽管很多人对LEACH做了不同的优化,但是LEACH每一轮持续的时间 却很少有人研究。每一轮持续时间的长短对于网络的整个性能是很关键的。如果时间太长,那么簇头就长时间的处于活跃状态,簇头节点的能量就会很快的消耗完毕;如果时间太短,簇头的选择过于频繁导致过多的能量浪费在簇建立阶段,因为这一阶段是不会发送数据的。 
发明内容
本发明的目的是为了克服已有技术存在的缺陷,提出了一种基于能耗的Leach轮换时间动态优化方法。 
本发明的思想是根据簇内节点数量和能量消耗的不同,动态的调整每轮的持续时间,以此来优化LEACH的选簇周期、平衡节点间的能量消耗、延长网络的生存周期。 
本发明的目的是通过以下技术方案实现的: 
一种基于能耗的LEACH轮换时间动态优化方法,包括以下步骤: 
步骤一、计算LEACH协议中节点每轮能量消耗,包括以下内容: 
第1.1步:根据下式计算每轮中簇头结点的能量消耗: 
E i _ CH / frame = l E elec ( n i - 1 ) + l E DA n i + l E elec + l ϵ amp d i _ toBS 4 = l E elec n i + l E DA n i + l ϵ amp d i _ toBS 4 ; - - - ( 1 )
Ei_CH/round=Ei_CH/frame×Nframes/round;  (2) 
其中Ei_CH/frame表示簇头节点的每帧的能量消耗,Ei_CH/round表示簇头节点每轮的能量消耗,ni表示簇i包含的节点数量,l表示每个信息包中所含的比特数,Eelec表示传播一比特数据所消耗能量,EDA表示聚合一比特数据所需能量,di_toBS代表簇头节点i到基站的距离,εamp表示当d≥d0时射频放大器传输1bit单位平方米的平方所耗的能量,d0 为预先假定的阀值距离,Nframes/round表示每轮传输数据帧的数量; 
第1.2步:根据下式计算每轮中非簇头结点的能量消耗: 
E k _ non - CH / frame = l E elec + l ϵ fs d k _ toCH 2 ; - - - ( 3 )
Ek_non-CH/round=Ek_non-CH/frame×Nframes/round;  (4) 
其中Ek_non-CH/frame表示簇内成员节点的每帧的能量消耗,dk_toCH代表簇内成员节点k到簇头结点的距离,εfs表示当d<d0时发射放大器传输1bit单位平方米所耗的能量,Ek_non-CH/round表示簇内成员节点每轮的能量消耗; 
步骤二、计算LEACH协议每轮持续时间,包括以下内容: 
第2.1步:根据下式计算每轮中簇i消耗的总能量: 
E i _ total = E i _ CH / round + Σ k = 1 n i - 1 E k _ non - CH / round = N frames / round × [ ( l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 ) + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) ] ; - - - ( 5 )
其中,Ei_total表示簇i每轮的能量消耗; 
第2.2步:根据下式计算每轮中簇i传输的数据量: 
N frames / round = E i _ total / [ ( l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 ) + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) ] ; - - - ( 6 )
第2.3步:根据下式计算每一轮的持续时间: 
t i _ round = l r b · n i · E i _ total l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) ; - - - ( 7 )
其中rb为比特率; 
步骤三、动态调整各簇每轮的持续时间,包括以下内容: 
第3.1步:进一步计算簇i在一轮中的能量消耗: 
由式(7)的簇i每轮的能量消耗为: 
E i _ total = [ E elec · n i + E DA · n i + ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( E elec + ϵ fs d k _ toCH 2 ) ] · r b · t i _ round n i ; - - - ( 8 )
第3.2步:动态调整各簇的每轮持续时间,包括一下内容: 
在当前轮各簇中找出簇内节点数最多、剩余能量最大的作为最大簇,记为簇j,簇j的每轮持续时间tj_round按照式(10)调整,其它簇的时间按照式(11)调整: 
tj_round=tround(Enj_current/Enj_init);  (10) 
t i _ round = E elec · n j + E DA · n j + ϵ amp d j _ toBS 4 + Σ k = 1 n j - 1 ( E elec + ϵ fs d k _ toCH 2 ) E elec · n i + E DA · n i + ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( E elec + ϵ fs d k _ toCH 2 ) · ( E ni _ current E ni _ init ) · ( n i n j ) 2 · t j _ round ; - - - ( 11 )
将tj_round设定为每个节点的选簇周期,非最大簇在其规定的每轮 持续时间ti_round内进行数据传输,在规定的时间内传输完毕后,休眠tj_round-ti_round时间以节省节点能量,然后与最大簇节点一起进入下一轮过程。 
有益效果 
对比传统的LEACH协议,依据本发明提供的簇轮换时间动态调整方法,可以有效地均衡网内节点的能量消耗,延长网络生存周期以及基站接收信息包的数量;此外,该方法适用于目前提出的轮时间固定的所有基本LEACH协议及其改进协议,适用范围广泛。 
附图说明
图1为LEACH协议拓扑结构图。 
图2为本发明方法的流程图。 
图3为50、100、200个节点的场景中,不同轮换时间的情况下生存周期的比较图。 
图4为在不同轮换时间下,100个节点场景的节点生存时间的对比图。 
图5为在不同轮换时间下,100个节点场景的能量消耗速率的对比图。 
图6为在不同轮换时间下,100个节点场景的基站接收数据量的对比图。 
图7为轮换时间为20s时,改进前后的LEACH算法在网络生存 周期上的对比图。 
图8为轮换时间为20s时,改进前后的LEACH算法在节点生存时间上的对比图。 
图9为轮换时间为20s时,改进前后的LEACH算法在节点平均能量消耗上的对比图。 
图10为轮换时间为20s时,改进前后的LEACH算法在基站接收数据量上的对比图。 
图11为轮换时间为20s时,改进前后的LEACH算法在第一个节点死亡时间和一半节点死亡时间上的对比图。 
具体实施方式
下面结合附图和实施例对本发明做进一步说明。 
本发明的LEACH协议拓扑图如图1所示,各簇头节点与基站相互通信,各簇内节点与本簇内簇头节点相互通信。下面介绍本发明方法的原理、实施过程以及评估结果。 
本发明方法的流程图如图2所示,原理如下: 
步骤一、计算LEACH协议中节点每轮能量消耗: 
其操作步骤包括第1.1和1.2步,具体为: 
第1.1步:计算每轮中,簇头结点的能量消耗: 
由于基站离传感区域很远,我们认为这个距离远远大于能量传播消耗的临界距离,因此能量的消耗遵循多路消耗模型。簇头节点的能量消耗主要用于接收成员节点发送的数据以及将聚合后的数据发送给基站,所以簇头节点能量的消耗如下式所示: 
E i _ CH / frame = l E elec ( n i - 1 ) + l E DA n i + l E elec + l ϵ amp d i _ toBS 4 = l E elec n i + l E DA n i + l ϵ amp d i _ toBS 4 - - - ( 1 )
Ei_CH/round=Ei_CH/frame×Nframes/round  (2) 
其中Ei_CH/frame表示簇头节点的每帧的能量消耗,Ei_CH/round表示簇头节点每轮的能量消耗,ni表示簇i包含的节点数量,l表示每个信息包中所含的比特数,Eelec表示传播一比特数据所消耗能量,EDA表示聚合一比特数据所需能量,di_toBS代表簇头节点i到基站的距离,εamp表示当d≥d0时射频放大器传输1bit单位平方米的平方所耗的能量,d0为预先假定的阀值距离,Nframes/round表示每轮传输数据帧的数量。 
第1.2步:计算每轮中,非簇头结点的能量消耗: 
簇内成员节点只是负责将数据传递给相应的簇头结点。我们认为簇内成员节点与相应的簇头结点之间的距离相对较短,则能量的消耗遵循Friss free-space模型。所以簇内成员节点能量的消耗如下式所示: 
E k _ non - CH / frame = l E elec + l ϵ fs d k _ toCH 2 - - - ( 3 )
Ek_non-CH/round=Ek_non-CH/frame×Nframes/round  (4) 
其中Ek_non-CH/frame表示簇内成员节点的每帧的能量消耗,dk_toCH代表簇内成员节点k到簇头结点的距离,εfs表示当d<d0时发射放大器传输1bit单位平方米所耗的能量,Ek_non-CH/round表示簇内成员节点每轮的能量消耗。 
步骤二、计算LEACH协议每轮持续时间: 
在步骤一操作的基础上,进一步计算LEACH协议每轮持续时间, 其操作步骤包括第2.1步至第2.3步,具体为: 
第2.1步:计算每轮中簇i消耗的总能量: 
在得出簇头节点和簇内成员节点每轮的能量消耗后,我们可以得出在一个轮换周期中簇i消耗的总能量: 
E i _ total = E i _ CH / round + Σ k = 1 n i - 1 E k _ non - CH / round = N frames / round × [ ( l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 ) + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) ] - - - ( 5 )
其中,Ei_total表示簇i每轮的能量消耗。 
第2.2步:计算每轮中簇i传输的数据量: 
由式(5)可得,在一个轮换周期内,簇i传输的数据量为: 
N frames / round = E i _ total / [ ( l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 ) + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) ] - - - ( 6 )
第2.3步:计算每一轮的持续时间: 
假设rb为比特率,这是在算法开始前就设置好的参数,则在所分配的一个时隙内,节点传输l比特的数据耗时为则一个含有ni个节点的簇传输一帧数据要消耗的时间为则簇i工作一个周期的时间: 
t i _ round = t frame · N frames / round = l r b · n i · E i _ total l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) - - - ( 7 )
步骤三、动态调整各簇每轮的持续时间: 
在步骤二的基础上,各簇根据能量消耗和簇内节点数量的不同,动态调整每轮持续时间,其操作步骤包括第3.1和3.2步,具体为: 
第3.1步:进一步计算簇i在一轮中的能量消耗: 
由式(7)可知,簇i每轮的能量消耗为: 
E i _ total = [ E elec · n i + E DA · n i + ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( E elec + ϵ fs d k _ toCH 2 ) ] · r b · t i _ round n i - - - ( 8 )
为了均衡各簇之间的能量消耗,需要根据节点数量动态的调整各簇的每轮持续时间。 
第3.2步:动态调整各簇的每轮持续时间: 
令当前轮各簇的节点数目为集合{n1,n2,...,nk},其中i=1,2,…,k,k为当前轮的簇头数。假设簇j为最大簇,其所含节点数为nj=max{n1,n2,...,nk},如果有多个簇的节点数均为nj,则选择簇内剩余能量最大的作为最大簇。最大簇的初始轮时间设置为tround,这是所有簇参照的基准时间。簇i包含节点个数为ni,它的轮时间为ti_round,为使节点能量消耗均衡,故令簇内成员节点的平均能耗相等,有下式: 
E i _ total n i = E j _ total n j ⇒ n j n i = E j _ total E i _ total - - - ( 9 )
将式(8)带入到式(9)中,可根据基准时间tround得出第i簇的每轮时间为ti_round,考虑到网络中各簇的每轮持续时间应随着各簇的剩余能量减少而减少,因此,最大簇j的每轮持续时间tj_round按照式(10)调整,相似的,其他簇的轮时间ti_round按照式(11)调整: 
tj_round=tround(Enj_current/Enj_init)  (10) 
t i _ round = E elec · n j + E DA · n j + ϵ amp d j _ toBS 4 + Σ k = 1 n j - 1 ( E elec + ϵ fs d k _ toCH 2 ) E elec · n i + E DA · n i + ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( E elec + ϵ fs d k _ toCH 2 ) · ( E ni _ current E ni _ init ) · ( n i n j ) 2 · t j _ round - - - ( 11 )
由上式可知,不同的簇的每轮持续时间都是随簇内节点的数量和剩余能量的不同而变化的,这么做可以在一轮中使网络中的节点能量消耗的比较均匀。但是LEACH协议要求每个节点的选簇周期一致,因此我们选择最大簇j的轮时间tj_round为每个节点的选簇周期,其余的簇在其规定的每轮持续时间ti_round内进行数据传输,在规定的时间内传输完毕后,会休眠tj_round-ti_round时间,以节省节点能量,直到被唤醒进行下一轮的选簇。 
本发明方法的实施过程如下: 
步骤一、修改原有LEACH协议代码: 
如图2所示,对原LEACH协议作出改进。改进以后,我们可以在网络模拟平台NS2上对改进的LEACH算法进行仿真实验。 
改进后的LEACH路由协议在一轮中的工作流程为: 
1.算法开始前,设置初始的轮时间为tround; 
2.每个节点随机选择0-1之间的一个值,如果选定的值小于某一个阀值,那么这个节点成为簇头节点;选定簇头节点后,通过广播告知整个网络;网络中的其他节点根据接收信息的信号强度决定从属的簇,并向其发送加入信息,此信息包含节点ID、节点位置和节点剩余能量; 
3.簇头节点向基站报告簇内所有成员节点的剩余总能量和节点数信息; 
4.基站根据收集到的所有簇信息,按照节点数和剩余总能量由大到小对簇排序,并将排在首位的簇选为最大簇,记最大簇的簇号为j; 
5.基站根据最大簇的剩余总能量使用下式动态调整最大簇的本轮持续时间: 
tj_round=tround(Ej_current/Ej_init
其中,tround为基准轮时间,tj_round为簇j在本轮的持续时间,Ej_current为簇j的剩余总能量,Ej_init为簇j的初始总能量; 
使用下式动态调整其它簇在本轮的数据传输时间: 
t i _ round = E elec · n j + E DA · n j + ϵ amp d j _ toBS 4 + Σ k = 1 n j - 1 ( E elec + ϵ fs d k _ toCH 2 ) E elec · n i + E DA · n i + ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( E elec + ϵ fs d k _ toCH 2 ) · ( E ni _ current E ni _ init ) · ( n i n j ) 2 · t j _ round
其中,ti_round为簇i在本轮的数据传输时间,tj_round为簇j在本轮的持 续时间,Ei_current为簇i的剩余总能量,Ei_init为簇i的初始总能量,ni为簇i包含的节点数,nj为簇j包含的节点数,Eelec表示传播一比特数据所消耗的能量,EDA表示聚合一比特数据所需能量,di_toBS代表簇i的簇头节点到基站的距离,dk_toCH代表簇内成员节点k到簇头结点的距离,εamp表示当d≥d0时射频放大器传输1bit单位平方米的平方所耗的能量,d0为预先假定的阀值距离,εfs表示当d<d0时射频放大器传输1bit单位平方米所耗的能量; 
6.基站将ti_round和tj_round发回各簇的簇头节点; 
7.最大簇的簇头节点在tj_round时间内进行TDMA调度,为簇内各成员节点分配数据传输时隙;其它簇的簇头节点在ti_round时间内进行TDMA调度,为簇内各成员节点分配数据传输时隙; 
8.各簇内成员节点在簇头节点为其分配的时隙内向簇头传输数据,簇头节点对接收到的数据进行数据融合后再将信息传送给基站; 
9.各簇i在经过ti_round时间后,休眠tj_round-ti_round时间后被唤醒;此后全网进入新一轮的簇建立和稳定运行阶段,转到步骤2重新开始,直到全网的剩余节点个数小于既定值k。 
步骤二、设置相应的实验参数: 
本发明试验场景为:在100×100m的范围内,随机分布50、100或200个节点,基站位于(50,175)的位置。基站的初始能量是无限的,普通节点的初始能量为2mJ,并且后续不能供应。无线电接收数据消耗能量Eelec设置为50nJ/bit,数据融合所需计算能量设置为5nJ/bit, 簇头比例N/k为5%,数据包大小l为4000bits,比特率Rb为1Mbps,射频放大器的能量εamp和εfs分别为0.0013pJ/bit/m4和10pJ/bit/m2。 
步骤三、运行协议,分析其性能: 
参照图3,得出不同轮换时间下LEACH改进算法的网络生命周期。从图中可以看出,在相同的网络配置的情况下,节点的数量不同,网络生命周期的峰值出现的位置就不同,并且节点少的峰值出现的早,节点多的峰值出现的晚。这是因为随着节点数量的增多,产生含簇内节点多的簇的概率就会增大,按照本文提出的动态调整每轮持续时间的算法,应该适当增加初始建簇时间,以实现节点能量消耗均匀。从图中可以看出,峰值分别出现在16s、20s和26s。 
参照图4,得出不同初始轮换时间的情况下,网络中节点的生存情况。可以看出,在初始建簇时间设置为20s时,节点死亡速度最慢,从图中也可以看出,即使初始建簇时间有所改变,但是第一个死亡节点的出现时间相差不是很大,这是因为,采用动态轮时间的LEACH协议会根据节点的剩余和消耗的能量来动态调整每轮持续时间,在经过若干轮后,轮时间会调整到当前能量环境下比较合适的水平,这会均衡节点的能量消耗,延后了第一个死亡节点的产生时间。 
参照图5,得出100个节点网络能量消耗的情况,从图中可以看出,当初始建簇时间设置为20s时,能量消耗的最慢。而且还能看出当网络能量非常低的时候,网络还能继续运行较长一段时间,这是因为采取了动态改变每轮时间的方法,当能量减少到一定程度,每轮的持续时间已经减少了很多,这就导致节点能量会减少缓慢,因此在网 络能量消耗殆尽的时候,还能运行较长一段时间。 
参照图6,得出在不同初始建簇时间的情况下,基站接收到的数据包数量的比较,从图中可以看出,在初始建簇时间为20s时基站接收到的数据包数量最多。如果每轮持续时间设置的过长,簇头结点能量消耗过快而死亡,那么簇头节点处,聚合的数据就会变少,从而基站收到的数据就会变少。如果每轮持续时间过短,那么会有过多的能量浪费在选簇阶段,而这一阶段中,节点根本不会发送数据,从而导致基站收到数据减少。 
步骤四、比较分析改进前后的LEACH算法的性能: 
从原LEACH协议的仿真结果中可以发现,在100个节点的场景中,原LEACH协议在初始轮换时间为20s时,网络生存周期最长。因此有必要对两者在促使轮换时间为20s时,做一下性能对比分析。为了方便进行对比,我们把优化前的算法称作S-LEACH(Static LEACH)算法,优化后的算法称作D-LEACH(Dynamic LEACH)我们主要是对节点的生命周期、节点的能量消耗、基站接收的数据量、第一个节点和一半节点的死亡时间等进行分析。 
参照图7,S-LEACH和D-LEACH在网络生命周期上的对比图,可以看出,D-LEACH算法在所设置的各种初始建簇时间下,网络生命周期都比S-LEACH算法有较大的改进,并且在100个节点的情况下,两者的峰值都出现在建簇时间为20s的时候。 
参照图8,S-LEACH和D-LEACH在节点死亡速率上的比较图,可以看出,D-LEACH的生命周期要比S-LEACH长40%左右,而且 在出现第一个节点死亡的时候,S-LEACH在大概200轮后网络完全死亡,但是D-LEACH却用了250轮,这是因为D-LEACH的每轮持续时间是随着簇内剩余能量和簇内节点个数动态调整的,随着节点的不断死亡,簇内节点的个数会相对减少,每轮的持续时间也会相对下降,这样就可以让节点的能量减少的相对较慢,因此在出现节点死亡的时候D-LEACH还能比S-LEACH多持续一段时间。 
参照图9,S-LEACH和D-LEACH在平均能量消耗上的对比图,可以发现,D-LEACH的能量消耗比S-LEACH要慢,S-LEACH的斜率在整个网络生存周期中基本上不变,但是D-LEACH在510s前斜率是不断降低的,这是由于随着节点的能量消耗,每轮持续时间有所下降,这必然会降低能量消耗,但是在510s到600s之间,D-LEACH的能量消耗突然加快,这是因为,D-LEACH在510s时,第一个节点死亡,而D-LEACH的阀值选取公式是基于剩余能量的,随着时间的推进,节点剩余能量会比较低,造成节点的阀值比较小,节点被选为簇头的概率就比较小,在没有节点死亡的时候,这个后果还不是很明显,但是当有节点死亡的时候,能被选为簇头节点的数量就更少,当一个网络中没有节点当选簇头,或者节点没有加入到任何簇中,节点都会直接向基站发送信息,这个过程会消耗大量的能量。因此会造成能量消耗增加的比较快。而在600s的时候,节点的能量消耗会慢下来,这是因为,节点的平均剩余能量比较低,导致每轮的持续时间很短,节点每轮消耗的能量就很少,因此还能持续较长一段时间。 
参照图10,S-LEACH和D-LEACH在基站接收到的数据量方面 的比较图,由图中可知,D-LEACH接收到的数据量和S-LEACH相比基本持平,但是数据量的增长率要小一些,这是因为,D-LEACH为了让节点能量均衡消耗,含节点少的簇的每轮持续时间就会少一些,发送的数据量就会相应减少,这会导致整个网络每轮发送的数据总量比S-LEACH要少,并且随着时间的推移,D-LEACH的斜率慢慢降低,到大约640s时,数据量不再增长,虽然网络还在继续运行,但是没有起到应有的作用,因此我们可以认为在当前情况下,D-LEACH的生命周期为640s。 
参照图11,S-LEACH和D-LEACH在第一个节点死亡时间和一半节点死亡时间两方面的比较图,可以看出,D-LEACH的第一个节点死亡的时间比S-LEACH晚很多,这是因为D-LEACH算法均衡了节点能量的消耗,这会大大延迟第一个节点死亡的时间。在一半节点死亡时间的对比下,D-LEACH也要优于S-LEACH,但是也可以发现,D-LEACH的HNA和FND之间相差的较少,这是因为由于能量均衡消耗,在出现第一个节点死亡的时候,其他节点的能量水平也已经降低很多,因此部分节点死亡的比S-LEACH要快。 
综上所述,本发明在多项性能指标上优于原LEACH协议。 
以上所述的具体描述,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。 

Claims (1)

1.一种基于能耗的LEACH轮换时间动态优化方法,其特征在于,包括以下步骤:
步骤一、计算LEACH协议中节点每轮能量消耗,包括以下内容:
第1.1步:根据下式计算每轮中簇头结点的能量消耗:
E i _ CH / frame = l E elec ( n i - 1 ) + l E DA n i + l E elec + l ϵ amp d i _ toBS 4 = l E elec n i + l E DA n i + l ϵ amp d i _ toBS 4 ; - - - ( 1 )
Ei_CH/round=Ei_CH/frame×Nframes/round;  (2)
其中Ei_CH/frame表示簇头节点的每帧的能量消耗,Ei_CH/round表示簇头节点每轮的能量消耗,ni表示簇i包含的节点数量,l表示每个信息包中所含的比特数,Eelec表示传播一比特数据所消耗能量,EDA表示聚合一比特数据所需能量,di_toBS代表簇头节点i到基站的距离,εamp表示当d≥d0时射频放大器传输1bit单位平方米的平方所耗的能量,d0为预先假定的阀值距离,Nframes/round表示每轮传输数据帧的数量;
第1.2步:根据下式计算每轮中非簇头结点的能量消耗:
E k _ non - CH / frame = l E elec + l ϵ fs d k _ toCH 2 ; - - - ( 3 )
Ek_non-CH/round=Ek_non-CH/frame×Nframes/round;  (4)
其中Ek_non-CH/frame表示簇内成员节点的每帧的能量消耗,dk_toCH代表簇内成员节点k到簇头结点的距离,εfs表示当d<d0时发射放大器传输1bit单位平方米所耗的能量,Ek_non-CH/round表示簇内成员节点每轮的能量消耗;
步骤二、计算LEACH协议每轮持续时间,包括以下内容:
第2.1步:根据下式计算每轮中簇i消耗的总能量:
E i _ total = E i _ CH / round + Σ k = 1 n i - 1 E k _ non - CH / round = N frames / round × [ ( l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 ) + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) ] ; - - - ( 5 )
其中,Ei_total表示簇i每轮的能量消耗;
第2.2步:根据下式计算每轮中簇i传输的数据量:
N frames / round = E i _ total / [ ( l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 ) + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) ] ; - - - ( 6 )
第2.3步:根据下式计算每一轮的持续时间:
t i _ round = l r b · n i · E i _ total l E elec · n i + l E DA · n i + l ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( l E elec + l ϵ fs d k _ toCH 2 ) ; - - - ( 7 )
其中rb为比特率;
步骤三、动态调整各簇每轮的持续时间,包括以下内容:
第3.1步:进一步计算簇i在一轮中的能量消耗:
由式(7)的簇i每轮的能量消耗为:
E i _ total = [ E elec · n i + E DA · n i + ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( E elec + ϵ fs d k _ toCH 2 ) ] · r b · t i _ round n i ; - - - ( 8 )
第3.2步:动态调整各簇的每轮持续时间,包括一下内容:
在当前轮各簇中找出簇内节点数最多、剩余能量最大的作为最大簇,记为簇j,簇j的每轮持续时间tj_round按照式(10)调整,其它簇的时间按照式(11)调整:
tj_round=tround(Enj_current/Enj_init);  (10)
t i _ round = E elec · n j + E DA · n j + ϵ amp d j _ toBS 4 + Σ k = 1 n j - 1 ( E elec + ϵ fs d k _ toCH 2 ) E elec · n i + E DA · n i + ϵ amp d i _ toBS 4 + Σ k = 1 n i - 1 ( E elec + ϵ fs d k _ toCH 2 ) · ( E ni _ current E ni _ init ) · ( n i n j ) 2 · t j _ round ; - - - ( 11 )
将tj_round设定为每个节点的选簇周期,非最大簇在其规定的每轮持续时间ti_round内进行数据传输,在规定的时间内传输完毕后,休眠tj_round-ti_round时间以节省节点能量,然后与最大簇节点一起进入下一轮过程。
CN201410320567.7A 2014-07-07 2014-07-07 一种基于能耗的leach轮换时间动态优化方法 Expired - Fee Related CN104093196B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410320567.7A CN104093196B (zh) 2014-07-07 2014-07-07 一种基于能耗的leach轮换时间动态优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410320567.7A CN104093196B (zh) 2014-07-07 2014-07-07 一种基于能耗的leach轮换时间动态优化方法

Publications (2)

Publication Number Publication Date
CN104093196A true CN104093196A (zh) 2014-10-08
CN104093196B CN104093196B (zh) 2017-05-10

Family

ID=51640863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410320567.7A Expired - Fee Related CN104093196B (zh) 2014-07-07 2014-07-07 一种基于能耗的leach轮换时间动态优化方法

Country Status (1)

Country Link
CN (1) CN104093196B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104378812A (zh) * 2014-11-28 2015-02-25 北京农业信息技术研究中心 农田自组织网络可再生能源节点差异化拓扑控制方法
CN108307471A (zh) * 2018-01-12 2018-07-20 武汉大学 一种能量平衡的簇头节点选择算法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035240B1 (en) * 2000-12-27 2006-04-25 Massachusetts Institute Of Technology Method for low-energy adaptive clustering hierarchy
CN102256267A (zh) * 2010-05-19 2011-11-23 北京兴科迪科技有限公司 无线传感网络中能量优先的节点分簇方法
CN102497679A (zh) * 2011-12-20 2012-06-13 山东大学 一种无线传感器网络静态分簇算法
CN102547904A (zh) * 2012-02-28 2012-07-04 山东大学 一种基于leach协议的簇头选举改进算法
CN103024849A (zh) * 2012-09-27 2013-04-03 西安电子科技大学 基于leach的无线传感器网络分簇方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035240B1 (en) * 2000-12-27 2006-04-25 Massachusetts Institute Of Technology Method for low-energy adaptive clustering hierarchy
CN102256267A (zh) * 2010-05-19 2011-11-23 北京兴科迪科技有限公司 无线传感网络中能量优先的节点分簇方法
CN102497679A (zh) * 2011-12-20 2012-06-13 山东大学 一种无线传感器网络静态分簇算法
CN102547904A (zh) * 2012-02-28 2012-07-04 山东大学 一种基于leach协议的簇头选举改进算法
CN103024849A (zh) * 2012-09-27 2013-04-03 西安电子科技大学 基于leach的无线传感器网络分簇方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HONGYAN ZHANG ET.AL: "an optimal solution for round rotation time setting in LEACH", 《INTERNATIONAL CONFERENCE ON WIRELESS ALGORITHM,SYSTEMS,AND APPLICATIONS》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104378812A (zh) * 2014-11-28 2015-02-25 北京农业信息技术研究中心 农田自组织网络可再生能源节点差异化拓扑控制方法
CN104378812B (zh) * 2014-11-28 2017-09-29 北京农业信息技术研究中心 农田自组织网络可再生能源节点差异化拓扑控制方法
CN108307471A (zh) * 2018-01-12 2018-07-20 武汉大学 一种能量平衡的簇头节点选择算法
CN108307471B (zh) * 2018-01-12 2020-09-25 武汉大学 一种能量平衡的簇头节点选择方法

Also Published As

Publication number Publication date
CN104093196B (zh) 2017-05-10

Similar Documents

Publication Publication Date Title
Junping et al. A time-based cluster-head selection algorithm for LEACH
Sharma et al. Optimal energy management policies for energy harvesting sensor nodes
CN102497679B (zh) 一种无线传感器网络静态分簇算法
CN106658603A (zh) 一种负载均衡的无线传感器网络路由节能方法
CN102510572B (zh) 一种面向异构无线传感器网络的分簇路由控制方法
CN102802175A (zh) 一种基于能量消耗的无线传感器网络路由优化算法
CN104093188A (zh) 一种无线传感器网络簇头选举新方法
CN105472685A (zh) 一种基于粒子群的无线传感器网络路由节能方法
CN103796273A (zh) 一种基于能量均衡的无线传感网络分簇路由策略
Ruihua et al. Double cluster-heads clustering algorithm for wireless sensor networks using PSO
CN104411000A (zh) 一种无线传感器网络中分层路由协议簇头选择方法
CN102231899B (zh) 一种无线传感网高斯分簇路由控制方法
CN103781166A (zh) 异构无线网络协作通信***中的移动终端功率分配方法
CN104093196A (zh) 一种基于能耗的leach轮换时间动态优化方法
CN107911859A (zh) 基于跨层设计的水下无线传感器网络的生命周期延长方法
CN104010339A (zh) 一种基于丢包率测量的wsn分簇方法
Ghneimat et al. Adaptive, cluster based, sensor network routing protocol
Nie et al. Latency and lifetime-aware clustering and routing in wireless sensor networks
CN104093184A (zh) 一种基于能耗的leach轮换时间动态调整方案
Amsalu et al. Design and performance evaluation of an energy efficient routing protocol for Wireless Sensor Networks
CN108307471B (zh) 一种能量平衡的簇头节点选择方法
CN109756956A (zh) 通信方法及通信装置、接入点设备和站点设备
CN105959991A (zh) 一种基于等量线模型的能量优化路由方法
Kumar et al. MEEP: multihop energy efficient protocol for heterogeneous wireless sensor network
Jianguo et al. Research on routing algorithm for wireless sensor network based on energy balance

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170510