New! View global litigation for patent families

KR101467317B1 - Method for determining the presence of positioning data error - Google Patents

Method for determining the presence of positioning data error Download PDF

Info

Publication number
KR101467317B1
KR101467317B1 KR20120103572A KR20120103572A KR101467317B1 KR 101467317 B1 KR101467317 B1 KR 101467317B1 KR 20120103572 A KR20120103572 A KR 20120103572A KR 20120103572 A KR20120103572 A KR 20120103572A KR 101467317 B1 KR101467317 B1 KR 101467317B1
Authority
KR
Grant status
Grant
Patent type
Prior art keywords
method
determining
presence
positioning
data
Prior art date
Application number
KR20120103572A
Other languages
Korean (ko)
Other versions
KR20130111161A (en )
Inventor
송하윤
Original Assignee
홍익대학교 산학협력단
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Grant date

Links

Images

Abstract

사용자 기기로부터 수집된 제1 위치 데이터의 오류여부를 결정하는 방법이 공개된다. The method of determining whether or not an error of the first position data collected from a user device is disclosed. 이 방법은 제1 위치 데이터 및 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 이용하여 제1 속력(V c )을 산출하는 단계, 및 제1 속력(V c )이 확률분포의 파라미터를 독립변수로 포함하는 미리 결정된 식을 만족하는 경우에는, 제1 위치 데이터에 오류가 있는 것으로 판단하는 단계를 포함한다. This method is independent of the parameters of the first position data and the step of calculating a first speed (V c), using the one or more position data of the past collecting from the user device, and the first speed (V c) the probability distribution if it meets the predetermined type, including a variable, and a second step of determining that there is an error in the first position data.

Description

위치 데이터의 오류여부 결정방법{Method for determining the presence of positioning data error} How to determine whether an error of the position data {Method for determining the presence of positioning data error}

본 발명은 사용자 기기에 의해 수집된 위치 데이터에 오류가 있는지 여부를 판단하기 위한 기술에 관한 것이다. The present invention relates to a technology for determining whether or not there is error in the position data collected by the user equipment.

GPS, GLONASS, Galileo와 같은 위치정보 시스템은 잘 알려져 있다. Location systems such as GPS, GLONASS, Galileo is well known. 뿐만 아니라, 기지국이나 크라우드 소스(crowd source)의 WIFI 위치 접근법을 이용하여 무선 통신망 포지셔닝을 수행할 수 있다. In addition, by using a WIFI base station or a position approaches the crowd source (crowd source) may perform a wireless communication network positioning. 그러므로 스마트폰이나 다른 휴대용 기기를 가진 사용자들은 위치 시스템 종류와 상관없이 현재의 위치를 얻을 수 있다. Therefore, users with smart phones or other handheld device can obtain the current location of the system, regardless of location types. 그러나 위치 정보 세트는 여러가지 이유로 에러를 가진 데이터를 가지고 있다. However, position information set may have data that has an error for various reasons. 애플사의 아이폰이나 삼성의 갤럭시를 이용할 때에 꽤 많은 에러가 있는 위치 정보를 경험할 수 있으며, 분명한 에러들을 필터링할 필요성이 존재한다. When using Apple's iPhone and Samsung's Galaxy can experience a location that is quite a lot of errors, there is a need to filter out obvious errors.

휴대용 기기의 최근 발전, 특히 GPS 또는 다른 위치검출 장치를 갖는 스마트폰의 도입으로 인해 인간 이동성에 근거한 다양한 위치기반 서비스가 가능하게 되었다. The introduction of a smart phone with a recent development, in particular GPS or other position detection apparatus according to the portable devices has become possible a variety of location-based services based on human mobility. 하지만 이러한 위치 정보는 가끔씩 작동환경에 따라 위치 에러들을 가지고 있다. However, such location information may have a position error, depending on the operating environment smoke. 그런 경우, 많은 기기들은 그러한 에러가 있는 위치 정보의 필터링을 필요로한다. In such cases, many devices require the filtering of location information such errors.

본 발명에서, 통계학적인 접근법을 바탕으로 상대적으로 간단하지만 효율적인 필터링 방법이 제안된다. In the present invention, based on a statistical approach it is relatively simple, but it is proposed an efficient filtering method.

본 명세서에서는 상대적으로 간단하지만 효과적인 필터링 방법을 통계적 접근 방법에 기반하여 제공한다. In this specification, relatively simple, but it provides an efficient filtering method based on a statistical approach. 이동 기기로부터 얻은 <위도, 경도, 시간>의 형식을 갖는 사용자의 이동 위치 데이터로부터, 사용자의 속도 및 가속도를 계산할 수 있다. From a user of the mobile position data having a format of <latitude, longitude, time> obtained from the mobile device, it is possible to calculate the user's speed and acceleration. 슬라이딩 윈도우 또는 이동(moving) 윈도우라는 아이디어를 이용하여, 사용자 위치 데이터의 속도와 가속도의 통계량을 계산할 수 있으며, 그 결과 제어가능한 파라미터를 이용하여 필터링을 수행할 수 있다. Using the idea of ​​a sliding window or a mobile (moving) the window, it is possible to calculate the statistic of the velocity and acceleration of the user position data, and as a result it is possible to use the control parameters do the filtering. 본 발명의 일 실시예에 따른 알고리듬은 간단하기 때문에 적은 계산 능력(computation power)을 갖는 이동 기기에도 적용할 수 있다. Algorithm according to one embodiment of the present invention is applicable to a mobile device having a small computational power (computation power) Because of its simplicity.

본 발명의 일 실시예에서는 성능의 향상을 위하여, 향상된 필터링을 위한 더 정교한 윈도우를 생성하는데 집중한다. In an embodiment of the present invention to improve the performance, and concentrated to produce a more sophisticated windows for enhanced filtering. 이동 윈도우를 더 정교하게 추정(estimation)하고, 에러가 있는 데이터를 적당한 추정값으로 교체하기 위해, 백트래킹(backtracking) 인터폴레이션 방법이 사용될 수 있다. Estimating a more elaborate translation window (estimation), and to replace the data with an error at a reasonable estimate can be used, backtracking (backtracking) interpolation method.

최근 이동 기기의 진보, 특히 GPS 또는 다른 위치검출 장치를 갖는 스마트폰의 도입으로 인해 인간 이동성에 근거한 다양한 위치 기반 서비스들이 가능해졌다. Recent advances in the mobile equipment, in particular the introduction of a smart phone having a GPS or other position detection apparatus made possible a variety of location-based services based on human mobility. 위치검출 시스템의 일 어플리케이션은 아래의 [2]에 나타낸 것과 같은 교육 분야를 포함할 수 있으며, 아래의 [1]에 나타낸 다양한 이동 기기들에서 쉽게 발견될 수 있다. One application of the position detecting system may also include training fields, such as that shown in [2] below, and may be easily found in a variety of mobile devices shown in [1] below. 그러나 이러한 위치검출 데이터는 종종 동작 환경에 따라 위치 에러를 갖는다. However, the position detection data often has a position error, depending on the operating environment. 이러한 경우에, 많은 어플리케이션들은 이러한 에러가 있는 위치 데이터의 필터링을 필요로한다. In such a case, many applications require the filtering of location data with such an error. 본 발명을 위한 실험에서 경험한 것처럼, 스마트폰 사용에 의해 수집한 위치정보의 12% 이상에 에러가 나타났다. As experience in the experiment for the present invention, had an error, more than 1.2% of the location information gathered by the smartphone. 이러한 기본적인 실험은 셀룰러 기지국의 위치를 내부적으로 사용하는 삼성 갤럭시 탭을 통한 스마트폰 어플리케이션의 사용과 휴대용 GPS 장치[3], 크라우드 소싱에 의한 WIFI 위치검출, 셀룰러 네트워크, 및 GPS의 조합을 사용하는 iOS5를 탑재한 애플 아이폰 3GS에 의해 이루어졌다[4]. This basic experiment iOS5 using a combination of the use of a smart phone application with Galaxy tab used internally by the location of the cellular base station and the portable GPS unit [3], WIFI position detection, the cellular network according to the crowd sourcing, and GPS by the Apple iPhone 3GS mount took place [4]. 좀 더 정교한 결과는 인간 이동 모델에 대한 연구들 및 '김'과 '송'의 논문[5]에서 찾을 수 있다. More sophisticated results can be found in the paper [5] studies and 'Kim' and 'Song' on human mobility model. 복잡계 시스템 물리학과 같은 다른 연구 분야에 따르면, 사람들은 그들이 빈번하게 방문한 장소와 경로를 선택하는 것 대신에 다음 목적지를 임의로 선택하는 것을 꺼린다. According to other research fields, such as physics and complex systems system, people are reluctant to randomly select the next destination, instead of selecting the place and route they visited frequently. 따라서 인간 이동의 93%까지 예측될 수 있다는 것이 밝혀졌다[6]. Therefore, it has been found that can be predicted to 93% of human movement [6]. 위치 정보의 세트들은 [5]에 나타난 바와 같이 인간 이동성 모델 구성을 위한 기반이 될 수 있다. A set of position information may be, as shown in [5] be the basis for the construction of human mobility model. 본 발명에서, 이동 윈도우 접근법의 사용과 함께 에러가 있는 위치 정보를 필터링하는 기술을 제안할 것이다. In the present invention, it will offer a technique for filtering the position information in error with the use of a moving window approach. 또한 알고리듬 설정을 위한 예비 실험과 함께 이동 윈도우를 사용하여 우리의 아이디어를 보여줄 것이다. It will show us the idea of ​​using a moving window with a preliminary test for the algorithm settings. 또한 필터링 알고리듬을 자세히 설명할 것이다. It will also detail the filtering algorithm. 또한 실험 디자인을 위한 사용자가 통제가능한 변수에 대하여 고려해야 할 사항 및 우리의 실험 결과를 보여줄 것이다. We will show you the details you need to consider with respect to the control variables, and our results for experimental design.

⇒[1]: Nicolae-Iulian Enescu, Dan Mancas, and Ecaterina-Irina Manole, ”Locating GPS Coordinates on PDA,” 8th WSEAS International Conference on APPLIED INFORMATICS AND COMMUNICATIONS (AIC08), Rhodes, Greece, August 20-22, 2008, pp.470-474. ⇒ [1]: Nicolae-Iulian Enescu, Dan Mancas, and Ecaterina-Irina Manole, "Locating GPS Coordinates on PDA," 8th WSEAS International Conference on APPLIED INFORMATICS AND COMMUNICATIONS (AIC08), Rhodes, Greece, August 20-22, 2008 , pp.470-474.

⇒[2]: Ph. ⇒ [2]: Ph. Ddondon, T. TSING, and F. Sandoval, ”Initiation to GPS localization and navigation using a small-scale model electric car: An illustration of learning by project for graduated students,” Proceedings of the 8th WSEAS International Conference on EDUCATION and EDUCATIONAL TECHNOLOGY, 2009, pp.21-26. Ddondon, T. TSING, and F. Sandoval, "Initiation to GPS localization and navigation using a small-scale model electric car: An illustration of learning by project for graduated students," Proceedings of the 8th WSEAS International Conference on EDUCATION and EDUCATIONAL TECHNOLOGY , 2009, pp.21-26.

⇒[3]: Garmin GPSMAP62s, https://buy.garmin.com/shop/shop.do?pID=63801 ⇒ [3]: Garmin GPSMAP62s, https://buy.garmin.com/shop/shop.do?pID=63801

⇒[4]: iOS 5: Understanding Location Services, Available: http://support.apple.com/kb/ht4995 ⇒ [4]: ​​iOS 5: Understanding Location Services, Available: http://support.apple.com/kb/ht4995

⇒[5]: Hyunuk Kim and Ha Yoon Song, ”Daily Life Mobility of A Student: From Position Data to Human Mobility Model through Expectation Maximization Clustering,” Communications in Computer and Information Science, Volume 263, December 2011, pp. ⇒ [5]: Hyunuk Kim and Ha Yoon Song, "Daily Life Mobility of A Student: From Position Data to Human Mobility Model through Expectation Maximization Clustering," Communications in Computer and Information Science, Volume 263, December 2011, pp. 88-97. 88-97.

⇒[6]: Marta C. Gonzalez and A. Hidalgo and Albert-Laszlo Barabasi, ”Understanding individual human mobility patterns,” Nature, vol. ⇒ [6]: Marta C. Gonzalez and A. Hidalgo and Albert-Laszlo Barabasi, "Understanding individual human mobility patterns," Nature, vol. 453, pp.779-782, 5 June 2008. 453, pp.779-782, 5 June 2008.

휴대용 기기들을 통해 <위도, 경도, 시간>의 형식으로 얻은 사용자의 휴대용 위치 정보를 통하여, 사용자의 속도와 가속도를 계산할 수 있다. Through the user of the mobile location information obtained in the form of a portable device through <latitude, longitude, time>, the user can calculate the speed and acceleration. 슬라이딩 윈도우 또는 이동 윈도우에 대한 아이디어로부터 사용자의 가속도와 속도의 통계를 계산할 수 있고, 컨트롤이 가능한 변수들을 이용하여 필터링을 수행할 수 있다. And from the idea of ​​the sliding window or moves the window to calculate the user's statistics of acceleration and speed, it is possible to use the control variables perform filtering. 본 발명의 일 실시예에 따른 알고리듬은 간단하기 때문에 저전력 휴대용 기기에 적용될 수 있다는 것을 예상할 수 있다. Algorithm according to one embodiment of the present invention can be expected that they can be applied to low-power portable equipment, because simple.

본 발명의 일 관점에 따른 위치 데이터의 오류여부 결정방법은, 사용자 기기로부터 수집된 제1 위치 데이터의 오류여부를 결정하는 방법이 공개된다. If the error of the position data determination method in accordance with one aspect of the invention, a method of determining whether or not an error of the first position data collected from a user device is disclosed. 이 방법은 제1 위치 데이터 및 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 이용하여 제1 속도(V c )를 산출하는 단계, 및 제1 속도(V c )가 확률분포의 파라미터를 독립변수로 포함하는 미리 결정된 식을 만족하는 경우에는, 제1 위치 데이터에 오류가 있는 것으로 판단하는 단계를 포함한다. This method is independent of the parameters of the probability distribution comprising the steps of: calculating a first speed (V c) by using the first position data and the one or more position data of the past collecting from the user device, and the first speed (V c) if it meets the predetermined type, including a variable, and a second step of determining that there is an error in the first position data.

본 발명에 따르면 상대적으로 간단하지만 통계학적인 접근법을 바탕으로 한 효율적인 필터링 방법이 제공된다. According to the invention there is provided a relatively simple but efficient filtering method based on a statistical approach.

도 1에은 수집된 위치에 관한 로-데이터(raw-data) 세트를 시각적으로 나타낸 것이다. In Figure 1 related to the collection position eeun - is a visual representation of data (raw-data) set.
도 2는 본 발명의 일 실시예에 따른 간단한 실험의 결과를 보여준다. Figure 2 shows the results of a simple experiment, according to an embodiment of the invention.
도 3은 본 발명의 일 실시예에 따른 교정 방식에 따른 윈도우 크기의 효과를 나타낸다. Figure 3 shows the effect of the window size in accordance with the correction method according to an embodiment of the present invention.
도 4는 본 발명의 일 실시예에 따른 진보된 필터링 알고리듬을 나타낸다. Figure 4 illustrates an advanced filter algorithm according to one embodiment of the present invention.
도 5는 본 발명의 일 실시예에 따른 진보된 다른 필터링 알고리듬을 나타낸다. Figure 5 shows another an advanced filter algorithm according to one embodiment of the present invention.
도 6은 본 발명의 일 실시예에 있어서, n=10 이고 s=0.34일 때의 필터링 결과를 나타낸다. Figure 6 according to one embodiment of the invention, n = 10 and indicates the result of the filtering, when s = 0.34 days.
도 7은 본 발명의 일 실시예에 있어서, n=10 이고 88% 신뢰구간의 필터링 결과를 나타낸다. Figure 7 according to one embodiment of the invention, n = 10 and represents the filtered result of the 88% confidence interval.
도 8은 본 발명의 일 실시예에 따른 [알고리듬 2]를 설명하기 위한 것이다. 8 is for explaining the [algorithm 2] according to one embodiment of the present invention.
도 9는 본 발명의 일 실시예에 따른 [알고리듬 2]를 설명하기 위한 다른 예를 나타낸 것이다. 9 illustrates another example for explaining the [algorithm 2] according to one embodiment of the present invention.
도 10은 본 발명의 일 실시예에 따른 [알고리듬 3]를 설명하기 위한 것이다. 10 is for explaining the [algorithm 3] in accordance with one embodiment of the present invention.
도 11은 본 발명의 다른 실시예에 따른 위치 데이터 오류 필터링 및 보정 방법을 설명하기 위한 것이다. 11 is for explaining the position data and error correction filtering process according to another embodiment of the present invention.

이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다. Described in detail below, embodiments of the invention with reference to the accompanying drawings as follows. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있는 것으로, 이하의 실시예는 본 발명의 개시가 완전하도록 하며, 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. However, the present invention is that the present invention is not limited to the embodiments set forth herein may be embodied in many different forms, the following examples are the scope of the invention to those of ordinary skill, and to complete the disclosure of the invention the will be provided to fully inform.

<위도, 경도, 시간>의 형식으로 수집된 사용자 위치는 한 세트의 사용자 이동 궤적(자취)을 형성하며, 이 튜플(tuple)에 식별 파라미터를 추가함으로써 사용자 이동성 데이터 세트를 나타낼 수 있다. <Latitude, longitude, time> the user's location in the form of collection forms a user movement locus (trace) of a set, by adding an identification parameter to the tuple (tuple) may represent a data set of user mobility. 본 명세서에서 시각 t에서의 하나의 튜플을 P t 라고 지칭하고, P t 의 위도 및 경도를 각각 lat t , lon t 라고 지칭할 수 있다. Referred to herein as a one tuple at a time t P t, and may refer to the latitude and longitude of P t as each t lat, lon t.

두 개의 연속적인 위치 데이터 튜플들로부터, Vincenty의 공식[7]에 따라, <lat i-1 ,lon i-1 >와 <lat i ,lon i >를 이용하여 시각 P i 에서의 이동거리 D i 를 계산할 수 있다. From two consecutive position data tuples, according to the formula [7] of Vincenty, <lat i-1, lon i-1> and <lat i, lon i> moving distance at time P i by using the D i the can be calculated. 물론, 두 개의 연속된 이동거리로부터 시각 P i 에서의 속도 Of course, the time from two successive speed movement distance of the P i V i 를 계산할 수 있고, 시각 P i 에서의 가속도 a i 를 계산할 수 있다. Can be calculated for V i, can be calculated for the acceleration a i at time P i. 그러므로 튜플 P t 는 부가적인 속성을 포함하는 <t, lat t , lon t , D t , a t >와 같은 코어 형식(core form)을 가질 수 있다. Therefore, the tuple t P may have a core type (core form), such as <t, t lat, lon t, D t, a t> to include additional properties.

⇒[7]: T. Vincenty, ”Direct and Inverse Solutions of Geodesics on the ellipsoid with Application of Nested Equations,” Survey Review, Volume 23, Number 176, April 1975 , pp. ⇒ [7]: T. Vincenty, "Direct and Inverse Solutions of Geodesics on the ellipsoid with Application of Nested Equations," Survey Review, Volume 23, Number 176, April 1975, pp. 88-93(6). 88-93 6.

실제 위치 데이터 세트에 의한 속도 값을 기초로, 일련의 속도 중 600m/s라는 하나의 오류를 찾을 수 있었는데, 이러한 값은 보통의 일상환경에서 무의미한 값이다. On the basis of the speed obtained from the actual position data set, was to find an error of 600m / s of the series of velocity, this value is an insignificant value in a normal daily environment. 따라서, 표 1에 나타낸 바와 같이, 보통의 인간 이동성의 최대 가능한 속도 값을 조사했다. Thus, as shown in Table 1, it investigated the possible maximum speed value of the normal human mobility. 표 1은 운송수단에 다른 최대속도를 나타낸 것이다. Table 1 shows the different maximum speed for the vehicle. 본 발명의 일 실시예를 위하여 최대속도 MAX speed 을 250m/s로 정의할 수 있다. It can be defined as the maximum speed MAX speed 250m / s to an embodiment of the present invention. 그러한 최대값은 즉시 도달될 수가 없다, 즉 가속도는 갑자기 만들어지지 않는다. Such maximum value can not be reached immediately, that is, the acceleration does not suddenly created. MAX speed 이외에도 MAX acceleration 이 정의될 수 있다. In addition to the MAX speed MAX acceleration can be defined.

Transportation Method Transportation Method Maximum speed (m/sec) Maximum speed (m / sec)
Ambulation Ambulation
Bicycle Bicycle
Automobile Automobile
Sports-Car Sports-Car
High-Speed Train High-Speed ​​Train
Air-plain Air-plain
3.00 3.00
33.33 33.33
92.78 92.78
244.44 244.44
159.67 159.67
528.00 528.00

다음 단계를 위해 우리는 속도의 이동평균(moving average of speed)과 속도의 이동표준편차(moving standard deviation of speed)라는 아이디어를 도입했다. For the next step, we have introduced the idea of ​​moving average (moving average of speed) and moving standard deviation of the speed (moving standard deviation of speed) of the speed. 우리는 현재 시각 t에서 속도의 이동평균(moving average of speed)인 MA speed (n)을 정의할 수 있는데, 여기서 n은 튜플의 집합인 {P x : t-n+1 ≤ x < t}의 과거 데이터의 수를 나타낸다. We may define the MA speed (n) is the current at time t speed movement of the average (moving average of speed), where n is a set of tuples of: {P x t-n + 1 ≤ x <t} It indicates the number of historical data. 비슷하게, 우리는 시각 t에서의 이동표준편차 MSD speed (n)을 정의할 수 있는데, 여기서 n은 과거 데이터의 수를 나타낸다. Similarly, we may define the moving standard deviation MSD speed (n) at time t, where n is a number of past data. 여기서, n은 대부분의 연구자들에 의해 '윈도우 크기'라는 이름으로 지칭된다. Here, n is referred to by the name of 'window size' by most researchers. 일단 우리가 새로운 튜플 P t 를 얻게되면, 우리는 V t 가 인간 이동성의 보통의 범위 안에 있는지를 결정할 수 있고, a t 에 대해서도 같은 과정이 적용될 수 있다. Once we get a new tuple P t, we have that V t can be determined whether in the normal range of human mobility, may be the same process to be applied even for a t. 일단 V t 가 평균값 MA speed (n)과 표준편차 MSD speed (n)의 정규분포(normal distribution)의 범위 밖에 존재하면, 우리는 P t 를 버릴 수 있고, 이 튜플은 일련의 인간 자취로부터 필터링될 수 있다. Once V t is when there is only a range of the normal distribution of the average value MA speed (n) and the standard deviation MSD speed (n) (normal distribution ), we can discard a P t, the tuple is to be filtered from a sequence of the human locus can. P t 를 필터링하는 조건은 수학식 1과 같다. Conditions to filter P t is equal to the equation (1).

[수학식 1] Equation 1

V t > MA speed (n)+ s * MSD speed (n) V t> MA speed (n) + s * MSD speed (n)

여기서 s는 필터링의 민감성 수준을 나타내며, 사용자가 통제 가능한 파라미터이다. Where s represents the sensitivity level of the filter, the user controlled parameters. 그렇지 않다면(즉, V t 가 수학식 1을 만족하지 않는다면), 우리는 일련의 유효한 위치 데이터에 튜플 P t 를 포함시키고, MA speed (n)와 MSD speed (n)을 다시 계산할 수 있다. If not (i.e., V t does not satisfy the equation (1)), we can include a tuple P t to a set of valid location data and, calculating MA speed (n) and the MSD speed (n) again. 이 계산은 비교적 간단해서 실시간으로 이루어질 수 있다. This calculation can be made by relatively simple in real time. 다시 말해서, 이 알고리듬은 스마트폰 또는 유사한 이동 기기와 같은 저전력용 장치에서 수행될 수 있다. In other words, the algorithm may be carried out in a low-power device for such as a smart phone or similar mobile device. 기존 연구는 보다 복잡한 통계적인 이론 [8]을 이용하는 유사한 작업을 포함하고 있지만, 이렇게 복잡한 방법은 실시간 환경에서는 도입되기 어렵다. Previous studies, but includes a more complex statistical theory similar to using a [8] work, so complex method is difficult to be introduced in the real-time environment. 이동 윈도우에 기반한 다른 어플리케이션의 예들은 [9]와 [10]에서 확인할 수 있다. Other examples of application based on the moving window can be found in [9] and [10].

⇒[8]: Woojoong Kim and Ha Yoon Song, ”Optimization Conditions of OCSVM for Erroneous GPS Data Filtering,” Communications in Computer and Information Science, Volume 263, December 2011, pp. ⇒ [8]: Woojoong Kim and Ha Yoon Song, "Optimization Conditions of OCSVM for Erroneous GPS Data Filtering," Communications in Computer and Information Science, Volume 263, December 2011, pp. 62-70. 62-70.

⇒[9]: Camelia Ucenic and Atsalakis George, ”A Neuro-fuzzy Approach to Forecast the Electricity Demand,” Proceedings of the 2006 IASME/WSEAS International Conference on Energy & Environmental Systems, Chalkida, Greece, May 8-10, 2006, pp.299-304. ⇒ [9]: Camelia Ucenic and Atsalakis George, "A Neuro-fuzzy Approach to Forecast the Electricity Demand," Proceedings of the 2006 IASME / WSEAS International Conference on Energy & Environmental Systems, Chalkida, Greece, May 8-10, 2006, pp.299-304.

⇒[10]: Wiphada Wettayaprasit, Nasith Laosen, and Salinla Chevakidagarn, ”Data Filtering Technique for Neural Networks Forecasting,” Proceedings of the 7th WSEAS International Conference on Simulation, Modelling and Optimization, Beijing, China, September 15-17, 2007, pp.225-230. ⇒ [10]: Wiphada Wettayaprasit, Nasith Laosen, and Salinla Chevakidagarn, "Data Filtering Technique for Neural Networks Forecasting," Proceedings of the 7th WSEAS International Conference on Simulation, Modelling and Optimization, Beijing, China, September 15-17, 2007, pp.225-230.

우리는 윈도우의 크기에 대한 영향을 알 수 있는 실험을 수행하였다. We performed experiments to know the impact on the size of the window. 이 실험을 위해, 20일 이상 동안 한국의 서울지역에서 수집된 한 세트의 위치데이터가 사용되었다. For this experiment, a set of location data gathered in Seoul in South Korea has been using for more than 20 days. 이 데이터는 위치정보 수집 어플리케이션을 가진 아이폰 3GS를 사용하여 수집되었다. The data were collected using an iPhone 3GS with the collected location information applications. 이하 본 명세서에서 이 정보를 '아이폰 데이터 세트'라고 부를 것이다. Hereinafter will be called the information in this specification as "iPhone data set. 아이폰의 위치변화를 감지할 때마다, 또는 아이폰이 정지 상태에 있다면 사용자가 정의한 매 간격(3에서 60초)마다, 어플리케이션이 위치정보를 기록할 수 있다. Whenever it detects a change in position of the iPhone, or iPhone can be recorded for each user-defined interval (3 to 60 seconds), the application location information, if the stop state. 지리적 지도(geographical map) 상에 다양한 기법을 이용하여 이 위치 데이터 세트를 표시하였다. Using a variety of techniques in the geographic map (geographical map) indicated the position data set. 다양한 기법 중, 위치 데이터 세트의 가시화를 위하여 구글 맵[11]을 선택하였다. For the visualization of the position data set of a variety of techniques selected the Google map [11].

⇒[11]: Google Maps API, Available: https://developers.google. ⇒ [11]: Google Maps API, Available: https://developers.google. com/maps/ com / maps /

도 1에 로-데이터(raw-data) 세트를 시각적으로 나타냈는데, 여기에는 에러가 있는 데이터가 포함되어 있다. Also in the first-naetneunde it receives data (raw-data) set in a visual, which contains the data in error. 주목할만한 현상 중에 하나는 iOS5가 3개의 서로 다른 방식에 따라 얻은 위치 데이터의 보고를 가끔 동시에 제공한다는 점이다. One of the noteworthy phenomenon is that iOS5 sometimes simultaneously provide the three separate reports on the position data obtained in accordance with other methods. 즉, 셀룰라 기지국의 위치, 크라우드 소스(crowd source) WIFI 위치검출, 및 GPS는 가끔 동시에 서로 다른 위치 데이터를 보고한다. In other words, the cellular base station location, crowd source (crowd source) WIFI position detection, and GPS is often at the same time looking at the different position data. 우리가 동시에 다수의 위치값들을 얻게되는 경우, 가장 작은 속도값을 가진 위치 정보가 경험적으로 맞는 것이었다. If we simultaneously obtain a plurality of position values, position information with the smallest rate value was empirical fit. 그러므로 필터링의 첫 단계에서는 같은 시간의 다수의 위치정보 중 이전의 위치에 대해 가장 작은 거리를 가진 위치 데이터를 단순히 고를 수 있다. It is therefore possible to simply pick the location data with the smallest distance for a previous one of the plurality of position information in the same time position in the first stage of the filter. 또한 데이터 세트들은 몇몇 개의 불연속적인 데이터 세트로 구성될 수 있다. In addition, data sets may be comprised of several different discrete data sets. 예를 들어, 위치 데이터 수집은 지하철에서는 불가능하며, 집안의 침대에서는 데이터를 수집할 필요가 없다. For example, the location data collection is not possible, and in the subway, in the family bed is not necessary to collect data. 지하철 차량으로 여행을 하는 동안 위치 데이터를 수집하는 것은 역사(station)에서만 가능하다. To collect location data while traveling in the subway cars is only possible history (station).

n 값은 신중히 결정된다. n values ​​are carefully determined. 데이터 세트에 대한 알고리듬에서 n의 크기를 변화시키면서 여러 실험들을 수행했다. By varying the size of n in the algorithm for the data set it was carried out several experiments. 윈도우 크기가 큰 경우에는 안정된 비이동 상태에서는 연속적인 에러들에 대해 성공적으로 대처할 수 있음에 비해, 빠른 속도 변화의 상황에는 반응하지 못할 것이라고 예상할 수 있다. In the case where the window size is large, stable compared to the non-moving state can successfully cope with the continuous error, you can expect the situation will not change in the speed of the reaction. 반면에 작은 값의 n은, 연속적인 에러 튜플들을 포함하는 것으로 여겨지는 이동 상태에 대한 갑작스런 속도 변화에 대한 빠른 반응을 보여줄 것이다. While a value of n is in, it will show a quick response to the abrupt speed change in the movement state is considered as including a continuous error tuple. 예를 들면, m개의 연속적인 에러가 존재하는 경우에, m > n이라면 그런 에러들을 필터링할 수가 없다. For example, if the m number of consecutive error exists, m> n. If you are not able to filter out such errors. 우리의 짐작을 이해하기 위해, 우리는 아이폰 데이터 세트에 대하여 윈도우 크기에 대한 실험을 하였다. In order to understand our idea, we performed experiments on the window size for the iPhone data set. 이 실험에서 n= 5, 10, 25, 50, 100과 같은 다양한 윈도우 사이즈에 대한 이동평균과 이동표준편차를 계산했다. In the experiments it was calculated moving average and moving standard deviation for different window size, such as n = 5, 10, 25, 50, 100.

도 2는 본 발명의 일 실시예를 위한 간단한 실험의 결과를 보여준다. Figure 2 shows the results of a simple experiment for an embodiment of the present invention. 크기가 더 큰 윈도우가 둔하다(dull)는 것이 명백하다. The larger window size dull (dull) it is evident that. 일단 우리가 매우 큰 속도값을 만나게 되면, 큰 윈도우 크기는 큰 에러 속도의 영향을 큰 시간동안 유지시키고, 그 결과 에러가 있는 데이터의 언더 필터링(under filtering)을 초래한다. Once we meet the very high velocities, a large window size is large and held for the effects of larger errors speed time, and as a result leads to the error under-filtering (under filtering) of data. 100 또는 50의 윈도우 크기의 경우에, 우리는 명확하게 도 2에서 테일링 효과(tailing effect)를 볼 수 있다. In the case of a 100 or a window size of 50, we can see the tailing effect (tailing effect) in FIG. 2 clearly. 반면에, 작은 윈도우 크기는, 특히 속도변화의 시작단계에서, 속도 변화에 빠르게 반응하고 민감한 반면, 올바른 데이터를 오버 필터링한다. On the other hand, the small size of the window, especially at the beginning of the speed of change, and quickly respond to changes in speed and sensitivity, while filtering over the correct data. 윈도우 크기가 5 또는 10일 때에, 올바른 속도 데이터처럼 보이는 2개 이상의 정확해 보이는 튜플들이 작은 윈도우 크기에 의해 버려지는 것을 알 수 있다. When the window size is 5 or 10 days, it can be seen that have two or more tuples accurate seemingly looks like the correct speed data is discarded by the small size of the window. 이 현상은 윈도우 크기의 테일링 효과(tailing effect)를 피하기 위해 이동 윈도우에 대한 조절 메카니즘을 도입해야만 한다는 것을 내포하고 있다. This phenomenon implies that the need to introduce a control mechanism for the translation window in order to avoid tailing effect (tailing effect) of the window size.

이하 본 발명의 일 실시예에 따른 위치검출 데이터 에러에 대한 사전-실험(pre-experiments)에 대해 설명한다. It will be described in the experiment (pre-experiments) - prior to the position detection error data according to more than one embodiment of the present invention.

우리는 위치 데이터 정확성을 체크하기 위한 기초 실험을 수행하였다. We carried out a basic experiment for checking the accuracy of location data. 즉, 위치검출 장치들을 실외와 빌딩 내에 모두 고정하였고, 어떤 장치로 이동시키지 않고 수 시간 동안 위치 데이터를 수집하였다. That is, all of the position detecting device was fixed inside and outside the building, and collecting location data for many hours without moving in any device. 첫 번째 위치검출 장치는 Garmin GPSMAP62s[3]으로서 순수하게 GPS 데이터 수집을 위해 사용되었다. First position detecting device is purely a Garmin GPSMAP62s [3] was used for the GPS data acquisition. 두 번째 위치검출 장치는 삼성 갤럭시 탭으로서, 이 장치에 연결된 3G 기지국(3GBS)으로부터 위치검출 데이터를 얻기 위해 사용되었다. A second position detecting device is a Galaxy tab, used to obtain position detection data from the 3G base station (3GBS) associated with this device. 갤럭시 탭이 두 상황에서 더 많은 에러를 나타낼 것이라고 추측하였으며, GPS 및 3GBS로부터 얻은 데이터 세트 모두 위치검출 에러를 나타낼 것이라고 추측하였다. Galaxy Tab was suspected that represent more errors in the two situations, it assumes that indicate where an error is detected both data sets obtained from the GPS and 3GBS. 특히 빌딩 내에서 위치검출 에러를 보일 것이라고 추측하였다. In particular, it assumes that show a position detection error in the building. 이 기초 실험의 결과는 표 2에 표시되어 있다. The results of this basic experiment is shown in Table 2. 표 2는 위치검출 데이터 획득 시 발생하는 에러를 나타낸 것이며, 표기 단위는 미터(meter)이다. Table 2 is showing an error will occur when the pickup position detecting data in imperial units are meters (meter).

Figure 112012075662980-pat00001

위치 데이터로부터 에러 거리가 계산되며, 에러 거리의 분산(variance)과 평균을 계산할 수 있다. The error distance is calculated from the position data, one can calculate the variance (variance) and the average of the error distance. 추측한 바와 같이, 3GBS가 더 큰 에러율을 나타냈으며, 에러의 크기도 더 컸고, 에러 크기의 최대값도 더 컸으며, 에러 크기의 표준편차도 더 컸다. As inferred, the 3GBS showed a greater error rate, the size of the error is big and more, had a maximum value of the error is also more keot size, the standard deviation of the error is also bigger size. Garmin GPSMAP62s를 생산하는 생산자의 정책은 GPS 신호를 잃은 경우에도 과거의 속도에 근거하여 사용자의 위치를 계산하는 것인데, 이 정책 때문에 빌딩 내에서는 매우 큰 에러를 나타냈다. Policy of the manufacturer to produce Garmin GPSMAP62s is based on the exchange rate, even if the loss of the GPS signal would be to calculate the user's position, which showed a very large error in the building due to this policy. 따라서 빌딩 내의 GPS 데이터는 의미있는 데이터가 아닌 것으로 생각할 수 있다. Therefore, the GPS data within the building can be considered as not being a meaningful data. 실외에서의 GPS 데이터는 정교한 위치검출을 위하여 충분한 수준의 정확성을 나타내며, 최대 에러 크기도 52 미터라는 합리적인 수준의 범위 내에 들어왔다. GPS data from the outside indicates a sufficient level of accuracy for the fine position detection, it came within reasonable range of 52 meters Maximum error size.

이하 본 발명의 일 실시예에 따른 필터링 알고리듬을 설명한다. It describes a filtering algorithm according to the more than one embodiment of the present invention.

위의 사전-실험에서 고려한 사항에 따라, 우리는 표 3의 [알고리듬 1]과 같이, 오류 위치 데이터 필터링을 위한 알고리듬을 만들었다. The above pre-considered, depending on the experiment, we are as shown in Table 3 [Algorithm 1], it created an algorithm for fault location data filtering. 새로운 위치 데이터 P t 을 새로이 획득하면, 이 알고리듬은 P t 가 필터링이 될지 여부를 결정할 수 있다. Upon obtaining the new position data P t new, the algorithm is the P t can be determined whether the filter. 실제 상황에서 우리는 몇 가지 상황을 고려할 수 있다. In real life, we can consider some situations.

Figure 112012075662980-pat00002

* 이동 윈도우의 초기 구성 : n개 미만의 튜플이 존재하는 경우, 우리는 완전한 이동평균과 이동표준편차를 구성할 수 없다. * The initial configuration of the mobile window: If a tuple of n less than one exists, we can not constitute the entire moving average and moving standard deviation. 대신에 우리는 적은 수의 정보를 이용하여 불완전한 윈도우를 구성할 수 있다. Instead, we can configure an incomplete window using a small number of information. : [알고리듬 1]의 2~5 번째 줄. [Algorithm 1] 2-5 line of.

* 가속도와 속도는 필터링 디테일에서 다른 점을 가지고 있지만, 두 개 모두 조절 파라미터(throttling parameter)로서 간주될 수 있다. - acceleration and speed, but has a different point from the filtered detail, can be thought of as two or all control parameter (throttling parameter). 속도 범위를 벗어나거나 지나친 가속도를 가진 위치 정보 튜플은 필터링될 것이다. Location information tuples out of the speed range, or with excessive acceleration is to be filtered. : [알고리듬 1]에서 6~8 번째 줄. : 6-8 line in the [Algorithm 1].

* 하나의 튜플의 속도가 너무 크면 MA와 MSD 값에 영향을 주게되며 신뢰구간(confidence interval)의 확장과 같은 필터링 에러를 초래하기 때문에, 필터링되어야 하는 튜플이 필터링-인(filter-in) 되는 결과가 나타난다. Results that the (filter-in) - * a is too large, the speed of the tuple, and affect the MA and MSD values ​​confidence interval, as they result in a filtered error such as the expansion of (confidence interval), the tuple is filtered to be filtered It appears. 이와 같이 하나의 튜플의 속도가 너무 크면, 가능한 빠른 속도의 변화를 포함하고 신뢰구간의 확장 오류를 피하기 위해, MA speed (n)+2.57*MSD speed 를 이용하여 속도값을 수정할 수 있다. In this way, the speed of one tuple is too large, including the possible speed change of the expansion and to avoid failure of the confidence interval, it is possible to modify the speed value using the MA speed (n) + 2.57 * MSD speed. : [알고리듬 1]에서 9~11 번째 줄. : 9-11 second line in the [Algorithm 1]. s=2.57은 정규분포의 99.5%의 신뢰구간을 나타낸다. s = 2.57 represents a confidence interval of 99.5% of the normal distribution. 이것은 이동 윈도우에 대한 에러가 있는 속도의 영향을 감소시키는 조절판이다. This is a control panel for reducing the effect of having an error rate for the moving window. : [알고리듬 1]의 9~10 번째 줄에서 s 99.5 : S 99.5 9-10 from the line of [Algorithm 1]

* 윈도우 구성 : 어떤 하나의 튜플이 필터링 아웃(filtered out)되어야 하는 경우라고 하더라도, 이 튜플의 속도가 정규분포의 99.5% 신뢰구간 밖에 있지 않다면, 이 튜플의 속도를 포함할 수 있다. * Windows configuration: that even if any one tuple that needs to be filtered out (filtered out), the speed of the tuple, if not only 99.5% confidence interval of the normal distribution, and may include the speed of the tuple. 속도의 빠른 변화에 대처하기 위해 이동 윈도우를 업데이트 하도록 의도한 것이다. It is intended to update the moving window to respond to rapid changes in speed. 즉, 오류가 없는 튜플이라고 하더라도 급격한 속도 변화가 있는 것은 필터링 아웃될 수 있다. That is, although it is not an error tuple is in a rapid speed changes can be filtered out. 그러한 경우에, 튜플이 필터링되더라도, 이동 윈도우는 다음에 도착하는 튜플에 대한 속도의 변화를 반영할 수 있다. In such a case, even if the tuple filtering, moving window can reflect the change in the speed of the arriving tuple to the next. : [알고리듬 1]에서 10 번째 줄 10 line in the [Algorithm 1]

* 인간 보행은 2.77m/s(10Km/h)보다 작은 속도 내에서 가능하며 또한 GPS 에러범위에 있기 때문에, 2.77m/s(10Km/h)보다 적은 속도는 필터링되지 않을 것이다. * Human gait is 2.77m / s is possible in the smaller rate than the (10Km / h) also will Since the GPS error range, less than the speed of 2.77m / s (10Km / h) is not filtered. : [알고리듬 1]에서 9번째 줄 MIN velocity [Algorithm 1] in line 9 MIN velocity

* 비현실적인 가속도를 가진 튜플들은 필터링되어야만 한다. * Tuple with unrealistic acceleration have to be filtered out. [12]에서 기술했듯이, 10.8m/s 2 가 스포츠카에 대해 현존하는 가장 큰 값이다. As described in [12], the largest value of 10.8m / s 2 is extant for a sports car. : [알고리듬 1]에서 12번째줄 MAX acceleration [Algorithm 1] 12th line from the MAX acceleration

⇒[12]: List of fastest production cars by acceleration, Available: http://en.wikipedia.org/wiki/LisP_of_fastesP_cars_by_acceleration ⇒ [12]: List of fastest production cars by acceleration, Available: http://en.wikipedia.org/wiki/LisP_of_fastesP_cars_by_acceleration

* 일단 과도한 가속도 때문에 필터링되어야 하는 튜플은 필터링되어야 하고, 이 튜플의 가속도 값은 MAX acceleration 으로 설정되도록 강제되고, 속도값은 비현실적인 속도값의 영향을 무효화시키기(nullify) 위해 MA speed (n)으로 설정되도록 강제된다. * Once due to excessive acceleration of tuples to be filtered is to be filtered, an acceleration value of the tuple is forced to be set to MAX acceleration, velocity values set to MA speed (n) for unrealistic to void the effect of the velocity values (nullify) It is forced to be. : [알고리듬 1]에서 12~16 번째 줄 : 12 to the 16th line in the [Algorithm 1]

* 차량이 커다란 음의 가속도를 가지고 급하게 멈추는 것은 항상 가능하기 때문에, 음의 가속도 값들을 가진 위치정보 튜플들은 에러로 여겨지지 않을 것인 반면에, MAX acceleration 보다 더큰 양의 가속도값을 가진 튜플들은 에러들로서 여겨질 것이다. * Since it is always possible the vehicle to stop urgently to have an acceleration of a large sound, the location information tuple having an acceleration value of the notes are on would not be regarded as an error, while the tuple with the acceleration value of greater amount than MAX acceleration are errors as it will be seen.

[알고리듬 1]에 대해, 우리는 2개의 변수를 특정하지 않았다. For [algorithm 1], we did not identify the two variables. n은 윈도우 내의 튜플의 개수이고, s는 필터링의 민감도 수준이다. n is the number of tuples in the window, s is the sensitivity level of the filter. 이 두 파라미터들은 [알고리듬 1]의 사용자에 의해 특정될 수 있다. These two parameters may be specified by the user of [Algorithm 1]. 사용자 민감도 수준 s는 상대적으로 간단히 결정할 수 있다. S user sensitivity level can be simply determined relatively. 정규분포의 특성으로부터 우리는 적절한 신뢰구간을 갖는 s를 얻을 수 있다. From the characteristics of normal distribution, we obtain the s having an appropriate confidence interval. 우리가 필터링을 위해 정규분포의 양의 영역만을 사용할 것이기 때문에, 우리는 95%의 신뢰구간을 위해 s=1.64로 설정하고, 99%의 신뢰구간을 위해 s=2.33으로 설정할 수 있다. Since we will use only the positive region of the normal distribution for the filter, we set s = 1.64 for a 95% confidence interval, and can be set to s = 2.33 for a confidence interval of 99%. 사용자들은 그들 자신의 목적에 따라 s를 결정할 수 있다. Users can determine s according to their own purposes. 예를 들어, 우리는 아래와 같이 민감도 수준 s를 선택할 수 있다. For example, we can select the sensitivity level s below. [표 2]는 기기가 움직이지 않을 때, 위치 데이터 수집에 대한 보통의 에러율(error rate)을 보여준다. [Table 2] when the device is not moving, and shows the normal error rate (error rate) of the location data collection. GPS의 경우에 대하여, 12.3%의 데이터에 에러가 있었고, 3GBS 셀룰러 위치검출 시스템에 대하여 36.75%의 데이터에 에러가 있었다. For the case of GPS, there was a 12.3% error in the data, there is an error in 3GBS of 36.75% with respect to the cellular data position-detection system. 따라서 이 실험에 있어서, GPS 데이터에 대하여는 s=1.16으로 설정하고, 셀룰러 위치검출 데이터에 대해서는 s=0.34로 설정할 수 있었다. Thus, in this experiment, it is set to s = 1.16 with respect to the GPS data, and could be set to the position detection for the cellular data s = 0.34.

우리는 이미 윈도우 크기의 영향에 대해 논의를 했었다. We have already had a discussion about the impact of window size. 큰 윈도우의 트레일링 효과(trailing effect) 때문에, 더 작은 윈도우를 선택할 수 있다. Because of the larger window trailing effect (trailing effect), you may select a smaller window. 그러나, [알고리듬 1]은 부정확한 속도 값들을 교정(calibrate)한다. However, the [algorithm 1] is corrected (calibrate) the incorrect speed. 또한, 비정상적인(abnormal) 가속도 값은 제한되며, 속도 값은 이동 윈도우의 평균속도로 대체될 수 있다. Further, the abnormal (abnormal) acceleration values ​​is limited, the speed value can be replaced with the average velocity of the moving window. 이러한 교정 방식(calibration mechanism)에 따른 윈도우 크기의 효과를 다시 한 번 살펴 볼 수 있다. The effect of the window size according to this correction method (calibration mechanism) can be seen at once.

도 3은 본 발명의 일 실시예에 따른 교정 방식에 따른 윈도우 크기의 효과를 나타낸다. Figure 3 shows the effect of the window size in accordance with the correction method according to an embodiment of the present invention. x-축은 2011년 11월 11일의 시각을 나타낸다. x- axis represents the views of 11 November 2011. 이 예에서 윈도우 크기 n=5, 10, 25, 50, 100으로 선택하였고 민감도 수준 s=1.16으로 선택하여 위치 데이터 중의 88%를 정확한 데이터로 가정하고 필터링이 이루어진다. In this example, the selected window size is n = 5, 10, 25, 50, 100 were selected for their sensitivity level s = 1.16, assuming a 88% of the position data with the correct data, is made filter. 트레일링 효과가 제한되었음에도 불구하고, 더 작은 윈도우 크기는 속도 변화에 따라 더 유연한 반응(reaction)을 나타낸다. Although trailing effect is limited, and the smaller window size indicates the more flexible reaction (reaction) according to the speed change. 따라서, 5 또는 10의 윈도우 크기가 더 좋은 선택이 된다. Thus, the window size of 5 or 10 is a better choice.

또한 연속적 에러의 효과를 더 고려할 수 있다. You can also consider the effects of a more continuous error. 속도에 대한 스로틀 방식(throttling mechanism)을 채택하고 있음에도 불구하고, 연속적인 에러들은 이동 평균과 이동표준편차에 영향을 줄 것이고, 따라서 본 발명의 일 실시예에 따른 필터링 알고리듬에 혼란을 야기할 수 있다. Despite employing a throttle system (throttling mechanism) for the speed, successive errors will affect the moving average and moving standard deviation, and thus can cause confusion to the filtering algorithm in accordance with one embodiment of the present invention . 실제 위치검출 데이터 세트에서 최대 4개의 연속적인 에러를 경험하였고, 따라서 우리의 실험적 환경에 대하여는 n=5로는 부족하다는 결론을 내렸고, n=10인 경우에 연속적인 에러에 대하여 대응할 수 있으며 더 큰 윈도우 크기에 의한 테일링 효과(tailing effect)를 줄일 수 있다고 결론내렸다. Experienced a maximum of four consecutive errors in the actual position of the detected data set, therefore, it concluded that the lack roneun n = 5 For our experimental environment, to respond with respect to the continuous error in the case of n = 10 and larger window It concluded that to reduce tailing effects (tailing effect) due to the size. 따라서 이 실험에 있어서 윈도우 크기는 최종적으로 10으로 결정되었다. Thus, in this experiment, the window size was finally determined to be 10. 물론, 더 많은 개수의 연속적인 에러를 경험한다면, 이에 적합한 윈도우 크기를 선택하거나, 후술하는 바와 같이 윈도우의 크기를 동적으로 증가시킬 수 있다. Of course, it is possible to experience more if a continuous error of a large number, thereby selecting an appropriate window size or dynamically increase the size of the window, as will be described later.

도 4는 진보된 필터링 알고리듬을 나타낸다. Figure 4 shows the advanced filtering algorithm. 도 3과 동일한 위치검출 데이터 세트를 선택하여 공정한 비교를 실시하였디. 3 and select the same position detection data set to D were carried out a fair comparison. x-축은 2011년 11월 11일의 시각을 나타낸다. x- axis represents the views of 11 November 2011. 도 4에서, 윈도우 크기 n=10 이며, 민감도 수준 s=1.16인데, 이것은 위치 데이터의 88%가 정확한 값으로 간주되었다는 것을 나타낸다. In Figure 4, the window size is n = 10, inde sensitivity level s = 1.16, which indicates that 88% of the position data has been considered to be a correct value. 얇은 검은색 실선은 실제 속도의 변화를 m/s 단위로 나타낸 것이고, 얇은 회색의 점선(dashed line)은 본 발명의 일 실시예에 따른 필터링 알고리듬에 의해 교정된 속도를 나타낸다. Thin black solid line will showing a change of the actual speed in m / s unit, the thin gray dashed line (dashed line) represents the corrected speed by the filtering algorithm in accordance with one embodiment of the present invention. 교정된 속도는 일반적으로 속도와 겹치는데, 튜플이 필터링 알고리듬에 의해 필터링되었을 때는 교정값을 나타낸다. The calibration rate is generally used to speed the overlap represents a correction value if the tuple has been filtered by the filtering algorithm. 점선(dotted line)은 가속도 값을 나타낸다. Broken line (dotted line) represents the acceleration value.

굵은 검정색 실선은 n=10인 이동 윈도우의 커버리지(coverage)(속도의 수용범위)를 나타낸다. Thick black solid line represents the coverage (coverage) (acceptable range of the velocity) of the moving window n = 10. 도 4에 나타낸 이동 윈도우가 교정된 속도 값을 기초로 한다는 점을 주목하여야 한다. The speed value is corrected translation window shown in Figure 4 is to be noted that it is based. 교정된 속도값 덕분에 이동 윈도우는 속도의 변화에 대해 빠르게 반응하며(react), 에러가 있는 튜플들을 성공적으로 필터링한다. Thanks to the calibration speed value translation window and is responsive to changes in the velocity and successfully filter the tuples with (react), the error. 이중 점선(double dotted line)은 속도 교정이 없는 이동 윈도우의 커버리지(로-커버리지(raw coverage))를 나타낸다. The double dotted lines (double dotted line) is (in-coverage (coverage raw)) coverage of the moving window with no rate correction represents a. 교정된 커버리지(calibrated coverage)와 로-커버리지를 비교하면, 속도 교정의 효과 또는 한계가 분명해진다. And in the corrected coverage (coverage calibrated) - Comparing the coverage, the effects or limitations of the speed correction becomes clear. 우리의 알고리듬에 따른 속도 교정은 매우 큰 속도 에러가 이동 윈도우에 미치는 영향을 성공적으로 억제한다. Speed ​​calibration according to our algorithm is successfully suppressed the effect of a very large error rate on the Move window. 따라서 교정된 속도로 구성된 이동 윈도우는 속도 에러의 효과를 성공적으로 제거하며, 위치검출 튜플 값들의 적절한 추정을 유지할 수 있다. Therefore, the translation window consisting of a calibrated rate and successfully remove the effect of the speed error, it is possible to maintain the proper estimation of the position detection value tuples.

도 5는 도 4와 유사한 진보된 필터링 알고리듬을 나타낸다. Figure 5 illustrates an advanced filtering algorithm that is similar to FIG. 도 5에 있어서, 민감도 수준 s=0.34이며, 모든 다른 조건은 동일하다. 5, a sensitivity level s = 0.34, is equal to all other conditions.

<필터링 결과> <Filtering results>

마지막으로 본 발명의 일 실시예에 따른 필터링 실험의 결과를 두 가지 방법으로 나타낸다. Finally, it shows the results of filtering tests in accordance with one embodiment of the present invention in two ways.

첫째, 본 발명의 일 실시에에서, 전체 위치검출 데이터 세트에 대하여 필터링이 수행되었고, 그 결과가 실제 지도에 표시된다. First, in one embodiment of the present invention, the whole was filtered with respect to the detected position data set is performed, and the result is displayed on the actual map. 이러한 시각화는 구글 맵을 이용하여 수행되었다[11]. The visualization was performed using the Google map [11].

도 6은 n=10 이고 s=0.34일 때의 필터링 결과를 나타낸다. 6 shows a result of the filtering when n = 10 and s = 0.34.

도 7은 n=10 이고 88% 신뢰구간의 필터링 결과를 나타낸다. 7 is n = 10 and represents the filtered result of the 88% confidence interval. 도 7에서 위치검출 데이터 세트의 에러를 찾을 수 없으나, 도 6에 나타낸 결과보다 더 많은 위치검출 데이터를 포함하고 있다. But also to find an error of the position detection data set 7, and include more data than the position detection results shown in FIG. 따라서, 윈도우 크기와 민감도 수준을 적절히 선택하면 적절한 필터링 결과를 얻을 수 있다고 결론내릴 수 있다. Therefore, proper selection of window size and the sensitivity level can be concluded that to obtain the appropriate filter results.

둘째, 윈도우 크기와 민감도 수준의 여러가지 조합에 따라, 모든 위치검출 데이터 세트에 대해 필터링을 수행할 수 있다. Second, in accordance with various combinations of window size and sensitivity levels, it may perform filtering on all the position detection data set. 표 4는 파라미터들의 각 조합에 대하여 필터링-아웃된 튜플들의 백분률을 나타낸다. Table 4 is a filter for each combination of parameters - represents the percentage of the out tuple. 본 발명의 일 실시예에 따른 알고리듬의 사용자는 그들의 환경에 따라 표 4에 따른 윈도우 크기와 민감도 수준을 선택할 수 있다. Users of the algorithm according to one embodiment of the present invention may select a window size and sensitivity levels according to Table 4 in accordance with their environment.

Figure 112012075662980-pat00003

본 발명을 위한 연구에서 우리는 에러가 있는 위치 데이터 필터링 알고리듬을 만들었고, 윈도우 크기 및 민감도 수준의 다양한 조합에 따른 효과를 경험하였다. In the research for this invention we have created a location data filter algorithm with the error, and experience the effects of the various combinations of window size and sensitivity levels. 실제로 수집된 위치 데이터 세트는 알고리듬 증명을 위해 사용되었고, 성공적인 필터링 결과물을 찾았다. In fact, the position data sets collected was used to prove the algorithm, we found a successful filtering results. 윈도우 크기, 민감도 수준, 최대 속도 및 최대 가속도와 같은 알고리듬의 다양한 파라미터들은 사용자에 의해 정의될 수 있다. Various parameters of the algorithm, such as window size, sensitivity levels, maximum speed and maximum acceleration can be defined by the user. 사용자가 MAX accelertaion , s 99.5 (최대 민감도 수준)과 MIN velocity (필터링을 위한 속도의 최소 임계값)와 같은 알고리듬의 상수(constant)를 변화시키는 것도 가능하다. It is also possible for the user and changes the constant (constant) in the algorithm such as MAX accelertaion, s 99.5 (the maximum level of sensitivity) and MIN velocity (the minimum threshold value of the speed for filters).

