CN104684081B - 基于距离聚类遴选锚节点的无线传感器网络节点定位算法 - Google Patents
基于距离聚类遴选锚节点的无线传感器网络节点定位算法 Download PDFInfo
- Publication number
- CN104684081B CN104684081B CN201510070653.1A CN201510070653A CN104684081B CN 104684081 B CN104684081 B CN 104684081B CN 201510070653 A CN201510070653 A CN 201510070653A CN 104684081 B CN104684081 B CN 104684081B
- Authority
- CN
- China
- Prior art keywords
- mrow
- msub
- mtd
- msubsup
- mtr
- 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
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 46
- 230000004807 localization Effects 0.000 title claims abstract description 10
- 238000005259 measurement Methods 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims abstract description 7
- 238000007621 cluster analysis Methods 0.000 claims abstract description 6
- 230000001976 improved effect Effects 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 claims description 5
- 230000001186 cumulative effect Effects 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000009825 accumulation Methods 0.000 claims description 2
- 230000009021 linear effect Effects 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013068 supply chain management Methods 0.000 description 1
- 230000003313 weakening effect Effects 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/003—Locating users or terminals or network equipment for network management purposes, e.g. mobility management locating network equipment
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
基于距离聚类遴选锚节点的无线传感器网络节点定位算法,它涉及无线传感器网络中节点定位领域,降低测距误差带来的较大定位误差。通过分析最小二乘法测量误差对辨识精度的影响,及参与定位的锚节点距离测量误差的相对误差对辨识精度的影响,以距离作为聚类的对象,通过层次聚类遴选距离值接近的锚节点作为用于实现定位的参考锚节点。未知节点根据自身与遴选出来的锚节点之间的距离,以多边定位算法建立相应的定位模型,最后根据最小二乘确定未知节点的位置。本发明将聚类算法应用到节点定位中,对待测节点与锚节点之间的距离进行聚类分析,有选择性的选取锚节点实现定位,与传统的最小二乘算法相比,提高了定位的精确度和可靠性。
Description
技术领域
本发明涉及无线传感器网络节点定位领域,具体涉及一种基于距离聚类遴选锚节点的改进最小二乘定位算法。
背景技术
随着科技的发展,无线传感器网络(WSN)作为一种新型的信息获取技术,在工业控制与监测、家庭自动化与消费电子、安全与军事、物资跟踪与供应链管理、智能农业、环境感知和健康监测等领域有着广泛的应用。准确获取传感器节点的位置信息已经成为WSN领域的重要基础研究课题。在特定的应用环境下,只有知道所感知数据的位置信息,知道在什么地方发生了什么事件,才能进行及时有效的处理;否则所感知的数据就会失去意义。传感器网络中节点的位置信息不仅是网络进行定位、跟踪的基础,同时也可提高网络的路由效率等。
在无线传感器网络的定位过程中,根据是否需要测距,WSN的定位算法主要分为range-based和range-free两大类。range-free类算法通过节点间的跳数、感知半径等信息实现测距,单个节点设备简单,但其定位精度不高,较多的应用在对定位精度要求不高、价格便宜的领域,典型的算法有质心算法、Dv-Hop、APIT算法等。range-based算法通过节点间的距离、相对角度等相关信息进行定位,定位精度较高;根据使用的信息不同又可分为TOA、AOA、TDOA、RSSI等方法,其中RSSI算法所需设备简单,因此被广泛应用。
基于测距的定位算法都围绕一个核心:减少测距误差对定位精度带来的影响。解决思路主要有两种:一类是解凸规划问题;另一类思想则是基于最小二乘的思路。最小二乘算法以其简单、运算量小的特点,有利于降低节点能耗,得到研究人员的广泛关注。最小二乘定位算法的定位精度受到测距误差的影响较大,对广泛采用的RSSI技术测距,由于受到多径传输、反射等影响,其测距误差较大。Yu ning等在“An improved localizationalgorithm for wireless sensor network”中提出加权最小二乘定位算法,通过削弱误差较大的参考锚节点在定位中的作用来达到减小测距误差对定位误差的影响,但加权最小二乘定位算法对加权矩阵的设定要求较高。
发明内容
为了克服测距误差对定位误差的影响,针对现有技术存在的上述不足,本发明的目的是提出一种基于距离聚类遴选锚节点的无线传感器网络节点定位算法,在减小计算量的同时,提高节点的定位精度,实现一种易于实现、低计算复杂度、且精度较高的节点定位算法。
本发明采取的技术方案为:
基于距离聚类遴选锚节点的无线传感器网络节点定位算法,在深入分析最小二乘定位算法产生误差的基础上,建立了辨识精度分析模型,提出一种基于锚节点选择的改进最小二乘定位算法。
由于多径传输、反射等影响,RSSI测距模型不可避免的存在较大的误差。传统的三边定位算法无法准确地计算出待测节点的坐标。而最小二乘法不需要任何先验知识,只需要关于估计量的观测模型,就可实现参量的估计,易于实现,并能使误差的平方和达到最小。本发明将聚类的思想引入最小二乘算法中,对节点之间的距离进行聚类分析遴选锚节点,最后根据这些选择出的锚节点的位置信息,利用最小二乘算法确定节点的位置;具体步骤如下:
(1):建立节点定位模型
设待测节点周围有n个锚节点,设未知节点坐标(x,y),(x1,y1)、(x2,y2)…、(xn-1,yn-1)、(xn,yn)为锚节点的坐标,未知节点到锚节点的距离依次为d1、d2、dn-1、dn,e1、e2、en-1、en为测距误差,则:
分别用第1,2…n个方程减去第j个方程,则有:
上式可表示为:AX=B*+E
其中:
(2)建立辨识精度分析模型:
设线性方程为y=a*x,测定的数据为一组(xi,yi),i=1~n,待辨识的参数为a,设y的测量误差为ei,则有:
上式表述为Xa=Y+E,X,Y均为矩阵,则:
X=[x1 x2…xn]TY=[y1 y2…yn]T E=[e1 e2…en]T
a=(XTX)-1XT(Y+E)
=(XTX)-1XTY+(XTX)-1XTE
令:M=(XTX)-1XT,a=M(Y+E)=a*+ME
a的辨识误差为:
||a-a*||2=||ME||2≤||M||F·||E||2
由于||M||F是常量:
||a-a*||2∝||E||2
当||E||2越小时,越小,辨识参数的误差越小。
的大小直接影响辨识精度,越小时,a的辨识精度越高。
(3)改进最小二乘定位算法:
由于∑(ei-ej)的大小直接影响待测节点位置的辨识精度,所以应选择∑|ei-ej|最小的点作为基准锚节点。
a)聚类分析:
由于RSSI测距误差通常正比于距离值,随着距离的增大,测距误差也相对的增大;改进的最小二乘定位算法选择节点之间的距离作为聚类的对象。
设基准锚节点编号为j#,则基准锚节点累积相对距离误差为参考锚节点间的距离聚类度为
设n为基准锚节点,则距离聚类度为:
当di(i=1~n)与dn的值越接近时,距离聚类度∑∑|di-dn|越小。即基准锚节点离待测节点的距离与其他锚节点到待测节点的距离越接近越好。
b)节点定位:
用分层聚类算法选择待测节点周围感知距离内的参考锚节点,将距离值接近的参考锚节点划分为一类,再计算该类各个参考锚节点的与待测节点测量距离差的绝对值的累积值,选择累积距离差绝对值最小的参考锚节点作为基准锚节点。
采用最小二乘法求取待测节点坐标:X=(ATA)-1AT(B*+E)。
本发明一种基于距离聚类遴选锚节点的无线传感器网络节点定位算法,优点在于:
采用RSSI进行测距,对硬件要求相对较低,易于实现,且计算复杂度低。
本发明将聚类算法应用到节点定位中,对待测节点与锚节点之间的距离进行聚类分析,有选择性的选取锚节点实现定位,与传统的最小二乘算法相比,提高了定位的精确度和可靠性。
附图说明
图1是基于测距的节点定位模型示意图。
图2是校正误差随测量误差变化趋势。
图3是定位误差与距离聚类度的关系。
图4是距离聚类示意图。
图5为本发明提出的基于距离聚类遴选锚节点定位算法与传统最小二乘定位算法的比较图。
具体实施方式
基于距离聚类遴选锚节点的无线传感器网络节点定位算法,具体步骤如下:
步骤一:未知节点发送信息;
步骤二:锚节点接收到来自未知节点信息后,计算RSSI值;
步骤三:锚节点将自身的位置信息,ID号,RSSI值发送给待定位的节点;
步骤四:未知节点将RSSI值转换成节点间的距离信息,形成未知节点到附近锚节点距离向量:
D=[d1,d2,…,dn]
设(x1,y1)、(x2,y2)…(xn,yn)为未知节点周围的锚节点,根据多变定位模型可得:
如图1所示,以待测节点周围的锚节点数为3为例,虚线圆为理想状态下的定位结果,即三个圆交于一点,该点即为未知节点的坐标;
在实际的定位系统中,由于测距误差的影响,这些圆无法交于一点,而是形成一块区域,如图中实线圆所交的区域。
步骤五:利用层次聚类算法对距离进行聚类分析,选取合适的锚节点作为参考锚节点实现定位。距离近对应的测距误差也相对较小,如图2所示。选择距离未知节点距离较近的锚节点作为参考锚节点有利于定位精度的提高。
图3为距离聚类度与定位误差的关系,可看出随着距离聚类度越低,定位误差越低。
如图4所示,以节点间的距离作为聚类对象时,类别1中锚节点距离待定位节点之间的距离相近;
所以选择1、2和4作为参考锚节点,距离聚类度相对较小,且距离待定位节点较近,可有效的提高定位精度,避免引入较大的误差。
层次聚类的具体实现步骤:
1)将每个样本归为一类,计算每两个类之间的距离,即样本与样本之间的相似度;
2)寻找各个类之间最近的两个类,把他们归为一类;
3)重新计算新生成的这个类与各个旧类之间的相似度;
4)重复2和3,当最近的两个类之间的距离大于某一阈值时,迭代结束。
步骤六:通过距离聚类遴选出参考锚节点后,以最小二乘算法实现定位;
以节点1、2和4作为遴选出的参考锚节点,则:
计算各个锚节点的与待测节点测量距离差的绝对值的累积值,选择累积距离差绝对值最小的参考锚节点作为基准锚节点。本实施方案中,以距离待定位节点相对较近的节点4作为基准锚节点,用1,2两方程减该基准锚节点方程得:
由AX=B*可得:X=(ATA)-1ATB*,则可求得未知节点的坐标(x,y)。
其中:
通过以上过程,实现基于距离聚类遴选锚节点的改进最小二乘定位算法。
用聚类算法对待测节点周围感知距离内的锚节点进行分析,将距离值接近的锚节点划分为一类,选取距离待测节点较近的一类作为定位参考。如图5所示,将传统的最小二乘定位算法与遴选锚节点的定位结果相比较,可看出有选择性的选取锚节点实现定位有较好的精确度。
Claims (2)
1.基于距离聚类遴选锚节点的无线传感器网络节点定位算法,其特征在于,它建立辨识精度分析模型,将聚类的思想引入无线传感器网络中,以距离作为的聚类对象,遴选出距离相近的锚节点作为参考锚节点,而不是利用全部的锚节点来实现未知节点的定位;具体步骤如下:
1)、建立节点定位模型:
对于任意待定位节点(x,y),假设其周围有n个锚节点,(x1,y1)、(x2,y2)…、(xn-1,yn-1)、(xn,yn)为锚节点的坐标,未知节点到锚节点的距离依次为d1、d2、dn-1、dn,e1、e2、en-1、en为测距误差,则:
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<msub>
<mi>d</mi>
<mn>1</mn>
</msub>
<mn>2</mn>
</msup>
<mo>+</mo>
<msub>
<mi>e</mi>
<mn>1</mn>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<msub>
<mi>d</mi>
<mn>2</mn>
</msub>
<mn>2</mn>
</msup>
<mo>+</mo>
<msub>
<mi>e</mi>
<mn>2</mn>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<msub>
<mi>d</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mn>2</mn>
</msup>
<mo>+</mo>
<msub>
<mi>e</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mi>n</mi>
</msub>
<mo>-</mo>
<mi>x</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mi>n</mi>
</msub>
<mo>-</mo>
<mi>y</mi>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<msub>
<mi>d</mi>
<mi>n</mi>
</msub>
<mn>2</mn>
</msup>
<mo>+</mo>
<msub>
<mi>e</mi>
<mi>n</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
分别用第1,2…n个方程减去第j个方程,则有:
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mn>2</mn>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>x</mi>
<mo>+</mo>
<mn>2</mn>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>y</mi>
<mo>=</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>x</mi>
<mn>1</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>x</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>y</mi>
<mn>1</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>y</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>d</mi>
<mn>1</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>d</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mrow>
<mo>(</mo>
<msub>
<mi>e</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>e</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>2</mn>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>x</mi>
<mo>+</mo>
<mn>2</mn>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>y</mi>
<mo>=</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>x</mi>
<mn>2</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>x</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>y</mi>
<mn>2</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>y</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>d</mi>
<mn>2</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>d</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mrow>
<mo>(</mo>
<msub>
<mi>e</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>e</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>....</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>2</mn>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mi>n</mi>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>x</mi>
<mo>+</mo>
<mn>2</mn>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mi>n</mi>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>y</mi>
<mo>=</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>x</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>y</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>y</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mrow>
<mo>(</mo>
<msubsup>
<mi>d</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>d</mi>
<mi>j</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mrow>
<mo>(</mo>
<msub>
<mi>e</mi>
<mi>n</mi>
</msub>
<mo>-</mo>
<msub>
<mi>e</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
可将这一定位模型表示为:AX=B*+E
其中:
<mrow>
<mi>A</mi>
<mo>=</mo>
<mn>2</mn>
<mo>&times;</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mrow>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>n</mi>
</msub>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>n</mi>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>n</mi>
</msub>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>n</mi>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mi>n</mi>
</msub>
</mrow>
</mtd>
<mtd>
<mrow>
<msub>
<mi>y</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mi>n</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
<mrow>
<msup>
<mi>B</mi>
<mo>*</mo>
</msup>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mrow>
<mo>(</mo>
<msubsup>
<mi>x</mi>
<mn>1</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
<mo>+</mo>
<mo>(</mo>
<msubsup>
<mi>y</mi>
<mn>1</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>y</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
<mo>-</mo>
<mo>(</mo>
<msubsup>
<mi>d</mi>
<mn>1</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>d</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>(</mo>
<msubsup>
<mi>x</mi>
<mn>2</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
<mo>+</mo>
<mo>(</mo>
<msubsup>
<mi>y</mi>
<mn>2</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>y</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
<mo>-</mo>
<mo>(</mo>
<msubsup>
<mi>d</mi>
<mn>2</mn>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>d</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>(</mo>
<msubsup>
<mi>x</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>x</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
<mo>+</mo>
<mo>(</mo>
<msubsup>
<mi>y</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>y</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
<mo>-</mo>
<mo>(</mo>
<msubsup>
<mi>d</mi>
<mrow>
<mi>n</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<msubsup>
<mi>d</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
<mo>)</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
<mrow>
<mi>E</mi>
<mo>=</mo>
<mo>-</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<mrow>
<msub>
<mi>e</mi>
<mn>1</mn>
</msub>
<mo>-</mo>
<msub>
<mi>e</mi>
<mi>j</mi>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mi>e</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>e</mi>
<mi>j</mi>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<msub>
<mi>e</mi>
<mi>n</mi>
</msub>
<mo>-</mo>
<msub>
<mi>e</mi>
<mi>j</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
(2)、建立辨识精度分析模型:
设线性方程为y=a*x,测定的数据为一组(xi,yi),i=1~n,待辨识的参数为a,设y的测量误差为ei,则有:
<mfenced open = "{" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mi>a</mi>
<mo>*</mo>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>=</mo>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
<mo>+</mo>
<msub>
<mi>e</mi>
<mn>1</mn>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mi>a</mi>
<mo>*</mo>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>=</mo>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
<mo>+</mo>
<msub>
<mi>e</mi>
<mn>2</mn>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mi>a</mi>
<mo>*</mo>
<msub>
<mi>x</mi>
<mi>n</mi>
</msub>
<mo>=</mo>
<msub>
<mi>y</mi>
<mi>n</mi>
</msub>
<mo>+</mo>
<msub>
<mi>e</mi>
<mi>n</mi>
</msub>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
上式表述为Xa=Y+E,X,Y均为矩阵,则:
X=[x1 x2 … xn]T Y=[y1 y2 … yn]T E=[e1 e2 … en]T
a=(XTX)-1XT(Y+E)
=(XTX)-1XTY+(XTX)-1XTE
令:M=(XTX)-1XT,a=M(Y+E)=a*+ME
a的辨识误差为:
||a-a*||2=||ME||2≤||M||F·||E||2∝||E||2
当||E||2越小时,越小,辨识参数的误差越小;
<mrow>
<mo>|</mo>
<mo>|</mo>
<mi>E</mi>
<mo>|</mo>
<msub>
<mo>|</mo>
<mn>2</mn>
</msub>
<mo>=</mo>
<msqrt>
<mrow>
<msubsup>
<mi>e</mi>
<mn>1</mn>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<msubsup>
<mi>e</mi>
<mn>2</mn>
<mn>2</mn>
</msubsup>
<mo>+</mo>
<mn>...</mn>
<mo>+</mo>
<msubsup>
<mi>e</mi>
<mi>n</mi>
<mn>2</mn>
</msubsup>
</mrow>
</msqrt>
<mo>=</mo>
<msqrt>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>n</mi>
</munderover>
<msubsup>
<mi>e</mi>
<mi>i</mi>
<mn>2</mn>
</msubsup>
</mrow>
</msqrt>
<mo>&Proportional;</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>n</mi>
</munderover>
<mo>|</mo>
<msub>
<mi>e</mi>
<mi>i</mi>
</msub>
<mo>|</mo>
</mrow>
的大小直接影响辨识精度,越小时,a的辨识精度越高;
(3)、改进最小二乘定位算法:
由于∑(ei-ej)的大小直接影响待测节点位置的辨识精度,所以应选择∑|ei-ej|最小的点作为基准锚节点;
该算法包括聚类分析步骤,
a)、聚类分析:
由于RSSI测距误差通常正比于距离值,改进的最小二乘定位算法选择节点之间的距离作为聚类的对象,设基准锚节点编号为j#,则基准锚节点累积相对距离误差为参考锚节点间的距离聚类度为
设n为基准锚节点,则距离聚类度为:
=(n-1)*基准锚节点的距离聚类度
当di(i=1~n)与dn的值越接近时,距离聚类度∑∑|di-dn|越小;即基准锚节点离待测节点的距离与其他锚节点到待测节点的距离越接近越好;计算该类各个参考锚节点的与待测节点测量距离差的绝对值的累积值,选择累积距离差绝对值最小的参考锚节点作为基准锚节点。
2.根据权利要求1所述基于距离聚类遴选锚节点的无线传感器网络节点定位算法,其特征在于,包括节点定位步骤,
b)、节点定位:
利用最小二乘法,求取待测节点坐标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510070653.1A CN104684081B (zh) | 2015-02-10 | 2015-02-10 | 基于距离聚类遴选锚节点的无线传感器网络节点定位算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510070653.1A CN104684081B (zh) | 2015-02-10 | 2015-02-10 | 基于距离聚类遴选锚节点的无线传感器网络节点定位算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104684081A CN104684081A (zh) | 2015-06-03 |
CN104684081B true CN104684081B (zh) | 2017-11-10 |
Family
ID=53318508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510070653.1A Active CN104684081B (zh) | 2015-02-10 | 2015-02-10 | 基于距离聚类遴选锚节点的无线传感器网络节点定位算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104684081B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106792749B (zh) * | 2016-12-27 | 2019-12-06 | 重庆大学 | 基于cfd和聚类算法的无线传感器网络节点部署方法 |
CN107219499A (zh) * | 2017-05-23 | 2017-09-29 | 哈尔滨工业大学(威海) | 一种基于最小二乘定位的不确定性分析方法 |
CN107192979A (zh) * | 2017-05-23 | 2017-09-22 | 哈尔滨工业大学(威海) | 一种最大似然定位计算的不确定性分析方法 |
CN107801168B (zh) * | 2017-08-17 | 2020-12-29 | 龙岩学院 | 一种室外自适应的被动式目标的定位方法 |
CN108089148B (zh) * | 2017-12-14 | 2019-08-30 | 电子科技大学 | 一种基于时差信息的无源多站多目标测向交叉定位方法 |
CN108924734B (zh) * | 2018-05-24 | 2020-08-11 | 北京理工大学 | 一种三维传感器节点定位方法及系统 |
CN110225451B (zh) * | 2019-06-19 | 2021-02-02 | 京东方科技集团股份有限公司 | 基于无线自组网的节点定位方法及装置、电子设备、介质 |
CN110650440B (zh) * | 2019-09-25 | 2020-12-15 | 江苏中润普达环境大数据有限公司 | 一种智能家居室内定位静态监测系统 |
CN111238480B (zh) * | 2020-01-14 | 2023-04-07 | 西安电子科技大学 | 基于距离残差的nlos识别方法及在室内定位中的应用 |
CN111555824A (zh) * | 2020-04-26 | 2020-08-18 | 南京工业大学 | 一种用于LoRa定位系统的不良锚节点检测与消除方法 |
CN111754040B (zh) * | 2020-06-23 | 2021-03-16 | 邢冠南 | 一种基于用户需求的信息处理推送方法 |
CN112954637B (zh) * | 2021-01-23 | 2022-07-22 | 西北工业大学 | 一种锚节点位置不确定情况下的目标定位方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101778399A (zh) * | 2010-01-18 | 2010-07-14 | 哈尔滨工业大学 | 基于fcm和最小二乘曲面拟合法的wlan室内优化ann定位方法 |
CN103220746A (zh) * | 2013-03-26 | 2013-07-24 | 中国电子科技集团公司第二十八研究所 | 一种无线传感器网络节点自定位方法 |
-
2015
- 2015-02-10 CN CN201510070653.1A patent/CN104684081B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101778399A (zh) * | 2010-01-18 | 2010-07-14 | 哈尔滨工业大学 | 基于fcm和最小二乘曲面拟合法的wlan室内优化ann定位方法 |
CN103220746A (zh) * | 2013-03-26 | 2013-07-24 | 中国电子科技集团公司第二十八研究所 | 一种无线传感器网络节点自定位方法 |
Non-Patent Citations (5)
Title |
---|
GEOMETRICAL CONSTRAINED LEAST SQUARES ESTIMATION IN WIRELESS LOCATION SYSTEMS;Zhu Hua, Li Hang, Li Yue, Long Hang, Zheng Kan;《IEEE》;20141231;全文 * |
Weighted Centroid Localization Algorithm Based on Least Square for Wireless Sensor Networks;Shaoguo Xie, Yanjun Hu, Senior Member, IEEE, and Yi Wang;《IEEE》;20141231;全文 * |
一种用于库区环境监测的WSN 节点定位算法;陈小辉,何景,陈晨;《电子设计工程》;20120430;全文 * |
基于减法聚类的TOA/AOA定位方法研究;徐彤阳;《电子测量技术》;20131030;全文 * |
基于最小二乘测距定位算法信标最优部署模型;刘书静 罗海勇 吴彬 刘晓明 赵方;《计算机学报》;20130331;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104684081A (zh) | 2015-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104684081B (zh) | 基于距离聚类遴选锚节点的无线传感器网络节点定位算法 | |
CN104853435B (zh) | 一种基于概率的室内定位方法和装置 | |
CN104080165B (zh) | 一种基于tdoa的室内无线传感器网络定位方法 | |
EP3173807B1 (en) | System and method for robust and accurate rssi based location estimation | |
CN103747419B (zh) | 一种基于信号强度差值与动态线性插值的室内定位方法 | |
CN105072581B (zh) | 一种基于路径衰减系数建库的室内定位方法 | |
CN109444813A (zh) | 一种基于bp和dnn双神经网络的rfid室内定位方法 | |
CN106093852A (zh) | 一种提高WiFi指纹定位精度与效率的方法 | |
CN107703480A (zh) | 基于机器学习的混合核函数室内定位方法 | |
CN106102163A (zh) | 基于rss线性相关与二次加权质心算法的wlan指纹定位方法 | |
CN101860959A (zh) | 基于rssi的无线传感器网络的定位方法 | |
CN105792356A (zh) | 一种基于wifi的位置指纹定位方法 | |
CN102231912A (zh) | 一种基于rssi测距的室内无线传感器网络定位方法 | |
CN106597363A (zh) | 一种室内wlan环境下的行人定位方法 | |
CN103826298B (zh) | 一种协作式迭代优化的无线传感器网络定位计算方法 | |
CN103885030A (zh) | 一种无线传感器网络移动节点的定位方法 | |
CN104038901A (zh) | 一种减少指纹数据采集工作量的室内定位方法 | |
Li et al. | Unsupervised learning of indoor localization based on received signal strength | |
CN115776724B (zh) | 面向电磁频谱地图测绘的传感器节点布局优化方法及系统 | |
CN104363649A (zh) | 带有约束条件的ukf的wsn节点定位方法 | |
CN107708202A (zh) | 一种基于DV‑Hop的无线传感器网络节点定位方法 | |
CN107360552A (zh) | 一种多分类器全局动态融合的室内定位方法 | |
CN104820204A (zh) | 一种减小偏差的加权最小二乘定位方法 | |
CN103249144A (zh) | 一种基于c型的无线传感器网络节点定位方法 | |
Jun et al. | Weighted least square localization algorithm based on RSSI values |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20150603 Assignee: Yichang Shiwei Technology Co.,Ltd. Assignor: CHINA THREE GORGES University Contract record no.: X2023980051111 Denomination of invention: A Wireless Sensor Network Node Localization Algorithm Based on Distance Clustering Selection of Anchor Nodes Granted publication date: 20171110 License type: Common License Record date: 20231213 |