一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于围绕三角形寻找边界节点的判定方法及系统

2022-10-22 02:40:10 来源:中国专利 TAG:


1.本发明涉及无线传感器网络技术领域,具体涉及一种基于围绕三角形寻找边界节点的判定方法及系统。


背景技术:

2.无线传感器网络的分布式运行系统中其各项任务执行指标的采集和分析均是在其覆盖范围内实现的,当网络的覆盖范围与各项任务执行指标的要求范围不一致时,在该覆盖范围内采集和分析的结果与真实范围存在显著误差;因此,网络的覆盖率指标至关重要。现有技术中,计算无线传感器网络的覆盖率首先需要寻找网络中的覆盖漏洞,边界节点可以指示覆盖漏洞的存在,其误判会对覆盖率的计算结果造成显著的影响。
3.当前,边界节点的判定方法需要无线网络的全局信息或者需要通过局部无线节点之间的大量通信,例如,需要使用节点的具体位置坐标,或通过配置gps设备等获取位置信息,因而会导致单个节点上的通信能量损耗过大或者计算任务过重。一些方案中提出采用三角形内点测试的方法实现边界节点的判定,具体为先通过有限的消息交换收集判定节点局部邻居信息,然后基于三角形内点测试方法、依据收集信息进行三角形枚举并随后基于逐个生成三角形进行三角形内点测试,进而实现判定节点是否为边界节点的判定。该方法相较于完全依赖节点精确坐标的边界节点判定方法,有充分降低通信量,但是其三角形构建和枚举的过程占用较长的时间,判定效率不高。


技术实现要素:

4.本发明目的在于提供一种基于围绕三角形寻找边界节点的判定方法及系统,利用三角形内点测试的概念,通过寻找一个由判定节点的一跳邻居构成的实际围绕判定节点的三角形来决定判定节点是否为一个边界节点;本发明适用于无节点坐标环境下的二维无线网络或者在曲面上覆盖的无线网络。
5.为达成上述目的,本发明提出如下技术方案:一种基于围绕三角形寻找边界节点的判定方法,包括:
6.构建第一节点集合,所述第一节点集合由判定节点的第一一跳邻居节点构成,并且该集合内所述第一一跳邻居节点的数量不少于3;其中,第一一跳邻居节点为判定节点的一跳邻居节点,并且该一跳邻居节点与判定节点共享至少两个一跳邻居节点;
7.构建以判定节点为原点的极坐标系,所述极坐标系以所述第一节点集合中任一第一一跳邻居节点为正轴点,该正轴点为所述极坐标系上正轴方向的指向节点;
8.获取所述第一节点集合中的所有节点在所述极坐标系中自正轴方向开始逆时针方向旋转至对应节点的角度值,并根据角度值的大小顺序排序;
9.构建第二节点集合,所述第二节点集合由所述极坐标系中和正轴点相通、且与所述正轴点夹角小于180度的第一一跳邻居节点构成;其中,所述和正轴点相通包括所述第二节点集合中与所述正轴点为一跳邻居的节点、经由所述第二节点集合中若干节点的中继后
通信于所述正轴点的节点;
10.构建第三节点集合,所述第三节点集合由所述极坐标系中和正轴点相通、且与所述正轴点夹角大于180度的第一一跳邻居节点构成;其中,所述和正轴点相通包括所述第三节点集合中与所述正轴点为一跳邻居的节点、经由所述第三节点集合中若干节点的中继后通信于所述正轴点的节点;
11.当所述第二节点集合中存在一第一节点、所述第三节点集合中存在一第二节点,所述第一节点和第二节点满足第一预设条件,则当前极坐标系中由第一节点、第二节点和正轴点构成的三角形围绕所述判定节点,所述判定节点为内部节点;其中,所述第一预设条件为所述第一节点和第二节点互为一跳邻居、且所述第一节点和第二节点在当前所述极坐标系中逆时针方向的夹角小于180度。
12.进一步的,当所述第二节点集合、第三节点集合中不存在互为一跳邻居的第一节点和第二节点,或不满足所述第一节点和第二节点在当前所述极坐标系中逆时针方向的夹角小于180度,则:
13.定义第二节点集合在当前极坐标系中与所述正轴方向构成的角度值最大的角为第一夹角、构成该夹角的节点为第三节点,第三节点集合在当前极坐标系中与所述正轴方向构成的角度值最小的角为第二夹角、构成该夹角的节点为第四节点;
14.构建第四节点集合,所述第四节点集合由所述第一节点集合中不属于第二节点集合和第三节点集合,且其在当前极坐标系中与所述正轴方向构成的角度值大于第一夹角、小于第二夹角的第一一跳邻居节点构成;
15.当所述第四节点集合中存在一满足第二预设条件的第五节点,则当前极坐标系中由第三节点、第四节点和第五节点构成的三角形或由第三节点、第四节点和正轴点构成的三角形围绕所述判定节点,所述判定节点为内部节点;其中,所述第二预设条件为:(1)第五节点能经由所述第四节点集合中若干节点的中继后分别通信于所述第三节点和第四节点;(2)第五节点在当前极坐标系中与第三节点构成的相较于原点的夹角小于180度、且与第四节点构成的相较于原点的夹角小于180度。
16.进一步的,当所述第四节点集合中不存在一第五节点满足能经由所述第四节点集合中若干节点的中继后分别通信于所述第三节点和第四节点或不存在一第五节点满足在当前极坐标系中与第三节点构成的相较于原点的夹角小于180度、且与第四节点构成的相较于原点的夹角小于180度,则:
17.在所述第一节点集合中依次选择在先未作为正轴点的任一第一一跳邻居节点作为正轴点,重新确定所述极坐标系的正轴方向;
18.依次判断重新确定正轴方向的所述极坐标系中是否存在符合第一预设条件的第一节点和第二节点、或是否存在符合第二预设条件的第五节点;
19.若存在,则作为当前极坐标系原点的判定节点为内部节点;
20.若均不存在,则作为当前极坐标系原点的判定节点为边界节点。
21.进一步的,还包括:
22.获取判定节点的一跳邻居信息,建立判定节点的一跳邻居节点集合;
23.筛选并保留所述一跳邻居节点集合中与所述判定节点共享至少两个一跳邻居的一跳邻居节点;
24.当所述一跳邻居节点集合中保留的所述一跳邻居节点的数量少于3,则所述判定节点为边界节点。
25.本发明另一技术方案在于公开一种基于围绕三角形寻找边界节点的判定系统,该系统包括:
26.第一构建模块,用于构建第一节点集合,所述第一节点集合由判定节点的第一一跳邻居节点构成,并且该集合内所述第一一跳邻居节点的数量不少于3;其中,第一一跳邻居节点为判定节点的一跳邻居节点,并且该一跳邻居节点与判定节点共享至少两个一跳邻居节点;
27.第二构建模块,用于构建以判定节点为原点的极坐标系,所述极坐标系以所述第一节点集合中任一第一一跳邻居节点为正轴点,该正轴点为所述极坐标系上正轴方向的指向节点;
28.第一获取模块,用于获取所述第一节点集合中的所有节点在所述极坐标系中自正轴方向开始逆时针方向旋转至对应节点的角度值,并根据角度值的大小顺序排序;
29.第三构建模块,用于构建第二节点集合,所述第二节点集合由所述极坐标系中和正轴点相通、且与所述正轴点夹角小于180度的第一一跳邻居节点构成;其中,所述和正轴点相通包括所述第二节点集合中与所述正轴点为一跳邻居的节点、经由所述第二节点集合中若干节点的中继后通信于所述正轴点的节点;
30.第四构建模块,用于构建第三节点集合,所述第三节点集合由所述极坐标系中和正轴点相通、且与所述正轴点夹角大于180度的第一一跳邻居节点构成;其中,所述和正轴点相通包括所述第三节点集合中与所述正轴点为一跳邻居的节点、经由所述第三节点集合中若干节点的中继后通信于所述正轴点的节点;
31.第一判断模块,用于当所述第二节点集合中存在一第一节点、所述第三节点集合中存在一第二节点,所述第一节点和第二节点满足第一预设条件时,判断当前极坐标系中由第一节点、第二节点和正轴点构成的三角形围绕所述判定节点,所述判定节点为内部节点;其中,所述第一预设条件为所述第一节点和第二节点互为一跳邻居、且所述第一节点和第二节点在当前所述极坐标系中逆时针方向的夹角小于180度。
32.进一步的,还包括:
33.定义模块,用于定义第二节点集合在当前极坐标系中与所述正轴方向构成的角度值最大的角为第一夹角、构成该夹角的节点为第三节点,第三节点集合在当前极坐标系中与所述正轴方向构成的角度值最小的角为第二夹角、构成该夹角的节点为第四节点;
34.第五构建模块,用于构建第四节点集合,所述第四节点集合由所述第一节点集合中不属于第二节点集合和第三节点集合,且其在当前极坐标系中与所述正轴方向构成的角度值大于第一夹角、小于第二夹角的第一一跳邻居节点构成;
35.第二判断模块,用于当所述第四节点集合中存在一满足第二预设条件的第五节点,判断当前极坐标系中由第三节点、第四节点和第五节点构成的三角形或由第三节点、第四节点和正轴点构成的三角形围绕所述判定节点,所述判定节点为内部节点;其中,所述第二预设条件为:(1)第五节点能经由所述第四节点集合中若干节点的中继后分别通信于所述第三节点和第四节点;(2)第五节点在当前极坐标系中与第三节点构成的相较于原点的夹角小于180度、且与第四节点构成的相较于原点的夹角小于180度。
36.进一步的,还包括:
37.选择模块,用于在所述第一节点集合中依次选择在先未作为正轴点的任一第一一跳邻居节点作为正轴点,重新确定所述极坐标系的正轴方向;
38.第三判断模块,用于依次判断重新确定正轴方向的所述极坐标系中是否存在符合第一预设条件的第一节点和第二节点、或是否存在符合第二预设条件的第五节点;
39.若存在,则判断作为当前极坐标系原点的判定节点为内部节点;
40.若不存在,则判断作为当前极坐标系原点的判定节点为边界节点。
41.进一步的,还包括:
42.获取模块,用于获取判定节点的一跳邻居信息,建立判定节点的一跳邻居节点集合;
43.筛选模块,用于筛选并保留所述一跳邻居节点集合中与所述判定节点共享至少两个一跳邻居的一跳邻居节点;
44.第四判断模块,用于当所述一跳邻居节点集合中保留的所述一跳邻居节点的数量少于3,判断所述判定节点为边界节点。
45.本发明还提供一种电子设备,该设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器运行所述计算机程序时,实现如上述的基于围绕三角形寻找边界节点的判定方法。
46.本发明的技术方案还公开一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述的基于围绕三角形寻找边界节点的判定方法。
47.由以上技术方案可知,本发明的技术方案获得了如下有益效果:
48.本发明公开的基于围绕三角形寻找边界节点的判定方法及系统,其方法使用三角形内点测试的概念,通过寻找一个由判定节点的一跳邻居构成的实际围绕判定节点的三角形来决定判定节点是否为一个边界节点;因此,虽然本方法基于三角形内点测试,但不需要枚举由判定节点的一跳邻居构成的多个三角形;本发明单个判定节点只需要获取其一跳邻居的标识和方位,并由其一跳邻居的方位推算出其任意两个邻居与其构成的夹角角度即可;本发明的判定方法无需在网络中进行消息泛洪,并且适用于由节点分布不均造成的不同位置处节点密度不同的网络。
49.本发明基于围绕三角形寻找边界节点的判定方法及系统获得的具体有益效果包括:
50.(1)本发明无需使用节点的位置坐标,节点无需配置gps等用于获取位置信息的设备;
51.(2)本发明虽是基于三角形内点测试方法,但无需基于收集信息进行三角形枚举并随后基于逐个生成三角形进行三角形内点测试;本发明在首次信息收集后判定节点可以独立运行本方法进行其自身是否为边界节点的判断,相对需要在节点之间发送消息进行三角形构建的方法更为迅速;
52.(3)本发明使用的在旋转极坐标系中寻找围绕三角形的方法使其适用于节点分布不均的网络,包括无节点坐标环境下的二维无线网络或者在曲面上覆盖的二维无线网络上边界节点的判定。
53.应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这
样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。
54.结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。
附图说明
55.附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:
56.图1为本发明一确定正轴方向的极坐标系;
57.图2为本发明满足第一预设条件的围绕三角形实施例;
58.图3为本发明满足第二预设条件的围绕三角形实施例;
59.图4为本发明基于围绕三角形寻找边界节点的判定方法流程图。
具体实施方式
60.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。
61.本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,除非上下文清楚地指明其它情况,否则单数形式的“一个”“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在“包括”或者“包含”前面的元件或者物件涵盖出现在“包括”或者“包含”后面列举的特征、整体、步骤、操作、元素和/或组件,并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。“上”“下”“左”“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
62.现有技术公开的采用三角形内点测试的方法实现边界节点的判定过程,相较于完全依赖节点精确坐标的边界节点判定方法,虽然能充分降低通信量,但是其判定过程三角形构建和枚举的过程占用较长的时间,判定效率不高。因此,本发明旨在于针对上述问题,提出一种基于围绕三角形寻找边界节点的判定方法及系统,通过建立以判定节点作为原点的极坐标系寻找围绕三角形,其方法只需要获取其一跳邻居的标识和方位,无需进行消息泛洪和基于收集信息进行三角形枚举并随后基于逐个生成三角形进行三角形内点测试,判定过程迅速且高效。
63.下面结合具体实施例,对本发明公开的基于围绕三角形寻找边界节点的判定方法及系统作进一步具体介绍。
64.本发明考虑在一个二维无线传感器网络中,如果一个节点为内部节点,由现有技
术的公开可知该内部节点应该在一个由其一跳邻居节点围成的圈内,即在这个圈上至少存在3个该内部节点的一跳邻居,使得这3个邻居构成的三角形围绕该点。因此,本发明基于这一特性,在判定节点的一跳邻居中寻找这样的3个一跳邻居用以构建能够围绕判定节点的三角形。
65.具体的,如图4所示,本发明的基于围绕三角形寻找边界节点的判定方法,包括如下步骤:
66.1)邻居信息获取,建立判定节点的一跳邻居节点集合;网络中的任意一个判定节点发出查询消息,收集其一跳邻居节点返回的消息;此处判定节点指网络中一个任意的需要判定其是否为边界节点的节点,一跳邻居节点指能够不通过中继节点转发消息即可和判定节点实现直接通信的节点;
67.2)一跳邻居节点集合整理,筛选并保留该一跳邻居节点集合中与判定节点共享至少两个一跳邻居的一跳邻居节点;
68.3)判定筛选后一跳邻居节点集合中保留的一跳邻居节点的数量,当剩余节点数量少于3时,直接判定该判定节点为边界节点;否则,构建第一节点集合,第一节点集合由判定节点的第一一跳邻居节点构成,并且该集合内所述第一一跳邻居节点的数量不少于3;其中,第一一跳邻居节点为判定节点的一跳邻居节点,并且该一跳邻居节点与判定节点共享至少两个一跳邻居节点;
69.4)构建以判定节点为原点的极坐标系,该极坐标系以第一节点集合中任一第一一跳邻居节点为正轴点,该正轴点为极坐标系上正轴方向的指向节点;
70.5)获取所述第一节点集合中的所有节点在极坐标系中自正轴方向开始逆时针方向旋转至对应节点的角度值,并根据角度值的大小顺序排序;
71.其中,某一节点在当前极坐标系形成的角为在当前极坐标系中移动一条以判定节点为顶点的射线,该射线从正轴方向开始以逆时针方向移动至该节点的过程形成的角,该角的角度值通过节点在当前极坐标系中的方位获得。
72.6)构建第二节点集合s2,第二节点集合由所述极坐标系中和正轴点相通、且与所述正轴点夹角小于180度的第一一跳邻居节点构成;其中,所述和正轴点相通包括所述第二节点集合中与所述正轴点为一跳邻居的节点、经由所述第二节点集合中若干节点的中继后通信于所述正轴点的节点;
73.7)构建第三节点集合s3,第三节点集合由所述极坐标系中和正轴点相通、且与所述正轴点夹角大于180度的第一一跳邻居节点构成;其中,所述和正轴点相通包括所述第三节点集合中与所述正轴点为一跳邻居的节点、经由所述第三节点集合中若干节点的中继后通信于所述正轴点的节点;
74.8)判断第二节点集合中是否存在一第一节点、第三节点集合中是否存在一第二节点,第一节点和第二节点满足第一预设条件;其中,第一预设条件为第一节点和第二节点互为一跳邻居、且第一节点和第二节点在当前所述极坐标系中沿逆时针方向的夹角小于180度;若存在,则判定当前极坐标系中由第一节点、第二节点和正轴点构成的三角形围绕判定节点,所述判定节点为内部节点,方法结束;否则,执行后续判断;两个节点和判定节点构成的夹角的值通过节点在当前极坐标系中的方位和节点的角的值获得。
75.9)定义第二节点集合在当前极坐标系中与正轴方向构成的角度值最大的角为第
一夹角、构成该夹角的节点为第三节点,第三节点集合在当前极坐标系中与所述正轴方向构成的角度值最小的角为第二夹角、构成该夹角的节点为第四节点;
76.10)构建第四节点集合s4,第四节点集合由所述第一节点集合中不属于第二节点集合和第三节点集合,且其在当前极坐标系中与所述正轴方向构成的角度值大于第一夹角、小于第二夹角的第一一跳邻居节点构成;
77.11)判断第四节点集合中是否存在一满足第二预设条件的第五节点,若存在则当前极坐标系中由第三节点、第四节点和第五节点构成的三角形或由第三节点、第四节点和正轴点构成的三角形围绕所述判定节点,所述判定节点为内部节点,方法结束;否则,方法返回步骤四,在所述第一节点集合中选择在先未作为正轴点的任一第一一跳邻居节点作为正轴点,重新确定极坐标系的正轴方向,构建新的极坐标系并执行步骤4)的后续步骤;其中,第二预设条件为:(1)第五节点能经由所述第四节点集合中若干节点的中继后分别通信于所述第三节点和第四节点;(2)第五节点在当前极坐标系中与第三节点构成的相较于原点的夹角小于180度、且与第四节点构成的相较于原点的夹角小于180度;
78.12)循环执行步骤4)至步骤11)直至第一节点集合中第一一跳邻居节点用尽,依次判断新的极坐标系中是否存在符合第一预设条件的第一节点和第二节点、或是否存在符合第二预设条件的第五节点;若存在,则作为当前极坐标系原点的判定节点为内部节点;若均不存在,则作为当前极坐标系原点的判定节点为边界节点。
79.结合具体实施例,上述步骤4)建立的极坐标系如图1所示,为一个任意的判定节点v和其所有的一跳邻居节点共同构建的一个极坐标系;该极坐标系的正方向不是固定的,其正方向根据判定过程需要可以在后续发生变化,但任意一个该类极坐标系的原点都为判定节点v。首次构建以v为原点的极坐标系时,在v的一跳邻居中选择一个任意第一一跳邻居节点a指示该极坐标系的正方向x,节点a在该极坐标系中的角度值为0,v的其余第一一跳邻居节点在该坐标系中的角度为该节点同v和a形成的夹角的值。例如,节点k在图1所示极坐标系中表示为(k,∠kva)。
80.参阅图2所示的实施例,为一任意的判定节点v和其的一跳邻居节点共同构建的一个极坐标系,该极坐标系以判定节点v的一跳邻居节点p指示该极坐标系的正轴方向x;图中集合s2为步骤8)中第二节点集合,其包含横轴上方点状虚线右侧的判定节点v的一跳邻居节点;集合s3为步骤8)中第三节点集合,其包含横轴下方点状虚线右侧的判定节点v的一跳邻居节点;集合s2和集合s3中的点既是判定节点v的一跳邻居节点,同时也可以通过判定节点v的在对应集合s2和集合s3中的其余一跳邻居节点同节点p相连通或者直接是节点p的一跳邻居;但需要注意的是,这两个集合内的点同节点p相连通不包含经过判定节点v的情况。图中存在集合s2中的第一节点b以及集合s3中的第二节点c,满足第一节点b和第二节点c是一跳邻居且∠bvc小于180度;因此,存在围绕三角形pbc使得判定节点v位于其内部,判定节点v被判定为一个内部节点。
81.参阅图3所示的实施例,为一任意的判定节点v和其的一跳邻居节点共同构建的一个极坐标系,该极坐标系以判定节点v的一跳邻居节点q指示该极坐标系的正轴方向x;图中集合s2为步骤8)中第二节点集合,其包含横轴上方点状虚线右侧的判定节点v的一跳邻居节点;集合s3为步骤8)中第三节点集合,其包含横轴下方点状虚线右侧的判定节点v的一跳邻居节点;集合s2和集合s3中的点既是判定节点v的一跳邻居节点,同时也可以通过判定节
点v的在对应集合s2和集合s3中的其余一跳邻居节点同节点q相连通或者直接是节点q的一跳邻居;但需要注意的是,这两个集合内的点同节点q相连通不包含经过判定节点v的情况。图3中不存在第二节点集合s2中的第一节点b以及第三节点集合s3中的第二节点c,满足第一节点b和第二节点c是一跳邻居;因此,如上述步骤9)所述,在第二节点集合s2中寻找角度最大的第三节点,此图中为节点d;在第三节点集合s3中寻找角度最小的第四节点,此图中为e。集合s4为步骤10)中第四节点集合,包含此极坐标系中两条点状虚线左侧的节点;图中第四节点集合s4中存在第五节点f,满足节点d和第五节点f是一跳邻居且∠dvf小于180度,同时,第五节点f和节点e是一跳邻居且∠fve小于180度;因此,存在围绕三角形def或围绕三角形qde使得判定v位于其内部,故判定节点v被判定为一个内部节点。
82.通过上述方法,判定节点能根据其一跳邻居的情况主动寻找和构建由其一跳邻居组成的能够围绕其的三角形,无需进行哈密尔顿环寻找、无需枚举一跳邻居构建的所有三角形、无需对枚举出的三角形进行三角形内点测试以明确判定节点和选定三角形的相对位置,因此,判定过程迅速、判定效率显著提高。
83.在本实施例中,还提供一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行以上实施例中的方法。
84.上述程序可以运行在处理器中,或者也可以存储在存储器中(或称为计算机可读存储介质),计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
85.这些计算机程序也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤,对应与不同的步骤可以通过不同的模块来实现。
86.该本实施例中就提供了这样的一种装置或系统。该系统被称为基于围绕三角形寻找边界节点的判定系统,包括:第一构建模块,用于构建第一节点集合,所述第一节点集合由判定节点的第一一跳邻居节点构成,并且该集合内所述第一一跳邻居节点的数量不少于3;其中,第一一跳邻居节点为判定节点的一跳邻居节点,并且该一跳邻居节点与判定节点共享至少两个一跳邻居节点;
87.第二构建模块,用于构建以判定节点为原点的极坐标系,所述极坐标系以所述第一节点集合中任一第一一跳邻居节点为正轴点,该正轴点为所述极坐标系上正轴方向的指向节点;
88.第一获取模块,用于获取所述第一节点集合中的所有节点在所述极坐标系中自正轴方向开始逆时针方向旋转至对应节点的角度值,并根据角度值的大小顺序排序;
89.第三构建模块,用于构建第二节点集合,所述第二节点集合由所述极坐标系中和正轴点相通、且与所述正轴点夹角小于180度的第一一跳邻居节点构成;其中,所述和正轴点相通包括所述第二节点集合中与所述正轴点为一跳邻居的节点、经由所述第二节点集合中若干节点的中继后通信于所述正轴点的节点;
90.第四构建模块,用于构建第三节点集合,所述第三节点集合由所述极坐标系中和正轴点相通、且与所述正轴点夹角大于180度的第一一跳邻居节点构成;其中,所述和正轴点相通包括所述第三节点集合中与所述正轴点为一跳邻居的节点、经由所述第三节点集合中若干节点的中继后通信于所述正轴点的节点;
91.第一判断模块,用于当所述第二节点集合中存在一第一节点、所述第三节点集合中存在一第二节点,所述第一节点和第二节点满足第一预设条件时,判断当前极坐标系中由第一节点、第二节点和正轴点构成的三角形围绕所述判定节点,所述判定节点为内部节点;其中,所述第一预设条件为所述第一节点和第二节点互为一跳邻居、且所述第一节点和第二节点在当前所述极坐标系中逆时针方向的夹角小于180度;
92.定义模块,用于定义第二节点集合在当前极坐标系中与所述正轴方向构成的角度值最大的角为第一夹角、构成该夹角的节点为第三节点,第三节点集合在当前极坐标系中与所述正轴方向构成的角度值最小的角为第二夹角、构成该夹角的节点为第四节点;
93.第五构建模块,用于构建第四节点集合,所述第四节点集合由所述第一节点集合中不属于第二节点集合和第三节点集合,且其在当前极坐标系中与所述正轴方向构成的角度值大于第一夹角、小于第二夹角的第一一跳邻居节点构成;
94.第二判断模块,用于当所述第四节点集合中存在一满足第二预设条件的第五节点,判断当前极坐标系中由第三节点、第四节点和第五节点构成的三角形或由第三节点、第四节点和正轴点构成的三角形围绕所述判定节点,所述判定节点为内部节点;其中,所述第二预设条件为:(1)第五节点能经由所述第四节点集合中若干节点的中继后分别通信于所述第三节点和第四节点;(2)第五节点在当前极坐标系中与第三节点构成的相较于原点的夹角小于180度、且与第四节点构成的相较于原点的夹角小于180度;
95.选择模块,用于在所述第一节点集合中依次选择在先未作为正轴点的任一第一一跳邻居节点作为正轴点,重新确定所述极坐标系的正轴方向;
96.第三判断模块,用于依次判断重新确定正轴方向的所述极坐标系中是否存在符合第一预设条件的第一节点和第二节点、或是否存在符合第二预设条件的第五节点;
97.若存在,则判断作为当前极坐标系原点的判定节点为内部节点;
98.若不存在,则判断作为当前极坐标系原点的判定节点为边界节点。
99.以及本系统还包括:
100.获取模块,用于获取判定节点的一跳邻居信息,建立判定节点的一跳邻居节点集合;
101.筛选模块,用于筛选并保留所述一跳邻居节点集合中与所述判定节点共享至少两个一跳邻居的一跳邻居节点;
102.第四判断模块,用于当所述一跳邻居节点集合中保留的所述一跳邻居节点的数量少于3,判断所述判定节点为边界节点。
103.该系统或者装置用于实现上述的实施例中的方法的功能,该系统或者装置中的每
个模块与方法中的每个步骤相对应,已经在方法中进行过说明的,在此不再赘述。
104.本发明公开的方法及系统使用的在旋转极坐标系中寻找围绕三角形的流程使其适用于节点分布不均的网络,不仅对单个判定节点只需要获取其一跳邻居的标识和方位,且能够迅速判定节点是否为边界节点,相较于现有技术判定效率高。
105.虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献