CN105376791A - 基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法 - Google Patents

基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法 Download PDF

Info

Publication number
CN105376791A
CN105376791A CN201510875060.2A CN201510875060A CN105376791A CN 105376791 A CN105376791 A CN 105376791A CN 201510875060 A CN201510875060 A CN 201510875060A CN 105376791 A CN105376791 A CN 105376791A
Authority
CN
China
Prior art keywords
voronoi
node
unit
sub
dynamic pickup
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510875060.2A
Other languages
English (en)
Other versions
CN105376791B (zh
Inventor
马昕
邓立霞
宋锐
荣学文
李贻斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong University
Original Assignee
Shandong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong University filed Critical Shandong University
Priority to CN201510875060.2A priority Critical patent/CN105376791B/zh
Publication of CN105376791A publication Critical patent/CN105376791A/zh
Application granted granted Critical
Publication of CN105376791B publication Critical patent/CN105376791B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/04Arrangements for maintaining operational condition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Abstract

本发明公开了基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法;该方法提出将Voronoi单元划分sub-Voronoi单元、计算sub-Voronoi单元内覆盖空洞面积、朝向空洞面积最大的子区域内候选位置运动的算法实现了动态传感器网络中覆盖空洞的检测以及修复;采用两种算法在每一个节点的自身Voronoi多边形内计算出用于覆盖空洞修复的候选运动位置,分别为SVHG及SVHI;该算法可以准确估计出Voronoi单元内覆盖空洞的位置,并且可以准确计算出每一个Voronoi单元内空洞的面积,同时还可以快速的最大化区域覆盖效率,实现空洞修复,最大化网络利用率。

Description

基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法
技术领域
本发明涉及一种基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,属于人工智能技术领域。
背景技术
无线传感器网络被广泛应用于环境监控、入侵检测、智能交通、智慧农业、智慧城市等各个领域;
无线传感器网络的覆盖性能反应了网络节点对监测区域的监控程度,是衡量无线传感器网络服务质量的一项基本指标;区域覆盖要求监测区域中的每个点至少被一个传感器节点的感知范围覆盖,而监测区域中未被任何传感器覆盖的点的集合即为覆盖空洞;覆盖空洞可能由于以下原因引起:节点的随机布撒、节点的失效、节点的位置变化、覆盖区域内出现障碍物;覆盖空洞会导致监测信息感知不完整,对网络的连通性造成影响,甚至导致网络整体失效,严重影响无线传感器网络的性能和服务质量;因此,覆盖空洞的及时检测与修复是一项非常重要的工作;
目前,针对无线传感器网络的覆盖空洞检测与修复问题已经有了一些解决方案;主要包括基于计算几何的方法、基于单纯复形的方法、基于仿生智能算法以及基于Voronoi(泰森多边形)图的方法等;
基于计算几何的方法:2011年《JournalofNetworkandComputerApplications》(网络和计算机应用期刊)在34(5):1743-1756发表的《Computationalgeometrybaseddistributedcoverageholedetectionprotocolforthewirelesssensornetworks》(基于计算几何方法的分布式无线传感器网络覆盖空洞检测协议)提出基于计算几何方法的分布式空洞检测协议,空洞的存在与否取决于由一个参考节点与其任意两个相邻节点(1跳或2跳范围内)组成的三角形的性质;每一个节点的通信范围与感知范围相同,这样可以在通信过程中节省更多的能量;2013年《JournalofTheoreticalandAppliedInformationTechnology》(理论和应用信息技术期刊)在48(2):1121-1125发表的《Coverageholesdiscoveryalgorithmforwirelesssensornetwork》(无线传感器网络中覆盖空洞发现算法)提出了一种基于几何方法的覆盖空洞发现算法,节点与其相邻节点组成一个三角形,计算三角形的外接圆半径和外接圆圆心,根据现有的几何学理论判断空洞是否存在;以上两种算法可以识别三角空洞,但是没有给出覆盖空洞的全局视角;2015年《JournalofNetworkandComputerApplications》(网络和计算机应用期刊)在48:35-43发表的《Coverageholeandboundarynodesdetectioninwirelesssensornetwork》(无线传感器网络中覆盖空洞及边界节点检测算法)提出根据空圆的属性估计无线传感器网络中是否存在覆盖空洞、并且识别空洞边界节点的算法,该算法可以精确识别出边界节点、有效检测各类覆盖空洞、降低算法复杂度;基于计算几何的方法可以准确给出某区域内空洞个数,但无法对覆盖空洞的位置以及尺寸进行精确描述;
基于单纯复形的方法:2011年《ProceedingsoftheIEEEGlobalTelecommunicationsConference》(全球通信国际会议论文集)在1-6发表的《Connectivity-baseddistributedcoverageholedetectioninwirelesssensornetworks》(基于连通性的分布式无线传感器网络覆盖空洞检测)以及2014年《IEEETransactionsonWirelessCommunications》(IEEE无线通信学报)在13(7):3583-3595发表的《Accuracyofhomologybasedcoverageholedetectionforwirelesssensornetworksonsphere》(球体内无线传感器网络中基于同调论的覆盖空洞检测精度)利用最大单纯复形,即Cech复形和Rips复形,将覆盖空洞分为三角空洞与非三角空洞,并提出基于节点连通信息的非三角覆盖空洞检测算法,在理论上以未发现空洞区域的比例为指标分析了其准确性;基于单纯复形的覆盖空洞检测利用多边形描述空洞是会存在误差的;
基于仿生智能算法:2007年《控制与决策》在22(11):1289-1301发表的《无线传感器网络中基于遗传算法的优化覆盖机制》提出两种基于加权遗传算法和基于约束遗传算法的优化覆盖机制,根据生成的适值函数进行遗传算法操作,并计算传感器网络中充分覆盖区域所需的近似最优工作节点集;2013年《InternationalJournalofDistributedSensorNetworks》(分布式传感器网络国际期刊)在2013:1-9发表的《Levelsetbasedcoverageholesdetectionandholeshealingschemeinhybridsensornetwork》(混合传感器网络中基于水平集的覆盖空洞检测和空洞修复)提出基于水平集的覆盖空洞检测算法,该检测算法可以估计空洞的数量以及空洞的尺寸,另外覆盖空洞的修复采用遗传算法;
基于Voronoi图的方法:2006年《IEEETransactionsonMobileComputing》(IEEE移动计算学报)在5(6):640-652发表的《Movement-AssistedSensorDeployment》(基于运动辅助的传感器调度)提出利用Voronoi图检测覆盖空洞,设计了两套分布式协议完成移动节点从密集区域到稀疏区域的迭代运动,在存在空洞的情况下采用三种算法计算节点的目标位置,分别是VEC、VOR、Minimax;但是在VOR和Minimax算法中,若出现节点位于Voronoi多边形狭窄边缘的情况时,节点可能不需要移动,则覆盖空洞不会减少;另外,VEC算法只适用于节点比较少的传感器网络;2014年《IEEETransactionsonIndustrialInformatics》(IEEE工业信息学报)在10(1):163-174发表的《Distributeddeploymentalgorithmsforimprovedcoverageinanetworkofwirelessmobilesensors》(改善无线移动传感器网络覆盖的分布式调度算法)提出四种方法在每个节点的Voronoi多边形内确定可以提高覆盖率的候选位置,四种方法分别根据到最近Voronoi顶点距离最大(maxmin-vertex)、到最远Voronoi边缘距离最小(minmax-edge)、到最近Voronoi边缘距离最大(maxmin-edge)及选择Minimax&maxmin-edge可以提供最高覆盖率的一个作为候选位置来确定节点的候选位置;2015年《计算机应用》在35(3):620-623发表的《基于Voronoi图的无线传感器网络覆盖空洞检测算法》提出利用节点的位置信息在覆盖区域内构建Voronoi图、根据每个Voronoi区域内节点到该区域的顶点和边的距离判断是否存在覆盖空洞、并对覆盖空洞的边界节点进行标识的方法,与路径密度算法比较可知该算法在空洞平均检测时间和节点平均能耗两个方面有10%左右的提升;现有技术的经典的Voronoi图只能用顶点来表示空洞位置,但是不能对空洞的位置和形状进行精确描述;
另外,2006年《MobileNetworksandApplications》(移动网络与应用)在11(2):187-200发表的《Locatingandbypassingholesinsensornetworks》(传感器网中的空洞检测与绕过)提出空洞检测和发现算法,并且建立了环绕空洞的路线,定义了stucknode用来识别空洞存在与否,TENT规则用于判定网络中的每一个节点是否为stucknode,另外基于右手准则的BoundHole用于识别空洞的边界;2014年《IEEETransactionsonParallelandDistributedSystems》(IEEE并行和分布式系统学报)在25(5):1267-1277发表的《Localizedmovement-assistedsensordeploymentalgorithmforholedetectionandhealing》(用于空洞检测和修复的局部运动辅助传感器调度算法)在上一篇文章的基础上提出采用空洞检测和修复(HEAL)算法检测RoI的边界、检测覆盖空洞、决定移动节点的最佳位置来修复空洞、并且在最小化运动和能量消耗的前提下派遣运动节点。
发明内容
本发明提出一种基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,具体描述为:Voronoi单元划分子区域(sub-Voronoi)、根据子区域内感知圆与子区域的几何关系计算子区域内空洞面积、并朝向空洞面积最大子区域内的候选位置运动的方法;该方法与经典Voronoi图算法相比,不仅可以准确估计出Voronoi单元内覆盖空洞的位置,而且可以准确计算出每一个sub-Voronoi单元内空洞的面积,同时还可以快速的最大化区域覆盖效率,实现空洞修复,最大化网络利用率;
为了实现上述目的,本发明采用如下技术方案:
基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,包括如下步骤:
步骤(1):采用Voronoi图将动态传感器网络区域划分为若干Voronoi单元,每个动态传感器节点负责一个Voronoi单元,计算每个Voronoi单元的面积;
步骤(2):将每个动态传感器节点的Voronoi单元划分为若干sub-Voronoi单元;检测每个sub-Voronoi单元内是否存在覆盖空洞,若存在,则计算每个sub-Voronoi单元内的覆盖空洞面积;
步骤(3):对覆盖空洞的修复;每个动态传感器节点朝向自身Voronoi图内覆盖空洞面积最大的sub-Voronoi单元内的最优位置运动;从而完成覆盖空洞的一次修复,每完成一次修复后,判断是否达到终止条件,如果达到就结束,如果未达到就重复步骤(1)-(3),直到完成整个动态传感器网络的覆盖空洞的修复。
若终止条件的判断参数为总覆盖率,则步骤(3)中判断是否达到终止条件的过程为:
计算每个Voronoi单元内的动态传感器节点的感知面积;
通过每个Voronoi单元内的动态传感器节点感知面积计算得到动态传感器节点的总感知面积;
通过总感知面积除以传感器网络总面积,得到传感器网络的总覆盖率;
通过判断总覆盖率是否在设定范围内来决定是否终止修复。
步骤(1)的步骤为:
假设动态传感器网络区域中有Nm个动态传感器节点,每个动态传感器节点随机分布,所有动态传感器节点的感知半径Rs相等、所有动态传感器节点的通信半径Rc相等,为了保证网络通信的连通性,动态传感器节点的感知半径与通信半径之间需满足Rc≥2Rs;每一个动态传感器节点采用感知圆盘感知环境;二维平面中,动态传感器节点的感知区域是以动态传感器节点为圆心、半径为Rs的圆形封闭区域,圆形封闭区域称为动态传感器节点的感知圆盘;
采用Voronoi图将传感器网络分为Nm个Voronoi单元,每个Voronoi单元包括一个动态传感器节点,每个Voronoi单元是距离该Voronoi单元内的动态传感器节点比距离其它动态传感器节点近的平面中任意点的集合,Voronoi单元的边界是两个相邻Voronoi单元内动态传感器节点连线的垂直平分线;每个Voronoi图内不能被动态传感器节点感知到的部分构成覆盖空洞;每个Voronoi单元的面积根据Voronoi单元的顶点的位置计算得到。
步骤(1)的每个Voronoi单元的面积的计算公式为:
S V C = 1 2 [ Σ l = 1 n - 1 ( x l y l + 1 - x l + 1 y l ) + ( x n y 1 - x 1 y n ) ] ; - - - ( 1 )
其中,SVC表示每个Voronoi单元的面积,n表示每个Voronoi单元的Voronoi顶点数量,(xl,yl)表示第l个Voronoi顶点的位置。
步骤(2)中:
每个动态传感器节点的Voronoi单元按照以下方法划分为sub-Voronoi单元:
动态传感器节点与任意两相邻Voronoi顶点组成的三角形作为一个sub-Voronoi单元,一个Voronoi单元内的sub-Voronoi单元数量与其Voronoi单元边缘数量相等。
步骤(2)中计算每个sub_Voronoi单元内的覆盖空洞面积,分为以下四种情况:
动态传感器节点P1、Voronoi单元的顶点V1、Voronoi单元的顶点V2组成的三角形作为一个sub-Voronoi单元:
情况(21):Voronoi单元的两相邻顶点及Voronoi单元的边缘都没有被动态传感器节点检测到;
sub-Voronoi单元的感知面积根据公式(2)计算:
S s s = 1 2 * δ * R s 2 ; - - - ( 2 )
其中,Sss表示sub-Voronoi单元的感知面积,δ表示两个Voronoi顶点分别与动态传感器节点相连的连线之间的夹角,δ根据余弦定理求得;
δ = a r c c o s ( | V 1 P 1 | 2 + | V 2 P 1 | 2 - | V 1 V 2 | 2 2 | V 1 P 1 | * | V 2 P 2 | ) ; - - - ( 3 )
此时,sub-Voronoi单元的覆盖空洞面积计算公式为:
S S C H = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - S s s = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 * δ * R s 2 ; - - - ( 4 )
其中SSCH表示sub-Voronoi单元的覆盖空洞面积,|·|表示两个点之间的欧式距离;
情况(22):Voronoi单元的两个相邻顶点没有被动态传感器节点感知到,但Voronoi单元的边缘被动态传感器节点感知到;
sub-Voronoi单元的感知面积根据公式(5)计算:
S s s = 1 2 * δ * R s 2 - S s h a d o w ; - - - ( 5 )
其中Sshadow表示被感知到的Voronoi单元的边缘与感知圆的圆弧之间的面积,被感知到的Voronoi单元的边缘与感知圆相交于点A,B,Sshadow根据公式(6)进行计算:
S s h a d o w = 1 2 * δ 1 * R s 2 - 1 2 * sinδ 1 * R s 2 ; - - - ( 6 )
其中δ1表示被感知到的Voronoi单元的边缘所对应的感知圆的圆心角,即AP1、BP1之间的夹角,δ1根据余弦定理求得,
δ 1 = a r c c o s ( | AP 1 | 2 | BP 1 | 2 - | A B | 2 2 * | AP 1 | * | BP 1 | ) ; - - - ( 7 )
此时,sub-Voronoi单元的覆盖空洞面积计算公式为:
S S C H = 1 2 * s i n δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 * δ * R s 2 + S s h a d o w ; - - - ( 8 )
δ根据余弦定理求得,见公式(3);
情况(23):Voronoi单元的两个相邻顶点中的其中一个被动态传感器节点感知到;
sub-Voronoi单元的感知面积根据公式(9)计算:
S s s = 1 2 * δ * R s 2 - S s h a d o w ; - - - ( 9 )
其中,Sshadow表示被感知到的Voronoi单元的边缘与感知圆的圆弧之间的面积,被感知到的Voronoi单元的边缘与感知圆相交于点A,Sshadow根据公式(10)进行计算:
S s h a d o w = 1 2 * δ 2 * R s 2 - 1 2 * sinδ 2 * R s * | V 1 P 1 | ; - - - ( 10 )
其中δ2表示被感知到的Voronoi单元的边缘所对应的感知圆的圆心角,即AP1、V1P1之间的夹角,δ2根据余弦定理求得,
δ 2 = a r c c o s ( | AP 1 | 2 + | V 1 P 1 | 2 - | AV 1 | 2 2 * | AP 1 | * | V 1 P | ) ; - - - ( 11 )
此时,sub-Voronoi单元的覆盖空洞面积计算公式为:
S S C H = 1 2 * s i n δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 * δ * R s 2 + S s h a d o w ; ( 12 )
δ根据余弦定理求得,见公式(3);
情况(24):Voronoi单元的两相邻顶点都被动态传感器节点感知到;
整个sub-Voronoi单元都可以被动态传感器节点感知到,此时的sub-Voronoi单元覆盖空洞面积为0。
步骤(3):
每一个Voronoi单元内的动态传感器节点的感知面积根据Voronoi单元的顶点、Voronoi单元的边缘被自身Voronoi单元内的动态传感器节点的感知情况进行计算;
步骤(3)计算出每个Voronoi单元内的感知面积,分为以下四种情况:
Ss表示每个Voronoi单元内的感知面积;动态传感器节点P1、Voronoi单元的顶点V1、V2、V3
情况(31):Voronoi单元的顶点以及Voronoi单元的边缘均没有被感知到;
Voronoi单元内节点的感知面积根据公式(13)计算:
Ss=πRs 2;(13)
情况(32):Voronoi单元的所有顶点均没有被感知,其中的一条Voronoi单元边缘被自身动态传感器节点感知到;
以动态传感器节点P1为圆心的感知圆与Voronoi单元边缘的交点为A、B,AP1、BP1之间的夹角为θ;
Voronoi单元内动态传感器节点的感知面积根据公式(14)计算:
S s = πR s 2 - S s h a d o w = πR s 2 - ( 1 2 * θ * R s 2 - 1 2 * sin θ * R s 2 ) ; - - - ( 14 )
其中,θ根据余弦定理计算,
θ = a r c c o s ( | AP 1 | 2 | BP 1 | 2 - | A B | 2 2 * | AP 1 | * | BP 1 | ) ; - - - ( 15 )
其中,|AP1|表示点A与点P1之间的欧式距离;
情况(33):Voronoi单元的一个顶点被感知到
以动态传感器节点P1为圆心的感知圆与Voronoi单元边缘V1V2的交点为A、与Voronoi单元边缘V1V3的交点为B,AP1、V1P1之间的夹角为θ1,BP1、V1P1之间的夹角为θ2
Voronoi单元内动态传感器节点的感知面积根据公式(16)计算:
S s = πR s 2 - S s h a d o w = πR s 2 - ( 1 2 * θ 1 * R s 2 - 1 2 * sinθ 1 * R s * | V 1 P 1 | ) - ( 1 2 * θ 2 * R s 2 - 1 2 * sinθ 2 * R s * | V 1 P 1 | ) ; - - - ( 16 )
其中,θ1,θ2根据余弦定理计算,
θ 1 = arccos ( | AP 1 | 2 + | V 1 P 1 | 2 - | AV 1 | 2 2 * | AP 1 | * | V 1 P 1 | ) ; - - - ( 17 )
θ 2 = arccos ( | BP 1 | 2 + | V 1 P 1 | 2 - | BV 1 | 2 2 * | BP 1 | * | V 1 P 1 | ) ; - - - ( 18 )
情况(34):Voronoi单元的两个相邻的顶点被感知到
以动态传感器节点P1为圆心的感知圆与Voronoi单元边缘V1V2的交点为A、与Voronoi单元边缘V3V4的交点为B,被感知到的两个相邻的顶点是顶点V1和顶点V3,AP1、V1P1之间的夹角为θ1,V3P1、V1P1之间的夹角为θ2,V3P1、BP1之间的夹角为θ3
Voronoi单元内节点的感知面积根据公式(19)计算:
S s = πR s 2 - S 1 - S 2 - S 3 = πR s 2 - ( 1 2 * θ 1 * R s 2 - 1 2 * sinθ 1 * R s * | V 1 R 1 | ) - ( 1 2 * θ 2 * R s 2 - 1 2 * sinθ 2 * | V 1 P 1 | * | V 3 P 1 | ) - ( 1 2 * θ 3 * R s 2 - 1 2 * sinθ 3 * R s * | V 3 P 1 | ) ; - - - ( 19 )
其中S1、S2、S3分别表示包含线段AV1的阴影、包含线段V1V3的阴影、包含线段V3B的阴影部分的面积,V1、V3为Voronoi顶点,θ1,θ2,θ3根据余弦定理计算,
θ 1 = a r c c o s ( | AP 1 | 2 + | V 1 P 1 | 2 - | AV 1 | 2 2 * | AP 1 | * | V 1 P 1 | ) ; - - - ( 20 )
θ 2 = a r c c o s ( | V 1 P 1 | 2 + | V 3 P 1 | 2 - | V 1 P 3 | 2 2 * | V 1 P 1 | * | V 3 P 1 | ) ; - - - ( 21 )
θ 3 = a r c c o s ( | BP 1 | 2 + | V 3 P 1 | 2 - | BV 3 | 2 2 * | BP 1 | * | V 3 P 1 | ) ; - - - ( 22 )
步骤(3)的最优位置为:
目标sub-Voronoi单元的重心与动态传感器节点当前位置的中点或选取目标sub-Voronoi单元的内心与动态传感器节点当前位置的中点。
本发明的有益效果:
该方法不仅可以准确估计出Voronoi单元内覆盖空洞的位置,而且可以准确计算出每一个sub-Voronoi单元内覆盖空洞的面积,同时还可以快速的最大化提高区域覆盖效率,实现覆盖空洞修复,最大化网络利用率。
附图说明
图1是Voronoi图示例图;
图2是一个Voronoi图多边形实例;
图3是sub-Voronoi单元内所有顶点和边缘都没有被感知到的情况;
图4是sub-Voronoi单元内顶点都没有被感知到、边缘被感知到的情况;
图5是sub-Voronoi单元内一个顶点被感知到的情况;
图6是sub-Voronoi单元内两个顶点都被感知到的情况;
图7是Voronoi单元内所有顶点和边缘都没有被感知到的情况;
图8是Voronoi单元内所有顶点都没有被感知到、其中一条边缘被感知到的情况;
图9是Voronoi单元内一个顶点被感知到的情况;
图10是Voronoi单元内两个相邻顶点被感知到的情况;
图11(a)为移动节点采用本发明提出的算法在随机设置的环境中运动初始时节点分布情况,
图11(b)为移动节点采用本发明提出的算法在随机设置的环境中运动经过第一次循环后节点分布情况;
图11(c)为移动节点采用本发明提出的算法在随机设置的环境中运动经过多次循环后节点最终分布情况;
图12(a)为不同节点数量的环境中,相同环境设置下本发明提出的算法与VOR、Maxmin-edge算法的平均覆盖率比较;
图12(b)为不同节点数量的环境中,相同环境设置下本发明提出的算法与VOR、Maxmin-edge算法的平均覆盖效率比较;
图12(c)为不同节点数量的环境中,相同环境设置下本发明提出的算法与VOR、Maxmin-edge算法的最大覆盖率比较;
图12(d)为不同节点数量的环境中,相同环境设置下本发明提出的算法与VOR、Maxmin-edge算法的最大覆盖效率比较;
图12(e)为不同节点数量的环境中,相同环境设置下本发明提出的算法与VOR、Maxmin-edge算法的平均移动距离比较;
图13为本发明的方法流程图。
具体实施方式
下面结合附图与实施例对本发明作进一步说明。
假设传感器区域中有Nm个动态传感器节点,每个动态传感器节点随机分布,运行k次之后动态传感器节点的位置为Xi(k)=(xi(k),yi(k)),i=1,2,…,Nm,k=0,1,…;所有动态传感器节点的感知半径Rs相等、通信半径Rc相等,为了保证网络通信的连通性,节点的感知半径与通信半径之间需满足Rc≥2Rs
每一个动态传感器节点采用感知圆盘感知环境;二维平面中,动态传感器节点的感知区域是一个以动态传感器节点为圆心、半径为Rs的圆形封闭区域,该圆形封闭区域称为动态传感器节点的“感知圆盘”,位于感知圆盘内的任意一点都可以被确定的检测到;假设节点Pi的坐标为(xi,yi),对于二维平面内的任意一点P(x,y)可以被节点检测到的概率为:
Pr = 1 , d ( P i , P ) ≤ R s 0 , d ( P i , P ) > R s
d(Pi,P)表示节点Pi与任意点P之间的欧式距离;
为了计算每个Voronoi单元、每个sub-Voronoi单元内的感知面积,首先提出几个定理及其推论;
定理1:Voronoi顶点与其节点之间的距离大于节点的感知半径,则该Voronoi顶点处存在覆盖空洞;
证明:为了不失一般性,取Voronoi图中的任意一个Voronoi顶点,如图1中Voronoi顶点V1;由Voronoi图的性质可知节点P1的Voronoi多边形区域内任意一点到P1的距离比到其他任意节点的距离都小,且Voronoi边缘V5V1为P1、P3连线的中垂线的一段,|V1P1|=|V1P3|>Rs,因此若V1不能被自身节点感知到,其更不能被其余节点感知到,V1处存在覆盖空洞;
推论1:Voronoi顶点与其节点之间的距离小于节点的感知半径,则该Voronoi顶点处不存在覆盖空洞;
定理2:节点与Voronoi边缘之间的距离小于节点的感知半径,Voronoi边缘的其中一个顶点被节点感知到,在两个顶点都没有被感知到的情况下,若边缘所在直线与过节点的、与边缘垂直的直线的交点在边缘上,则Voronoi边缘可以被节点感知到;
证明:节点与Voronoi边缘之间的距离小于节点的感知半径,同时Voronoi边缘的其中一个顶点被节点感知到,根据推论1可以得到该Voronoi边缘可以被节点感知到;
节点与Voronoi边缘之间的距离小于节点的感知半径,在两个顶点都没有被感知到的情况下,如附图2中边缘V4V5所示,直线P1P6为过节点、与边缘垂直的直线,直线P1P6与线段V4V5相交于点B,BP1<Rs;若点B在线段V4V5上,则P1的感知圆与线段V4V5存在两个交点,边缘V4V5可以被节点感知到;若点B不在线段V4V5上,且顶点V4、V5都没有被感知到,则边缘V4V5不可以被节点感知到;
定理3:若一条Voronoi边缘至少被一个节点感知到,则该Voronoi边缘所在的sub-Voronoi单元内的感知面积为自身节点在该sub-Voronoi单元内的感知面积;
证明:为不失一般性,取任意一条被多个节点同时感知到的Voronoi边缘,如图1中V5V1,V5V1可以被节点P1、P2、P3同时感知到,V5V1所在sub-Voronoi区域为P1V5V1,依据Voronoi图的性质可知,P1V5V1区域中的任意一点,若未被P1感知到,则不会被其余节点感知到;因此即便该边缘被多个节点同时感知到,sub-Voronoi单元内的感知面积仍为自身节点在该sub-Voronoi单元内的感知面积;
如图13所示,
1.根据动态传感器节点位置将传感器区域划分
Voronoi图的定义:对于平面中的Nm个动态传感器节点而言,将平面划分为Nm个区域,每一个区域内包括一个动态传感器节点,该动态传感器节点所在的Voronoi区域是到该动态传感器节点距离最近的所有点的集合;Voronoi区域的边界是两个相邻区域内动态传感器节点连线的垂直平分线;图1是一个Voronoi图示例图,封闭圆表示节点的感知范围;每一个Voronoi图内不能被动态传感器节点感知到的部分构成覆盖空洞;
每一个Voronoi单元的面积根据以下公式计算:
S V C = 1 2 [ Σ l = 1 n - 1 ( x l y l + 1 - x l + 1 y l ) + ( x n y 1 - x 1 y n ) ]
其中SVC表示每一个Voronoi单元的面积,n表示该Voronoi单元的Voronoi顶点数量,(xl,yl)表示第l个Voronoi顶点的位置;注意Voronoi顶点必须以逆时针顺序排序,否则计算会出现错误;
2.将每一个Voronoi单元划分并计算每一个sub-Voronoi单元内覆盖空洞的面积
为了更快的提升区域覆盖率,将每一个节点的Voronoi单元再进行划分,具体的划分方法为:传感器节点与任意两相邻Voronoi顶点组成的三角形作为一个sub-Voronoi单元(SVC),一个Voronoi单元中的sub-Voronoi单元数量与其边缘数量相等;计算每一个sub_Voronoi单元内的覆盖空洞面积,具体分为以下四种情况(以节点P1、Voronoi顶点V1、Voronoi顶点V2组成的三角形作为一个sub-Voronoi单元为例):
(1)两相邻Voronoi顶点及其边缘都没有被节点检测到
如图3所示,SVC的感知面积可以根据以下公式计算:
S s s = 1 2 * δ * R s 2
其中Sss表示SVC的感知面积,δ表示两个Voronoi顶点分别与动态传感器节点相连的连线之间的夹角,δ根据余弦定理求得,
δ = a r c c o s ( | V 1 P 1 | 2 + | V 2 P 1 | 2 - | V 1 V 2 | 2 2 | V 1 P 1 | * | V 2 P 2 | ) ;
此时,SVC的覆盖空洞面积计算公式为:
S S C H = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - S s s = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 * δ * R s 2
其中SSCH表示SVC的覆盖空洞面积,|·|表示两个点之间的欧式距离;
(2)两个相邻Voronoi顶点没有被节点感知到,但其边缘被节点感知到
如图4所示,SVC的感知面积根据以下公式计算:
S s s = 1 2 * δ * R s 2 - S s h a d o w
其中Sshadow表示图中阴影部分的面积,Sshadow根据2-(2)中Sshadow的计算公式进行计算;
此时,SVC的覆盖空洞面积计算公式为:
S S C H = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 * δ * R s 2 + S s h a d p w
(3)两个相邻Voronoi顶点中的其中一个被节点感知到
如图5所示,SVC的感知面积根据以下公式计算:
S s s = 1 2 * δ * R s 2 - S s h a d o w
其中,Sshadow表示图中阴影部分的面积,Sshadow根据2-(3)中Sshadow的计算公式进行计算
此时,SVC的覆盖空洞面积计算公式为:
S S C H = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 * δ * R s 2 + S s h a d o w
(4)两相邻Voronoi顶点都被节点感知到
如图6所示,整个sub-Voronoi单元都可以被节点感知到,此时的SVC覆盖空洞面积为0;
3.计算每个Voronoi单元内的感知面积
Ss表示每个Voronoi单元内的感知面积;根据以上几个定理以及覆盖空洞面积计算公式可以计算出每个Voronoi单元内的感知面积,具体分为以下四种情况:
(1)节点的所有Voronoi顶点以及Voronoi边缘都没有被感知到
如图7所示,Voronoi单元内节点的感知面积可以根据以下公式计算:
Ss=πRs 2
(2)节点的所有Voronoi顶点都没有被感知到,其中的一条Voronoi边缘被自身节点感知到
如图8所示,节点P1的感知圆与Voronoi边缘的交点为A、B,AP1、BP1之间的夹角为θ;
Voronoi单元内节点的感知面积可以根据以下公式计算:
S s = πR s 2 - S s h a d o w = πR s 2 - ( 1 2 * θ * R s 2 - 1 2 * sin θ * R s 2 )
其中θ根据余弦定理计算,
θ = a r c c o s ( | AP 1 | 2 | BP 1 | 2 - | A B | 2 2 * | AP 1 | * | BP 1 | )
其中|AP1|表示点A与点P1之间的欧式距离;
(3)节点的一个Voronoi顶点被感知到
如图9所示,节点P1的感知圆与Voronoi边缘的交点为A、B,AP1、V1P1之间的夹角为θ1,BP1、V1P1之间的夹角为θ2
Voronoi单元内节点的感知面积可以根据以下公式计算:
S s = πR s 2 - S s h a d o w = πR s 2 - ( 1 2 * θ 1 * R s 2 - 1 2 * sinθ 1 * R s * | V 1 P 1 | ) - ( 1 2 * θ 2 * R s 2 - 1 2 * sinθ 2 * R s * | V 1 P 1 | )
其中θ1,θ2可以根据余弦定理计算,
θ 1 = a r c c o s ( | AP 1 | 2 + | V 1 P 1 | 2 - | AV 1 | 2 2 * | AP 1 | * | V 1 P 1 | ) ,
θ 2 = arccos ( | BP 1 | 2 + | V 1 P 1 | 2 - | BV 1 | 2 2 * | BP 1 | * | V 1 P 1 | ) ,
(4)节点的两个相邻Voronoi顶点被感知到
如图10所示,节点P1的感知圆与Voronoi边缘的交点为A、B,AP1、V1P1之间的夹角为θ1,V3P1、V1P1之间的夹角为θ2,V3P1、BP1之间的夹角为θ3
Voronoi单元内节点的感知面积可以根据以下公式计算:
S s = πR s 2 - S 1 - S 2 - S 3 = πR s 2 - ( 1 2 * θ 1 * R s 2 - 1 2 * sinθ 1 * R s * | V 1 R 1 | ) - ( 1 2 * θ 2 * R s 2 - 1 2 * sinθ 2 * | V 1 P 1 | * | V 3 P 1 | ) - ( 1 2 * θ 3 * R s 2 - 1 2 * sinθ 3 * R s * | V 3 P 1 | )
其中S1、S2、S3分别表示包含线段AV1的阴影、包含线段V1V3的阴影、包含线段V3B的阴影部分的面积,V1、V3为Voronoi顶点,θ1,θ2,θ3可以根据余弦定理计算,
θ 1 = a r c c o s ( | AP 1 | 2 + | V 1 P 1 | 2 - | AV 1 | 2 2 * | AP 1 | * | V 1 P 1 | ) ,
θ 2 = a r c c o s ( | V 1 P 1 | 2 + | V 3 P 1 | 2 - | V 1 P 3 | 2 2 * | V 1 P 1 | * | V 3 P 1 | ) ,
θ 3 = a r c c o s ( | BP 1 | 2 + | V 3 P 1 | 2 - | BV 3 | 2 2 * | BP 1 | * | V 3 P 1 | )
4.覆盖空洞修复
根据2、3部分内容描述,可以计算出每一个sub-Voronoi单元内的感知面积、覆盖空洞面积以及每一个Voronoi单元内的感知面积;每一个传感器节点负责覆盖相应的Voronoi单元,降低了问题复杂度,提高了网络覆盖效率与覆盖率;
本发明将每一个Voronoi单元内覆盖空洞面积最大的sub-Voronoi单元(三角形)作为节点运动的目标区域,在目标sub-Voronoi中提出两种用于计算覆盖空洞修复最优运动位置的方法,分别为:选取目标sub-Voronoi单元的重心与动态传感器节点当前位置的中点、选取目标sub-Voronoi单元的内心与动态传感器节点当前位置的中点;两种方法分别称为sub-Voronoi-half-gravity(SVHG)、sub-Voronoi-half-incenter(SVHI);所有动态传感器节点分别朝向两种方法求取的最优运动位置运动,所有节点完成一次位置更新,视为完成一次循环(oneround),重新划分一次Voronoi图,并重复步骤1-4直到运行到结束条件;通过对Voronoi图感知面积、sub-Voronoi图感知面积及覆盖空洞面积的计算可以准确估计空洞的位置并准确得到空洞的尺寸,移动传感器节点朝向SVHG或SVHI方法确定的最优运动位置运动,可以有效提高网络覆盖效率以及覆盖率;
5.覆盖效率与覆盖率计算
覆盖效率反应了节点的冗余程度,动态传感器节点覆盖效率数值越大,动态传感器节点的冗余程度越小;覆盖效率(PCE)为节点已覆盖监测区域面积与感知圆盘面积之和的比值;
P C E = Σ j = 1 N m S s ( j ) N m πR s 2
其中Ss(j)表示第j个动态传感器节点的感知面积;
覆盖率反应了动态传感器节点对整个传感器网络的覆盖程度,动态传感器节点覆盖率数值越大,动态传感器区域被覆盖的面积越大,覆盖效果越好;覆盖率PCR为动态传感器节点已覆盖监测区域面积与动态传感器区域面积的比值;
P C R = Σ j = 1 N m S s ( j ) A
其中A表示动态传感器区域A的面积;
6.基于子Voronoi图面积法的动态传感器网络覆盖空洞检测与修复
6.1基于子Voronoi图面积法的动态传感器网络覆盖空洞检测与修复算法步骤
步骤1:初始化,包括环境设定、动态传感器节点初始位置设定、动态传感器节点感知半径设定、动态传感器节点通信半径设定、动态传感器节点数量设定、终止条件设定;
步骤2:根据节点位置划分传感器区域,绘制Voronoi图、并计算每一个Voronoi的面积;
步骤3:将每一个Voronoi单元按照节点与任意两相邻Voronoi顶点组成的三角形作为一个sub-Voronoi单元的方法进行划分,一个Voronoi单元内sub-Voronoi单元数量与其Voronoi边缘数量相等,根据节点的感知圆与sub-Voronoi顶点、sub-Voronoi边缘的几何关系计算每一个sub-Voronoi单元的覆盖空洞面积;
步骤4:每一个节点朝向自身Voronoi单元内覆盖空洞面积最大的sub-Voronoi单元中的最优位置运动,最优位置通过两种方法进行计算选取,分别为:选取目标sub-Voronoi的重心与节点当前位置的中点、或选取目标sub-Voronoi的内心与节点当前位置的中点作为动态传感器节点的候选运动位置;所有节点完成一次位置更新后,视为完成一次循环(oneround);
根据节点的感知圆与Voronoi顶点、Voronoi边缘之间的几何关系计算每一个Voronoi单元内感知区域的面积,通过每个Voronoi单元内的感知面积计算出传感器网络中总感知面积,通过总感知面积的计算得到传感器网络的总覆盖率,通过判断总覆盖率是否在设定范围内来决定是否终止修复;
如果达到终止条件就结束,如果未达到回到步骤(2)重新划分Voronoi图,重复以上步骤,直到运行到结束条件或循环次数完成;
6.2仿真实验和结果分析
设定了三组实验进行比较说明;
第一组实验是为了验证本发明提出的算法的有效性;25个动态传感器节点随机分布在50m×50m区域中,节点的感知半径为7m;图11(a)、图11(b)和图11(c)显示了在上述实验设置下sub-Voronoi图法用于空洞检测以及SVHG算法用于空洞修复的结果;注意本例中的所有实验结果都是执行了66次仿真后得到的平均结果,在66次实验中传感器的初始位置都是随机的;算法终止的条件为循环15次;附图中提供了三幅运动过程的图像;经过第一次循环后,网络平均覆盖率从78.5%提升到90.25%,节点平均覆盖效率从51%提升到58.62%;算法在经过15次循环后终止,最终的网络覆盖率为96.35%、覆盖效率为62.59%;注意:在当前环境设置下,节点最大覆盖效率为从附图可以看出,利用SVHG算法对覆盖空洞进行修复后,各个节点比初始时更均匀的分布在传感器网络中,说明本发明提出的算法不仅可以精确的检测到空洞,而且有效对空洞进行修复,提高了网络覆盖率以及节点的覆盖效率;
第二组实验将本发明提出的算法与VOR(VORonoi-based)、Minimax、Maxmin-edge算法进行性能比较;10-40个动态传感器节点随机分布在50m×50m区域中,节点的感知半径为4m;算法终止的条件为循环10次;图12(a)、图12(c)显示了不同节点数量环境中,每一个节点在不同算法下的平均覆盖率以及最大覆盖率;由图中可以得出,本发明提出的空洞修复算法SVHG、SVHI的平均覆盖率略高于Maxmin-edge算法、高于VOR算法;同时,SVHG、SVHI算法用于空洞修复时的最高覆盖率也高于Maxmin-edge算法以及VOR算法;图中显示,SVHG、SVHI算法可以充分的覆盖传感器网络;图12(b)、图12(d)显示了不同节点数量环境中,每一个节点在不同算法下的平均覆盖效率以及最大覆盖效率;由图中可以得出,本发明提出的空洞修复算法SVHG、SVHI的平均覆盖率以及最大覆盖效率都要高于Maxmin-edge算法以及VOR算法;图中显示,SVHG、SVHI算法保证节点最大化的用于覆盖;图12(e)显示了不同算法中每一个节点的平均移动距离;图中显示较少数量的移动节点会产生较大的平均移动距离;另外,由图12(e)看出本发明提出的算法平均移动距离略高于Maxmin-edge算法,这可能会导致能量消耗增加,这将作为下一步的研究重点;该实验表明本发明提出的算法可以在条件允许的情况下最大化的覆盖环境,并最大化节点使用率;
第三组实验验证了本发明提出的算法与VOR、Maxmin-edge算法在相同数量节点、相同终止条件下的性能比较;22个动态传感器节点随机分布在30m×30m区域中,节点的感知半径为4m;算法终止的条件为在下一步运动中区域覆盖效率提升不大于0.1%;每种算法在上述终止条件下进行11次初始位置随机设置的实验,最终获得11次实验所得的各项性能平均值,见附表1所示;由附表1可以看出,在相同条件下四种算法终止所用的循环次数相差不大;另外,四种算法(VOR、Maxmin-edge、SVHG、SVHI)将网络的平均覆盖率分别提高了15.06%、16%、17.86%、16.22%,四种算法(VOR、Maxmin-edge、SVHG、SVHI)将网络的平均覆盖效率提高了9.79%、10.4%、14.53%、10.53%;由数值比较可以得出本发明提出的算法可以在同等条件下最大化网络覆盖率、最大化节点的利用率,进而可以将传感器网络更好的应用于实际中。
附表1
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (10)

1.基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,包括如下步骤:
步骤(1):采用Voronoi图将动态传感器网络区域划分为若干Voronoi单元,每个动态传感器节点负责一个Voronoi单元,计算每个Voronoi单元的面积;
步骤(2):将每个动态传感器节点的Voronoi单元划分为若干sub-Voronoi单元;检测每个sub-Voronoi单元内是否存在覆盖空洞,若存在,则计算每个sub-Voronoi单元内的覆盖空洞面积;
步骤(3):对覆盖空洞的修复;每个动态传感器节点朝向自身Voronoi图内覆盖空洞面积最大的sub-Voronoi单元内的最优位置运动;从而完成覆盖空洞的一次修复,每完成一次修复后,判断是否达到终止条件,如果达到就结束,如果未达到就重复步骤(1)-(3),直到完成整个动态传感器网络的覆盖空洞的修复。
2.如权利要求1所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,若终止条件的判断参数为总覆盖率,则步骤(3)中判断是否达到终止条件的过程为:
计算每个Voronoi单元内的动态传感器节点的感知面积;
通过每个Voronoi单元内的动态传感器节点感知面积计算得到动态传感器节点的总感知面积;
通过总感知面积除以传感器网络总面积,得到传感器网络的总覆盖率;
通过判断总覆盖率是否在设定范围内来决定是否终止修复。
3.如权利要求1所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,步骤(1)的步骤为:
假设动态传感器网络区域中有Nm个动态传感器节点,每个动态传感器节点随机分布,所有动态传感器节点的感知半径Rs相等、所有动态传感器节点的通信半径Rc相等,为了保证网络通信的连通性,动态传感器节点的感知半径与通信半径之间需满足Rc≥2Rs;每一个动态传感器节点采用感知圆盘感知环境;二维平面中,动态传感器节点的感知区域是以动态传感器节点为圆心、半径为Rs的圆形封闭区域,圆形封闭区域称为动态传感器节点的感知圆盘;
采用Voronoi图将传感器网络分为Nm个Voronoi单元,每个Voronoi单元包括一个动态传感器节点,每个Voronoi单元是距离该Voronoi单元内的动态传感器节点比距离其它动态传感器节点近的平面中任意点的集合,Voronoi单元的边界是两个相邻Voronoi单元内动态传感器节点连线的垂直平分线;每个Voronoi图内不能被动态传感器节点感知到的部分构成覆盖空洞;每个Voronoi单元的面积根据Voronoi单元的顶点的位置计算得到。
4.如权利要求1所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,步骤(1)的每个Voronoi单元的面积的计算公式为:
S V C = 1 2 [ Σ l = 1 n - 1 ( x l y l + 1 - x l + 1 y l ) + ( x n y 1 - x 1 y n ) ] ; - - - ( 1 )
其中,SVC表示每个Voronoi单元的面积,n表示每个Voronoi单元的Voronoi顶点数量,(xl,yl)表示第l个Voronoi顶点的位置。
5.如权利要求1所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,步骤(2)中:
每个动态传感器节点的Voronoi单元按照以下方法划分为sub-Voronoi单元:
动态传感器节点与任意两相邻Voronoi顶点组成的三角形作为一个sub-Voronoi单元,一个Voronoi单元内的sub-Voronoi单元数量与其Voronoi单元边缘数量相等。
6.如权利要求1所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,步骤(2)中计算每个sub_Voronoi单元内的覆盖空洞面积,分为以下四种情况:动态传感器节点P1、Voronoi单元的顶点V1、Voronoi单元的顶点V2组成的三角形作为一个sub-Voronoi单元:
情况(21):Voronoi单元的两相邻顶点及Voronoi单元的边缘都没有被动态传感器节点检测到;
情况(22):Voronoi单元的两个相邻顶点没有被动态传感器节点感知到,但Voronoi单元的边缘被动态传感器节点感知到;
情况(23):Voronoi单元的两个相邻顶点中的其中一个被动态传感器节点感知到;
情况(24):Voronoi单元的两相邻顶点都被动态传感器节点感知到。
7.如权利要求6所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,情况(21):
sub-Voronoi单元的感知面积根据公式(2)计算:
S s s = 1 2 * δ * R s 2 ; - - - ( 2 )
其中,Sss表示sub-Voronoi单元的感知面积,δ表示两个Voronoi顶点分别与动态传感器节点相连的连线之间的夹角,δ根据余弦定理求得;
δ = arccos ( | V 1 P 1 | 2 + | V 2 P 1 | 2 - | V 1 P 2 | 2 2 | V 1 P 1 | * | V 2 P 1 | ) ; - - - ( 3 )
此时,sub-Voronoi单元的覆盖空洞面积计算公式为:
S S C H = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - S s s = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 δ * R s 2 ; - - - ( 4 )
其中SSCH表示sub-Voronoi单元的覆盖空洞面积,|·|表示两个点之间的欧式距离;
情况(22):
sub-Voronoi单元的感知面积根据公式(5)计算:
S s s = 1 2 * δ * R s 2 - S s h a d o w ; - - - ( 5 )
其中Sshadow表示被感知到的Voronoi单元的边缘与感知圆的圆弧之间的面积,被感知到的Voronoi单元的边缘与感知圆相交于点A,B,Sshadow根据公式(6)进行计算:
S s h a d o w = 1 2 * δ 1 * R s 2 - 1 2 * sinδ 1 * R s 2 ; - - - ( 6 )
其中δ1表示被感知到的Voronoi单元的边缘所对应的感知圆的圆心角,即AP1、BP1之间的夹角,δ1根据余弦定理求得,
δ 1 = a r c c o s ( | AP 1 | 2 + | BP 1 | 2 - | A B | 2 2 * | AP 1 | * | BP 1 | ) ; - - - ( 7 )
此时,sub-Voronoi单元的覆盖空洞面积计算公式为:
S S C H = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 * δ * R s 2 + S s h a d o w ; - - - ( 8 )
δ根据余弦定理求得,见公式(3)。
8.如权利要求7所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,情况(23):
sub-Voronoi单元的感知面积根据公式(9)计算:
S s s = 1 2 * δ * R s 2 - S s h a d o w ; - - - ( 9 )
其中,Sshadow表示被感知到的Voronoi单元的边缘与感知圆的圆弧之间的面积,被感知到的Voronoi单元的边缘与感知圆相交于点A,Sshadow根据公式(10)进行计算:
S s h a d o w = 1 2 * δ 2 * R s 2 - 1 2 * sinδ 2 * R s * | V 1 P 1 | ; - - - ( 10 )
其中δ2表示被感知到的Voronoi单元的边缘所对应的感知圆的圆心角,即AP1、V1P1之间的夹角,δ2根据余弦定理求得,
δ 2 = a r c c o s ( | AP 1 | 2 + | V 1 P 1 | 2 - | AV 1 | 2 2 * | AP 1 | * | V 1 P | ) ; - - - ( 11 )
此时,sub-Voronoi单元的覆盖空洞面积计算公式为:
S S C H = 1 2 * sin δ * | V 1 P 1 | * | V 2 P 1 | - 1 2 * δ * R s 2 + S s h a d o w ; - - - ( 12 )
δ根据余弦定理求得,见公式(3);
情况(24):整个sub-Voronoi单元都可以被动态传感器节点感知到,此时的sub-Voronoi单元覆盖空洞面积为0。
9.如权利要求1所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,
步骤(3):每一个Voronoi单元内的动态传感器节点的感知面积根据Voronoi单元的顶点、Voronoi单元的边缘被自身Voronoi单元内的动态传感器节点的感知情况进行计算;
步骤(3)计算出每个Voronoi单元内的感知面积,分为以下四种情况:
Ss表示每个Voronoi单元内的感知面积;动态传感器节点P1、Voronoi单元的顶点V1、V2、V3
情况(31):Voronoi单元的顶点以及Voronoi单元的边缘均没有被感知到;
Voronoi单元内节点的感知面积根据公式(13)计算:
Ss=πRs 2;(13)
情况(32):Voronoi单元的所有顶点均没有被感知,其中的一条Voronoi单元边缘被自身动态传感器节点感知到;
以动态传感器节点P1为圆心的感知圆与Voronoi单元边缘的交点为A、B,AP1、BP1之间的夹角为θ;
Voronoi单元内动态传感器节点的感知面积根据公式(14)计算:
S s = πR s 2 - S s h a d o w = πR s 2 - ( 1 2 * θ * R s 2 - 1 2 * s i n θ * R s 2 ) ; - - - ( 14 )
其中,θ根据余弦定理计算,
θ = a r c c o s ( | AP 1 | 2 + | BP 1 | 2 - | A B | 2 2 * | AP 1 | * | BP 1 | ) ; - - - ( 15 )
其中,|AP1|表示点A与点P1之间的欧式距离;
情况(33):Voronoi单元的一个顶点被感知到
以动态传感器节点P1为圆心的感知圆与Voronoi单元边缘V1V2的交点为A、与Voronoi单元边缘V1V3的交点为B,AP1、V1P1之间的夹角为θ1,BP1、V1P1之间的夹角为θ2
Voronoi单元内动态传感器节点的感知面积根据公式(16)计算:
S s = πR s 2 - S s h a d o w = πR s 2 - ( 1 2 * θ 1 * R s 2 - 1 3 sinθ 1 * R s * | V 1 P 1 | ) - ( 1 2 * θ 2 * R s 2 - 1 2 * sinθ 2 * R s * | V 1 P 1 | ) ; - - - ( 16 )
其中,θ1,θ2根据余弦定理计算,
θ 1 = a r c c o s ( | AP 1 | 2 + | V 1 P 1 | 2 - | AV 1 | 2 2 * | AP 1 | * | V 1 P 1 | ) ; - - - ( 17 )
θ 2 = a r c c o s ( | BP 1 | 2 + | V 1 P 1 | 2 - | BV 1 | 2 2 * | BP 1 | * | V 1 P 1 | ) ; - - - ( 18 )
情况(34):Voronoi单元的两个相邻的顶点被感知到
以动态传感器节点P1为圆心的感知圆与Voronoi单元边缘V1V2的交点为A、与Voronoi单元边缘V3V4的交点为B,被感知到的两个相邻的顶点是顶点V1和顶点V3,AP1、V1P1之间的夹角为θ1,V3P1、V1P1之间的夹角为θ2,V3P1、BP1之间的夹角为θ3
Voronoi单元内节点的感知面积根据公式(19)计算:
S s = πR s 2 - S 1 - S 2 - S 3 = πR s 2 - ( 1 2 * θ 1 * R s 2 - 1 2 * sinθ 1 * R s * | V 1 P 1 | ) - ( 1 2 * θ 2 * R s 2 - 1 2 * sinθ 2 * | V 1 P 1 | * | V 3 P 1 | ) - ( 1 2 * θ 3 * R s 2 - 1 2 * sinθ 2 * R s * | V 3 P 1 | ) ; - - - ( 19 )
其中S1、S2、S3分别表示包含线段AV1的阴影、包含线段V1V3的阴影、包含线段V3B的阴影部分的面积,V1、V3为Voronoi顶点,θ1,θ2,θ3根据余弦定理计算,
θ 1 = a r c c o s ( | AP 1 | 2 + | V 1 P 1 | 2 - | AV 1 | 2 2 * | AP 1 | * | V 1 P 1 | ) ; - - - ( 20 )
θ 2 = a r c c o s ( | V 1 P 1 | 2 + | V 3 P 1 | 2 - | V 1 V 3 | 2 2 * | V 1 P 1 | * | V 3 P 1 | ) ; - - - ( 21 )
θ 3 = a r c c o s ( | BP 1 | 2 + | V 3 P 1 | 2 - | BV 3 | 2 2 * | BP 1 | * | V 3 P 1 | ) ; - - - ( 22 ) .
10.如权利要求1所述的基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法,其特征是,步骤(3)的最优位置为:
目标sub-Voronoi单元的重心与动态传感器节点当前位置的中点或选取目标sub-Voronoi单元的内心与动态传感器节点当前位置的中点。
CN201510875060.2A 2015-12-02 2015-12-02 基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法 Active CN105376791B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510875060.2A CN105376791B (zh) 2015-12-02 2015-12-02 基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510875060.2A CN105376791B (zh) 2015-12-02 2015-12-02 基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法

Publications (2)

Publication Number Publication Date
CN105376791A true CN105376791A (zh) 2016-03-02
CN105376791B CN105376791B (zh) 2018-08-28

Family

ID=55378500

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510875060.2A Active CN105376791B (zh) 2015-12-02 2015-12-02 基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法

Country Status (1)

Country Link
CN (1) CN105376791B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108540989A (zh) * 2018-03-05 2018-09-14 东南大学 一种用于无线传感器网络的单纯复形简化方法及设备
CN108650680A (zh) * 2018-03-07 2018-10-12 东南大学 一种基于波达角的无线传感器网络空洞修复方法
CN108769164A (zh) * 2018-05-17 2018-11-06 重庆电子工程职业学院 一种海洋监测物联网三维空间探测节点的部署方法
CN109714803A (zh) * 2019-01-02 2019-05-03 清华大学深圳研究生院 一种障碍物感知的机会数据传输方法
CN109743740A (zh) * 2019-02-27 2019-05-10 西北师范大学 基于3D-Voronoi剖分的有向传感器网络目标监测方法
CN110602661A (zh) * 2019-08-29 2019-12-20 安徽工业大学 二维无线传感器网络覆盖漏洞的修复方法
CN113099469A (zh) * 2021-03-02 2021-07-09 江南大学 一种针对异构网感知态势的缺陷空洞检测与修补方法
CN113490222A (zh) * 2021-06-18 2021-10-08 哈尔滨理工大学 异构无线传感网络覆盖洞修补方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102361514A (zh) * 2011-10-24 2012-02-22 苏州大学 具有移动节点的监测区域空洞修复方法
CN103856951A (zh) * 2014-01-15 2014-06-11 浙江工业大学 一种基于多传感器概率感知模型的覆盖空洞消除方法
CN104135732A (zh) * 2014-07-31 2014-11-05 哈尔滨工业大学(威海) 无线传感器网络覆盖空洞面积的计算方法
CN104159236A (zh) * 2014-06-23 2014-11-19 江南大学 基于Voronoi图盲区的无线传感器网络节点覆盖优化方法
US20150119082A1 (en) * 2013-10-28 2015-04-30 Verizon Patent And Licensing Inc. Method and apparatus for providing positioning services usung multi-space clustering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102361514A (zh) * 2011-10-24 2012-02-22 苏州大学 具有移动节点的监测区域空洞修复方法
US20150119082A1 (en) * 2013-10-28 2015-04-30 Verizon Patent And Licensing Inc. Method and apparatus for providing positioning services usung multi-space clustering
CN103856951A (zh) * 2014-01-15 2014-06-11 浙江工业大学 一种基于多传感器概率感知模型的覆盖空洞消除方法
CN104159236A (zh) * 2014-06-23 2014-11-19 江南大学 基于Voronoi图盲区的无线传感器网络节点覆盖优化方法
CN104135732A (zh) * 2014-07-31 2014-11-05 哈尔滨工业大学(威海) 无线传感器网络覆盖空洞面积的计算方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
《IEEE,CONTROL AND DECISION CONFERENCE (CCDC), 2015 27TH CHINESE》 *
《东北大学学报》 *
《信息通信》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108540989A (zh) * 2018-03-05 2018-09-14 东南大学 一种用于无线传感器网络的单纯复形简化方法及设备
CN108540989B (zh) * 2018-03-05 2021-08-10 东南大学 一种用于无线传感器网络的单纯复形简化方法及设备
CN108650680A (zh) * 2018-03-07 2018-10-12 东南大学 一种基于波达角的无线传感器网络空洞修复方法
CN108769164A (zh) * 2018-05-17 2018-11-06 重庆电子工程职业学院 一种海洋监测物联网三维空间探测节点的部署方法
CN109714803A (zh) * 2019-01-02 2019-05-03 清华大学深圳研究生院 一种障碍物感知的机会数据传输方法
CN109743740A (zh) * 2019-02-27 2019-05-10 西北师范大学 基于3D-Voronoi剖分的有向传感器网络目标监测方法
CN109743740B (zh) * 2019-02-27 2021-10-15 西北师范大学 基于3D-Voronoi剖分的有向传感器网络目标监测方法
CN110602661A (zh) * 2019-08-29 2019-12-20 安徽工业大学 二维无线传感器网络覆盖漏洞的修复方法
CN110602661B (zh) * 2019-08-29 2022-02-25 安徽工业大学 二维无线传感器网络覆盖漏洞的修复方法
CN113099469A (zh) * 2021-03-02 2021-07-09 江南大学 一种针对异构网感知态势的缺陷空洞检测与修补方法
CN113099469B (zh) * 2021-03-02 2022-09-06 江南大学 一种针对异构网感知态势的缺陷空洞检测与修补方法
CN113490222A (zh) * 2021-06-18 2021-10-08 哈尔滨理工大学 异构无线传感网络覆盖洞修补方法

Also Published As

Publication number Publication date
CN105376791B (zh) 2018-08-28

Similar Documents

Publication Publication Date Title
CN105376791A (zh) 基于sub-Voronoi图面积法的动态传感器网络覆盖空洞检测修复方法
CN109541634B (zh) 一种路径规划方法、装置和移动设备
CN107766405B (zh) 自动车辆道路模型定义系统
CN104318258B (zh) 一种基于时域模糊和卡尔曼滤波器的车道线检测方法
US9304001B2 (en) Position recognition methods of autonomous mobile robots
CN110223302A (zh) 一种基于旋转区域提取的舰船多目标检测方法
CN105353368B (zh) 一种基于策略判决的自适应变结构雷达对海目标跟踪方法
CN105392146A (zh) 基于三维地形修正的wsn覆盖盲区检测方法
CN102930245B (zh) 一种车辆跟踪方法及系统
CN106873599A (zh) 基于蚁群算法和极坐标变换的无人自行车路径规划方法
CN102158988B (zh) 一种有向传感器网络强栅栏覆盖判定方法
CN104535960B (zh) 一种基于rfid的室内快速定位方法
CN113345008B (zh) 考虑轮式机器人位姿估计的激光雷达动态障碍物检测方法
US20060204097A1 (en) Method and system for implementing N-dimensional object recognition using dynamic adaptive recognition layers
CN103473763B (zh) 基于启发式概率Hough变换的道路边缘检测方法
CN103491591B (zh) 无线传感器网络复杂区域划分方法和节点定位方法
CN107025657A (zh) 一种基于视频图像的车辆行为轨迹检测方法
CN106503846A (zh) 一种电力设备巡检路线计算方法
CN103839081B (zh) 一种基于拓扑表达的跨视角步态识别方法
Zhang et al. Distributed coverage optimization for deployment of directional sensor networks
Lian et al. Improved coding landmark-based visual sensor position measurement and planning strategy for multiwarehouse automated guided vehicle
Farzadpour et al. On performance measurement for a heterogeneous planar field sensor network
CN107222925A (zh) 一种基于聚类优化的节点定位方法
CN101316200B (zh) 一种检测与修补无线视频传感器网络最坏情况覆盖的方法
CN108981717A (zh) 一种基于双曲度规的路径规划方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant