5.2 基于深度学习和先验状态的实时指纹室内定位
文献来源
Nabati M, Ghorashi S A. A real-time fingerprint-based indoor positioning using deep learning and preceding states[J]. Expert Systems with Applications, 2023, 213: 118889.(5.2_基于指纹的实时室内定位,使用深度学习和前一状态)
摘要
在基于指纹的定位方法中,接入点的接收信号强度(received signal strength, RSS)向量在参考点处测量并保存在数据库中。然后,将该数据集用于模式识别算法的训练阶段。几种类型的噪声会影响无线电信道中的信号,RSS值会相应被破坏。这些噪声可以通过RSS样本的平均来缓解。在实时应用中,用户在定位过程的在线阶段急于收集不相关的RSS样本来计算自己的平均值。针对这一问题,本文提出了一种解决方案,即利用离线阶段的RSS样本分布和在线阶段的用户先前状态。
在第一步中,提出了一种使用深度神经网络(DNN)的快速准确定位算法,以学习可用RSS样本的分布,而不是在离线阶段平均它们。然后,通过在线RSS样本与RPs指纹的相似度来估计用户的位置。接着,将深度神经网络模型与一种新的基于状态的定位方法相结合,以更准确地估计用户的位置。在基准数据集和自己收集的数据集上进行了大量的实验,在两种不同的场景下(在线阶段为每个用户提供单个RSS样本和多个RSS样本),验证了所提算法与深度神经网络回归、高斯过程回归、随机森林和加权KNN等传统回归算法相比的优越性。
1.前言
智能手机实时定位是一种新兴的基于位置服务技术。全球定位系统通过利用地球周围的卫星信号在满足人类需求的实时定位中起着决定性的作用(Khalajmehrabadi, Gatsis, & Akopian, 2017)。然而,这些信号无法穿透到室内环境。此外,它们还存在非视距(NLOS)误差,不适用于室内或恶劣的室外地区(Khalajmehrabadi, Gatsis, & Akopian, 2017; Nabati, Navidan, Shahbazian, Ghorashi和Windridge, 2020)。基于卫星的定位方法定期提取一些发射器和用户接收器之间的距离。然后,使用三角测量或三边测量方法估计用户的位置(Thomas & Ros, 2005;杨旭,赵玉田,刘悦,王海燕,2013)。发射器和接收器之间的距离可以通过到达角度、到达时间、到达时间差、到达相位或接收信号强度(RSS)获得(Zafari, Gkelias, & Leung, 2019)。这些方法也被称为基于测距的定位技术(Ghari, Shahbazian, & Ghorashi, 2019 ),可以在具有一些基站(BSs)的室内环境中就地实现。在这些方法中,RSS很容易捕获,因为它不需要发射器和接收器之间的同步时钟。然而,由于NLOS误差,所有这些基于测距的定位技术在室内区域都不能提供有希望的精度,即使它们是在本地实现的(Nabati, Ghorashi,& Shahbazian, 2021)。
针对基于测距的定位方法的不足,提出了基于指纹的定位方法。在该方法中,一些BSs部署在室内区域并共享无线电信号,其形式可以是Wi-Fi (Du, Yang, & Zhou, 2018)、蓝牙(Aranda, Parralejo, Álvarez, & Paredes, 2022)、ZigBee (Zheng et al., 2017)和射频识别(Ma, Tian, & Jiang, 2019)。在这些通信技术中,Wi-Fi BS(称为Wi-Fi接入点(AP))是最突出的一种,因为它在室内环境中无处不在(Hernández et al., 2021)。在部署ap后,需要执行两个不同的阶段来建立基于指纹的定位方法:离线(或训练)和在线(或测试)阶段(Bai, Luo, Yan, & Wan, 2021)。首先,在已知的参考点(reference point, RPs)位置获取多个ap的RSS或信道状态信息(channel state information, CSI),并将其存储在数据库中。通常,模式识别算法(PRA)在离线阶段进行训练,将输入信号的属性(CSI和/或RSS)转换到相应的位置。训练好的PRA算法在在线阶段利用接收到的信号属性估计用户的位置。
在第一步中,提出了一种使用深度神经网络(DNN)的快速准确定位算法,以学习可用RSS样本的分布,而不是在离线阶段平均它们。然后,通过在线RSS样本与RPs指纹的相似度来估计用户的位置。接着,将深度神经网络模型与一种新的基于状态的定位方法相结合,以更准确地估计用户的位置。在基准数据集和自己收集的数据集上进行了大量的实验,在两种不同的场景下(在线阶段为每个用户提供单个RSS样本和多个RSS样本),验证了所提算法与深度神经网络回归、高斯过程回归、随机森林和加权KNN等传统回归算法相比的优越性。
CSI作为指纹比RSS更稳定(王、高、毛,& Pandey,2017)。然而,它不能用典型的AP模式捕获,需要在发射机和接收机端使用特定的硬件和软件工具(Zafari等人,2019),而RSS即使使用现成的智能手机也可以轻松捕获。因此,RSS可以用于流行的实际应用和工业应用。然而,大尺度衰落(称为阴影)和小尺度衰落等多路径效应会深刻影响RSS (Zanella, 2016),并相应地影响基于RSS的定位精度(Prasad, Hossain, & Bhargava, 2018)。
CSI作为指纹比RSS更稳定(王、高、毛,& Pandey,2017)。然而,它不能用典型的AP模式捕获,需要在发射机和接收机端使用特定的硬件和软件工具(Zafari等人,2019),而RSS即使使用现成的智能手机也可以轻松捕获。因此,RSS可以用于流行的实际应用和工业应用。然而,大尺度衰落(称为阴影)和小尺度衰落等多路径效应会深刻影响RSS (Zanella, 2016),并相应地影响基于RSS的定位精度(Prasad, Hossain, & Bhargava, 2018)。
虽然在在线阶段无法使用现有的智能手机获取足够的RSS样本,但离线阶段的RSS样本可以帮助识别RSS观察的统计行为。本文提出了一种新的基于指纹的定位算法,该算法在训练过程中捕获RPs的RSS分布。同时,假设用户在在线阶段在区域内进行移动,利用基于状态的定位方法考虑用户先前的状态信息。首先使用深度神经网络(DNN)来学习RSS样本的分布,而不是直接将RSS空间转换到坐标空间。该DNN的输出是RSS样本与每个RP的相似度。换句话说,所提方法中的每个RP是一个类,其RSS样本是类观察。在线阶段,训练后的DNN估计用户RSS样本与每个RP的相似度。然后,通过不同RPs位置的加权平均来估计用户的位置,其中权值为训练后的DNN (similarity)的输出。该方法还被扩展用于在线阶段有足够RSS样本的情况。在考虑两种情况(单个RSS样本和在线阶段RSS样本充足)时,与两个不同数据集(一个开源数据集和一个我们自己收集的数据集)中的对应算法相比,该算法提高了定位的准确性。受此启发,本文将基于深度神经网络的定位方法与一种新的基于状态的定位算法相结合,以解决在线相位定位的局限性。
综上所述,本文的主要贡献如下:
•我们提出了一种基于DNN的定位算法,该算法考虑了离线阶段RSS样本在RP上的统计行为,并为我们提出的DNN模型提出了一个成本函数,以优化层的权重,尽可能地给予最近的RP更高的权重。
•提出了一种新的基于状态的定位方法,该方法利用用户之前的状态来提高位置估计精度。
•对所提出的定位算法进行了复杂度分析,并通过大量实验验证了所提出方法的鲁棒性。
本文的其余部分组织如下:第二节介绍了本文的相关工作。第3节对基于指纹的定位方法进行了初步介绍,并对传统的基于深度神经网络的定位模型进行了描述。在第4节中,我们解释了所提出的DNN,其中学习了每个RP处RSS样本的分布,然后将其与所提出的基于状态的定位方法相结合。第5节给出了实验结果,将提出的方法与同类方法进行比较。最后,第六部分对本文工作进行了总结。
在本文中,我们使用粗体大写字母表示矩阵或数组(如A),粗体小写字母表示向量(如a),使用小写字母表示标量(如a)
3.Preliminaries |准备工作
在本节中,我们介绍了离线和在线两个阶段基于RSS指纹定位的基本概念。然后,描述了传统的基于DNN的回归(DNNR)定位算法。这是必需的,因为我们稍后将把我们提出的DNN与该算法进行比较。

图1。整个基于指纹的RSS定位过程可分为①、②、③、④四个步骤。在①中,RSS样品是在几个ap的rp处采集的。然后,得到一个三维RSS数据集和两个位置向量,如式所示(1)、(2)所示。②将数据集交付给PRA进行训练。③,将在线RSS样本传递给训练后的PRA输入。最后,在④中,经过训练的PRA将接收到的RSS样本转换为位置。
3.1. 基于指纹的定位
地图构建是基于指纹定位方法的初始步骤,需要为环境的起源考虑一个参考位置,如图1所示。然后,在确定的坐标(称为RPs)上记录ap的RSS值。此外,在环境中不需要知道ap的位置,因为我们假设ap不移动,并且它们的RSS值是RPs的唯一指纹。RSS值和RPs位置分别作为PRAs的输入和输出。RSS通常在一个固定的点上测量几次。所有RPs的原始RSS数据集的结构可以用3D矩阵表示,如式(1)所示

3.2. 传统的基于DNN的定位


图3. 该模型的整体架构。训练DNN,为基于状态的定位找到最佳值,然后将其输入所提出方法的整个架构的步骤如数字1、2、3和4所示。队列结构缓冲区用于按先进先出的顺序馈送数据。

图4。两种不同ap的75个RSS样本在同一点连续100秒的典型波动。“平均RSS”是在𝑛th样本之前RSS样本的平均值,称为累积移动平均。
个样本之前RSS样本的平均值,称为累积移动平均值。

