CN107907858A - 一种基于传统加权k近邻技术的时间窗定位方法 - Google Patents
一种基于传统加权k近邻技术的时间窗定位方法 Download PDFInfo
- Publication number
- CN107907858A CN107907858A CN201711127623.5A CN201711127623A CN107907858A CN 107907858 A CN107907858 A CN 107907858A CN 201711127623 A CN201711127623 A CN 201711127623A CN 107907858 A CN107907858 A CN 107907858A
- Authority
- CN
- China
- Prior art keywords
- time window
- queue
- nearest neighbor
- data
- signal strength
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S5/00—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
- G01S5/02—Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
- G01S5/0252—Radio frequency fingerprinting
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
- Collating Specific Patterns (AREA)
Abstract
本发明公开了一种基于传统加权K近邻技术的时间窗定位方法,属于WiFi指纹定位系统中的时间窗定位方法。该方法先对信号强度数据按照传统加权K近邻技术进行计算,若判决于相同的位置点N次,则直接使用历史数据进行位置计算。和传统的加权K近邻技术相比,本发明避免了每次定位过程都需要与全部的指纹点数据进行比对,能够有效地提高计算速度。同时,传统的加权K近邻技术没有充分考虑到用户移动的惯性信息,而本发明倾向于选择用户之前N次相同定位的位置,提升了定位精度。
Description
技术领域
本发明涉及一种基于传统加权K近邻技术的时间窗定位方法,具体涉及一种WiFi指纹定位系统中的时间窗定位方法,属于无线指纹定位中的模式匹配技术领域。
背景技术
传统的无线指纹定位技术,于在线定位阶段一般采用模式匹配技术,寻找与输入数据最相近的指纹数据,常见的匹配技术包括最近邻技术(NN,Nearest Neighbour),K近邻技术(KNN,Kth Nearest Neighbour),加权K近邻技术(WKNN,Weight Kth NearestNeighbour)。其中,WKNN技术由于算法简单,定位效果良好,被广泛用于在现阶段定位匹配。
然而,传统的WKNN技术,对每一次定位请求,需要对比系统中全部的指纹点信息,并按照特定匹配规则计算出与输入数据最相近的指纹数据段。此种方式计算效率低下,同时忽略了待定位用户的位置连续性,导致计算缓慢,定位精度有待提升。唐洋等人(唐洋,白勇,马跃,蓝章礼,“基于WiFi的指纹匹配算法在室内定位中的应用研究”,计算机科学,pp.73-75,2016)提出了一种基于指纹簇的方式,极大地减少了定位所需时间,该方案设立特征指纹点,并通过层次搜索的方式,减少搜索次数,缺点是严重依赖于接入点的分布状态,同时没有考虑到历史位置信息,定位精度有待提升。
发明内容
本发明所要解决的技术问题是:提供一种基于传统加权K近邻技术的时间窗定位方法,改进了传统WKNN技术存在的问题,大幅提升计算效率,同时考虑历史位置信息,提升定位精度。
本发明为解决上述技术问题采用以下技术方案:
一种基于传统加权K近邻技术的时间窗定位方法,包括如下步骤:
步骤1,设置时间窗队列的长度以及噪声容忍限度thres,依次获取用户在各个方向的信号强度数据,并观察时间窗队列,若时间窗队列已满,则进入步骤2,否则进入步骤3;
步骤2,根据时间窗队列中存储的数据,更新各个方向上信号强度的最大、最小值,并将每个方向的最大信号强度值存储在数组rssiMax[N]中,将每个方向的最小信号强度值存储在数组rssiMin[N]中,其中,N为所有方向的个数;若对于第i个方向,用户在该方向的信号强度数据位于rssiMin[i]-thres与rssiMax[i]+thres之间,则进入步骤4,否则进入步骤3;
步骤3,根据步骤1获取的用户在各个方向的信号强度数据,采用传统加权K近邻定位算法计算定位结果,若该定位结果与时间窗队列中存储的定位结果不同,则进入步骤5,否则,将用户在各个方向的信号强度数据以及该定位结果组合后插入到时间窗队列的尾部,若插入后时间窗队列已满,则计算数组rssiMax[N]和rssiMin[N],并将计算的定位结果返回;
步骤4,弹出时间窗队列头部的第一组数据,根据步骤1获取的用户在各个方向的信号强度数据,采用传统加权K近邻定位算法计算定位结果,并将用户在各个方向的信号强度数据以及该定位结果组合后插入到时间窗队列的尾部,同时更新数组rssiMax[N]和rssiMin[N],并将计算的定位结果返回;
步骤5,清空时间窗队列、数组rssiMax[N]和rssiMin[N],将用户在各个方向的信号强度数据以及计算的定位结果组合后插入到时间窗队列中,并将计算的定位结果返回。
作为本发明的一个进一步方案,所述时间窗定位方法还包括步骤6,设置间隔时间,每过一个间隔时间,主动清空时间窗队列、数组rssiMax[N]和rssiMin[N]。
作为本发明的一个优选方案,所述间隔时间为10s。
作为本发明的一个优选方案,步骤1所述依次获取用户在各个方向的信号强度数据,若用户在某个方向上的信号强度数据未获取到,则将用户在该方向的信号强度数据默认置为-95。
作为本发明的一个优选方案,所述噪声容忍限度thres为5db。
本发明采用以上技术方案与现有技术相比,具有以下技术效果:
本发明通过使用历史位置信息而非全部指纹点数据进行定位,相比于传统的加权K近邻定位方案,既可以极大减少定位所需时间,同时提升了定位精度。
附图说明
图1是本发明基于传统加权K近邻技术的时间窗定位方法的流程图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本发明公开了一种WiFi指纹定位系统中的时间窗定位方法,先对信号强度数据按照传统加权K近邻技术进行计算,若判决于相同的位置点N次,则直接使用历史数据进行位置计算。和传统的加权K近邻技术相比,本发明避免了每次定位过程都需要与全部的指纹点数据进行比对,能够有效地提高计算速度。同时,传统的加权K近邻技术没有充分考虑到用户移动的惯性信息,而本发明倾向于选择用户之前N次相同定位的位置,提升了定位精度。
每次定位先观察队列,若队列不满,则使用传统的WKNN定位算法进行定位,如果WKNN算法新计算的定位结果与队列中其他数据的定位结果不同,则清空队列,并将新计算的结果插入队列,如果新计算的位置和队列中的其他位置都相同,将新计算的结果插入到队列尾。同时更新数组rssiMax,rssiMin上所有方向的最大信号强度和最小信号强度,对于一部分没有采集到终端信号的Ap,则将强度默认置为-95。当队列满时,新到的数据不再和指纹库中全部数据逐一对比,而是和rssiMin以及rssiMax中的数据进行比对,看自身在每个维度上的数据是否处于rssiMin-thres到rssiMax+thres之间,thres参数代表噪声容忍限度,如5db。如果不在容忍区间内,则重新进行WKNN定位,同时清空时间窗,包括清除队列和rssiMax,rssiMin信息,并将新输入数据和计算结果插入到rssiQueue队列上,如果在噪声容纳区间上,则去除队列头部的一个数据,并将新的数据入队,同时更新rssiMax和rssiMin数组。具体实施过程如图1所示:
步骤1:获取信号强度数据,观察队列rssiQueue,若队列满,进入步骤2,否则进入步骤3;
步骤2:设置噪声容纳范围thres,如果对于每一个方向i,新的信号强度数据都在rssiMin[i]-thres到rssiMax[i]+thres之间,则进入步骤4,否则进入步骤3;
步骤3:使用传统的WKNN定位算法进行定位,如果WKNN算法计算的定位结果与队列中其他数据的已有定位结果不同,进入步骤5,否则将信号强度数据、定位结果数据组合插入到队列尾,如果插入后队列满,计算rssiMax、rssiMin数组,并将计算结果返回;
步骤4:弹出队列头部的第一个数据,并将最新的定位数据插入到队列尾,同时更新rssiMax、rssiMin数组。将计算结果返回;
步骤5:清空rssiQueue队列,rssiMax与rssiMin数组。将新计算的结果插入到rssiQueue队列中,并返回计算结果。
另外,为了避免噪声积累,设置后台任务,每10s对rssiQueue队列,rssiMax与rssiMin数组进行一次主动清空。
下面以3个接入点(即3个方向)的情形为例,并假设时间窗队列rssiQueue的大小为5,噪声容限thres为5db。假设已经采集4次信号强度数据,根据传统WKNN算法,均定位于某个指纹点A。此时rssiQueue中存放的数据为[(-24,-56,-72,A),(-20,-61,-67,A),(-23,-52,-71,A),(-26,-50,-70,A)],rssiMax存放每个方向上的最大的信号强度值,rssiMin存放每个方向上最小的信号强度值,但此时队列不满,因此两个数组为空,当下一次请求为(-25,-60,-73)时,同时定位在指纹点A处,则rssiQueue中存放数据为[(-24,-56,-72,A),(-20,-61,-67,A),(-23,-52,-71,A),(-26,-50,-70,A),(-25,-60,-73,A)],同时rssiMax更新为[-20,-50,-67],rssiMin更新为[-26,-61,-73],此时队列数据满。当下一次到达数据为[-23,-52,-69]时,不再通过传统WKNN算法进行计算,而是比较新数据的每个方向的值是否位于rssiMin中每个方向的值减去thres和rssiMax中每个方向值加上thres之间,即[-31,-66.-78]与[-15,-45,-62]之间,由于新数据在两个数组之间,因此判定位于指纹点A,队列中第一个数据,并把新数据入队,此时队列中结果为[(-20,-61,-67,A),(-23,-52,-71.A),(-26,-50,-70,A),(-25,-60,-73,A),(-23,-52,-69,A)],同时更新rssiMax,rssiMin。此时rssiMax为[-20,-50,-67],rssiMin为[-26,-61,-73],此时若下一次接收数据为(-10,-80,-52),新数据不在rssiMin-thres与rssiMax+thres之间,清空队列和数组rssiMin,rssiMax。并使用WKNN算法计算指纹位置,发现位于指纹位置B,将新计算结果插入队列,此时rssiQueue中存放数据为[(-10,-80,-52,B)],此时队列不满,rssiMax与rssiMin为空,不更新。
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。
Claims (5)
1.一种基于传统加权K近邻技术的时间窗定位方法,其特征在于,包括如下步骤:
步骤1,设置时间窗队列的长度以及噪声容忍限度thres,依次获取用户在各个方向的信号强度数据,并观察时间窗队列,若时间窗队列已满,则进入步骤2,否则进入步骤3;
步骤2,根据时间窗队列中存储的数据,更新各个方向上信号强度的最大、最小值,并将每个方向的最大信号强度值存储在数组rssiMax[N]中,将每个方向的最小信号强度值存储在数组rssiMin[N]中,其中,N为所有方向的个数;若对于第i个方向,用户在该方向的信号强度数据位于rssiMin[i]-thres与rssiMax[i]+thres之间,则进入步骤4,否则进入步骤3;
步骤3,根据步骤1获取的用户在各个方向的信号强度数据,采用传统加权K近邻定位算法计算定位结果,若该定位结果与时间窗队列中存储的定位结果不同,则进入步骤5,否则,将用户在各个方向的信号强度数据以及该定位结果组合后插入到时间窗队列的尾部,若插入后时间窗队列已满,则计算数组rssiMax[N]和rssiMin[N],并将计算的定位结果返回;
步骤4,弹出时间窗队列头部的第一组数据,根据步骤1获取的用户在各个方向的信号强度数据,采用传统加权K近邻定位算法计算定位结果,并将用户在各个方向的信号强度数据以及该定位结果组合后插入到时间窗队列的尾部,同时更新数组rssiMax[N]和rssiMin[N],并将计算的定位结果返回;
步骤5,清空时间窗队列、数组rssiMax[N]和rssiMin[N],将用户在各个方向的信号强度数据以及计算的定位结果组合后插入到时间窗队列中,并将计算的定位结果返回。
2.根据权利要求1所述基于传统加权K近邻技术的时间窗定位方法,其特征在于,所述时间窗定位方法还包括步骤6,设置间隔时间,每过一个间隔时间,主动清空时间窗队列、数组rssiMax[N]和rssiMin[N]。
3.根据权利要求2所述基于传统加权K近邻技术的时间窗定位方法,其特征在于,所述间隔时间为10s。
4.根据权利要求1所述基于传统加权K近邻技术的时间窗定位方法,其特征在于,步骤1所述依次获取用户在各个方向的信号强度数据,若用户在某个方向上的信号强度数据未获取到,则将用户在该方向的信号强度数据默认置为-95。
5.根据权利要求1所述基于传统加权K近邻技术的时间窗定位方法,其特征在于,所述噪声容忍限度thres为5db。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711127623.5A CN107907858B (zh) | 2017-11-15 | 2017-11-15 | 一种基于传统加权k近邻技术的时间窗定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711127623.5A CN107907858B (zh) | 2017-11-15 | 2017-11-15 | 一种基于传统加权k近邻技术的时间窗定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107907858A true CN107907858A (zh) | 2018-04-13 |
CN107907858B CN107907858B (zh) | 2021-06-08 |
Family
ID=61845507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711127623.5A Active CN107907858B (zh) | 2017-11-15 | 2017-11-15 | 一种基于传统加权k近邻技术的时间窗定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107907858B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895867A (zh) * | 2010-06-25 | 2010-11-24 | 哈尔滨工业大学 | 基于滑动时间窗的wlan室内wknn跟踪方法 |
CN103927347A (zh) * | 2014-04-01 | 2014-07-16 | 复旦大学 | 一种基于用户行为模型和蚁群聚类的协同过滤推荐算法 |
CN104168599A (zh) * | 2014-07-07 | 2014-11-26 | 广东工业大学 | 基于时间加权k-近邻法的无线传感器网络故障诊断方法 |
CN104586402A (zh) * | 2015-01-22 | 2015-05-06 | 清华大学深圳研究生院 | 一种人体活动的特征提取方法 |
CN104853317A (zh) * | 2014-11-24 | 2015-08-19 | 北京航空航天大学 | 一种WiFi室内定位中指纹库的构建及更新方法 |
CN106060777A (zh) * | 2016-06-07 | 2016-10-26 | 宋磊 | 一种定位方法和系统 |
US20170123039A1 (en) * | 2015-10-29 | 2017-05-04 | Industrial Bank Of Korea | Ultra wideband (uwb)-based high precision positioning method and system |
-
2017
- 2017-11-15 CN CN201711127623.5A patent/CN107907858B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895867A (zh) * | 2010-06-25 | 2010-11-24 | 哈尔滨工业大学 | 基于滑动时间窗的wlan室内wknn跟踪方法 |
CN103927347A (zh) * | 2014-04-01 | 2014-07-16 | 复旦大学 | 一种基于用户行为模型和蚁群聚类的协同过滤推荐算法 |
CN104168599A (zh) * | 2014-07-07 | 2014-11-26 | 广东工业大学 | 基于时间加权k-近邻法的无线传感器网络故障诊断方法 |
CN104853317A (zh) * | 2014-11-24 | 2015-08-19 | 北京航空航天大学 | 一种WiFi室内定位中指纹库的构建及更新方法 |
CN104586402A (zh) * | 2015-01-22 | 2015-05-06 | 清华大学深圳研究生院 | 一种人体活动的特征提取方法 |
US20170123039A1 (en) * | 2015-10-29 | 2017-05-04 | Industrial Bank Of Korea | Ultra wideband (uwb)-based high precision positioning method and system |
CN106060777A (zh) * | 2016-06-07 | 2016-10-26 | 宋磊 | 一种定位方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107907858B (zh) | 2021-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105230063B (zh) | 网络优化的方法、网络优化的装置和网络优化的设备 | |
KR101113006B1 (ko) | 클러스터 간 상호정보를 이용한 클러스터링 장치 및 방법 | |
EP0412245A2 (en) | Cache memory | |
CN109709535B (zh) | 一种针对协同分布式系统的波束驻留调度方法 | |
US9122407B2 (en) | Deduplication device and deduplication method | |
Niño-Mora et al. | Sensor scheduling for hunting elusive hiding targets via Whittle's restless bandit index policy | |
CN103631933A (zh) | 一种面向分布式去重系统的数据路由方法 | |
CN108419249A (zh) | 三维无线传感器网络分簇覆盖方法、终端设备及存储介质 | |
CN109560972B (zh) | 一种Ad Hoc网络物理拓扑非协作式推断方法 | |
CN102760132B (zh) | 一种数据流频繁项挖掘方法和装置 | |
CN109688540B (zh) | 一种Ad Hoc网络物理拓扑非协作式推断系统 | |
CN107907858A (zh) | 一种基于传统加权k近邻技术的时间窗定位方法 | |
CN113313349B (zh) | 卫星任务资源匹配优化方法、装置、存储介质和电子设备 | |
CN109656730A (zh) | 一种访问缓存的方法和装置 | |
CN106293639A (zh) | 使用微分支目标缓冲器的高性能零气泡条件分支预测 | |
Navarro et al. | On sorting, heaps, and minimum spanning trees | |
CN107389071B (zh) | 一种改进的室内定位knn方法 | |
CN105787107B (zh) | 一种大数据冗余检测方法 | |
CN102436535A (zh) | 计算机辅助设计过程中创意拐点的识别方法及系统 | |
CN108984123A (zh) | 一种重复数据删除方法和装置 | |
EP2653971A1 (en) | Data management device, system, program, and method | |
CN108616964A (zh) | 一种用于在终端推荐无线接入点的方法、设备及介质 | |
CN114025017A (zh) | 基于深度循环强化学习的网络边缘缓存方法、装置及设备 | |
CN112529143A (zh) | 一种目标邻居学习粒子群优化方法 | |
CN101988964A (zh) | 高效二次雷达目标周期相关处理工作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |