一种基于支持向量回归和卡尔曼滤波相结合的室内定位方法与流程

文档序号:16590961发布日期:2019-01-14 19:06阅读:316来源:国知局
一种基于支持向量回归和卡尔曼滤波相结合的室内定位方法与流程

本发明属于室内定位技术领域,尤其涉及一种基于支持向量回归和卡尔曼滤波相结合的室内定位方法。



背景技术:

随着移动通信技术的快速发展,位置服务(lbs),一种基于位置和服务的技术应运而生,并迅速得到社区的广泛关注,这反映了其核心技术的重要性-定位。到目前为止,户外定位技术已相对成熟,专注于全球定位系统,如gps,glonass和北斗卫星导航定位系统,实现全天候实时定位。在室外gps定位技术的研究和利用方面,对室内定位技术的研究起步较晚,目前室内定位侧重于基于wlan信号强度的定位,利用现有室内接收信号强度(rss)信号与位置信息实现定位。目前,基于rss的室内定位算法大多采用位置指纹技术。与基于信号到达时间(toa)和到达角(aoa)的定位技术不同,指纹定位不需要任何额外的硬件来开发精确的时间同步或角度测量。它可以利用现有的无线网络基础设施,大大降低系统成本并实现广泛的适用性。位置指纹识别算法可分为两个阶段:离线和在线阶段。在离线阶段,需要选择多个参考点并在与多个接入点(ap)对应的每个参考点位置处收集rss,建立存储每个参考点位置和与rss对应的指纹的数据库。在在线阶段,有必要将终端实时测量中获得的rss与指纹数据中的rss进行比较,估计终端的位置。传统的在线匹配算法包括k最近邻(knn),支持向量机(svm)和概率分布。

在实时跟踪应用的情况下,系统应在短时间内计算用户的当前位置以实现实时,从而导致终端获得的信号强度的样本较少。此外,受周围环境不确定性的影响,信号可能在短时间内出现更大的波动。这两个因素会降低系统的定位精度。因此,直接用传统的定位算法计算用户的位置使得用户的位置以用户位置的大变化和不规则用户的移动位置和显着跳跃为特征,严重影响室内定位系统的性能和稳定性。

综上所述,现有技术存在的问题是:直接用传统的定位算法计算用户的位置使得用户的位置以用户位置的大变化和不规则用户的移动位置和显着跳跃为特征,严重影响室内定位系统的性能和稳定性。



技术实现要素:

针对现有技术存在的问题,本发明提供了一种基于支持向量回归和卡尔曼滤波相结合的室内定位方法。

本发明是这样实现的,一种基于支持向量回归和卡尔曼滤波相结合的室内定位方法,所述基于支持向量回归和卡尔曼滤波相结合的室内定位方法包括以下步骤:

采用支持向量回归svr进行初始定位;

采用卡尔曼滤波对定位结果进行滤波。

进一步,所述svr定位算法包括:

1)离线阶段:

在离线阶段,利用移动设备从预先选择的位置坐标的已知参考点处收集来自每个ap的rss信息的原始训练数据集;过滤后,将数据集作为输入条件,将svr用于监督学习,进行相应的位置预测模型;

2)在线阶段:

在在线阶段,利用移动设备在未知坐标的位置点处收集环境无线信号并获得rss数据集;通过类似于离线阶段的方式过滤数据集;在离线阶段制作的位置预测模型和在线阶段获得的rss数据集用于预测获得的rss数据集位置预测,并获得室内移动目标的位置坐标。

进一步,预测模型构建方法包括:

假设有n个ap定位系统中的n个参考点,移动设备在位置a接收的rss信息。是移动设备在a位置接收到的1号无线接入点的rss,是移动设备在a位置的位置坐标,是给定的数据集函数回归理论的目标是寻找映射f:r→l:取得f(si)≈li.映射关系属于非线性映射关系.基于支持向量机方法,在非线性方面,利用非线性函数φ(s)将输入空间r投影到高维特征空间r′中,利用线性函数拟合高维f中的数据集在高维特征空间中:

l=f(s)=wtφ(s)+b(1)

其中w∈r是权向量,b是偏置项;

根据统计理论,取下列目标函数(训练误差函数)求出最小值,得到w,b:

其中ε,λ为经验参数,|li-(wtφ(s)+b|ε称为ε不敏感损失函数,取值如下:

即,当预测值的误差小于ε时,将损失函数值取为0;否则,采用线性惩罚;

引入两个松弛变量ξi,ξ′i,,相当于以下优化;

参数ε表示系统对训练数据集误差的回归函数误差的要求,ε越小,回归函数对训练d的误差越小;ata集和得到的回归函数估计精度越高,支持向量越多;参数c是对训练数据集的惩罚;设定的回归估计函数误差大于ε,c越大,对这些数据集的惩罚就越大;

上述优化定义为下列拉格朗日函数:

当ξi,ξ′i,α,α′是拉格朗日乘数时,当它获得极值时,必须实现;

将上述三个公式化为公式,并引入基于svr理论的核函数k(si,sj),并利用wlofe对偶技术将其转化为相应的对偶运算;加强时间,实现:

因此,将相应的回归公式更改为以下公式:

进一步,卡尔曼滤波算法包括:

当目标模型足够精确,系统状态和参数不发生变异时,kalman滤波predi;

方程和观测方程

xk=φk,k-1xk-1+γk-1ωk-1

zk=hkxk+mkk≥1;

假设过程噪声和观测噪声为高斯白噪声,满足以下要求:e{wk}=0,e{mk}=0,cov(wk,wj)=qkδkj,cov(mk,mj)=rkδkj,cov(wkmj)=0,

初始条件:

卡尔曼滤波时间更新方程:

测量更新方程:

用户位置的二维模型定义如下:

其中xk,yk分别表示运动目标在x方向和y方向在二维平面上的位移,分别对应于x方向和y方向上的速度。

本发明的另一目的在于提供一种实现所述基于支持向量回归和卡尔曼滤波相结合的室内定位方法的计算机程序。

本发明的另一目的在于提供一种实现所述基于支持向量回归和卡尔曼滤波相结合的室内定位方法的信息数据处理终端。

本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的基于支持向量回归和卡尔曼滤波相结合的室内定位方法。

本发明的另一目的在于提供一种实现所述基于支持向量回归和卡尔曼滤波相结合的室内定位方法的基于支持向量回归和卡尔曼滤波相结合的室内定位系统

本发明的优点及积极效果为:

本发明采用svr实现室内定位,利用离线阶段信号滤波得到的数据进行训练,得到位置预测模型,用于估计在线阶段运动目标的位置坐标。为了使用户的位置规则,采用卡尔曼滤波对svr定位结果进行滤波和校正,并根据仿真环境和现实环境验证了算法的性质。实验结果表明,系统的定位精度和稳定性得到了提高。

附图说明

图1是本发明实施提供的基于支持向量回归和卡尔曼滤波相结合的室内定位方法流程图。

图2是本发明实施提供的仿真场景图。

图3是本发明实施提供的rmse的比较图。

图4是本发明实施提供的2米内误差百分比的比较图。

图5是本发明实施提供的cdf的比较图。

图6是本发明实施提供的逼真的场景图。

图7是本发明实施提供的rmse的比较图。

图8是本发明实施提供的比较2米内的误差百分比图。

图9是本发明实施提供的cdf的比较图。

图10是本发明实施提供的x坐标卡尔曼滤波模拟器图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

下面结合附图对本发明的应用原理作进一步描述。

如图1所示,本发明实施例提供的基于支持向量回归和卡尔曼滤波相结合的室内定位方法,包括以下步骤:

s101,采用支持向量回归(svr)进行初始定位;

s102,采用卡尔曼滤波对定位结果进行滤波,以提高定位系统的精度。

本发明提供的svr定位算法如下:

基于结构风险最小化理论,支持向量机(svm)学习机综合考虑学习功能vc维度和训练误差,寻求学习功能最小化实际风险,以提高学习机的泛化能力。它在非线性和高维模式识别方面具有多种独特优势。svm可分为支持向量分类(svc)和支持向量回归(svr)。svr函数回归已成功应用于系统辨识和非线性系统预测。

(1)svr定位包括离线和在线阶段:

1)离线阶段:

在离线阶段,有必要利用移动设备从预先选择的位置坐标的已知参考点处收集来自每个ap的rss信息的原始训练数据集。考虑到室内环境通常很复杂,目睹了不同因素对rss信号分布的显着影响,如墙壁反射和人行走,有必要对原始训练数据集进行过滤,以实现数据集的更高可靠性,并正确表征rss分布。室内无线环境。过滤后,将数据集作为输入条件,将svr用于监督学习,以实现相应的位置预测模型。

2)在线阶段:

在在线阶段,必须利用移动设备在未知坐标的位置点处收集环境无线信号并获得rss数据集。有必要通过类似于离线阶段的方式过滤数据集。在离线阶段制作的位置预测模型和在线阶段获得的rss数据集用于预测获得的rss数据集位置预测,并获得室内移动目标的位置坐标。

(2)位置预测模型

位置预测模型描述移动设备的物理位置及其与从相邻无线接入点接收的rss信息之间的关系。假设有n个ap定位系统中的n个参考点,移动设备在位置a接收的rss信息。是移动设备在a位置接收到的1号无线接入点的rss,是移动设备在a位置的位置坐标,是给定的数据集函数回归理论的目标是寻找映射f:r→l:取得f(si)≈li.映射关系属于非线性映射关系.基于支持向量机方法,在非线性方面,利用非线性函数φ(s)将输入空间r投影到高维特征空间r′中,利用线性函数拟合高维f中的数据集在高维特征空间中:

l=f(s)=wtφ(s)+b(1)

其中w∈r′是权向量,b是偏置项.

根据统计理论,取下列目标函数(训练误差函数)求出最小值,得到w,b:

其中ε,λ为经验参数,|li-(wtφ(s)+b)|ε称为ε不敏感损失函数,取值如下:

即,当预测值的误差小于ε时,将损失函数值取为0;否则,采用线性惩罚。

引入两个松弛变量ξi,ξ′i,,相当于以下优化,实现:

参数ε表示系统对训练数据集误差的回归函数误差的要求,ε越小,回归函数对训练d的误差越小。ata集和得到的回归函数估计精度越高,支持向量越多。参数c是对训练数据集的惩罚。设定的回归估计函数误差大于ε,c越大,对这些数据集的惩罚就越大。

上述优化可定义为下列拉格朗日函数:

当ξi,ξ′i,α,α′是拉格朗日乘数时,当它获得极值时,就必须实现。

将上述三个公式化为公式,并引入基于svr理论的核函数k(si,sj),并利用wlofe对偶技术将其转化为相应的对偶运算。加强时间,实现:

因此,可以将相应的回归公式更改为以下公式:

本发明采用径向基函数(rbf)核

本发明提供的卡尔曼滤波算法如下:

在实时定位系统中,需要在短时间内计算出用户的位置,通常存在信号量小、定位误差大的问题。本发明提出s卡尔曼滤波svr定位效果sk算法,以减少svr定位误差,提高定位精度。

卡尔曼滤波是一种有效的高斯过程最优滤波算法。当目标模型足够精确,

系统状态和参数不发生变异时,kalman滤波predi。方程和观测方程是:

xk=φk,k-1xk-1+γk-1ωk-1(8)

zk=hkxk+mkk≥1(9)

本发明假设过程噪声和观测噪声为高斯白噪声,满足以下要求:e{wk}=0,e{mk}=0,cov(wk,wj)=qkδkj,cov(mk,mj)=rkδkjcov(wkmj)=0,

初始条件:

卡尔曼滤波时间更新方程:

测量更新方程:

用户位置的二维模型定义如下:

其中xk,yk分别表示运动目标在x方向和y方向在二维平面上的位移,分别对应于x方向和y方向上的速度。

下面结合具体分析对本发明作进一步描述。

1、相关工作

已经提出了许多定位技术和应用。微软研究首先提出了基于wlan的室内定位系统radar,它将rss作为位置的字符参数,并使用k最近邻(knn)来实现位置匹配。在开放的室内环境中,系统可以获得2-3米的精度,使用70个非均匀放置至少2.5米的接入点,但在复杂的室内环境中精度并不理想。

2002年,horus系统对概率统计进行建模,并将rss高斯分布存储在无线电地图中。同时,首先提出了块群概念。与其他系统相比,该系统减少了计算复杂性并提高了定位精度。

ekahau是一个实时定位系统,它通过比较接收信号rss和无线电地图之间的差异来定位基于统计条件概率的终端位置。系统的定位精度可达到1米。

