一种基于环形扩散事件及移动锚节点的定位算法

文档序号:9474816阅读:428来源:国知局
一种基于环形扩散事件及移动锚节点的定位算法
【技术领域】
[0001] 本发明涉及一种基于环形扩散事件及移动锚节点的定位算法。
【背景技术】
[0002] 无线传感器网络(Wireless Sensor Network,简称WSN)主要是用来感知监测网 络部署区域的各种环境特性,所以在很多情况下,传感器节点采集的信息都要与节点自身 的位置信息相关联,尤其是在广阔的区域内,节点采集的数据如果不能确定其采集位置可 能就毫无意义。所以在WSN中,传感器节点的定位技术是非常重要的。对于定位算法,总是 希望能以最小的能耗来得到尽量精确的定位结果,一个优秀的定位算法可以提高整个网络 的工作效率,还可以延长整个网络的生命周期。
[0003] 根据定位算法特点的不同,可以有多种分类方法,以下列出了几种主要的分类 方法:根据定位过程中是否需要测量节点间的欧式距离,可将定位算法分为:基于距离的 (range-based)定位算法和距离无关的(range-free)定位算法;根据节点定位的先后次序 不同,可将定位算法分为:递增式的(incremental)定位算法和并发式的(concurrent)定 位算法;根据节点定位过程中是否需要借助于锚节点,可将定位算法分为:基于锚节点的 (anchor-based)定位算法和无锚节点的(anchor-free)定位算法。
[0004] 质心(Centroid)算法是最为典型的距离无关的定位算法,它的大致思想如下:
[0005] 多边形的几何中心成为质心,多边形顶点坐标的平均值就是质心节点的坐标。质 心定位算法首先确定包含未知节点的区域,计算这个区域的质心,并将其作为未知节点的 位置。
[0006] 在质心算法中,信标节点周期性地向邻居节点广播信标分组,信标分组中包含信 标节点的标识号和位置信息。当未知节点收到来自不同信标节点的信标分组数量超过某一 个门限值或接收一定时间后,就确定自身位置为这些信节点所组成的多边形的质心。
[0007] 质心算法完全基于网络连通性,无需信标节点和未知节点之间的协调,因此比较 简单,容易实现。用质心作为实际位置本身就是一种估计,这种估计的精确度与信标节点的 密度以及分布有很大关系,密度越大,分布越均匀,定位精度越高。

【发明内容】

