基于混合策略的异构有向传感器网络动态覆盖方法技术

技术编号:14493938 阅读:114 留言:0更新日期:2017-01-29 16:52
本发明专利技术公开了一种基于混合策略的异构有向传感器网络动态覆盖方法,根据节点分布情况将节点归为边界节点或非边界节点,然后调整节点的感知方向,减少覆盖冗余;进一步检测是否存在覆盖空洞,若存在的覆盖空洞,则计算节点的最佳位置,最后将节点移动到最佳位置处。有益效果:采用本发明专利技术的基于混合策略的异构有向传感器网络动态覆盖方法,减少覆盖冗余,将冗余节点移动至优化位置对覆盖空洞进行修复。结果证明,提出算法较之于比较算法能有效的提高网络覆盖率和降低能量消耗。

【技术实现步骤摘要】

本专利技术涉及智能控制领域,特别是涉及一种基于混合策略的异构有向传感器网络动态覆盖方法
技术介绍
近年来,随着硬件技术的发展,视频传感器、超声波传感器和红外传感器等传感器价格越来越低廉,使得有向传感器网络的应用越来越广泛,在视频监控、智能家居和环境监测等场合得到广泛应用。覆盖控制作为有向传感器网络的一个基本问题,是反映网络服务质量的重要指标,近年来受到越来越多研究者的重视。不同于传统的全向传感器节点,有向传感器节点的覆盖区域不仅取决于节点的位置,而且还跟节点的感知角度和感知方向有关。有向传感器网络的动态覆盖算法是指通过改变节点的感知方向或者节点的物理位置来达到提高网络覆盖率的目的。近年来,有向传感器网络的动态覆盖算法受到越来越多研究者的重视。虽然对有向传感器网络覆盖问题进行研究,并取得了一定的成果,但现有的研究成果均假定参与覆盖的有向传感器节点类型相同,即节点的感知半径、感知角度、移动能力等参数都完全相同,忽略了节点异构性对有向传感器网络覆盖性能的影响以及具有网络扩展性能差的缺点。同时,现有的动态覆盖算法仅仅单纯依靠感知方向的调整或者节点物理位置的改变进而达到增强网络覆盖性能的目的,未能充分将两者结合起来考虑对覆盖性能的影响。另外,在某些场景中,仅仅依靠节点感知方向的调整可能会造成覆盖“空洞”的现象。
技术实现思路
为解决以上技术问题,本专利技术提供一种基于混合策略的异构有向传感器网络动态覆盖方法,通过调整节点的感知方向,减少节点在覆盖区域内的重叠面积,通过调整节点的物理位置,减少覆盖区域中未覆盖的区域面积。技术方案如下:一种基于混合策略的异构有向传感器网络动态覆盖方法,其关键在于包括以下步骤:步骤1,将传感器网络的监测区域分为N个面积相同的栅格,并获取每个栅格的覆盖情况;步骤2,对监测区域内的节点si进行分类,确定节点si是边界节点还是非边界节点,节点si表示监测区域内的第i个传感器,i=1,2,3…H,H为监测区域内的传感器总数;步骤3,判定节点si是否需要调整方向,若不需要调整,则节点si保持原方向,进入步骤5;若需要调整,则进入步骤4;步骤4,判定节点si是否为冗余节点,若不是冗余节点,则将节点si调整到最佳感知方向,之后进入步骤5;若是冗余节点,则进入步骤5;步骤5,令i=i+1,判定i是否大于H,若i大于H,则进入步骤6,否则,返回步骤2;步骤6,判定监测区域内是否有栅格未被任何节点感知,若所有栅格均被节点感知,则保持传感网络中所有节点的原位置不变,算法结束;在存在冗余节点的条件下,若有栅格未被任何节点感知,则进入步骤7;步骤7,调整所有冗余节点的物理位置,选择使区域覆盖率最大的物理位置作为冗余节点的最佳位置。采用上述方法,通过将监测区域划分成若干个面积相同的栅格,并根据每个栅格的覆盖情况来确定每个节点的感知方向,充分考虑了节点异构性对网络覆盖性能的影响,使网络的扩展性得到提高。并且将感知方向的调整和节点物理位置调整相结合,增强了网络覆盖性能,避免出现未覆盖的区域。更进一步的,步骤1中栅格的覆盖情况包括覆盖栅格的节点序号、栅格是否被覆盖、栅格是否被重复覆盖的情况。采用上述方法,便于对每个栅格的覆盖情况进行统计。更进一步的,步骤2中通过节点si与监测区域边界的最近的欧式距离d来对节点si进行分类,若欧式距离d小于阈值Q,节点si为边界节点,反之为非边界节点。采用上述方法,能将节点分为边界节点和非边界节点,对两类不同的节点采用不同的方法进行感知方向调整,使节点感知方向调整更加准确。更进一步的,步骤3中包括判定边界节点是否需要调整感知方向和判定非边界节点是否需要调整感知方向:1)判定边界节点进行是否需要调整感知方向:a,计算边界节点的感知面积ci,通过计算边界节点覆盖范围内的栅格数量得出感知面积ci;b,按照以下公式判定边界节点是否需要调整感知方向:其中,p为预设阈值,为节点si的感知角度,为节点si的感知半径,Sboundary=1表示节点si需要调整感知方向,Sboundary=0表示不需要调整感知方向;2)判定非边界节点进行是否需要调整感知方向:A、统计非边界节点的覆盖范围内重复覆盖的栅格数,即统计非边界节点所覆盖的栅格中,被其他节点重复覆盖的栅格总数;B、判定重复覆盖的栅格总数是否超过预设值θt,若超过,则非边界节点需要调整感知方向,反之,则不需要调整感知方向。采用上述方法,对边界节点和非边界节点进行阈值判定,不需要调整感知方向的节点不用进行方向调整,避免做无用功。因为边界节点和非边界节点的覆盖情况不一样,所以采用不同的方法对边界节点和非边界节点进行判定,更加准确。更进一步的,步骤4中包括判定边界节点是否为冗余节点和判定非边界节点是否为冗余节点的步骤;第一、判定边界节点是否为冗余节点:步骤4.1,计算边界节点的边际覆盖效用SA,即只被边界节点感知的栅格数;步骤4.2,边界节点沿同一旋转方向以固定角度BC旋转A次,并计算每次旋转后的边际覆盖效用Sa,a=1,2,3……A,A=2×π/BC;步骤4.3,判定每次旋转后的边际覆盖效用Sa是否大于SA,若大于,则选择旋转后所有边际覆盖效用Sa际中值最大所对应感应方向为最佳感知方向;否则,所述边界节点为冗余节点;第二、判定非边界节点是否为冗余节点:步骤4.1a、计算非边界节点的边际覆盖效用SB,即只被非边界节点自身感知的栅格数;步骤4.1b、非边界节点获取自身的相邻节点数,即在非边界节点的通信半径内的节点的数量;步骤4.1c、所有非边界节点将相邻节点数发送汇聚节点,汇聚节点获取覆盖区域的相邻节点总数;步骤4.1d、汇聚节点根据相邻节点总数得出覆盖区域的平均节点数并发送给每一个非边界节点;步骤4.1e、每个非边界节点判定平均节点数是否大于自身的相邻节点数进行比较;若相邻节点数大于平均节点数,则该非边界节点处于节点分布密集区域,所述非边界节点沿同一旋转方向以固定角度Small_Angle旋转2×π/Small_Angle次,并计算每次旋转后非边界节点的边际覆盖效用Sb1;b1=1,2,3……2×π/Small_Angle;若相邻节点数小于平均节点数,则该非边界节点处于节点分布稀疏区域,所述非边界节点沿同一旋转方向以固定角度Big_Angle旋转2×π/Big_Angle次,并计算每次旋转后非边界节点的边际覆盖效用Sb2,b2=1,2,3……2×π/Big_Angle;步骤4.1f、判定每次旋转后的边际覆盖效用Sb1、Sb2是否大于SB,若大于,则选择旋转后所有边际覆盖效用Sb1、Sb2中最大值所对应感应方向为最佳感知方向;否则所述非边界节点为冗余节点。采用上述方法,因为边界节点和非边界节点对栅格的覆盖情况不同,所以采用不同的方法分别对边界节点和非边界节点中的冗余节点进行筛选,并调整节点的感知方向,使调整后的节点的感知方向更加准确,增强网络的覆盖性能。更进一步的,判定非边界节点是否为冗余节点中的步骤4.1b采用以下方法获取相邻节点数:节点si在其通信半径内发出一条Neighbor_discover消息,消息内包含节点si的唯一ID、物理位置感知半径感知角度和感知方向收到Neighbor_discover消息的节点sj则回复节点si一个Ac本文档来自技高网...
基于混合策略的异构有向传感器网络动态覆盖方法

