首页> 中国专利> 基于距离聚类遴选锚节点的无线传感器网络节点定位算法

基于距离聚类遴选锚节点的无线传感器网络节点定位算法

摘要

基于距离聚类遴选锚节点的无线传感器网络节点定位算法,它涉及无线传感器网络中节点定位领域,降低测距误差带来的较大定位误差。通过分析最小二乘法测量误差对辨识精度的影响,及参与定位的锚节点距离测量误差的相对误差对辨识精度的影响,以距离作为聚类的对象,通过层次聚类遴选距离值接近的锚节点作为用于实现定位的参考锚节点。未知节点根据自身与遴选出来的锚节点之间的距离,以多边定位算法建立相应的定位模型,最后根据最小二乘确定未知节点的位置。本发明将聚类算法应用到节点定位中,对待测节点与锚节点之间的距离进行聚类分析,有选择性的选取锚节点实现定位,与传统的最小二乘算法相比,提高了定位的精确度和可靠性。

著录项

  • 公开/公告号CN104684081A

    专利类型发明专利

  • 公开/公告日2015-06-03

    原文格式PDF

  • 申请/专利权人 三峡大学;

    申请/专利号CN201510070653.1

  • 发明设计人 陈小辉;张梦娇;

    申请日2015-02-10

  • 分类号H04W64/00(20090101);

  • 代理机构42103 宜昌市三峡专利事务所;

  • 代理人吴思高

  • 地址 443002 湖北省宜昌市大学路8号

  • 入库时间 2023-12-18 09:04:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-10

    授权

    授权

  • 2015-07-01

    实质审查的生效 IPC(主分类):H04W64/00 申请日:20150210

    实质审查的生效

  • 2015-06-03

    公开

    公开

说明书

技术领域

本发明涉及无线传感器网络节点定位领域,具体涉及一种基于距离聚类遴选锚节点 的改进最小二乘定位算法。

背景技术

随着科技的发展,无线传感器网络(WSN)作为一种新型的信息获取技术,在工业控 制与监测、家庭自动化与消费电子、安全与军事、物资跟踪与供应链管理、智能农业、环 境感知和健康监测等领域有着广泛的应用。准确获取传感器节点的位置信息已经成为WSN 领域的重要基础研究课题。在特定的应用环境下,只有知道所感知数据的位置信息,知道 在什么地方发生了什么事件,才能进行及时有效的处理;否则所感知的数据就会失去意义。 传感器网络中节点的位置信息不仅是网络进行定位、跟踪的基础,同时也可提高网络的路 由效率等。

在无线传感器网络的定位过程中,根据是否需要测距,WSN的定位算法主要分为 range-based和range-free两大类。range-free类算法通过节点间的跳数、感知半径等信息实 现测距,单个节点设备简单,但其定位精度不高,较多的应用在对定位精度要求不高、价 格便宜的领域,典型的算法有质心算法、Dv-Hop、APIT算法等。range-based算法通过节 点间的距离、相对角度等相关信息进行定位,定位精度较高;根据使用的信息不同又可分 为TOA、AOA、TDOA、RSSI等方法,其中RSSI算法所需设备简单,因此被广泛应用。

基于测距的定位算法都围绕一个核心:减少测距误差对定位精度带来的影响。解决思 路主要有两种:一类是解凸规划问题;另一类思想则是基于最小二乘的思路。最小二乘算 法以其简单、运算量小的特点,有利于降低节点能耗,得到研究人员的广泛关注。最小二 乘定位算法的定位精度受到测距误差的影响较大,对广泛采用的RSSI技术测距,由于受 到多径传输、反射等影响,其测距误差较大。Yu ning等在“An improved localization algorithm  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为测距误差,则:

(x1-x)2+(y1-y)2=d12+e1(x2-x)2+(y2-y)2=d22+e2...(xn-1-x)2+(yn-1-y)2=dn-12+en-1(xn-x)2+(yn-y)2=dn2+en

分别用第1,2…n个方程减去第j个方程,则有:

2(x1-xj)x+2(y1-yj)y=(x12-xj2)+(y12-yj2)-(d12-dj2)-(e1-ej)2(x2-xj)x+2(y2-yj)y=(x22-xj2)+(y22-yj2)-(d22-dj2)-(e2-ej)....2(xn-xj)x+2(yn-yj)y=(xn2-xj2)+(yn2-yj2)-(dn2-dj2)-(en-ej)

