首页> 中国专利> 基于压缩感知和BP神经网络的无线传感器网络定位方法

基于压缩感知和BP神经网络的无线传感器网络定位方法

摘要

本发明公开了基于压缩感知和BP神经网络的无线传感器网络定位方法,该方法将压缩感知和BP神经网络应用于基于网格的多目标定位,使用接收信号强度(RSSI)作为定位参数。可以分为以下步骤,步骤一:利用压缩感知对无线传感器网络节点进行定位,判断节点是否位于网格中心;步骤二:对于不在网格中心的未知节点,依次采用BP神经网络和极大似然估计法计算出节点的坐标。用BP神经网络修正RSSI测量值误差,最后用极大似然估计法计算得出未知节点的真实坐标。本发明可以同时进行多目标定位,并且克服了传统的压缩感知方法只能在网格中心进行定位的缺点,利用BP神经网络克服了RSSI定位带来的精度差的缺点,在减小功耗的同时提高了定位精度。

著录项

  • 公开/公告号CN105676178A

    专利类型发明专利

  • 公开/公告日2016-06-15

    原文格式PDF

  • 申请/专利权人 南京邮电大学;

    申请/专利号CN201610019570.4

  • 发明设计人 喻月;张玲华;

    申请日2016-01-13

  • 分类号G01S5/06;H04W64/00;G06N3/02;

  • 代理机构南京知识律师事务所;

  • 代理人汪旭东

  • 地址 210003 江苏省南京市鼓楼区新模范马路66号

  • 入库时间 2023-12-18 15:32:47

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-05-24

    授权

    授权

  • 2016-07-13

    实质审查的生效 IPC(主分类):G01S5/06 申请日:20160113

    实质审查的生效

  • 2016-06-15

    公开

    公开

说明书

技术领域

本发明涉及一种基于压缩感知和BP神经网络的无线传感器网络定位方法,属于移 动通讯技术领域。

背景技术

节点的定位是无线传感器网络中最重要的技术之一,因为它在许多应用领域起着 至关重要的作用,例如目标追踪、军事侦察、地理环境监测、交通路况监测、医疗卫生等领 域。如果用户不能预先知道节点的准确位置信息,将无法完成相关的应用。上述的位置信息 需要通过无线传感器网络自身的节点位置信息获取。无线传感器节点定位的研究包括的内 容有很多方面,比如锚节点密度、网络的鲁棒性和容错性、定位精度受环境的影响、网络规 模、节点功耗等。如何综合考虑平衡各项影响定位的因素是一个很重要的问题。定位的准确 性在很大程度上影响着应用。

将智能优化算法应用到无线传感器网络的定位中也是近年来国内外研究的热点。 ParijaS等利用多层神经网络(MNN)来预测蜂窝移动网中移动热点的位置,选取了单层结 构的非线性的函数链神经网络代替了传统的多层感知器神经网络来提高定位效率和精度。 YanF等将学习矢量量化神经网络(LVQ)和C-型行波定位方法相结合,提高了定位精度。 TiejunW等利用神经网络来选择影响定位数据选择的5种因素的权重,利用合理的权重提 高定位精度。

同时,由于测量技术的进步,国内外已经有大量的研究将压缩感知应用到无线传 感器网络定位中。压缩感知的优势在于只要知道少量的测量数据,就可以利用重构算法恢 复出原始的信号,可以大大减少无线传感器节点的能量消耗。CevherV等把目标定位的问 题转换成压缩感知,但是只能在网格中央进行定位,并且每个节点都需要定位字典。何风行 等用残差最有匹配算法优化了压缩感知的定位方法,但是定位误差在大的噪声情况下,仍 然比较大。Malioutov等将利用稀疏变换进行节点的定位研究,缺点是算法过于复杂。而本 发明能够很好地解决上面的问题。

发明内容

本发明的目的在于解决了上述现有技术的不足,提供一种基于压缩感知与BP神经 网络的无线传感器网络定位方法,该方法对已有的定位算法进行改进,利用压缩感知和BP 神经网络相结合的定位方法,利用压缩感知技术减小节点的功耗,从而提升节点的定位性 能,满足无线传感器网络中高效数据传输和降低传输数据量的要求,从而能提升无线传感 器网络的性能,该可以同时进行多目标定位,并且克服了传统的压缩感知方法只能在网格 中心进行定位的缺点,利用BP神经网络克服了RSSI定位带来的精度差的缺点,在减小功耗 的同时提高了定位精度,并且解决了传统的压缩感知方法只能在网格中心进行定位的不 足。

本发明解决其技术问题所采取的技术方案是:一种基于压缩感知和BP神经网络的 无线传感器网络定位方法,所述方法包括如下步骤:

步骤1:每个目标以周期T向锚节点发送信号,各个目标之间相互独立,相互之间没 有同步的要求,然后各个锚节点将一个周期内收到的RSSI测量值进行累加,并且将结果送 到融合中心,融合中心执行压缩感知算法,计算未知节点位于哪个网格之中,并且是否位于 网格的中心;

步骤2:对于不在网格中心的节点,分为以下具体实现过程,包括:

步骤2-1:训练BP神经网络,提前将部分位置已知的锚节点作为可靠节点,将剩余 锚节点接收到可靠节点的RSSI值向量作为输入,可靠节点到剩余锚节点的真实距离值向量 作为输出,训练神经网络;

步骤2-2:将各个锚节点接收到的未知节点的RSSI值向量输入到训练好的BP神经 网络,对应得到的输出向量就是各个锚节点到未知节点的修正过误差的距离向量;

步骤2-3:将上述步骤2-2中得到的距离向量代入到极大似然估计法中,得出不在 网格中心的未知节点的坐标。

进一步的,本发明是将接收到的RSSI值应用到压缩感知算法进行定位,包括:

步骤1:每个目标以周期T向锚节点发送信号,各个目标之间相互独立,相互之间没 有同步的要求,然后各个锚节点将一个周期内收到的信号进行累加,并且将结果送到融合 中心;

步骤2:融合中心执行压缩感知算法,计算未知节点位于哪个网格之中,并且是否 位于网格的中心,包括:

利用测量矩阵重新描述信号,再重新采集少数线性观测数据,若信号X∈RN,并且X 是K稀疏的,测量矩阵φ∈RM*N(M<<N),则X在测量矩阵φ的变化下得到的观测矩阵Y∈RM, 如式1所示:

YM*1=φM*N*XN*1

因为信号X是K稀疏的,如果测量矩阵φ∈RM*N(M<<N)满足约束等距离性条件 (RIP),信号X可以得到精确重构,如式2所示:

Xeat=argmin||X||s.t.Y=φX

式中,Xeat表示重构后的信号矩阵。

RIP条件是信号X可以重构的充分而非必要条件;当满足式3时,由式2以压倒性的 概率重构X;

M≥C*K*μ2(φ,I)*lgN

式中,M是对X进行随机测量的次数,C是一个较小的正常数,信号X是K稀疏的,并且 X∈RN,μ(φ,I)是测量矩阵φ和单位矩阵I的互相关系数,如式4所示:

式中,为测量矩阵φ位于第m行,第n列的元素;只要选择合适的测量次数M,就 以压倒性的概率重构X;

将上述的方法应用无线传感器网络的初始定位中,对于式1中的观测矩阵YM*1,表 示的是M个锚节点的测量结果,YM*1=[y1,y2...yM]T,其中yn表示第n个锚节点接收到的所有 未知节点发送至该锚节点RSSI值的和,测量矩阵φM*N构成元素为第m个锚节点接收到 第n个未知节点发送的RSSI值,原始信号矩阵XN*1=[x1,x2...xn]T,设则系统的 压缩采样过程由式5表示:

y1y2...yM=P1,1P1,2...P1,NP2,1P2,2...P2,N............PM,1PM,2...PM,Nx1x2...xn

通过式2恢复出来的信号中,理想的xn重构结果只有0和1(即设定一个网格中只有 一个目标),实际的结果0≤xn≤1,其中许多xn值接近于0,为了降低算法的复杂度,设定 Threhold_low为网格中存在目标的阈值;由于噪声等的存在,当未知节点位于网格中心时 并不能确保xn=1,而是也存在一个阈值Threhold_high作为未知节点位于网格中心的阈 值,该阈值会随着噪声的增加而减小,上述两个阈值的选择可以通过多次蒙特卡洛实验来 获取;

当0≤xn≤Threhold_low:网格n内不存在未知节点;

当Threhold_low<xn<Threhold_high:网格n内存在未知节点,但该未知节点不 在网格中心;

当Threhold_high≤xn≤1:网格n中心存在未知节点。

进一步的,本发明步骤2中对于不在网格中心的节点,确定所在网格编号后,首先 训练BP神经网络,提前将部分位置已知的锚节点作为可靠节点,将剩余锚节点接收到可靠 节点的RSSI值向量作为输入,可靠节点到剩余锚节点的真实距离值向量D作为输出,训练神 经网络;设可靠节点数为i,剩余锚节点数为j,每个输入向量就有j组数据,每组数据有i个 数据,则输入向量为X=(x1,x2,...xj)T=(RSSI1,RSSI2,...RSSIj)T,其中,RSSIj表示锚节点 j接收到的可靠节点的RSSI值,输入向量的维数是j,每一组RSSI值有i个RSSI数据;对应的 输出向量也有j组数据,每组数据有i个数据,输出向量为其中,Dj表示锚节点j到可靠节点的真是距离,输出向量的维数是j,每一组D值有i个D数据; 利用输入输出对BP神经网络进行训练。

进一步的,本发明对于不在网格中心的节点,在训练好BP神经网络后,进入到BP神 经网络学习阶段;将不在网格中心的未知节点到锚节点的RSSI值作为输入值,得到的对应 的输出向量就是不在网格中心的未知节点到锚节点的距离。

进一步的,本发明对于不在网格中心的节点,在得到未知节点到锚节点的距离后, 将距离代入到极大似然估计法后得出未知节点的坐标;

已知有n个锚节点,他们的坐标为(x1,y1),(x2,y2)…(xn,yn),未知节点P的坐标为 (x,y)未知,未知节点P到这n个锚节点的距离分别为d1,d2,…dn已知,则式6成立:

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

分别用前面n-1减去最后一个等式可得式7:

x12-xn2-2(x1-xn)x+y12-yn2-2(y1-yn)y=d12-dn2...xn-12-xn2-2(xn-1-xn)x+yn-12-yn2-2(yn-1-yn)y=dn-12-dn2

A=2(x1-xn)2(y1-yn)......2(xn-1-xn)2(yn-1-yn),X=xy,b=x12-xn2+y12-yn2+dn2-d12...xn-12-xn2+yn-12-yn2+dn2-dn-12,则式7可以表示为式8,即:

AX=b

由最小方差估计法求得未知节点P的坐标为式中,A,X,b表示 矩阵。

有益效果:

1、本发明可以同时进行多目标定位,并且克服了传统的压缩感知方法只能在网格 中心进行定位的缺点。

2、利用BP神经网络克服了RSSI定位带来的精度差的缺点。

3、本发明在减小功耗的同时也提高了定位的精度。

附图说明

图1为本发明基于压缩感知和BP神经网络的无线传感器网络定位方法的示意图。

图2为本发明基于压缩感知对未知节点进行初步定位的示意图

图3为本发明基于BP神经网络对不在网格中心的未知节点进行精定位的示意图。

具体实施方式

下面结合说明书附图对本发明创造作进一步地详细说明。

如图1所示,本发明是一种基于压缩感知与BP神经网络的无线传感器网络定位方 法,所述方法包括如下步骤:

步骤1:每个目标以周期T向锚节点发送信号,各个目标之间相互独立,相互之间没 有同步的要求,然后各个锚节点将一个周期内收到的RSSI测量值进行累加,并且将结果送 到融合中心,融合中心执行压缩感知算法,计算未知节点位于哪个网格之中,并且是否位于 网格的中心;

步骤2:对于不在网格中心的节点,分为以下具体实现过程,包括:

步骤2-1:训练BP神经网络,提前将部分位置已知的锚节点作为可靠节点,将剩余 锚节点接收到可靠节点的RSSI值向量作为输入,可靠节点到剩余锚节点的真实距离值向量 作为输出,训练神经网络;

步骤2-2:将各个锚节点接收到的未知节点的RSSI值向量输入到训练好的BP神经 网络,对应得到的输出向量就是各个锚节点到未知节点的修正过误差的距离向量;

步骤2-3:将上述步骤2-2中得到的距离向量代入到极大似然估计法中,得出不在 网格中心的未知节点的坐标。

如图2所示,本发明是基于压缩感知对未知节点进行初步定位,是对于图1中步骤1 所述的具体实现方式,包括:

步骤1:每个目标以周期T向锚节点发送信号,各个目标之间相互独立,相互之间没 有同步的要求,然后各个锚节点将一个周期内收到的信号进行累加,并且将结果送到融合 中心;

步骤2:融合中心执行压缩感知算法,计算未知节点位于哪个网格之中,并且是否 位于网格的中心,包括:

利用测量矩阵重新描述信号,再重新采集少数线性观测数据,若信号X∈RN,并且X 是K稀疏的,测量矩阵φ∈RM*N(M<<N),则X在测量矩阵φ的变化下得到的观测矩阵Y∈RM, 如式1所示:

YM*1=φM*N*XN*1式1

因为信号X是K稀疏的,如果测量矩阵φ∈RM*N(M<<N)满足约束等距离性条件 (RIP),信号X可以得到精确重构,如式2所示:

Xeat=argmin||X||s.t.Y=φX式2

式中,Xeat表示重构后的信号矩阵。

RIP条件是信号X可以重构的充分而非必要条件;当满足式3时,由式2以压倒性的 概率重构X;

M≥C*K*μ2(φ,I)*lgN式3

式中,M是对X进行随机测量的次数,C是一个较小的正常数,信号X是K稀疏的,并且 X∈RN,μ(φ,I)是测量矩阵φ和单位矩阵I的互相关系数,如式4所示:

式4

式中,为测量矩阵φ位于第m行,第n列的元素;只要选择合适的测量次数M,就 以压倒性的概率重构X;

将上述方法应用无线传感器网络的初始定位中,对于式1中的观测矩阵YM*1,表示 的是M个锚节点的测量结果,YM*1=[y1,y2...yM]T,其中yn表示第n个锚节点接收到的所有未 知节点发送至该锚节点RSSI值的和,测量矩阵φM*N构成元素为第m个锚节点接收到第n 个未知节点发送的RSSI值,原始信号矩阵XN*1=[x1,x2...xn]T,设则系统的压缩 采样过程由式5表示:

y1y2...yM=P1,1P1,2...P1,NP2,1P2,2...P2,N............PM,1PM,2...PM,Nx1x2...xn式5

通过式2恢复出来的信号中,理想的xn重构结果只有0和1(即设定一个网格中只有 一个目标),实际的结果0≤xn≤1,其中许,多xn值接近于0,为了降低算法的复杂度,设定 Threhold_low为网格中存在目标的阈值;由于噪声等的存在,当未知节点位于网格中心时 并不能确保xn=1,而是也存在一个阈值Threhold_high作为未知节点位于网格中心的阈 值,该阈值会随着噪声的增加而减小,上述两个阈值的选择可以通过多次蒙特卡洛实验来 获取;

当0≤xn≤Threhold_low:网格n内不存在未知节点;

当Threhold_low<xn<Threhold_high:网格n内存在未知节点,但该未知节点不 在网格中心;

当Threhold_high≤xn≤1:网格n中心存在未知节点。

如图3所示,本发明基于BP神经网络对不在网格中心的未知节点进行精定位,是对 于图1中的步骤2的具体实现方式,包括:

步骤1:提前将部分位置已知的锚节点作为可靠节点,将剩余锚节点接收到可靠节 点的RSSI值向量作为输入,可靠节点到剩余锚节点的真实距离值向量D作为输出,训练神经 网络;设可靠节点数为i,剩余锚节点数为j,每个输入向量就有j组数据,每组数据有i个数 据,则输入向量为X=(x1,x2,...xj)T=(RSSI1,RSSI2,...RSSIj)T,其中,RSSIj表示锚节点j 接收到的可靠节点的RSSI值,输入向量的维数是j,每一组RSSI值有i个RSSI数据;对应的输 出向量也有j组数据,每组数据有i个数据,输出向量为其 中,Dj表示锚节点j到可靠节点的真是距离,输出向量的维数是j,每一组D值有i个D数据;利 用输入输出对BP神经网络进行训练。

步骤2:在训练好BP神经网络后,进入到BP神经网络学习阶段;将不在网格中心的 未知节点到锚节点的RSSI值作为输入值,得到的对应的输出向量就是不在网格中心的未知 节点到锚节点的距离。

步骤3:将步骤2的输出向量代入到极大似然估计法得出不在网格中心的未知节点 的坐标。已知有n个锚节点,他们的坐标为(x1,y1),(x2,y2)…(xn,yn),未知节点P的坐标为 (x,y)未知,未知节点P到这n个锚节点的距离分别为d1,d2,…dn已知,则式6成立:

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

分别用前面n-1减去最后一个等式可得式7:

x12-xn2-2(x1-xn)x+y12-yn2-2(y1-yn)y=d12-dn2...xn-12-xn2-2(xn-1-xn)x+yn-12-yn2-2(yn-1-yn)y=dn-12-dn2式7

A=2(x1-xn)2(y1-yn)......2(xn-1-xn)2(yn-1-yn),X=xy,b=x12-xn2+y12-yn2+dn2-d12...xn-12-xn2+yn-12-yn2+dn2-dn-12,则式7可以表示为式8,即:

AX=b式8

由最小方差估计法求得未知节点P的坐标为式中,A,X,b表示 矩阵。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号