无线传感器二维网络边界节点的判断方法与流程

文档序号:16688627发布日期:2019-01-22 18:34阅读:228来源:国知局
无线传感器二维网络边界节点的判断方法与流程

本发明涉及无线传感器网络领域,具体涉及一种无线传感器二维网络边界节点的判断方法。



背景技术:

现在,无线传感器二维网络(wsn)已经被广泛采用来收集关于感兴趣区域(roi)的物理信息。特别是在人为无法到达或者不易久待的环境恶劣的地区,只能通过布置传感器节点来进行一系列的检测,因此利用无线传感器二维网络检测信息非常重要。特别的在一些应用中,如环境观测、预报系统、动物数量检测等等,网络覆盖是非常重要的一个因素,边界检测也是十分的重要。物理覆盖代表了无线传感器二维网络的检测能力,覆盖范围是无线传感器二维网络的基本问题之一。并且通常边界检测和覆盖漏洞相关联,通常会一齐解决。即在网络内部的边界节点包围着覆盖漏洞。

在部置传感器节点时,通常有两种方式:一种是随机分布,一种是均匀分布。但是,均匀分布需要人们了解地形,以及定点去摆放节点,非常消耗时间以及精力,所以,人们在大范围的部置传感器网络的节点时,总不能很好的均匀的部置,通常会选择随机散播节点,所以节点随机的部置在感测范围内,很容易形成空白区域。并且,由于无线传感器节点一般是由电池供电,更换电池又非常麻烦,所以,当节点没有电时,或者机器存在故障时,都会导致网络形成覆盖漏洞。因此,就需要检测传感器的覆盖漏洞来确保无线传感器网路的覆盖完整性。

在区域网络中,如果点ζ的任何领域内都包含属于集合a的点,也包含不属于集合a的点,则称点ζ为集合a的一个边界点。现有的检测边界以及覆盖的方法大致可分为三类:拓扑方法、统计方法、几何方法。通常几何方法是需要了解到节点的位置坐标,并判断节点之间的距离或者角度关系来确定节点是否为边界节点。因此该方法需要传感器设备安装gps功能,十分的耗费财力资源,所以在大范围的无线网络区域,通常都不采取这种方式。统计方法通常是统计传感器节点的度,再确定一个阈值,进行比较,从而确定边界节点;总的来说,该方法是需要节点分布较为均匀,从而可以确定一个边界节点所连接的节点数,从而进行判断,所以,该方法需要节点较为均匀的分布。最后是拓扑方法,拓扑方法不需要了解节点的位置关系,也不需要节点较为均匀的分布;拓扑方法完全利用节点之间的关系,通常集中于节点的连通图给出的信息,从其拓扑结构推断出边界。但是他们通常需要节点收集大量的领域信息,需要较高的收集成本以及计算成本。

综上所述,这些方案主要存在下述的问题:1、计算成本高;2、对设备性能要求高;3、对节点分布要求高。



技术实现要素:

本发明目的在于提供一种无线传感器二维网络边界节点的判断方法,通过对无线传感器二维网络中待检测节点的一跳邻居进行成环判断,快速高效的辨别出该节点是不是二维网络的边界节点,方法实施简单。

为达成上述目的,本发明提出如下技术方案:一种无线传感器二维网络边界节点的判断方法,包括如下步骤:

(1)确定无线传感器二维网络中所有节点,并形成包含所有节点的集合u,u=[u1,u2,...,un],n为无线传感器二维网络中包含的所有节点的个数;

(2)对集合u内任意一个节点un,判断其包含的所有的一跳邻居节点,得到节点un所有一跳邻居节点的集合则集合u内所有节点的一跳邻居节点的集合记为n,

(3)在任意一个一跳邻居节点的集合中,随机选取一个一跳邻居节点作为初始节点进行深度优先搜索检测路径,并对已检测到的一跳邻居节点进行标记,直到当前节点进行深度优先搜索无法继续时,再在集合中未标记的一跳邻居节点中随机选取一个重新进行深度优先搜索检测路径,重复执行深度优先搜索过程,直至集合中所有一跳邻居节点都被标记为止;

(4)判断深度优先搜索检测到的路径情况:包括1)深度优先检索只检索到一条路径,或深度优先检索到若干条路径且若干条路径能相互连接并形成一条路径;2)深度优先检索到若干条路径,且若干路径不能相互连接形成一条路径;

