一种混合时延敏感分簇的无线传感器网络数据融合方法与流程

文档序号:11216649阅读:712来源:国知局
一种混合时延敏感分簇的无线传感器网络数据融合方法与流程

本发明属于无线传感器网络技术领域,特别是涉及一种构建无线传感器网络时延敏感路由算法的技术方法。



背景技术:

由于无线传感器网络(wirelesssensornetworks,wsns)通常部署在无人看守的环境中,当传感器节点能量耗尽时对其电池进行替换几乎是不可能的。因此,在能量有限的传感器节点如何实现复杂的数据监测和信息报告是wsns中需要解决的首要问题。已经证明得出,传感器节点间的传输能量消耗是远高于节点内的计算能量消耗的。因此,提出一个降低传感器节点间数据传输量从而降低网络能耗的方法是非常重要的。传感器网络数据融合(datafusion)技术则能很好的解决上述问题。同时,在实际应用中,许多传感器的数据需要实时汇报才能体现价值,如地震监控、目标追踪和火灾报警等,这使得网络时延成为另一个决定网络性能的关键因素。

通常,网络时延与能耗往往是两个相互矛盾的指标。数据融合操作虽然减少了数据包大小,但往往需要特定节点收集一定数量的数据后再进行下一阶段的传输,这无疑增加了网络的时延。以算法dancns(文献1)与算法dans(文献2)为例,dancns通过多层簇结构逐层融合节点数据以减少节点数据融合等待时间,但代价就是多跳传输带来的额外能耗开销;而dans采用单一簇头的单跳传输进行数据融合操作,将数据传输距离降到最小,但簇头需收集完所有簇成员数据后方能与sink通信,造成了网络时延的增加。可以看出,两种算法均无法实现网络能耗与时延的双重优化。

目前,基于时延敏感的传感器数据融合算法研究已在降低网络时延方面取得了显著突破。但大部分算法网络模型固定,无法针对不同融合率进行自适应调整,缺乏普遍适用性。同时,时延的降低往往以牺牲能耗为代价,这使得许多网络在节能方面表现欠佳。基于数据融合的传感器网络多采用层次型拓扑结构,融合节点的负载均衡问题也是另一个容易被许多研究者忽视的重点。因此,研究wsns中时延与能耗折中优化的路由模型,同时保证节点负载均衡是非常重要的。

参考文献:

[参考1]ctcheng,cktse,fcmlau.adelay-awaredatacollectionnetworkstructureforwirelesssensornetworks.ieeesensorsjournal,2011,11(3):699-710。

[参考2]ctcheng,hleung,pmaupin.adelay-awarenetworkstructureforwirelesssensornetworkswithin-networkdatafusion.ieeesensorsjournal,2013,13(5):1622-1631。



技术实现要素:

为了解决上述问题,本发明提供了一种混合时延敏感分簇的无线传感器网络数据融合方法。

本发明所采用的技术方案是:一种混合时延敏感分簇的无线传感器网络数据融合方法,所述无线传感器网络中包含一个sink节点与n个无线传感器节点,sink节点位于探测区域中间,无线传感器节点随机分布在监测区域内;包括sink节点与无线传感器节点在内的所有节点一旦布置后位置便不再改变,且无线传感器节点的初始能量均相等;所有节点均能够与其他无线传感器节点和sink节点进行直接通信;无线传感器节点从监测区域收集单位大小数据后通过单跳或者多跳的方式传输给sink节点,特定节点通过数据融合对收集到的数据进行融合处理,其中为特定节点簇头节点或父节点;

假设两无线传感器节点间传输单位大小数据均需单位大小时间,所有特定节点的数据融合率r大小一致但可变化,r表示融合后数据总大小与融合前数据大小之比,且0.5≤r≤1;r=0.5表示2单位数据融合为1单位数据,r=1表示2单位数据融合后仍为2单位数据,既不进行数据融合操作;假设无线传感器网络共有n个无线传感器节点,则无线传感器网络能够被组织为k个簇,前k-1个簇的大小以2的指数幂形式递增,第k个簇大小为n-2k-1+1;其中:

2k-1-1<n≤2k-1

(1);

其特征在于,所述方法包括以下步骤:

步骤1:初始化传感器节点本地参数;

步骤2:传感器节点通过能量有效分簇算法形成数量呈指数增长的簇结构,并选取代价最小的节点成为簇头节点,簇结构包括单层结构或多层结构;

步骤3:通过判决公式f判断步骤2中的簇结构为单层结构或多层结构;

若f>0,则簇结构为多层结构;

若f<0,则簇结构为单层结构;

若f=0,则任意选择簇结构为单层结构或多层结构;

步骤4:通过时隙重调进行时隙重分配;

步骤5:网络运行并判断有无节点死亡;

若有,则网络停止运行,本流程结束;

