一种基于指纹自适应环境变化的被动式室内定位方法与流程

文档序号:11947074阅读:429来源:国知局
本发明涉及室内定位
技术领域
,特别涉及一种低成本的基于指纹自适应环境变化的室内被动式定位方法。
背景技术
:近些年以来,室内定位在许多新兴的应用中起到了至关重要的作用,然而现存的大多数定位技术都需要目标自身携带可通讯设备,这造成了许多场景不适用。随着wifi装置的普遍性,基于RSS的被动式室内定位技术以其不需要用户佩戴任何无线设备和不要求用户主动参与定位过程的特点,受到了学术界和产业界的巨大关注。现有的基于RSS的室内被动式定位方法分为以下2类:第一类:基于模型的被动式定位。该方法通过学习目标的位置和RSS的测量值之间的数学模型关系来进行定位。然而要想在多路径的室内环境中得到一个精准的模型来进行高精度的定位结果是很困难的,通常要求目标在无线链路的LOS路径上,或者需要成本非常昂贵的硬件设备以及特殊的RF信号,但是前者会导致过多的能量消耗,后者会出现与日常设备无法兼容的现象。因此该类方法在现实生活中不适用。第二类:基于指纹的被动式定位。该方法首先通过收集目标在不同的位置指纹来建立一个指纹数据库,然后定位一个目标位置时,将现测的指纹和原来所得到指纹数据库进行对比分析,进而确定目标位置。该类方法能得到令人满意的高精度,但是每当环境受到巨大变化或者细微变化时,它需要人工周期性地更新该指纹数据库来获得精准的定位,而这一过程会消耗大量的人力和物力。因此该类方法所需要的成本过高,可行性不好。综上所述,现有的被动式技术在定位精度、适普性、成本等方面存在不足。因此需要拥有更高可行性的被动式定位新技术。技术实现要素:为了解决上述现有技术存在的问题,本发明的目的在于,提供一种基于指纹自适应环境变化的被动式室内定位方法,该方法既能提供令人满意的高精度又能大大减少更新指纹库所需的时间和成本。为了实现上述任务,本发明采取如下的技术解决方案:一种基于指纹自适应环境变化的被动式室内定位方法,其特征在于,该方法包括以下步骤:步骤一,在样本区域部署传感器节点;步骤二,通过部署传感器节点采集整个样本区域的初始RSS指纹矩阵;步骤三,通过整个区域的RSS矩阵获取初始参考矩阵,然后计算指纹矩阵和参考矩阵之间的关系矩阵;步骤四,更新指纹矩阵的时候,测量样本区域中参考位置的新RSS参考矩阵和未受到目标干扰的RSS值形成第一个约束条件;步骤五,利用关系矩阵和新RSS参考矩阵作为第二个约束条件;步骤六,利用受干扰最大矩阵的2个性质作为第三个约束条件;步骤七,利用LoLi-IR算法来更新指纹矩阵;步骤八,利用非线性最优化将实时测量的RSS向量和更新后的指纹矩阵进行匹配,高精度恢复目标的位置。可选的,在样本区域部署传感器节点,包括:设样本区域的面积大小l×a,在样本区域部署的节点形成的无线链路长度为l,在样本区域的两侧边上部署传感器节点,形成一对一通信的链路个数为M;可选的,所述的通过部署传感器节点采集整个样本区域的初始RSS矩阵,包括:首先将样本区域划分为大小相等的N个网格让目标在每个网格位置去站一遍,然后测量M条链路相应的RSS值,最后将所测得每个位置的M个RSS值形成初始矩阵X0,该矩阵的尺寸为M×N。可选的,所述的通过整个区域的RSS矩阵求得初始参考矩阵,然后利用这两个矩阵得到对应的关系矩阵,包括:通过求矩阵X0的秩,也就是把这个矩阵化为阶梯型矩阵,然后看看秩为多少,若秩为m,在矩阵的列中寻找m个线性无关的列向量。然后将该矩阵的最大线性无关向量按列重拍在一起,就组成了参考矩阵XR,然后利用下列等式求得关系矩阵Z:minZ,E||Z||*+λ||E||2,1,s.t.,X0=XRZ+E.上述优化公式进一步地可以通过求解以下优化问题,即minZ,E,J||J||*+λ||E||2,1,s.t.,XR=X0Z+E,Z=J.可选的,所述的更新指纹矩阵的时候,测量样本区域中参考位置的新RSS参考矩阵和未受到目标干扰的RSS值形成第一个约束条件,包括:假设待更新指纹矩阵为X的秩为r,利用SVD分解可以证明X为近似低秩矩阵,首先将X分解如下:X=UΣVT=Σi=1min(M,N)σiuiviT,]]>如果则表明X为近似低秩矩阵,然后利用低秩重构指纹矩阵:求得由于未受到干扰的链路的RSS值和参考位置的RSS值已知,于是有索引指纹矩阵并且可以用求解;如果上式不易求解,则利用进行SVD分解,即如果二值矩阵B满足等距特性,则可以用进行等价,而通常XI中存在噪声,所以严格满足上式的L和R不易得到,因此利用拉格朗日乘子法放宽上述约束,有:结果发现重构的不能唯一确定。可选的,所述利用关系矩阵和新RSS参考矩阵作为第二个约束条件,包括:利用之前收集的参考位置上的RSS值即新的RSS参考矩阵和XR来约束上式得:考虑到当环境改变时,某些位置与参考位置之间的RSS关系会发生变化,因此直接利用上式重构指纹矩阵的精度也会受到影响。可选的,所述利用受干扰最大矩阵的2个性质作为第三个约束条件,包括:为了进一步提高重构矩阵的准确度,利用受干扰最大矩阵的两个特性:同一链路相邻位置上的RSS值是连续变化的和相邻链路同一位置上的RSS值是相似的。通过上述2个特性,上式可以扩展为:其中,XD来源于G和H分别是相邻位置RSS值连续约束矩阵和相邻链路RSS值相似约束矩阵。可选的,所述利用LoLi-IR算法来更新RSS矩阵,包括:为了求解上式的最优化问题,设计LoLi-IR算法。首先固定L,寻找一个合适的使得上式获得最小值,具体通过使上述优化问题相对于RT的导数为零,得到新生成的使其与当前最小值v进行比较,如果则更新和否则不变。接着固定R,寻找合适的接下来方法同上,一直重复上述过程直到收敛(默认迭代次数为200次)。最后,指纹矩阵X就被高精度的重构出来了。可选的,所述利用非线性最优化来匹配实时的RSS测量向量和更新后的指纹矩阵获得精度高的目标位置,包括:当目标处在监控区域时,实时的RSS测量向量Y需要和更新后的指纹矩阵X进行匹配,然后利用非线性最优化恢复目标位置向量,最后用OMP算法来求解该非线性最优问题。本发明的基于指纹自适应环境变化的被动式室内定位方法,带来的有益效果是:通过测量区域内少量参考位置处的RSS值来对整个区域所有位置的指纹矩阵进行重构更新,该定位方法避免了大量的人力和物力去不断的更新整个区域的指纹库,减少相应的成本,提高了基于指纹被动式定位方法的可行性。附图说明图1是本发明的基于指纹自适应环境变化的被动式定位方法流程图。图2是本发明的基于指纹自适应环境变化的被动式定位方法部署示意图。图3是不同时间点下指纹更新的重构误差累积分布(CDF)图。图4是不同个数参考位置下指纹更新的重构误差累积分布图。图5是不同大小部署区域下本发明的基于指纹自适应环境变化的被动式定位方法和其他方法更新指纹的时间代价图。图6是利用本发明的基于指纹自适应环境变化的被动式定位方法更新指纹、使用真实指纹,以及不更新指纹时分别进行定位的定位误差累积分布图。图7是不同时间点下图6所示三种情况下平均定位误差对比图。图8是四种不同定位方法定位误差累积分布图。图9是不同时间点下四种不同方法平均定位误差对比图。下面将结合附图和实施例对本发明作进一步地详细描述。具体实施方式为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。本实施例给出一种基于指纹自适应环境变化的被动式室内定位方法,包括:步骤一,在样本区域部署传感器节点;步骤二,通过部署的传感器节点采集整个样本区域的初始RSS指纹矩阵;步骤三,通过整个区域的RSS矩阵获取初始参考矩阵,然后计算指纹矩阵和参考矩阵之间的关系矩阵;步骤四,更新指纹矩阵的时候,测量样本区域中参考位置的新RSS参考矩阵和未受到目标干扰的RSS值形成第一个约束条件;步骤五,利用关系矩阵和新RSS参考矩阵作为第二个约束条件;步骤六,利用受干扰最大矩阵的2个性质作为第三个约束条件;步骤七,利用LoLi-IR算法来更新指纹矩阵;步骤八,利用非线性最优化将实时测量的RSS向量和更新后的指纹矩阵进行匹配,高精度恢复目标的位置。在实施中,在众多基于指纹的定位方法中,本实施例巧妙地只需测量区域中少量参考位置处的RSS值来更新整个区域的指纹库,从而大大减少了更新数据库所带来的人力、物力以及成本。首先收集原始监测区域所有位置处的RSS值构成原始指纹矩阵,求出其对应的参考矩阵,获得两者之间的关系矩阵。当更新指纹矩阵的时候,先获取区域内参考位置的RSS值得到新的参考矩阵,然后利用待更新指纹矩阵中已知RSS值(包括未受干扰的RSS值和参考矩阵的RSS值)作为第一个约束条件,新参考矩阵和关系矩阵作为第二个约束条件,受干扰最大矩阵(从更新后的指纹矩阵得到的)所特有的2个性质作为第三个约束条件,利用LoLi-IR算法来重构并更新指纹矩阵。最后,当对目标进行定位的时候,通过非线性最优化将实时测量的RSS向量与更新后的质问矩阵进行匹配,精确恢复目标的位置。本实施例给出的基于指纹自适应环境变化的被动式定位方法,相对于现有技术中的被动式定位方法,通过测量区域中少量参考位置的RSS值来更新整个区域的指纹数据库,这么做,大大降低了人工更新整个区域的指纹数据库所带来的人力、物力和成本。优选的,所述在样本区域部署传感器节点,包括:在样本区域的两侧分别部署传感器节点,如图2所示。设样本区域的面积大小l×a,并把区域划分为N个正方形网格,M个链路,每条链路有NM个格子,在样本区域部署的节点形成的无线链路长度为l,样本区域的节点数量为2M,形成一对一通信的M条链路(图中TX表示发送节点,RX表示接收节点,则{TXi,RXi},i∈[1,M])。当目标处于链路i的第一菲涅尔区域时(FirstFresnelZone),将会对链路产生较大的干扰,导致链路的RSS值会衰减。可选的,所述通过上述传感器节点采集整个样本区域的初始RSS指纹矩阵,包括:首先让目标在样本区域内的每个网格位置站一遍,每个位置站的时候每条链路会有Q个RSS值,最后取每条链路Q个RSS值出现概率最大的值作为该条链路RSS真实值,所以每个位置可以得到M个链路的M个RSS值,对于N个网格位置而言,就可以得到指纹矩阵。具体地,通过测量整个区域的每个格子的RSS真实值,用xij表示RSS真实值,其中i=1,2,…,M,j=1,2,…,N,收集完后构建指纹矩阵X0,其中X0=(xij)M×N。可选的,所述通过初始的RSS指纹矩阵获取初始参考矩阵,然后计算指纹矩阵和参考矩阵之间的关系矩阵,包括:通过求矩阵X0的秩,也就是把这个矩阵化为阶梯型矩阵,然后看看秩为多少,若秩为m,在矩阵的列中寻找m个线性无关的列向量。然后将该矩阵的最大线性无关向量按列重排在一起,就组成了参考矩阵XR,然后利用下列等式求得关系矩阵Z:minZ,E||Z||*+λ′||E||2,1,s.t.,X0=XRZ+E.其中||·||*表示一个矩阵的范式,λ′为调节系数。进一步的,上式可以用下式进行等价minZ,E,J||J||*+λ′||E||2,1,s.t.,XR=X0Z+E,Z=J;该问题可以通过增广拉格朗日乘子法来解决,当参考位置的个数和指纹矩阵的秩相等时,E=0,从而关系矩阵Z就得到了,所得到的关系矩阵Z将用于更新指纹矩阵的时候作为约束条件,从而提高指纹矩阵更新的精度。可选的,更新指纹矩阵的时候,测量样本区域中参考位置的新RSS参考矩阵和未受到目标干扰的RSS值形成第一个约束条件,包括:假设待更新指纹矩阵为X的秩为r,利用SVD分解可以证明X为近似低秩矩阵,首先将X分解如下:X=UΣVT=Σi=1min(M,N)σiuiviT,]]>其中T表示对矩阵进行转置,U是大小为M×M矩阵,Σ是大小为M×N对角矩阵,V是大小为N×N矩阵,ui和vi分别表示U和V的第i列。如果则表明X为近似低秩矩阵,由于X为近似低秩矩阵,所以它可以最大线性无关的秩r粗略地重构出来,于是利用求得当目标处于样本区域时,目标在一个位置只会干扰有限条链路,即只有几条链路的RSS值会发生明显的衰减,而大部分链路的RSS值保持不变,这些未受到干扰链路的RSS值是在系统运行的过程中一直能够直接测量得到的,所以这部分RSS值是已知的。因此在更新指纹矩阵的时候,待更新指纹矩阵中参考位置的RSS值和未受干扰RSS值是已知的,而此时的索引指纹矩阵可以用待更新的完整矩阵和系数矩阵的Hadamard积来进行表示,于是有索引指纹矩阵其中XI=(x(i,j))M×N,(B)M×N为二值矩阵,它是由0和1两个元素组成的大小为M×N的矩阵,其中0表示待更新指纹矩阵当前元素的RSS值是待更新的,1表示RSS值是已知的,符号表示Hadamard积,即两个矩阵相对应的位置进行乘积。接着,利用作为第一个约束条件使包括未受干扰的RSS值和参考位置的RSS值;并且可以用求解;但是上式不易求解,为了解决这个问题进行SVD分解,即如果二值矩阵B满足等距特性,则上述问题可以用进行等价,而通常XI中存在噪声,所以严格满足上式的L和R不易得到。因此利用拉格朗日乘子法放宽上述约束,有:结果发现重构的不能唯一确定。可选的,利用关系矩阵和新RSS参考矩阵作为第二个约束条件,包括:于是利用参考矩阵XR和关系矩阵作为第二个约束条件对上式进行进一步约束,得到考虑到当环境改变时,某些位置与参考位置之间的关系会发生变化,直接利用上式对指纹矩阵进行重构的精度会受到影响。可选的,利用受干扰最大矩阵的2个性质作为第三个约束条件,包括:受干扰最大矩阵是由更新后的指纹矩阵中受干扰最大的RSS值组成的,由于一共有M条链路,每条链路上有个网格,所以受干扰最大矩阵是一个M行列矩阵,其中每一行代表每条链路LOS路径上个网格位置的RSS值。为了进一步提高重构矩阵的精度,利用受干扰最大矩阵的两个特性:同一链路相邻位置RSS值的连续性和相邻链路同一位置RSS值的相似性。利用这两个性质来提高精度具体为,这个受干扰最大矩阵就是根据更新后的指纹矩阵提取得到的,更新指纹矩阵是个迭代的过程,因此每一步更新指纹矩阵后续提取相应的受干扰最大矩阵,进而通过对这个提取出的干扰最大矩阵进行约束,提高重构指纹矩阵的精度。通过上述2个特性,上式可以扩展为:其中,XD来源于G和H分别是相邻位置RSS值连续约束矩阵和相邻链路相似约束矩阵。关于受干扰最大矩阵的两个特性证明如下:定义拓扑矩阵T用来表示网格位置之间的相邻关系,当i网格和j网格相邻时,T(i,j)的值为1,否则为0,相邻位置RSS值连续变化的证明由NLC(i,j)进行表示,NLC(i,j)=|XD(i,j)|-(|XD(i)|T(j)/ΣT(j))max|XD(I,J)|-min|XD(I,J)|,]]>其中XD(i)代表受干扰最大矩阵XD的第i行,T(j)代表矩阵T的第j列,|Xd(i)|T(j)代表链路i和网格j的相邻位置的总和,∑T(j)表示网格j相邻网格位置的个数,max|XD(I,J)|-min|XD(I,J)|表示受干扰最大矩阵中最大的元素差。实验表明对于90%的数据,其对应的NLC(i,j)小于0.2,说明相邻位置的RSS值是具有连续变化的性质。相邻链路RSS值的相似性证明由ALS(i,j)表示,ALS(i,j)=|XD(i,j)|-XD(i-1,j)max(|XD(I,J)-XD(I-1,J)|),]]>其中,I∈[1,M],max(|XD(I,J)-XD(I-1,J)|)表示相邻链路差距最大的值。实验表明对于80%的数据,其对应的ALS(i,j)小于0.4,说明相邻链路相对相同位置的RSS值具有相似的性质。其中,G为矩阵G*的列归一化矩阵,G*=T+G1,矩阵G1为的对角矩阵,对角线上的元素由G1(i)=-∑T(i)得来,其它的元素都为0,其中T(i)为T的第i列,例如当时,有:则此时的G只能保证相邻位置的RSS值是连续变化的。但实际上,当目标处于每条链路LOS路径上的位置时,这些相邻位置的RSS值是连续变化且呈现对称性的,即当目标处于LOS路径的最中间位置时RSS值衰减最小,靠近链路接收端和发送端位置时的RSS值衰减最大,因此将G的最中间列进行修正。具体为定义若p为整数,令:G(p,p)=0,G(p+1,p)=-G(p-1,p)=1,若p不是整数,令:其中为下取整,为上取整操作。矩阵H表示相邻链路相对相同的位置RSS测量值相似,例如链路1的第一个位置和链路2的第个位置即为相对相同的位置,设矩阵H=Toeplitz(-1,1,0)M×M,其中Toeplitz矩阵的中心对角线元素由1构成,下一层由-1构成,其它元素都为0,如下所示:可选的,设计LoLi-IR算法来更新指纹矩阵,包括:为了求解上式的最优化问题,设计LoLi-IR算法。首先固定L,寻找一个合适的使得上式获得最小值,具体通过使上式相对于RT的导数为零,然后得到新生成的使其与当前最小值v进行比较,如果则更新和否则不变。接着固定R,寻找合适的接下来方法同上,一直重复上述过程直到优化结果收敛(默认迭代次数为200次)。最后,待更新指纹矩阵X就被高精度的重构出来了。下面以固定L为例进行说明:首先定义一个函数f,有:固定L,让得到对于第一部分的导数,有其中IR为对角矩阵,对于第二部分的导数,如下:其中bj和θj分别代表矩阵B和θ的第j列,接着其中,Diag(x)表示对角线元素均为x的对角线矩阵,ij表示XI的第j列。第三部分的导数很容易得到:∂(||Lθ-XR*Z||F2)∂θ=∂(Σj=1N||Lθj-pj||F2)∂θj]]>其中P=XR*Z,pj代表矩阵P的第j列。为了求解剩下两部分的导数,定义受干扰最大矩阵XD为:其中Lii表示L的第ii行。于是有:∂(||XD*Gjj||F2)∂θ=∂(Σj=1N||LiiθjGjj||F2)∂θj]]>∂(||Hjj*XD||F2)∂θ=∂(Σj=1N||HjjLiiθj||F2)∂θj]]>其中,jj=jmod(N/M),Gjj表示G的第jj列,Hjj表示H的第jj行。最后得到R的值,具体表示如下:RT=λIR+LT*L+(Diag(B(:,j))*L)T*(Diag(B(:,j))*L)+(G(jj,:)T*L(ii,:))T*(G(jj,:)T*L(ii,:))+(H(:,jj)*L(ii,:))T*(H(:,jj)*L(ii,:))-1+(Diag(B(:,j))*L)T*XI(:,j)+LT*(P(:,j)).于是,待更新指纹矩阵X就被准确的重构出来了。可选的,利用非线性最优化将实时测量的RSS向量和更新后的指纹矩阵进行匹配,高精度恢复目标的位置,包括:当目标处在监控区域时,首先获取实时的目标引起的RSS测量向量Y,然后将这个RSS向量和更新后的指纹矩阵X进行匹配,使用的定位匹配算法不同于以前,它则是利用非线性最优化恢复目标位置向量,使用下述定位模型:YM×1=XM×N·WN×1+N,其中N为噪声,W为位置向量且wi∈{0,1},当wi=1表明目标处于第i个格子,否则为wi=0。具体地,定位向量W可以通过下式恢复出来:min||Y-XW^||2s.t.||W^||0≤s,]]>其中s为稀疏阶且s≥1,最后用OMP算法来求解该最非线性最优化问题。实验结果对比:发明人尝试从以下四个方面去评估本实施例给出的基于指纹自适应环境变化的被动式定位方法:重构指纹矩阵的稳定性能;参考位置个数;时间消耗;定位性能。重构指纹矩阵的稳定性能:图3为在不同时间点时矩阵重构误差的累积分布图,横轴表示重构误差,纵轴表示累积分布。从中可以看到重构指纹矩阵和真实矩阵的累积误差在经过3天、5天、15天、45天和3个月分别为2.7dBm,2.5dBm,3.3dBm,3.6dBm和4.4dBm。从上可以看出,更新后的指纹矩阵可以作为可靠的指纹数据库,从而大大降低成本去更新指纹数据库。参考位置个数:图4为在不同个数参考参考位置下矩阵重构误差的累积分布图,横轴表示重构误差,纵轴表示累积分布。从中可以看出,当按照本实施例所给出的利用指纹矩阵中极大无关列对应的8个参考位置中选取越多的参考点,本实施例的指纹更新效果越好,而当所选的8个位置都为参考位置时所得到的效果最好。相反的,当在监测区域中随机取8个位置作为参考位置时,指纹更新的精度非常低,使重构矩阵的准确度下降42%。时间消耗:一般来说,更新一个监控区域的RSS测量值需要全部手动获得,假设更新指纹区域大小为6m×6m,其中每个格子长0.6m,每个格子有100个RSS,收集一个RSS需花时间1秒,通常方法所需时间为小时,本实施例给出的方法所需时间为小时。图5为本实施例给出的TafLoc指纹更新重构方法和现有其他系统在不同区域大小更新矩阵所需的时间消耗,横轴表示区域边缘长度,纵轴表示时间消耗。从中可见,随着更新区域的不断变大,本实施例给出的方法能够大大减少更新指纹库所需的时间。定位性能:图6为TafLoc方法和利用真实指纹库进行定位,以及不更新指纹库直接利用OMP方法进行定位时的定位性误差累积分布图,横轴表示定位误差,纵轴表示累积分布。从中可以看出,TafLoc经过15天后对指纹矩阵进行更新后,所得到的结果是50%的格子的定位精度为1.1m,它比真实情况差,但是它与不进行更新直接利用OMP方法(用OMPw/o表示)相比,对于50%的网格来言,定位精度提高了45%。图7为在5个不同时间段下图6中所示3种方式的定位误差,横轴表示不同时间点,纵轴表示平均定位误差。从中可知,没有使用更新指纹矩阵时定位的误差很大,当使用更新指纹矩阵时可以减少定位误差,另外,TafLoc能在较长时间内实现较高的定位精度。图8为TafLoc与现有方法RTI(模型的方法,需要知道链路的长度信息),以及RASS方法(基于指纹库的方法,利用支持向量机进行定位)的定位性能比较,其中为了说明本实施例给出的指纹更新方法对其他基于指纹库的定位方法有效,对RASS方法使用和不使用本实施例给出的指纹更新方法的定位性能进行了分析(分别用RASSw/rec.和RASSw/orec.表示)。图中所示为4种方法的定位误差累积分布图,横轴表示定位误差,纵轴表示累积分布。从中可知,15天后对于50%的网格位置,本实施例给出的TafLoc方法、RTI、RASSw/rec.和RASSw/orec.各自的误差为1.1m,1.6m,2.0m,3.3m。可见TafLoc相比于RTI和RASS分别提高了28%和43%的定位精度。图9为5个时间段下4种方法的平均定位误差,横轴表示5个不同时间点,纵轴表示平均定位误差。从中可知,TafLoc相比于RTI和RASS分别在5个不同时间段上的定位精度都较高。总体而言,本发明的TafLoc既能大大减少更新整个指纹库所需的人力和成本,又能达到令人满意的定位精度和稳定度。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1