一种对无线传感器网络中感知数据的精确查询方法

文档序号:7801831阅读:271来源:国知局
一种对无线传感器网络中感知数据的精确查询方法
【专利摘要】本发明公开了一种对无线传感器网络中感知数据的精确查询方法,包括如下步骤:基站向网络传感器节点发送查询信息;网络传感器叶节点采集感知数据生成直方图数据结构并发送至中间节点;中间节点融合叶点的直方图数据并发送至上游节点,直至基站收到所有中间节点的直方图数据;基站合并所有直方图数据并计算查询结果。本发明利用直方图数据结构来存储区域内节点感知数据分布,通过多轮搜索来提高查询精度。
【专利说明】一种对无线传感器网络中感知数据的精确查询方法
【技术领域】
[0001]本发明涉及一种对无线传感器网络中感知数据的查询方法,特别涉及一种对无线传感器网络中感知数据的精确查询方法,属于无线传感器网络数据处理【技术领域】。
【背景技术】
[0002]随着通信、传感器制造、嵌入式计算的日益成熟,大规模无线传感器网络技术迅速发展并被广泛应用,包括栖息地的监测,定位,跟踪和库存管理。无线传感器网络就是由部署在监测区域内大量的廉价微型传感器节点组成,通过无线通信方式形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中被感知对象的信息,并发送给观察者。
[0003]典型的无线传感器网络由大量微型传感器节点组成,它们能够在恶劣及危险环境中迅速展开,并通过无线自组成网络,不受现有有线网络基础设施的限制。感知数据通过无线通信以多跳中继方式汇集到数据处理中心。在这些应用中,传感器通常部署在大面积获得各种参数的测量。用户可以通过发出各种查询,来进行遥感数据收集和分析。这样的一类查询大致可以分为两类:非全局查询和全局查询。非全局查询指的是,对于在集合S上的任意一个查询Q,有这样一个函数f,使得对于S=S1 U S2,有Q(S) =f (Q(S1) ,Q(S2))。反之,如果不存在这样的函数,那么这个查询就是全局的查询。
[0004]一般来说,非全局查询返回一个单一的数值结果,例如平均数,总和等。此外,这一类查询是可分解的,所以中间节点可以对收集的数据进行计算合并,而不会产生任何信息损失。全局查询在传感器应用中非常重要,例如,当传感数据受到噪声扰动时,此时,取得监测区域中位数比平均数将更有意义,因为噪音在很大程度上会影响平均的结果,而且全局查询可以得到近似的数据分布。
[0005]现有的一个直接的方法来得到全局查询的结果是将所有传感器的数据都收集到基站进行检索,但是,这种方法非常耗费资源,是不节能的。现有另外一种叫做Q-digest方法用基于数据桶的存储结构来解决分位数查询,当消息长度设置为m的时候,Q-digest保证达到一个和m相关的误差边界。但是此方法存在有不确定误差的缺陷,并不能精确计算出查询结果。

【发明内容】