필터링 과정을 하나씩 조사하는 동안, 우리는 알고리듬의 몇 가지 미세한 허점을 찾았다. While investigating the filtering process, one we found a few subtle loopholes in algorithms. 첫째는, 초기의 윈도우 구성의 단계에서 윈도우 전체를 채우기에 충분한 개수의 튜플이 없었기 때문에, 위의 알고리듬이 정보 수집의 시작 단계에서 작동할 수 없다는 것이다. First, it will not because there was a sufficient number of tuples to fill the entire window at the stage of initial configuration of Windows, the above algorithm can operate in the initial stage of collecting information. 이동 윈도우를 기반으로 한 모든 접근법은 이와 같은 필연적 단점(compulsory demerit)을 가질 수 있다. All approaches based on a moving window can have these disadvantages inevitably (compulsory demerit) like.

두 번째 문제는 오버 필터링와 언더 필터링의 경향이다. The second problem is the tendency of over-unders pilteoringwa filtering. 속도의 빠른 증가를 보이는 새로운 튜플이 수집된 경우, 이 튜플의 정확성과 상관없이 이 튜플은 필터링될 수 있다. When a new tuple showing a rapid increase in the rate of collection, a tuple, regardless of the accuracy of these tuples can be filtered out. 이러한 경향은 윈도우의 크기가 클 때에 명확해지는데, 이는 큰 윈도우가 속도의 변화를 캐치(catch)하기에 충분히 빠르게 반응할 수 없기 때문이다. This trend is makin apparent when the window size is large, since there is no big window can be sufficiently responsive to the catch (catch) the change in speed. 그에 대한 보상으로, 속도의 변화가 정규분포의 99%의 신뢰구간 범위 바깥에 있지 않다면, 속도의 변화에 대응하는 윈도우 폭을 보존(preserve)하기 위하여, 필터링된 튜플의 속도를 포함할 수 있다. In compensation therefor, the change of speed is not in the 99% confidence interval outside the range of the normal distribution, and, may include the speed of the filtered tuple to preserve (preserve) the window width corresponding to the change of speed. 속도가 99%의 신뢰구간의 범위 밖에 있을 경우에, 이동 윈도우의 추후 구성(construction)을 위해 속도를 교정할 수 있다. If you are out of range of the confidence interval of a rate of 99%, it is possible to correct the speed for the later configuration of the translation window (construction). 도 3과 관련하여 기술했듯이, 더 큰 윈도우 크기를 가진 경우에 언더 필터링의 경향이 명백하다. Case, as described with respect to 3, with the larger size of the window is a tendency of under-filtering It is obvious to the.

연속적인 에러들의 수가 윈도우 크기보다 큰 경우, 더 작은 윈도우로는 필터링할 수 없다. If the number of consecutive errors is greater than the window size, a smaller window can not be filtered. 예를 들어, 실험 데이터에 포함된 4개의 연속적인 에러들을 경험하였듯이, n=10 이 n=5 보다는 더 나은 선택이라고 판단할 수 있다. For example, As experienced four consecutive errors contained in the experimental data, n = 10 may be determined to be a better choice than n = 5. 작은 윈도우 크기의 또 다른 이점은 계산시간이 작다는 점과 이동 윈도우 구성을 위한 메모리 공간이 작다는 점이며, 그 결과 이 알고리듬은 저전력 휴대용 기기에서 실시간으로 작동할 수 있다. Another advantage of the small size of the window is that the computation time is less the memory space for the point and the translation window configuration is small, so that the algorithm can work in real time in a low-power portable devices.

몇 가지의 종류의 추가 고려사항이 존재한다. Are some of the types of additional considerations exist. 첫 번째 사항은, 윈도우 크기에 관한 것이다. The first thing is, the present invention relates to a window size. 윈도우의 크기를 하나의 윈도우 내의 튜플들의 개수로 정의하는 대신에, 윈도우가 포함하는 시간 간격으로 정의할 수 있다. Instead of defining the size of the window by the number of tuples in one of the windows, it can be defined as the time interval comprises a window. 속도는 시간의 함수이기 때문에, 이 방식은 위치 데이터를 규칙적으로 수집할 때에 효과적이며 또한 정확할 것이다. Since velocity is a function of time, this method is effective when the collecting location data on a regular basis will also be correct. 윈도우 크기의 동적 교정(dynamic calibration)에 대하여 더 고려할 수 있다. It may further be considered with respect to the dynamic calibration of the window sizes (dynamic calibration). 본 발명의 다른 실시예에서는 연속적인 에러의 개수에 따라 윈도우 크기를 동적으로 증가 또는 감소시킬 수 있다. In another embodiment of the present invention, it is possible to dynamically increase or decrease the window size according to the number of consecutive errors. 일단 연속적인 에러의 개수가 많다는 것을 발견하면, 연속적인 에러가 이동평균과 이동표준편차에 미치는 영향을 최소화하기 위하여 윈도우 크기를 증가시킬 수 있다. Once it found that the number of successive errors, it is possible to increase the window size so as to minimize the effects of successive errors on the moving average and moving standard deviation. 만일 연속적인 에러의 개수가 작은 경우에는, 윈도우 크기를 감소시킴으로써 급격한 속도 변화에 대해 적절한 반응을 보일 수 있고 필터링을 위한 계산량을 감소시킬 수 있다. If the number of consecutive errors is small, by decreasing the window size it can be seen for proper response to the abrupt change in speed can reduce the amount of calculation for the filtering.

두 번째 사항은, [알고리듬 1]과 같은 실시간 알고리듬이 아닌 의사 실시간 알고리듬(pseudo real time)이다. The second information is a [Algorithm 1] The real-time algorithm is pseudo-real-time algorithm (pseudo real time), not like. 윈도우 크기 n에 대해 우리는 (n+1)번째 튜플을 필터링하는 것 대신에 About the size of the window instead of n we have to filter the (n + 1) th tuple

Figure 112012075662980-pat00004
번째 튜플의 필터링을 결정할 수 있다. It may determine the filtering of the second tuple. 실시간으로 사용될 수 없을지라도 이 접근법은 언더 필터링과 오버 필터링의 경향을 줄일 수 있다. Although there can be used in real time, this approach can reduce the tendency of under-filtering and over-filtering. 필터링의 정확성 대(vs.) 필터링의 실시간의 트레이드 오프(tradeoff)를 확인할 수 있다. Accuracy for filtering (vs.) can access real-time trade-off (tradeoff) filtering.

알고리듬의 향상을 위한 다른 아이디어는 인터폴레이션(interpolation)의 도입이다. Other ideas for the improvement of the algorithm is the introduction of interpolation (interpolation). 아래 표 5에 제시한 [알고리듬 2]는 [알고리듬 1]에 비하여 인터폴레이션을 위한 추가적인 동작을 포함한다([알고리듬 2]의 17~20번째 행 참조). Presented in Table 5 below, and [Algorithm 2] contain additional operations for the interpolation than in [Algorithm 1] (see the second line 17-20 of [Algorithm 2]). [알고리듬 2]에서는, 이동 윈도우 통계를 좀 더 잘 근사화하기 위하여 [알고리듬 1]에 추가적인 단계를 부가하였다. [Algorithm 2], was added an additional step in the algorithm 1] In order to better approximate the moving window statistics. 새로운 튜플이 도착하면, 현재 존재하는 윈도우(existing window) 내의 마지막 튜플이 마킹되었다면(marked), 현재 존재하는 윈도우 내의 마지막 튜플의 속도를 선형적으로 인터폴레이션된 값으로 대체할 수 있다. When a new tuple arrival, the last tuple in the window (existing window) if the existing marking (marked), may be replaced with the interpolation of the speed of the last tuple in the window that currently exist linearly value. 이러한 인터폴레이션은 필터링 목적을 위한 이동 윈도우에 대한 좀 더 정밀한 근사값(approximation)을 제공할 수 있다([알고리듬 2]의 17~20행 참조). Such interpolation may provide a more accurate approximation (approximation) of the moving window for filtering purpose (see lines 17-20 of [Algorithm 2]). 다른 말로, [알고리듬 2]의 가장 마지막 부분에 의해, 새로운 튜플을 얻을 때마다 윈도우 내의 마킹된 마지막 튜플을 인터폴레이션 할 수 있다. In other words, it is possible by the very last portion of [Algorithm 2], each time at a new tuple to the interpolation marking the last tuple in the window. 좀 더 정밀한 근사화를 위한 이동 윈도우 구성을 위한 또 다른 변형예는, Another variant for the translation window configurations for a more accurate approximation,

Figure 112012075662980-pat00005
번째 튜플을 윈도우 내의 n 튜플들로 인터폴레이션 하는 것이다. To interpolation of the first tuple in the n-tuple in the window. 더 좋은 추정(estimation)을 위하여 n 튜플들로부터 추정된 점근 곡선(asymptotic curve)을 이용하여 윈도우 내의 중앙 튜플(middle tuple)을 인터폴레이션하여 더 정밀한 인터폴레이션을 가능하게 할 수 있다. By using the asymptotic curve (asymptotic curve) is estimated from the n-tuples to a better estimation (estimation) the center interpolation tuple (middle tuple) in the window may enable a more precise interpolation. 그러나 이 때문에 계산 오버헤드(computational overhead)가 생기게되어, 이 알고리듬을 이동 기기에 적용하는 것이 어려울 수 있다. However, this is because causing the computational overhead (computational overhead), it may be difficult to apply the algorithm to the mobile device. 속도 인터폴레이션이 필터링 정확도에 미치는 영향을 살펴볼 수 있다. The interpolation rate can examine the impact on the filtering accuracy.

Algorithm 2 Moving Window construction with Interpolation Algorithm 2 Moving Window construction with Interpolation
Require : P 0 ▷ At least one initial tuple is required Require: P 0 ▷ At least one initial tuple is required
Require : window size n Require: window size n
Require : user sensitivity level s Require: user sensitivity level s
Ensure : Check validness of new position tuple Ensure: Check validness of new position tuple
Ensure : Calibrated series of tuple {P i : t ≥ i > 0 } for t inputs Ensure: Calibrated series of tuple {P i: t ≥ i> 0} for t inputs
Require : i=0 Require: i = 0
1: repeat Get P i+1 ▷ Acquisition of new tuple, if exist 1: repeat Get P i + 1 ▷ Acquisition of new tuple, if exist
2: Construct MA speed (n) with {P x : max(i-n+1, 0) ≤ x ≤ i} 2: Construct MA speed (n) with {P x: max (i-n + 1, 0) ≤ x ≤ i}
3: Construct MSD speed (n) with {P x : max(i-n+1, 0) ≤ x ≤ i} 3: Construct MSD speed (n) with {P x: max (i-n + 1, 0) ≤ x ≤ i}
4: Set MA speed = MA speed (n) 4: Set speed MA = MA speed (n)
5: Set MSD speed = MSD speed (n) ▷ Moving Window Construction 5: Set speed = MSD MSD speed (n) ▷ Moving Window Construction
6: if (V i+1 > MA speed + s × MSD speed ) OR (a i+1 ≥ MAX acceleration ) then ▷ Filtering 6: if (V i + 1 > MA speed + s × MSD speed) OR (a i + 1 ≥ MAX acceleration) then ▷ Filtering
7: Mark P i+1 as filtered. 7: Mark P i + 1 as filtered.
8: end if 8: end if
9: if (V i+1 ≥ MA speed + s 99.5 × MSD speed ) AND (V i+1 > MIN velocity ) then ▷ Calibration of Speed 9: if (V i + 1 ≥ MA speed + s 99.5 × MSD speed) AND (V i + 1> MIN velocity) then ▷ Calibration of Speed
10: Set V i+1 = MA speed + s 99.5 × MSD speed 10: Set V i + 1 = MA speed + s 99.5 × MSD speed
11: end if 11: end if
12: if a i+1 ≥ MAX acceleration then ▷ Restriction by Maximum Acceleration 12: if a i + 1 ≥ MAX acceleration then ▷ Restriction by Maximum Acceleration
13: Mark P i+1 as filtered 13: Mark P i + 1 as filtered
14: Set V i+1 = MA speed 14: Set V i + 1 = MA speed
15: Set a i+1 = MAX acceleration 15: Set a i + 1 = MAX acceleration
16: end if 16: end if
17: if (P i marked as filtered) then ▷ Linear Interpolation 17: if (P i marked as filtered) then ▷ Linear Interpolation
18: Set V i = ((V i+1 - V i-1 ) × (t i - t i-1 )) / (t i+1 - t i-1 ) + V i-1 18: Set V i = (( V i + 1 - V i-1) × (t i - t i-1)) / (t i + 1 - t i-1) + V i-1
19: Mark P i as interpolated 19: Mark P i as interpolated
20: end if 20: end if
21: Set i = i + 1 21: Set i = i + 1
22: until Exist no more input of positioning tuple 22: until Exist no more input of positioning tuple

도 8은 본 발명의 일 실시예에 따른 [알고리듬 2]를 설명하기 위한 것이다. 8 is for explaining the [algorithm 2] according to one embodiment of the present invention.

도 8의 가로축은 연속적으로 얻은 이동 데이터 튜플의 인덱스를 나타내며, 세로축은 각 이동 데이터 튜플로부터 얻은 속도에 관한 로-데이터(raw-data)이다. The horizontal axis of Figure 8 indicates the index of the successive motion data obtained by the tuple, and the vertical axis by about the speed obtained from the respective mobile data tuples - the data (raw-data). 도 8에서는 이동 윈도우의 크기 n이 10인 것으로 예시되어 있다. In Figure 8 it is illustrated to be the size of the moving window, n is 10. 이동 윈도우 내에 존재하는 속도 값들로부터 MA speed 와 MA speed + s 99.5 × MSD speed 를 계산할 수 있으며, 이 값의 예가 도 8에 표시되어 있다. Moved from the present velocity values in the window that can calculate the speed and MA MA speed s + 99.5 × MSD speed, An example of this value is shown in Fig. 도 8에서 인덱스 [i]에 대한 이동 데이터 튜플 P i 는 [알고리듬 2]에 따라 이미 필터링된 것으로 표시된 것으로 가정하였다. In Figure 8 the mobile data tuple P i for the index [i] is assumed to be displayed have already been filtered according to [Algorithm 2]. 따라서 [알고리듬 2]의 제18행에 따라, 이동 데이터 튜플 P i 의 속도 V i 는 이동 데이터 튜플 P i-1 의 속도 V i-1 과 이동 데이터 튜플 P i+1 의 속도 V i+1 를 이용하여 선형 인터폴레이션 된 값으로 대체된다. Thus [Algorithm 2] a, the mobile data tuple P i speed V i is the mobile data tuple speed V i + 1 of the speed V i-1 and the mobile data tuple P i + 1 of the P i-1 according to claim 18 rows used to be replaced by a linear interpolation value.

