CN113709862B - 一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法 - Google Patents
一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法 Download PDFInfo
- Publication number
- CN113709862B CN113709862B CN202110994369.9A CN202110994369A CN113709862B CN 113709862 B CN113709862 B CN 113709862B CN 202110994369 A CN202110994369 A CN 202110994369A CN 113709862 B CN113709862 B CN 113709862B
- Authority
- CN
- China
- Prior art keywords
- node
- anchor node
- anchor
- target
- hop
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000012937 correction Methods 0.000 claims abstract description 98
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 38
- 238000005070 sampling Methods 0.000 claims description 28
- 238000004891 communication Methods 0.000 claims description 13
- 235000008694 Humulus lupulus Nutrition 0.000 claims description 10
- 230000002159 abnormal effect Effects 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 238000000354 decomposition reaction Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 239000002245 particle Substances 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/006—Locating users or terminals or network equipment for network management purposes, e.g. mobility management with additional information processing, e.g. for direction or speed determination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明提出了一种基于弹簧模型和可靠锚节点的DV‑Hop节点定位方法,其步骤为:计算目标锚节点到参考锚节点的修正系数;计算参考锚节点、目标锚节点和未知节点所构成的夹角;从物理中弹簧模型角度分析目标锚节点到参考锚节点的修正系数对目标路径的影响,选取角度的函数作为权值对参考路径的修正系数进行加权求和,得到未知节点到目标锚节点的修正系数;对未知节点与目标锚节点间的距离进行校正;利用RANSAC算法抽取可靠锚节点,利用最小二乘法对可靠锚节点进行坐标拟合,选取误差最小的估计坐标作为未知节点的坐标。本发明不仅能够延长传感器节点的使用时长,且能较明显的提升节点间距离的精度,显著提升了未知节点的定位精度和定位稳定性。
Description
技术领域
本发明涉及无线传感器网络的技术领域,尤其涉及一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法。
背景技术
近年来,随着科技的不断发展,物联网给人们的生活带来了翻天覆地的变化。无线传感器网络作为物联网的核心技术,现已成为科研人员关注的热点领域。无线传感网络是由具有感知周围环境参数的传感器节点构成,这些节点可以进行简单的计算和存储,并及时将收集到的信息向上层传递。
目前,无线传感器网络已广泛应用于目标跟踪、工业控制、智能家居、军事侦察等热点领域。当传感器节点向上层应用传递数据时,需携带自身的具体位置信息,以便快速精准的做出响应。因此,节点定位技术具有十分重要的研究价值。对于无线传感器网络的节点位置获取技术,主要包括两大类:基于测距的定位技术和基于非测距的定位技术。常见的非测距技术包括:APIT算法、DV-Hop定位算法、质心算法等。基于测距的定位方案通常需要额外的硬件支持,增加了构建网络的成本。与此相反,基于非测距定位技术不需额外硬件,且具备成本低、功耗小、易于实施等优点。DV-Hop定位算法作为经典的非测距定位方法,具备非测距定位的所有优点,但由于算法本身存在的固有误差无法得到优化,导致其定位精度较低,无法适用于对节点定位精度要求较高的场景。
传统的DV-Hop定位技术将最近锚节点的平均跳距作为未知节点的平均跳距,并将其平均跳距与到锚节点跳数的乘积作为节点间的直线距离;该方法虽易于实施,但由于仅参考最近锚节点并不能反映出未知节点的真实跳距,导致节点间距离存在较大误差(参考文献[1])。Song等考虑到锚节点平均跳距的影响,以锚节点平均跳距与到未知节点的跳数的乘积作为节点间的距离;该方法有助于提高距离精度,且能够减少网络中节点能量的消耗,但在较大通信半径场景下的定位精度却不尽人意(参考文献[2])。Singh等提出一种双曲定位与粒子群算法相结合的DV-Hop定位方法,该方法以双曲定位算法代替最小二乘法求取未知节点坐标,然后将其作为粒子群算法的初始值进行坐标优化;该方法虽然有助于提升定位精度,但距离误差较大的锚节点产生的影响并未消除,且粒子群算法容易陷入局部最优(参考文献[3])。Gui等考虑到仅需要三个锚节点便能定位未知节点,提出对所有的锚节点进行排列组合,从中挑选最佳的锚节点集参与定位;该方法虽然一定程度上能排除距离较大误差锚节点参与定位,但由于需要对所有的锚节点组合进行遍历,导致其具有较高的时间复杂度(参考文献[4])。
目前,对于DV-Hop节点定位方法的改进往往集中在节点平均跳距的优化上,且在计算节点间距离时并未较好的平衡好其他锚节点的影响。此外,大多改进方法普遍利用所有锚节点参与定位,导致一些距离误差较大的锚节点对定位结果产生较大影响。
发明内容
针对传统的DV-Hop定位方法定位精度较低,且未能排除节点间距离误差较大的锚节点所带来的影响的技术问题,本发明提出一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,从物理角度采用基于弹簧模型的方法优化节点间距离精度,并利用RANSAC算法实现对可靠锚节点的选取,获取可靠锚节点集参与定位,进一步提升了DV-Hop的节点定位精度,。
为了达到上述目的,本发明的技术方案是这样实现的:一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,其步骤如下:
步骤一:计算目标锚节点到参考锚节点的修正系数:由标准DV-Hop方法求得各锚节点的平均跳距,利用平均跳距计算目标锚节点到参考锚节点的估计距离,以锚节点间真实距离与估计距离的比值计算目标锚节点到参考锚节点的修正系数。
步骤二:计算参考锚节点、目标锚节点和未知节点所构成的夹角:将目标锚节点到参考锚节点的路径标记为参考路径,将未知节点到目标锚节点的路径标记为目标路径,以节点间的跳数作为边长,利用三角余弦定理计算参考路径与目标路径之间的夹角。
步骤三:计算未知节点到目标锚节点的修正系数:从物理中弹簧模型角度分析目标锚节点到参考锚节点的修正系数对目标路径的影响,选取步骤二中角度的函数作为权值按照影响力的大小对参考路径的修正系数进行加权求和,得到未知节点到目标锚节点的修正系数。
步骤四:对未知节点与目标锚节点间的距离进行校正:以目标锚节点的平均跳距计算估计距离,并利用步骤三中得到的未知节点到目标锚节点的修正系数对其进行校正,使节点间距离更加精确。
步骤五:利用RANSAC算法选取可靠锚节点,利用最小二乘法对可靠锚节点进行坐标拟合,选取误差最小的估计坐标作为未知节点的坐标:以完成定位的最小数据量,对所有锚节点进行若干次抽样,以抽样出的锚节点坐标和到未知节点的估计距离建立方程组,利用最小二乘法求解得到关于未知节点的估计坐标;计算估计坐标到各锚节点的估计跳数,将估计跳数与真实跳数差值在误差范围内的锚节点归为可靠锚节点,利用最小二乘法对可靠锚节点进行坐标拟合,选取误差最小的估计坐标作为本次抽样的最优估计坐标;比较每次抽样得到的最优估计坐标的误差,以误差最小的最优估计坐标作为未知节点的最终坐标。
所述步骤一中目标锚节点到参考锚节点的修正系数的计算方法为:
步骤1:利用标准DV-Hop方法计算网络中锚节点的平均跳距:
其中,Hopij为锚节点i和锚节点j之间的最小跳数,Disij为锚节点i和锚节点j之间的欧式距离;HopSizei为锚节点i的平均跳距,m为网络中锚节点总数;
步骤2:计算目标锚节点到参考锚节点的修正系数:
其中,Correctionij为目标锚节点i到参考锚节点j的修正系数。
所述步骤二中利用三角余弦定理计算参考路径与目标路径之间的夹角的方法为:
其中,Anglej,i,p为参考锚节点j、目标锚节点i和未知节点p所构成的夹角,即为参考路径和目标路径之间的夹角;Hoppi为目标锚节点i和未知节点p之间的跳数,Hopji为参考锚节点j和目标锚节点i之间的跳数,Hoppj为参考锚节点j和未知节点p之间的跳数。
所述步骤三中选取角度的余弦值的绝对值作为权值,其计算方法为:
由物理中弹簧模型可知,当从不同方向对弹簧施加作用力时,仅与弹簧平行的分解力才会使弹簧发生形变:当夹角0≤Angle≤90°时,目标锚节点到参考锚节点的修正系数对目标路径修正值的影响由大到小;当夹角90°≤Angle≤180°时,其修正系数对目标路径修正值的影响由小到大;对目标锚节点到参考锚节点的修正系数做水平方向的投影,得到修正系数对目标路径的影响,以角度余弦值的绝对值作为权值能反映出角度与修正系数的关系。
所述步骤三中未知节点到目标锚节点的修正系数的实施步骤为:
步骤1:建立参考锚节点、目标锚节点和未知节点所构成的夹角的角度与权值Weight'ij的关系,并对权值Weight'ij做归一化处理,即:
Weight'ij=|cos(Anglej,i,p)|;
其中,Weight'ij表示对目标锚节点i到参考锚节点j的权值,Weightij为归一化后的权值;
步骤2:利用目标锚节点到参考锚节点的权值和修正系数,计算未知节点到目标锚节点的修正系数:
其中,FinalCorrectionpi为未知节点p到目标锚节点i的修正系数,Correctionij为目标锚节点i到参考锚节点j的修正系数。
所述步骤四中进行距离校正的方法为:
EstimateDispi=HopSizep·Hoppi·FinalCorrectionpi;
其中,EstimateDispi表示为未知节点p到目标锚节点i的估计距离;Hoppi为目标锚节点i和未知节点p之间的跳数,HopSizep为未知节点p的平均跳距。
所述步骤五中可靠锚节点的选取的实施步骤为:
S1:对RANSAC算法的初始参数进行设定,设置置信概率η、计算坐标的最小数据量w、数据异常率ε;
S2:计算RANSAC算法的最少抽样次数
S3:对每次抽样得到的锚节点进行最小二乘法拟合,得到未知节点的估计坐标;
S4:计算未知节点的估计坐标到各锚节点的估计跳数;
S5:计算未知节点的估计坐标到锚节点i的估计跳数与真实跳数的差值HopDifferi=(Hopi est-Hopi true)2,设置跳数误差小于1的为可靠锚节点,其余为异常锚节点;
其中,Hopi est为未知节点的估计坐标到锚节点i的估计跳数,Hopi true为未知节点到锚节点i的真实跳数;
S6:判断本次抽样得到的可靠锚节点的个数是否大于3,若不满足,返回步骤S3重新进行抽样。
所述步骤五中对可靠锚节点进行坐标拟合的计算方法为:
利用最小二乘法对可靠锚节点进行坐标拟合中,让每个可靠锚节点所构成的方程都作为一次末尾方程,若有n个可靠锚节点,则可得到n个未知节点的估计坐标;计算未知节点的估计坐标的坐标误差并以坐标误差最小的坐标作为抽样的最优估计坐标,m表示网络中锚节点总数。比较每次抽样得到的最优估计坐标的误差,以误差最小的最优估计坐标作为未知节点的最终坐标。
所述步骤S4中未知节点的估计坐标到各锚节点的估计跳数的计算方法为:
S41:若锚节点i处于估计坐标的通信半径内,则将其估计跳数设置为1;
S42:若锚节点i处于估计坐标的通信半径外,则利用锚节点的平均跳距和估计坐标到锚节点的距离求取估计跳数:
其中,(xi,yi)为锚节点i的真实坐标,(xest,yest)为未知节点的估计坐标,HopSizei为锚节点i的平均跳距。
与现有技术相比,本发明的有益效果:在计算未知节点与锚节点之间的距离时,考虑目标锚节点到各参考锚节点的修正系数的影响,计算参考锚节点、目标锚节点和未知节点所构成的角度;利用物理中弹簧受力产生形变的理论,对目标锚节点到各参考锚节点的修正系数赋予合适的权重,综合计算得到未知节点到目标锚节点的修正系数;利用锚节点平均跳距和修正系数计算得到未知节点到各锚节点的估计距离。本发明利用该方法计算节点间距离,不仅能够延长传感器节点的使用时长,且能较明显的提升节点间距离的精度。同时,本发明采用RANSAC算法实现排除距离误差较大的异常锚节点对定位精度的影响,以随机抽样的形式选取可靠锚节点集参与定位。经多方位的仿真实验证得,本发明求得的节点间距离较为准确,且以RANSAC算法选取的可靠锚节点参与定位,显著提升了未知节点的定位精度和定位稳定性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的流程图。
图2为本发明与对比算法得到的节点间距离精度的对比图。
图3为本发明与对比算法在不同锚节点比例下得到的定位精度对比图。
图4为本发明与对比算法在不同通信半径下得到的定位精度对比图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,其构思是:以标准DV-Hop方法计算各锚节点的平均跳距,并利用平均跳距和跳数计算得到其余各锚节点的估计距离;利用锚节点间的真实距离与估计距离计算修正系数,并利用跳数信息和三角余弦定理计算出参考锚节点、目标锚节点和未知节点所构成的夹角即参考路径与目标路径所构成的角度;然后,从物理中弹簧模型的角度分析各参考路径的修正系数对目标路径的影响,并对各参考路径赋予不同的权值,对各参考路径的修正系数加权求和得到未知节点到目标锚节点的修正系数,并以锚节点平均跳距和未知节点到目标锚节点的修正系数计算得到未知节点的估计距离;最后,利用RANSAC算法随机对锚节点抽样若干次,实现对可靠锚节点的选取,并以可靠锚节点集参与定位获取未知节点的坐标。
如图1所示,本发明首先计算目标锚节点到各参考锚节点的修正系数,然后计算参考锚节点、目标锚节点和未知节点所构成的角度,利用加权后的修正系数计算得到未知节点到锚节点间的距离;最后,利用RANSAC算法实现对可靠锚节点的选取,并计算未知节点的坐标,其具体步骤为:
步骤一:计算目标锚节点到参考锚节点的修正系数:由标准DV-Hop方法求得各锚节点的平均跳距,利用平均跳距计算目标锚节点到参考锚节点的估计距离,以锚节点间真实距离与估计距离的比值计算目标锚节点到参考锚节点的修正系数。
所述计算目标锚节点到参考锚节点的修正系数的计算方法为:
步骤1:利用标准DV-Hop方法计算网络中各锚节点的平均跳距;
其中,Hopij为锚节点i和锚节点j之间的最小跳数,Disij为锚节点i和锚节点j之间的欧式距离;HopSizei为锚节点i的平均跳距,m为网络中锚节点总数。
该步骤计算锚节点的平均跳距的方法利用标准DV-Hop方法,即采用无偏估计方式计算平均跳距。锚节点间的欧式距离可直接计算得到:(xi,yi)为锚节点i的坐标,(xj,yj)为锚节点j的坐标,求得的锚节点的平均跳距为后续计算提供了参考信息。
步骤2:计算目标锚节点到参考锚节点的修正系数:
其中,Correctionij为目标锚节点i到参考锚节点j的修正系数。
该步骤将目标锚节点到各参考锚节点的真实距离与估计距离的比值作为修正系数,能够反映出目标锚节点到各参考锚节点的估计距离误差的差异性,为综合计算目标路径的修正值提供参考依据。
步骤二:计算参考锚节点、目标锚节点和未知节点所构成的夹角:将目标锚节点到参考锚节点的路径标记为参考路径,将未知节点到目标锚节点的路径标记为目标路径,以节点间的跳数作为边长,利用三角余弦定理计算参考路径与目标路径之间的夹角。
参考锚节点、目标锚节点和未知节点所构成的夹角的计算方法如下:
其中,Anglej,i,p为参考锚节点j、目标锚节点i和未知节点p所构成的夹角的角度,即为参考路径和目标路径之间的夹角;Hoppi为目标锚节点i和未知节点p之间的跳数,Hopji为参考锚节点j和目标锚节点i之间的跳数,Hoppj为参考锚节点j和未知节点p之间的跳数。
由于未知节点的坐标未知,无法直接计算出未知节点分别到目标锚节点和参考锚节点的欧式距离,且网络中已知信息量有限。同时,当节点间跳数越大时,其节点间距离越大。因此,跳数的值在一定程度上能反映出节点间距离的远近。通过节点间跳数和三角余弦定理即可计算出参考锚节点、目标锚节点和未知节点所构成的夹角。
步骤三:计算未知节点到目标锚节点的修正系数:从物理中弹簧模型角度分析目标锚节点到参考锚节点的修正系数对目标路径的影响,选取步骤二中角度的函数作为权值按照影响力的大小对参考路径的修正系数进行加权求和,得到未知节点到目标锚节点的修正系数。
计算未知节点到目标锚节点的修正系数的实施步骤为:
步骤1:建立参考锚节点、目标锚节点和未知节点所构成的夹角的角度与相应权值Weight'ij的关系,并对权值Weight'ij做归一化处理:
Weight'ij=|cos(Anglej,i,p)|;
其中,Weight'ij表示对目标锚节点i到参考锚节点j赋予的权值,Weightij为归一化后的权值。p=1,2,…,N,N为未知节点总数;j=1,2,…m,且j≠i;m表示网络中锚节点总数。由步骤二中公式可得到各参考路径与目标路径所构成夹角。
由物理学中弹簧模型可知,当从不同方向对弹簧施加作用力时,仅与弹簧平行的分解力才会使弹簧发生形变。当夹角0≤Angle≤90°时,目标锚节点到参考锚节点的修正系数对目标路径修正值的影响由大到小。当夹角90°≤Angle≤180°时,其修正系数对目标路径修正值的影响由小到大。因此,对目标锚节点到参考锚节点的修正系数做水平方向的投影,可得到其对目标路径的影响。以角度余弦值的绝对值作为权值,恰能反映出上述角度与修正值即权值之间的关系。
步骤2:利用目标锚节点到各参考锚节点的权值和修正系数,计算未知节点到目标锚节点的修正系数:
其中,FinalCorrectionpi为未知节点p到目标锚节点i的修正系数,Correctionij为目标锚节点i到参考锚节点j的修正系数。
该步骤对各参考路径的修正系数在水平方向上的投影进行加权求和,能够反映出各参考路径对目标路径的影响,便于对目标路径的估计距离进行修正,使估计距离结果更加接近真实的欧式距离。
步骤四:对未知节点与目标锚节点间的距离进行校正:以目标锚节点的平均跳距计算估计距离,并利用步骤三中得到的未知节点到目标锚节点的修正系数对其进行校正,使节点间距离更加精确。
EstimateDispi=HopSizep·Hoppi·FinalCorrectionpi;
其中,EstimateDispi表示为未知节点p到目标锚节点i的估计距离。
利用目标锚节点的平均跳距、修正系数和到未知节点的跳数,来计算目标锚节点到未知节点的距离,能够提升节点间距离的精度,且能有效降低传感器节点的功耗。
步骤五:利用RANSAC算法选取可靠锚节点,利用最小二乘法对可靠锚节点进行坐标拟合,选取误差最小的估计坐标作为未知节点的坐标:以完成定位的最小数据量,对所有锚节点进行若干次抽样,以抽样出的锚节点坐标和到未知节点的估计距离建立方程组,利用最小二乘法求解得到关于未知节点的估计坐标;计算估计坐标到各锚节点的估计跳数,将估计跳数与真实跳数差值在误差范围内的锚节点归为可靠锚节点,利用最小二乘法对可靠锚节点进行坐标拟合,选取误差最小的估计坐标作为本次抽样的最优估计坐标;比较每次抽样得到的最优估计坐标的误差,以误差最小的最优估计坐标作为未知节点的最终坐标。
利用RANSAC算法选取可靠锚节点的实施步骤为:
S1:对RANSAC算法的初始参数进行设定,设置置信概率η为:0.95,计算坐标的最小数据量w为:3,数据异常率ε为:40%。
S2:计算RANSAC算法的最少抽样次数M:
将RANSAC算法各项参数带入上述表达式,可得到抽样次数M=12,即需要对所有锚节点抽样12次,每次随机的选择出三个锚节点参与后续计算。
S3:对每次抽样得到的锚节点进行最小二乘法拟合,得到未知节点的估计坐标。
S4:计算未知节点的估计坐标到各锚节点的估计跳数。
未知节点的估计坐标到各锚节点的估计跳数的计算步骤为:
S41:若锚节点i处于估计坐标的通信半径内,则将其估计跳数设置为1;
该步骤将到通信半径内的锚节点的跳数都设置为1跳,与标准DV-Hop方法中利用泛洪方式计算节点间最小跳数的方式相同,保持了在计算跳数过程中的统一性。
S42:若锚节点i处于估计坐标的通信半径外,则借助锚节点的平均跳距和估计坐标到锚节点的距离来求取相应的估计跳数:
其中,(xi,yi)为锚节点i的真实坐标,(xest,yest)为未知节点的估计坐标。
对于不在通信半径内的锚节点,由于估计坐标和锚节点之间的距离可直接计算得到,且估计坐标的平均跳距无法直接求得,则可以利用锚节点的平均跳距计算估计跳数,该步骤与计算未知节点到锚节点的距离时的计算方式保持了一致性。
S5:计算未知节点的估计坐标到各锚节点的估计跳数与真实跳数的差值,设置跳数误差小于1的为可靠锚节点,其余为异常锚节点;
HopDifferi=(Hopi est-Hopi true)2;
其中,Hopi est为未知节点的估计坐标到锚节点i的估计跳数,Hopi true为未知节点到锚节点i的真实跳数,其值与Hoppi的值相同。HopDifferi表示未知节点的估计坐标到锚节点i的估计跳数与真实跳数的差值。
该步骤的优势为能够利用跳数信息选择出可靠锚节点,当跳数误差HopDifferi大于1时,可认为未知节点到该锚节点的距离误差较大,则该锚节点将不适合参与定位。当跳数误差小于1时,其距离误差相对较小,则可将该锚节点归入可靠锚节点集。
S6:判断本次抽样得到的可靠锚节点的个数是否大于3,若不满足,无法达到坐标拟合的最小数据量,返回步骤S3重新进行抽样。
当得到的可靠锚节点个数小于3时,将无法进行坐标拟合,且无法进行后续未知节点坐标的计算。因此,表明本次抽样失败,需重新执行本次抽样。
S7:利用最小二乘法对得到的可靠锚节点进行坐标拟合,此处让每个可靠锚节点所构成的方程都作为一次末尾方程,若有n个可靠锚节点,则可得到n个未知节点的估计坐标。计算各估计坐标的坐标误差,并以坐标误差最小的坐标作为本次抽样的最优估计坐标;且
其中,CoordiError表示未知节点的估计坐标的坐标误差。在计算每次得到的估计坐标误差时,是根据全网络的连通度确定的,所以此时计算的是到所有锚节点跳数的误差。
利用估计坐标可获得到各锚节点的估计跳数,当估计跳数值与真实跳数值的误差均值较小时,则表示该估计坐标与未知节点的真实坐标较为接近。在利用最小二乘法对可靠锚节点进行坐标拟合时,将各锚节点构成的方程都作为一次末尾方程,能有效避免因求解方程组所造成的潜在误差。
S8:比较每次抽样得到的未知节点最优估计坐标的误差,取误差最小的坐标作为未知节点的最终坐标。
该步骤的优势在于通过比较每次抽样得到的最优估计坐标的误差,能够确定参与未知节点定位的可靠锚节点集,并选出距离未知节点的真实坐标较近的估计坐标。
按照本发明的方法,在100m×100m的区域中随机的部署100个传感器节点,网络中锚节点总数为30个保持不变,未知节点总数为70个,节点的最大通信半径为30m;为测试各算法在不同网络结构下的表现能力,所有的仿真结果均为200次实验下的均值。
图2为本发明与对比算法求得的节点间距离精度的对比图。由仿真结果可知,参考文献[2]方法得到的结果优于参考文献[1]的标准DV-Hop方法,而本发明得到的未知节点到所有锚节点间距离的精度最优。
图3为本发明与对比算法在不同锚节点比例下得到的定位精度对比图。参考文献[3]方法和参考文献[4]方法求得的定位精度优于参考文献[1]中标准DV-Hop方法,而本发明在不同锚节点密度下求得的定位误差最小,定位精度远优于对比算法。
图4为本发明与对比算法在不同通信半径下得到的定位精度对比图。随通信半径的增大,各算法求得的定位误差都在降低,且逐渐趋于平稳,而本发明的定位精度优于另外三种对比算法。
本发明首先,根据目标锚节点到各参考锚节点间的估计距离与真实距离求得相应的修正系数,由节点间跳数和三角余弦定理求得参考锚节点、目标锚节点和未知节点所构成的角度,并从物理中弹簧模型角度出发对各修正系数赋予不同权重。然后,利用目标锚节点到各参考锚节点的修正系数加权求和得到未知节点到目标锚节点的修正系数,并结合目标锚节点的平均跳距求得到未知节点的估计距离。最后,利用RANSAC算法实现对未知节点定位过程中可靠锚节点的选取,并以可靠锚节点集进行最小二乘法拟合得到未知节点的坐标。本发明有助于提高节点间距离的准确度,且能够取得较好的节点定位精度和定位稳定性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,其特征在于,其步骤如下:
步骤一:计算目标锚节点到参考锚节点的修正系数:由标准DV-Hop方法求得各锚节点的平均跳距,利用平均跳距计算目标锚节点到参考锚节点的估计距离,以锚节点间真实距离与估计距离的比值计算目标锚节点到参考锚节点的修正系数;
步骤二:计算参考锚节点、目标锚节点和未知节点所构成的夹角:将目标锚节点到参考锚节点的路径标记为参考路径,将未知节点到目标锚节点的路径标记为目标路径,以节点间的跳数作为边长,利用三角余弦定理计算参考路径与目标路径之间的夹角;
步骤三:计算未知节点到目标锚节点的修正系数:从物理中弹簧模型角度分析目标锚节点到参考锚节点的修正系数对目标路径的影响,选取步骤二中角度的函数作为权值对参考路径的修正系数进行加权求和,得到未知节点到目标锚节点的修正系数;
所述步骤三中选取角度的余弦值的绝对值作为权值;由物理中弹簧模型可知,当从不同方向对弹簧施加作用力时,仅与弹簧平行的分解力才会使弹簧发生形变:当夹角0≤Angle≤90°时,目标锚节点到参考锚节点的修正系数对目标路径修正值的影响由大到小;当夹角90°≤Angle≤180°时,其修正系数对目标路径修正值的影响由小到大;对目标锚节点到参考锚节点的修正系数做水平方向的投影,得到修正系数对目标路径的影响,以角度余弦值的绝对值作为权值能反映出角度与修正系数的关系;
所述未知节点到目标锚节点的修正系数的实施步骤为:
步骤1:建立参考锚节点、目标锚节点和未知节点所构成的夹角的角度与权值Weight′ij的关系,并对权值Weight′ij做归一化处理,即:
Weight′ij=|cos(Anglej,i,p)|;
其中,Weight′ij表示对目标锚节点i到参考锚节点j的权值,Weightij为归一化后的权值;Anglej,i,p为参考路径和目标路径之间的夹角;
步骤2:利用目标锚节点到参考锚节点的权值和修正系数,计算未知节点到目标锚节点的修正系数:
其中,FinalCorrectionpi为未知节点p到目标锚节点i的修正系数,Correctionij为目标锚节点i到参考锚节点j的修正系数;
步骤四:对未知节点与目标锚节点间的距离进行校正:以目标锚节点的平均跳距计算估计距离,并利用步骤三中得到的未知节点到目标锚节点的修正系数进行校正;
所述步骤四中进行校正的方法为:
EstimateDispi=HopSizep·Hoppi·FinalCorrectionpi;
其中,EstimateDispi表示为未知节点p到目标锚节点i的估计距离;Hoppi为目标锚节点i和未知节点p之间的跳数,HopSizep为未知节点p的平均跳距;
步骤五:利用RANSAC算法抽取可靠锚节点,利用最小二乘法对可靠锚节点进行坐标拟合,选取误差最小的估计坐标作为未知节点的坐标;
所述RANSAC算法以完成定位的最小数据量,对所有锚节点进行若干次抽样,以抽样出的锚节点坐标和锚节点到未知节点的估计距离建立方程组,利用最小二乘法求解得到关于未知节点的估计坐标;计算估计坐标到各锚节点的估计跳数,将估计跳数与真实跳数的差值在误差范围内的锚节点归为可靠锚节点;利用最小二乘法对可靠锚节点进行坐标拟合,选取误差最小的估计坐标作为本次抽样的最优估计坐标;比较每次抽样得到的最优估计坐标的误差,以误差最小的最优估计坐标作为未知节点的最终坐标。
2.根据权利要求1所述的基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,其特征在于,所述步骤一中目标锚节点到参考锚节点的修正系数的计算方法为:
步骤1:利用标准DV-Hop方法计算网络中锚节点的平均跳距:
其中,Hopij为锚节点i和锚节点j之间的最小跳数,Disij为锚节点i和锚节点j之间的欧式距离;HopSizei为锚节点i的平均跳距,m为网络中锚节点总数;
步骤2:计算目标锚节点到参考锚节点的修正系数:
其中,Correctionij为目标锚节点i到参考锚节点j的修正系数。
3.根据权利要求1或2所述的基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,其特征在于,所述步骤二中利用三角余弦定理计算参考路径与目标路径之间的夹角的方法为:
其中,Anglej,i,p为参考锚节点j、目标锚节点i和未知节点p所构成的夹角,即为参考路径和目标路径之间的夹角;Hoppi为目标锚节点i和未知节点p之间的跳数,Hopji为参考锚节点j和目标锚节点i之间的跳数,Hoppj为参考锚节点j和未知节点p之间的跳数。
4.根据权利要求1所述的基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,其特征在于,所述RANSAC算法抽取可靠锚节点的步骤为:
S1:对RANSAC算法的初始参数进行设定,设置置信概率η、计算坐标的最小数据量w、数据异常率ε;
S2:计算RANSAC算法的最少抽样次数
S3:对每次抽样得到的锚节点进行最小二乘法拟合,得到未知节点的估计坐标;
S4:计算未知节点的估计坐标到各锚节点的估计跳数;
S5:计算未知节点的估计坐标到锚节点i的估计跳数与真实跳数的差值HopDifferi=(Hopi est-Hopi true)2,设置跳数误差小于1的为可靠锚节点,其余为异常锚节点;
其中,Hopi est为未知节点的估计坐标到锚节点i的估计跳数,Hopi true为未知节点到锚节点i的真实跳数;
S6:判断本次抽样得到的可靠锚节点的个数是否大于3,若不满足,返回步骤S3重新进行抽样。
5.根据权利要求4所述的基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,其特征在于,所述利用最小二乘法对可靠锚节点进行坐标拟合中,让每个可靠锚节点所构成的方程都作为一次末尾方程,若有n个可靠锚节点,则可得到n个未知节点的估计坐标;计算未知节点的估计坐标的坐标误差并以坐标误差最小的坐标作为抽样的最优估计坐标,m表示网络中锚节点总数。
6.根据权利要求4所述的基于弹簧模型和可靠锚节点的DV-Hop节点定位方法,其特征在于,所述未知节点的估计坐标到各锚节点的估计跳数的计算方法为:
S41:若锚节点i处于估计坐标的通信半径内,则将其估计跳数设置为1;
S42:若锚节点i处于估计坐标的通信半径外,则利用锚节点的平均跳距和估计坐标到锚节点的距离求取估计跳数:
其中,(xi,yi)为锚节点i的真实坐标,(xest,yest)为未知节点的估计坐标,HopSizei为锚节点i的平均跳距。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110994369.9A CN113709862B (zh) | 2021-08-27 | 2021-08-27 | 一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110994369.9A CN113709862B (zh) | 2021-08-27 | 2021-08-27 | 一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113709862A CN113709862A (zh) | 2021-11-26 |
CN113709862B true CN113709862B (zh) | 2024-01-30 |
Family
ID=78655846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110994369.9A Active CN113709862B (zh) | 2021-08-27 | 2021-08-27 | 一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113709862B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111556454A (zh) * | 2020-04-24 | 2020-08-18 | 河南工业大学 | 一种基于最小均方误差准则的加权DV_Hop节点定位方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105093177B (zh) * | 2014-05-14 | 2017-08-04 | 中国科学院沈阳自动化研究所 | 一种基于跳频技术的rssi定位方法 |
-
2021
- 2021-08-27 CN CN202110994369.9A patent/CN113709862B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111556454A (zh) * | 2020-04-24 | 2020-08-18 | 河南工业大学 | 一种基于最小均方误差准则的加权DV_Hop节点定位方法 |
Non-Patent Citations (4)
Title |
---|
An Enhanced DV-Hop Positioning Scheme Based on Spring Model and Reliable Beacon Node Set;Chen Tianfei;Computer Networks;第2-6节 * |
一种弹簧系数和跳数分类的改进DV-Hop算法;吴雪敏;张继荣;;中国科技论文(第07期);全文 * |
基于DV-Hop的无线传感器网络定位算法研究;侯帅鑫;《中国优秀硕士学位论文全文数据库》;第3章 * |
锚节点选择和距离修正的DV-Hop定位算法;王学;李蒙;宋书中;;计算机测量与控制(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113709862A (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107038717B (zh) | 一种基于立体栅格自动分析3d点云配准误差的方法 | |
WO2018018994A1 (zh) | 室内定位方法及定位系统 | |
CN107247961B (zh) | 一种应用模糊轨迹序列的轨迹预测方法 | |
CN110081888B (zh) | 一种基于可信度的惯导和地磁融合的室内定位算法 | |
CN107192998B (zh) | 一种基于协方差指标函数的自适应分布式航迹数据融合方法 | |
CN109752710B (zh) | 一种基于稀疏贝叶斯学习的快速目标角度估计方法 | |
CN107561549B (zh) | 终端位置的重定位方法、装置、终端及存储介质 | |
CN105526939B (zh) | 道路匹配方法和装置 | |
CN110146846B (zh) | 一种声源位置估计方法、可读存储介质及计算机设备 | |
WO2016187746A1 (zh) | 提高人工神经网络定位性能的方法和装置 | |
CN106912105A (zh) | 基于pso_bp神经网络的三维定位方法 | |
CN107300687B (zh) | 一种基于运动多站的高精度无源时差定位方法 | |
CN110826644B (zh) | 基于Copula函数的分布式电源时序联合出力典型场景生成方法 | |
CN115374995A (zh) | 一种分布式光伏、小风电场站功率预测方法 | |
CN111415379A (zh) | 一种基于布谷鸟优化的三维点云数据配准方法 | |
CN112881979A (zh) | 一种基于ekf滤波的初始状态自适应融合定位方法 | |
CN111711432B (zh) | 一种基于ukf和pf混合滤波的目标跟踪算法 | |
CN115342814B (zh) | 一种基于多传感器数据融合的无人船定位方法 | |
CN114063056A (zh) | 一种船舶航迹融合方法、系统、介质和设备 | |
Singh et al. | Unsupervised change detection from remote sensing images using hybrid genetic FCM | |
CN115100376A (zh) | 一种基于改进反距离插值法的电磁频谱地图实现方法 | |
CN108344968A (zh) | 一种基于多峰量子布谷鸟搜索机制的正交传播算子测向方法 | |
CN113709862B (zh) | 一种基于弹簧模型和可靠锚节点的DV-Hop节点定位方法 | |
CN110909303A (zh) | 一种自适应时空异质性反距离插值方法 | |
CN115494450B (zh) | 一种高精度的超宽带室内定位跟踪与控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |