【技术实现步骤摘要】
基于自适应的区域划分的分布式多跳定位方法
[0001]本专利技术涉及无线网络技术应用领域,具体是涉及一种基于自适应的区域划分的分布式多跳定位方法。
技术介绍
[0002]网络节点在网络中的位置信息常常是开展诸如路由、拓扑控制、边界发现等网络应用的前提条件。受到设备能量的限制,网络节点的通信范围往往是有限制的,当无线节点对之间距离大于它们最大通信范围时,则它们利用其它中继节点转发信息来实现通信,这种通信模式被称为多跳通信。而先通过估计未知节点到锚节点之间的多跳距离,再采用位置估计方法对未知节点进行位置估计的定位方法,被称为多跳定位。
[0003]以往的多跳定位方法,大多假设节点随机分布在规则网络中,其中的节点间信息近似直线传播,因此节点间的跳数可以近似的表示节点间距离。然而在现实之中,实际网络中可能存在障碍物,造成节点间的信息必须绕着障碍物进行传播,这使得跳数推算出的估计距离与真实距离之间产生异常的偏差。针对估计距离中的异常偏差问题,在已公开的现有技术文献1(Wen W,Wen X,Yuan L,et al. Range
‑
free localization using expected hop progress in anisotropic wireless sensornetworks[J].EURASIP Journal on Wireless Communications and Networking,2018,2018(1): 1
‑
13.)采用预先设定的跳数范围方
【技术保护点】
【技术特征摘要】
1.基于自适应的区域划分的分布式多跳定位方法,其特征在于,所述方法包括如下步骤:步骤1:在复杂环境中随机地部署若干无线节点;步骤2:依据无线节点中所包含的锚节点间的真实距离和对应的跳数,计算出平均每跳距离;步骤3:利用步骤2获得的平均每跳距离和对应的跳数推算出锚节点之间的估计距离,即平均每跳距离
×
对应的跳数,并用锚节点间的真实距离减去对应的估计距离,获得估计残差;步骤4:将步骤3获得的估计残差按照跳数升序排列,随即用中位数绝对偏差算法逐跳地对锚节点间的估计残差进行检测;当检测出某跳存在异常后,设定上一跳的跳数值为全网的最大跳数阈值;依据最大跳数阈值并以未知位置节点为中心,将整个网络划分为多个子网络;步骤5:在步骤4获得的子网络中,若其中存在一个及以上的锚节点,则用未知节点到锚节点的估计距离,即平均每跳距离
×
对应的跳数,以及锚节点的坐标,作为自然选择和粒子群结合的混合算法的输入变量,同时用子网络的范围作为此混合算法的边界,搜索出未知节点最优估计位置;若未知节点在最大跳数范围内无锚节点,则等待最大跳数阈值内其余未知节点实现定位,辅助未知节点实现定位。2.根据权利要求1所述的基于自适应的区域划分的分布式多跳定位方法,其特征在于,步骤1中,在复杂环境中随机地部署若干无线节点具体步骤为:考虑共有n个无线节点,随机地分布在2维平面区域中;若无线节点之间无遮挡,则彼此在其通信半径内互联互通;考虑到无线设备所携带电池电量有限,无线设备的通信半径相等且有限,当两个无线节点相距远或被障碍物阻挡时,就认为这两个节点间不存在直接的通信链路,它们之间的信息传递利用其它中继设备转发来实现;设n个节点中前m个节点为锚节点,其中m远小于n;令锚节点的坐标为(x
a
,y
a
),a=1,
…
,m;其余n
‑
m个节点为未知节点。3.根据权利要求1所述的基于自适应的区域划分的分布式多跳定位方法,其特征在于,所述步骤2中,依据锚节点间的真实距离和对应的跳数,计算出平均每跳距离,具体步骤为:在每个无线节点中均设置一个锚节点信息表,即{(x
a
,y
a
),h
a
→
i
},其中(x
a
,y
a
),a=1,
…
,m表示锚节点a自身的位置;h
a
→
i
表示锚节点a到相连通节点i的最小跳数,h
a
→
i
初始值为1,随着锚节点a向i传播消息时,每经过一个中继节点,h
a
→
i
自增1;当锚节点b收到a传来的信息后,锚节点b便向锚节点a通报它们之间跳数h
b
→
a
;由于经历了相同路径,则以此类推,锚节点a获得到网络中其余m
‑
1个锚节点的跳数;随后锚节点a以到m
‑
1个锚节点的跳数和它们之间相应的真实距离为依据,计算获得平均每跳距离其计算如下式:4.根据权利要求3所述的基于自适应的区域划分的分布式多跳定位方法,其特征在于,
所述步骤3中,利用步骤2获得的平均每跳距离和对应的跳数推算出锚节点之间的估计距离,即平均每跳距离
×
对应的跳数,并用锚节点间的真实距离减去对应的估计距离,获得估计残差,具体步骤为:先利用平均每跳距离和跳数推算出锚节点之间的估计距离,任意两个锚节点的估计距离计算方法如下式:其中,是锚节点a到b的估计距离,是锚节点a和b之间的跳数,为平均每跳距离;随后,用锚节点间的真实距离减去相应的估计距离,得锚节点间的估计残差,估计残差表示公式如下:其中,是锚节点a到锚节点b的真实距离。5.根据权利要求4所述的基于自适应的区域划分的分布式多跳定位方法,其特征在于,所述步骤4中,将步骤3获得的估计残差按照跳数升序排列,随即用中位数绝对偏差算法逐跳地对锚节点间的估计残差进行检测;当检测出某跳存在异常后,设定上一跳的跳数值为全网的最大跳数阈值;依据最大跳数阈值并以未知位置节点为中心,将整个网络划分为多个子网络,具体步骤为:将步骤3中计算出的估计残差按照跳数升序排列,得到多个估计残差向量,即e1,e2,
…
,e
mh
其中,e的下标表示跳数,mh是锚节点间最大跳数;假设第h跳的e
h
中包含有n
h
个误差,从第2跳开始,逐跳对e
h
采用中位数绝对偏差算法进行异常值检测;检测过程如下:(1)对第h跳中的估计误差向量e
h
取中位数,即M
h
=median(e
h
)(2)用中位数绝对偏差算法,即MAD法,对向量e
h
中的n
h
个误差进行处理;第h跳的MAD表达式如下:式中,β为常数,e
k
是估计误差向量e
h
的第k个元素;(3)通过设定判定系数DC对e
h
中是否含有异常值进行探测,其中第k个误差的DC表达式为,DC
k
=(e
k
‑
M
h
)/MAD
h
,k=1,
…
,nh当n
h
个DC值中某个大于给定的阈值时,即认定其为e
h
中异常的数据;也就是当第h跳中出现大于阈值的DC值后,即认为h
‑
1跳为最大跳数阈值maxhop;(4)在锚节点计算获得最大跳数阈值后,随即向周围maxhop跳内的未知节点通告最大跳数,当其收到大于等于h跳的信息,就自动屏蔽该信息;(5)网络中的各个未知节点以自身为中心,结合maxhop跳内的锚节点,将网络划分为多个子网络,子网络划分方法如下:
a.如果未知节点u在maxhop跳范围内仅一个锚节点,或多个锚节点,但这些锚节点的x,y轴坐标均相同,则子网络范围为,sub_range∈[max(min(x
a
)
‑
R
mh
,网络边界),min(max(x
a
)+R
mh
,网络边界)]
×
[max(min(ya)
‑
R
mh
,网络边界),min(max(y
a
)+R
mh
,网络边界)]其中,(x
a
,y
a
)是子网络中的唯一锚节点的坐标;网络边界是节点部...
【专利技术属性】
技术研发人员:严筱永,陈健康,陶凌翔,李蓉,
申请(专利权)人:南京邮电大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。