【技术保护点】
一种基于混合策略的异构有向传感器网络动态覆盖方法,其特征在于包括以下步骤:步骤1,将传感器网络的监测区域分为N个面积相同的栅格,并获取每个栅格的覆盖情况;步骤2,对监测区域内的节点si进行分类,确定节点si是边界节点还是非边界节点,节点si表示监测区域内的第i个传感器,i=1,2,3…H,H为监测区域内的传感器总数;步骤3,判定节点si是否需要调整方向,若不需要调整,则节点si保持原方向,进入步骤5;若需要调整,则进入步骤4;步骤4,判定节点si是否为冗余节点,若不是冗余节点,则将节点si调整到最佳感知方向,之后进入步骤5;若是冗余节点,则进入步骤5;步骤5,令i=i+1,判定i是否大于H,若i大于H,则进入步骤6,否则,返回步骤2;步骤6,判定监测区域内是否有栅格未被任何节点感知,若所有栅格均被节点感知,则保持传感网络中所有节点的原位置不变,算法结束;在存在冗余节点的条件下,若有栅格未被任何节点感知,则进入步骤7;步骤7,调整所有冗余节点的物理位置,选择使区域覆盖率最大的物理位置作为冗余节点的最佳位置。

【技术特征摘要】
1.一种基于混合策略的异构有向传感器网络动态覆盖方法,其特征在于包括以下步骤:步骤1,将传感器网络的监测区域分为N个面积相同的栅格,并获取每个栅格的覆盖情况;步骤2,对监测区域内的节点si进行分类,确定节点si是边界节点还是非边界节点,节点si表示监测区域内的第i个传感器,i=1,2,3…H,H为监测区域内的传感器总数;步骤3,判定节点si是否需要调整方向,若不需要调整,则节点si保持原方向,进入步骤5;若需要调整,则进入步骤4;步骤4,判定节点si是否为冗余节点,若不是冗余节点,则将节点si调整到最佳感知方向,之后进入步骤5;若是冗余节点,则进入步骤5;步骤5,令i=i+1,判定i是否大于H,若i大于H,则进入步骤6,否则,返回步骤2;步骤6,判定监测区域内是否有栅格未被任何节点感知,若所有栅格均被节点感知,则保持传感网络中所有节点的原位置不变,算法结束;在存在冗余节点的条件下,若有栅格未被任何节点感知,则进入步骤7;步骤7,调整所有冗余节点的物理位置,选择使区域覆盖率最大的物理位置作为冗余节点的最佳位置。2.根据权利要求1所述基于混合策略的异构有向传感器网络动态覆盖方法,其特征在于:步骤1中栅格的覆盖情况包括覆盖栅格的节点序号、栅格是否被覆盖、栅格是否被重复覆盖的情况。3.根据权利要求1所述基于混合策略的异构有向传感器网络动态覆盖方法,其特征在于:步骤2中通过节点si与监测区域边界的最近的欧式距离d来对节点si进行分类,若欧式距离d小于阈值Q,则节点si为边界节点,反之为非边界节点。4.根据权利要求1所述基于混合策略的异构有向传感器网络动态覆盖方法,其特征在于:步骤3中包括判定边界节点是否需要调整感知方向和判定非边界节点是否需要调整感知方向:1)判定边界节点进行是否需要调整感知方向:a,计算边界节点的感知面积ci,通过计算边界节点覆盖范围内的栅格数量得出感知面积ci;b,按照以下公式判定边界节点是否需要调整感知方向:其中,p为预设阈值,为节点si的感知角度,为节点si的感知半径,Sboundary=1表示节点si需要调整感知方向,Sboundary=0表示不需要调整感知方向;2)判定非边界节点进行是否需要调整感知方向:A、统计非边界节点的覆盖范围内重复覆盖的栅格数,即统计非边界节点所覆盖的栅格中,被其他节点重复覆盖的栅格总数;B、判定重复覆盖的栅格总数是否超过预设值θt,若超过,则非边界节点需要调整感知方向,反之,则不需要调整感知方向。5.根据权利要求1所述基于混合策略的异构有向传感器网络动态覆盖方法,其特征在于:步骤4中包括判定边界节点是否为冗余节点和判定非边界节点是否为冗余节点的步骤;第一、判定边界节点是否为冗余节点:步骤4.1,计算边界节点的边际覆盖效用SA,即只被边界节点感知的栅格数;步骤4.2,边界节点沿同一旋转方向以固定角度BC旋转A次,并计算每次旋转后的边际覆盖效用Sa,a=1,2,3……A,A=2×π/BC;步骤4.3,判定每次旋转后的边际覆盖效用Sa是否大于SA,若大于,则选择旋转后所有边际覆盖效用Sa际中值最大所对应感应方向为最佳感知方向;否则,所述边界节点为冗余节点;第二、判定非边界节点是否为冗余节点:步骤4.a、计算非边界节点的边际覆盖效用SB,即只被非边界节点自身感知的栅格数;步骤4.b、非边界节点获取自身的相邻节点数,即在非边界节点的通信半径内的节点的数量;步骤4.c、所有非边界节点将相邻节点数发送汇聚节点,汇聚节点获取覆盖区域的相邻节点总数;步骤4.d、汇聚节点根据相邻节点总数得出覆盖区域的平均节点数并发送给每一个非边界节点;步骤4.e、每个非边界节点判定平均节点数是否大于自身的相邻节点数进行比较;若相邻节点数大于平均节点数,则该非边界节点处于节点分布密集区域,所述非边界节点沿同一旋转方向以固定角度Small_Angle旋转2×π/Small_Angle次,并计算每次旋转后非边界节点的边际覆盖效用Sb1;b1=1,2,3……2×π/Small_Angle;若相邻节点数小于平均节点数,则该非边界节点处于节点分布稀疏区域,所述非边界节点沿同一旋转方向以固定角度Big_Angle旋转2×π/Big_Angle次,并计算每次旋转后非边界节点的边际覆盖效用Sb2,b2=1,2,3……2×π/Big_Angle;步骤4.f、判定每次旋转后的边际覆盖效用Sb1、Sb2是否大于SB,若大于,则选择旋转后所有边际覆盖效用Sb1、Sb2中最大值所对应感应方向为最佳感知方向;否则所述非边界节点为冗余节点。6.根据权利要求5所述基于混合策略的异构有向传感器网络动态覆盖方法,其特征在于:判定非边界节点是否为冗余节点中的步骤4.b采用以下方法获取相邻节点数:节点si在其通信半径内发出一条Neighbor_discover消息,消息内包含节点si的唯一ID、物理位置感知半径感知角度和感知方向收到Neighbor_discover消息的节点sj则回复节点si一个Ack消息,消息内包含节点si的ID和节点sj的ID,节点si通过统计收到的Ack消息得到其邻居节点数。7.根据权利要求1所述基于混合策略的异构有向传感器网络动态覆盖方法,其特征在于:步骤7采用以下方法确定冗余节点sk的最...

【专利技术属性】
技术研发人员:李明胡江平
申请(专利权)人:重庆工商大学
类型:发明
国别省市:重庆;50

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1