(5)对深度优先搜索检测到的两种路径情况分别判断路径的首尾节点是否连接,判断路径是否形成闭合环;其中,判断情况1)中路径的首尾节点能连接,则路径形成闭合环,否则直接判断节点un是边界节点;对情况2)中所有路径分别判断各路径首尾节点是否连接,某路径的首尾节点能连接,则该路径形成闭合环;若情况2)中所有路径均不形成闭合环,则直接判断节点un是边界节点;

(6)判断闭合环环内是否包围被检测节点un,其中:闭合环包围un,表明un是内部节点,闭合环不包围un,表明un是边界节点。

进一步的,所述步骤(4)中路径的首尾节点相互连接为通讯连接。

进一步的,所述步骤(2)中任意一个节点un的一跳邻居节点的判断过程为:无线传感器二维网络中任意一个节点un发出消息,收集节点un通信半径范围内的所有一跳邻居节点的返回消息,所述返回消息包括节点身份id;节点un的所有一跳邻居节点以数组的形式存储,则得到节点un所有一跳邻居节点的集合

进一步的,所述步骤(3)中深度优先搜索检测路径的过程包括如下步骤:

(1.1)从一跳邻居节点集合中,任意挑选一个一跳邻居节点作为初始节点;

(1.2)判断该初始节点可到达的子节点,所述子节点记为在集合中,初始节点在通信半径内可通讯的所有一跳邻居节点;

(1.3)任意挑选一个子节点连通,进行标记,并以该子节点作为初始节点循环重复步骤(1.2),直至集合内初始节点的所有一跳邻居节点都被标记为止,并存储得到用数组表示的路径;

(1.4)在集合中未标记的一跳邻居节点中随机选取一个重新作为初始节点,重复步骤(1.2)和(1.3),直至集合中所有一跳邻居节点都被标记为止,存储得到若干用数组表示的路径。

进一步的,所述步骤(4)中判断若干路径是否能相互连接为一条路径的过程为:对若干路径中每一条路径的首尾节点依次进行通讯判断,若某路径的首尾两个节点中任意一个节点与其他路径中的任意节点在通信半径内通讯连接,则相互能通讯连接的两条路径连接为一条路径,依次判断所有路径。

所述步骤(6)中判断闭合环包围被检测节点un的原理在于二维平面闭合环上任意选取三个节点,其三个节点中任意两两节点,以被检测节点为顶点形成的,互不重合的夹角之和等于360°;并且,所述三个节点中任意两个节点,与不包含另一个节点的路段中的任意一个节点组成三个节点形成的,以被检测节点un为顶点的角度和始终不等于360度。

若闭合环包围被检测节点un,则必然存在至少三个节点,使得以被检测节点un为顶点,三个节点与被检测节点un所形成的角度和为360度,且所述三个节点中任意两个节点,与不包含另一个节点的路段中的任意一个节点组成三个节点形成的,以被检测节点un为顶点的角度和始终不等于360度。二维边界网络中不满足上述闭合环包围被检测节点的判断条件的,定义该节点为外部节点,依次判断所有节点。

由以上方案可知,本发明公开的无线传感器二维网络边界节点的判断方法获得了如下有益效果:

本发明的技术方案从边界节点和内部节点的定义出发,通过判断被检测节点un的邻居节点是否形成包围被检测节点un的闭合环来判断被检测节点un是否为边界节点,其中,若邻居节点形成包围被检测节点un的闭合环,则判定被检测节点为内部节点,否则为边界节点;本发明技术方案明确,计算简单。

本发明实现的基本过程采用拓扑方法,从被检测节点un寻找其邻居节点,其次邻居节点之间利用深度优先搜索算法进行环的检测,以及检测形成的环是否包围被检测节点un这一系列的过程中没有使用节点的位置坐标。本发明只需要使用节点的一跳邻居信息,相较于其他无位置的边界检测方法通常的一跳邻居信息过少,无法准确判定。本发明是仅利用一跳邻居信息,提高计算出边界节点的准确率。且节省了大量节点信息收集过程以及节点信息的计算过程,提高边界节点的判断效率。

此外,现有技术中边界节点判断利用角度之间的关系都要用到节点之间的位置坐标,但是本发明仅需要利用节点的特性,进而了解节点之间的角度关系,不需要获取位置坐标,简化方法的实施,判断效率高。

应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。

结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。

附图说明

附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:

图1为本发明系统流程图;

图2为本发明的深度优先搜索的具体模型;

图3为本发明闭合环与被检测节点的位置关系图:(a)闭合环包围被检测节点模型图,(b)闭合环不包围被检测节点模型图;

图4为判断局部路径是否连接流程图;

图5为判断闭合环是否包围被检测节点流程图;

图6为多路径转化为一条路径的示例图;

图7为判断角度和的合理性的示例图;

图8为节点包围被检测节点的两种情况;

图9为形成包围被检测节点闭合环的节点分布情况。

具体实施方式

为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。

在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定意在包括本发明的所有方面。应当理解,上面介绍的多种构思和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一种来实施,这是因为本发明所公开的构思和实施例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。

本发明旨在通过构建覆盖完好的无线传感器二维网络来进行数据采集,因此要求传感器节点均匀的覆盖在感兴趣的区域收集信息信息。基于现有技术中,通常大范围的覆盖区域,在布置节点时不容易做到均匀布置每个节点,并且,需要采集节点位置信息,要求节点均匀分布,存在信息量大和计算复杂等问题,提出一种无线传感器二维网络边界节点的判断方法,不需要依据节点的位置坐标来进行计算,且对节点分布没有任何要求,并且只需要收集节点的一跳邻居。

下面结合附图所示,对本发明的无线传感器二维网络边界节点的判断方法作进一步具体介绍,且下述说明书中小写字母a,b,c,d,e,f,g,h,i均表示一跳邻居节点的名称。

结合图1所示,一种无线传感器二维网络边界节点的判断方法,包括如下步骤:1)确定无线传感器二维网络中所有节点,并形成包含所有节点的集合u,u=[u1,u2,...,un],n为无线传感器二维网络中包含的所有节点的个数;

2)对集合u内任意一个节点un,判断其包含的所有的一跳邻居节点,得到节点un所有一跳邻居节点的集合则集合u内所有节点的一跳邻居节点的集合记为n,

3)在任意一个一跳邻居节点的集合中,随机选取一个一跳邻居节点作为初始节点进行深度优先搜索检测路径,并对已检测到的一跳邻居节点进行标记,直到当前节点进行深度优先搜索无法继续时,再在集合中未标记的一跳邻居节点中随机选取一个重新进行深度优先搜索检测路径,重复执行深度优先搜索过程,直至集合中所有一跳邻居节点都被标记为止;

4)判断深度优先搜索检测到的路径情况:包括1)深度优先检索只检索到一条路径,或深度优先检索到若干条路径且若干条路径能相互连接并形成一条路径;2)深度优先检索到若干条路径,且若干路径不能相互连接形成一条路径;其中,路径能相互连接是指路径能通讯连接;

5)对深度优先搜索检测到的两种路径情况分别判断路径的首尾节点是否连接,判断路径是否形成闭合环;其中,判断情况1)中路径的首尾节点能连接,则路径形成闭合环,否则直接判断节点un是边界节点;对情况2)中所有路径分别判断各路径首尾节点是否连接,某路径的首尾节点能连接,则该路径形成闭合环;若情况2)中所有路径均不形成闭合环,则直接判断节点un是边界节点;

6)判断闭合环环内是否包围被检测节点un,其中:闭合环包围un,表明un是内部节点,闭合环不包围un,表明un是边界节点。

上述步骤2)中任意一个节点un的一跳邻居节点的判断过程为:无线传感器二维网络中任意一个节点un发出消息,收集节点un通信半径范围内的所有一跳邻居节点的返回消息;例如节点un发送消息“hello”给一跳邻居节点,其一跳邻居节点接收到消息则进行回复,回复消息中包括节点信息,包括节点身份id等,每个节点的一跳邻居以数组的形式存储,则得到节点un所有一跳邻居节点的集合对步骤1)中其他所有节点皆按照上述操作,依次得到各节点的一跳邻居节点的集合等,将集合u内所有节点的一跳邻居节点的集合记为n,

所述步骤3)中深度优先搜索检测路径的过程包括如下步骤:(1.1)从一跳邻居节点集合中,任意挑选一个一跳邻居节点作为初始节点;(1.2)判断该初始节点可到达的子节点,所述子节点记为在集合中,初始节点在通信半径内可通讯的所有一跳邻居节点;(1.3)任意挑选一个子节点连通,进行标记,并以该子节点作为初始节点循环重复步骤(1.2),直至集合内初始节点的所有一跳邻居节点都被标记为止,并存储得到用数组表示的路径;(1.4)在集合中未标记的一跳邻居节点中随机选取一个重新作为初始节点,重复步骤(1.2)和(1.3),直至集合中所有一跳邻居节点都被标记为止,存储得到若干用数组表示的路径。

结合图2所示的具体实施例,对每个节点的邻居节点进行深度优先搜索方法实现如下:例如,当前被检测节点un的所有一跳邻居节点以数组的形式存储为[a,b,c,d,e,f,g,h,i],其中a至i字母分别表示各节点名称id;其次,随机选取邻居节点,如数组中的首个节点a作为深度优先搜索的当前节点;当一次深度优先搜索结束后,如图2(a)所示,形成一个局部闭合环并以数组的形式存储路径[a,b,c,i];此时,用路径节点数组和邻居节点数组进行比较得出,仍有节点未被检索,则继续用未检测出的节点任意一个作为初始节点进行搜索,如图2(b)所示,用节点d作为初始节点进行检索,且形成的路径为[d,e,f,g,h];再进行比较可知,节点un的所有邻居节点已经都被完全检测。

一些实施例中,通过将被检测节点un的一跳邻居节点数组中对每个元素标记为1,当经过深度优先搜索后的邻居节点被检测后记为0;标记一方面是为了辨别已经被搜索过的节点,不需要重复搜索,减少重复计算,另一方面当所有节点均标记为0时,则说明被检测节点un所有一跳邻居节点搜索完成,可以停止深度优先搜索。

本发明技术方案中的判断主要包括判断是否存在闭合环和形成环是否包围被检测节点两个判断过程,即步骤5)和步骤6)的实施过程。

其具体为,结合图4所示,本发明对于深度优先搜索形成的路径进行判断,查看路径数组的数量,如果只有一个数组,表明待检测节点的一跳邻居节点只有一条路径,则直接判断路径是否形成闭合环,即步骤5)中情况1)的状态;结合图3所示实施例对步骤5)中如果路径数组的首尾节点可以通信连接,则路径形成闭合环的进一步详述,如图3(a)所示,假若被检测节点un的一跳邻居节点a是首节点,c为末尾节点,则检测节点a和节点c是否相连接,判断连接采用节点a在通信半径内向节点c发送通信消息,若节点c在通信半径内,则会接收节点a发送的消息并返回消息,此时记为节点a和节点c之间能通信连接,否则节点a和节点c之间不能连接,并且当节点a和节点c相连接时才形成闭合环,否则。在闭合环情况中,如果包围被检测节点un,则会是如图3(a)所示情况,被检测节点un在闭合环内部,即检测节点un为内部节点;如果闭合环不包围被检测节点un,则是如图3(b)所示情况,被检测节点un在闭合环外部,即直接判断检测节点un为边界节点。

当步骤4)中发现深度优先搜索形成的路径包括若干,即有若干路径的多个数组,则先判断各个路径是否连接成一条路径,即对若干路径中每一条路径的首尾节点依次进行通讯判断,若某路径的首尾两个节点中任意一个节点与其他路径中的任意节点在通信半径内能通讯连接,则能相互通讯连接的两条路径连接为一条路径,依次判断所有路径,本发明中尽可能使得多条路径合并为一条路径,并且当连接节点在路径的中部时,路径连接选择舍弃节点较少的边,具体实现过程如图6所示。

由于深度优先搜索具有方向性,因此深度优先搜索节点的顺序不同,同一路径会包含两个方向的数组,如图6(a)所示的路径模型中,被检测节点un的一跳邻居节点存在两个路径数组[a,b,c,d,e]和[f,i,j,k,l,m]的第一类情况和存在两个数组[a,b,c,d,e]和[f,m,l,k,j,i]的第二类情况。如果是第一类,则利用路径数组的首尾节点进行检测,即用节点a和节点e进行测量,分别连接到节点f和节点m,此时完全不需要舍弃节点,只需要进行节点的复制即可,相互连接成一条路径,组成数组为[a,b,c,d,e,m,l,k,j,i,f]。如果是第二类,同样的,利用路径数组的首尾节点进行检测,即节点a和节点e分别连接到节点f和节点m,且节点i没有连接到其他路径数组中的节点,则可进行判断节点a和节点e直接与节点f和节点m相连接,则可能会形成数组为[a,b,c,d,e,m,f]的一条路径,舍弃l,k,j,i四个节点,这时需要判断是否有其他相连接的节点,进而合并路径,例如当节点f和节点i相连接,即为一个闭合环,可以了解到如果节点f和节点m可以换一个方向与另一条路径合并,即组成数组为[a,b,c,d,e,m,l,k,j,i,f]的一条路径。

