一种基于分簇结构无线传感器网络的数据接收方法及装置转让专利

申请号 : CN201610712018.3

文献号 : CN106304191B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 尹长川梁瀚樱邓乔木刘丹谱

申请人 : 北京邮电大学

摘要 :

本发明公开了一种基于分簇结构无线传感器网络的数据接收方法及装置,应用于分簇结构无线传感器网络,利用预测模型对节点所采集的数据进行预测逼近,通过抑制节点数据传输来降低节点设备能量消耗。本方案能够在满足应用需求前提下有效的降低网内数据传输量,降低节点能量消耗,延长网络生命周期。

权利要求 :

1.一种基于分簇结构无线传感器网络的数据接收方法,应用于分簇结构中的簇头节点,所述分簇结构中还包括簇内节点,其特征在于,包括如下步骤:获得簇内节点数据并存入数据缓存;

对数据缓存中的每个预设周期内的簇内数据进行聚合压缩处理;

所述聚合压缩处理包括以下步骤:

S201)接收簇内各节点上传的数据,并对每个簇内节点以独立的缓存空间进行数据缓存;

S202)将每个上传周期内簇内各节点上传的数据存储为簇内数据矩阵X,其中X=[X1,X2,…,Xn],n为簇内节点数目,Xi=[xi1,xi2,…,xin]为第i个簇内节点按照一定时间间隔顺序采集的数据;

S203)对簇内数据矩阵X进行联合稀疏处理,并将各簇内节点数据分解为共同部分和独立部分,即对X分解后得到共同部分zc及其独立部分zn,分解结果集合为Z=[zc,z1,z2,…,zn];

S204)对分解结果集合中的各分量数据分别进行压缩感知处理,获得最终的压缩聚合结果集合R=[Rc,R1,R2,…,Rn]与测量矩阵集合Φ=[{Φc1,Φc2},{Φ11,Φ12},…,{Φn1,Φn2}];

S205)将最终的压缩聚合结果集合与测量矩阵集合沿簇间路由发送给汇聚节点或应用终端。

2.根据权利要求1所述的方法,其特征在于,所述获得簇内节点数据,包括:接收簇内节点发送的预测模型参数;

判断当前是否接收到簇内节点发送的实际数据;

如果是,则其存储到该簇内节点所对应的数据缓存中;

如果否,则根据预测模型参数和时间计算出预测数据并将其作为簇内数据存储到该簇内节点所对应的数据缓存中。

3.根据权利要求1所述的方法,其特征在于,所述独立的缓存空间,包括数据缓存空间与预测模型参数缓存空间;

如果收到的是原始感知数据,则直接将该数据存储到对应节点的数据缓存空间中;如果是预测模型参数数据,则更新对应节点的预测模型参数缓存,并根据更新后的预测模型参数和时间计算出预测数据存储到对应节点的数据缓存空间中。

4.根据权利要求1所述的方法,其特征在于,所述联合稀疏处理,即对每个簇内节点数据Xi分别采用稀疏随机矩阵进行稀疏变换。

5.根据权利要求4所述的方法,其特征在于,所述稀疏随机矩阵采用伯努利/马赫随机矩阵,其定义如下:上式中,Φij代表伯努利/马赫随机矩阵中任意位置的元素,p为该元素的取值概率,即矩阵中的元素以上式所示概率p在{-1,0,+1}中随机取值,其中稀疏控制参数s取值越大,矩阵中非零元素越小,稀疏程度越高。

6.根据权利要求1所述的方法,其特征在于,所述压缩感知处理,包括如下步骤:A1)根据簇内节点数目n、感知压缩后的数据长度m和稀疏控制参数s,计算参数a=m/

2s、 产生初始空测量矩阵Φ1、Φ2;

A2)生成两个随机的1×n维矩阵T1=[t11,t12,…,t1n]、T2=[t21,t22,…,t2n],其中t1n与t2n均为在[1,b]中随机取值的正整数,将矩阵T1、T2分别作为一行数据存储到测量矩阵Φ1、Φ2中;

A3)找出T1中值为i的元素的位置,将原始信号中对应位置元素相加;找出T2中值为i的元素的位置,将原始信号中对应位置元素相加;用第一个计算值减去第二个计算值,所得结果存入到对应的压缩数据Ri中;

A4)重复步骤A2)和步骤A3)a次;

A5)令b=m-a×b,重复步骤A3)、A4),得到最终的压缩聚合结果数据Ri和测量矩阵Φ1、Φ2。

7.一种基于分簇结构无线传感器网络的数据接收装置,应用于分簇结构中的簇头节点,所述分簇结构中还包括簇内节点,其特征在于,包括:数据获取模块,用于获得簇内节点数据;

聚合压缩处理模块,用于对数据获取模块内的数据进行聚合压缩处理;

所述聚合压缩处理模块,具体用于:

接收簇内各节点上传的数据,并对每个簇内节点以独立的缓存空间进行数据缓存;

将每个上传周期内簇内各节点上传的数据存储为簇内数据矩阵X,其中X=[X1,X2,…,Xn],n为簇内节点数目,Xi=[xi1,xi2,…,xin]为第i个簇内节点按照一定时间间隔顺序采集的数据;

对簇内数据矩阵X进行联合稀疏处理,并将各簇内节点数据分解为共同部分和独立部分,即对X分解后得到共同部分zc及其独立部分zn,分解结果集合为Z=[zc,z1,z2,…,zn];

对分解结果集合中的各分量数据分别进行压缩感知处理,获得最终的压缩聚合结果集合R=[Rc,R1,R2,…,Rn]与测量矩阵集合Φ=[{Φc1,Φc2},{Φ11,Φ12},…,{Φn1,Φn2}];

将最终的压缩聚合结果集合与测量矩阵集合沿簇间路由发送给汇聚节点或应用终端。

8.根据权利要求7所述的装置,其特征在于:所述聚合压缩处理模块包括数据缓存单元、联合稀疏处理单元、压缩感知处理单元;

其中,所述数据缓存单元用于接收簇内各节点上传的数据,并对每个簇内节点以独立的缓存空间进行数据缓存;

其中,所述联合稀疏处理单元用于将各簇内节点数据分解为共同部分和独立部分,获得分解结果集合;

其中,所述压缩感知处理单元用于对分解结果集合中的各分量数据分别进行压缩感知处理,获得最终的压缩聚合结果集合与测量矩阵集合。

说明书 :

一种基于分簇结构无线传感器网络的数据接收方法及装置

技术领域

[0001] 本发明涉及数据传输技术领域,尤其涉及无线传感器网络的数据接收方法及装置。

背景技术

[0002] 目前,无线传感器网络(WSN)已广泛应用于智能家居、农业种植、环保监测和化工生产等领域。
[0003] 无线传感器网络(WSN)是由大量在空间上离散分布的传感器节点通过无线通信所组成的自组织网络,如图1所示,为传统无线传感器网络系统结构示意图。其中,任务管理节点通过通信网络与汇聚节点连接,汇聚节点与目标监测区域中的传感器节点之间进行无线通信。
[0004] 各个传感器节点相互协同来感知、采集、处理和传输网络所覆盖区域内的各种目标信息,为上层应用以及用户决策提供网络连接和数据支持服务。
[0005] 在实际应用中,为了保证服务质量,WSN应用常通过节点密集部署来对目的区域进行监测。因此节点所采集数据需要通过若干中间节点转发到达目的节点,中间节点要在其邻居节点之中选择最为合适的下一跳(next hop)节点。
[0006] 目前,WSN中广泛采用分簇路由协议来实现数据的传输。依照路由表中传感器使传感器
[0007] 分簇路由协议以数据为中心将网络中的传感器节点划分为若干个簇(cluster)。每个簇由簇头节点(cluster head)和若干簇内节点(cluster member)组成,簇头节点既要负责簇内数据的采集与聚合处理,也要承担簇间数据的路由转发。典型的分簇路由算法有LEACH(Low Energy Adaptive Clusterig Hierarchy)、GAF(Geographical Adaptive Fidelity)、Cougar协议等,如图2所示,为分簇路由结构示意图。
[0008] 随着电子设备的集成化与微型化,传感器节点多采用能量有限的电池供电方式,因此需要数据合理选择从发送数据的源传感器节点到汇聚节点的路径来降低网络能耗。
[0009] 考虑到传感器节点采用电池供电,难以实现对节点能量的持续供应,而且每个传感器节点的存储能力和计算能力也很有限,许多应用场景需要通过节点密集分布来满足应用需求。
[0010] 已有研究指出传感器节点将1比特数据传输100米所需能量大约能执行3000条计算指令。密集分布的各节点所采集数据间往往存在着相关性,造成了一些相关数据的冗余,而同一节点按照时间周期性所采集的数据也存在着一定冗余,使得数据传输能量高,造成网络资源的浪费。
[0011] 因此,亟需一种技术,利用分簇路由结构,可以在数据传输的过程中,解决冗余和数据传输能量消耗高的问题。

发明内容