도 9는 본 발명의 일 실시예에 따른 [알고리듬 2]를 설명하기 위한 다른 예를 나타낸 것이다. 9 illustrates another example for explaining the [algorithm 2] according to one embodiment of the present invention.

도 9에서 인덱스 [i+1]에서의 가속도 a i+1 는 MAX acceleration 보다 큰 것으로 가정하였다. Acceleration a i + 1 in the index [i + 1] in Figure 9 is assumed to be greater than MAX acceleration. 따라서, 인덱스 [i+1]에서의 속도 V i+1 는 MA speed 으로 보정되었다. Thus, the speed V i + 1 of the index [i + 1] have been corrected to the MA speed. 그리고, 이동 데이터 튜플 P i 의 속도 V i 는 도 8과 마찬가지로 이동 데이터 튜플 P i-1 의 속도 V i-1 과 이동 데이터 튜플 P i+1 의 속도 V i+1 를 이용하여 선형 인터폴레이션 된 값으로 대체된다. And, the mobile data tuple P i the speed V i is 8 and, like mobile data tuple P i-1 velocity V i-1 and the mobile data tuple P i + velocity V i + 1 using a linear interpolation of the value of one of the It is replaced with.

[알고리듬 2]에서는 새롭게 획득한 이동 데이터 튜플(P i+1 ) 및 이동 윈도우에 존재하는 가장 최신의 이동 데이터 튜플(P i )에 대한 처리가 이루어졌다. [Algorithm 2], a process for the newly acquired moving data tuple (P i + 1) and the most recent movement data tuples present in the translation window (P i) have been made. 이와 달리 본 발명의 다른 실시예에서는 이동 윈도우의 임의의 시점에 존재하는 이동 데이터 튜플(P m )에 대한 처리를 수행할 수 있는데, 이를 표 6에 제시한 [알고리듬 3]을 통해 설명한다. In contrast, in other embodiments of the present invention may perform processing for moving the data tuple (P m) present in any point in the moving window is described by the [algorithm 3] presents it are shown in Table 6.

Algorithm 3 Filtering Any Point Inside Moving Window Algorithm 3 Filtering Any Point Inside Moving Window
Require : P 0 At least one initial tuple is required Require: P 0 At least one initial tuple is required
Require : window size n Require: window size n
Require : user sensitivity level s Require: user sensitivity level s
Ensure : Check validness of new position tuple Ensure: Check validness of new position tuple
Ensure : Calibrated series of tuple P i : ti > 0 for t inputs Ensure: Calibrated series of tuple P i : ti> 0 for t inputs
Require : i=1 Require: i = 1
1: repeat Get P i Acquisition of new tuple, if exist 1: repeat Get P i Acquisition of new tuple, if exist
2: Construct MA speed (n) with P x : max(i-n+1, 0) xi 2: Construct MA speed (n) with P x: max (i-n + 1, 0) xi
3: Construct MSD speed (n) with P x : max(i-n+1, 0) xi 3: Construct MSD speed (n) with P x: max (i-n + 1, 0) xi
4: Set MA speed = MA speed (n) 4: Set speed MA = MA speed (n)
5: Set MSD speed = MSD speed (n) Moving Window Construction 5: Set speed = MSD MSD speed (n) Moving Window Construction
6: if (V m > MA speed + s MSD speed ) OR (a m MAX acceleration ) then ▷ Filtering 6: if (V m> MA speed + s MSD speed) OR (a m MAX acceleration) then ▷ Filtering
7: Mark P m as filtered. 7: Mark P m as filtered.
8: end if 8: end if
9: if (V m MA speed + s 99.5 MSD speed ) AND (V m > MIN velocity ) then ▷ Calibration of Speed 9: if (V m MA speed + s 99.5 MSD speed) AND (V m> MIN velocity) then ▷ Calibration of Speed
10: Set V m = MA speed + s 99.5 MSD speed 10: Set V m = s + MA speed 99.5 MSD speed
11: end if 11: end if
12: if a m MAX acceleration then ▷ Restriction by Maximum Acceleration 12: if a m MAX acceleration then ▷ Restriction by Maximum Acceleration
13: Mark P m as filtered 13: Mark P m as filtered
14: Set V m = MA speed 14: Set speed V m = MA
15: Set a m = MAX acceleration 15: Set a m = MAX acceleration
16: end if 16: end if
17: if (P m marked as filtered) then ▷ Linear Interpolation 17: if (P m marked as filtered) then ▷ Linear Interpolation
18: Set V m = ((V m+1 - V m-1 ) (t m - t m-1 )) / (t m+1 - t m-1 ) + V m-1 18: Set V m = (( V m + 1 - V m-1) (t m - t m-1)) / (t m + 1 - t m-1) + V m-1
19: Mark P m as interpolated 19: Mark P m as interpolated
20: end if 20: end if
21: Set i = i + 1 21: Set i = i + 1
22: until Exist no more input of positioning tuple 22: until Exist no more input of positioning tuple

단, m=ik이고, k는 사용자 조절가능 파라미터로서 iki-n0을 만족. However, and m = ik, k satisfies iki-n0 as a user adjustable parameter. 즉 m은 사이즈 n인 윈도우 내부에서 사용자가 임의로 정한 점을 의미함. I.e., m is meaning that the user has arbitrarily set by the inside of the window size n.

도 10은 본 발명의 일 실시예에 따른 [알고리듬 3]를 설명하기 위한 것이다. 10 is for explaining the [algorithm 3] in accordance with one embodiment of the present invention.

도 10에서 이동 윈도우의 크기는 10으로 설정되어 있다. In Figure 10, the size of the moving window is set to 10. 또한, 필터링 및/또는 속도값 보정의 대상은 인덱스 [i-4]=([m])를 갖는 이동 데이터 튜플인 것으로 예시하였다. In addition, filtering and / or the target value of speed compensation is illustrated as a mobile data tuples with the index [i-4] = ([m]). 도 10에서 인덱스 [i-4]를 갖는 이동 데이터 튜플은 [알고리듬 3]에 따라 이미 필터링 된 것으로 가정하였다. Moving data tuples in Figure 10 with the index [i-4] is assumed to have already been filtered according to [Algorithm 3]. 따라서, [알고리듬 3]의 제18행에 따라, 이동 데이터 튜플 P i-4 의 속도 V i-4 는 이동 데이터 튜플 P i-5 의 속도 V i-5 과 이동 데이터 튜플 P i+5 의 속도 V i+5 를 이용하여 선형 인터폴레이션 된 값으로 대체된다. Thus, in accordance with claim 18 rows of [Algorithm 3], the mobile data tuple P rate of the i-4 V i-4 are mobile data tuple P i-5 speed V i-5 and the mobile data tuple P i + 5 the speed of the using the V i + 5 is replaced by a linear interpolation value.

도 11은 본 발명의 다른 실시예에 따른 위치 데이터 오류 필터링 및 보정 방법을 설명하기 위한 것이다. 11 is for explaining the position data and error correction filtering process according to another embodiment of the present invention.

도 11에서는 [알고리듬 3]의 제17~20행에 의한 인터폴레이션 방법으로부터 변형된 인터폴레이션 방법을 사용한 결과를 나타낸다. In Figure 11 shows the results of using the interpolation method modified from the interpolation method according to claim 17 to 20 rows of [Algorithm 3]. 도 11에서는 이동 윈도우 내의 복수 개의 데이터를 이용한 비선형 인터폴레이션 방법을 이용한다. In Figure 11 uses a linear interpolation method using a plurality of data in a moving window. 예컨대, 이동 윈도우 내에 포함된 복수 개의 데이터와 최소 자승법을 이용하여 근사화한 점근선에 해당하는 값을 이용하여 인덱스 [i-4]를 갖는 이동 데이터 튜플을 보정할 수 있다. For example, it is possible to correct the movement of data tuples with the index [i-4] by using a value corresponding to a plurality of data and the asymptotic approximation using the least square method included in the moving window.

이상 도 8 내지 도 11에서는 본 발명의 실시예에 따른 각종 알고리듬의 원리를 설명하기 위한 예를 제시하였는데, 이러한 예시가 본 발명을 한정하기 위한 것이 아님은 명백하다. In the above 8 to 11 were presented an example illustrating the principles of various algorithms according to an embodiment of the present invention, this example is not intended to limit the present invention will be apparent. 또한, [알고리듬 1], [알고리듬 2], 및 [알고리듬 3]은 도 8 내지 도 11을 참조하지 않고도 명확이 이해할 수 있을 정도로 구체적으로 기술되어 있다는 점을 이해할 수 있으며, 도 1 내지 도 7에 나타낸 실증결과를 도출해 낸 작동 가능한 코드임을 이해할 수 있다. In addition, the [algorithm 1] and [Algorithm 2], and [Algorithm 3] in Fig. 8 to can appreciate that enough is clearly understood without reference to Figure 11 is described in detail, Figs. 1 to 7 I can understand that the work we delivered empirical results indicated code.

마지막으로 우리는 필터링에 대한 확률 분포의 효과를 조사할 필요가 있다. Finally, we need to examine the effect of the probability distribution for the filter. 일반적으로 정규분포는 다양한 에러들과 필터링을 설명하기 위해 보통 사용되는 분포이다. Typically, a normal distribution is a distribution that is usually used to describe the various errors and filtered. 그러나 진전된 연구들은 인간 이동성 패턴이 Levy Walk [6]와 같이 헤비 테일 분포(heavy tailed distribution)를 따른다고 지적하고 있다. However, advanced studies have pointed out that according to the heavy tail distribution (heavy tailed distribution), such as a human mobility pattern Levy Walk [6]. 따라서 위치 정보의 분포가 Levy Walk 형식을 따를 수 있기 때문에, 필터링에 Levy Walk 분포를 적용한 경우의 효과를 알아볼 수 있다. Therefore, since the distribution of the location information can follow a Levy Walk type, you can enjoy the effect of applying the Walk Levy distribution for filtering.

<실시예> <Example>

이하, 본 발명의 일 실시예에 따른 위치 데이터의 오류여부 결정방법을 설명한다. Hereinafter, the method determines whether the error of the position data according to one embodiment of the present invention. 이 방법은 상술한 [알고리듬 1], [알고리듬 2], 또는 [알고리듬 3]을 참조하여 설명한다. This method will be described with reference to the above-described [Algorithm 1] and [Algorithm 2], or [Algorithm 3].

이 위치 데이터의 오류여부 결정방법은, 사용자 기기로부터 수집된 제1 위치 데이터(P c )의 오류여부를 결정하는 방법으로서, 상기 제1 위치 데이터(P c ) 및 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 이용하여 제1 속도(V c )를 산출하는 단계(S10)을 포함한다. If the error decision process of the position data is a method for determining the error if the the first position data (P c) collecting from the user equipment, the first position data (P c) and the collected history from the user equipment by using one or more position data it includes a step (S10) for calculating a first speed (V c). 여기서, c는, 예컨대 [알고리듬 1]/[알고리듬 2]의 i+1, 또는 [알고리듬 3]의 m일 수 있다. Wherein, c can, for example, one of the [algorithm 1] / [Algorithm 2] i + 1, or [Algorithm 3] m. 그리고 이 방법은 상기 제1 속도(V c )가 수학식 2를 만족하는 경우에는 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단하는 단계(S20)를 포함한다. And the method if they meet the first speed (V c) the equation (2) has a step (S20) it determines that there is an error in said first position data (P c).

[수학식 2] Equation (2)

V c > f(P), V c> f (P),

단, P는 상기 사용자 기기에 의해 수집된 하나 이상의 다른 위치 데이터들을 피트(fit)하는데 사용하는 확률분포의 모양을 결정하는 적어도 하나의 파라미터이다. However, P is at least one parameter that determines the shape of the probability distribution to be used for the at least one other location data collected by the user equipment pit (fit). 이때, 상기 하나 이상의 다른 위치 데이터들은, 상기 파라미터를 계산하기 위해 사용되는 윈도우 내에 포함된 위치 데이터일 수 있다. At this time, the at least one other location data may be in, the position data included in the window used for calculating the parameters. 예컨대, f(P)는 [알고리듬 1]의 MA speed + s × MSD speed 일 수 있으며, 이때, 파라미터 P는 MA speed 와 MSD speed 일 수 있다. For example, f (P) may be in the [algorithm 1] MA speed + s × MSD speed, this time, the parameters P may be a speed MA and MSD speed.

위에서 확률분포로서 정규분포, heavy tailed 분포, 감마 분포 등을 사용할수 있다. As probability distributions above can be used as the normal distribution, heavy tailed distribution, gamma distribution. 정규분포의 모양을 결정하는 파라미터는 기대값 및 표준편차이며, heavy tailed distribution의 모양을 결정하는 파라미터는 lamda1이며, 감마 분포의 모양을 결정하는 파라미터는 임의의 양수 lamda2 및 alpha이다. Parameters determining the shape of the normal distribution is the expected value and standard deviation and a parameter for determining the shape of the heavy tailed distribution is lamda1, a parameter that determines the shape of the gamma distribution is any positive number lamda2 and alpha. 표준편차는 과거 n개의 수집된 위치정보를 정규 분포에 피트시키기 위해 계산하는 값이다. The standard deviation is a value calculated in order to pit the past n positions of the collected information to a normal distribution. lamda1는 과거 n개의 수집된 위치정보를 heavy tailed distribution에 피트시켰을 때에 얻어지는 방정식의 근이다. lamda1 is a root of equation obtained when sikyeoteul feet past the n number of the collected location information to the heavy tailed distribution. lamda2 및 alpha는 과거 n개의 수집된 위치정보를 감마 분포에 피트시켰을 때에 얻어지는 방정식의 근이다. lamda2 and alpha is the root of the equation obtained when sikyeoteul feet past the n number of the collected location information to the gamma distribution.

