基于自适应的区域划分的分布式多跳定位方法技术

技术编号:36207216 阅读:13 留言:0更新日期:2023-01-04 12:02
本发明专利技术提出了一种基于自适应的区域划分的分布式多跳定位方法,首先,以锚节点间的真实距离与对应的跳数,计算出平均每跳距离;随后,以平均每跳距离为基础计算出锚节点间的残差;紧接着,逐跳的对残差进行分析,自适应的获得网络最大跳数阈值,并依据跳数阈值,以未知节点为中心,将整个网络划分为多个子网络;最后,在子网络中若有一个及以上锚节点,则用自然选择和粒子群结合的混合算法搜寻出未知节点的最优估计位置,否则等待已定位的未知节点辅助获得最优估计位置。本发明专利技术所述方法可以实现复杂拓扑环境下的稳定、高效且高精度定位。高效且高精度定位。高效且高精度定位。

【技术实现步骤摘要】
基于自适应的区域划分的分布式多跳定位方法


[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.)采用预先设定的跳数范围方法,剔除含异常误差的估计距离进入位置估计阶段,而后再利用多边测量法进行位置估计。该类方法所涉及的多边测量法对锚节点的数量有一定的要求,且锚节点数量越多定位越准确;此外在限定跳数范围后,还会造成因缺少锚节点使得部分区域节点无法定位的问题,导致定位覆盖缺失。Wen等人所提方法明确指出其方法需要占总节点20%,甚至30%以上锚节点才能保证定位精度,以实现全部未知节点定位。此外,障碍物在网络中的存在还会导致锚节点间共线几率增大,Wen等人所提方法还存在共线性问题,使得估计位置远偏离未知节点的真实位置,从而破坏了定位稳定性。
[0004]也有现有技术文件2即CN106792540A,其采用群智能方法搜索未知节点位置;该类方法搜索的空间为整个节点的分布区域,一定程度上避免了定位共线性问题所产生的不正确估计位置问题,促进了定位的稳定性。但由于未剔除含异常误差的估计距离,因此定位精度不高;同时其公开逐个与锚节点比较获得估计距离,因此计算复杂度不仅高还与锚节点数量息息相关。

技术实现思路

[0005]为解决上述技术问题,本专利技术提供了一种基于自适应的区域划分的分布式多跳定位方法,利用锚节点的分布特征,以锚节点间的残差为样本,自适应的获得最大跳数范围,并用该跳数范围构建包含未知节点子网络;通过已定位节点升级为新锚节点实现全部未知节点定位,在极端情况下甚至1个锚节点也能实现位置的估计,对锚节点数量要求低;在适应性、稳定性、定位精度、运行效率等方面都很高的性能。
[0006]本专利技术所述的基于自适应的区域划分的分布式多跳定位方法,包括如下步骤:
[0007]步骤1:在复杂环境中随机地部署若干无线节点;
[0008]步骤2:依据无线节点中所包含的锚节点间的真实距离和对应的跳数,计算出平均每跳距离;
[0009]步骤3:利用步骤2获得的平均每跳距离和对应的跳数推算出锚节点之间的估计距离,即平均每跳距离
×
对应的跳数,并用锚节点间的真实距离减去对应的估计距离,获得估计残差;
[0010]步骤4:将步骤3获得的估计残差按照跳数升序排列,随即用中位数绝对偏差算法逐跳地对锚节点间的估计残差进行检测;当检测出某跳存在异常后,设定上一跳的跳数值为全网的最大跳数阈值;依据最大跳数阈值并以未知位置节点为中心,将整个网络划分为多个子网络;
[0011]步骤5:在步骤4获得的子网络中,若其中存在一个及以上的锚节点,则用未知节点到锚节点的估计距离,即平均每跳距离
×
对应的跳数,以及锚节点的坐标,作为自然选择和粒子群结合的混合算法的输入变量,同时用子网络的范围作为此混合算法的边界,搜索出未知节点最优估计位置;若未知节点在最大跳数范围内无锚节点,则等待最大跳数阈值内其余未知节点实现定位,辅助未知节点实现定位。
[0012]进一步的,步骤1中,在复杂环境中随机地部署若干无线节点具体步骤为:
[0013]考虑共有n个无线节点,随机地分布在2维平面区域中;若无线节点之间无遮挡,则彼此在其通信半径内互联互通;考虑到无线设备所携带电池电量有限,无线设备的通信半径相等且有限,当两个无线节点相距远或被障碍物阻挡时,就认为这两个节点间不存在直接的通信链路,它们之间的信息传递利用其它中继设备转发来实现;
[0014]设n个节点中前m个节点为锚节点,其中m远小于n;令锚节点的坐标为 (x
a
,y
a
),a=1,

,m;其余n

m个节点为未知节点。
[0015]进一步的,所述步骤2中,依据锚节点间的真实距离和对应的跳数,计算出平均每跳距离,具体步骤为:
[0016]在每个无线节点中均设置一个锚节点信息表,即{(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;
[0017]当锚节点b收到a传来的信息后,锚节点b便向锚节点a通报它们之间跳数 h
b

a
;由于经历了相同路径,则以此类推,锚节点a获得到网络中其余m

1个锚节点的跳数;随后锚节点a以到m

1个锚节点的跳数和它们之间相应的真实距离为依据,计算获得平均每跳距离其计算如下式:
[0018][0019]进一步的,所述步骤3中,利用步骤2获得的平均每跳距离和对应的跳数推算出锚节点之间的估计距离,即平均每跳距离
×
对应的跳数,并用锚节点间的真实距离减去对应的估计距离,获得估计残差,具体步骤为:
[0020]先利用平均每跳距离和跳数推算出锚节点之间的估计距离,任意两个锚节点的估计距离计算方法如下式:
[0021][0022]其中,是锚节点a到b的估计距离,是锚节点a和b之间的跳数,为平均每跳距离;
[0023]随后,用锚节点间的真实距离减去相应的估计距离,得锚节点间的估计残差,估计残差表示公式如下:...

【技术保护点】

【技术特征摘要】
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
)是子网络中的唯一锚节点的坐标;网络边界是节点部...

【专利技术属性】
技术研发人员:严筱永陈健康陶凌翔李蓉
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

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

1