6 结论
提出了一种新的基于指纹的室内定位算法,该算法同时考虑了RSS样本数量单一和RSS样本数量充足两种情况,提高了定位精度。由于智能手机通常无法在短时间内捕获大量样本,因此有必要通过考虑每个用户的单个RSS样本来评估模型。然而,现有的工作大多没有考虑智能手机提供高采样率扫描Wi-Fi ap接收到的RSS值的局限性。
该方法将深度神经网络与基于状态的定位方法相结合,充分考虑了用户先前的状态。传统的基于深度神经网络的定位算法没有考虑RSS样本在每个RP点的统计行为,由两个输出节点直接估计用户的位置。所提DNN模型取得较高准确率的原因在于,在输出层考虑了每个RP的一个节点,并在优化过程中获得了每个RP处RSS样本的模式变化。
另一方面,基于状态的定位方法利用深度神经网络模型的RSS值和估计位置等先验状态信息,可以处理在线阶段限制。与其他贝叶斯方法(如卡尔曼滤波和粒子滤波)的主要区别在于它不需要额外的信息和硬件工具。在典型场景下,对所提定位方法的组合没有任何限制或限制。此外,该方法不需要额外的硬件或软件工具,具有通用性。在未来的工作中,假设移动设备可以在没有额外硬件需求的情况下捕获CSI数据,所提方法可以在CSI数据的基础上建立。
相关文章:
5.2 基于深度学习和先验状态的实时指纹室内定位
文献来源 Nabati M, Ghorashi S A. A real-time fingerprint-based indoor positioning using deep learning and preceding states[J]. Expert Systems with Applications, 2023, 213: 118889.(5.2_基于指纹的实时室内定位,使用深度学习和前一状态&…...
AIGC时代高效阅读论文实操
大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…...
对网站进行打点(不要有主动扫描行为)
什么是打点? 简单来说就是获取一个演习方服务器的控制权限。 目的: 1. 上传一个一句话木马 2. 挖到命令执行 3. 挖到反序列化漏洞 4. 钓鱼 假设对“千峰”网站进行打点: 1. 利用平台 1. 利用各类平台: 天眼查-商业查询平…...
502. IPO(贪心算法+优先队列/堆)
整体思想:在满足可用资金的情况下,选择其中利润最大的业务,直到选到k个业务为止,注意k可能比n大。 每次选择完一个业务,可用资金都会变动,这是可选择的业务也会变化,因此每次将可选择的业务放在…...
设计模式篇---中介者模式
文章目录 概念结构实例总结 概念 中介者模式:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 就好比世界各个国家之间可能会产生冲突,但是当产…...
双端Diff算法
双端Diff算法 双端Diff算法指的是,在新旧两组子节点的四个端点之间分别进行比较,并试图找到可复用的节点。相比简单Diff算法,双端Diff算法的优势在于,对于同样的更新场景,执行的DOM移动操作次数更少。 简单 Diff 算法…...
react+antd,Table表头文字颜色设置
1、创建一个自定义的TableHeaderCell组件,并设置其样式为红色 const CustomTableHeaderCell ({ children }) > (<th style{{ color: "red" }}>{children}</th> ); 2、将CustomTableHeaderCell组件传递到Table组件的columns属性中的titl…...
2024年1月18日Arxiv最热NLP大模型论文:Large Language Models Are Neurosymbolic Reasoners
大语言模型化身符号逻辑大师,AAAI 2024见证文本游戏新纪元 引言:文本游戏中的符号推理挑战 在人工智能的众多应用场景中,符号推理能力的重要性不言而喻。符号推理涉及对符号和逻辑规则的理解与应用,这对于处理现实世界中的符号性…...
服务限流实现方案
服务限流怎么做 限流算法 计数器 每个单位时间能通过的请求数固定,超过阈值直接拒绝。 通过维护一个单位时间内的计数器,每次请求计数器加1,当单位时间内计数器累加到大于设定的阈值,则之后的请求都被绝,直到单位时…...
【RTOS】快速体验FreeRTOS所有常用API(1)工程创建
目录 一、工程创建1.1 新建工程1.2 配置RCC1.3 配置SYS1.4 配置外设1)配置 LED PC132)配置 串口 UART13)配置 OLED I2C1 1.5 配置FreeRTOS1.6 工程设置1.7 生成代码1.8 keil设置下载&复位1.9 添加用户代码 快速体验FreeRTOS所有常用API&a…...
Red Hat Enterprise Linux 8.9 安装图解
风险告知 本人及本篇博文不为任何人及任何行为的任何风险承担责任,图解仅供参考,请悉知!本次安装图解是在一个全新的演示环境下进行的,演示环境中没有任何有价值的数据,但这并不代表摆在你面前的环境也是如此。生产环境…...
vcruntime140.dll文件修复的几种常见解决办法,vcruntime140.dll丢失的原因
vcruntime140.dll文件是Windows操作系统中的一个重要动态链接库(DLL)文件,它是Microsoft Visual C Redistributable的一部分。当出现vcruntime140.dll文件丢失的情况时,可能会导致一些程序无法正常运行或出现错误提示。为了电脑能…...
SpringCloud Alibaba 深入源码 - Nacos 分级存储模型、支撑百万服务注册压力、解决并发读写问题(CopyOnWrite)
目录 一、SpringCloudAlibaba 源码分析 1.1、SpringCloud & SpringCloudAlibaba 常用组件 1.2、Nacos的服务注册表结构是怎样的? 1.2.1、Nacos的分级存储模型(理论层) 1.2.2、Nacos 源码启动(准备工作) 1.2.…...
算法训练营Day45
#Java #动态规划 Feeling and experiences: 最长公共子序列:力扣题目链接 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 一个字符串的 子序列 是指这样一个新…...
【Redis漏洞利用总结】
前言 redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。Redis默认使用 6379 端口。 一、redis未授权访问漏洞 0x01 漏洞描述 描述: Redis是一套开源的使用ANSI C编写、支持网络、可基于内存…...
SPI 动态服务发现机制
SPI(Service Provier Interface)是一种服务发现机制,通过ClassPath下的META—INF/services文件查找文件,自动加载文件中定义的类,再调用forName加载; spi可以很灵活的让接口和实现分离, 让API提…...
【C++进阶07】哈希表and哈希桶
一、哈希概念 顺序结构以及平衡树中 元素关键码与存储位置没有对应关系 因此查找一个元素 必须经过关键码的多次比较 顺序查找时间复杂度为O(N) 平衡树中为树的高度,即O( l o g 2 N log_2 N log2N) 搜索效率 搜索过程中元素的比较次数 理想的搜索方法:…...
Go 语言实现冒泡排序算法的简单示例
以下是使用 Go 语言实现冒泡排序算法的简单示例: package mainimport "fmt"func bubbleSort(arr []int) {n : len(arr)for i : 0; i < n-1; i {for j : 0; j < n-i-1; j {if arr[j] > arr[j1] {// 交换元素arr[j], arr[j1] arr[j1], arr[j]}}}…...
JAVA 学习 面试(五)IO篇
BIO是阻塞I/O,NIO是非阻塞I/O,AIO是异步I/O。BIO每个连接对应一个线程,NIO多个连接共享少量线程,AIO允许应用程序异步地处理多个操作。NIO,通过Selector,只需要一个线程便可以管理多个客户端连接࿰…...
vue3相比vue2的效率提升
1、静态提升 2、预字符串化 3、缓存事件处理函数 4、Block Tree 5、PatchFlag 一、静态提升 在vue3中的app.vue文件如下: 在服务器中,template中的内容会变异成render渲染函数。 最终编译后的文件: 1.静态节点优化 那么这里为什么是两部分…...
Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...
江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命
在华东塑料包装行业面临限塑令深度调整的背景下,江苏艾立泰以一场跨国资源接力的创新实践,重新定义了绿色供应链的边界。 跨国回收网络:废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点,将海外废弃包装箱通过标准…...
Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器
第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
EasyRTC音视频实时通话功能在WebRTC与智能硬件整合中的应用与优势
一、WebRTC与智能硬件整合趋势 随着物联网和实时通信需求的爆发式增长,WebRTC作为开源实时通信技术,为浏览器与移动应用提供免插件的音视频通信能力,在智能硬件领域的融合应用已成必然趋势。智能硬件不再局限于单一功能,对实时…...
当下AI智能硬件方案浅谈
背景: 现在大模型出来以后,打破了常规的机械式的对话,人机对话变得更聪明一点。 对话用到的技术主要是实时音视频,简称为RTC。下游硬件厂商一般都不会去自己开发音视频技术,开发自己的大模型。商用方案多见为字节、百…...
数据挖掘是什么?数据挖掘技术有哪些?
目录 一、数据挖掘是什么 二、常见的数据挖掘技术 1. 关联规则挖掘 2. 分类算法 3. 聚类分析 4. 回归分析 三、数据挖掘的应用领域 1. 商业领域 2. 医疗领域 3. 金融领域 4. 其他领域 四、数据挖掘面临的挑战和未来趋势 1. 面临的挑战 2. 未来趋势 五、总结 数据…...