随着新的算法和新理论在wlan室内定位区域的应用,出现了许多先进的wlan定位系统。例如,基于j.j.的流形正则化提出了一种定位方法。潘等人[19]。利用标记位置坐标和未标记位置坐标的rss样本的系统不同于条件wlan室内位置系统。该方法是两步程序。第一步,通常是离线执行,是标记为rsssample的集合和处理部分,然后计算图拉普拉斯矩阵。最后,通过使用上述矩阵和流形学习理论进行训练,获得位置坐标的估计函数。第二步首先对未标记的在线rss数据进行预处理,通过将处理日期置于估计函数中获得位置结果。

2、svr定位算法

基于结构风险最小化理论,支持向量机(svm)学习机综合考虑学习功能vc维度和训练误差,寻求学习功能最小化实际风险,以提高学习机的泛化能力。它在非线性和高维模式识别方面具有多种独特优势。svm可分为支持向量分类(svc)和支持向量回归(svr)。svr函数回归已成功应用于系统辨识和非线性系统预测。

2.1svr定位包括离线和在线阶段:

1)离线阶段:

在离线阶段,有必要利用移动设备从预先选择的位置坐标的已知参考点处收集来自每个ap的rss信息的原始训练数据集。考虑到室内环境通常很复杂,目睹了不同因素对rss信号分布的显着影响,如墙壁反射和人行走,有必要对原始训练数据集进行过滤,以实现数据集的更高可靠性,并正确表征rss分布。室内无线环境。过滤后,将数据集作为输入条件,将svr用于监督学习,以实现相应的位置预测模型。

2)在线阶段:

在在线阶段,必须利用移动设备在未知坐标的位置点处收集环境无线信号并获得rss数据集。有必要通过类似于离线阶段的方式过滤数据集。在离线阶段制作的位置预测模型和在线阶段获得的rss数据集用于预测获得的rss数据集位置预测,并获得室内移动目标的位置坐标。

2.2位置预测模型

位置预测模型描述移动设备的物理位置及其与从相邻无线接入点接收的rss信息之间的关系。假设有n个ap定位系统中的n个参考点,移动设备在位置a接收的rss信息。是移动设备在a位置接收到的1号无线接入点的rss,是移动设备在a位置的位置坐标,是给定的数据集函数回归理论的目标是寻找映射f:r→l:取得f(si)≈li.映射关系属于非线性映射关系.基于支持向量机方法,在非线性方面,利用非线性函数φ(s)将输入空间r投影到高维特征空间r′中,利用线性函数拟合高维f中的数据集在高维特征空间中:

l=f(s)=wtφ(s)+b(1)

其中w∈r′是权向量,b是偏置项.

根据统计理论,取下列目标函数(训练误差函数)求出最小值,得到w,b:

其中ε,λ为经验参数,|li-(wtφ(s)+b|ε称为ε不敏感损失函数,取值如下:

即,当预测值的误差小于ε时,将损失函数值取为0;否则,采用线性惩罚。

引入两个松弛变量ξi,ξ′i,,相当于以下优化,实现:

参数ε表示系统对训练数据集误差的回归函数误差的要求,ε越小,回归函数对训练d的误差越小。ata集和得到的回归函数估计精度越高,支持向量越多。参数c是对训练数据集的惩罚。设定的回归估计函数误差大于ε,c越大,对这些数据集的惩罚就越大。

上述优化可定义为下列拉格朗日函数:

当ξi,ξ′i,α,α′是拉格朗日乘数时,当它获得极值时,就必须实现。

将上述三个公式化为公式,并引入基于svr理论的核函数k(si,sj),并利用wlofe对偶技术将其转化为相应的对偶运算。加强时间,实现:

因此,可以将相应的回归公式更改为以下公式:

本发明采用径向基函数(rbf)核

3、卡尔曼滤波算法

在实时定位系统中,需要在短时间内计算出用户的位置,通常存在信号量小、定位误差大的问题。本发明提出s卡尔曼滤波svr定位效果sk算法,以减少svr定位误差,提高定位精度。

卡尔曼滤波是一种有效的高斯过程最优滤波算法。当目标模型足够精确,

系统状态和参数不发生变异时,kalman滤波predi。方程和观测方程是:

xk=φk,k-1xk-1+γk-1ωk-1(8)

zk=hkxk+mkk≥1(9)

本发明假设过程噪声和观测噪声为高斯白噪声,满足以下要求:e{wk}=0,e{mk}=0,cov(wk,wj)=qkδkj,cov(mk,mj)=rkδkj,cov(wkmj)=0,

初始条件:

卡尔曼滤波时间更新方程:

测量更新方程:

用户位置的二维模型定义如下:

其中xk,yk分别表示运动目标在x方向和y方向在二维平面上的位移,分别对应于x方向和y方向上的速度。

4、实验结果与分析

本文以仿真场景和真实场景为基础,比较了所提出的sk算法和knn算法、svr算法、定位精度均方误差(rmse)和误差处理的性能。2米以内的累积分布函数。

4.1.模拟场景

4.1.1.仿真场景的建立:本文首先利用仿真环境对所提出的定位方法进行了详细的性能分析。定位区域为40m*40百万。周围分布12个接入点(ap)。总共1600个参照点;间距为1m。在此基础上,选取了200个测试点。仿真场景如图2所示。

采用以下模型计算在每个采样点位置接收到的每个ap的平均信号强度。

其中dap,p表示接入点api到采样点p之间的距离,pl(dap,p)表示从接入点到p位置的api信号的损耗平均值,pl(d0)表示在参考距离d0=1m处信号传输的路径损耗,信号损耗,α表示路径损耗co。有效的,pt代表接入点的发射功率,rssap,p表示在采样点p处接收到的信号强度。我是接入点。给出了基本参数。在表1中:

表1参数值

为了模拟真实的环境,在实验中,在每个测试点接收的平均信号强度加上具有平均值的高斯噪声(m=0和方差s=1)。

4.1.2.实验结果:

如图3所示,svr算法rmse明显优于knn算法,sk算法rmse优于svr算法,且随测试次数的增加而增加。点,knn算法rmse稳定在1.59m左右,svr算法rmse稳定在1.42m左右,sk算法rmse稳定在1.26m左右,分别低于svr和knn算法rmseb。约10%和17%。

图4显示了2m定位误差置信度,svr定位算法在属性上超过knn,sk定位在属性上超过svr。在200个测试点的情况下,k神经网络置信度为78%,svr置信度为88%。后者的比重比前者高出10%。sk置信度为94%,比svr重6%。总的来说,随着测试点的个数,每个算法的置信度概率是稳定的。

如图5所示,当误差距离在3米以内时,sk的置信概率超过knn和svr。此外,如果定位误差具有置信概率以80%以内的定位精度作为定位精度的指标,sk算法可以将80%以内的定位精度从knn算法的2米提高到1.5米,提高定位的准确性。领带增加了25%。

4.2真实场景

4.2.1.真实场景的建立:本论文的室内定位实验环境为实验楼4层,长50米,宽20米,小区13ap。相距约20米。试验区包括两边的走廊和大厅。实验现场取样路径如图6所示。图中的圆点代表参照点。战神代表测试点,箭头代表路径和方向。

离线阶段采用116个参考点,参考点间距为1米,每个参考点的采样时间为180秒,即每一个参考点。读取信号强度为180倍(终端信号强度扫描频率为一次/秒)。在在线实时跟踪阶段,采用60个测试点,每个测试点采样时间为。30秒,即每个测试点读取信号强度为30倍。

4.2.2.实验结果:

图7显示,随着测试点数的增加,各算法rmse稳定,sk在属性上优于knn和svr算法,svr略高于svr算法。属性中的hedknn。在60个测试点中,sk在rmse中比knn和svr分别低28%和16%。

图8显示了每种算法在2米范围内的定位误差置信概率随测试点数的增加而变化。svr算法明显优于knn算法nce概率sk算法在置信度上明显优于svr算法。在60个测试点的情况下,sk的置信度比knn的置信度高24%。就环境而言仿真结果表明,总体置信度降低,表明定位误差大于2米的定位结果随测试次数的增加而增大。反对现实的环境。

图9显示了每种算法对不同定位误差距离的置信概率。sk超过了其他两种算法。svr在属性上的总体权重略大于knn,es特别是在定位误差大于2米的情况下。与图4相比,所有算法的属性都是相同的。

图10显示svr定位结果经卡尔曼滤波处理后x坐标的变化。从图中可以看出,过滤可以显着地校正svr定位结果,使其模拟真实的x坐标,减小误差,说明卡尔曼算法能够平衡定位结果,使用户的位置移动规律。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1