[0008] 本发明提出了一种定位精度和定位效率更高的基于环形扩散事件及移动锚节点 的定位算法。
[0009] 本发明的目的是这样实现的:
[0010] (1)在一个无线传感器网络中,无线传感器网络区域为圆形区域且大小已知,设 为S,则半径为
[0011] (2)计算单轮事件数RankEvents和最小锚距离MinAnchorDst ;
[0012] (3)进行一个轮次的定位,总共产生RankEvents个事件,每个事件以环形向外扩 散,对于同一事件,根据感知到事件的先后顺序排列所有节点得到一个节点序列,节点序列 中同时包含锚节点和未知节点;
[0013] (4)估计事件源位置,从节点序列中提取锚节点序列,取锚节点序列中所有的两两 锚节点组合构成估计单元;对于每个估计单元中的两个锚节点连一条线段,并作其中垂线, 于是中垂线就将整个区域划分成两部分,那么这个估计单元中,在节点序列中位置更靠前 的那个锚节点所在的部分即为事件源所在区域;同理对所有估计单元都可以得到一块区域 作为事件源所在的区域,所有这些区域取交集即为估计的事件源位置区域;
[0014] (5)将整个区域划分成网格;对于网格的某一点P,与其所在节点片段相邻的某一 个锚节点连成线段,作该线段的中垂线,该中垂线将整个区域划分两块,若P所处的区域与 估计得到事件源位置区域有重叠部分,那么该点就可能是该锚节点前端那个节点片段内未 知节点的位置;相反,如果无重叠区域,那么该点就可能是锚节点后端那个节点片段内未知 节点的位置;于是每个网格中的未知节点与每个锚节点都进行以上的运算后,每个节点片 段都得到一块区域作为其未知节点的位置所在的区域;
[0015] (6) -个轮次定位结束后,如果定位轮数没有达到指定值,每个锚节点按随机方 向,随机速度移动随机距离;检测移动后的锚节点分布,如果过于集中,再次随机移动锚节 点直到锚节点分布不过于集中;
[0016] (7)调整结束后,进入新一轮次的定位,重复步骤(2) (3) (4) (5) (6 ;直到定位轮数 达到指定值;
[0017] (8)每一个轮次过后,每个未知节点都得到一个位置区域,不同轮次的结果取交 集继续缩小目标区域最后对目标区域使用质心法得到每一个未知节点的位置坐标,定位结 束。
[0018] 所述步骤(2)中两个事件定位后的目标区域取交集最小时,两个事件的事件源之 间的距离称为最理想事件源间距;在目标区域内取一组事件,若其中任意两个事件的事件 源间距都大于最理想事件源间距,就称这组事件为高效事件组;单轮事件数的计算公式:
[0020] 其中r取较理想的事件源间距范围内的最小值;锚节点分布中锚节点间的最小距 离称为最小锚距离,记为MinAnchorDst ;计算公式为:
其中
[0021] 所述步骤(5)中区域的划分是将整个区域划分成若干个小区域,过锚节点序列中 连续的两个锚节点画一条直线,再过其他锚节点作该直线的平行线,取所有连续的锚节点 对重复上述过程即可完成区域划分。
[0022] 所述步骤(6)中检测移动后的锚节点分布是否过于集中,方法是锚节点间相互通 信交换位置信息,并计算彼此之间的距离,如果存在某一锚节点,与一半以上的其他锚节点 的距离小于最小锚距离,那么该锚节点再次随机移动并再次检测是否过于集中,直到所有 节点都不再与一半以上的锚节点距离小于最小锚距离为止。
[0023] 本发明具有的有益效果:
[0024] 1、LADEMA算法相对于原始LADE算法引入了移动锚节点的思想,付出了一定的外 部代价,换取了更高的定位效率和定位精度,总体而言性能更优。
[0025] 2、在实际中,环形扩散事件更普遍,也更易控制。为了减小控制代价,锚节点的移 动是随机的,为了避免移动后锚节点分布过于集中,需要对锚节点进行调整。从而能够保证 有较高的定位精度。
【附图说明】
[0026] 图1为本发明基于环形扩散事件及移动锚节点的定位算法的流程图。
[0027] 图2 (a)为本发明基于环形扩散事件及移动锚节点的定位算法环形扩散事件确定 事件源区域范围。
[0028] 图2 (b)为本发明基于环形扩散事件及移动锚节点的定位算法环形扩散事件确定 未知节点区域。
[0029] 图3为本发明基于环形扩散事件及移动锚节点的定位算法定位精度与锚节点数 量关系。
[0030] 图4为本发明基于环形扩散事件及移动锚节点的定位算法定位精度与事件数量 的关系。
[0031] 图5为本发明基于环形扩散事件及移动锚节点的定位算法定位精度与事件数量 的关系。
[0032] 图6为本发明基于环形扩散事件及移动锚节点的定位算法定位精度与网络区域 大小的关系。
【具体实施方式】
[0033] 下面结合附图对本发明做进一步描述。
[0034] 本发明提供了一种基于环形扩散事件及移动锚节点的定位算法(LADEMA)。首先, 在某一点产生事件后,事件以环形向外扩散,根据感应到事件的先后顺序得到一个节点序 列并从节点序列中提取出锚节点序列;其次,利用锚节点序列中各锚节点的先后关系确定 事件源的范围;再次,将整个区域划分成网格,借助于网格估计被锚节点分成的节点片段中 未知节点的位置区域范围,随着事件的增加,每个未知节点可以得到若干个位置区域,取其 交集;最后,利用其他方法(用的是质心法)求得未知节点的位置。
[0035] 实现本发明目的技术方案:
[0036] -种基于环形扩散事件及移动锚节点的定位算法,其特征在于:
[0037] 步骤1 :将A,B,C定义为无线传感器网络区域内的锚节点,1,2, 3, 4, 5, 6, 7, 8为待 定位的未知节点。S为无线传感器网络圆形区域的面积,则半径为
(
[0038] 步骤2 :根据单轮事件数RankEvents和最小锚距离MinAnchorDst的公式分别计 算出单轮事件数和最小锚距离;
[0039] 步骤3 :产生RankEvents个事件,每个事件以环形向外扩散,假设对于某 一个事件,节点序列为Squence {3, A,1,6, 4, 8, C,2, B,7, 5},提取出的锚节点序列 AnchorSquence{A, C, B};
[0040] 步骤4 :任取两个锚节点构成一个估计单元,假设先取A、C构成估计单元 EstimationUnit {A, C},过A,C两个锚节点连一条线段,再作这条线段的中垂线,由于A的 次序高于C,于是可以断定A到事件源的距离要比C到事件源距离近,从几何的角度来看线 段AC的中垂线将整个区域划分成两部分,显然事件源与离其近的锚节点处于同一侧,亦即 事件源与锚节点A位于中垂线的同一侧,可将这一侧区域定为事件源所处的位置区域。同 理,再取其他锚节点对构成估计单元,同样可以为事件源估计一块位置区域,多个区域相交 缩小整个区域;
[0041] 步骤5:将整个区域划分成网格,位置区域的估计以节点片段为单位,考
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1