[0006](一)要解决的技术问题
[0007]本发明要解决的技术问题是:再不耗费资源的前提下提高查询精度。
[0008](二)技术方案
[0009]为解决上述技术问题,本发明提供了一种对无线传感器网络中感知数据的精确查询方法,包括如下步骤:
[0010]基站向网络传感器节点发送查询信息;
[0011]网络传感器叶节点采集感知数据生成直方图数据结构并发送至中间节点;[0012]中间节点融合叶点的直方图数据并发送至上游节点,直至基站收到所有中间节点的直方图数据;
[0013]基站合并所有直方图数据并计算查询结果。
[0014]其中较优地,所述网络传感器叶节点采集感知数据生成直方图数据结构并发送至中间节点的步骤进一步包括:
[0015]叶子节点采集感知数据;
[0016]建立一个只包含一个数据桶的直方图数据结构;
[0017]将采集的感知数据存入数据桶;
[0018]将数据发送至所述叶子节点的父节点。
[0019]其中较优地,所述中间节点融合叶点的直方图数据并发送至上游节点的步骤进一步包括:
[0020]中间节点接收所有子节点的直方图数据结构;
[0021]合并相同数据范围的数据桶,累加数据数目;
[0022]发送至当前中间节点的父节点。
[0023]其中较优地,所述计算查询结果的步骤进一步包括:
[0024]确定要查询的输出结果;
[0025]确定初始查询值;
[0026]当查询值小于输出结果时累加直方图数据结构中的数据数目;
[0027]直至查询值大于或等于查询输出结果;
[0028]输出结果。
[0029]其中较优地,所述计算查询结果的步骤之后还包括对查询结果的精度是否符合要求的判断步骤:
[0030]如果查询结果精度符合要求,则输出查询结果;
[0031]如果查询结果精度不符合要求,则调整直方图数据结构的数据桶数据范围重新循环查询,直至查询结果符合精度要求。
[0032]其中较优地,所述调整直方图数据结构的数据桶数据范围的步骤进一步包括:
[0033]当中位数的值转移到焦点窗口之外时,通过活动窗口提炼方法和分层提炼方法重新获得焦点窗口。
[0034]其中较优地,所述滑动窗口提炼方法进一步包括:
[0035]向查询值移动的方向移动焦点窗口 ;
[0036]移动长度为焦点窗口的长度;
[0037]合并非焦点窗口的数据桶;
[0038]细分焦点窗口的数据值。
[0039]其中较优地,所述分层提炼方法进一步包括:
[0040]粗略定位焦点窗口 ;
[0041]细分焦点窗口 ;
[0042]滑动焦点窗口查询确切值。
[0043]其中较优地,所述调整直方图数据结构的数据桶数据范围的步骤进一步包括:
[0044]按照数据集的范围将数据按数据桶个数均等分份;[0045]细分焦点窗口所在的数据桶,合并焦点窗口之外的数据桶;
[0046]移动焦点窗口 ;
[0047]如此循环,直至焦点窗口所在数据桶覆盖数据长度为I。
[0048](三)有益效果
[0049]本发明提供的对无线传感器网络中感知数据的精确查询方法,利用直方图数据结构来存储区域内节点感知数据分布,通过多轮搜索来提高查询精度。
【专利附图】

【附图说明】
[0050]图1是本发明查询方法流程示意图;
[0051]图2是本发明网络传感器节点网络拓扑结构示意图;
[0052]图3是本发明一个直方图数据结构实施例示意图;
[0053]图4是本发明合并两个F-Buckets结构示意图;
[0054]图5是本发明初始循环范围提炼方法示意图;
[0055]图6是本发明滑动窗口提炼方法示意图;
[0056]图7是本发明分层提炼方法示意图。
【具体实施方式】
[0057]下面结合附图和实施例,对本发明的【具体实施方式】作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0058]如图1所示,本发明提供一种对无线传感器网络中感知数据的精确查询方法,具体包括如下步骤:基站向网络传感器节点发送查询信息;网络传感器叶节点采集感知数据生成直方图数据结构并发送至父节点;父前节点融合叶点的直方图数据并发送至上游节点,如此直至基站收到所有子节点的直方图数据;基站合并所有直方图数据并计算查询结果。下面对本发明提供的查询方法展开详细的说明。
[0059]首先,介绍基站向网络传感器节点发送查询信息的步骤。
[0060]当用户需要在一定的网络传感区域获取一定的数据时,用户需要通过基站向当前网络传感区域中的网络传感器节点发送查询消息,网络传感器节点接收到查询消息后,采集用户所需要的数据。
[0061]其次,介绍网络传感器叶节点采集感知数据生成直方图数据结构并发送至中间节点的步骤。
[0062]如图2所示,在本发明提供的对无线传感器网络中感知数据的精确查询方法中,优选采用树状路由拓扑。根节点表示基站(Sink),树中每一个结点表示一个网络传感器节点(Sensor)。叶子节点对用户所需数据查询时,叶子节点首先感知数据,然后建立一个只包含一个数据桶的直方图数据结构,将自己采集的感知数据存入该数据桶,然后把这个数据通过无线方式发送给自己的父节点。具体地,以中位数查询为例,举例说明。
[0063]本发明使用直方图数据结构汇总结构存储网络的数据值的分布。如图3所示,在本发明中,当前网络传感区域中一共有η个网络传感器,每个网络传感器是一个网络传感器节点。η个网络传感器采集的数据组成一个数据集S,其中数据集的范围记为记为[I, σ ] ο直方图数据结构表示为F-Bucket,在F-Bucket中的每个数据桶(bucket)代表一个数据范围,并记录这个范围内包含的数据值个数(count值)。一个直方图数据结构(F-Bucket) F包含若干的三元组,其中,一个三元组为一个数据桶。这个直方图数据结构(F-Bucket)F 可以表示为 F= {B0, B1,..., Bi,..., Bm_J 和 Bi=Onin, max, count),其中 m 表示数据桶的数量。每个数据桶Bi表示一个范围[B1.min, B1.max],变量B1.count记录在这个范围内的传感器读数个数。数据桶之间的数据范围是连续的,既B1.max+l=Bi+1.min。F-Bucket可以变化,每个bucket的数据范围并不固定,会依据每一轮的查询结果进行调整。为了减小传输的字节,子节点向父节点发送数据时,消息中不必包含整个F-Bucket,而只需包含那些计数不为O的数据桶的信息。当用户查询中位数时,收到查询信息的叶子节点采集感知数据。叶子节点建立一个只包含一个数据桶(bucket)的直方图数据结构(F-Bucket),将当前自己采集的感知数据存入该数据桶(bucket)。然后通过无线传感器网络传送至当前页子节点的父节点。
[0064]再次,介绍中间节点融合叶点的直方图数据并发送至上游节点,直至基站收到所有中间节点的直方图数据的步骤。
[0065]在当前的无线传感器网络区域中,中间网络传感器节点(简称中间节点)也采集感知数据,中间节点生成数据值(V)。中间节点新建一个直方图数据结构(F-Bucket)Fv。无线传感器网络中的中间网络传感器节点接收到所有子节点的直方图数据结构(F-Bucket),并将这些直方图数据结构(F-Bucket)中的数据合并到一个直方图数据结构(F-Bucket),然后发送至自己的父节点。按照此方法直至所有中间节点的直方图数据结构均发送至基站。中间节点对叶节点的直方图融合的过程具体如方法I所述,方法I描述了中间节点进行的操作。
[0066]
【权利要求】
1.一种对无线传感器网络中感知数据的精确查询方法,其特征在于,包括如下步骤: 基站向网络传感器节点发送查询信息; 网络传感器叶节点采集感知数据生成直方图数据结构并发送至中间节点; 中间节点融合叶点的直方图数据并发送至上游节点,直至基站收到所有中间节点的直方图数据; 基站合并所有直方图数据并计算查询结果。
2.如权利要求1所述的查询方法,其特征在于,所述网络传感器叶节点采集感知数据生成直方图数据结构并发送至中间节点的步骤进一步包括: 叶子节点采集感知数据; 建立一个只包含一个数据桶的直方图数据结构; 将采集的感知数据存入数据桶; 将数据发送至所述叶子节点的父节点。
3.如权利要求1所述的查询方法,其特征在于,所述中间节点融合叶点的直方图数据并发送至上游节点的步骤进一步包括: 中间节点接收所有子节点的直方图数据结构; 合并相同数据范围的数据桶,累加数据数目; 发送至当前中间节点的父节点。
4.如权利要求1所述的查询方法,其特征在于,所述计算查询结果的步骤进一步包括: 确定要查询的输出结果; 确定初始查询值; 当查询值小于输出结果时累加直方图数据结构中的数据数目; 直至查询值大于或等于查询输出结果; 输出结果。
5.如权利要求1所述的查询方法,其特征在于,所述计算查询结果的步骤之后还包括对查询结果的精度是否符合要求的判断步骤: 如果查询结果精度符合要求,则输出查询结果; 如果查询结果精度不符合要求,则调整直方图数据结构的数据桶数据范围重新循环查询,直至查询结果符合精度要求。
6.如权利要求5所述的查询方法,其特征在于,所述调整直方图数据结构的数据桶数据范围的步骤进一步包括: 当中位数的值转移到焦点窗口之外时,通过活动窗口提炼方法和分层提炼方法重新获得焦点窗口。
7.如权利要求6所述的查询方法,其特征在于,所述滑动窗口提炼方法进一步包括: 向查询值移动的方向移动焦点窗口; 移动长度为焦点窗口的长度; 合并非焦点窗口的数据桶; 细分焦点窗口的数据值。
8.如权利要求6所述的查询方法,其特征在于,所述分层提炼方法进一步包括: 粗略定位焦点窗口;细分焦点窗口; 滑动焦点窗口查询确切值。
9.权利要求5所述的查询方法,其特征在于,所述调整直方图数据结构的数据桶数据范围的步骤进一步包括: 按照数据集的范围将数据按数据桶个数均等分份; 细分焦点窗口所在的数据桶,合并焦点窗口之外的数据桶; 移动焦点窗口; 如此循环,直 至焦点窗口所在数据桶覆盖数据长度为I。
【文档编号】H04W24/04GK103945439SQ201410160802
【公开日】2014年7月23日 申请日期:2014年4月21日 优先权日:2014年4月21日
【发明者】刘克彬, 刘云浩 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1