위의 어느 하나의 분포의 모양을 결정하는 파라미터를 수학식 2에서 사용하는 이유는, 현재 수집한 위치 데이터에 관한 속도에 오류가 있는지 여부를 결정하는 기준으로서, 최근의 속도의 MA로부터 일정수준 이상의 범위를 벗어나는지 여부를 이용하기로 했기 때문이다. The reason for using a parameter for determining the shape of any of the distribution of the above equation (2) is, at least as a reference to determine whether an error rate related to the current position data acquisition, a certain level from the last speed of MA It is due to the use whether out of range.

상술한 단계(S20)는 예컨대 [알고리듬 1] 또는 [알고리듬 2]의 제6행 및 제7행, 또는 제12행 및 제14행에 의해 구현될 수 있다. The above-described step (S20) may be implemented by, for example, [Algorithm 1] and [Algorithm 2] the sixth row and the seventh row, or 12 lines and 14 rows.

이때, 상기 확률분포는 정규분포이고 상기 P는 상기 정규분포의 모양을 결정하는 적어도 하나의 파라미터일 수 있다. In this case, the probability distribution is a normal distribution and the P can be at least one parameter that determines the shape of the normal distribution. 또는, 상기 확률분포는 heavy tailed 분포이고, 상기 P는 상기 heavy tailed 분포의 모양을 결정하는 적어도 하나의 파라미터일 수 있다. Alternatively, the probability distribution is a heavy tailed distribution, the P may be at least one of the parameters determining the appearance of the heavy tailed distribution. 또는, 상기 확률분포는 감마 분포이고, 상기 P는 상기 감마 분포의 모양을 결정하는 적어도 하나의 파라미터일 수 있다. Or, wherein the probability distribution is a Gamma distribution, the P may be at least one of the parameters determining the shape of the gamma distribution.

이때, 상기 확률분포는 정규분포이고, 위의 수학식 2는 V c > MA speed + s1 * MSD speed 이며, MA speed 는 상기 하나 이상의 다른 위치 데이터들로부터 계산된 속도의 이동평균이고, MSD speed 는 상기 하나 이상의 다른 위치 데이터들로부터 계산된 표준편차의 평균값이며, 상기 s1은 미리 결정된 상수일 수 있다([알고리듬 1], [알고리듬 2], 및 [알고리듬 3]의 6행 참조). In this case, the probability distribution is a normal distribution, equation 2 above is V c> MA speed + s1 * and MSD speed, MA speed is the shift of the speed calculated from the one or more other location data average, MSD speed is the average value of the standard deviation calculated from the one or more other location data, the s1 can be a predetermined constant (see line 6 of [algorithm 1] and [algorithm 2], and [algorithm 3]).

이때, 상기 산출하는 단계(S10)에서는, 상기 제1 위치 데이터(P c ) 및 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 이용하여 상기 제1 속도(V c ) 및 제1 가속도(a c )를 산출할 수 있다. At this time, in the step (S10) to the calculated first position data (P c) and using the one or more position data of the past collecting from the user device, the first speed (V c) and the first acceleration (a c) it can be calculated.

또한, 상기 판단하는 단계(S20)에서는, 상기 제1 속도(V c )가 식 (1)을 만족하거나 또는 상기 제1 가속도(a c )가 미리 결정된 최대 가속도(MAX acceleration ) 이상인 경우에는([알고리듬 1], [알고리듬 2], 또는 [알고리듬 3]의 제6행 참조), 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단할 수 있다. Further, in the step (S20) to the determination, not less than the first speed (V c) the expression satisfies the following (1) or said first acceleration (a c) is a predetermined maximum acceleration (MAX acceleration) has ([ algorithm 1], see the sixth row of [algorithm 2], or [algorithm 3]), wherein it can be determined that there is an error in the first position data (P c).

이때, 이 실시예에 따른 방법은, 상기 제1 속도(V c )가 수학식 3 및 수학식 4을 만족하면 상기 제1 속도(V c )를 수학식 5에 의해 산출되는 값으로 대체하는 단계(S30)를 더 포함할 수 있다. In this case, the method according to this embodiment includes the steps of replacing the first speed (V c) that if any of the equations (3) and (4) to the first speed (V c) to a value calculated by Equation (5) a (S30) may be further included.

[수학식 3] [Equation 3]

V c >= MA speed + s2 * MSD speed V c> = MA + s2 * MSD speed speed

단, s2는 미리 결정된 값, However, s2 is a predetermined value,

[수학식 4] [Equation 4]

V c > MIN velocity V c> MIN velocity

단, MIN velocity 는 미리 결정된 최저 속도 However, MIN is a predetermined minimum speed velocity

[수학식 5] [Equation 5]

MA speed + s2 * MSD speed MA speed + s2 * MSD speed

이때, 단계(S30)는 예컨대 [알고리듬 1], [알고리듬 2], 또는 [알고리듬 3]의 제9행 내지 제11행에 의해 구현될 수 있다. In this case, the step (S30), for example [Algorithm 1] and [Algorithm 2], or [Algorithm 3], can be implemented by the ninth line to the 11th line.

이 실시예에 따른 방법은, 상기 제1 가속도(a c )가 미리 결정된 최대 가속도(MAX acceleration ) 이상인 경우에는([알고리듬 1], [알고리듬 2], 또는 [알고리듬 3]의 제12행 참조), 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단하고([알고리듬 1], [알고리듬 2], 또는 [알고리듬 3]의 제13행 참조), 상기 제1 속도(V c )를 상기 하나 이상의 다른 위치 데이터들로부터 계산된 속도의 이동평균(MA speed ) 값으로 대체하고([알고리듬 1], [알고리듬 2], 또는 [알고리듬 3]의 제14행 참조), 상기 제1 가속도(a c )를 상기 미리 결정된 최대 가속도(MAX acceleration )로 대체하는([알고리듬 1], [알고리듬 2], 또는 [알고리듬 3]의 제15행 참조) 단계를 더 포함할 수 있다. The process according to this embodiment is provided with the first acceleration (a c) is is greater than or equal to a predetermined maximum acceleration (MAX acceleration) (see the line of claim 12 [Algorithm 1] and [Algorithm 2], or [Algorithm 3]) , determination is made that the error in said first position data (P c) and wherein the ([algorithm 1] and [algorithm 2], or see the 13th line of the [algorithm 3]), the first speed (V c) substituted in the speed calculated from one or more other location data moving average (MA speed) values ([algorithm 1] and [algorithm 2], or see the lines 14 of the [algorithm 3]), the first acceleration (a c) the pre-determined replacement to the maximum acceleration (acceleration mAX) (see also line 15 of [algorithm 1] and [algorithm 2], or [algorithm 3]) may further comprise the step.

또한, 이 실시예에 따른 방법은, 상기 속도의 이동평균(MA speed )은 상기 제1 속도(V c ) 또는 상기 대체된 제1 속도를 반영하여 갱신되도록 되어 있을 수 있다. In addition, the method according to this embodiment, movement of the average speed (speed MA) may be updated to reflect that the first speed of the first speed (V c) or the alternative.

또한, 이 실시예에 따른 방법은, 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단된 경우([알고리듬 2] 또는 [알고리듬 3]의 제17행 참조), 상기 속도(V c )의 값을 상기 속도(V c )에 인접한 복수 개의 속도 값들을 이용하여 인터폴레이션 한 값으로 대체하고([알고리듬 2] 또는 [알고리듬 3]의 제18행 참조), 상기 현재 위치 데이터(P c )가 인터폴레이션되었다는 것을 기록하도록([알고리듬 2] 또는 [알고리듬 3]의 제19행 참조) 되어 있다. In addition, the method according to this embodiment, when it is determined to be in error in said first position data (P c) (see the line 17 in the [algorithm 2] or [Algorithm 3]), the speed (V c) (see line 18 of [algorithm 2], or [algorithm 3]), the value the speed (V c) using the plurality of velocity values adjacent to and alternate with the interpolation value, the current location data (P c) is to record that the interpolation is (see the line 19 in the [algorithm 2] or [algorithm 3]).

위에서, 예컨대, c가 [알고리듬 2]의 i+1을 나타내는 것이라면, 상기 인터폴레이션은 수학식 6에의해 이루어질 수 있다. Above, for example, if the c represents the i + 1 of [Algorithm 2], the interpolation may be accomplished by by equation (6).

[수학식 6] [Equation 6]

((V i+1 - V i-1 ) × (t i - t i-1 )) / (t i+1 - t i-1 ) + V i-1, ((V i + 1 - V i-1) × (t i - t i-1)) / (t i + 1 - t i-1) + V i-1,

단, t i-1 , t i , 및 t i+1 는 각각 위치 데이터 인덱스 i-1, i, i+1에서의 절대시각을 나타냄. However, t i-1, t i , and t i + 1 represents the absolute time at each location data index i-1, i, i + 1.

또는, [알고리듬 2] 및 [알고리듬 3]에 나타낸 것과는 달리, 상기 인터폴레이션은 윈도우에 포함된 모든 데이터를 이용하여 수행될 수 있으며, 비선형적 피팅(fit) 방법을 이용할 수도 있다. Or, otherwise than shown in [Algorithm 2] and [Algorithm 3], the interpolation may be performed using all of the data contained in the window, it is also possible to use a non-linear fitting (fit) method.

또한, 이 방법에 있어서, 상기 적어도 하나의 파라미터는 조절 가능한 크기(n)를 갖는 윈도우에 포함된 복수 개의 위치 데이터들로부터 계산되며, M개의 연속적인 위치 데이터 모두에 오류가 있는 것으로 판단된 경우 상기 윈도우의 크기를 증가시킬 수 있도록 되어 있고, L개의 연속적인 위치 데이터 모두에 오류가 없는 것으로 판단된 경우 상기 윈도우의 크기를 감소시킬 수 있도록 되어 있는 것을 특징으로 한다. Further, in the method, the at least one parameter is calculated from a plurality of position data contained in the window having an adjustable size (n), wherein if it is determined that there are errors in both the M consecutive position data is to increase the size of the window and, if it is determined that there is no error in both the L consecutive position data is characterized in that which is to reduce the size of the window. 여기서, M과 L은 설정이 가능한 자연수이다. Here, M and L is a natural number of settings available.

본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. The present invention has been described for the embodiment shown in the drawings as it will be understood that it is the only, and those skilled in the art from which the various modifications and other embodiments equivalent to be illustrative. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다. Therefore, the true technical protection scope of the invention as defined by the technical spirit of the appended claims.

