袁昊 王剑锟
【摘要】在Wi-Fi指纹室内定位中,由于Wi-Fi访问接入点(AP, access point)会随时间发生各种改变,为了保持较高的定位精度,需要定期更新指纹库,这将浪费大量的人力物力成本。本文研究了如何在线准确检测Wi-Fi指纹变化,从而有效地更新指纹库。AReDGAN(Alteration Reducing Denoising Generative Adversarial Network)是一个基于降噪自编码器和生成对抗网络的深度学习模型,通过学习变化指纹的分布来重构指纹。在AReDGAN的基础上,进一步开发了指纹变化检测系统,该系统利用众包的Wi-Fi接收信号强度(RSS, received signal strength)测量方法构建了指纹变化强度图。指纹变化强度图表示感兴趣区域内任意位置的指纹变化强度。本文在两个真实的室内场景中进行大量广泛的实验,对指纹变化检测系统进行性能评估。结果表明,该系统在所有测试场景下都能生成准确的指纹变化强度图,有助于指纹库的及时更新。
【关键词】室内定位;Wi-Fi指纹;智能手机感应;深度学习
中图分类号:TN929 文献标识码:A DOI:10.12246/j.issn.1673-0348.2023.16.016
0. 引言
Wi-Fi指纹定位是根据Wi-Fi接收信号强度(Received Signal Strength, RSS)的测量值与指纹库中目标的相似性来进行定位的。然而,由于Wi-Fi访问接入点(AP, access point)的变化(例如AP的移动)和环境的变化(例如墙壁分区或新装饰的引入),Wi-Fi指纹会随着时间的推移而变化。因此,最新的Wi-Fi指纹库对于保持高水平的定位精度非常重要。
目前,许多工作致力于对Wi-Fi指纹库进行持续化的更新。为了应对明显的环境指纹变化,一种简单直接的解决方案是通过现场重新采集指纹对整个指纹库进行定期更新。由于缺乏对指纹变化强度的检测,更新周期必须足够短,以避免指纹数据库过时。因此,如果规模较大的场馆,这将是一种劳动密集型和耗时的工作。另一方面,环境Wi-Fi指纹在短时间内(如几天或几周)随时间略有变化,可以通过设备自动检测变化的AP并将其过滤自动更新指纹库。但是,当指纹发生明显变化,涉及多个AP发生变化时,这种方法将不再适用指纹库的更新。此外,借助传感器(如加速度计和陀螺仪),指纹库可以通过众包进行更新。同样,在不知道指纹改变强度的情况下,必须无差别地对整个区域进行更新,这将会使得成本较高。
因此,提出了一个问题:在不需要额外硬件的情况下,能否通过在线众包的方式检测Wi-Fi指纹变化的强度和位置,从而以较低的成本及时、局部地更新指纹数据库?事实上,在没有当前WiFi RSS的位置信息的情况下计算指纹变化强度是具有挑战性的,因为它需要计算相同位置的指纹数据库中当前变化指纹与原始指纹的差值。
為了应对上述挑战,本文提出了一种生成对抗网络AReDGAN学习指纹的变化分布,利用变化的指纹重构指纹。受降噪自动编码器,AReDGAN将指纹的变化视为噪声。受到生成对抗网络的启发,AReDGAN通过对抗训练生成逼真的原始指纹。AReDGAN将变化的Wi-Fi指纹通过一个编码器编码到隐藏空间,然后使用生成器生成对应的原始指纹,学习变化指纹和原始指纹之间的映射关系。为了使生成的指纹与原始指纹相比更逼真,AReDGAN还使用了一个鉴别器用于和生成器进行对抗训练。为了使AReDGAN适应部署中所有类型的指纹变化,本文在两个真实典型场景(办公楼和购物中心)中进行了为期6个月的大量长期测量,通过经验分布对指纹变化进行建模。
在此基础上,进一步设计了指纹变化检测系统,实现指纹变化在线检测,构建指纹变化强度图。具体而言,针对Wi-Fi指纹定位系统中获得变化指纹的Wi-Fi RSS测量值,系统首先通过AReDGAN中的生成对抗网络重构伪原始指纹,计算出变化指纹所在的位置和变化的强度,然后构建指纹变化强度分布图,该图表示指纹在感兴趣区域内的位置变化强度。利用指纹变化强度分布图,指纹数据库可以及时、准确、高效地更新。例如,只更新变化强度较强区域的指纹,而不是整个指纹数据库,从而大大降低了更新成本。值得注意的是,系统对RSS测量输入没有任何限制。它们可能来自需要定位服务的用户,也可能是由想要改善客户定位体验的购物中心店主随机收集的。简而言之,通过众包RSS测量,系统能够以低成本在线检测Wi-Fi指纹变化。
综上所述,本文的贡献如下:(1)基于生成对抗网络AReDGAN,本文提出了一种新的指纹变化检测系统,该系统能够通过构建指纹变化强度分布图,利用众包Wi-Fi RSS测量在线检测指纹变化。借助指纹变化强度分布图,可以准确、高效、及时地更新Wi-Fi指纹数据库。(2)本文在总面积大于8000平方米的两个真实室内场景中对指纹变化检测系统进行了大量的实验评估。结果表明,在两种测试场景下,该系统构建的指纹变化强度分布图都能准确反映Wi-Fi指纹变化强度。
1. 相关工作
本文的工作是一种新型的Wi-Fi指纹变化检测系统,它是对指纹自动更新系统的补充,以降低更新成本。关于Wi-Fi指纹变化检测的研究很多,主要分为三类:基于设备的方法、基于跟踪映射的方法和基于半监督的方法。
1.1 基于设备的方法
这是最直接的指纹变化检测方法。在整个场景中部署监控设备,可以实时准确地检测到变化。例如,Atia等人提出了利用部署的监测设备实现动态指纹更新。该方法具有可靠性和准确性高的优点。但是,额外的硬件成本会随着场景的规模而增长,这并不适用于大规模场景。
1.2 基于跟踪映射的方法
基于跟踪映射的方法是通过众包的方式收集大量用户的轨迹数据,然后通过相似路径匹配建立用户轨迹,更新指纹数据库。Chang等人提出根据室内平面图生成所有可能路径,并根据轨迹数据(包括IMU数据和WiFi RSS数据)建立用户轨迹,然后将用户轨迹与所有可能路径进行匹配,进行位置校正。Taniuchi等人根据固定用户的日常路线发现了Wi-Fi信号的变化,利用某场景中部分用户的固定行走路线来更新指纹数据库。但是,不可忽略的是这些方法的数据都是来自普通用户的高频跟踪数据,这将给他们的移动设备带来不可接受的高功耗。
1.3 基于半监督学习的方法
基于半监督学习的变化检测方法通过标记指纹发现新添加的未标记指纹的异常。Ghourchian等人采用半监督学习方法,通过个人电脑连续采集未标记WiFi CSI (Channel State Information)指纹,并将特征偏移的CSI指纹加入学习器中进行再训练。
然而,由于该方法使用分类模型进行房间级定位,因此精度仅限于房间级指纹更新。He等人提出了一种基于聚类的方法。假设发生变化的AP数量较少,则多次随机选择部分AP进行定位。包含发生变化的AP的结果将显示分散的形状,而不包含发生变化的AP的结果将显示聚集的形状,其聚集的位置即为用户的真实位置。但是,当多个AP被变化时,此方法将失效。
2. Wi-Fi指纹变化实验研究
2.1 实验设置
本文在两个真实场景中进行了超过6个月的长期测量。一个场景是校园里的办公楼,另一个是商场。平面图如图1所示。本文所提出的指纹变化检测系统的采集功能基于Android应用程序来实现,本次实验的智能手机是华为Note9。在每个参考点(标记为红点)收集指纹时长为60秒,指纹数据库是由一组指纹和它们对应的位置所组成。更多细节见4.1。
2.2 Wi-Fi指纹变化研究
根据本文的研究结果,指纹变化分为三类:扰动、消失和新增的Wi-Fi RSS。
Wi-Fi RSS扰动。Wi-Fi RSS的扰动是指RSS值的微小变化,这种变化是由AP功率调整、AP小范围移动和环境变化(如隔墙、装修变化)引起的。图2为该商场6个月内两次实验的AP信号热图。观察可得,原始RSS的最大值小于-60dBm,但在6个月后增加到-40dBm左右。类似的现象在其他AP中也很常见。
Wi-Fi RSS消失和新增。一部分显示为新增的Wi-Fi RSS,而一部分Wi-Fi RSS消失。这主要是由于旧AP的移除和新AP的到来造成的。本文比较了两次测量中收到的AP。从图3a可以看出,2年后指纹数据库中存在的82个AP消失,新出现了63个AP。6个月后,只有68个AP仍然存在。如图3b所示,在商场中,指纹数据库中收到的AP在6个月后消失了291个,新出现了123个。
2.3 Wi-Fi指纹变化对定位精度的影响
为了研究指纹变化对定位精度的影响,本文对两种场景的定位精度进行了评估,并在不更新指纹数据库的情况下,6个多月后重新進行了评估。为简单起见,选择经典的Wi-Fi指纹定位系统RADAR作为实验的定位算法。结果如图4所示。从图中可以看出,指纹变化会导致平均误差距离显著增加。其中,办公楼的平均误差距离从1.3m增加到5.5m,商场的平均误差从5.0m增加到7.5m。因此,大量试验充分证明及时有效地检测和更新指纹的必要性。
3. 系统设计
为了准确、高效地实现指纹变化检测,本文设计了一种新的指纹变化检测系统,该系统可以增量部署在Wi-Fi指纹定位系统上。利用指纹变化检测系统可以实时构建指纹变化强度分布图,从而实现指纹数据库的及时更新。
3.1 指纹变化检测系统概述
指纹变化检测系统框架如图5所示,由离线训练阶段和在线检测阶段两个阶段组成。在离线训练阶段,训练一个AReDGAN模型来减少输入变化指纹产生的改变。在在线检测阶段,AReDGAN生成对抗网络利用在线采集的变化指纹重构为原始指纹。然后,利用重构指纹构建指纹变化强度图。
3.2 AReDGAN
Wi-Fi指纹x=(rss1,rss2,…,rssN)其中rssi∈[0,1]为第i个AP的归一化的RSS值,N为AP的总数。y表示指纹的位置,指纹数据库由多对(x,y)组成。原始指纹x的变化指纹记为x'。
AReDGAN的目标是将变化指纹x'重构为伪原始指纹x'。利用重构后的伪原始指纹构造指纹变化强度图。
为了降低变化指纹的变化带来的影响,使用生成对抗网络学习对抗学习原始指纹和变化指纹之间的关系。生成对抗网络是由一个编码器E(·)、一个生成器G(·)和一个鉴别器D(·)组成。各模块均采用卷积神经网络CNN进行构建。
a)降噪自编码:编码器E(·)和生成器G(·)组成一个降噪自编码器。其中编码器E(·)的作用是将变化指纹编码为潜在特征,生成器G(·)的作用是根据潜在特征重构原始指纹。
b)生成对抗网络:生成器G(·)和鉴别器D(·)组成生成对抗网络。为了驱使生成器G(·)生成的虚假原始指纹逼近真实原始指纹,引入鉴别器D(·)对真假样本进行判断。而与之对抗的生成器G(·)则试图混淆鉴别器的判断,尽可能使生成样本在真实样本中以假乱真。
c)指纹变化仿真模拟:为了处理Wi-Fi指纹的各种变化,本文引入指纹变化仿真模拟过程,用原始指纹x生成虚拟变化指纹x。根据2.2中指纹变化的过程,设计了指纹变化的四个子流程:
Wi-Fi RSS扰动。为了模拟Wi-Fi RSS值随时间的变化,从正态分布中随机采样噪声随机添加到原始指纹中。
Wi-Fi RSS消失。为了模拟某些Wi-Fi RSS消失,将现有AP的RSS值随机丢弃。AP消失的概率是从均匀分布中抽样的随机值。
Wi-Fi RSS新增。为了模拟某些Wi-Fi RSS的新增,将RSS值随机添加到原始指纹中不存在AP RSS的位置。添加RSS值的AP位置概率是从均匀分布中抽样的随机值,而添加的RSS值是满足正态分布。
Wi-Fi RSS裁剪。经过以上三个过程处理后,由于Wi-Fi RSS扰动或新增,RSS值可能会超出标准范围。因此,应用裁剪函数对仿真变化指纹的RSS值进行裁剪。
根据指纹变化仿真模拟仿真设计,原始指纹通过一系列的变换得到的虚拟变换指纹可以是多种多样的,可以覆盖大部分指纹变化的可能性。
d)训练过程:在离线训练阶段,使用定位系统指纹数据库中的原始指纹训练AReDGAN模型。原始指纹x被用来生成虚拟变换指纹x,然后利用生成对抗网络将其重构为x。AReDGAN模型的损失函数为对抗损失,如下所示。
L=Εx~Px[‖x-x‖+logD(x)+log(1-D(x))]
其中,Px表示真实原始指纹的分布;‖x-x‖是AReDGAN中的降噪自编码器的重建损失,logD(x)+log(1-D(x))是生成对抗网络的对抗损失。通过生成器和鉴别器的对抗训练过程,使得生成的伪原始指纹更接近原始指纹。
e)指纹重构:在线检测阶段,AReDGAN生成对抗网络使用在线采集的变化指纹x'重构伪原始指纹。将重构指纹x'=G(E(x'))视为原始指纹的近似值,并将其用于构建指纹变化强度图。
3.3 指纹变化强度分布图的构建
为了实现高效地指纹更新,指纹变化检测系统构建指纹变化强度图以实时描述指纹变化的强度分布。构建指纹变化强度图的步骤如下:
指纹变化强度估计:给定变化指纹x'和重构指纹x',使用x'和x'之间的均方根误差(RMSE ,Root Mean Squared Error)计算估计指纹变化强度。
RMSE=∑(rssi'-rssi')2
指纹变化位置估计:给定变化指纹x'和重构指纹x'。由于变化,变化指纹x'估计的位置不准确。因此,使用重构指纹x'的估计位置作为变化指纹的位置。
指纹变化强度图的构建:根据估计的指纹变化强度和指纹变化的位置,绘制指纹变化强度的分布图,其中不同颜色的深浅表示不同位置上指纹变化的强度。
4. 实验与性能评价
在本节中,本文使用实际部署和模拟的数据来评估指纹变化检测系统。
4.1 实验设置
a)模型实现:降噪自编码器是由一个编码器E(·)和一个生成器G(·)组成。其中编码器E(·)是将变化指纹编码为潜在特征,考虑到CNN在特征提取方面表现突出,所以编码器E(·)采用卷积神经网络CNN。网络结构如图6所示。
生成器G(·)与编码器E(·)是互逆的过程,E(·)将特征进行压缩,G(·)将潜在空间特征进行解压缩,所以G(·)选择与CNN互逆的网络DCNN。网络结构如图7所示。本文使用ReLU作为激活函数,使用Adam作为优化器。
鉴别器D(·)同样采用卷积神经网络CNN,增加谱归一化(Spectral Normalization)以满足Lipschitz约束。其网络结构如图8所示。
b)实验场景:本文在办公楼和商场进行了广泛的实验。平面图如图9所示。测试区总规模超过8400m2,其中商场部署APs超过1000台,办公楼部署APs超过100台。此外,本文在首次测量后的几个月内收集了指纹数据库,为分析指纹变化提供了基础真实数据。图10a和10b中的点为参考点,在地板上均匀分布。试验点与参考点不相交,且在楼板上分布均匀。在每个参考点采集指纹60s,用于AReDGAN的训练。在每个测试点采集指纹5s,用于测试。其中采样率均为5Hz。
4.2 AReDGAN重构伪原始指纹的准确性
首先通过实验评估AReDGAN重构为原始指纹的能力。利用重构的伪原始指纹与原始指纹的均方根误差RMSE验证重构指纹的准确性。利用在测试点上采集的变化指纹,借助AReDGAN生成對抗网络对其进行重构为伪原始指纹。作为对比,计算变化指纹和原始指纹之间均方根误差RMSE,验证AReDGAN模型降低指纹变化强度的能力。结果如图11所示,以办公楼为例,可以看到,大多数变化指纹与原始指纹之间的均方根误差在10-15dBm范围。重构后,均方根误差降至4~10dBm。在商场,RMSE的中位数从5.8dBm降低到3.9dBm。因此,AReDGAN可以减少指纹变化强度,重构后的伪原始指纹比变化指纹更接近原始指纹。
为了验证AReDGAN是否具有适应不同程度的指纹变化的能力,本文还进行了模拟实验,生成了弱、中、强三种不同变化程度的虚拟变化指纹,结果如表1、表2所示。由表可知,在不同程度的指纹变化下,经过AReDGAN自编码器重构后,重构的伪原始指纹与原始指纹的RMSE误差小于变化指纹与原始指纹的RMSE误差。随着指纹变化强度的急剧增加,重构的伪原始指纹与原始指纹的RMSE误差增加缓慢,说明AReDGAN更容易对变化程度强烈的指纹进行重构。因此,AReDGAN模型可以适应不同程度的变化指纹,特别是变化程度强烈的指纹。
4.3 指纹变化强度图构建的性能研究
接下来,评估指纹变化强度图构建的性能。使用六个月后采集的测试点上的变化指纹构建指纹变化强度图。
办公楼和商场中预测的指纹变化强度图和实际的指纹变化强度图如图12和图13所示。从总体上看,预测的指纹变化强度图能较准确地反映指纹变化的分布。
由辦公楼的预测指纹变化强度图显示,楼层中间靠右侧的变化程度较强,楼层两侧的变化程度较弱。实际的指纹变化强度图与预测指纹变化强度图具有一致的指纹变化趋势。虽然局部细节存在细微差异,预测指纹变化强度最大值略小于实际指纹变化强度值,但不影响对指纹变化分布的判断。在商场中,预测指纹变化强度图显示,左侧楼层的指纹变化程度较强,右侧楼层的指纹变化程度较弱。实际指纹变化强度图与其具有相同的分布。
因此,指纹变化检测系统可以为给定的变化指纹提供准确的指纹变化强度图。基于准确的指纹变化强度图,可以对部分区域进行准确的指纹更新,避免弱变化时的不必要更新和强变化时的不及时更新。
为了进一步评估指纹变化强度图的性能,分别评估用于构建指纹变化强度图的参数:指纹变化强度估计和指纹变化位置估计。
指纹变化强度估计。指纹变化强度的真实值定义为相同位置上原始指纹和变化指纹的RMSE误差,指纹变化强度的估算值则为重构的伪原始指纹和原始指纹的RMSE误差。计算两者的误差,可以反映指纹变化强度估计的准确性,结果如图12所示。在办公楼和商场两种场景下,指纹变化强度的平均误差约为1.5dBm。因此,指纹变化检测系统能够相当准确地估计指纹变化强度。
指纹变化位置估计。为了评估指纹变化位置估计的准确性,计算估计的指纹变化位置与真实位置之间的误差距离,结果如图13所示。在办公楼和商场两种场景下指纹变化位置的估算平均误差距离分别约为3.4m和7.1m,考虑到两种场景的不同规模,指纹变化检测系统的误差较小。因此,指纹变化位置估计的准确性足以构建指纹变化强度图。
5. 结束语
本文利用Wi-Fi指纹定位系统中易于获得的众包Wi-Fi RSS测量值提出了一种新的指纹变化检测系统,在线检测Wi-Fi指纹变化。利用生成对抗网络AReDGAN,将变化指纹重构为伪原始指纹。在其基础上提出指纹变化检测系统,通过众包的方式实时在线构建指纹变化强度图,以指引指纹更新的时间和地点。通过大量实验验证了指纹变化强度图的准确性。在未来的工作中,可以利用指纹变化检测系统的优点,设计基于指纹变化检测系统的Wi-Fi指纹数据库更新系统。
参考文献:
[1]S. He and S.-H. G. Chan, “Wi-fi fingerprint-based indoor positioning: Recent advances and comparisons,” IEEE Communications Surveys &Tutorials, vol. 18, no. 1, pp. 466–490, 2015.
[2]N. Alikhani, V. Moghtadaiee, and S. A. Ghorashi, “Fingerprinting based indoor localization considering the dynamic nature of wi-fi signals,” Springer Wireless Personal Communications, pp. 1–20, 2020
[3]J. Torres-Sospedra, P. Richter, G. Mendoza-Silva, E. S. Lohan, and J. Huerta, “Characterising the alteration in the ap distribution with the rss distance and the position estimates,” in 2018 International Conference on Indoor Positioning and Indoor Navigation (IPIN), 2018, pp. 1–8
[4]S. He, W. Lin, and S.-H. G. Chan, “Indoor localization and automatic fingerprint update with altered ap signals,” IEEE Transactions on Mobile Computing, vol. 16, no. 7, pp. 1897–1910, 2016.
[5]K. Chang and D. Han, “Crowdsourcing-based radio map update auto-mation for wi-fi positioning systems,” in Proceedings of the 3rd ACM SIGSPATIAL International Workshop on Crowdsourced and Volun-teered Geographic Information, 2014, pp. 24–31.
[6]D. Taniuchi and T. Maekawa, “Automatic update of indoor location fingerprints with pedestrian dead reckoning,” ACM Transactions on Embedded Computing Systems (TECS), vol. 14, no. 2, pp. 1–23, 2015.
[7]P. Vincent, H. Larochelle, Y. Bengio, and P.-A. Manzagol, “Extracting and composing robust features with denoising autoencoders,” in Pro-ceedings of the 25th international conference on Machine learning,2008, pp. 1096–1103.
[8]Bahl P, Padmanabhan V N. RADAR: An in-building RF-based user location and tracking system[C]//2000IEEE Conference on Computer Communications (INFOCOM). IEEE, 2000:775-784.
[9]I. Goodfellow, Y. Bengio, A. Courville, and Y. Bengio, Deep learn-ing.MIT press Cambridge, 2016, vol. 1.
[10]A.Paszke, S. Gross, S. Chintala, G. Chanan, E. Yang, Z. DeVito, Z. Lin, A. Desmaison, L. Antiga,and A.Lerer, “Automatic differentiation in pytorch,” in NIPS 2017 Workshop on Autodiff, 2017 [Online]. Avail-able:https://openreview.net/forum?id=BJJsrmfCZ
[11]D. P. Kingma and J. Ba, “Adam: A method for stochastic optimization,” in The International Conference on Learning Representations (ICLR), San Diego, USA, 2015.
[12]M. M. Atia, A. Noureldin, and M. J. Korenberg, “Dynamic online-calibrated radio maps for indoor positioning in wireless local area networks,” IEEE Transactions on Mobile Computing, vol. 12, no. 9, pp. 1774–1787, 2013.
[13]N. Ghourchian, M. Allegue-Martinez, and D. Precup, “Real-time indoor localization in smart homes using semi-supervised learning,” in TwentyNinth IAAI Conference, 2017.
[14]Goodfellow I, Pouget-Abadie J, Mirza M, et al. Generative adversarial networks[J]. Communications of the ACM,2020,63(11):139-144.
作者簡介:袁昊,上海浦东发展银行股份有限公司,助理工程师,天津大学硕士,主要研究方向为室内定位等;王剑锟,天津大学智能与计算学部,在读博士研究生,天津大学博士,主要研究方向为移动计算、室内定位、卫星定位导航等.