如图6(b)当被检测节点un的邻居节点不包含节点e,则两个数组[a,b,c,d]和[f,m,l,k,j,i],节点a和节点d分别与另一数组中节点f和节点l相连接,并且节点i没有在其他数组中有相连接的节点,则判断节点f和节点l与数组[a,b,c,d]相连接,形成数组[a,b,c,d,f,m,l],舍弃了i、j、k三个节点,利用了m节点;同时计算发现节点f和节点i相连接,即也可以组成一个闭合环,由上述判断过程可知,当节点f和节点l换一个方向与另一条路径合并,即组成数组为[a,b,c,d,l,k,j,i,f]的一条路径。

此外,在上述若干路径的连接判断过程中,如果任意两条路径均不连接,则直接查看若干路径中是否存在单独的局部闭合环,若也不存在闭合环,可直接判断被检测节点un为边界节点。

所述步骤6)中判断闭合环是否包围被检测节点un的原理在于闭合环包围节点时,必然存在三个点,以被检测节点为顶点,任意两两节点与被检测节点形成的角度和为360度;并且,在形成的环的数组路径中,任意两点在不包含另一个节点的路径中,绝不会找到一点,与这两点所形成的三点,可以两两与被检测节点形成角度和为360度。

首先,从闭合环路径节点中随机挑选三个节点,以被检测节点为顶点,因为节点数过多在与被检测节点之间形成的角度后,无法利用角度和来计算是否包围被检测节点。而当选择三个节点时,分别检测任意两两节点与被检测节点之间所形成的角度,不会有重复部分,如果再多一个节点,则会出现如图7(b)所示重复部分。如图7(a)所示,被选中计算节点角度的三个节点如c、d、f,然后分别以被检测节点为顶点的,两两计算角度,判断比较角度和与360°大小,即:∠cund,∠dunf和∠cunf,再将∠cund,∠dunf和∠cunf角度相加的和,当和等于360度则判断闭合环包围被检测节点un。如果选择多于三个节点,则会出现如图7(b)所示,分别计算任意两两节点之间的角度∠cunb,∠bune,∠eung,∠gunc,∠gunb,∠cune,则会出现重复部分,角度和大于360°,不满足判断结果。如果被检测节点un的一跳邻居节点形成的闭合环没有包围un,则如图7(c)所示,找到的节点形成的角度和不可能为360°。

如果闭合环包围被检测节点,则被检测节点四周一定存在节点,不可能出现包围却没有节点的情况;如果如图9(a)所示,形成的环的节点在节点un的左侧,则节点c,f的通讯连接必然无法到达节点的un的右侧,必然无法形成包围。则,如果要想形成包围节点un的闭合环,必然在节点un的右侧至少找到一个节点,如图9(b)所示的节点g。

但是,当闭合环上存在三个点,以被检测节点为顶点,任意两两节点与被检测节点形成的角度和为360度;并且,在形成的环的数组路径中,任意两点在不包括另一个节点的路径中,存在于这两点所形成的三点,可以两两与被检测节点形成角度和为360度,此时闭合环也不包围被检测节点;即检测出三个节点中任意两两形成的角度和为360度后,仍然会出现如图8所示情况,即被检测节点un的邻居节点是呈现“凹”形的,此时需要排除这种情况。因此,在检测到角度和为360度之后,仍然需要进一步检测判断。

检测方法如下:如图8(a)所示,在节点a,b连接有两条路径,一条经过节点c,另一条不经过节点c,在不经过节点c的路段中,检测每一个节点,即节点d,e中任一个节点与节点a,b组成的三个节点分别两两与节点un所形成的角度的角度和是否为360度,如果不为360度即判定为闭合环包围节点。同理分别检测节点b,c和c,a之间,如果闭合环包围节点,那么则如图8(a)所示,只能在一个路径上形成角度和为360度的节点,此情况视为闭合环包围被检测节点un。如果在多个路段上都可以形成角度和为360度的节点,那么就是如图8(b)所示情况,成“凹”型环绕节点,而非包围。在图8(b)所示情况中,节点a,b连接有两条路径,一跳经过节点c,一条不经过c,我们可以在不经过c的路段中,找到一个节点d,使得∠aunb,∠bund和∠duna角度相加的和为360度,这种情况判定为环没有包围被检测节点un。

最后,检测结果如上所示,当前环包围被检测节点un,即闭合环包围被检测节点un时,定义被检测节点un为内部节点;如果闭合环上所有任意组合的三个节点以被检测节点为顶点,形成的不相互重合的角,角度和不等于360°,则定义被检测节点un为边界节点;重复上述操作过程,直至将无线传感二维网络中所有节点均判断完成。

虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。

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