基于梯度下降的离线定位方法与流程

文档序号:11861945阅读:249来源:国知局
基于梯度下降的离线定位方法与流程
本发明涉及通信、导航定位
技术领域
,具体地,涉及一种基于梯度下降的离线定位方法。
背景技术
:WiFi和BLE(低功耗蓝牙)目前是无线网络的重要组成部分。在家庭和公共场合,越来越多的WiFi热点出现在人们的智能设备里。BLE虽然至今未被普及,但是凭借着其低功耗的特点,将来的发展前景同样很好,在室内的定位方面有着广泛的应用。WiFi和BLE本身并不具备定位功能,但是通过收集室内各个WiFi和BLE的信号强度、传播时间等数据,理论上只需要三个接入点,通过信号的传输模型进行计算,得到与对应AP(无线访问接入点)的相对距离,应用传统的三角定位技术,就可以定位用户的位置。但是传统的离线定位算法存在两点问题:一是传统的三角定位算法,由于是采用通过得到的与AP的相对距离,再以各AP为圆心,相对距离为半径作圆,通过三圆的交点得到定位的位置。但是三个圆的交点并不是一定存在,同时在AP数目大于3的情况下传统的三点定位就不再有效。另一个不足之处在于,WiFi信号和BLE信号的传播受到环境的影响较大,比如在传播的路径上有人的经过,收到的RSSI值就会出现明显的变化。同时在同一个位置上的信号强度呈现高斯分布,信号强度的变化就会影响相对距离的计算,导致定位的误差。现在的离线定位技术并没有考虑到对于信号的波动的处理,仅仅是简单的直接对RSSI值进行计算,本发明对于离线定位算法进行了改进,先通过滤波器对于获得的RSSI值进行处理,滤去非正常变化的值,减少环境的干扰,再对于处理过的RSSI值使用梯度下降的算法进行定位,是一种有效的离线定位算法,有利于提高定位精度。技术实现要素:针对现有技术中的缺陷,本发明的目的是提供一种基于梯度下降的离线定位方法。本发明通过用户持续检测的RSSI值运用梯度滤波算法筛除异常值,再将筛选后的RSSI值转换为距离,运用梯度下降算法确定用户所在位置。根据本发明提供的一种基于梯度下降的离线定位方法,包括:步骤一,获取已确定的AP接入点的相对位置;步骤二,针对每一个AP接入点,用户持续测量自身所在位置处AP接入点的RSSI值,根据已测RSSI值序列得到各个时刻的RSSI预测值,将属于异常值的RSSI预测值筛除后更新已测RSSI值序列;步骤三,将用户新测量到的当前时刻各个AP接入点的RSSI测量值转换为距离向量;步骤四,根据距离向量得到定位位置。优选地,所述步骤二包括:将偏离第k时刻最终滤波值xk的程度超过阈值的第k时刻的RSSI预测值判定为异常值;其中,假设已测RSSI值序列x为x=[x0,x1,......,xn],则第k时刻最终滤波值xk及第k时刻的RSSI预测值的计算方式如下:xk=xk-+SIGN(xk-1-xk-)·σ(xk-1,xk-)]]>xk-=(▿(xn)t×Δt)+x0]]>▿(xn)t=1nΣk=1n▿(xk)t]]>▿(xk)t=▿xk▿tk]]>σ(xk-1,xk-)=12(xk-1-xk-)2]]>SIGN(xk-1-xk-)=-1,xk-1-xk-≥01,xk-1-xk-<0]]>其中,xk表示第k时刻最终滤波值,表示第k时刻的RSSI预测值,表示将xk-1与的差值代入sign函数,sign函数为符号函数,xk-1表示第k时刻的前一时刻最终滤波值,表示计算xk-1与的标准差,表示已测RSSI值序列x在单位时间t内的平均梯度,Δt表示第k时刻的RSSI预测值所在的时刻与x0所在时刻的差值,表示在单位时间t内相邻RSSI值之间的梯度,表示xk+1与xk的RSSI差值,表示xk+1与xk的时间差值。优选地,阈值为30%,若则判定第k时刻的RSSI预测值偏离第k时刻最终滤波值xk的程度超过阈值。优选地,所述步骤二中更新已测RSSI值序列的步骤包括:若第k时刻的RSSI预测值不是异常值,即第k时刻的RSSI预测值为正常值,则将第k时刻的RSSI预测值加入已测RSSI值序列x的队列开头位处,并将已测RSSI值序列x的队列末尾的元素出队;若第k时刻的RSSI预测值为异常值,则将第k时刻最终滤波值xk加入已测RSSI值序列x的队列开头处,并将已测RSSI值序列x的队列末尾的元素出队;其中,队列末尾的元素是指已测RSSI值序列x中对应时刻最早的元素。优选地,所述步骤三包括:计算用户自身所在位置与第i个AP接入点的距离ri:ri=10RSSI0i-RSSIi20·r0]]>其中,RSSI0i表示在第i个AP接入点的基准距离r0处测得的基准RSSI值,RSSIi表示用户自身所在位置处测量得到的当前时刻第i个AP接入点的RSSI测量值;i=1,2,……,m;m表示AP接入点的数量;得到距离向量r为r=[r0,r1,.....,rm]。优选地,所述步骤四包括:根据已确定的AP接入点的相对位置,确定相对于AP接入点的相对直角坐标系,并随机取一点θ,θ=(θ1,θ2),则点θ与各个AP接入点的距离为:hθ(x(i))=(θ1-x1(i))2+(θ2-x2(i))2]]>其中,hθ(x(i))表示点θ与第i个AP接入点的距离,θ1表示相对直角坐标系中点θ的横坐标,θ2表示相对直角坐标系中点θ的纵坐标,x1(i)表示相对直角坐标系中第i个AP接入点的横坐标,x2(i)表示相对直角坐标系中第i个AP接入点的纵坐标;持续改变当前点θ坐标(θ1,θ2),使点θ到各个AP接入点的距离与距离向量之间误差的平方和最小,计算公式为:J(θ)=12Σi=1m(hθ(x(i))-y(i))2minθJ(θ)]]>其中,J(θ)表示点θ到各个AP接入点的距离与距离向量r之间误差的平方和,y(i)表示当前时刻测得的与第i个接入点之间的距离向量;m表示AP接入点的数量;反复迭代以下公式,直到收敛或者迭代次数超过设定值后,将点θ作为定位位置:迭代后的θj等于迭代前的θj减∂∂θjJ(θ)=Σi=1m2×hθ(x(i))-y(i)hθ(x(i))×(θj-xj(i))j=1,2]]>其中,α为梯度下降的步长,θj表示相对直角坐标系中点θ的第j维坐标,表示相对直角坐标系中第i个AP接入点的第j维坐标。与现有技术相比,本发明具有如下的有益效果:本发明通过持续测量用户所在位置各个WiFi接入点的信号强度,运用梯度滤波算法对测量的RSS进行滤波处理,滤去非正常变化的RSSI值,再使用这些处理过的RSSI值应用梯度下降算法得到用户的位置,提高定位精度。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:图1为本发明所提供方法的步骤流程图。图2为本发明优选例中的原理示意图。具体实施方式下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。本发明提供了一种基于梯度下降的离线定位方法,包括如下步骤:系统通过本地数据库确定附近AP接入点(ACCESSPOINT)的相对位置;用户持续检测所在位置处各个AP接入点的RSSI(ReceivedSignalStrengthIndication接收的信号强度指示)值;系统根据梯度滤波算法筛除异常值;更新本地已测RSSI值数据库;根据各AP一定距离处的基准RSSI值,系统将当前RSSI值转换为距离向量;通过梯度下降算法确定当前最优位置,并将结果返回给用户。本算法在脱离在线数据库的情况下,通过筛除RSSI值波动带来的异常数据,利用梯度下降算法进行最优化处理,得到相对精确的定位效果。本实例基于梯度下降的离线定位方法,在用户无法连接网络,无法利用在线数据库的情况下,利用测量得到的RSSI值,通过一定的滤波算法来剔除其中因为波动而导致的异常数据,通过信号衰减公式得到距离,利用梯度下降算法进行最优化处理,得到定位位置,进一步减小定位误差,得到相对精确的定位效果。根据本发明提供的一种基于梯度下降的离线定位方法,包括:步骤一,获取已确定的AP接入点的相对位置;步骤二,针对每一个AP接入点,用户持续测量自身所在位置处AP接入点的RSSI值,根据已测RSSI值序列得到各个时刻的RSSI预测值,将属于异常值的RSSI预测值筛除后更新已测RSSI值序列;步骤三,将用户新测量到的当前时刻各个AP接入点的RSSI测量值转换为距离向量;步骤四,根据距离向量得到定位位置。所述步骤二包括:将偏离第k时刻最终滤波值xk的程度超过阈值的第k时刻的RSSI预测值判定为异常值;其中,假设已测RSSI值序列x为x=[x0,x1,......,xn],则第k时刻最终滤波值xk及第k时刻的RSSI预测值的计算方式如下:xk=xk-+SIGN(xk-1-xk-)·σ(xk-1,xk-)]]>xk-=(▿(xn)t×Δt)+x0]]>▿(xn)t=1nΣk=1n▿(xk)t]]>▿(xk)t=▿xk▿tk]]>σ(xk-1,xk-)=12(xk-1-xk-)2]]>SIGN(xk-1-xk-)=-1,xk-1-xk-≥01,xk-1-xk-<0]]>其中,xk表示第k时刻最终滤波值,表示第k时刻的RSSI预测值,表示将xk-1与的差值代入sign函数,sign函数为符号函数,xk-1表示第k时刻的前一时刻最终滤波值,表示计算xk-1与的标准差,表示已测RSSI值序列x在单位时间t内的平均梯度,Δt表示第k时刻的RSSI预测值所在的时刻与x0所在时刻的差值,表示在单位时间t内相邻RSSI值之间的梯度,表示xk+1与xk的RSSI差值,表示xk+1与xk的时间差值。阈值为30%,若则判定第k时刻的RSSI预测值偏离第k时刻最终滤波值xk的程度超过阈值。所述步骤二中更新已测RSSI值序列的步骤包括:若第k时刻的RSSI预测值不是异常值,即第k时刻的RSSI预测值为正常值,则将第k时刻的RSSI预测值加入已测RSSI值序列x的队列开头位处,并将已测RSSI值序列x的队列末尾的元素出队;若第k时刻的RSSI预测值为异常值,则将第k时刻最终滤波值xk加入已测RSSI值序列x的队列开头处,并将已测RSSI值序列x的队列末尾的元素出队;其中,队列末尾的元素是指已测RSSI值序列x中对应时刻最早的元素。例如,对于已测RSSI值序列x=[x0,x1,......,xn],则队列末尾的元素是x0。存储更新后的已测RSSI值序列用来判断下一次或下一时刻RSSI测量值是否是异常值。所述步骤三包括:计算用户自身所在位置与第i个AP接入点的距离ri:ri=10RSSI0i-RSSIi20·r0]]>其中,RSSI0i表示在第i个AP接入点的基准距离r0处测得的基准RSSI值,RSSIi表示用户自身所在位置处测量得到的当前时刻第i个AP接入点的RSSI测量值;i=1,2,……,m;m表示AP接入点的数量;得到距离向量r为r=[r0,r1,.....,rm]。所述步骤四包括:根据已确定的AP接入点的相对位置,确定相对于AP接入点的相对直角坐标系,并随机取一点θ,θ=(θ1,θ2),则点θ与各个AP接入点的距离为:hθ(x(i))=(θ1-x1(i))2+(θ2-x2(i))2]]>其中,hθ(x(i))表示点θ与第i个AP接入点的距离,θ1表示相对直角坐标系中点θ的横坐标,θ2表示相对直角坐标系中点θ的纵坐标,x1(i)表示相对直角坐标系中第i个AP接入点的横坐标,x2(i)表示相对直角坐标系中第i个AP接入点的纵坐标;持续改变点θ的位置,使点θ到各个AP接入点的距离与距离向量之间误差的平方和最小,计算公式为:J(θ)=12Σi=1m(hθ(x(i))-y(i))2minθJ(θ)]]>其中,J(θ)表示点θ到各个AP接入点的距离与距离向量r之间误差的平方和,y(i)表示当前时刻测得的与第i个接入点之间的距离向量;m表示AP接入点的数量;反复迭代以下公式,直到收敛或者迭代次数超过设定值后,将点θ作为定位位置:迭代后的θj等于迭代前的θj减∂∂θjJ(θ)=Σi=1m2×hθ(x(i))-y(i)hθ(x(i))×(θj-xj(i))j=1,2]]>其中,α为梯度下降的步长,θj表示相对直角坐标系中点θ的第j维坐标,表示相对直角坐标系中第i个AP接入点的第j维坐标。所述步骤一中,所述AP接入点的相对位置是在环境搭建中已经获得的确定的参数,在之后的步骤四中需要运用这些相对位置计算出用户所处的位置。所述步骤二中,用户通过手机上的软件持续检测各个AP接入点的信号强度,在固定的时间间隔(单位时间)之内对于每个AP接入点的RSSI值进行取样记录,并保存在本地中。每一次检测到的每一个的RSSI值都会滤去异常值,所述异常值是指周围环境变化引起的RSSI值非正常变化或者是RSS自身的波动。在一个优选的实施例中的环境参数:4m*4m的室内环境,布置了四个BLE设备,如图2为该定位系统的实验环境。本实验选择的是一段连续的空间。由于BLE设备信号的覆盖范围在四米左右,为了保证区域内每个点都能测得四个BLE设备的信号强度,同时满足通过离线定位的要求,将BLE设备布置间隔取为4m。移动终端设备:一部Android智能手机,型号为三星i9300,配置是1.4GHz三星Exynos4412cpu和1GRAM,手机的操作系统是android4.4。这部手机用来测试用户实际离线定位操作。BLE设备:富士康inFocus低功耗蓝牙本实施例包括如下具体步骤:步骤一、在所选定的区域中,合理布置定位所用的BLE蓝牙,记录它们的相对位置,建立合适的坐标系。然后,对每个蓝牙BLE在基准点r0(本次实例时为1m)处的RSSI值(约-95dB左右,每个BLE之间存在一定的差异)进行定标。步骤二、RSSI值的采样间隔为1s,在所选定的区域内,测试人员在初始位置,经过一段时间的初始数据的积累,以常规步速沿着一定的轨迹出发移动,这样手机终端会不停地测量各个蓝牙BLE反馈来的RSSI值。步骤三、预设进行滤波处理时存储在本地的RSSI数组容量为20(可进行人为调整),对步骤二测量得到的RSSI值进行梯度滤波处理,实时更新RSSI数组。步骤三、将经过滤波比对后的RSSI值代入衰减公式,计算出当前位置对于每个BLE的相对距离,得到x=[x0,x1,x2,x3]步骤四、利用梯度下降算法,将预估位置进行反复迭代,直到达到最优解或者迭代次数到达一定的上限。步骤五、得出用户所在位置,并将结果返回值用户端。以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1