CN106371064B - 一种基于分层隐马尔科夫模型的定位方法 - Google Patents
一种基于分层隐马尔科夫模型的定位方法 Download PDFInfo
- Publication number
- CN106371064B CN106371064B CN201610810720.3A CN201610810720A CN106371064B CN 106371064 B CN106371064 B CN 106371064B CN 201610810720 A CN201610810720 A CN 201610810720A CN 106371064 B CN106371064 B CN 106371064B
- Authority
- CN
- China
- Prior art keywords
- probability
- state
- reference position
- sequence
- moment
- 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
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0278—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves involving statistical or probabilistic considerations
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
Abstract
本发明提出一种基于分层隐马尔科夫模型的定位方法,包括:两层隐马尔科夫模型(2‑HMM)实现在定位区域内对移动单元的移动过程建模,第一层HMM1根据移动单元的移动状态建模,第二层HMM2根据移动单元的移动轨迹建模。首先在定位区域内设置M个信标站点和N个参考位置,赋值各参考位置的初始值π,HMM1根据状态转移表构建状态转移矩阵A1,HMM2根据泊松分布特性构建状态转移矩阵A2,再根据贝叶斯方法构建混淆矩阵B,至此,分别完成HMM1和HMM2的构建。HMM1利用普通维比特算法求解出移动单元最大可能的移动状态序列,HMM2利用改进的维比特算法求解出移动单元最大可能的移动轨迹序列,最终实现移动单元的定位。
Description
技术领域
本发明涉及无线定位技术领域,尤其涉及一种基于分层隐马尔科夫模型的定位方法。
背景技术
随着无线通信技术的发展及数据处理能力的提高,基于位置的服务成为最具潜力的互联网业务之一。目标的位置信息在各种场合中发挥着重要作用,如车辆导航、矿井井下人员定位、医疗看护对象定位、建筑工地管理等。快速准确地获得移动终端或其持有者、设施与物品的位置信息,并提供位置服务的需求变得日益迫切。而另一方面,通信与定位正在相互融合、相互促进。通过无线通信及相关参数测量确定移动终端位置,而定位信息又能够用来支持位置业务和优化网络管理,提高位置服务质量和网络性能。所以,在各种不同的无线网络中快速、准确地获取移动位置信息的定位技术及其定位系统已经成为当前的研究热题。
根据研究调研发现,目前无线定位可分为广域定位和短距离无线定位两种。广域定位技术又能够分为卫星定位和移动定位,包含GPS、GSM/CSMA/3G、基于移动通信网络辅助的GPS(A-GPS)等,其有基础设施支撑,主要应用在室外,技术相对比较成熟。短距离定位技术主要包括WiFi、RFID、蓝牙、UWB、超声波、红外线等,主要适用于室内环境,无需建立昂贵的基础设施,精度较高,部署灵活,成本也相对较低。而在众多短距离定位技术当中,Wi-Fi定位技术是当前最主流、也是最具发展潜力的定位技术手段之一,其米级的定位精度已能够满足大部分需求。并且Wi-Fi芯片在各类智能终端(智能手机、平板电脑)中已广泛普及,不需要单独铺设信号发生器,通过现有的Wi-Fi设备,即可快速完成定位目标。其中,基于WiFi的定位系统主要利用RSSI进行定位测量,但由于无线信号的传播容易受温度、湿度和人员走动的影响,因此RSSI的测量值波动较大。为了提高测量的稳定性和精度,许多基于RSSI的定位算法往往采用多次采集取平均或加权的方法。但是这种多次测量的方法只能应用于移动特征较弱的目标,当待定位目标的移动特征较强,系统往往难于在同一个位置上采集到多次的RSSI数据。
发明内容
本发明旨在至少解决现有技术中存在的技术问题,特别创新地提出了一种基于分层隐马尔科夫模型的定位方法。
为了实现本发明的上述目的,本发明提供了一种基于分层隐马尔科夫模型的定位方法,包括如下步骤:
S1,采用两层隐马尔科夫模型(2-HMM)实现在定位区域内对移动单元的移动过程建模;
S2,第一层HMM1={N,M,π,A1,B}根据移动单元的移动状态建模,其中,N为参考位置个数,M为接入点(AP)个数,π=πi(i=1,2,...,N)为各参考位置n(n=1,2,...,N)的初始概率,πi表示初始位置i的概率状态;A1为表征移动状态的状态转移矩阵,B为混淆矩阵;
S3,移动设备采集到实时RSSI特征值[O1,O2,...,OT]发送给定位服务器,定位服务器将其作为第一层HMM1的输入,并根据普通的维比特算法求解出移动单元最大可能的移动状态序列[O11,O12,...,O1T];
S4,第二层HMM2={N,M,π,A2,B}根据移动单元的移动轨迹建模,其中A2为表征移动轨迹的状态转移矩阵;
S5,定位服务器融合第一层HMM1输出结果[O11,O12,...,O1T]和实时RSSI特征值[O1,O2,...,OT]的结果将其作为第二层HMM2的输入,根据改进后的维比特算法求解出符合移动状态连续运动最大可能的轨迹序列[O21,O22,...,O2T],将相邻状态轨迹序列的最后位置作为定位结果。
所述的基于分层隐马尔科夫模型的定位方法,优选的,所述S1包括:
S1-1、首先根据定位区域设置M个AP和N个参考位置,并赋予各参考位置n(n=1,2,...,N)的初始概率π=πi(i=1,2,...,N),πi表示初始位置i的概率;
S1-2、根据现实经验,赋予状态转移表的先验概率,根据输入观察序列值(定位结果)进行相关后验概率的计算,改进移动状态转移表;
S1-3、建立N个参考位置的无向连通图G和Dijkstra算法,得到参考位置i到j之间的最短距离,并根据i到j的最短距离和更新的移动状态转移表构建状态转移矩阵A1;
S1-4、在N个参考位置处分别采集M个AP的RSSI特征值,建立定位区域的RSSI指纹数据库;
S1-5、利用贝叶斯方法构建N个参考位置和RSSI指纹之间的的混淆矩阵B;
S1-6、利用状态转移矩阵A1和混淆矩阵B构建第一层隐马尔科夫模型HMM1={N,M,π,A1,B};
S1-7、移动设备采集到实时RSSI特征值[O1,O2,...,OT]发送给定位服务器,定位服务器将其作为第一层HMM1的输入,根据普通的维比特算法求解出移动单元最大可能的移动状态序列[O11,O12,...,O1T]并保存该输出值;
S1-8、由建立的无向连通图G和Dijkstra算法,得到参考位置i到j之间的最短距离,并根据泊松分布特性计算参考位置i到j之间的状态转移矩阵A2;
S1-9、根据状态转移矩阵A2和混淆矩阵B构建第二层隐马尔科夫模型HMM2={N,M,π,A2,B};
S1-10、定位服务器融合第一层HMM1输出结果[O11,O12,...,O1T]和实时RSSI特征值[O1,O2,...,OT]的结果将其作为第二层HMM2的输入,根据改进后的维比特算法计算符合移动状态连续运动最大可能的轨迹序列[O21,O22,...,O2T],将相邻状态轨迹序列的最后位置作为定位结果。
所述的基于分层隐马尔科夫模型的定位方法,优选的,所述S2包括:
根据定位区域的平面图将其划分为N个小区域,即N个参考位置,N的取值大小应结合定位精度和计算复杂度综合考虑;在定位区域内,模拟移动单元的移动状态大致包括以下5种状态:向东方向(东偏南45°至东偏北45°之间认为是向东方向移动),向北方向(北偏东45°至北偏西45°之间认为是向北方向移动),向西方向(西偏北45°至西偏南45°之间认为是向西方向移动),向南方向(南偏西45°至南偏东45°之间认为是向北方向移动),静止;各个状态之间的能够相互转换;
赋值各个状态转移表的初始值,将同样的移动状态之间转换的概率设置为0.28,不同的状态之间转移的概率设置为0.18,于是得到各状态之间的状态转移表;此时的状态转移表是一个先验概率,是依照于现实经验得出的结果,能够通过计算后验概率(反馈定位结果将其作为观察序列输入)进行改进,以使状态转移表更加符合真实的移动状态;
根据N个参考位置,首先建立每个参考位置之间的无向连通图G,根据Dijkstra算法计算可得参考位置之间的最短距离,再根据状态转移表能够构建各参考位置之间的状态转移矩阵A1,构建方法如下:
p1ij=(X=dij)=从i到j所经过的移动状态分别相乘的概率;
对p1ij做归一化处理,即得到系数η1;
令a1ij=η1p1ij,得到状态转移矩阵A1={a1ij,其中i,j=1,2,...,N};
在定位区域内,设置M个AP,在每个参考位置和RSSI指纹之间的混淆矩阵B利用贝叶斯方法构建;其中,混淆矩阵B的构造方法如下:
定义混淆矩阵B={bjk,其中j=1,2,...,N;k=1,2,...,K},其中bjk表示在参考位置j上RSSI指纹为Tk的后验概率,{Tk|k=1,2,...,K}表示所有可能的RSSI指纹空间;利用贝叶斯方法计算bjk并采集每个参考位置的RSSI特征值;
假设参考指纹Rj={(rj1,σj1),(rj2,σj2),...,(rjM,σjM)},其中,Rj表示参考位置j上的参考指纹,rjm表示在参考位置j测量第m个AP的RSSI特征值(m=1,2,...,M),σjm表示rjm对应的RSSI标准差;则在参考位置j上测得第m个AP的RSSI特征值为Tk的后验概率:
而bjk=Pj1·Pj2...·Pjm;
至此,根据N、M、π、A1、B构建第一层HMM1={N,M,π,A1,B}。
所述的基于分层隐马尔科夫模型的定位方法,优选的,所述S3包括:
首先定义一个部分概率δ1,δ1t(j)表示在t时刻,移动到位置j的所有可能的移动状态中概率最大的序列的概率,则部分最优序列为达到这个最大概率的序列;对于每一个时刻的每一个位置j都有一个部分概率和部分最优序列,通过计算t=T时刻的每一个位置移动状态的最大概率和部分最优序列,选择其中移动状态概率最大的位置和其部分最优序列即可得到全局的最优序列并输出[O11,O12,...,O1T];
计算t=1时刻的部分概率:δ1(j)=πjbjk;
计算t>1时刻的部分概率:
其中,δ1(t-1)(j′)是t-1时刻在位置j′的部分概率,a1j′j是A1对应的从状态j′到j的状态转移矩阵,bjkt是B中对应的概率。
所述的基于分层隐马尔科夫模型的定位方法,优选的,所述S4包括:
状态转移矩阵A2的构造方法如下:
根据建立的无向连通图G和Dijkstra算法,能够得到参考位置之间的最短距离,再根据泊松分布特性能够计算得到位置转移矩阵A2,即:
其中,p2ij表示参考位置i到参考位置j的转移概率,dij表示参考位置i到参考位置j的最短距离,λ表示移动速率;
对p2ij做归一化处理,即得到系数η2;
令aij=η2pij,得到位置转移矩阵A2={a2ij,其中i,j=1,2,...,N};
至此,根据N、M、π、A2、B构建第二层HMM2={N、M、π、A2、B};
所述的基于分层隐马尔科夫模型的定位方法,优选的,所述S5包括:
移动单元的移动轨迹是连续的,不能从一个状态(即参考位置)跳跃到非相邻的状态,因此,最优的路径一定是在相邻的状态之间;
能够在计算局部概率之前,加一个判断,只计算相邻的状态而忽略非相邻的状态;或者在计算局部概率之后,加一个判断,只选择相邻状态的序列而忽略非相邻状态的序列;
不仅需要考虑t-1时刻的状态,还需要考虑t-2时刻的状态,因此,状态转移矩阵需要采用两步转移矩阵;
需要考虑前两个时刻的状态,及t时刻到达参考位置j的两步转移概率公式为:
P(jt)=P((jt|jt′-1)|(|jt′-1|jt″-2))。
所述的基于分层隐马尔科夫模型的定位方法,优选的,改进的维比特算法进行移动轨迹的求解方法如下:
首先定义一个部分概率δ2,δ2t(j)表示在t时刻,移动到位置j的所有可能的位置序列中概率最大的序列的概率;则部分最优序列为达到这个最大概率的序列;对于每一个时刻的每一个位置都有一个部分概率和部分最优序列;通过计算t=T时刻的每一个位置的最大概率和部分最优序列后,再通过判断得到的部分最优序列是否出现不相邻状态的序列,如出现,忽略不相邻状态的序列,再在相邻状态序列中选择概率最大的位置和其部分最优序列得到全局最优序列[O21,O22,...,O2T],则t=T时刻相邻状态序列中部分概率最大的位置即为定位结果;
计算t=1时刻的部分概率:δ2(j)=πjbjk
计算t>1时刻的部分概率:
相邻状态序列中部分概率最大的位置即为定位结果。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明针对目前基于RSSI的定位算法存在的问题,提出一种基于分层隐马尔科夫模型的定位方法,该方法能够有效地提高基于RSSI无线定位的精度和稳定性。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1移动状态之间的转换图;
图2移动状态转换表;
图3分层隐马尔科夫模型的定位方法的处理流程。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在本发明的描述中,除非另有规定和限定,需要说明的是,术语“安装”、“相连”、“连接”应做广义理解,例如,能够是机械连接或电连接,也能够是两个元件内部的连通,能够是直接相连,也能够通过中间媒介间接相连,对于本领域的普通技术人员而言,能够根据具体情况理解上述术语的具体含义。
下面结合附图1对本发明做进一步描述,本发明适用场景有:室内、固定施工区域、隧道场景、煤矿场景等,现以一块固定施工领域进行相关的说明。
参照附图3,一种分层隐马尔科夫模型的定位方法,具体实施步骤如下:
步骤100、开始;
步骤110、首先根据固定施工区域的平面图,设置M个AP和N个参考位置;
步骤120、初始化:赋值各参考位置n(n=1,2,...,N)的初始概率π=πi(i=1,2,...,N),πi表示初始位置i的概率;根据现实经验,赋值状态转移表的先验概率,如附图2所示;
步骤130、输入观察序列值(定位结果)进行相关后验概率的计算,以改进移动状态转移表;
步骤140、建立N个参考位置的无向连通图G和Dijkstra算法,得到参考位置i到j之间的最短距离,并根据i到j的最短距离和更新的移动状态转移表构建状态转移矩阵A1;
步骤150、在N个参考位置处分别采集M个AP的RSSI特征值,建立定位区域的RSSI指纹数据库;
步骤160、利用贝叶斯方法构建N个参考位置和RSSI指纹之间的混淆矩阵B;
步骤170、利用位置转移矩阵A1和混淆矩阵B构建第一层隐马尔科夫模型HMM1={N,M,π,A1,B};
步骤180、移动设备采集到实时RSSI特征值[O1,O2,...,OT]发送给定位服务器;
步骤190、定位服务器通过第一层HMM1根据普通的维比特算法输出最大可能的移动状态序列[O11,O12,...,O1T]并保存该输出值。
步骤200、由建立的无向连通图G和Dijkstra算法,得到参考位置i到j之间的最短路径,并根据泊松分布特性构建参考位置i到j之间状态转移矩阵A2;
步骤210、根据状态转移矩阵A2和混淆矩阵B构建第二层隐马尔科夫模型HMM2={N,M,π,A2,B};
步骤220、融合第一层HMM1输出结果[O11,O12,...,O1T]和实时RSSI特征值[O1,O2,...,OT]作为第二层HMM2的输入;
步骤230、定位服务器通过第二层HMM2基于改进后的维比特算法求解出符合移动状态连续运动最大可能的轨迹序列[O21,O22,...,O2T],并将相邻状态轨迹序列的最后位置作为定位结果。
步骤220、结束。
至此,在固定施工区域内利用LHMM实现了移动单元的定位。
本发明提出了一种基于分层隐马尔科夫模型(LHMM)的定位方法,其采用两层隐马尔科夫模型(2-HMM)实现在定位区域内对移动单元(这里主要指配备了移动设备的人)的移动过程建模。其中,第一层HMM1根据移动单元的移动状态建模,第二层HMM2根据移动单元的移动轨迹建模,其核心思想如下:通过定位结果(输入观测序列)修正移动状态表,从而不断地调整第一层HMM1模型参数,使其更贴合实际情况,并将实时采样的RSSI值作为第一层HMM1的输入,利用普通维比特算法求解出移动单元最大可能的移动状态序列,并将输出结果再次融合实时采样的RSSI值作为参数用于第二层HMM2中的输入,第二层HMM2采用改进后的维比特算法求解出移动单元最大可能的移动轨迹序列,最终实现移动单元的定位。
本发明的技术方案如下:
第一层HMM1根据移动单元的移动状态建模:
根据定位区域的平面图将其划分为N个小区域,即N个参考位置,N的取值大小应结合定位精度和计算复杂度综合考虑。在定位区域内,模拟移动单元的移动状态大致包括以下5种状态:向东方向(东偏南45°至东偏北45°之间认为是向东方向移动),向北方向(北偏东45°至北偏西45°之间认为是向北方向移动),向西方向(西偏北45°至西偏南45°之间认为是向西方向移动),向南方向(南偏西45°至南偏东45°之间认为是向北方向移动),静止。各个状态以及它们之间的转换情况如附图1所示。
假设移动单元更倾向于连续的移动状态,即同样的移动状态之间转换的概率更大,不同的状态之间转移的概率更小。这是为了更好的模拟移动单元的移动习惯,例如,当移动单元在向北方向行走时,其更倾向于一直往北走。各个状态以及它们之间的初始状态转移表如附图2所示。其中,附图2的状态转移表是一个先验概率,是依照于现实经验得出的结果。它能够通过后验概率(输入观察序列)来进行改进,从而使该状态转移表更加适合真实的移动状态。
根据N个参考位置,首先建立每个参考位置之间的无向连通图G,根据Dijkstra算法能够得到参考位置之间的最短距离,再根据状态转移表能够构建各参考位置之间的状态转移矩阵A1,构造方法如下:
p1ij=(X=dij)=从i到j所经过的移动状态分别相乘的概率。
对p1ij做归一化处理,即得到系数η1。
令a1ij=η1p1ij,得到位状态转移矩阵A1={a1ij,其中i,j=1,2,...,N}。
在定位区域内,设置M个接入点(AP),在每个参考位置和RSSI指纹之间的混淆矩阵B利用贝叶斯方法构建。其中,混淆矩阵B的构造方法如下:
定义混淆矩阵B={bjk,其中j=1,2,...,N;k=1,2,...,K},其中bjk表示在参考位置j上RSSI指纹为Tk的后验概率,{Tk|k=1,2,...,K}表示所有可能的RSSI指纹空间;利用贝叶斯方法计算bjk并采集每个参考位置的RSSI特征值。
假设参考指纹Rj={(rj1,σj1),(rj2,σj2),...,(rjM,σjM)},其中,Rj表示参考位置j上的参考指纹,rjm表示在参考位置j测量第m个AP的RSSI特征值(m=1,2,...,M),σjm表示rjm对应的RSSI标准差;则在参考位置j上测得第m个AP的RSSI特征值为Tk的后验概率:
而bjk=Pj1·Pj2...·Pjm。
至此,根据N、M、π、A1、B构建第一层HMM1={N,M,π,A1,B}。
第二层HMM2根据移动单元的移动轨迹建模:
状态转移矩阵A2的构造方法如下:
根据建立的无向连通图G和Dijkstra算法,能够得到参考位置之间的最短距离,再根据泊松分布特性能够计算得到位置转移矩阵A2,即:
其中,p2ij表示参考位置i到参考位置j的转移概率,dij表示参考位置i到参考位置j的最短距离,λ表示移动速率;
对p2ij做归一化处理,即得到系数η2;
令aij=η2pij,得到位置转移矩阵A2={a2ij,其中i,j=1,2,...,N};
每个参考位置间的转移概率即移动单元移动轨迹的概率,能够描述移动单元的整个行走过程。
为了计算方便,第二层HMM2的混淆矩阵仍然采用第一层HMM1构建的混淆矩阵B。至此,根据N、M、π、A2、B完成了第二层HMM2={N、M、π、A2、B}根据移动单元移动轨迹的建模。
当HMM获得了一组连续的观测序列时,维比特算法能够利用输入的观测序列,来寻找最有可能的隐藏序列。在本发明的定位算法中,当获得线上移动单元观测到的一组接收信号强度值(RSSI)时,首先我们需要推测出移动单元的移动状态,再推测出定位区域内的移动轨迹及最后所处位置,均是上述所提的隐藏的状态序列。
第一层HMM1根据利用普通的维比特算法进行移动状态的定位,方法如下:
首先定义一个部分概率δ1,δ1t(j)表示在t时刻,移动到位置j的所有可能的移动状态中概率最大的序列的概率,则部分最优序列为达到这个最大概率的序列;对于每一个时刻的每一个位置j都有一个部分概率和部分最优序列,通过计算t=T时刻的每一个位置移动状态的最大概率和部分最优序列,选择其中移动状态概率最大的位置和其部分最优序列即可得到全局的最优序列并输出[O11,O12,...,O1T];
计算t=1时刻的部分概率:δ1(j)=πjbjk;
计算t>1时刻的部分概率:
其中,δ1(t-1)(j′)是t-1时刻在位置j′的部分概率,a1j′j是A1对应的从状态j′到j的状态转移矩阵,是B中对应的概率。
为了让第二层HMM2能够更好地模拟移动单元的移动轨迹,采用改进的维比特算法进行移动轨迹的定位。改进的维比特算法需要解决两大问题:
移动单元的移动轨迹是连续的,不能从一个状态(即参考位置)跳跃到非相邻的状态,因此,最优的路径一定是在相邻的状态之间。
不仅需要考虑t-1时刻的状态,还需要考虑t-2时刻的状态,因此,状态转移矩阵需要采用两步转移矩阵。
针对问题a),能够在计算局部概率之前,加一个判断,只计算相邻的状态而忽略非相邻的状态;或者在计算局部概率之后,加一个判断,只选择相邻状态的序列而忽略非相邻状态的序列。
针对问题b),需要考虑前两个时刻的状态,及t时刻到达参考位置j的两步转移概率公式为:
P(jt)=P((jt|jt′-1)|(|jt′-1|jt″-2))
改进的维比特算法进行移动轨迹的定位方法如下:
首先定义一个部分概率δ2,δ2t(j)表示在t时刻,移动到位置j的所有可能的位置序列中概率最大的序列的概率;则部分最优序列为达到这个最大概率的序列;对于每一个时刻的每一个位置都有一个部分概率和部分最优序列;通过计算t=T时刻的每一个位置的最大概率和部分最优序列,判断得到的部分最优序列是否出现不相邻状态的序列,并忽略不相邻状态的序列,再在相邻状态序列中选择概率最大的位置和其部分最优序列得到全局最优序列[O21,O22,...,O2T],则t=T时刻相邻状态序列中部分概率最大的位置即为定位结果;
计算t=1时刻的部分概率:δ2(j)=πjbjk
计算t>1时刻的部分概率:
相邻状态序列中部分概率最大的位置即为定位结果。
综上,一种基于分层隐马尔科夫模型的定位方法的具体流程如下:
步骤1、首先根据定位区域设置M个AP和N个参考位置,并赋予各参考位置n(n=1,2,...,N)的初始概率π=πi(i=1,2,...,N),πi表示初始位置i的概率;
步骤2、根据现实经验,赋予状态转移表的先验概率,如附图2所示,根据输入观察序列值(定位结果)进行相关后验概率的计算,改进移动状态转移表;
步骤3、建立N个参考位置的无向连通图G和Dijkstra算法,得到参考位置i到j之间的最短距离,并根据i到j的最短距离和更新的移动状态转移表构建状态转移矩阵A1;
步骤4、在N个参考位置处分别采集M个AP的RSSI特征值,建立定位区域的RSSI指纹数据库。
步骤5、利用贝叶斯方法构建N个参考位置和RSSI指纹之间的混淆矩阵B。
步骤6、利用状态转移矩阵A1和混淆矩阵B构建第一层隐马尔科夫模型HMM1={N,M,π,A1,B};
步骤7、移动设备采集到实时RSSI特征值[O1,O2,...,OT]发送给定位服务器,定位服务器将其作为第一层HMM1的输入,根据普通的维比特算法求解出移动单元最大可能的移动状态序列[O11,O12,...,O1T]并保存该输出值;
步骤8、由建立的无向连通图G和Dijkstra算法,得到参考位置i到j之间的最短距离,并根据泊松分布特性计算参考位置i到j之间的状态转移矩阵A2;
步骤9、根据状态转移矩阵A2和混淆矩阵B构建第二层隐马尔科夫模型HMM2={N,M,π,A2,B};
步骤10、定位服务器融合第一层HMM1输出结果[O11,O12,...,O1T]和实时RSSI特征值[O1,O2,...,OT]的结果将其作为第二层HMM2的输入,根据改进后的维比特算法计算符合移动状态连续运动最大可能的轨迹序列[O21,O22,...,O2T],将相邻状态轨迹序列的最后位置作为定位结果。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点能够在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员能够理解:在不脱离本发明的原理和宗旨的情况下能够对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
Claims (7)
1.一种基于分层隐马尔科夫模型的定位方法,其特征在于,包括如下步骤:
S1,采用两层隐马尔科夫模型(2-HMM)实现在定位区域内对移动单元的移动过程建模;
S2,第一层HMM1={N,M,π,A1,B}根据移动单元的移动状态建模,其中,N为参考位置个数,M为接入点(AP)个数,π=πi,i=1,2,…,N为各参考位置n,n=1,2,…,N的初始概率,πi表示初始位置i的概率状态;A1为表征移动状态的状态转移矩阵,B为混淆矩阵;
S3,移动设备采集到实时RSSI特征值[O1,O2,...,OT]发送给定位服务器,定位服务器将其作为第一层HMM1的输入,并根据普通的维比特算法求解出移动单元最大可能的移动状态序列[O11,O12,...,O1T];
S4,第二层HMM2={N,M,π,A2,B}根据移动单元的移动轨迹建模,其中A2为表征移动轨迹的状态转移矩阵;
S5,定位服务器融合第一层HMM1输出结果[O11,O12,...,O1T]和实时RSSI特征值[O1,O2,...,OT]的结果将其作为第二层HMM2的输入,根据改进后的维比特算法求解出符合移动状态连续运动最大可能的轨迹序列[O21,O22,...,O2T],将相邻状态轨迹序列的最后位置作为定位结果。
2.根据权利要求1所述的基于分层隐马尔科夫模型的定位方法,其特征在于,所述S1-S5包括:
S1-1、首先根据定位区域设置M个AP和N个参考位置,并赋予各参考位置n,n=1,2,…,N的初始概率π=πi,i=1,2,…,N,πi表示初始位置i的概率;
S1-2、根据现实经验,赋予状态转移表的先验概率,根据输入观察序列值进行相关后验概率的计算,改进移动状态转移表;
S1-3、建立N个参考位置的无向连通图G和Dijkstra算法,得到参考位置i到j之间的最短距离,并根据i到j的最短距离和更新的移动状态转移表构建状态转移矩阵A1;
S1-4、在N个参考位置处分别采集M个AP的RSSI特征值,建立定位区域的RSSI指纹数据库;
S1-5、利用贝叶斯方法构建N个参考位置和RSSI指纹之间的的混淆矩阵B;
S1-6、利用状态转移矩阵A1和混淆矩阵B构建第一层隐马尔科夫模型HMM1={N,M,π,A1,B};
S1-7、移动设备采集到实时RSSI特征值[O1,O2,...,OT]发送给定位服务器,定位服务器将其作为第一层HMM1的输入,根据普通的维比特算法求解出移动单元最大可能的移动状态序列[O11,O12,...,O1T]并保存该输出值;
S1-8、由建立的无向连通图G和Dijkstra算法,得到参考位置i到j之间的最短距离,并根据泊松分布特性计算参考位置i到j之间的状态转移矩阵A2;
S1-9、根据状态转移矩阵A2和混淆矩阵B构建第二层隐马尔科夫模型HMM2={N,M,π,A2,B};
S1-10、定位服务器融合第一层HMM1输出结果[O11,O12,...,O1T]和实时RSSI特征值[O1,O2,...,OT]的结果将其作为第二层HMM2的输入,根据改进后的维比特算法计算符合移动状态连续运动最大可能的轨迹序列[O21,O22,...,O2T],将相邻状态轨迹序列的最后位置作为定位结果。
3.根据权利要求1-2任一所述的基于分层隐马尔科夫模型的定位方法,其特征在于,所述S2包括:
根据定位区域的平面图将其划分为N个小区域,即N个参考位置,N的取值大小应结合定位精度和计算复杂度综合考虑;在定位区域内,模拟移动单元的移动状态大致包括以下5种状态:向东方向,即东偏南45°至东偏北45°之间认为是向东方向移动;向北方向,即北偏东45°至北偏西45°之间认为是向北方向移动;向西方向,即西偏北45°至西偏南45°之间认为是向西方向移动;向南方向,即南偏西45°至南偏东45°之间认为是向北方向移动;静止;各个状态之间的能够相互转换;
赋值各个状态转移表的初始值,将同样的移动状态之间转换的概率设置为0.28,不同的状态之间转移的概率设置为0.18,于是得到各状态之间的状态转移表;此时的状态转移表是一个先验概率,是依照于现实经验得出的结果,能够通过计算后验概率进行改进,以使状态转移表更加符合真实的移动状态;
根据N个参考位置,首先建立每个参考位置之间的无向连通图G,根据Dijkstra算法计算可得参考位置之间的最短距离,再根据状态转移表能够构建各参考位置之间的状态转移矩阵A1,构建方法如下:
p1ij=(X=dij)=从i到j所经过的移动状态分别相乘的概率;
对p1ij做归一化处理,即得到系数η1;
令a1ij=η1p1ij,得到状态转移矩阵A1={a1ij,其中i,j=1,2,...,N};
在定位区域内,设置M个AP,在每个参考位置和RSSI指纹之间的混淆矩阵B利用贝叶斯方法构建;其中,混淆矩阵B的构造方法如下:
定义混淆矩阵B={bjk,其中j=1,2,...,N;k=1,2,...,K},其中bjk表示在参考位置j上RSSI指纹为Tk的后验概率,{Tk|k=1,2,...,K}表示所有可能的RSSI指纹空间;利用贝叶斯方法计算bjk并采集每个参考位置的RSSI特征值;
假设参考指纹Rj={(rj1,σj1),(rj2,σj2),...,(rjM,σjM)},其中,Rj表示参考位置j上的参考指纹,rjm表示在参考位置j测量第m个AP的RSSI特征值m=1,2,...,M,σjm表示rjm对应的RSSI标准差;则在参考位置j上测得第m个AP的RSSI特征值为Tk的后验概率:
而bjk=Pj1 Pj2...Pjm;
至此,根据N、M、π、A1、B构建第一层HMM1={N,M,π,A1,B}。
4.根据权利要求1-2任一所述的基于分层隐马尔科夫模型的定位方法,其特征在于,所述S3包括:
首先定义一个部分概率δ1,δ1t(j)表示在t时刻,移动到位置j的所有可能的移动状态中概率最大的序列的概率,则部分最优序列为达到这个最大概率的序列;对于每一个时刻的每一个位置j都有一个部分概率和部分最优序列,通过计算t=T时刻的每一个位置移动状态的最大概率和部分最优序列,选择其中移动状态概率最大的位置和其部分最优序列即可得到全局的最优序列并输出[O11,O12,...,O1T];
计算t=1时刻的部分概率:δ1(j)=πjbjk;
计算t>1时刻的部分概率:
其中,δ1(t-1)(j′)是t-1时刻在位置j′的部分概率,a1j′j是A1对应的从状态j′到j的状态转移矩阵,是B中对应的概率。
5.根据权利要求1-2任一所述的基于分层隐马尔科夫模型的定位方法,其特征在于,所述S4包括:
状态转移矩阵A2的构造方法如下:
根据建立的无向连通图G和Dijkstra算法,能够得到参考位置之间的最短距离,再根据泊松分布特性能够计算得到位置转移矩阵A2,即:
其中,p2ij表示参考位置i到参考位置j的转移概率,dij表示参考位置i到参考位置j的最短距离,λ表示移动速率;
对p2ij做归一化处理,即得到系数η2;
令aij=η2pij,得到位置转移矩阵A2={a2ij,其中i,j=1,2,...,N};
至此,根据N、M、π、A2、B构建第二层HMM2={N、M、π、A2、B}。
6.根据权利要求1-2任一所述的基于分层隐马尔科夫模型的定位方法,其特征在于,所述S5包括:
移动单元的移动轨迹是连续的,不能从一个状态跳跃到非相邻的状态,因此,最优的路径一定是在相邻的状态之间;
能够在计算局部概率之前,加一个判断,只计算相邻的状态而忽略非相邻的状态;或者在计算局部概率之后,加一个判断,只选择相邻状态的序列而忽略非相邻状态的序列;
不仅需要考虑t-1时刻的状态,还需要考虑t-2时刻的状态,因此,状态转移矩阵需要采用两步转移矩阵;
需要考虑前两个时刻的状态,及t时刻到达参考位置j的两步转移概率公式为:
P(jt)=P((jt|j′t-1)|(|j′t-1|j″t-2))。
7.根据权利要求1所述的基于分层隐马尔科夫模型的定位方法,其特征在于,改进的维比特算法进行移动轨迹的求解方法如下:
首先定义一个部分概率δ2,δ2t(j)表示在t时刻,移动到位置j的所有可能的位置序列中概率最大的序列的概率;则部分最优序列为达到这个最大概率的序列;对于每一个时刻的每一个位置都有一个部分概率和部分最优序列;通过计算t=T时刻的每一个位置的最大概率和部分最优序列后,再通过判断得到的部分最优序列是否出现不相邻状态的序列,如出现,忽略不相邻状态的序列,再在相邻状态序列中选择概率最大的位置和其部分最优序列得到全局最优序列[O21,O22,...,O2T],则t=T时刻相邻状态序列中部分概率最大的位置即为定位结果;
计算t=1时刻的部分概率:δ2(j)=πjbjk,其中bjk表示在参考位置j上RSSI指纹为Tk的后验概率;
计算t>1时刻的部分概率:
相邻状态序列中部分概率最大的位置即为定位结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610810720.3A CN106371064B (zh) | 2016-09-08 | 2016-09-08 | 一种基于分层隐马尔科夫模型的定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610810720.3A CN106371064B (zh) | 2016-09-08 | 2016-09-08 | 一种基于分层隐马尔科夫模型的定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106371064A CN106371064A (zh) | 2017-02-01 |
CN106371064B true CN106371064B (zh) | 2018-11-20 |
Family
ID=57899450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610810720.3A Active CN106371064B (zh) | 2016-09-08 | 2016-09-08 | 一种基于分层隐马尔科夫模型的定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106371064B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109425341B (zh) * | 2017-08-22 | 2022-09-27 | 富士通株式会社 | 定位方法、定位装置和电子设备 |
CN108614417B (zh) * | 2018-04-28 | 2021-03-26 | 合肥工业大学 | 一种非泊松工件流csps系统优化控制及仿真测试方法 |
CN108909706A (zh) * | 2018-07-03 | 2018-11-30 | 天津英创汇智汽车技术有限公司 | 自动泊车方法及装置 |
CN110859629A (zh) * | 2019-10-29 | 2020-03-06 | 北京机械设备研究所 | 一种外骨骼步态辨识方法和装置 |
CN112069532B (zh) * | 2020-07-22 | 2023-09-26 | 安徽工业大学 | 一种基于差分隐私的轨迹隐私保护方法与装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103068041A (zh) * | 2012-12-31 | 2013-04-24 | 广州杰赛科技股份有限公司 | 一种定位方法 |
CN103338509A (zh) * | 2013-04-10 | 2013-10-02 | 南昌航空大学 | 一种基于隐含马尔可夫模型的wsn室内定位方法 |
CN104469942A (zh) * | 2014-12-24 | 2015-03-25 | 福建师范大学 | 一种基于隐马尔科夫模型的室内定位方法 |
CN105910601A (zh) * | 2016-05-31 | 2016-08-31 | 天津大学 | 一种基于隐马尔科夫模型的室内地磁定位方法 |
-
2016
- 2016-09-08 CN CN201610810720.3A patent/CN106371064B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103068041A (zh) * | 2012-12-31 | 2013-04-24 | 广州杰赛科技股份有限公司 | 一种定位方法 |
CN103338509A (zh) * | 2013-04-10 | 2013-10-02 | 南昌航空大学 | 一种基于隐含马尔可夫模型的wsn室内定位方法 |
CN104469942A (zh) * | 2014-12-24 | 2015-03-25 | 福建师范大学 | 一种基于隐马尔科夫模型的室内定位方法 |
CN105910601A (zh) * | 2016-05-31 | 2016-08-31 | 天津大学 | 一种基于隐马尔科夫模型的室内地磁定位方法 |
Non-Patent Citations (1)
Title |
---|
基于煤矿环境下的两层隐马尔科夫模型定位方法研究;余俊毅;《万方学位论文》;20160803;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106371064A (zh) | 2017-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106371064B (zh) | 一种基于分层隐马尔科夫模型的定位方法 | |
Li et al. | Toward location-enabled IoT (LE-IoT): IoT positioning techniques, error sources, and error mitigation | |
Farahsari et al. | A survey on indoor positioning systems for IoT-based applications | |
CN107094319A (zh) | 一种高精度室内外融合定位系统和方法 | |
CN104697517B (zh) | 一种室内停车场多目标跟踪定位系统 | |
CN104270816B (zh) | Led可见光室内定位系统的自适应动态指纹库构建方法 | |
CN104902562B (zh) | 一种基于多层指纹匹配的室内定位方法 | |
CN105550203B (zh) | 一种基于移动终端定位搜寻的物品租借系统及方法 | |
CN106291635A (zh) | 用于室内定位的方法及系统 | |
He et al. | The design and implementation of an integrated optimal fertilization decision support system | |
CN104837118A (zh) | 一种基于WiFi和BLUETOOTH的室内融合定位系统及方法 | |
CN105588566A (zh) | 一种基于蓝牙与mems融合的室内定位系统及方法 | |
CN204948365U (zh) | 一种远程操控的lte基站立体规划、选点及勘察系统 | |
CN105474031A (zh) | 用于移动终端的3d定位的3d扇区化路径损耗模型 | |
CN105578417A (zh) | 一种移动中的人员的室内定位方法 | |
CN106525031A (zh) | 一种组合的室内定位方法 | |
CN104243580A (zh) | 应用于水利施工现场的人员综合定位方法及系统 | |
CN103068038A (zh) | 基于Zigbee网络的室内双向定位方法 | |
CN103068043A (zh) | 一种基于wifi和加速度传感器的室内精确定位方法 | |
CN108828643A (zh) | 一种基于灰色预测模型的室内外无缝定位系统及方法 | |
CN107110652A (zh) | 处理空间特征 | |
CN102724751A (zh) | 一种基于非现场勘测的无线室内定位方法 | |
CN106060781A (zh) | 基于BIM与Zigbee技术融合的空间定位方法 | |
CN106604291A (zh) | 一种rtk移动参考站选址方法及装置 | |
CN107645702A (zh) | 位置标定方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |