发明名称 基于信息熵的WLAN室内定位Radio Map更新方法
摘要 基于信息熵的WLAN室内定位Radio Map更新方法,涉及WLAN室内定位方法。解决了现有WLAN室内定位Radio Map更新方法存在的定位精度差、定位复杂以及更新的工作量大等问题。本发明通过在各参考点测量到的AP信号强度RSS值存储在Radio Map中,选择其中信息熵增益较大的AP并计算两两之间的互信息熵,依次选择互信息熵较大的AP后,利用隐马尔科夫模型对离线阶段的Radio Map进行更新,使用KNN算法分别对比离线阶段的Radio Map和更新后的Radio Map对在线阶段测得的RSS向量的定位准确度,更新后的Radio Map较更新前的Radio Map有助于提高定位精度。本发明适用于WLAN室内定位。
申请公布号 CN103945531B 申请公布日期 2017.03.22
申请号 CN201410198645.0 申请日期 2014.05.12
申请人 哈尔滨工业大学 发明人 马琳;邹贵;张中兆;莫云;夏颖;徐玉滨
分类号 H04W64/00(2009.01)I;H04W84/12(2009.01)I 主分类号 H04W64/00(2009.01)I
代理机构 哈尔滨市松花江专利商标事务所 23109 代理人 杨立超
主权项 基于信息熵的WLAN室内定位Radio Map更新方法,其特征在于它包括下述步骤:步骤1:根据无线电在室内传播的有关特点及AP能使用的频段合理部署AP,保证环境中任意位置均可采集到来自至少2个AP的信号强度,且信号功率大于或等于‑95dBm;步骤2:根据需要定位的室内环境,选择合适的坐标原点以建立二维直角坐标系,均匀设置参考点并根据该直角坐标系标定各参考点坐标,在每个参考点处测量来自各AP的辐射信号强度并将该参考点的二维坐标及测量到的AP信号强度保存在Radio Map中;步骤3:对预更新的区域引入信息熵增益模型,选择其中r个信息熵增益较大的AP用于后续定位及更新操作;步骤4:在选择r个信息熵增益较大的AP后,对r个AP计算两两之间的互信息熵,依次选择互信息熵较大的两AP作为定位及更新操作直到AP数量达到需求值m为止;步骤5:利用测得的RSS值使用隐马尔科夫模型更新Radio Map,步骤5的实现过程为:步骤5.1:Radio Map更新第一阶段为隐马尔科夫过程建立,隐马尔科夫过程是马尔科夫过程的一种,具有有限状态并且每个状态都与观测值之间有一套随机概率密度函数,隐马尔科夫过程由如下五部分组成:(1)模型中的状态数L={l<sub>1</sub>,l<sub>2</sub>,…l<sub>N</sub>},l<sub>1</sub>,l<sub>2</sub>,…l<sub>N</sub>代表用户位置数,即N个参考点;(2)从一个状态可能输出的不同的符号数V={v<sub>1</sub>,v<sub>2</sub>,…v<sub>101</sub>},v<sub>1</sub>,v<sub>2</sub>,…v<sub>101</sub>代表在某一参考点处接收到的某个AP的RSS信号值,取值范围为(0,‑1,‑2,…‑100)dBm;(3)状态转移概率A={a<sub>cd</sub>=p(q<sub>t+1</sub>=l<sub>c</sub>|q<sub>t</sub>=l<sub>d</sub>)},1≤c,d≤N,a<sub>cd</sub>代表用户位置转移概率即表示从t时刻在位置l<sub>d</sub>处到t+1时刻到达位置l<sub>c</sub>处的概率,a<sub>cd</sub>满足a<sub>cd</sub>≥0,<img file="FDA0001150799890000011.GIF" wi="267" he="79" />(4)在状态l<sub>g</sub>处观测到特定符号v<sub>e</sub>,1≤e≤101的概率矩阵B={b<sub>g</sub>(e)=p(O<sub>t</sub>=v<sub>e</sub>|q<sub>t</sub>=l<sub>g</sub>)},b<sub>g</sub>(e)=p(O<sub>t</sub>=v<sub>e</sub>|q<sub>t</sub>=l<sub>g</sub>)表示t时刻在位置l<sub>g</sub>处的条件下接收到的某个AP辐射的RSS信号值v<sub>e</sub>的条件概率,其中b<sub>g</sub>(e)满足b<sub>g</sub>(e)≥0,<img file="FDA0001150799890000012.GIF" wi="306" he="86" />(5)初始位置概率分布矩阵π={π<sub>g</sub>=p(q<sub>1</sub>=l<sub>g</sub>)},π<sub>g</sub>满足π<sub>g</sub>≥0,<img file="FDA0001150799890000013.GIF" wi="262" he="87" />指定4个初始点,均匀概率,其他参考点处初始概率为0;在建立好隐马尔科夫模型θ=(A,B,π)后,对于观测序列O=O<sub>1</sub>O<sub>2</sub>...O<sub>T</sub>即在环境中测到的一序列RSS值,通过解码方法得到相应的位置输出Q=q<sub>1</sub>q<sub>2</sub>...q<sub>T</sub>即测量时这一序列RSS值时所处的位置,使得该位置输出能最好的解释观测序列;步骤5.2:Radio Map更新第二阶段为对隐马尔科夫过程进行参数训练,对Radio Map实现更新,实现过程为:步骤5.2.1:由离线阶段测得的Radio Map计算每个参考点处接收到的各AP信号值的概率从而得到隐马尔科夫模型中的B矩阵,在该矩阵中,每个AP对应一个B矩阵,隐马尔科夫模型建立中的五个元素中的B矩阵描述可得出该矩阵的维数为N×101即N个参考点,每个参考点处得到某AP的RSS值的个数为101个即0dBm到‑100dBm;步骤5.2.2:依据选择出的m个AP逐个AP对离线阶段测得的Radio Map中的B矩阵进行更新操作,更新步骤如下所述;步骤5.2.3:由参考点的所在环境中的部署,确定合理的物理轨迹,通过在该环境中得到的RSS轨迹即实测轨迹,即在同一个AP下得到的不同位置处的RSS值,计算实测轨迹与物理轨迹之间的吻合度,计算公式如式(9)所示,式中<img file="FDA0001150799890000021.GIF" wi="331" he="78" />为长度为n<sub>t</sub>的同一个AP处得到的RSS值构成的轨迹,该轨迹称为实测轨迹,其物理位置未知,<img file="FDA0001150799890000022.GIF" wi="317" he="86" />是长度与t相等的所有可能的位置序列也称为物理轨迹,θ为当前模型参数,v<sub>1</sub>即RSS轨迹中第一个RSS值,l<sub>1</sub>即为选定的初始点中的一个;<maths num="0001"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><mi>p</mi><mrow><mo>(</mo><mi>t</mi><mo>,</mo><mi>q</mi><mo>)</mo></mrow><mo>=</mo><mi>p</mi><mrow><mo>(</mo><mi>t</mi><mo>|</mo><mi>q</mi><mo>,</mo><mi>&theta;</mi><mo>)</mo></mrow><mi>p</mi><mrow><mo>(</mo><mi>q</mi><mo>|</mo><mi>&theta;</mi><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mo>=</mo><mi>p</mi><mo>(</mo><mrow><msub><mi>l</mi><mn>1</mn></msub><mo>|</mo><mi>&theta;</mi></mrow><mo>)</mo><mi>p</mi><mo>(</mo><mrow><msub><mi>v</mi><mn>1</mn></msub><mo>|</mo><msub><mi>l</mi><mn>1</mn></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo><mo>&times;</mo><munderover><mi>&Pi;</mi><mrow><mi>g</mi><mo>=</mo><mn>2</mn></mrow><msub><mi>n</mi><mi>t</mi></msub></munderover><mi>p</mi><mrow><mo>(</mo><msub><mi>l</mi><mi>g</mi></msub><mo>|</mo><msub><mi>l</mi><mrow><mi>g</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>,</mo><mi>&theta;</mi><mo>)</mo></mrow><mi>p</mi><mrow><mo>(</mo><msub><mi>v</mi><mi>e</mi></msub><mo>|</mo><msub><mi>l</mi><mi>g</mi></msub><mo>,</mo><mi>&theta;</mi><mo>)</mo></mrow></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001150799890000023.GIF" wi="1547" he="220" /></maths>步骤5.2.4:由于每条物理轨迹是由对应的参考点组成,因此可以通过实测轨迹与物理轨迹之间的吻合度计算对应参考点处的RSS值的概率,经过f次迭代后,对每个参考点l<sub>i</sub>,i=1,2,…N分别根据步骤5.2.3中得到的轨迹吻合度p(t,q)计算相应的RSS值v<sub>e</sub>的概率,由公式(10)计算出,式中p(l<sub>g</sub>=l<sub>i</sub>|θ<sup>f</sup>,t)即为对应p(t,q)的值,θ<sup>f</sup>代表第f次迭代后的模型参数,其中δ(v<sub>e</sub>,v<sub>e′</sub>)由式(11)表示;<maths num="0002"><math><![CDATA[<mrow><mi>p</mi><msup><mrow><mo>(</mo><msub><mi>v</mi><mi>e</mi></msub><mo>|</mo><msub><mi>l</mi><mi>i</mi></msub><mo>)</mo></mrow><mrow><mi>f</mi><mo>+</mo><mn>1</mn></mrow></msup><mo>=</mo><mfrac><mrow><munder><mo>&Sigma;</mo><mrow><mi>t</mi><mo>&Element;</mo><mi>T</mi></mrow></munder><munderover><mo>&Sigma;</mo><mrow><mi>g</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>t</mi><mi>n</mi></msub></munderover><mi>p</mi><mrow><mo>(</mo><msub><mi>l</mi><mi>g</mi></msub><mo>=</mo><msub><mi>l</mi><mi>i</mi></msub><mo>|</mo><msup><mi>&theta;</mi><mi>f</mi></msup><mo>,</mo><mi>t</mi><mo>)</mo></mrow><mi>&delta;</mi><mrow><mo>(</mo><msub><mi>v</mi><msup><mi>e</mi><mo>&prime;</mo></msup></msub><mo>,</mo><msub><mi>v</mi><mi>e</mi></msub><mo>)</mo></mrow></mrow><mrow><munder><mo>&Sigma;</mo><mrow><mi>t</mi><mo>&Element;</mo><mi>T</mi></mrow></munder><munderover><mo>&Sigma;</mo><mrow><mi>g</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>t</mi><mi>n</mi></msub></munderover><mi>p</mi><mrow><mo>(</mo><msub><mi>l</mi><mi>g</mi></msub><mo>=</mo><msub><mi>l</mi><mi>i</mi></msub><mo>|</mo><msup><mi>&theta;</mi><mi>f</mi></msup><mo>,</mo><mi>t</mi><mo>)</mo></mrow></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001150799890000024.GIF" wi="1425" he="279" /></maths><maths num="0003"><math><![CDATA[<mrow><mi>&delta;</mi><mrow><mo>(</mo><msub><mi>v</mi><mi>e</mi></msub><mo>,</mo><msub><mi>v</mi><msup><mi>e</mi><mo>&prime;</mo></msup></msub><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mn>1</mn></mtd><mtd><mrow><msub><mi>v</mi><mi>e</mi></msub><mo>=</mo><msub><mi>v</mi><msup><mi>e</mi><mo>&prime;</mo></msup></msub></mrow></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mrow><msub><mi>v</mi><mi>e</mi></msub><mo>&NotEqual;</mo><msub><mi>v</mi><msup><mi>e</mi><mo>&prime;</mo></msup></msub></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001150799890000031.GIF" wi="1206" he="147" /></maths>步骤5.2.5:由步骤5.2.4得到的每个参考点处的概率信息乘以相应的RSS值得到更新该AP后的Radio Map,并由式(12)计算每条实际轨迹与所有物理轨迹的吻合度之和的乘积,式中T为未标示位置集合,通过计算p(T|θ)判断收敛,若p(T|θ)不再发生变化或变化很小,在0.0001范围内,则认为已得到合适的吻合度,并与更新前的Radio Map作比较,若p(T|θ)相差小于一个阈值,0.0001范围内,则算法终止;<maths num="0004"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><mi>p</mi><mrow><mo>(</mo><mrow><mi>T</mi><mo>|</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow><mo>=</mo><munder><mi>&Pi;</mi><mrow><mi>t</mi><mo>&Element;</mo><mi>T</mi></mrow></munder><mi>p</mi><mrow><mo>(</mo><mrow><mi>t</mi><mo>|</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow><mo>=</mo><munder><mi>&Pi;</mi><mrow><mi>t</mi><mo>&Element;</mo><mi>T</mi></mrow></munder><munder><mi>&Sigma;</mi><mi>q</mi></munder><mi>p</mi><mrow><mo>(</mo><mrow><mi>t</mi><mo>|</mo><mi>q</mi><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow><mi>p</mi><mrow><mo>(</mo><mrow><mi>q</mi><mo>|</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mo>=</mo><munder><mi>&Pi;</mi><mrow><mi>t</mi><mo>&Element;</mo><mi>T</mi></mrow></munder><munder><mi>&Sigma;</mi><mi>q</mi></munder><mrow><mo>(</mo><mrow><mi>p</mi><mrow><mo>(</mo><mrow><msub><mi>l</mi><mn>1</mn></msub><mo>|</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow><mi>p</mi><mrow><mo>(</mo><mrow><msub><mi>v</mi><mn>1</mn></msub><mo>|</mo><msub><mi>l</mi><mn>1</mn></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow><mo>&times;</mo><munderover><mi>&Pi;</mi><mrow><mi>g</mi><mo>=</mo><mn>2</mn></mrow><msub><mi>n</mi><mi>t</mi></msub></munderover><mi>p</mi><mrow><mo>(</mo><mrow><msub><mi>l</mi><mi>g</mi></msub><mo>|</mo><msub><mi>l</mi><mrow><mi>g</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow><mi>p</mi><mrow><mo>(</mo><mrow><msub><mi>v</mi><mi>e</mi></msub><mo>|</mo><msub><mi>l</mi><mi>g</mi></msub><mo>,</mo><mi>&theta;</mi></mrow><mo>)</mo></mrow></mrow><mo>)</mo></mrow></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001150799890000032.GIF" wi="1645" he="275" /></maths>步骤5.2.6:重复步骤5.2.3、步骤5.2.4、步骤5.2.5,直到选择出的m个AP全部更新完成,得到最终更新后的Radio Map。
地址 150001 黑龙江省哈尔滨市南岗区西大直街92号