若无,则执行下述步骤6;

步骤6:判断轮次是否达到周期;

若是,则进行动态簇头重选,然后执行下述步骤7;

若否,则回转执行上述步骤5;

步骤7:回转执行上述步骤3。

本发明的有益效果为:

(1)建立了混合时延敏感分簇模型,给出了不同融合率下单层簇结构与多层簇结构的网络时延与能耗的理论分析,提出基于网络时延与能耗的判决函数f,采用线性加权和法来判决簇结构的最终形式,以达到时延与能耗的折中处理;

(2)将网络成簇与重组阶段进行优化,考虑节点剩余能量与距离等因素条件,设计能量有效分簇算法与动态簇头重选算法,以实现均衡节点能耗、延长网络生命周期的目的。

附图说明

图1为本发明实施例的网络结构示意图;

图2为本发明实施例的流程图;

图3为本发明实施例的多层成簇模型示意图;其中a)为模型初始阶段,b)为第一轮形成子簇,c)为第二轮形成子簇,d)为第三轮形成子簇)。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。

本实施例的无线传感器网络中包含一个sink节点与n个无线传感器节点,sink节点位于探测区域中间,无线传感器节点随机分布在监测区域内;包括sink节点与无线传感器节点在内的所有节点一旦布置后位置便不再改变,且无线传感器节点的初始能量均相等;所有节点均能够与其他无线传感器节点和sink节点进行直接通信;无线传感器节点从监测区域收集单位大小数据后通过单跳或者多跳的方式传输给sink节点,特定节点(簇头节点或父节点)通过数据融合对收集到的数据进行融合处理;

为方便计算与分析,本实施例假设两无线传感器节点间传输单位大小数据均需单位大小时间,数据产生与数据融合的时间在此忽略不计,所有特定节点的数据融合率r(融合后数据总大小与融合前数据大小之比)大小一致但可变化,且0.5≤r≤1。r=0.5表示2单位数据融合为1单位数据,r=1表示2单位数据融合后仍为2单位数据,既不进行数据融合操作。假设无线传感器网络共有n个无线传感器节点,则无线传感器网络能够被组织为k个簇,前k-1个簇的大小以2的指数幂形式递增,第k个簇大小为n-2k-1+1。其中

2k-1-1<n≤2k-1(1);

每个簇在分簇完成后,需要通过判决函数f对簇结构进行判决,最终决定采用单层网络结构还是多层网络结构。算法的一个例子如图1所示(r=0.5)。前三个簇采用单层结构,第4个簇则采用了多层结构。

请见图2,本发明提供的一种混合时延敏感分簇的无线传感器网络数据融合方法,包括以下步骤:

步骤1:初始化传感器节点本地参数,包括节点初始能量、节点到其他节点距离、节点到sink节点距离、节点的下一跳地址。

步骤2:传感器节点通过能量有效分簇算法形成数量呈指数增长的簇结构,并选取代价最小的节点成为簇头节点,簇结构包括单层结构或多层结构;

能量有效分簇算法主要通过构建基于传输距离与节点密度的代价函数实现。通过代价函数寻找最小代价值节点作为每个簇簇头节点。

算法流程如下:

(1)通过传感器节点总数n计算每个簇簇成员数,按照簇成员数递减方式排序为cn,cn-1,......,c1,对应的簇成员节点数分别为

(2)所有传感器节点广播距离探测包计算其与邻居传感器节点以及sink节点的距离,记为di,j,表示节点i与节点j的距离大小。

(3)按照簇结构从大到小的方式依次计算每个传感器节点成为簇头的代价,选择代价最小的传感器节点作为相应簇簇头,并将通过公式(1)计算得到的相应数量邻居传感器节点加入该簇,加入该簇的传感器节点退出其他簇头节点的竞选,并不作为其他传感器节点的邻居节点。算法直至所以传感器节点成为簇成员节点为止。成为簇头的传感器节点,当该簇被判定为多层网络结构时,簇头在子簇连接时自动成为子簇头,并最终成为等级最高的子簇头。

代价函数公式如下:

其中

表示传感器节点i成为簇cn簇头的代价,表示传感器节点i与附近个节点的密度,表示传感器节点i与最近的第j个传感器节点的距离;α2与β2为常数参量,满足α2+β2=1。

本实施例的单层簇成簇方式为:

采用的单层簇网络结构与dans算法相同。簇内节点包括1个簇头节点与多个簇成员节点,簇成员节点处于相同地位,执行相同的功能。簇头与其余簇成员节点以tdma方式直接通信,簇成员节点间不进行数据传输,每接收完一个簇成员节点数据后,簇头节点进行数据融合操作,簇头在收集完所有节点数据后,按照分配的时隙与sink节点通信。

本实施例的多层簇成簇方式为:

多层簇成簇方式是基于dancns进行改进。算法流程如下:

(1)簇内每个节点拥有该节点对应的等级k,等级k的节点拥有k-1个子节点。节点间通过合并成为子簇,cch(k)表示等级为k的子簇簇头。初始阶段每个节点的等级均为1,既k=1,且没有子节点,簇内存在n个cch(1)节点。

(2)按照离sink节点距离递降的方式将子簇头排序。每个子簇簇头节点发送连接请求信息到邻居子簇头,邻居子簇头中具有相同等级的子簇头才能与其连接形成新的子簇。两个子簇头中较sink节点近的子簇头成为新的子簇头,并且等级提升1,另一节点成为普通节点。例如两个cch(k)通过合并后,较近节点成为cch(k+1)。之后,新簇头继续发送连接请求信息,与其最近的相同等级的子簇头连接。

(3)当没有连接产生后,子簇头按照等级递增的方式排列,高等级簇头作为低等级簇头的父节点,在收集自身簇成员节点数据的同时还要负责融合低等级簇传输过来的数据。等级最高的子簇头作为该簇的簇头直接与sink进行通信。多层成簇流程图如图3所示,网络最终形成cch(3)与cch(2)两个子簇头,等级高的cch(3)负责与sink节点直接通信。

步骤3:通过判决公式f判断步骤2中的簇结构为单层结构或多层结构;

步骤3.1:时延分析;

a)单层簇网络结构时延分析;

为方便表示,假设一个簇内含有n+1个节点,其中n个簇成员节点,1个簇头节点。簇内的网络时延主要包括簇头节点逐个接收簇成员节点数据的时延以及簇头节点将融合数据传输给sink节点的时延。簇头节点与每个簇成员节点通信总共需要的时间为n。簇头节点进行数据融合后的数据总大小为故整个簇n的数据收集时延公式如下:

b)多层簇网络结构时延分析;

按照多层成簇算法,簇结构会被分成m个子簇,在此按照等级递增的排列方式将它们的簇头记为c1,c2,......cm,其中cm即为第m个簇的簇头,也是该簇的总簇头。低等级子簇在收集完自己子簇成员数据后将总数据传输给高等级子簇进行融合处理。故簇头cm的时延dm包括3个因素:接收簇内节点数据的时延接收cm-1传输数据的时延传输数据到sink的时延簇n时延可表示为:

考虑大小的关系,既cm在接收完子簇内数据后是否需要等待额外时间才能与cm-1通信。由hdc多层簇结构成簇算法可知,假设cm簇内节点数小于等于其余节点数之和,则其余节点能够形成与cm相同等级的子簇,从而与能够与cm连接成为cm+1。但cm为该簇内最大的子簇,不存在cm+1,故假设不成立,cm簇内节点数大于其余节点数之和。所以,由c1,c2,......cm-1构成的子簇结构可以看做是cm子簇的子集,其数据收集时延必小于故cm在接收完子簇内数据后cm-1已处于可通信状态。

由以上推论可知,多层簇结构的时延计算公式如下:

其中

故式(6)可表示为:

sm表示cm节点融合子节点后的数据量,km表示子簇cm的等级。

步骤3.2:能耗分析;

无线传感器节点中的大部分能量由其收发模块消耗。其中,接收机的能耗直接由所接收的数据量的大小决定,我们假设er表示节点接收1单位数据所消耗的能量。而发射机的信道模型有自由空间模型和多径衰落模型两种,能耗的大小不光与数据量有关,还与传输距离d有关。当传输距离小于给定阈值d0值,采用自由空间模型,能耗系数为d2,反之,采用多径衰落模型,能耗系数为d4。节点i传输1单位数据到距离为d的节点j的能耗公式如下:

其中,eelec表示电路损耗能量,εfs与εamp分别表示自由空间模型和多径衰落模型下射频放大器所消耗的能量。由于我们认为sink节点的能量是可供应的,故sink节点的接收能耗在此不予考虑。

a)单层网络结构能耗分析;

我们仍假设簇内含有n+1个节点,其中n个簇成员节点,一个簇头节点。每个节点含有kbits数据,融合率大小为r。在单层簇结构中,n个簇成员节点依次将kbits数据传输给簇头节点,簇头节点接收数据并进行数据融合,融合后的数据量大小为最后簇头节点将融合后的数据传输给sink节点。单层簇结构的能耗计算公式如下:

其中cmi代表第i个簇成员节点,ch代表簇头节点。

b)多层网络结构能耗分析;

多层簇结构中,最底层节点只负责将数据传输给父节点,其它非子簇头节点需要收集孩子节点数据后再将数据传输给自己的父节点,而子簇头节点不光负责该子簇数据的收集与传输,还需与相邻子簇头通信,消耗额外的能量。

任意节点i的能耗表达式如下:

簇内所有节点的能耗为:

其中ki表示节点i的等级,表示节点i接收低等级子簇数据的时延,表示节点i传输数据到高等级子簇的时延,et(i,parent)表示节点i传输1单位数据到父节点所需要的能耗。在公式(8)中已进行推导,在此便不再展开。

步骤3.3:构建判决公式f;

为构建判决公式f,需同时考虑网络的时延与能耗大小,选取时延与能耗代价相对较小的网络结构。因此,该模型为多目标决策模型。本文采用线性加权和法对模型进行判断。

对于时延与能耗,由于采用的单位与数值存在差异,为准确进行比较,需先对目标规范化处理,使目标对测评方案的作用力同趋化。规范化表达式如下:

经过规范化的时延与能耗参数数值均处于(0,1)范围内,消除了因原数值大小不统一造成的计算误差。

判决公式定义如下:

其中,权重α1与β1为常量参数,并满足α1+β1=1,其具体值取决于用户对时延与能耗的偏好。若f的计算结果为正数,说明该簇为单层簇的代价大于该簇为多层簇的代价,则最终判决该簇为多层簇结构;反之,则判决该簇为单层簇结构;若f的计算结果恰好为0,视为两种簇结构的代价相同,可任意选择该簇为多层或单层结构。簇结构的判决依据可以被描述如下:

步骤4:通过时隙重调进行时隙重分配;

所构建的混合模型会在部分情况下存在两簇间时隙浪费的情况,既在前一个簇传输完数据到sink后后一个簇簇头仍未完成数据收集过程,sink需等待多余时间才能与下一个簇头通信。故加入时隙重调算法进行时隙的重分配。时隙的重调阶段过程如下:

(1)计算每个簇的簇头节点接收簇成员数据所需时延,计算公式如公式(17)与(18)所示,将簇按照接收时延递增方式排序为c1,c2,......,cn。

(2)通过公式(4)与公式(8)计算每个簇的总时延,并依次分配相应时隙给c1,c2,......,cn,cm簇只有在cm-1簇与sink节点通信后才能与sink节点进行通信。

步骤5:网络运行并判断有无节点死亡;

若有,则网络停止运行,本流程结束;

若无,则执行下述步骤6;

步骤6:判断轮次是否达到周期;

若是,则进行动态簇头重选,然后执行下述步骤7;

若否,则回转执行上述步骤5;

相比其他簇成员节点,簇头节点负责更多的工作,如簇内通信、数据融合、数据传输等,需要消耗更多的能量,从而会因过早消耗完能量而降低网络性能。因此,本文提出动态簇头重选算法,在网络进行一段时间后通过效益函数wi计算节点i的效益值,在簇内重选选取簇头节点,以均衡网络能耗,达到节点负载均衡的目的。在选择簇首节点时从以下两个方面进行考虑:节点的剩余能量,以及节点到sink的距离。通过分配动态权重来表示对两参数的偏好。效益函数wi表达式如下:

其中

α3为动态权重,β3为调节参数,qmax与qmin分别表示该簇内节点剩余能量的最大值与最小值,dmax,sink与dmin,sink分别表示簇内节点到sink的最大值与最小值。由于随着采集轮数的增加,节点剩余能量逐渐减少,为实现网络的正常运行,剩余能量的权重将逐渐提高。算法引入调节参数β3,β3在区间[0,1]内依次递减,使α3在区间[0.5,1]内逐渐增大,从而逐步增加能量在算法中的比重,达到了网络能耗负载均衡的目的。

步骤7:回转执行上述步骤3。

本发明构建了基于混合时延敏感分簇的数据融合模型;传感器节点通过能量有效分簇算法形成数量呈指数增长的簇结构。每个簇包含一个簇头节点与数个簇成员节点。簇头节点通过设置融合率(即接收数据与输出数据比值),对接收数据进行融合处理,再通过tdma方式传输给sink。算法中簇头与簇成员间有单层和多层连接两种方式。提出判决函数,将单层与多层模型相对应的的时延与能耗进行加权比较,判决每个簇的成簇方式,以达到最优的时延与能耗折中处理。

本发明采用能量有效分簇算法与动态簇头重选算法;在成簇阶段,能量有效分簇算法考虑节点密度与物理位置,通过构建代价函数选择代价值最小的节点成为簇头,以达到缩短通信距离的目的。在网络运行一段时间后,为均衡节点能耗负载,在簇内通过动态簇头重选算法构建效益函数重新竞选新的簇头。计算得出的最优节点成为新簇头。

通过仿真结果表明,与现有的方法相比,在不同融合率情况下,混合时延敏感分簇的无线传感器网络数据融合算法能有效降低网络时延、减少网络能耗、延长网络生命周期。本发明在物联网智能感知、智慧农业、电子商务等领域具有良好的应用前景。

应当理解的是,本说明书未详细阐述的部分均属于现有技术。

应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1