Claims (13)

  1. 사용자 기기로부터 수집된 제1 위치 데이터(P c )의 오류여부를 결정하는 방법으로서, A method for determining whether or not an error of the first position data (P c) collecting from the user equipment,
    상기 제1 위치 데이터(P c ) 및 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 이용하여 상기 제1 위치 데이터(P c )에 연관된 제1 속력(V c )을 산출하는 단계; Calculating a first speed (V c) associated with the first position data (P c) by using the first position data (P c) and the one or more locations of the past data collected from the user device; And
    상기 제1 속력(V c )이 식 (1)을 만족하는 경우에는, 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단하는 단계를 포함하는, The first speed (V c) is in the case of satisfying the formula (1), comprising the step of determining that there is an error in said first position data (P c),
    위치 데이터의 오류여부 결정방법. How to determine whether an error of the position data.
    식 (1) : V c > f(P), Equation (1): V c> f (P),
    단, P는 상기 사용자 기기에 의해 수집된 하나 이상의 다른 위치 데이터들을 피트(fit)하는데 사용하는 확률분포의 모양을 결정하는 적어도 하나의 파라미터로서, 상기 제1 위치 데이터(P c )의 수집 시점보다 과거에 결정된 하나 이상의 속력을 이용하여 확률분포를 기반으로 하여 산출된 통계값을 포함하는 파라미터이며, However, P is than collected in time, the first position data (P c) as at least one parameter that determines the shape of the probability distribution to be used for one or more feet (fit) other location data collected by the user equipment a parameter containing the statistical value calculated based on the probability distribution determined in the past by using one or more of speed,
    f( )는 상기 파라미터 P를 독립변수로 받아들여 상기 제1 속력(V c )과 비교될 수 있는 값을 출력하는 함수임. f () is a function being to accept the parameter P as the independent variable output a value that can be compared to the first speed (V c).
  2. 제1항에 있어서, According to claim 1,
    상기 확률분포는 정규분포이고 상기 P는 상기 정규분포의 모양을 결정하는 적어도 하나의 파라미터이거나, The probability distribution is a normal distribution and the P is either at least one parameter that determines the shape of the normal distribution,
    상기 확률분포는 heavy tailed 분포이고, 상기 P는 상기 heavy tailed 분포의 모양을 결정하는 적어도 하나의 파라미터이거나, 또는 Wherein the probability distribution is heavy tailed distribution, or wherein P is at least one parameter that determines the shape of the heavy tailed distribution, or
    상기 확률분포는 감마 분포이고, 상기 P는 상기 감마 분포의 모양을 결정하는 적어도 하나의 파라미터인, Wherein the probability distribution is a Gamma distribution, the P is at least one parameter that determines the shape of the gamma distribution,
    위치 데이터의 오류여부 결정방법. How to determine whether an error of the position data.
  3. 제1항에 있어서, According to claim 1,
    상기 확률분포는 정규분포이고, The probability distribution is a normal distribution,
    식 (1)은 V c > MA speed + s1 * MSD speed 이며, MA speed 는 상기 하나 이상의 다른 위치 데이터들로부터 계산된 속력의 이동평균이고, MSD speed 는 상기 하나 이상의 다른 위치 데이터들로부터 계산된 이동표준편차이며, 상기 s1은 미리 결정된 상수인, Formula (1) V c> MA speed + s1 * MSD speed and, MA speed is the speed of movement of the average calculated from the one or more other location data, MSD speed is a movement calculated from the one or more other location data a standard deviation, wherein s1 is a predetermined constant,
    위치 데이터 오류여부 결정방법. How to determine whether the location data errors.
  4. 제1항에 있어서, According to claim 1,
    상기 산출하는 단계에서는, 상기 제1 위치 데이터(P c ) 및 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 이용하여 상기 제1 속력(V c ) 및 제1 가속도(a c )를 산출하며, In the step of the calculation, and calculates the first position data (P c) and the user of the using the at least one location data for the past collection from the device a first speed (V c) and the first acceleration (a c) ,
    상기 판단하는 단계에서는, 상기 제1 속력(V c )이 식 (1)을 만족하거나 또는 상기 제1 가속도(a c )가 미리 결정된 최대 가속도(MAX acceleration ) 이상인 경우에는, 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단하는, In the step of the determination, the first is greater than or equal to the speed (V c), the formula (1) is satisfied, or the first acceleration a (a c) is a predetermined maximum acceleration (MAX acceleration), the first position data ( to determine the P c) to be in error,
    위치 데이터 오류여부 결정방법. How to determine whether the location data errors.
  5. 제3항에 있어서, 4. The method of claim 3,
    상기 제1 속력(V c )이 식 (2) 및 식 (3)을 만족하면 상기 제1 속력(V c )을 식 (4)에 의해 산출되는 값으로 대체하는 단계를 더 포함하는, 위치 데이터 오류여부 결정방법. If any of the first speed (V c), the formula (2) and (3) further comprises the step of replacing said first speed (V c) to a value calculated by Equation (4), the position data how to determine whether the error.
    식 (2): V c >= MA speed + s2 * MSD speed , 단, s2는 미리 결정된 값, Equation (2): V c> = MA speed + s2 * MSD speed, However, s2 is a predetermined value,
    식 (3): V c > MIN velocity , 단 MIN velocity 는 미리 결정된 최저 속력, Equation (3): V c> MIN velocity, velocity stage MIN is a predetermined minimum speed,
    식 (4): MA speed + s2 * MSD speed Equation (4): MA speed + s2 * MSD speed
  6. 제4항에 있어서, 5. The method of claim 4,
    상기 제1 가속도(a c )가 미리 결정된 최대 가속도(MAX acceleration ) 이상인 경우에는, 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단하고, 상기 제1 속력(V c )을 상기 하나 이상의 다른 위치 데이터들로부터 계산된 속력의 이동평균(MA speed ) 값으로 대체하는, 위치 데이터 오류여부 결정방법. The first acceleration (a c) is a predetermined maximum acceleration (MAX acceleration), the said first position data (P c) or more in the determination is made that the error, wherein the first speed (V c) one wherein the not less than to replace the moving average of the speed calculated from the other location data (MA speed) value, the method determines whether the location data error.
  7. 제5항에 있어서, 6. The method of claim 5,
    상기 속력의 이동평균(MA speed )은 상기 제1 속력(V c ) 또는 상기 대체된 제1 속력을 반영하여 갱신되도록 되어 있는, 위치 데이터 오류여부 결정방법. Movement of the average speed (speed MA) is the first speed (V c) or method that is to be updated to reflect the replacement of the first speed, determining whether the location data error.
  8. 제1항 또는 제6항에 있어서, According to claim 1 or 6,
    상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단된 경우, When it is determined that there is an error in said first position data (P c),
    상기 속력(V c )의 값을 상기 속력(V c )에 인접한 복수 개의 속력 값들을 이용하여 인터폴레이션 한 값으로 대체하는 것을 특징으로 하는, 위치 데이터 오류여부 결정방법. The speed (V c) how the value of the speed (V c), whether the error location data, comprising a step of replacing one of interpolation values using a plurality of speed values adjacent to the crystal.
  9. 제8항에 있어서, 상기 인터폴레이션은 식 (5)에 의해 이루어지는 것을 특징으로 하는, 위치 데이터 오류여부 결정방법. The method of claim 8, wherein the interpolation equation (5), the method characterized determining whether the location data error made by the.
    식 (5): ((V c+1 - V c-1 ) × (t c - t c-1 )) / (t c+1 - t c-1 ) + V c-1, Equation (5): ((V c + 1 - V c-1) × (t c - t c-1)) / (t c + 1 - t c-1) + V c-1,
    단, t c-1 , t c , 및 t c+1 는 각각 위치 데이터 인덱스 c-1, c, c+1에서의 절대시각을 나타냄. However, t c-1, t c , t c + 1 and represents the absolute time at each location data index c-1, c, c + 1.
  10. 제8항에 있어서, The method of claim 8,
    상기 적어도 하나의 파라미터는 조절 가능한 크기를 갖는 윈도우에 포함된 복수 개의 위치 데이터들로부터 계산되며, The at least one parameter is calculated from a plurality of position data contained in the window having an adjustable size,
    상기 인터폴레이션은 상기 윈도우에 포함된 복수 개의 데이터를 이용하여 수행되는 것을 특징으로 하는, Said interpolation, characterized in that is carried out using a plurality of data contained in said window,
    위치 데이터 오류여부 결정방법. How to determine whether the location data errors.
  11. 제1항에 있어서, According to claim 1,
    상기 적어도 하나의 파라미터는 조절 가능한 크기를 갖는 윈도우에 포함된 복수 개의 위치 데이터들로부터 계산되며, The at least one parameter is calculated from a plurality of position data contained in the window having an adjustable size,
    M개의 연속적인 위치 데이터 모두에 오류가 있는 것으로 판단된 경우 상기 윈도우의 크기를 미리 정의된 제1값까지 증가시킬 수 있도록 되어 있고, When it is determined that there are errors in both the M consecutive position data, and is to be increased to the first value of the predefined size of the window,
    L개의 연속적인 위치 데이터 모두에 오류가 없는 것으로 판단된 경우 상기 윈도우의 크기를 미리 정의된 제2값까지 감소시킬 수 있도록 되어 있는 것을 특징으로 하는, If it is determined in both the L consecutive position data to be error-free, it characterized in that which is to be reduced to a second value of the predefined size of the window,
    위치 데이터의 오류여부 결정방법. How to determine whether an error of the position data.
  12. 사용자 기기로부터 수집된 제1 위치 데이터(P c )의 오류여부를 결정하는 장치로서, An apparatus for determining whether or not an error of the first position data (P c) collecting from the user equipment,
    저장부; Storage unit; 및 처리부를 포함하며, And a processing unit,
    상기 저장부는 상기 제1 위치 데이터(P c )와 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 저장하도록 되어 있고, The storage unit is configured to store the one or more locations of the past data collected from the first position data (P c) and the user equipment,
    상기 처리부는, The processing section,
    상기 제1 위치 데이터(P c ) 및 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 이용하여 상기 제1 위치 데이터(P c )에 관한 제1 속력(V c )을 산출하도록 되어 있고, 그리고 It is adapted to output a first speed (V c) on the first position data (P c) by using the first position data (P c) and the one or more position data of the past collecting from the user device, and
    상기 제1 속력(V c )이 식 (1)을 만족하는 경우에는, 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단하도록 되어 있는, In the case of satisfaction of the first speed (V c), the formula (1), adapted to determine that an error in said first position data (P c),
    위치 데이터 오류여부 결정장치. Whether position data error determining device.
    식 (1) : V c > f(P), Equation (1): V c> f (P),
    단, P는 상기 사용자 기기에 의해 수집된 하나 이상의 다른 위치 데이터들을 피트(fit)하는데 사용하는 확률분포의 모양을 결정하는 적어도 하나의 파라미터로서, 상기 제1 위치 데이터(Pc)의 수집 시점보다 과거에 결정된 하나 이상의 속력을 이용하여 확률분포를 기반으로 하여 산출된 통계값을 포함하는 파라미터이며, However, P is the past than the acquisition time of the first position data (Pc) as the at least one parameter that determines the shape of the probability distribution to be used for one or more feet (fit) other location data collected by the user equipment using one or more of the determined speed and the parameters including the statistical value calculated on the basis of a probability distribution,
    f( )는 상기 파라미터를 독립변수로 받아들여 상기 제1 속력(V c )과 비교될 수 있는 값을 출력하는 함수임. f () is a function being to accept the parameter as an independent variable output a value that can be compared to the first speed (V c).
  13. 사용자 기기로부터 수집된 제1 위치 데이터(P c )의 오류여부를 결정하는 장치에서 실행되는 프로그램을 저장한 컴퓨터로 읽을 수 있는 매체로서, As a medium that can read a program executed in a device that determines whether or not an error of the first position data (P c) collecting from the user equipment to a storage computer,
    상기 프로그램은, The program comprising:
    상기 장치에, To the device,
    상기 제1 위치 데이터(P c ) 및 상기 사용자 기기로부터 수집된 과거의 하나 이상의 위치 데이터를 이용하여 상기 제1 위치 데이터(P c )에 관한 제1 속력(V c )을 산출하는 단계; Calculating a first speed (V c) on the first position data (P c) by using the first position data (P c) and the one or more locations of the past data collected from the user device; And
    상기 제1 속력(V c )이 식 (1)을 만족하는 경우에는, 상기 제1 위치 데이터(P c )에 오류가 있는 것으로 판단하는 단계를 In the case of satisfaction of the first speed (V c), the formula (1), the step of determining that there is an error in said first position data (P c)
    수행하도록 되어 있는, 컴퓨터로 읽을 수 있는 매체. Readable medium of the computer that is to be performed.
    식 (1) : V c > f(P), Equation (1): V c> f (P),
    단, P는 상기 사용자 기기에 의해 수집된 하나 이상의 다른 위치 데이터들을 피트(fit)하는데 사용하는 확률분포의 모양을 결정하는 적어도 하나의 파라미터로서, 상기 제1 위치 데이터(Pc)의 수집 시점보다 과거에 결정된 하나 이상의 속력을 이용하여 확률분포를 기반으로 하여 산출된 통계값을 포함하는 파라미터이며, However, P is the past than the acquisition time of the first position data (Pc) as the at least one parameter that determines the shape of the probability distribution to be used for one or more feet (fit) other location data collected by the user equipment using one or more of the determined speed and the parameters including the statistical value calculated on the basis of a probability distribution,
    f( )는 상기 파라미터를 독립변수로 받아들여 상기 제1 속력(V c )과 비교될 수 있는 값을 출력하는 함수임. f () is a function being to accept the parameter as an independent variable output a value that can be compared to the first speed (V c).
KR20120103572A 2012-03-30 2012-09-18 Method for determining the presence of positioning data error KR101467317B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120033533 2012-03-30
KR20120033533 2012-03-30

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14389475 US20150087333A1 (en) 2012-03-30 2013-03-29 Method for correcting position information
PCT/KR2013/002663 WO2013147560A1 (en) 2012-03-30 2013-03-29 Method for correcting position information

Publications (2)

Publication Number Publication Date
KR20130111161A true KR20130111161A (en) 2013-10-10
KR101467317B1 true KR101467317B1 (en) 2014-12-01

Family

ID=49632859

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20120103572A KR101467317B1 (en) 2012-03-30 2012-09-18 Method for determining the presence of positioning data error

Country Status (1)

Country Link
KR (1) KR101467317B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100535394B1 (en) * 2003-08-21 2005-12-08 현대자동차주식회사 Method for processing gps signals
JP4119256B2 (en) * 2001-03-05 2008-07-16 クゥアルコム・インコーポレイテッドQualcomm Incorporated Method and apparatus for providing an improved position estimate based on the initial coarse position estimate
KR20090089343A (en) * 2006-11-07 2009-08-21 스카이후크 와이어리스, 인크. System and method for estimating positioning error within a wlan-based positioning system
JP4348441B2 (en) * 2007-01-22 2009-10-21 国立大学法人 大阪教育大学 Position detection apparatus, position detecting method, the data judging unit, data determination method, computer program and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4119256B2 (en) * 2001-03-05 2008-07-16 クゥアルコム・インコーポレイテッドQualcomm Incorporated Method and apparatus for providing an improved position estimate based on the initial coarse position estimate
KR100535394B1 (en) * 2003-08-21 2005-12-08 현대자동차주식회사 Method for processing gps signals
KR20090089343A (en) * 2006-11-07 2009-08-21 스카이후크 와이어리스, 인크. System and method for estimating positioning error within a wlan-based positioning system
JP4348441B2 (en) * 2007-01-22 2009-10-21 国立大学法人 大阪教育大学 Position detection apparatus, position detecting method, the data judging unit, data determination method, computer program and storage medium

Also Published As

Publication number Publication date Type
KR20130111161A (en) 2013-10-10 application

Similar Documents

Publication Publication Date Title
US20110178705A1 (en) Using Filtering With Mobile Device Positioning In A Constrained Environment
US20120046860A1 (en) Passive crowd-sourced map updates and alternate route recommendations
US20060200303A1 (en) The static or dynamic roadway travel time system to determine the path with least travel time between two places
US20150160024A1 (en) Ranking of Path Segments Based on Incident Probability
US20140156180A1 (en) Reduction Of The Impact Of Hard Limit Constraints In State Space Models
US9108640B2 (en) Systems and methods for monitoring and reporting road quality
Faragher et al. SmartSLAM-an efficient smartphone indoor positioning system exploiting machine learning and opportunistic sensing
Varshavsky et al. Calibree: Calibration-free localization using relative distance estimations
CN103218442A (en) Method and system for life mode analysis based on mobile device sensor data
Pham et al. Privacy-preserving reconstruction of multidimensional data maps in vehicular participatory sensing
Zhuang et al. Autonomous smartphone-based WiFi positioning system by using access points localization and crowdsourcing
US20140288821A1 (en) Vehicle Arrival Prediction
Park et al. Smartphone-based pedestrian tracking in indoor corridor environments
KR20110026229A (en) Localization system using fingerprint
US9161175B1 (en) Location transition determination
Manvell et al. SADMAM-Combining measurements and calculations to map noise in Madrid
US20120166071A1 (en) Navigation system with congestion estimation mechanism and method of operation thereof
Kim et al. Distance estimation with weighted least squares for mobile beacon-based localization in wireless sensor networks
US20140129175A1 (en) Map-based adaptive sampling of orientation sensors for positioning
US20150264534A1 (en) Method and apparatus for adaptive positioning
Menard et al. Comparing the GPS capabilities of the Samsung Galaxy S, Motorola Droid X, and the Apple iPhone for vehicle tracking using FreeSim_Mobile
Evennou et al. Improving positioning capabilities for indoor environments with WiFi
Fontaine et al. Part 1: Freeway operations: Probe-based traffic monitoring systems with wireless location technology: An investigation of the relationship between system design and effectiveness
KR20100121903A (en) Method and system of estimating positions of wlan aps
US20160116291A1 (en) Facilitating location determination employing vehicle motion data

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration
GRNT Written decision to grant