[0012] 本发明实施例的目的在于提供一种基于分簇结构无线传感器网络的数据接收方法及装置,可以降低数据冗余、减少数据传输所消耗的能量,从而延长网络的生命周期。
[0013] 为达到上述目的,本发明实施例公开了一种基于分簇结构无线传感器网络的数据接收方法,应用于分簇结构中的簇头节点,所述分簇结构中还包括簇内节点,其中,包括如下步骤:
[0014] 1)获得簇内节点数据;
[0015] 2)对数据缓存中的每个预设周期内的簇内数据进行聚合压缩处理。
[0016] 优选的,所述方法,其中,所述聚合压缩处理包括以下步骤:
[0017] S201)接收簇内各节点上传的数据,并对每个簇内节点以独立的缓存空间进行数据缓存;
[0018] S202)将每个上传周期内簇内各节点上传的数据存储为簇内数据矩阵X,其中X=[X1,X2,…,Xn],n为簇内节点数目,Xi=[xi1,xi2,…,xin]为第i个簇内节点按照一定时间间隔顺序采集的数据;
[0019] S203)对簇内数据矩阵X进行联合稀疏处理,并将各簇内节点数据分解为共同部分和独立部分,即对X分解后得到共同部分zc及其独立部分zn,分解结果集合为Z=[zc,z1,z2,…,zn];
[0020] S204)对分解结果集合中的各分量数据分别进行压缩感知处理,获得最终的压缩聚合结果集合R=[Rc,R1,R2,…,Rn]与测量矩阵集合Φ=[{Φc1,Φc2},{Φ11,Φ12},…,{Φn1,Φn2}];
[0021] S205)将最终的压缩聚合结果集合与测量矩阵集合沿簇间路由发送给汇聚节点或应用终端。
[0022] 优选的,所述方法,其中,获得簇内节点数据,包括:
[0023] 1)接收簇内节点发送的预测模型参数;
[0024] 2)判断当前是否接收到簇内节点发送的实际数据;
[0025] 3)如果是,则其存储到该簇内节点所对应的数据缓存中;
[0026] 4)如果否,则根据预测模型参数和时间计算出预测数据并将其作为簇内数据存储到该簇内节点所对应的数据缓存中。
[0027] 优选的,所述方法,其中,独立的缓存空间,包括数据缓存空间与预测模型参数缓存空间;
[0028] 如果收到的是原始感知数据,则直接将该数据存储到对应节点的数据缓存空间中;如果是预测模型参数数据,则更新对应节点的预测模型参数缓存,并根据更新后的预测模型参数和时间计算出预测数据存储到对应节点的数据缓存空间中。
[0029] 优选的,所述方法,其中,联合稀疏处理,即对每个簇内节点数据Xi分别采用稀疏随机矩阵进行稀疏变换。
[0030] 优选的,所述方法,其中,稀疏随机矩阵采用伯努利/马赫随机矩阵,其定义如下:
[0031]
[0032] 上式中,Φij代表伯努利/马赫随机矩阵中任意位置的元素,p为该元素的取值概率,即矩阵中的元素以上式所示概率p在{-1,0,+1}中随机取值,其中参数S控制矩阵的稀疏程度,S取值越大,矩阵中非零元素越小,稀疏程度越高。
[0033] 优选的,所述方法,其中,压缩感知处理,包括如下步骤:
[0034] A1)根据簇内节点数目n、感知压缩后的数据长度m和稀疏控制参数s,计算参数a=m/2s、 产生初始空测量矩阵Φ1、Φ2;
[0035] A2)生成两个随机的1×n维矩阵T1=[t11,t12,…,t1n]、T2=[t21,t22,…,t2n],其中t1n与t2n均为在[1,b]中随机取值的正整数,将矩阵T1、T2分别作为一行数据存储到测量矩阵Φ1、Φ2中。
[0036] A3)找出T1中值为i的元素的位置,将原始信号中对应位置元素相加;找出T2中值为i的元素的位置,将原始信号中对应位置元素相加;用第一个计算值减去第二个计算值,所得结果存入到对应的压缩数据Ri中;
[0037] A4)重复步骤A2)和步骤A3)a次;
[0038] A5)令b=m-a×b,重复步骤A3)、A4),得到最终的压缩聚合结果数据Ri和测量矩阵[0039] 本发明实施例还提供一种基于分簇结构无线传感器网络的数据接收装置,应用于分簇结构中的簇头节点,所述分簇结构中还包括簇内节点,该数据接收装置包括:
[0040] 数据获取模块,用于获得簇内节点数据;
[0041] 聚合压缩处理模块,用于对数据获取模块内的数据进行聚合压缩处理,其中,所述聚合压缩处理模块包括数据缓存单元、联合稀疏处理单元、压缩感知处理单元;
[0042] 其中,所述数据缓存单元用于接收簇内各节点上传的数据,并对每个簇内节点以独立的缓存空间进行数据缓存;
[0043] 其中,所述联合稀疏处理单元用于将各簇内节点数据分解为共同部分和独立部分,获得分解结果集合;
[0044] 其中,所述压缩感知处理单元用于对分解结果集合中的各分量数据分别进行压缩感知处理,获得最终的压缩聚合结果集合与测量矩阵集合。
[0045] 由上可见,本发明方案针对许多无线传感器网络应用场景中节点资源受限的情况,基于现有常见的分簇路由结构,提出了一种能量有效的数据传输机制。该机制针对节点能量受限的特点,在簇内成员节点利用预测模型对节点数据进行预测逼近,抑制节点数据传输从而降低能量消耗。而且,在簇头节点上,通过改进的压缩感知方法对簇内数据进行联合压缩处理,压缩簇头的数据传输量。本方案能够在满足应用需求前提下有效的降低网内数据传输量,从而降低节点能量消耗,延长网络生命周期。

附图说明

[0046] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0047] 图1为传统无线传感器网络应用系统的结构示意图;
[0048] 图2为现有无线传感器网络的分簇路由结构示意图;
[0049] 图3为本发明技术方案采用的压缩感知测量过程示意图;
[0050] 图4为本发明实施例提供的簇头节点的数据接收流程图;
[0051] 图5为本发明实施例中簇内节点的数据传输与模型调整示意图;
[0052] 图6为本发明实施例中簇内节点的数据采集传输流程图;
[0053] 图7为本发明实施例提供的一种数据接收装置的结构示意图。

具体实施方式

[0054] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0055] 本发明是基于分簇路由结构的无线传感器网络,以及数据压缩感知理论对数据传输过程进行的改进。
[0056] 分簇路由协议在平面路由的基础上将节点划分为簇头节点与簇内成员节点,并明确了各自的分工。簇头负责与簇内成员通信,收集成员信息和数据并负责数据转发;簇内成员采集监测区域内的目标信息并发送给簇头。一般采用周期性簇头轮换机制来平衡能量消耗。这种分簇策略将网络划分为不同的逻辑子区域,具有更好的可扩展性,可在簇内对数据进行进一步的调度处理。
[0057] 节点能量主要消耗在数据收发上,所以本发明实施例通过对网内数据进行压缩处理来实现能量高效利用。压缩感知理论是一种信号压缩与高精度恢复技术,最初主要用于处理离散域的数字信号。压缩感知理论指出:若信号X=[x1,x2,…,xn]在某一变换基Ψ=[ψ1,ψ2,…,ψn]下可进行k稀疏表示,即满足X=ΨS且向量S中元素个数远小于X,若S中元素个数为k则原始信号X的能量都集中在这k个非零元素上,称S为信号X的k阶稀疏表示。压缩感知过程如图3所示。当信号X满足上述条件时,通过信号向量Y=[y1,y2,…,ym]即可恢复出X,其中Y=ΦX=ΦΨS、信号向量Y的长度远小于原信号X,即Y为对X进行压缩处理后的结m×n果,并称Φ∈R 为X的观测矩阵。
[0058] 在恢复信号时,可通过求解凸优化问题:
[0059]
[0060] 获取最优解S,然后利用X=ΨS,实现对原始信号X的精确恢复。求解上式需要遍历S中所有非零值组合,所以可将上式0-范数转化为1-范数近似求解,得到如下模型:
[0061]
[0062] 考虑误差及噪声因素,还可将上式进一步转换:
[0063]
[0064] 严格意义上大部分信号都不稀疏,但可通过合适的变换基Ψ使信号在变换域下稀疏表示。高斯随机矩阵常作为测量矩阵;常见稀疏变换方法有傅里叶变换、小波变换。对测量信号的恢复算法有正交匹配追踪(OMP)算法、基追踪(BP)算法、自适应匹配追踪算法等,各有优劣。
[0065] 本发明是基于分簇路由结构无线传感器网络,针对簇头节点和簇内成员节点的不同分工特点,提出了一种能量高效的数据聚合传输策略。该数据传输策略中,簇内成员和簇头节点可根据应用需求分别对传输数据进行聚合压缩处理,降低网络中冗余数据的传输,节省能量从而延长网络正常工作时间。特别指出的是,本发明方案主要针对簇内的数据传输处理过程,不涉及簇间路由建立与数据传输。根据节点的类型可将具体内容分为簇内节点处理机制与簇头节点处理机制两部分。下面分别以实施例的方式对其进行详细说明。
[0066] 本实施例提供一种基于分簇结构的无线传感器网络的簇头节点的数据接收方法,包括步骤:
[0067] 1)获得簇内节点数据并存入数据缓存;
[0068] 2)对数据缓存中的每个预设周期内的簇内数据进行如下聚合压缩处理。
[0069] 其中,获得簇内节点数据的方法,具体包括下列步骤:
[0070] 接收簇内节点发送的预测模型参数,预测模型参数的获取方法来自前述的一元线性预测模型;
[0071] 判断当前是否接收到簇内节点发送的实际数据;
[0072] 如果是,则其存储到该簇内节点所对应的数据缓存中;
[0073] 如果否,则根据预测模型参数和时间计算出预测数据并将其作为簇内数据存储到该簇内节点所对应的数据缓存中。
[0074] 下面结合图4给出数据缓存中的每个预设周期内的簇内数据的聚合压缩处理步骤:
[0075] S201)接收簇内各节点上传的数据,并对每个簇内节点以独立的缓存空间进行数据缓存;
[0076] S202)将每个上传周期内簇内各节点上传的数据存储为簇内数据矩阵X,其中X=[X1,X2,…,Xn],n为簇内节点数目,Xi=[xi1,xi2,…,xin]为第i个簇内节点按照一定时间间隔顺序采集的数据;
[0077] S203)对簇内数据矩阵X进行联合稀疏处理,并将各簇内节点数据分解为共同部分和独立部分,即对X分解后得到共同部分zc及其独立部分zn,分解结果集合为Z=[zc,z1,z2,…,zn];
[0078] S204)对分解结果集合中的各分量数据分别进行压缩感知处理,获得最终的压缩聚合结果集合R=[Rc,R1,R2,…,Rn]与测量矩阵集合Φ=[{Φc1,Φc2},{Φ11,Φ12},…,{Φn1,Φn2}];
[0079] S205)将最终的压缩聚合结果集合与测量矩阵集合沿簇间路由发送给汇聚节点或应用终端。
[0080] 具体而言,在基于分簇结构的无线传感器网络中,每个簇相当于一个独立的网络节点区域,簇头节点作为该区域的管理者与协调者,所承担的数据转发量比簇内成员节点更多,能耗更大。为了降低簇头节点的负载压力,减少数据传输所带来的能量消耗,本发明的技术方案在簇头节点对数据进行聚合压缩处理。
[0081] 在初始化阶段,簇头节点需要完成簇间路由的建立、与簇内节点建立连接并分配时隙,同时还要接收应用或汇聚节点的控制信息,包括但不限于上传周期、目的数据、应用容忍门限等。此阶段所需完成工作与具体应用场景密切关联。在完成节点初始化之后,簇头节点会开始等待接收簇内数据。
[0082] 簇内节点通过预测模型对采集数据进行预测逼近,减少数据发送量。簇头结点需要为该簇内的每个节点提供缓存空间用以分别存储节点所发送的模型参数数据和感知数据,同时簇头需要与簇内节点保持时钟同步。
[0083] 簇头节点接收簇内各节点数据,如果收到的是原始感知数据,则直接将该数据存储到对应节点的数据缓存中;如果是预测模型参数数据,簇头节点首先更新该簇内节点对应的参数缓存,随后根据新参数和时间计算出预测数据并将其存储到该节点所对应的数据缓存中。在每个上传时间点,簇头节点需要将所有节点的数据缓存发送给汇聚节点,同时清空缓存。
[0084] 簇内各节点在地理位置上具有一定的关联,其采集数据也存在一定相关性,本发明实施例针对簇头发送数据量过大的问题,提出了新的压缩处理方法对簇内数据进行联合压缩聚合,从而降低簇头节点发送数据量、节省能量消耗。
[0085] 改进的数据压缩处理方法
[0086] 压缩感知可以确保减少采样数的情况下高概率的重建原始信号,可用于无线传感器网络中对数据进行压缩。但由于传感器节点资源受限,进行压缩感知需要处理测量矩阵与原始数据的乘法运算,对传感器节点的存储与计算能力要求较高。本发明方案就该问题提出了适当的改进工作。
[0087] 目前,高斯随机测量矩阵在压缩感知理论中得到了广泛应用,但其实现过程需要随机数生成器来产生满足要求的m×n个随机数。产生测量矩阵及矩阵与原始数据相乘的过程复杂度较高,不适用于资源受限的传感器节点。
[0088] 本方案采用稀疏随机矩阵获取可压缩数据的主要信息,以弥补这方面的不足,伯努利/马赫随机矩阵作为常见的稀疏矩阵,其定义如下:
[0089]
[0090] 上式中,Φij代表伯努利/马赫随机矩阵中任意位置的元素,p为该元素的取值概率,即矩阵中的元素以上式所示概率p在{-1,0,+1}中随机取值,其中参数S控制矩阵的稀疏程度,S取值越大,矩阵中非零元素越小,稀疏程度越高。若原始数据和压缩后数据长度分别为n、m,则利用上述方法仍需产生并存储m×n的稀疏矩阵。
[0091] 本发明方案将稀疏随机矩阵按照元素正负进行分割,然后通过分块的方式产生随机数来代表测量矩阵中非零元素的坐标,再由各坐标块组合成改进的稀疏随机测量矩阵Φ1、Φ2两个矩阵,Φ1、Φ2并不存储真实测量矩阵元素数据,而是存储其非零元素的位置。同时,将矩阵乘法降低为加法运算,在生成测量矩阵的同时完成对原始信号的压缩感知测量过程,降低了数据处理的复杂度,提高了无线传感器网络系统的实时性能。
[0092] 假定对长度为n的数据X进行压缩感知处理后的数据长度为m,则改进的压缩感知处理过程如下:
[0093] (1)忽略归一化算子,每列正元素和负元素取值±1,个数均为a,将每列分为a组,满足a=m/2s,计算 初始的Φ1、Φ2均为空矩阵。
[0094] (2)生成两个随机的1×n维矩阵T1=[t11,t12,…,t1n]、T2=[t21,t22,…,t2n],T1与T2代表测量矩阵中元素位置。其中t1i与t2i均为在[1,b]中随机取值的正整数,需要使t1i与t2i不取相同值,保证每个分块矩阵的每一列只有一个正元素与负元素。然后,将矩阵T1、T2分别作为一行数据存储到矩阵Φ1、Φ2之中。
[0095] (3)随后进行原始数据X进行循环感知处理。每一次处理中,首先找出T1中值为i元素的位置,将原始信号X中相应位置元素的值相加,随后同样找出T2中值为i元素的位置,将原始信号X中相应位置元素的值相加,最后将上述两个结果相减之后再乘以 得到结果ri,并将结果ri存入最后的压缩数据R中。i初始值为1,每个循环后累加1,i等于b为最后一次处理。
[0096] (4)将过程2与过程3重复进行a次;
[0097] (5)最后令b=m-a×b,按照过程(3)、过程(4)进行一次运算并将结果存入Ri中。
[0098] 通过上述过程,便得到了对原始数据X进行压缩之后的数据R以及与之对应的改进测量矩阵
[0099] 由上述过程可知,节点只需均匀随机数发生器与2(a+1)×n的存储空间,空间复杂度降低;对原始信号的测量过程也由矩阵乘法降为加法,时间复杂度降低;将测量矩阵的产生与数据感知测量的过程结合起来,效率更高。
[0100] 簇头处理流程
[0101] 分布式压缩感知理论认为对多个信号或数据,可利用他们的时域稀疏性和空间域相关性构造联合稀疏模型,进行联合编码与联合解码恢复,这样会比独立对信号进行处理具有更优的能耗特性,也能更好的恢复出原始信号。
[0102] 由于簇内各节点在地理位置上具有连续性,因此可认为各节点所采集目标数据也具有一定的相关性。本发明方案将簇内各节点数据分解为全体节点都包含的共同部分和各自特有的独立部分。在每个上传周期之内假定簇头缓存的簇内第i个传感器节点的数据为Xi=[xi1,xi2,…,xin],其中Xi=[xi1,xi2,…,xin]为第i个簇内节点按照一定时间间隔顺序采集的数据,那么该时间段内,簇头缓存的所有数据为X=[X1,X2,…,Xn],n为簇内节点数目。由于并非每个簇内节点在每个采样周期都会向簇头发送感知数据,这就相应降低了簇内通信开销。
[0103] 下面结合图6对簇内节点数据传输方法进行说明:
[0104] S101)根据历史数据确定预测模型参数,对偏移次数k和偏移阈值j进行初始化,并向簇头节点传输该预测模型参数,以使簇头节点根据预测模型参数和时间计算出预测数据并将其存储到该节点所对应的数据缓存中;所述预测模型为预先根据历史数据进行曲线拟合获得的;
[0105] S102)采集数据,将采集到的当前实际数据与按照预测模型参数获得的当前预测数据进行比较;
[0106] S103)若将当前实际数据与预测数据之差ε′小于等于误差门限ε,则缓存该实际数据,偏移阈值j加1,返回步骤S102);
[0107] S104)若将当前实际数据与预测数据之差ε′大于误差门限ε,则缓存该实际数据,偏移次数k加1,偏移阈值j减半,并向簇头节点传输该实际数据;且将偏移次数k与偏移阈值j进行比较,若k≥j,返回步骤S101);若K
[0108] 具体而言,在常见的分簇路由结构无线传感器网络中,簇内节点作为网络末梢通常只负责采集监测区域内的目标信息数据并向其中继节点发送,簇内节点只用对自己负责不需要同区域内的相邻簇内节点通信。通过对常见的温度、湿度等环境对象进行分析可知,这类环境数据通常呈现周期性变化特征,而且在一定时间段内呈现出线性变化规律,即节点所采集环境数据与时间之间具有线性关系。簇内节点在一段时间内所采集环境数据与时间线性相关,那么可以把时间看作自变量,对应的数据作为因变量,利用线性回归模型来构造预测函数来模拟两者动态变化的关系。
[0109] 定义时间序列为簇内节点按时间顺序采样、具有一定时间间隔的时间数据对集合,记为S={(t1,y1),(t2,y2),…,(tn,yn)}。其中(tn,yn)表示在时间ti时刻采集的数据为yi,n为序列长度。利用节点的计算存储能力建立动态调整的分段线性预测模型来对采数据数进行逼近估计。
[0110] 初始化阶段包括了网络分簇路由结构的建立过程,簇内节点在这个阶段与簇头节点建立连接关系,并接收控制信息,包括但不限于误差门限ε、偏移阈值j、缓存长度、采集目标、采集周期、数据上传周期等。
[0111] 随后簇内节点进入到数据采集传输阶段,该阶段可以细化为构建预测模型、数据传输与模型调整步骤,如图5所示,根据历史数据建立预测函数,通过预测函数得到预测值并进行判断,之后,根据判断结果传输数据并记录状态,根据预测值与传输数据进行误差分析并更新时间序列。
[0112] 预测模型建立
[0113] 考虑节点计算存储能力受限,在簇内节点建立一元线性预测模型:
[0114] y′=αt+β
[0115] 其中,t表示采样时间点,y′为对应时刻的预测值,(α,β)为常数。
[0116] 根据缓存长度,节点以相同间隔t0将连续N个采样存入到缓存序列中,利用缓存序列内的数据计算出参数(α,β),簇内节点将参数发送给簇头节点,其随后所采集的数据应沿时间轴分布在预测函数附近。
[0117] 数据传输与模型调整
[0118] 在每次数据采集传输过程中,节点计算实际采集数据y与预测估计值y′之间的差值ε′,将其与预设误差门限ε进行比较,当采集数据变化缓慢时,即ε′<ε,簇内节点不传输该次数据,簇头根据已有预测模型参数计算出该时间点的近似数据;当感知数据变化剧烈时,即ε′>ε,则实时地将该次数据发送给簇头。
[0119] 节点会在数据传输的同时监测自身数据变化情况,若预测模型长期偏离真实采样,说明参数已不适用,需进行调整。将误差ε′超过门限值ε的次数与偏移阈值进行比较来决定参数是否需要调整。偏移阈值不为定值,在进行每次比较时如果预测值满足要求,则将偏移阈值加1,否则将偏移阈值减半。
[0120] 为了防止“假死节点”的产生,在时间周期T(T=t0×N)内,簇内节点需强制向簇头节点发送一次数据。为了使每次计算出的新参数满足当前状态,需要对时间序列进行实时更新操作,所以在节点软件设计上,维持一个缓存空间存储时间序列。随着数据采集的进行,假设当前时刻的模型参数为(α,β),缓存序列为Sc,模型偏移次数为k,偏移阈值为j,数据传输与模型调整方法如下:
[0121] 步骤1:
[0122] 节点采集数据yn,根据时间点tn与参数(α,β)计算预测数据y′n与预测误差ε′[0123] if(ε′<ε)
[0124] 将yn加入到队列Sc队尾,若Sc长度已满,去掉队列头;
[0125] j=j+1;
[0126] 转至步骤1
[0127] if(ε′>ε)
[0128] 将yn加入到队列Sc队尾,若Sc长度已满,去掉队列头;
[0129] k=k+1;
[0130] j=j/2;
[0131] 节点发送感知数据;
[0132] if(k≥j)
[0133] 转至步骤2;
[0134] 步骤2:
[0135] k=0;
[0136] j=1;(当然,该偏移阈值j也可以初始化为任何不为0的常数)
[0137] 根据最小二乘法,利用Sc中的数据计算新参数(α,β),并将其发送给簇头节点,转至步骤1。
[0138] 通过本发明方案所属方法,簇内节点可对采集数据进行预测模拟,无需发送全部采集数据,从而有效减少了数据发送量、降低了能量消耗、延长了节点工作寿命。
[0139] 下面以农业物联网应用为例对本发明进行说明,在大型农田应用场景中,需要掌握农作物的生长环境状态来实现更科学的农作物培育。一般需通过无线传感器节点收集温度、湿度、光照等数据为科学施肥、高效灌溉提供数据支持,实现绿色农业。
[0140] 在这类应用场景对温湿度等环境参数数据的精度要求不会过高,可以有一定的误差容忍。由于放置于农田中的传感器节点采用电池或太阳能供电的方式,且节点成本不宜过高,因此其能量及计算存储能力有限。采用本发明方案,可以在满足应用需求的前提下,降低数据传输带来的能量消耗,延长农田中各节点的工作时间,节约生产成本。
[0141] 用户通过终端来确定需要监测的目标对象,并获取由传感器节点采集的目标农田内的对象数据,这些目标对象包括但不限于温度、湿度、光照强度、土壤中某物质浓度等。具体应用过程如下:
[0142] ①目标区域内的传感器节点完成分簇结构的构造过程,并完成簇间路由建立;传感器节点向汇聚节点汇报自己的位置信息、ID等
[0143] ②每个簇头节点均为该簇内所有节点构造缓存空间。
[0144] ③用户向汇聚节点发送控制信息,包括但不限于采集目标、采集时间间隔、上传周期、数据误差门限、簇头节点轮换周期、节点时间序列长度等。
[0145] ④汇聚节点将控制信息发送给各传感器节点,并向用户终端反馈节点信息。
[0146] ⑤传感器节点开始数据采集,每个节点根据时间序列长度利用最初的采集数据构造预测模型参数,将参数发送给簇头节点。随后按照前文所述簇内节点处理机制,根据预设的误差门限考试数据采集发送工作。
[0147] ⑥簇头节点保持接收簇内数据,并在每个上传周期时刻到达时,按照簇头处理机制对簇内数据进行聚合压缩处理,并将其沿簇间路由发送给汇聚节点。
[0148] ⑦汇聚节点接收到数据之后,既可以立即发送给到用户端,由用户端进行还原恢复;也可以在汇聚节点进行解压还原之后再将其发送到用户端。
[0149] ⑧每经过一个簇头轮换周期,目标区域的无线传感器网络需要进行簇头重新选举,使得能量均匀消耗。
[0150] ⑨用户可以根据具体需求调节误差门限等控制参数。
[0151] 下面根据图7,对本发明的一种数据接收装置进行说明,该数据接收装置应用于分簇结构中的簇头节点,所述分簇结构中还包括簇内节点。该数据传输装置包括数据获取模块201和聚合压缩处理模块202;
[0152] 其中,数据获取模块201,用于获得簇内节点数据;
[0153] 其中,聚合压缩处理模块202,用于对数据获取模块内的数据进行聚合压缩处理,其中,所述聚合压缩处理模块202包括数据缓存单元2021、联合稀疏处理单元2022、压缩感知处理单元2023;
[0154] 其中,所述数据缓存单元用于接收簇内各节点上传的数据,并对每个簇内节点以独立的缓存空间进行数据缓存;
[0155] 其中,所述联合稀疏处理单元用于将各簇内节点数据分解为共同部分和独立部分,获得分解结果集合;
[0156] 其中,所述压缩感知处理单元用于对分解结果集合中的各分量数据分别进行压缩感知处理,获得最终的压缩聚合结果集合与测量矩阵集合。
[0157] 由上述实施例可见,本发明方案针对无线传感器网络应用中节点资源受限的情况,基于现有的分簇路由结构,提出了一种能量有效的数据传输方法。针对簇内成员节点,利用预测模型对节点数据进行预测逼近,抑制节点数据传输从而降低能量消耗。针对簇头节点,通过改进的压缩感知方法对簇内数据进行联合压缩处理,降低簇头的数据传输量。本方案能够在满足应用需求前提下有效的降低网内数据传输量,从而降低节点能量消耗,延长网络生命周期。
[0158] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0159] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0160] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。