上式可表示为:AX=B*+E

其中:

A=2×x1-xny1-ynx2-xny2-yn......xn-1-xnyn-1-yn

B*(x12-xn2)+(y12-yn2)-(d12-dn2)(x22-xn2)+(y22-yn2)-(d22-dn2)...(xn-12-xn2)+(yn-12-yn2)-(dn-12-dn2)

E=-e1-eje2-ej...en-ej

(2)建立辨识精度分析模型:

设线性方程为y=a*x,测定的数据为一组(xi,yi),i=1~n,待辨识的参数为a,设y的测 量误差为ei,则有:

a*x1=y1+e1a*x2=y2+e2...a*xn=yn+en

上式表述为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

由于||M||F是常量:

||a-a*||2∝||E||2

当||E||2越小时,越小,辨识参数的误差越小。

||E||2=e12+e22+...+en2=Σi=1nei2Σi=1n|ei|

的大小直接影响辨识精度,越小时,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)为未知节点周围的锚节点,根据多变定位模型可 得:

(x1-x)2+(y1-y)2=d12(x2-x)2+(y2-y)2=d22...(xn-x)2+(yn-y)2=dn2

如图1所示,以待测节点周围的锚节点数为3为例,虚线圆为理想状态下的定位结果, 即三个圆交于一点,该点即为未知节点的坐标;

在实际的定位系统中,由于测距误差的影响,这些圆无法交于一点,而是形成一块区 域,如图中实线圆所交的区域。

步骤五:利用层次聚类算法对距离进行聚类分析,选取合适的锚节点作为参考锚节点 实现定位。距离近对应的测距误差也相对较小,如图2所示。选择距离未知节点距离较近 的锚节点作为参考锚节点有利于定位精度的提高。

图3为距离聚类度与定位误差的关系,可看出随着距离聚类度越低,定位误差越低。

如图4所示,以节点间的距离作为聚类对象时,类别1中锚节点距离待定位节点之间 的距离相近;

所以选择1、2和4作为参考锚节点,距离聚类度相对较小,且距离待定位节点较近, 可有效的提高定位精度,避免引入较大的误差。

层次聚类的具体实现步骤:

1)将每个样本归为一类,计算每两个类之间的距离,即样本与样本之间的相似度;

2)寻找各个类之间最近的两个类,把他们归为一类;

3)重新计算新生成的这个类与各个旧类之间的相似度;

4)重复2和3,当最近的两个类之间的距离大于某一阈值时,迭代结束。

步骤六:通过距离聚类遴选出参考锚节点后,以最小二乘算法实现定位;

以节点1、2和4作为遴选出的参考锚节点,则:

(x1-x)2+(y1-y)2=d12(x2-x)2+(y2-y)2=d22(x4-x)2+(y4-y)2=d42

计算各个锚节点的与待测节点测量距离差的绝对值的累积值,选择累积距离差绝对值 最小的参考锚节点作为基准锚节点。本实施方案中,以距离待定位节点相对较近的节点4 作为基准锚节点,用1,2两方程减该基准锚节点方程得:

2(x1-x4)x+2(y1-y4)y=(x12-x42)+(y12-y42)-(d12-d42)2(x2-x4)x+2(y2-y4)y=(x22-x42)+(y22-y42)-(d22-d42)

由AX=B*可得:X=(ATA)-1ATB*,则可求得未知节点的坐标(x,y)。

其中:

A=2×x1-x4y1-y4x2-x4y2-y4

B*(x12-x42)+(y12-y42)(d12-d42)(x22-x42)+(y22-y42)-(d22-d42)

通过以上过程,实现基于距离聚类遴选锚节点的改进最小二乘定位算法。

用聚类算法对待测节点周围感知距离内的锚节点进行分析,将距离值接近的锚节点划 分为一类,选取距离待测节点较近的一类作为定位参考。如图5所示,将传统的最小二乘 定位算法与遴选锚节点的定位结果相比较,可看出有选择性的选取锚节点实现定位有较好 的精确度。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号