一种分簇无线传感器网络数据收集方法及装置与流程

文档序号:11525066阅读:250来源:国知局
一种分簇无线传感器网络数据收集方法及装置与流程

本发明涉及通信技术领域,更具体地,涉及一种分簇无线传感器网络数据收集方法及装置。



背景技术:

目前,无线传感器网络被广泛应用于环境监测、军事探测等重要的应用场景。无线传感器网络利用网络中分布的传感器节点采集和检测各种环境或者对象信息;通过数据收集方法将采集得到的数据传送给基站,由基站对采集得到的数据进行集中处理。数据收集过程会产生大量的数据传输量和数据传输次数,是网络高能耗的主要原因,因此,必需在无线传感器网络中设计一个低能耗的数据收集方法。

压缩感知理论的基本思想为利用测量矩阵将高维信号映射为低维信号,如果该高维信号在某变换域是稀疏的,或者可压缩的,且测量矩阵满足有限等距性质(rip)条件,那么,可利用获得的低维信号精确地恢复出高维信号。目前研究表明,密矩阵(包括高斯随机矩阵)和稀疏矩阵(包括块对角矩阵、膨胀图的邻接矩阵)在一定条件下满足rip条件,可作为测量矩阵。

现有技术中基于压缩感知的分簇无线传感器网络数据收集方法利用基于高斯随机矩阵和块对角矩阵的压缩感知编码方法压缩采集得到的数据生成数据包,将数据包传递给基站,基站利用收到的数据包恢复原数据,降低了网络能耗。相对于高斯随机矩阵,基于块对角矩阵的数据收集方法只需压缩少量传感器节点采集的数据生成一个数据包,降低了数据传输次数,但是要获得与高斯随机矩阵相同的恢复性能,需要传递更多的数据包,增大了数据传输量。

综上所述,基于压缩感知的分簇无线传感器网络数据收集方法还有待进一步提升,迫切需要一种基于稀疏矩阵的低能耗数据收集方法。



技术实现要素:

本发明提供一种克服上述问题或者至少部分地解决上述问题的分簇无线传感器网络数据收集方法及装置。

根据本发明的一个方面,提供一种分簇无线传感器网络数据收集方法,包括:

s1,在分簇无线传感器网络初始化时,各簇头生成第一随机种子和第二随机种子,并将所述第一随机种子和第二随机种子发送给基站;

s2,通过随机游走路径收集少数簇的测量数据,并在所述随机游走路径的终点汇聚成数据包后发送给基站;所述测量数据为从所述簇的全部数据中根据所述第一随机种子随机抽取得到的部分数据;

s3,所述基站根据接收的数据包、各簇头的第一随机种子和第二随机种子构建测量矩阵,利用所述测量矩阵根据接收的数据包恢复无线传感器网络采集的全部数据。

根据本发明的另一个方面,还提供一种分簇无线传感器网络数据收集装置,包括:

初始化模块,用于在分簇无线传感器网络初始化时,各簇头生成第一随机种子和第二随机种子,并将所述第一随机种子和第二随机种子发送给基站;

数据收集模块,用于通过随机游走路径收集少数簇的测量数据,并在所述随机游走路径的终点汇聚成数据包后发送给基站;所述测量数据为从所述簇的全部数据中根据所述第一随机种子随机抽取得到的部分数据;以及

数据恢复模块,用于所述基站根据接收的数据包、各簇头的第一随机种子和第二随机种子构建测量矩阵,利用所述测量矩阵根据接收的数据包恢复无线传感器网络采集的全部数据。

本发明提出一种分簇无线传感器网络数据收集方法及装置,通过随机游走路径收集和压缩其经过的簇头所在簇中的部分数据,通过随机采样选择所述的簇中的部分数据;为构建稀疏的测量矩阵,在无线传感器网络初始化时,各簇头生成两个随机种子并传递给基站,避免了在数据包中传输测量数据的id和簇id,有利于缩短数据包的长度而构建稀疏测量矩阵;在基站侧通过稀疏测量矩阵可以准确的恢复无线传感器网络采集的全部数据,有效的提升基于压缩感知的分簇无线传感器网络数据收集方法的恢复性能,降低网络能耗。

附图说明

图1为本发明实施例分簇无线传感器网络数据收集方法流程图;

图2为本发明实施例分簇无线传感器网络示意图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

如图1所示,一种分簇无线传感器网络数据收集方法,包括:

s1,在分簇无线传感器网络初始化时,各簇头生成第一随机种子和第二随机种子,并将所述第一随机种子和第二随机种子发送给基站;

s2,通过随机游走路径收集少数簇的测量数据,并在所述随机游走路径的终点汇聚成数据包后发送给基站;所述测量数据为从所述簇的全部数据中根据所述第一随机种子随机抽取得到的部分数据;

s3,所述基站根据接收的数据包、各簇头的第一随机种子和第二随机种子构建测量矩阵,利用所述测量矩阵根据接收的数据包恢复无线传感器网络采集的全部数据。

其中所述随机游走路径上的源点、接收节点和终点均为分簇无线传感器网络的簇头,所述少数簇是指所述随机游走路径经过的簇;所述第一随机种子用于确定簇头所在簇的测量数据的id,所述第二随机种子用于确定簇头所在簇的id。

本实施例通过随机游走路径收集和压缩其经过的簇头所在簇中的部分数据,通过随机采样选择所述的簇中的部分数据;为构建稀疏的测量矩阵,在无线传感器网络初始化时,各簇头生成两个随机种子并传递给基站,避免了在数据包中传输测量数据的id和簇id,有利于缩短数据包的长度而构建稀疏测量矩阵;在基站侧通过稀疏测量矩阵可以准确的恢复无线传感器网络采集的全部数据,有效的提升基于压缩感知的分簇无线传感器网络数据收集方法的恢复性能,降低网络能耗。

本发明具体实施的分簇无线传感器网络如图2所示,根据对网络的分簇情况,可以从逻辑上分为传感器层和簇头层。

在传感器层,传感器节点随机均匀地分布在无线传感器网络中,且被划分成簇。传感器节点能够应用功率控制机制依据传输距离调节传输功率。在簇内传输数据时,各传感器节点的最大传输距离被定义为簇半径。

采用高能效的分布式分簇算法(heed)将传感器节点划分成若干簇。因为通常单位比特信息的感知、处理和通信所消耗能量是已知的,所以,heed算法利用估计得到的各个传感器节点的剩余能量进行分簇。在heed算法初始化时,各个传感器节点利用概率chp=cperes/e0判断自己是否为临时簇头,其中,cp表示判断能否为临时簇头的初始概率,eres表示估计的剩余能量,e0表示初始能量。heed算法定义了平均最小可达功率(amrp),即在临时簇头的簇半径范围内的全部传感器节点到临时簇头的均方距离。heed算法进一步利用amrp进行分簇。各个传感器节点比较在其簇半径范围内的全部临时簇头的amrp,选择amrp最小的临时簇头为其最终所属的簇头。利用heed算法进行分簇后,两个簇头在彼此的簇半径范围内的概率很小,所以,利用heed算法获得的簇头以高概率服从均匀分布。

在无线传感器网络初始化时,传感器节点通过gps能够获知各自的位置信息。通过信息交互,簇头能够获知簇中传感器节点的标识id和位置信息,簇中传感器节点能够获知其簇头的位置信息,簇头能够获知其邻居节点的标识id和位置信息。

在簇头层,某簇头的一跳传输范围内的其他簇头被称为该簇头的邻居节点,其中所述一跳传输范围足够大,使得各个簇头都有邻居节点。本实施例中所述随机游走路径发生在簇头层,所经过的节点都是簇头,通过簇头随机抽取簇内其他传感器节点的数据进行汇聚,在所述随机游走路径的终点发送汇聚生成的数据包给基站。

本实施例中,在无线传感器网络初始化时,建立了由各簇头通向基站的最小生成树路径。

为解决现有技术问题,本实施例中,在无线传感器网络初始化时,各簇头生成两个随机种子并传递给基站,其中一个随机种子用来确定被随机抽取的数据的标识id,另一个随机种子用来确定在随机游走路径上的簇头所在簇的标识id,避免了在数据包中加入所述的标识id,有利于缩短数据包的长度。

在一个实施例中,所述s2中进一步包括:

s2.1,基于所述分簇无线传感器网络的各簇头,确定所述随机游走路径的源点,并根据所述源点所在簇的第一随机种子获取所述源点所在簇的测量数据生成数据包;

s2.2,根据所在簇的第二随机种子,从邻居节点中选择一个簇头为接收节点,向所述接收节点发送所述数据包;

s2.3,所述接收节点接收到所述数据包后,利用所述接收节点所在簇的测量数据更新所述数据包;

s2.4,当所述接收节点为所述随机游走路径的终点时,将所更新的数据包发送给基站;否则重复步骤s2.2、s2.3和s2.4。。

本实施例中,所述数据包中测量值是少数簇中的部分数据之和,所述少数簇是指所述随机游走路径经过的簇,即所述少数簇的簇头构成了所述的随机游走路径,所述部分数据由所述的少数簇的簇头从所述簇的全部数据中随机抽取得到。通过一条随机游走路径生成一个数据包,为获得能够实现精确恢复的足够数量的数据包,则需建立相应数量的相互独立的随机游走路径;假设有m条独立的随机游走路径,则可获得m个数据包,通过m个数据包的数据进行分析汇总,即可实现传感器网络数据的精确恢复。所述随机游走路径及随机抽取示意图请参考图2。

本实施例中,从各簇头中选择随机游走路径的源点,部分源点为确定的簇头,部分源点为随机选择的簇头;一条随机游走路径上,从源点开始,经过0个、1个或多个接收节点,到达终点,完成一次数据收集。源点生成数据包并利用随机抽取得到的部分数据初始化数据包;源点作为一跳的发送节点将数据包发送给这一跳的接收节点;接收节点利用随机抽取得到的部分数据更新数据包;接收节点作为下一跳的发送节点周期性地重复下一跳的选择和数据包的更新,直到到达了随机游走路径的终点,则在终点处数据包汇聚了所述随机游走路径上的部分数据,所述终点通过最小生成树路径发送数据包给基站。

本实施例中,当不同随机游走路径经过同一个簇头时,该簇头为各随机游走路径分别选择接收节点,即选择的接收节点不一定相同。

在一个实施例中,所述s3进一步包括:

s3.1,基于各簇头的第一随机种子,利用伪随机数生成器确定各簇的测量数据的id;基于各簇头的第二随机种子和所述接收的数据包中源点所在簇的id,确定所述随机游走路径上的各簇头所在簇的id;

s3.2,基于所述各簇的测量数据的id和所述随机游走路径上的各簇头所在簇的id,构建测量矩阵b;

s3.3,利用所述测量矩阵b从所述接收的数据包中恢复无线传感器网络采集的全部数据。

其中所述的随机游走路径终点处数据包中测量值ym可表示为:

其中,ωm表示第m条随机游走路径上的簇头所在簇的id集合,i∈ωm;|ωm|≤t,t为第m条随机游走路径的步长;1≤m≤m,m为随机游走路径总数;xi表示第i个簇的全部数据;表示第i个簇中第g个数据xi,g是否被抽取;所述测量矩阵b由所述数据中的行向量组成。

本实施例中,基站通过接收到的各簇的随机种子及各随机游走路径收集的数据包,构建测量矩阵,通过压缩感知恢复算法得到整个网络传感器节点采集的数据,所述的压缩感知恢复算法为l1优化算法,例如dantzigselector算法和基追踪降噪算法等。

在一个实施例中,s2.1中所述确定所述随机游走路径的源点进一步包括:

基于随机游走路径总数m,按第一源点法或第二源点法确定源点;

所述随机游走路径总数m=minc+mr,其中,nc为所述分簇无线传感器网络的簇总数,mi和mr是正整数,0≤mr≤nc-1;

所述第一源点法为:对于所有随机游走路径,从nc个簇头中随机选择一个簇头作为所述随机游走路径的源点;

所述第二源点法为:对于minc条随机游走路径,令mi条游走路径为一组,一组游走路径选择一个相同的簇头作为源点,nc组游走路径选择互不相同的簇头作为源点;对于mr条随机游走路径,从nc个簇头中随机选择一个节点作为源点。

本实施例可以采用两种方法确定随机游走路径的源点,当m<nc时,可以使用所述第一源点法。假设无线传感器网络被分成4个簇,即包括4个簇头,在利用2条随机游走路径收集数据的情况下,从4个簇头中随机选择2个簇头作为源点。

当m≥nc时,可以使用所述第二源点法,假设无线传感器网络被分成4个簇,即包括4个簇头,在利用6条随机游走路径收集数据的情况下,4个簇头分别被选为4条随机游走路径的源点,再从4个簇头中随机选择2个簇头作为其他2条随机游走路径的源点。在m≥nc时,相对于第一源点法,第二源点法能够实现源点的均匀分布。

在一个实施例中,s2.1中所述生成数据包进一步包括:

令第i个簇头被选为源点,表示为vi′。以概率q随机从所述源点的数据xi中抽取部分数据生成数据包r(m);所述数据包r(m)包括:

r(m).a1=t,为跳数计数值,其中t为所述随机游走路径的步长;

r(m).a2=i,为所述源点所在簇的id;以及

为所述源点通过随机抽取所得测量数据的和,其中,xi为列向量,表示簇头vi′所在簇的全部数据;为行向量,表示所述随机游走路径经过簇头vi′时数据xi被抽取的状态。

本实施例中,所述数据包由三部分组成,即跳数计数值即r(m).a1、源点所在簇的id即r(m).a2和测量值即r(m).a3。

其中所述跳数计数值为随机游走路径的步长t,在随机游走过程中被逐渐减小,当其值将为1时,到达随机游走路径的终点;所述的源点所在簇的id被基站用来构建测量矩阵;其中所述测量值为源点随机抽取得到的部分数据的和;

本发明实施例中,m条游走路径的源点采用相同的方法生成数据包并初始化数据包,下面以第m条游走路径为例进行详细说明一个数据包的生成过程。令vi′表示第i个簇的簇头,且vi′是第m条游走路径的源点。

本实施例中,第m条游走路径源点生成的数据包表示为r(m)。在数据包中,r(m).a1=t表示跳数计数值,其初始值为随机游走的步长t,r(m).a2=i表示源点所在簇的id。

其中r(m).a1在随机游走路径上传输数据包的过程中被逐渐减小,当r(m).a1=1时,到达随机游走路径的终点。

其中r(m).a2被传递到基站,基站利用r(m).a2和收到的随机种子可得到在m条随机游走路径上所有簇头所在簇的id。

本实施例中,令列向量xi表示第i个簇的全部数据,源点vi′从数据xi中以概率q随机抽取部分数据。令行向量表示第m条随机游走路径经过簇头vi′时数据xi被抽取的状态,bi,g=1表示簇中第g个数据xi,g被抽取,否则,bi,g=0。在数据包中,测量值的初始值为簇头vi′随机抽取得到的部分数据的和,表示为

在一个实施例中,对于源点相同的随机游走路径,所述源点为各随机游走路径抽取的测量数据相同或者不相同。

在一个实施例中,s1.3中所述更新所述数据包进一步包括:

更新跳数计数值为r(m).a1=r(m).a1-1;

更新测量值为其中,xj为列向量,表示簇头vj′所在簇的全部数据;为行向量,表示所述随机游走路径经过簇头vj′时数据xj被抽取的状态。

本实施例中,更新的数据为所述数据包中的跳数计数值r(m).a1和测量值r(m).a3,其中所述跳数计数值在经过一跳数据传输时被减1;所述测量值被加入一跳接收节点中随机抽取得到的部分数据的和,优选的,此处的抽取方法与源点随机抽取数据的方法相同。

本实施例中,m条游走路径采用相同的方法更新数据包,以第m条游走路径为例进行详细说明。令vj′表示第j个簇的簇头,且vj′为接收节点。令列向量xj表示第j个簇的全部数据。

具体地,跳数计数值被更新为r(m).a1=r(m).a1-1,表示完成了一跳的数据传输。

测量值被更新为表示簇头vj′获得的xj中部分数据被加入到数据包的测量值里。

具体的,s1.3中,仅当随机游走路径第一次经过接收节点时,接收节点更新所述数据包。

根据以上更新方法,当一个随机游走路径从源点经过接收节点到达终点时,数据包中测量值可表示为:

此处随机游走路径的终点收集的数据发送给基站,则基站得到的测量值与此处相同,即ym=r(m).a3。

在一个实施例中,随机游走路径上的簇头获得测量数据的方法包括:

簇头所在簇中传感器节点将采集的数据发送给簇头,从而簇头获得了簇中的全部数据,簇头从所述全部数据中随机抽取得到部分数据作为测量数据;或者

当随机游走路径经过簇头时,簇头从所在簇的传感器节点中随机抽取部分传感器节点,并向所述部分传感器节点发送请求信息;收到所述部分传感器节点的返回数据,并将所述返回数据作为测量数据。

本实施例中,随机游走路径上的簇头可以通过两种方式获取测量数据,第一种方式是,簇中传感器主动将自己采集的数据发送给簇头,则簇头提前获得簇中的全部数据。第二种方式是,簇中传感器不会主动将自己采集的数据发送给簇头,只有当簇头向自己请求数据才将自己采集的数据发送给簇头;而簇头向传感器发送请求的触发条件是随机游走路径经过该簇头。不论是那种方式,簇头都是随机的将簇内采集的数据的一部分更新进数据包;若是第一种方式,则随机抽取全部数据中的部分数据;若是第一种方式,则是随机抽取簇中全部传感器的部分传感器,将所述部分传感器的采集数据更新进数据包。

下面通过一个具体实施例说明本发明实施例构建的测量矩阵:假设在包含4个簇的无线传感器网络中,利用步长为2的6条随机游走路经生成测量值,则测量矩阵为

其中,0表示零向量,第一个行向量中的第二个行向量中的第三个行向量中的第四个行向量中的第五个行向量中的和第六个行向量中的表示该向量由各条随机游走路径的源点生成。假设各簇内包含3个传感器节点,即无线传感器网络中共有12个传感器,则测量矩阵可进一步表示为

可见,本实施例中,测量矩阵是稀疏二元矩阵。

本实施例中,采用压缩感知编码算法进行数据收集,所述压缩感知编码算法对应稀疏二元矩阵,在特定条件下,该稀疏二元矩阵是非平衡膨胀图的邻接矩阵;其中所述的特定条件与如下参数相关:随机采样概率,随机游走步长,随机游走路径数,簇总数和传感器节点数。

所述测量矩阵与非平衡扩展图的邻接矩阵的关系可表示如下:

当随机采样的概率为q,m=o(klog(nk))条随机游走路径的步长t满足

本发明实施例构建的测量矩阵是一个(k,ò)非平衡扩展图的邻接矩阵,其中,0≤q≤1,ò>0,0<β<1。

本实施例中,基站在收到了测量值之后,需获得测量矩阵,才能恢复整个网络传感器节点采集的数据。通过伪随机数生成器利用已收到的随机种子构建测量矩阵。

具体地,基站利用各簇头提供的第一个随机种子可以确定被随机抽取的数据的标识id,从而获得利用各簇头提供的另一个随机种子和数据包中的源点r(m).a2可以确定在随机游走路径上的簇头所在簇的标识id集合,即ωm,从而,基站能够获得测量矩阵。

本发明还提供一种分簇无线传感器网络数据收集装置,包括:

初始化模块,用于在分簇无线传感器网络初始化时,各簇头生成第一随机种子和第二随机种子,并将所述第一随机种子和第二随机种子发送给基站;

数据收集模块,用于通过随机游走路径收集少数簇的测量数据,并在所述随机游走路径的终点汇聚成数据包后发送给基站;所述测量数据为从所述簇的全部数据中根据所述第一随机种子随机抽取得到的部分数据;以及

数据恢复模块,用于所述基站根据接收的数据包、各簇头的第一随机种子和第二随机种子构建测量矩阵,利用所述测量矩阵根据接收的数据包恢复无线传感器网络采集的全部数据。

在一个实施例中,所述数据收集模块进一步包括:

源点单元,用于基于所述分簇无线传感器网络的各簇头,确定所述随机游走路径的源点,并根据所述源点所在簇的第一随机种子获取所述源点所在簇的测量数据生成数据包;

游走单元,用于根据所在簇的第二随机种子,从邻居节点中选择一个簇头为接收节点,向所述接收节点发送所述数据包;

更新单元,用于所述接收节点接收到所述数据包后,利用所述接收节点所在簇的测量数据更新所述数据包;以及

汇聚单元,用于当所述接收节点为所述随机游走路径的终点时,将所更新的数据包发送给基站。

在一个实施例中,所述数据恢复模块进一步包括:

获取id单元,用于基于各簇头的第一随机种子,利用伪随机数生成器确定各簇的测量数据的id;基于各簇头的第二随机种子和所述接收的数据包中源点所在簇的id,确定所述随机游走路径上的各簇头所在簇的id;

测量矩阵单元,用于基于所述各簇的测量数据的id和所述随机游走路径上的各簇头所在簇的id,构建测量矩阵b;

恢复单元,用于利用所述测量矩阵b从所述接收的数据包中恢复无线传感器网络采集的全部数据

其中所述的随机游走路径终点处数据包中测量值ym可表示为:

其中,ωm表示第m条随机游走路径上的簇头所在簇的id集合,i∈ωm;|ωm|≤t,t为第m条随机游走路径的步长;1≤m≤m,m为随机游走路径总数;xi表示第i个簇的全部数据;表示簇中第g个数据xi,g是否被抽取;所述测试矩阵b由所述数据中的行向量组成。

所述确定所述随机游走路径的源点进一步包括:

基于随机游走路径总数m,按第一源点法或第二源点法确定源点;

所述随机游走路径总数m=minc+mr,其中,nc为所述分簇无线传感器网络的簇总数,mi和mr是正整数,0≤mr≤nc-1;

所述第一源点法为:对于所有随机游走路径,从nc个簇头中随机选择一个簇头作为所述随机游走路径的源点;

所述第二源点法为:对于minc条随机游走路径,令mi条游走路径为一组,一组游走路径选择一个相同的簇头作为源点,nc组游走路径选择互不相同的簇头作为源点;对于mr条随机游走路径,从nc个簇头中随机选择一个节点作为源点。

所述生成数据包进一步包括:

以概率q随机从所述源点所在簇的全部数据xi中抽取部分数据生成数据包r(m);所述数据包r(m)包括:

r(m).a1=t,为跳数计数值,其中t为所述随机游走路径的步长;

r(m).a2=i,为所述源点所在簇的id;以及

为所述源点通过随机抽取所得测量数据的和,其中,xi为列向量,表示簇头vi′所在簇的全部数据;为行向量,表示所述随机游走路径经过簇头vi′时数据xi被抽取的状态。

所述更新所述数据包进一步包括:

更新跳数计数值为r(m).a1=r(m).a1-1;

更新测量值为其中,xj为列向量,表示簇头vj′所在簇的全部数据;为行向量,表示所述随机游走路径经过簇头vj′时数据xj被抽取的状态。

随机游走路径上的簇头获得测量数据的方法包括:

簇头所在簇中传感器节点将采集的数据发送给簇头,从而簇头获得了簇中的全部数据,簇头从所述全部数据中随机抽取得到部分数据作为测量数据;或者

当随机游走路径经过簇头时,簇头从所在簇的传感器节点中随机抽取部分传感器节点,并向所述部分传感器节点发送请求信息;收到所述部分传感器节点的返回数据,并将所述返回数据作为测量数据。

在一个实施例中,当且仅当随机游走路径第一次经过接收节点时,所述接收节点更新所述数据包。

在一个实施例中,源点相同的随机游走路径,所述源点为各随机游走路径抽取的测量数据相同或者不相同。

综上所述,本发明通过随机游走路径收集和压缩其经过的簇头所在簇中的部分数据,通过随机采样选择所述的簇中的部分数据;为构建稀疏的测量矩阵,在无线传感器网络初始化时,各簇头生成两个随机种子并传递给基站,避免了在数据包中传输测量数据的id和簇id,有利于缩短数据包的长度而构建稀疏测量矩阵;在基站侧通过稀疏测量矩阵可以准确的恢复无线传感器网络采集的全部数据,有效的提升基于压缩感知的分簇无线传感器网络数据收集方法的恢复性能,降低网络能耗,解决了现有技术的不足。

最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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