本发明涉及一种针对随机异构传感网的节点调度优化方法,属于传感器网络技术领域。
背景技术:
可移动的无线传感器网络(wirelesssensornetworks,wsns)以其对网络条件的适应性和高度的灵活性,被广泛应用于各种现代应用中。wsns中节点覆盖效率直接影响网络服务质量,大量传感器节点通过抛撒的方式安放在目标监测区域中。由于节点密度大及部署的随机性,导致目标监测区域内节点部署极不均匀,网络覆盖率低下。
对移动传感器网络的覆盖研究则弥补了节点随机部署的初始化方式对网络带来的不利影响,合理的节点移动策略能够以较短的移动距离完成对网络节点位置的部署,从而提高节点的覆盖利用效率和目标监测区域的覆盖率。
传统的虚拟力算法将网络中的节点看作是具有相互作用力的粒子,对节点进行受力分析的过程中往往需要考虑未被覆盖的网格点对节点的引力作用,这对算法复杂度造成了一定程度的负担;同时单纯依靠距离阈值对边缘节点的移动处理也不能满足多级异构网络的覆盖效果。
技术实现要素:
为了解决目前存在的由于节点密度大及部署的随机性,导致区域内节点部署极不均匀,导致网络覆盖效率低下的问题,本发明提供了一种针对随机异构传感网的节点调度优化方法,所述方法包括:
步骤一:在目标监测区域i=b×l的四个顶角部署虚拟节点,即
步骤二:利用扩充后的节点集
步骤三:通过tp的平衡点cp和关键点kg以及邻居节点引导节点s进行位置优化更新。
可选的,所述步骤三包括:
3.1确定tp的平衡点cp和关键点kg;
3.2利用四个虚拟节点对网络中的关键点kg进行二进制编码,确定越界关键点;
3.3根据网络节点si分别受到的传感器节点间的力
可选的,所述平衡点cp(cxp,cyp)满足以下条件:
其中,d(sj,cp)表示节点sj与平衡点cp之间的距离,d(si,cp)表示节点si与平衡点cp之间的距离,d(sl,cp)表示节点sl与平衡点cp之间的距离;节点si、sj和sl为目标监测区域i内的三个随机异构节点;
可选的,所述关键点kg(kxg,kyg)为节点si的感知圆盘si与其邻居节点sj的感知圆盘sj的交点,节点si的感知圆盘si与其邻居节点sj的感知圆盘sj存在感知重叠区域即
节点si(xi,yi)的感知圆盘
节点sj(xj,yj)的感知圆盘
可选的,所述3.2利用四个虚拟节点对网络中的关键点kg进行二进制编码,确定越界关键点,包括:
利用四个虚拟节点对网络中的每一个关键点均形成一个染色体bg={bv|v=1,2,3,4},其中:
∠(si,kg)代表以节点si为原点,水平方向为正方向,建立坐标系后,si到节点kg连线的方向角,当关键点kg的染色体bg≠{1,1,1,1}时,即代表关键点kg越界,为越界的关键点。
可选的,所述网络节点si受到的传感器节点间的力
其中,两两节点间产生力作用的距离阈值
当dth≤d(si,sj)≤ri+rj时,节点间的作用力为引力;
当d(si,sj)<dth时,节点间的作用力为斥力;
ka,kb表示节点间虚拟力的斥力和引力系数。
可选的,所述网络节点si受到的delaunary三角形平衡点的力
delaunary三角形tp=δsisjsl,且
其中sl为节点sl的感知圆盘。
可选的,所述网络节点si受到的delaunary三角形关键点的力
其中,d(si,kg)表示节点si与关键点kg之间的距离。
可选的,所述网络节点si受到的越界的关键点kg对节点si的斥力
可选的,所述节点si所受虚拟力的合力
将节点si所受到的虚拟力的合力
所述3.3根据网络节点si分别受到的传感器节点间的力
以网络中具有最小感知半径为基准,设置节点si的移动步长stepi与其感知半径ri成反比,即stepi=(rmin/ri)step,按照下式(11)进行位置的更新:
其中,
本发明有益效果是:
通过在目标区域角落建立的四个可以相互通信的虚拟节点,为节点集建立二进制编码,有效识别越界节点;同时节点集与虚拟节点联合构建delaunary三角剖分,依靠三角平衡点在算法执行的前期提升收敛速度,通过其关键点在执行后期优化节点部署位置,提高节点的部署精度;本申请提出的方法充分利用了delaunary三角剖分,在保留了虚拟力算法的本地化的同时,充分利用网络中邻近节点的信息;对于单一节点而言,本申请所提出的算法savsh的复杂度仅与其邻居节点数目和以节点为顶点形成的delaunary三角形的数目有关。相比于传统虚拟力算法需要考虑到未被覆盖网格点对节点力的作用,导致复杂度为o(n2),savsh算法无论是在节点稀疏分布的网络或是节点高密度部署的网络中,邻居节点数目和以节点为顶点形成的delaunary三角形的数目均远小于部署节点的数目n,故算法的复杂度为o(n),算法复杂度大大降低。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是平衡点和关键点示例图。
图2是边缘节点部署图。
图3是节点受力示意图。
图4是四种算法vsvfa,icfa-b以及icfa对网络覆盖率的影响,其中,4a为各算法运行过程中迭代次数与网络覆盖率的关系图;图4b为各算法运行过程中节点数目n与网络覆盖率的关系图。
图5是四种算法vsvfa,icfa-b以及icfa节点数目n对移动距离的影响结果图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一:
本实施例提供一种基于虚拟节点和delaunary剖分的对随机异构传感网的节点调度优化方法,利用三角形平衡点对节点的力,加快节点初始状态的位置更新;定义三角形关键点对节点的力,增强了节点局部搜索能力,使节点的部署更加精确;利用虚拟节点构建关键点的二进制编码,对边缘节点进行处理,避免节点对界外区域的无效覆盖。算法能够有效调整网络节点的拓扑结构,最大限度地利用节点覆盖能力,力求实现网络的全覆盖。
具体地,考虑到传感器网络中节点的异质性,需要对网络场景模型进行必要简化。在本申请中,不失一般性的对网络场景和研究模型作如下假设:
(1)在给定的被监测二维矩形区域i=b×l内,随机部署n个多级随机异构的传感器节点s={si(xi,yi)|i=1,2,…,n},节点si(xi,yi)感知范围为
(2)为便于计算被监测二维矩形区域i的网络覆盖率,将被监测二维矩形区域i=b×l离散化为m×n个像素点集合h={ht(hxt,hyt)|t=1,2,....,m×n},若
其中,d(si,ht)代表像素点ht至传感器节点si的欧氏距离。
网络模型
定义1(网络覆盖率):是衡量区域i被s覆盖的程度,是评估网络覆盖程度的重要指标。网络覆盖率η可用区域中所有像素点的感知质量之和与像素点总数的比值表征:
定义2(s的delaunary三角剖分图):是以s作为端点构成的一个满足如下条件的唯一三角剖分t={tp|p=1,2,…,p}=(s,e):
(a)剖分图中,封闭路线的集合e满足:除了端点,不包含节点集s中的其他点且无相交边;
(b)所有的剖分面均为三角面,所有三角面的合集t是节点集s的凸包;
(c)t中每个三角形的外接圆内部,不包含除构建该三角形的节点外的第四个节点。
p表示节点集s构成的delaunay三角形个数;p无确定的取值范围,理论上与节点数目正相关。
定义3(三角形平衡点):若i中存在三个随机异构节点si、sj和sl,这三个随机异构节点构成三角形tp=△sisjsl,对应地,这三个随机异构节点的感知半径比为
cp(cxp,cyp)是tp中受节点感知质量的最小点。d(sj,cp)表示节点sj与点cp之间的距离,d(si,cp)表示节点si与点cp之间的距离,d(sl,cp)表示节点sl与点cp之间的距离。
特别地,当ri=rj=rl时,平衡点即为三角形的外接圆心。
定义4(三角形关键点):若网络中节点si的感知圆盘si与其邻居节点sj的感知圆盘sj,存在感知重叠区域即
由式(3)可知,其得出的最优解,即平衡点cp不一定在tp内部。
若构成tp的节点感知半径比不满足λij=λjl=λil,cp则可能在tp内,也可能在tp边上。如图1所示的异构传感器网络中,锐角△s1s2s3的平衡点c1在其内部,而钝角△s1s3s4的平衡点c2位于三角形边上。对于节点s1而言,k1为△s1s2s3中s1对应的关键点。
一种基于虚拟节点和delaunary剖分的对随机异构传感网的节点调度优化方法,包括:
步骤一:在目标区域i的四个顶角部署虚拟节点,即
步骤二:利用扩充后的节点集
步骤三:通过tp的平衡点cp和关键点kg以及邻居节点引导节点s进行位置优化更新;
步骤三具体包括:
s1确定tp的平衡点cp和关键点kg;
s2利用四个虚拟节点对网络中的关键点kg进行二进制编码,确定越界关键点;
s3根据网络节点si分别受到的传感器节点间的力
具体的,下述进行详细介绍:
算法调度策略
传统的虚拟力算法将网络中的节点看作是具有相互作用力的粒子,对节点进行受力分析的过程中往往需要考虑未被覆盖的网格点对节点的引力作用,这对算法复杂度造成了一定程度的负担;同时单纯依靠距离阈值对边缘节点的移动处理也不能满足多级异构网络的覆盖效果。
本申请提出的算法savsh利用建立在目标区域角落建立的四个可以相互通信的虚拟节点,为节点集建立二进制编码,有效识别越界节点;同时节点集与虚拟节点联合构建delaunary三角剖分,依靠三角平衡点在算法执行的前期提升收敛速度,通过其关键点在执行后期优化节点部署位置,提高节点的部署精度。
虚拟节点策略
由于无线传感器网络初始部署的随机性,往往导致局部区域节点密集度较高。为了在算法执行过程中,节点有效均匀扩散,算法在目标区域i的四个顶角部署虚拟节点,即
越界关键点的编码
传统虚拟力算法对于边缘节点的处理,通常是以距离作为阈值进行处理,但这种方式并不能简单移植到多级随机异构网络中。对于处于边缘处的节点,当其相关关键点落在目标区域的边界上时,此时边缘节点的部署位置使其覆盖效率最大化。
显然,如图2所示的边缘节点中,节点s1,s2和s3由于覆盖重叠而产生的关键点位于边界上,此时,满足以无缝覆盖为目的的部署方式。但对于节点s4和s5而言,由于关键点k3处于覆盖目标区域之外,对覆盖资源利用上产生了一定程度上的浪费,因此,需要调整其部署位置,以实现覆盖资源利用的最大化。
算法利用四个虚拟节点对网络中的关键点进行二进制编码,对于每一个关键点均形成一个染色体bg={bv|v=1,2,3,4},其中:
∠(si,kg)代表以节点si为原点,水平方向为正方向,建立坐标系后,si到关键点kg连线的方向角,当关键点kg的染色体bg≠{1,1,1,1}时,即代表关键点kg越界。
越界关键点的编码
节点根据受力的来源不同,可能会受到邻居节点、delaunary三角形平衡点、delaunary三角形关键点以及越界关键点的力的作用,以引导节点完成部署位置的优化更新。
(1)传感器节点si与节点sj间的力
在同构网络中,为了获得节点的最理想分布状态,即节点间以正三角形方式进行部署,此时,取节点间的力的距离阈值为
算法考虑到多级异构网络的复杂性,取两两节点间产生力作用的距离阈值为
其中,ka,kb表示节点si与节点sj间虚拟力的斥力和引力系数。
(2)delaunary三角形平衡点的力
对于某一delaunary三角形tp=δsisjsl而言,若存在
(3)delaunary三角形关键点的力
为了最大效率地减少delaunary三角形中节点间的冗余覆盖,增强算法的局部搜索能力,构成delaunary三角形的节点间存在两两重叠覆盖感知时,三角形δsisjsl的关键点kg会对节点si产生力的作用,记为
(4)越界关键点的力
为了避免边缘节点越界,造成不必要的覆盖损失,算法利用虚拟节点对关键点进行二进制编码的方式,利用判定越界的关键点kg对节点si的斥力作用,优化节点位置,记为
由此,可以得出:网络中的每个节点si均可能受到来自四种力的作用,其所受到的合力
以图3中的网络节点子图为例,网络中节点集合{s1,s2,s3,s4,s5}在分别受到传感器节点间的力
特别地,若将节点si所受到的虚拟力的合力
节点位置更新
无线传感器网络中的每个节点si在虚拟力合力
其中,
算法步骤
savsh算法通过设置虚拟节点
表1savsh算法步骤
实施例二
本实施例提供一种实施例一所述的基于虚拟节点和delaunary剖分的对随机异构传感网的节点调度优化方法在太湖蓝藻监测中的应用;
要对蓝藻进行监测,首先需要将传感器布撒在水面上,经过一段时间的水面波动后,传感器的位置随机改变,此时采用上述实施例一所述的基于虚拟节点和delaunary剖分的对随机异构传感网的节点调度优化方法savsh对传感器进行重新移动部署,可以达到优化覆盖水面区域的效果。
为验证本申请所提出方法的优点,特进行仿真实验如下:主要网络参数默认配置如表2所示:
表2网络参数配置
实验过程中将本申请所提出的savsh算法与现有的vsvfa,icfa-b以及icfa进行比较,其中vsvfa可参考“张俏薇,陈俊杰.一种优化wsns节点部署的变步长虚拟力算法[j].传感器与微系统,2018,37(05):112-114+119”;icfa-b可参考“滕志军,张力,郭力文,等.基于密集度的虚拟力节点部署算法[j].传感技术学报,2018,31(07):1072-1076+1096”;icfa可参考“张涛,余翔宇,蓝俊健,等.改进的无线传感器网络节点虚拟力部署方法[j].计算机应用研究,2015,32(11):3356-3358+3363.”。
本申请所提出的savsh算法与现有的vsvfa,icfa-b以及icfa对网络覆盖率的影响,结果如图4所示,其中4a为各算法运行过程中迭代次数与网络覆盖率的关系,根据图4a可知,随着算法迭代次数的增加,网络覆盖率不断提高;在前40次的迭代过程中,4种算法对网络的覆盖率提高具有较大的影响,其中savsh算法相较初始覆盖率提高了29.5个百分点,较另外3种算法具有一定的优势。在40次迭代之后,四种算法对网络覆盖率的影响持续小幅度地提高,最终趋于平稳,与vsvfa和icfa相比,拥有较好调度效果的icfa-b,在迭代次数达到100次时,网络覆盖率η=96.7%,而savsh算法由于选取更为合理的距离阈值以及对边缘节点的良好处理,因此仍然领先δη=1.8%。
图4b为各算法运行过程中节点数目n与网络覆盖率的关系,通过图4b中的数据,可以看出随着i中布撒的节点数目n的增加,四种算法对网络覆盖率的增长能力也随之提高。但icfa-b和savsh算法能充分利用了节点的感知能力,在不同网络规模下调度效果明显优于vsvfa和icfa。当n>39时,savsh的调度能力得到了进一步挖掘,体现为与经icfa-b调度后的网络覆盖率相比,其调度效果更佳。
图5为各算法运行过程中节点数目n对移动距离的影响;移动节点调度策略的能耗主要体现在节点的移动上,因此,本实验通过更改网络中布撒节点的数目n=35,37,39,41,43,45,来调整网络规模。
考虑到4种算法在迭代次数达到40次后,各自的调度效果已经趋于平稳,因此本实验以40次迭代作为性能对比的场景,考察savsh,vsvfa,icfa-b以及icfa,在节点数量n改变时,对节点移动平均距离的影响。
图5表明除了利用变步长算法的vsvfa随着覆盖率的增加,节点的移动步长相应降低,因此节点平均移动距离较小以外,另外三种算法随着n的增加,节点的平均移动距离显现出不断增加的趋势。尤其icfa为了增加节点初始状态的位置更新速度,只考虑邻接点对节点的影响,导致节点平局移动距离加大。在随机异构网络中,由于网络随机部署的不确定性,icfa-b受节点分布影响,对距离阈值的选择逐渐失衡,节点移动距离也逐渐增加。而savsh在考虑自身异构性能的同时,兼顾邻居节点异构性对其距离阈值影响,因此对节点数目的变化具有更低的敏感性,在保证了网络覆盖率的同时,在能量的消耗上也具有一定的优势。
本发明实施例中的部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。