[发明专利]基于神经网络和粒子滤波多源融合的室内定位方法有效

专利信息
申请号: 201910657419.7 申请日: 2019-07-19
公开(公告)号: CN110401978B 公开(公告)日: 2020-10-09
发明(设计)人: 鲍亚川;杨再秀;李敏;向才炳;刘嘉钰;程可欣;卢小峰 申请(专利权)人: 中国电子科技集团公司第五十四研究所
主分类号: H04W64/00 分类号: H04W64/00;H04B17/318;G06N3/08;G06N3/04;G01C21/20;G01C21/16
代理公司: 陕西电子工业专利中心 61205 代理人: 田文英
地址: 050081 河*** 国省代码: 河北;13
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 神经网络 粒子 滤波 融合 室内 定位 方法
【权利要求书】:

1.一种基于神经网络和粒子滤波多源融合的室内定位方法,其特征在于,构建并训练深度置信网络DBN,构建并训练循环神经网络RNN,分别利用训练好的深度置信网络DBN和循环神经网络RNN对一台室内通信移动设备进行初定位,得到两个预测位置,该方法的具体步骤包括如下:

(1)生成样本集:

(1a)在待定位室内通信移动设备所处的室内区域中布设至少5个ZigBee路由接入点AP,将待定位室内通信移动设备所处的室内区域空间均分成至少300个方形网格组成样本采集点,将每个样本采集点的位置和其采集的每个AP的信号强度指示RSSI组成样本集A;

(1b)手持室内通信移动设备,在待定位室内通信移动设备所处的室内区域中采集每次的行走位置和连续两次行走位置之间的运动偏转角,将每次行走位置x和下次行走位置y以及两次位置间的运动偏转角θ以(x,θ,y)的形式组成样本集B;

(2)构建深度置信网络DBN:

搭建一个6层的深度置信网络DBN,其整体结构依次为,输入层→第一隐藏层→第二隐藏层→第三隐藏层→第四隐藏层→BP层,每层的神经元数量分别为95,20,15,10,2,2;输入层为第1个受限玻尔兹曼机RBM的可见层,第一隐藏层为第1个受限玻尔兹曼机RBM的隐藏层;第一隐藏层和第二隐藏层分别为第2个受限玻尔兹曼机RBM的可见层和隐藏层;第二隐藏层和第三隐藏层分别为第3个受限玻尔兹曼机RBM的可见层和隐藏层,第三隐藏层和第三四隐藏层分别为第4个受限玻尔兹曼机RBM的可见层和隐藏层;反向传播BP层作为输出层;

(3)训练深度置信网络DBN:

(3a)将样本集A输入到深度置信网络DBN中,将样本集A中的信号强度指示RSSI作为受限玻尔兹曼机RBM可见层v的初始值,利用对比散度法CD-1,对深度置信网络DBN中的受限玻尔兹曼机RBM逐个进行正向训练,得到深度置信神经网络DBN的权值和偏置值;

所述的对比散度法CD-1的步骤如下:

第一步,按照下式,计算深度置信网络DBN中每个受限玻尔兹曼机RBM的能量:

其中,Eγ表示第γ个受限玻尔兹曼机RBM的能量,γ=1,2,3,4,(v,h|θ)表示满足参数θ条件时受限玻尔兹曼机RBM中的可见层状态值矩阵v和隐藏层状态值矩阵h的配置,v=[vi]1×m,[]1×m表示1行m列的矩阵,m的取值与i相等,h=[hj]1×n,[]1×n表示1行n列的矩阵,n的取值与j相等;θ={wji,ai,bj},{}表示集合,wji表示初始值为1的隐藏层第j个神经元和可见层第i个神经元的连接权值,ai表示初始值为0的可见层第i个神经元的偏置值,bj表示初始值为0隐藏层第j个神经元的偏置值,I表示可见层的节点总数,∑表示求和操作,vi表示初始值为样本集A中的信号强度指示RSSI值的可见层第i个神经元的状态值,J表示隐藏层的节点总数,hj表示隐藏层第j个神经元的状态值;

第二步,按照下式,计算每个受限玻尔兹曼机RBM的可见层和隐藏层状态值矩阵的联合概率分布:

其中,pγ(v,h|θ)表示第γ个受限玻尔兹曼机RBM的可见层和隐藏层状态值矩阵的联合概率分布;

第三步,按照下式,计算每个受限玻尔兹曼机RBM隐藏层的每个神经元被激活的概率:

其中,pγj(hγj=1|v)表示第γ个受限玻尔兹曼机RBM隐藏层的第j个神经元被激活的概率,hγj=1表示第γ个受限玻尔兹曼机RBM隐藏层中第j个神经元处于被激活的状态;

第四步,按照下式,计算每个受限玻尔兹曼机RBM可见层的每个神经元被激活的概率:

其中,pγi(vγi=1|h)表示第γ个受限玻尔兹曼机RBM可见层的第i个神经元被激活的概率,vγi=1表示可见层中第i个神经元处于被激活的状态;

第五步,从第γ个受限玻尔兹曼机RBM可见层的第i个神经元被激活的概率p(vγi=1|h)中抽取其中,表示抽取第γ个受限玻尔兹曼机RBM可见层第i个神经元的状态值;

第六步,按照下式,更新每个受限玻尔兹曼机RBM隐藏层每个神经元被激活的概率:

其中,表示第γ个受限玻尔兹曼机RBM更新后的隐藏层第j个神经元被激活的概率,表示第γ个受限玻尔兹曼机RBM更新后的隐藏层第j个神经元处于被激活的状态;

第七步,按照下式,计算深度置信网络DBN中每个受限玻尔兹曼机RBM更新后的参数值,

其中,Wγz表示第γ个受限玻尔兹曼机RBM隐藏层每个神经元和可见层每个神经元更新后的连接权值矩阵,Wγ表示第γ个受限玻尔兹曼机RBM隐藏层每个神经元和可见层每个神经元初始的连接权值矩阵,τ表示初始值为0.05的学习速率,Pγ(hγj=1|vγ)表示第γ个受限玻尔兹曼机RBM隐藏层的所有神经元被激活的概率值矩阵,vγ表示第γ个受限玻尔兹曼机RBM可见层的所有神经元初始状态值矩阵,T表示转置操作,表示第γ个受限玻尔兹曼机RBM更新后的隐藏层所有神经元被激活的概率值矩阵,表示第γ个受限玻尔兹曼机RBM可见层所有神经元更新后的状态值矩阵,aγz表示第γ个受限玻尔兹曼机RBM可见层所有神经元更新后的偏置值矩阵,aγ表示第γ个受限玻尔兹曼机RBM可见层所有神经元的初始偏置值矩阵,bγz表示第γ个受限玻尔兹曼机RBM隐藏层所有神经元更新后的偏置值矩阵,bγ表示第γ个受限玻尔兹曼机RBM隐藏层所有神经元的初始偏置值矩阵;

(3b)将深度置信网络DBN正向训练后输出的位置坐标与样本集A中样本采集点的位置坐标的差值作为误差信息,从反向传播BP层向下传播到深度置信网络DBN的每层网络中,采用小批量梯度下降法MBGD,对深度置信网络DBN进行反向训练,更新深度置信网络DBN的权值和偏置值,直到损失函数的值达到最小时,停止训练,得到训练好的深度置信网络DBN;

所述的小批量梯度下降法MBGD的步骤如下:

第一步,按照下式,计算深度置信网络DBN的每层中每个神经元的灵敏度:

其中,δkl表示深度置信网络DBN的第k层第l个神经元的灵敏度,k=1,2,...,6,l∈{95,20,15,10,2,2},∈表示属于符号,ukl表示深度置信网络DBN的第k层第l个神经元经过正向训练后的输出,表示深度置信网络DBN的第k层第l个神经元当损失函数达到最小值时的输出;

第二步,按照下式,计算深度置信网络DBN的每个隐藏层中每个神经元的灵敏度:

δhj=yhj(1-yhj)∑whjiδ(h+1)j

其中,δhj表示深度置信网络DBN的第h个隐藏层的第j个神经元的灵敏度,h=1,2,3,yhj表示表示深度置信网络DBN的第h个隐藏层的第j个神经元经过正向训练后的输出,whji表示深度置信网络DBN的第h个隐藏层第j个节点和下一个隐藏层第i个神经元之间经过正向训练后的连接权值,δ(h+1)j表示深度置信网络DBN的第h+1个隐藏层第j个神经元的灵敏度;

第三步,按照下式,更新深度置信网络DBN的网络参数:

其中,表示深度置信网络DBN的第k层第j个神经元和下一个隐藏层第i个神经元之间更新后的连接权值,wkji表示深度置信网络DBN的第k层第j个神经元和下一个隐藏层第i个神经元之间更新前的连接权值,ε表示初始值为0.1的学习速率,ykj表示深度置信网络DBN的第k层第j个神经元经过正向训练后的输出,δ(k+1)j表示深度置信网络DBN的第k+1层第j个神经元的灵敏度,表示深度置信网络DBN的第k层第j个神经元更新后的偏置值,bkj表示深度置信网络DBN的第k层第j个神经元更新前的偏置值;

(4)构建循环神经网络RNN:

构建一个3层的循环神经网络RNN,其整体结构依次为,输入层→隐藏层→输出层,每层的神经元数量分别为:3,15,2,层内的神经元之间是相互独立的,层间的神经元之间是全连接的,输入层和隐藏层之间的激活函数为tanh函数,隐藏层和输出层的激活函数为softmax函数;

(5)训练循环神经网络RNN:

(5a)将样本集B输入到循环神经网络RNN中,将样本集B中第一个位置信息作为循环神经网络RNN隐藏层的初始状态值,将样本集B中第一个偏转角信息作为循环神经网络RNN输入层的初始状态值,对循环神经网络RNN进行正向训练;

所述对循环神经网络RNN进行正向训练是按照如下步骤进行的:

第一步,利用下式,计算循环神经网络RNN隐藏层中每个神经元的状态值:

e=tanh(rλκxt+se(t-1)κκ+cκ)

其中,e表示循环神经网络RNN的t时刻隐藏层第κ个神经元的状态值,tanh表示输入层和隐藏层之间的激活函数,κ=1,2,...,15,rλκ表示循环神经网络RNN输入层第λ个神经元和隐藏层第κ个神经元的连接权值,xt表示循环神经网络RNN在t时刻的输入值,s表示循环神经网络RNN第κ个神经元t-1时刻的状态值和t时刻的状态值之间的乘积因子,e(t-1)κ表示循环神经网络RNN的t-1时刻隐藏层第κ个神经元的状态值,cκ表示循环神经网络RNN隐藏层第κ个神经元的偏置值,取值为1;

第二步,利用下式,计算循环神经网络RNN的输出值:

ft=softmax(e+dβ)

其中,ft表示循环神经网络RNN的t时刻的输出值,softmax表示隐藏层和输出层之间的激活函数,dβ表示循环神经网络RNN输出层第λ个神经元的偏置值,取值为1,β=1,2;

(5b)反向训练循环神经网络RNN,利用随时间反向传播算法BPTT,更新循环神经网络RNN的每个参数值,直到成立,停止更新,得到训练好的循环神经网络RNN,其中,∑表示求和操作,表示求偏导操作,表示第ρ个参数在t时刻更新前的值;

更新循环神经网络RNN的每个参数是由下式实现的:

其中,表示循环神经网络RNN中第ρ个参数更新后的参数值,ρ=1,2,3,4,分别表示循环循环神经网络RNN输入层第λ个神经元和隐藏层第κ个神经元的连接权、循环神经网络RNN第κ个神经元t-1时刻的状态值和t时刻的状态值之间的乘积因子、循环神经网络RNN隐藏层第κ个神经元取值为1的偏置值、循环神经网络RNN输出层第λ个神经元取值为1的偏置值;

(6)进行一台室内通信移动设备的在线初定位:

(6a)将一台室内通信移动设备实时测量的信号强度指示RSSI信息,输入到训练好的深度置信网络DBN中,输出一台室内通信移动设备的第一个预测位置;

(6b)分别将一台室内通信移动设备的初始位置和由室内通信移动设备中的惯性测量单元IMU采集的运动偏转角,输入到训练好的循环神经网络RNN中,输出一台室内通信移动设备的第二个预测位置;

(7)获取一台室内通信移动设备的最终定位结果:

(7a)将一台室内通信移动设备的第一个预测位置和第二个预测位置,分别输入到粒子滤波器中,在第二个预测位置处,随机生成服从正太分布的300个粒子;

(7b)按照下式,计算每个粒子的权值:

其中,表示第ζ个粒子的权值,ζ=1,2,...,300,表示平方根操作,x1和y1分别表示深度置信网络输出的一台室内通信移动设备第一个预测位置坐标的横坐标和纵坐标,xζ和yζ分别表示第ζ个粒子位置坐标中的横坐标和纵坐标;

(7c)按照下式,计算一台室内通信移动设备的室内位置:

其中,和分别表示一台室内通信移动设备室内位置的横坐标和纵坐标。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第五十四研究所,未经中国电子科技集团公司第五十四研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201910657419.7/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top