KR101510458B1 - 위치정보 표현방법, 위치정보 처리방법, 위치정보모델 생성방법, 및 위치정보처리장치 - Google Patents

위치정보 표현방법, 위치정보 처리방법, 위치정보모델 생성방법, 및 위치정보처리장치 Download PDF

Info

Publication number
KR101510458B1
KR101510458B1 KR20120071212A KR20120071212A KR101510458B1 KR 101510458 B1 KR101510458 B1 KR 101510458B1 KR 20120071212 A KR20120071212 A KR 20120071212A KR 20120071212 A KR20120071212 A KR 20120071212A KR 101510458 B1 KR101510458 B1 KR 101510458B1
Authority
KR
South Korea
Prior art keywords
location
user
information
probability
location information
Prior art date
Application number
KR20120071212A
Other languages
English (en)
Other versions
KR20130077754A (ko
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
Application filed by 홍익대학교 산학협력단 filed Critical 홍익대학교 산학협력단
Publication of KR20130077754A publication Critical patent/KR20130077754A/ko
Application granted granted Critical
Publication of KR101510458B1 publication Critical patent/KR101510458B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Navigation (AREA)

Abstract

사용자에 관한 복수 개의 위치정보를 제공받는 단계, 및 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하는 단계를 포함하는 위치정보모델 생성방법이 공개된다.

Description

위치정보 표현방법, 위치정보 처리방법, 위치정보모델 생성방법, 및 위치정보처리장치{Location information representation method, location information processing method, location information model constructing method, and locational information processing apparatus}
본 발명은 복수 개의 지구위치정보를 군집화하는 기술 및 군집화된 영역 간의 천이확률을 제공하는 기술에 관한 것이다.
컴퓨터공학 및 전자공학을 포함하는 다양한 연구 분야에서, 사람이동모델은 정확한 연구결과 또는 부가가치가 큰 상품을 만들어낼 수 있다. 따라서 연구 및 산업의 다양한 분야에서 현실적인 사람이동패턴 정보에 대한 요구가 존재하여 왔다. 예를 들어, 전염병의 확산패턴 또는 인터넷에서의 바이러스 확산패턴은 사람이동패턴에 의해 영향을 받을 가능성이 크며, 따라서 관련된 이에 관한 연구가 수행되었다. 또한, 청소년 보호의 목적에서, 젊은이들이 자주 방문하는 장소의 영향을 파악하기 위해 젊은이들이 자주 방문하는 장소를 조사해 왔으며, 이러한 연구는 젊은이들이 가지고 다니는 휴대용 GPS 장치에 의해 수집되는 이동 데이터를 기초로 할 수 있었다. 성능예측 및 시뮬레이션 목적을 위한 MANET(Mobile Ad-hoc Network) 분야에서 사람이동모델에 대한 많은 요구가 존재해왔고, 그 밖에 다양한 연구 분야에도 현실적인 사람이동모델에 대한 강한 요구가 존재해 왔다. 복잡계 물리(complex system physics) 분야에서의 최근 연구 중 하나는 사람이동패턴의 최대 93%가 예측될 수 있다는 것을 보여준다. 스마트폰 또는 내비게이션 시스템과 같은 위치파악 시스템을 포함하는 이동장치를 폭넓게 사용하게 됨으로써, 매우 높은 정확성을 가지고 사람이동패턴에 대한 더 많은 정보를 수집할 수 있게 되었다. 보통 이러한 장치들은 GPS 또는 WPS(Wifi-based Positioning System)의 기능이 내장되어 있다. 위치파악을 위한 다른 간단한 방법은 휴대폰이 인접 기지국에 연결될 때 기지국 위치를 얻어내는 방법을 사용한다. 이러한 새로운 기술을 이용할 수 있게 됨으로써 사람이동연구를 위한 그 다음 단계가 가능하게 되었다. 예를 들어, 운반자의 위치정보를 수집하기 위한 기능을 갖는 GPS 또는 WPS 장치를 사용함으로써, 이러한 장치로부터 얻은 정보를 저장하고 처리함으로써 사람이 이동패턴을 알아낼 수 있다.
사람이동성에 대한 연구는 크게 개인모델 및 그룹모델의 두 그룹으로 구분될 수 있다. 개인모델은 성별, 나이, 직업 등의 개인적 파라미터에 의해 영향을 받으며 사람의 심리적 파라미터에 의해서도 영향을 받는다. 예를 들어, 길을 선택하는 사람의 습관 또는 경향이 연구되었고 직선의 깔끔한 도로가 선호된다는 결과가 나왔다. 또한, 사람의 소셜 네트워크를 기초로 자주 가는 곳을 파악하는 사회적 궤도 기반 연구도 수행되어 왔다. 그룹이동모델은 군대그룹에서 분명히 발견될 수 있다. 이러한 그룹에서, 리더는 그룹의 이동패턴에 크게 영향을 미칠 수 있다.
본 발명에서는 복수 개의 지구위치정보를 복수 개의 클러스터로 군집화하고, 군집화된 각 클러스터들 간의 천이확률을 제공할 수 있는 기술을 제공하고자 한다.
본 발명이 상술한 목적에 의해 제한되는 것은 아니다.
상술한 목적을 해결하기 위한 본 발명의 일 관점에 따른 사용자 위치 결정방법은, 사용자의 현재 위치를 제공받는 단계; 및 미리 결정된 복수 개의 위치영역(location cluster) 중 위의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계를 포함하며, 위의 복수 개의 위치영역은, 미리 수집된 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다.
본 발명의 다른 관점에 따른 위치정보모델 생성방법은, 사용자에 관한 복수 개의 위치정보를 제공받는 단계; 및 위의 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하는 단계를 포함한다.
본 발명의 또 다른 관점에 따른 위치정보 처리서버는, 통신부; 및 처리부를 포함하며, 위의 통신부는 사용자의 현재 위치를 수신하도록 되어 있고, 위의 처리부는, 미리 결정된 복수 개의 위치영역 중 위의 현재 위치가 매핑되는 제1 위치영역을 결정하도록 되어 있으며, 위의 복수 개의 위치영역은, 미리 수집된 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다.
발명의 또 다른 관점에 따른 위치정보 처리서버는, 통신부; 및 처리부를 포함하며, 위의 통신부는 사용자에 관한 복수 개의 위치정보를 수신하도록 되어 있고, 위의 처리부는, 위의 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역에 관한 정보를 생성하도록 되어 있다.
발명의 또 다른 관점에 따른 사용자 정보 수집방법은, 복수 개의 위치영역 중, 미리 결정된 특정 위치를 포함하는 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는 사용자에 관한 정보를 서버에게 요청하는 단계; 및 위의 사용자에 관한 정보를 위의 서버로부터 수신하는 단계를 포함하며, 위의 이동할 확률이 미리 결정된 규칙을 만족하는지 여부는, 위의 서버가, 위의 사용자의 현재 위치에 관한 정보를 제공받는 단계, 위의 복수 개의 위치영역 중 위의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계, 및 위의 제1 위치영역으로부터 위의 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는지를 판단하는 단계를 포함하는 프로세스를 수행하여 판단한다.
발명의 또 다른 관점에 따른 사용자 정보 수집방법은, 사용자가 미리 결정된 복수 개의 위치영역에 속하는 특정 위치영역으로 이동할 확률에 관한 정보를 서버에게 요청하는 단계; 및 위의 확률에 관한 정보를 위의 서버로부터 수신하는 단계를 포함하며, 위의 확률은, 위의 서버가, 위의 복수 개의 위치영역 중 위의 사용자의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계, 및 위의 사용자가 위의 제1 위치영역으로부터 위의 특정 위치영역으로 이동할 확률에 관한 정보를 추출하는 단계를 포함하는 프로세서를 수행하여 계산된다.
본 발명의 또 다른 관점에 따른 사용자 이동정보 제공방법은, 사용자의 현재 위치를 제공받는 단계; 미리 결정된 복수 개의 위치영역(location cluster) 중 위의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계; 및 위의 사용자가 위의 제1 위치영역으로부터 위의 복수 개의 위치영역에 속한 제2 위치영역으로 이동할 이동확률에 관한 정보를 제공하는 단계를 포함하며, 위의 복수 개의 위치영역은, 미리 수집된 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리하여 생성한 것이다.
본 발명에 의하면 복수 개의 지구위치정보를 복수 개의 클러스터로 군집화하고, 군집화된 각 클러스터들 간의 천이확률을 제공할 수 있는 기술이 제공될 수 있다.
본 발명이 상술한 효과에 의해 제한되는 것은 아니다.
도 1은 기초 실험의 결과를 보여준다.
도 2는 학생의 일상의 이동에 대한 수집된 데이터 세트로부터 얻은 클러스터링 실험을 위한 원본 자료이다.
도 3은 클러스터된 위치데이터 세트의 수적 결과를 보여준다.
도 4는 도 3의 결과를 시각화한 것으로서 실제 지도에 위치한 클러스터를 보여준다.
도 5는 GPS 궤적 데이터와 EM 클러스터링 알고리즘을 이용하여 학생의 일상생활을 위한 주요 장소를 식별한 결과를 토대로 Markov Chain 형태의 이동성 모델을 생성한 결과를 나타낸 것이다.
도 6a, 도 6b, 및 도 6c는 본 발명의 일 실시예에 따른 위치정보 제공방법을 설명하기 위한 것이다.
도 7은 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다.
도 8a 및 도 8b는 도 7에서 설명한 단계를 구체적인 예를 들어 설명하기 위한 것이다.
도 9는 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다.
도 10은 도 6a에 도시한 서버의 내부구조의 일 예를 나타낸다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있는 것으로, 이하의 실시예는 본 발명의 개시가 완전하도록 하며, 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.
본 발명의 일 실시예를 위한 실험에서는, 복잡한 사람이동모델 구조를 기초로 학생의 일상생활 이동성을 파악하였다. 학생의 일상 생활 이동패턴은 상용의 휴대용 GPS 장치를 가지고 다니는 학생 스스로에 의해 수집되었다. GPS 장치에 의해 수집되는 GPS 데이터는 20일 이상 저장된다. 위치 데이터는 몇몇 필수적이지 않은 정보뿐만 아니라 <시간, 위도, 경도> 튜플을 포함한다. 그러나 다음의 이유 때문에 이러한 가공되지 않은 숫자로 표현된 형식을 사용할 수 없다:
- 수로 표현된 데이터는 직관적이지 않으며 사람에 의해 인지될 수 없다. 그들은 사람에게 친숙한 형태로 해석되어야만 한다.
- GPS 시스템의 특성 때문에, 데이터는 위치에 대한 내재적인 오류를 포함한다. GPS 장치가 갖는 내재적인 오류 및 위치적 환경에 의한 영향 때문에, GPS 장치가 잠시 동안 정지하더라도 수집된 데이터는 GPS 장치가 이동하였다는 결과를 나타낼 수도 있다. 위치적 환경에 기인한 오류가 보다 심각하다, 즉, 특히 장치가 건물 안에 있을 때에는 건물 또는 장애물에 의해 차단 또는 왜곡되는 약한 GPS 신호 때문에 연속적 오류뿐만 아니라 많은 양의 위치적 오류가 수집될 수 있다.
- 따라서 하나의 위치 데이터는 사람의 정확한 위치정보를 나타낸다고 할 수 없다. 상당한 시간 동안 상당한 수의 데이터 세트가 인식되어야 한다.
상당한 개수 그리고 상당한 시간 간격 동안의 데이터 세트를 인식하여야만 한다. 이를 위해, 본 발명의 일 실시예에서는 클러스터링 테크닉을 사용할 수 있다. 그리고 이렇게 클러스터된 데이터는 건물명, 거리명, 도시명, 대학 등의 위치 정보로 표현될 수 있다. 사실상, 수집된 GPS 데이터는 군집화(클러스터)된다. 본 발명의 일 실시예에서는 개인 이동성 구성에 대해 EM 알고리즘을 기초로 한 클러스터링 테크닉을 사용하고, Levy Walk와 같은 최근의 연구를 기초로 한 적절한 클러스터링 방법을 사용할 수 있다. 이를 위해, 이하 본 발명의 일 실시예에서 사용되는 EM 클러스터링 알고리즘 및 EM 클러스터링 교정(calibration)의 방법을 설명한다. 또한, 수집된 GPS 데이터를 기초로 한 실험의 결과를 설명한다.
<기대 극대화(Expectation Maximization)에 의한 클러스터링>
EM 알고리즘은 1958년 Hartley 등에 의해 처음 소개되었고, 1977년 Dempster 등에 의해 발전하였다. EM 알고리즘은 최초 모델을 생성하고, 데이터 세트의 반복적인 개선이 최적 모델로 알려진 최대 우도로 이끈다. 대상이 혼합 모델에 속할 확률이 반복적으로 교정되어 최적 모델이 될 수 있고 모델의 적합성이 로그 우도 함수에 의해 결정될 수 있다. 다시 말해, EM 알고리즘은 확률 기반 클러스터링 알고리즘이다. 파라미터 θ, 관측 결과에 대한 임의 변수 X, 그리고 관찰될 수 없는 임의 변수 Z를 이용하여, (X, Z)의 확률 분포를 L(θ;X, Z)=p(X, Z|θ)와 같이 표현할 수 있다. 따라서 이는 [수학식 1]과 같이 우도 함수로 극대화되어야 한다:
[수학식 1]
Figure 112012052376246-pat00001
EM 알고리즘의 단계적 접근 방법에 의하여, 파라미터 θ(t)를 계산한 후에 그 다음 단계에서는 파라미터 θ(t+1)를 계산한다. 이들 단계 역시 기대(E) 단계 및 극대화(M) 단계로 구분된다. 기대 단계에서는, 알고리즘은 주어진 θ(t) 우도 함수의 기댓값 Q를 [수학식 2]와 같이 정의한다.
[수학식 2]
Figure 112012052376246-pat00002
극대화 단계에서는, 알고리즘은 [수학식 3]과 같이 Q를 극대화하여 θ(t+1)를 계산한다.
[수학식 3]
Figure 112012052376246-pat00003
실제로 구현할 때에는 임의의 다른 적절한 값(또는 벡터)으로 θ(0)를 초기화하고 원하는 범위의 근사치 레벨로 반복적으로 θ(t)를 계산한다.
<본 발명의 일 실시예에 따른 EM 클러스터링 방법>
본 발명의 일 실시예에서는 우선 적절한 EM 클러스터링 방법을 정의한다. GPS 장치로부터 수집된 사람 이동데이터를 사용하며, 이에 따라 EM 클러스터링을 위한 확률모델을 결정한다. 일반적으로 가우시안 분포로 알려진 정규분포를 사용할 수 있는데, 이러한 정규분포는 본 발명의 일 실시예에는 적합하지 않을 수 있다. 정규분포를 이용한 실험을 기초로 하면, 사람이동모델이 소위 Levy Walk라 불리는 두꺼운 꼬리 분포(heavy-tailed distribution)의 정규분포를 보이기 때문에 매우 부정확한 클러스터링 결과를 얻게 될 수 있다. 또한, 사람이동패턴은 보통 특정 시간 동안(사람의 거주기간) 1 또는 2 킬로미터 내의 영역(거주영역, 즉, 클러스터)에 집중되는 것을 관찰할 수 있었다. 그리고 거주영역 간의 전이는 거듭 제곱 분포(power law distribution) (사람 이동의 전이 기간)를 보인다. 따라서, 본 발명의 일 실시예에서는 지수분포와 유사한 거듭제곱분포를 사용할 수 있다. 이러한 분포를 본 발명에서는 변형된 지수분포라 칭할 수 있는데, 파라미터는 거주영역의 중심부로부터의 사람이동의 거리이다. 다음의 [수학식 4]는 본 발명의 일실시예에서 사용하는 확률 분포를 나타낸다.
[수학식 4]
Figure 112012052376246-pat00004
여기서, λ는 클러스터의 최대거리를 나타내는 제어 가능한 파라미터인데, 이값을 상수 값으로 고정할 수 있다. 또한, x는 사람의 현재 위치와 클러스터의 중심 사이의 거리를 나타낸다.
이와 더불어, 사람의 이동속도를 고려할 수 있다. 사람 이동의 거주기간 동안, 10Km/h이하의 속도를 갖는 경우 머무름 상태로 인식될 수 있다. 우리는 GPS 데이터로 특정 시간에 따라 이동하는 사람의 속도를 계산할 수 있고, 사람의 최대 걷는 속도에 의해 10Km/h라는 속도 임계치를 설정할 수 있다. 또한, 10Km/h 이상의 속도를 갖는 하나 이상의 GPS 데이터는 전이 기간으로 간주할 수 있고, 이때 사람은 이동상태에 있는 것으로 간주할 수 있다.
이러한 이동상태 및 머무름 상태의 구분과 함께, 클러스터의 영역크기, 즉, 클러스터 지름의 파라미터를 고려할 수 있다. 본 발명의 일 실시예에서는 사람의 통상적인 걷는 거리와 건물단지의 최대 크기를 고려하여 클러스터 지름을 최대 수 킬로미터로 정의할 수 있다. 클러스터 지름을 크게 설정하면 사람의 개략적인 이동패턴을 파악할 수 있고, 클러스터 지름을 작게 설정하면 더 정확한 사람이동패턴을 얻을 수 있다. 그러나 작은 클러스터 지름의 경우 계산량이 폭발적으로 증가할 수 있다. 그 결과, 본 발명의 일 실시예에 따른 실험에 있어서, 초기단계 실험을 기초로 클러스터 지름을 2 킬로미터 또는 3 킬로미터로 선택하였다. 이러한 기초 파라미터를 고려하여, 사람 이동성을 위한 클러스터링은 다음과 같은 단계로 수행할 수 있다.
- 클러스터 내부의 GPS 포인트로 클러스터를 초기화한다.
- 클러스터 내의 포인트 개수를 계산한다.
- [수학식 4]와 같은 확률 분포로 각각의 GPS 포인트가 클러스터에 속할 확률을 계산한다.
- 각 포인트가 나타내는 사람의 이동속도로 클러스터에 속한 포인트의 확률을 교정한다.
- EM 클러스터링 알고리즘을 반복한다.
더 높은 속도는 포인트의 이동 상태를 암시하고 따라서 포인트가 클러스터의 멤버가 될 가능성이 작음을 암시하기 때문에, 포인트의 속도로 포인트가 클러스터에 속할 확률을 교정할 수 있다. 높은 속도일 때, 교정과정은 포인트가 클러스터의 멤버일 확률을 많이 감소시킬 수 있다.
<실험 프로세스>
기초 실험
본 발명의 일 실시예에 따른 실험 예에서는, 위치파악 시스템으로부터 획득한 학생의 일상생활에 대한 위치 데이터를 이용했다. 위치파악 시스템 중, 실제 서비스 상태의 두 개의 일반적인 위치파악 시스템인 범지구 위치결정 시스템(Global Positioning System)과 3G 기지국 위치결정 시스템을 이용했다. 이 실험에서 우선 위치 데이터의 유용성을 파악하였다. 즉, 위치파악 시스템으로부터 수집된 데이터가 웬만한 오류를 가지고 실제 위치를 나타낼 만큼 충분히 정확한지 여부를 확인하였다. 3G 기지국(3GBS) 위치를 이용한 일반적인 위치파악 기술은 RSS(Radio Signal Strength) 시스템의 약점 때문에 위치에 오류(기지국의 잦은 변경)를 갖는 경향이 있기 때문에 그 유용성이 의심된다. 그리고 현재의 GPS 시스템은 명백한 문제를 갖는다. 즉, GPS 신호는 건물 안에서는 감소하거나 왜곡된다. 여기에서는 매우 기초적인 실험을 수행하였다. 고정된 위치에 대해, 수시간 동안 건물 외부영역과 건물 내부에서 GPS 및 3GBS 위치 데이터가 모두 수집되었다. GPS 데이터 수집을 위해 Garmin GPS 장치를 사용하였고, 3GBS 데이터 수집을 위해 3G 위치파악 기능을 갖는 상용의 갤럭시 탭을 사용하였다. 여기서, 포인트는 갤럭시 탭에 연결된 가장 인접한 기지국이다.
도 1은 기초 실험의 결과를 보여준다. GPS, 3GBS, 건물 내부, 및 외부 영역의 조합이 표시되었다. 데이터의 #은 각각의 실험 상황에 대해 획득된 전체 데이터의 개수를 의미한다. 이 실험에서 GPS 및 외부 영역 상황에 대해 2187개의 위치 데이터를 획득하였다. 두 개의 연속적인 위치파악 데이터 사이의 위치 변화를 감지하였는데, 위치파악 장치를 실험 위치에 고정하였기 때문에 그 데이터를 오류로 간주하였다. 두 개의 연속적인 데이터 사이의 거리는 오류거리이다. 오류거리는 미터 단위이다. Average 칼럼은 오류거리의 평균값을 보여주고, 또한 오류거리의 표준 편차를 보여준다. 그리고 Maximum은 최대오류거리를 보여준다. 마지막 칼럼 Error Ratio는 각각의 하위실험에서의 오류의 비율을 보여준다. 하위실험 중 하나인 GPS-내부에 따른 결과는 흥미롭다. GPS 장치가 GPS 신호를 획득할 수 없으면 과거의 속도 데이터를 이용하여 장치의 위치를 자동으로 추정하기 때문에 Garmin GPS 장치를 이용한 내부결과는 의미가 없을 수 있다. 다시 말해, 장치가 건물 안에서 GPS 신호를 놓치면 오직 현재 위치를 추정할 뿐이다. 이와 같은 장치 제조자의 정책의 "사용자 친화적인 추정"의 특징은 위치 데이터에서 큰 오류를 야기하고, 따라서 실험 결과는 현실적이지 않다. 이 실험을 통해 3GBS가 건물 안에서도 작동함을 발견하였으나, 이는 GPS 데이터에 비해 일반적으로 훨씬 큰 위치 오류를 보여준다. 또한, 36% 이상의 3GBS 데이터에 오류가 존재한다. GPS 데이터는 12.30%의 오류를 보이며, 오류위치에서 거리는 최대 52미터로 보통 건물 범위 내이다. 따라서 이 실험을 위한 추가적인 위치파악 데이터를 위해 GPS 장치를 사용한다.
<이동성 인식을 위한 클러스터링>
학생의 일상의 이동에 대한 수집된 데이터 세트로부터 도 2에 나타난 바와 같이 클러스터링 실험을 수행하였다. 휴대용 GPS 장치를 사용했고 결과를 MapSource 및 Google Earth로 시각화했다. 데이터는 한 달 동안 수집되었고 Google map을 사용하여 지원 수집자에 의해 시각적으로 검증되었다. 데이터 수집의 영역은 한국, 서울의 수도권으로, 인천의 학생의 집, 서울의 학생의 대학교를 포함하며, 부천 및 김포의 이동 자취를 포함한다. 도 2에서, 분 단위의 GPS 데이터 수집이 Google Earth를 사용하여 도시되었다. 예상되는 바와 같이, 수많은 위치파악 지점들이 두 영역, 집 및 회사에 집중되어 있다. EM 기반 클러스터링 테크닉을 이용하여 이 GPS 데이터 세트를 클러스터링하였고 그 결과 몇몇의 주요 클러스터가 인식되었다. 이하, 이 실험의 자세한 결과 및 검토를 설명한다.
<실험 결과 및 분석>
도 3은 클러스터된 위치데이터 세트의 수적 결과를 보여준다. 6개의 클러스터가 인식되었고 위치파악 데이터 수집자에 의해 검증되었다. 도 3은 각각의 클러스터의 중심위치, 각각의 클러스터에서 클러스터 멤버의 위치의 표준편차, 초기화 단계에서 최대 클러스터 반경, 각 클러스터의 평균반경, 반경의 표준편차, 각 클러스터에서 클러스터 멤버의 평균속도, 각 클러스터에 머무른 시간, 각 클러스터 내의 머무름 시간의 비율, 각 클러스터에서 위치 데이터의 개수를 포함하는 클러스터 정보를 포함한다. 예상되는 바와 같이, 최대의 클러스터는 인천에 있는 집 그리고 서울, 마포 주변의 회사 영역에서 발견되고, 다른 작은 클러스터는 부천의 도심지, 김포에 있는 레스토랑, 서울 중심부로의 드문 방문, 강남으로 알려진 서울 남부의 치과 방문을 위한 것이다. 도 4는 도 3의 결과를 시각화한 것으로서 실제 지도에 위치한 클러스터를 보여준다. 예를 들어, 사람의 직관으로, 클러스터 1은 홍익대학교를 나타낸다. 수적인 위치 데이터를 기관 이름으로 자동 매핑할 수 있으면 이러한 직관적인 결과는 보다 사람 친화적이다.
이러한 클러스터링 실험에서, 주어진 데이터 세트에 대해 사람이동모델의 주요 영역을 성공적으로 추출할 수 있었다.
상술한 실험에 의해 실험자의 일상생활에서의 이동패턴이 파악되었다. GPS 궤적 데이터와 EM 클러스터링 알고리즘을 이용하여 학생의 일상생활을 위한 주요 장소를 식별하였다. 이러한 결과를 토대로 도 5에 나타낸 것과 같이 Markov Chain 형태의 이동성 모델을 생성할 수 있다.
도 5는, 관측대상(한 사람 또는 한 집단)의 위치 데이터 및 상술한 클러스터링 알고리즘을 이용하여 얻은 클러스터와 관련된 6개의 상태 및 그 상태 간의 천이 확률을 나타낸 것이다. 예컨대, 상태(305)는 관측대상이 김포라고 명명된 클러스터 #5에 위치하는 상태를 나타내고, 상태(302)는 관측대상이 인천이라고 명명한 클러스터 #2에 위치하는 상태를 나타낸다.
도 5의 모델의 의하면 상태(305)는 상태(302) 또는 상태(305)로만 바뀔 수 두 확률의 합은 1.000이다. 또한, 상태(302)는 상태(305), 상태(303), 상태(301), 및 상태(302)로만 바뀔 수 있으며 각 상태로의 천이확률은 0.0113, 0.0057, 0.1089, 0.8741이다. 다른 상태들(301, 306, 304)에 대해서도 마찬가지로 설명할 수 있다.
도 5와 같은 모델을 이용하여 다양한 애플리케이션을 개발할 수 있다. 예컨대, 관측대상이 상태(306)에서 상태(301)로 이동하는 경우를 살펴본다. 클러스터 #1, 클러스터 #2, 및 클러스터 #6에는 각각 상점 #1, 상점 #2, 및 상점 #6이 존재할 수 있다.
이러한 상황에서, 도 5의 모델에 따르면 관측대상이 클러스터 #6으로부터 클러스터 #1로 이동할 확률이 0.4132이기 때문에, 즉, 상태(306)에서 상태(301)로 천이할 확률이 0.4132이기 때문에, 클러스터 #1에 존재하는 상점 #1은 클러스터 #6에 있는 관측 대상에게 마케팅 정보를 전송하여 관측대상의 구매의욕을 자극할 실익이 있다.
반면, 클러스터 #6에 위치한 관측대상이 클러스터 #2로 즉시 이동할 확률은 0이기 때문에, 즉, 상태(306)에서 상태(302)로 즉시 천이할 확률은 0이기 때문에, 클러스터 #2에 존재하는 상점 #2는 클러스터 #6에 위치한 관측 대상에게 자신의 마케팅 정보를 즉시 전달할 실익이 상대적으로 떨어진다.
다만, 관측대상이 클러스터 #1에 위치한 경우에는, 관측대상이 클러스터 #1로부터 클러스터 #2로 이동할 확률이 0.0986이기 때문에, 즉, 상태(301)에서 상태(302)로 천이할 확률이 0.0986이기 때문에, 클러스터 #2에 존재하는 상점 #2가 클러스터 #1에 위치한 관측 대상에게 자신의 마케팅 정보를 즉시 전달할 실익이 상승한다.
관측대상의 존재 위치를 복수 개의 그룹(클러스터)으로 나누고, 각 그룹 간의 이동확률을 알게 된다면, 관측대상의 현재 위치에 관한 정보를 기반으로 하는 다양한 서비스를 개발할 수 있다.
클러스터링에 사용되는 데이터가 많을수록 다양한 환경에 따른 더 복잡한 인간이동패턴을 규명할 수 있다. 이 데이터가 많을수록 클러스터링에 소요되는 계산시간이 늘어나기 때문에 EM 클러스터링 알고리즘에 한정하지 않고 다른 종류의 확률적 클러스터링 알고리즘을 사용할 수 있다.
상술한 클러스터링 단계 이전과 이후에 전처리 단계 및 후처리 단계를 추가할 수 있다. 수집된 위치 데이터는 오류를 가질 수 있는데, 오류를 갖는 위치 데이터를 이용하여 클러스터링하는 경우 정확한 결과가 나타나지 않는다. 따라서 전처리 단계에서는 오류를 갖는 위치 데이터를 필터링할 수 있다. 이러한 데이터 필터링을 위하여 OCSVM(One Class Support Vector Machine)을 사용할 수 있다. 클러스터링 된 결과는 <위도, 경도> 튜플과 같은 형태로 제시될 수 있는데, 이러한 형태는 사람이 그 의미를 알기 어렵기 때문에, 사용자 친화성을 부여하기 위하여 지역이름, 건물이름 등과 같은 자료와 매핑하여 제시하는 후처리 단계를 거칠 수 있다.
실시예 1
도 6a, 도 6b, 및 도 6c는 본 발명의 일 실시예에 따라 사용자의 위치정보모델을 생성하는 방법 및 사용자의 위치를 결정하는 방법을 설명하기 위한 것이다. 사용자의 위치정보모델을 생성하고 사용자의 위치를 결정하기 위하여 사용자가 소지하고 있는 사용자 기기(2) 및/또는 서버(1)를 이용할 수 있다.
이하 도 6a을 참조하여 본 발명의 일 실시예에 따른 위치정보모델 생성방법을 설명한다. 이 위치정보모델 생성방법은 서버(1)에서 실행될 수 있다. 그리고 이 위치정보모델은 예컨대 도 5에 나타낸 Markov chain의 개념을 구체화한 요소를 포함할 수 있다.
이 위치정보모델 생성방법은, 사용자 기기를 가지고 정지해 있는 또는 이동하고 있는 사용자로부터 수집된 복수 개의 사용자 위치정보를 제공받는 단계(S11)를 포함할 수 있다. 여기서 복수 개의 사용자 위치정보는, 도 2에 나타낸 것과 같이, 사용자가 소지하고 있는 사용자 기기(2)가 자신의 지구위치정보를 검출하여 생성한 것일 수 있다. 한 명의 사용자는 복수 개의 사용자 기기(2)를 동시에 소지하거나 또는 번갈아 가면서 소지할 수도 있는데, 이때 각 사용자 기기(2)를 식별하는 장치 식별자는 서로 다를 수 있지만, 각 사용자 기기(2)는 이들을 소지하고 있는 한 명의 사용자를 식별하는 하나의 사용자 식별자를 모두 포함하고 있을 수 있다. 도 6a에서는 사용자 기기(2)가 서버(1)에게 복수 개의 사용자 위치정보를 직접 제공하는 것으로 나타내었지만, 변형된 실시예에서는 사용자 기기(2)가 복수 개의 위치정보를 다른 제3의 장치에 저장한 다음, 이 제3의 장치가 자신에게 저장된 정보를 서버(1)에게 제공할 수도 있다. 본 발명을 구현할 때에 사용자의 위치는 사용자 기기의 위치와 동일하게 취급될 수 있다.
그 다음, 이 위치정보모델 생성방법은, 상술한 복수 개의 사용자 위치정보를 확률기반 군집화 알고리듬으로 처리함으로써 복수 개의 위치영역으로 군집화하고, 이 복수 개의 위치영역에 관한 정보를 생성하는 단계(S12)를 포함할 수 있다. 여기서 확률기반 군집화 알고리즘은 예컨대 위의 [수학식 1] 내지 [수학식 4]를 통해 설명한 EM 알고리즘일 수 있는데, 이에 한정되는 것은 아니다. 그리고 복수 개의 위치영역에 관한 정보는, 예컨대 도 4에 나타낸 것과 같이 흰색, 녹색, 노란색, 빨간 색과 같이 군집화된 위치영역에 관한 정보를 포함할 수 있으며, 또한 이들 위치영역 중 하나의 위치영역에서 다른 하나의 위치영역으로 이동할 확률에 관한 정보를 포함할 수 있다. 다른 말로, 복수 개의 위치영역에 관한 정보는, 예컨대 도 5에 나타낸 것과 같이 클러스터 #1 내지 클러스터 #6(301 ~ 306)에 관한 정보를 포함할 수 있으며, 이 클러스터들 중 어느 하나의 클러스터에서 다른 하나의 클러스터로 이동할 확률에 관한 정보를 포함할 수 있다. 위에서 각각의 위치영역 또는 각각의 클러스터는, 그 자신이 표상하는 지구위치의 범위에 관한 정보를 포함할 수 있다. 상술한 복수 개의 위치영역에 관한 정보는 예컨대 도 5에 나타낸 Markov chain와 같은 개념이거나 Markov chain을 포함하는 또는 이와 유사한 개념일 수 있다.
위의 생성하는 단계(S12)는 더 세분화된 단계들을 포함할 수 있다. 이를 도 6b를 참조하여 설명한다.
즉, 위의 복수 개의 사용자 위치정보를 복수 개의 초기 군집으로 분할하는 단계(S610)를 포함할 수 있다. 이때 초기 군집은 미리 정해진 임의의 결정적(deterministic) 규칙 또는 랜덤(random)한 규칙에 따라 만들 수 있다.
그 다음, 예컨대 [수학식 1] 내지 [수학식 4]를 통해 설명한 EM 알고리즘 기반 군집화를 이용하여 위의 초기 군집을, 위의 초기 군집과는 다른 경계영역을 갖는 복수 개의 제2 군집으로 정제(refinement)하는 단계(S620)를 포함할 수 있다. 이때, EM 알고리즘 기반 군집화에 사용되는 확률밀도함수로서, 예컨대 Levy walk를 표현하는 수식을 이용할 수 있다. 여기서 Levy walk란 Marta C. Gonzalez와 A. Hidalgo, 그리고 Albert-Laszlo Barabasi가 Nature에 2008년도에 발표한 "Understanding individual human mobility patterns"이라는 논문에 제시한 개념으로서 이미 공지되어 있는 내용이다.
그 다음, 제2 군집의 각 군에서 위치정보 통계량을 추출하는 단계(S630)를 포함할 수 있다. 이때, 위치정보 통계량은 도 3에 나타낸 것과 같이 각 군의 중심점(center position), 위치의 표준편차(Std. Dev. of Positions), 평균 반지름(Mean Radius), 체류시간(stay time), 사용자 위치정보의 개수(# of GPS data)와 같은 정보를 포함할 수 있다.
그 다음, 이 위치정보 통계량을 이용하여 Markov chain을 형성(building)하는 단계(S640)를 포함할 수 있다. 이때, Markov chain에서 상태(state)는 각 위치영역을 의미하고, 천이확률(transition probability)은 위치영역 간의 이동확률을 나타낼 수 있다.
위와 같이 두 개의 단계(S11, S12)를 수행하면 하나의 위치정보모델이 생성될 수 있다. 하나의 위치정보모델은 한 명의 사용자의 이동패턴을 나타낼 수 있다.
그 다음, 위의 위치정보모델을 갱신하는 방법을 도 6c를 참조하여 설명한다. 즉, 상술한 단계(S12)를 수행한 이후에 상술한 복수 개의 사용자 위치정보 외의 새로운 한 개 이상의 사용자 위치정보를 제공받는 단계(S13)를 더 포함할 수 있다. 그 다음, 상기 한 개 이상의 사용자 위치정보를 이용하여 상기 복수 개의 위치영역에 관한 정보를 추가로 정제하는 단계(S14)를 더 포함할 수 있다. 즉, 단계(S11, S12)에 의해 생성된 복수 개의 위치영역에 관한 정보, 즉 위치정보모델은, 새로운 사용자 위치정보를 제공받아 이용함으로써 갱신될 수 있다. 단계(S11, S11) 이외에 단계(S13, S14)가 실행되는 경우에, 단계(S13, S14)는 도 6a에 나타낸 단계(S110)를 수행하기 이전에 수행될 수 있다.
위에서 설명한 모든 사용자 위치정보는, 그 정보를 획득할 당시의 사용자가 위치한 위도/경도 그리고 획득시간에 대한 정보를 포함할 수 있다.
위에서는 위치정보모델 생성방법을 위한 각 단계(S12 ~ S14)가 서버(1)에서 수행되었지만, 계산능력이 뛰어난 사용자 기기(2) 내에서 직접 수행될 수 있다. 이 경우에는 서버(1)가 사용자 위치정보를 획득하는 단계(S11)는 생략될 수 있다.
실시예 2
이하 도 6a을 참조하여 본 발명의 다른 실시예에 따른 사용자 위치 결정방법을 설명한다. 이 사용자 위치 결정방법은 서버(1)에서 실행될 수 있다.
이 사용자 위치 결정방법은, 사용자의 현재 위치를 제공받는 단계(S110)를 포함할 수 있다. 사용자의 현재 위치는 사용자가 소지한 사용자 기기(2)가 자신의 지구위치정보를 검출하여 생성한 것일 수 있다. 사용자는 두 개 이상의 사용자 기기를 동시에 소지하거나 번갈아 가면서 소지하고 다닐 수 있다. 따라서 단계(S11)에서 사용자 위치정보를 보내준 사용자 기기와 단계(S110)에서 사용자 위치정보를 보내준 사용자 기기는 서로 같을 수도 있고 다른 것일 수도 있다.
그 다음, 이 사용자 위치 결정방법은, 미리 결정된 복수 개의 위치영역 중 위의 사용자의 현재 위치를 포함하는 제1 위치영역을 결정하는 단계(S120)를 포함할 수 있다. 여기서 미리 결정된 복수 개의 위치영역은, 상술한 단계(S12)에 의해 생성된 것일 수 있다. 즉, 단계(S11)에서 수집된 복수 개의 사용자 위치정보를 확률기반 군집화 알고리듬으로 처리하여 생성한 것일 수 있다.
즉 이 실시예에 따르면, 사용자의 위치정보를 단순히 지구위치정보에 따라 하나의 경도, 위도 값으로 결정하여 제공하는 것이 아니라, 과거의 사용자의 위치들에 관한 정보를 이용하고 확률기반 군집화 알고리즘을 이용하여 생성한 복수 개의 위치영역에 매핑하여 제공한다.
도 6a에서는 이 실시예의 각 단계가 서버(1)에서 실행되는 것으로 나타내었으나, 변형된 실시예에서는 사용자 기기(2)에서 실행될 수도 있다. 이 경우, 사용자 기기(2)는 단계(S12)를 실행할 수 있어야 할 수 있다. 그렇지 않다면, 사용자 기기(2)는, 단계(S11) 및 단계(S12)를 실행한 서버(1)로부터 실시예 1에서 설명한 복수 개의 위치영역에 관한 정보를 수신하여 저장하고 있어야 할 수 있다.
실시예 3
이하 도 6a을 참조하여 본 발명의 또 다른 실시예에 따른 사용자 위치정보 제공방법을 설명한다. 이 사용자 위치 결정방법은 서버(1)에서 실행될 수 있다.
이 실시예는 실시예 2에서 설명한 단계(S120)에 따라 사용자의 현재 위치가 결정된 것을 전제로 한다. 이하 실시예 3에서는 설명의 편의를 위해 단계(S120)에서 결정된 사용자의 현재 위치가 제1 위치영역에 존재하는 것으로 가정하고 설명한다.
이 사용자 위치정보 제공방법은, 사용자가 현재 위치하고 있는 제1 위치영역에서 제2 위치영역으로 이동할 이동확률정보를 추출하는 단계(S130)를 포함할 수 있다. 여기서 제1 위치영역과 제2 위치영역은 각각, 예컨대 도 5의 클러스터 #1(301) 및 클러스터 #2(302)일 수 있고, 이때 위의 이동확률정보는 0.0986라는 값이거나 이로부터 가공된 값일 수 있다. 여기서 가공된 값은 예컨대, 이동할 확률이 0.5보다 큰 경우에는 1의 값을 갖고 그렇지 않은 경우에는 0의 값을 가질 수 있으나, 이에 한정되는 것은 아니며 다양한 방식이 있을 수 있다.
그 다음, 이 사용자 위치정보 제공방법은, 위의 이동확률정보를 가입자 기기(3)에 제공할 수 있다. 제공은 유선 또는 무선의 네트워크를 통하여 이루어질 수 있다. 여기서 가입자 기기는 사용자 기기와 다를 수도 있고 같을 수도 있다. 여기서는 다른 경우의 예를 들어 설명한다. 가입자 기기는, 예컨대 위의 사용자를 고객, 또는 잠재고객으로 여기고 있는 사업자가 이용하는 장치일 수 있으며, 이동형 기기 또는 고정형 기기일 수 있다.
위의 사업자의 사업장이 위의 제2 위치영역에 존재하는 경우에는, 위의 사용자가 제2 위치영역으로 이동하는 경우에는 위의 사업자의 사업장에 방문할 가능성이 커지기 때문에, 위의 사업자는 위의 사용자가 제2 위치영역으로 이동할 확률에 대하여 큰 관심을 가질 수 있다. 따라서 도 6a과 같이 서버(1)가 가입자 기기(3)에 사용자가 제1 위치영역에서 제2 위치영역으로 이동할 이동확률정보를 제공하는 것은 영업상 의미가 있을 수 있으며, 실시예 3에 의하여 이러한 사업상 요구를 만족시킬 수 있다.
만일 위의 사업자의 사업장이 또 다른 제3 위치영역, 예컨대, 도 5의 클러스터 #3(303)에 존재하는 경우에는, 위의 사업자는 위의 사용자가 제1 위치영역에서 제2 위치영역으로 이동할 확률에 대해서는 큰 관심이 없을 가능성이 크다. 왜냐하면, 위의 사업자의 사업장은 제2 위치영역에 존재하지 않기 때문이다.
따라서 복수의 사업자가 존재하고, 각각의 사업자가 서로 다른 가입자 기기(3)를 이용하고 있는 경우에, 서버(1)가 모든 가입자 기기(3)에 사용자의 위치영역 간 이동확률을 모두 제공할 필요는 없으며, 각 사업자의 요구에 맞추어 이동확률정보를 제공하거나 제공하지 않을 수 있다. 예컨대, 제n 위치영역에 사업장을 가지고 있는 사업자가 사용하는 가입자 기기에는 임의의 제m 위치영역에 있는 사용자가 제n 위치영역으로 이동할 확률만을 제공할 수 있다.
위에서는 가입자 기기(3)가 무엇인지 설명하기 위하여 상업 활동을 하는 사업자와 사업장이라는 개념을 이용하여 설명하였으나, 가입자 기기(3)라는 것이 반드시 이에 한정되는 것은 아니라는 것을 이해할 수 있을 것이다.
도 6a에서는 본 실시예에 따른 위치정보 제공방법이 서버(1)에서 수행되는 것으로 도시하였으나, 변형된 실시예에서는 이 제공방법이 사용자 기기(2)에서 수행될 수도 있다. 이를 위해서는 사용자 기기(2)가 단계(S120, S130, S140)을 서버(1) 대신에 수행할 능력을 가질 필요가 있다.
실시예 4
이하 도 7을 참조하여 본 발명이 다른 실시예에 따른 사용자 정보 처리방법을 설명한다. 도 7은 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다. 이 방법은 사용자 기기(3)에서 실행될 수 있다.
이 사용자 정보 처리방법은, 가입자 기기(3)를 이용하는 자가 지정한 특정 위치를 포함하는 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는 사용자에 관한 식별정보를 서버에게 요청하는 단계(S210)를 포함할 수 있다. 여기서, 가입자 기기(3)를 이용하는 자가 지정한 특정 위치는, 예컨대 가입자 기기(3)를 사용하는 사업자가 실제로 상품이나 서비스를 판매하는 위치일 수 있다. 또한, 여기서 특정 위치영역은, 예컨대 도 4에 나타낸 것과 같이 흰색, 녹색, 노란색, 빨간색과 같이 군집화된 미리 결정된 복수 개의 위치영역 중 어느 하나일 수 있다. 다른 말로, 복수 개의 위치영역은, 예컨대 도 5에 나타낸 것과 같이 클러스터 #1 내지 클러스터 #6(301 ~ 306)일 수 있다. 또한, 위의 특정 위치영역으로 이동할 확률은, 예컨대 도 5의 임의의 클러스터에 있는 사용자가 클러스터 #1(301)로 이동할 확률을 지칭할 수 있다. 여기서 특정 위치는 가입자 기기(3)를 이용하는 자가 지정하는 것이지만, 위의 특정 위치를 포함하는 특정 위치영역이 어디이며 무엇인지는 서버(1)가 판단할 수 있다.
그 다음, 이 사용자 정보 처리방법은, 위의 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는 사용자에 관한 정보(예컨대, 사용자 ID, 또는 사용자 기기 ID)를 서버(1)로부터 수신하는 단계(S220)를 포함할 수 있다. 여기서 미리 결정된 규칙이란, 예컨대 이동할 확률이 특정 값보다 큰지 작은지를 판단하는 규칙일 수 있으나, 이에 한정되지 않고 다양한 방식이 있을 수 있다.
이때, 단계(S220)를 실현하기 위하여, 서버(1)는 도 7에 도시한 다음의 단계들 중 하나 이상을 수행할 수 있다.
우선 서버(1)는 사용자 기기를 가지고 정지해 있는 또는 이동하고 있는 제1 사용자로부터 수집된 복수 개의 제1 사용자 위치정보를 제공받는 단계(S11) 및 제2 사용자로부터 수집된 복수 개의 제2 사용자 위치정보를 제공받는 단계(S12)를 수행할 수 있다. 그 다음, 서버(1)는 실시예 1에서 설명한 확률기반 군집화 알고리즘을 이용하여, 복수 개의 제1 사용자 위치정보를 복수 개의 제1 위치영역으로 군집화하여 복수 개의 제1 위치영역에 관한 정보를 생성하고, 복수 개의 제2 사용자 위치정보를 복수 개의 제2 위치영역으로 군집화하여 복수 개의 제2 위치영역에 관한 정보를 생성하는 단계(S33)를 수행할 수 있다. 여기서 복수 개의 제1 위치영역에 관한 정보 및 복수 개의 제2 위치영역에 관한 정보는, 도 5에 나타낸 Markov chain와 같은 개념이거나 Markov chain을 포함하는 개념일 수 있다. 만일 복수 개의 제1 위치영역에 관한 정보 및 복수 개의 제2 위치영역에 관한 정보가 미리 제공되어 있다면 위의 단계(S11, S12, S33)의 수행은 생략될 수도 있다. 단계(S33) 이후에는 상술한 단계(S13, S14)가 추가로 수행될 수도 있다.
그 다음, 서버(1)는 제1 사용자의 현재 위치를 제공받는 단계(S111) 및 제2 사용자의 현재 위치를 제공받는 단계(S112)를 수행할 수 있다. 단계(S111)에서 제1 사용자의 현재 위치를 보내준 사용자 기기와 단계(S11)에서 복수 개의 제1 사용자 위치정보를 보내준 사용자 기기는 서로 같을 수도 있고 다른 것일 수도 있다. 또한, 단계(S112)에서 제2 사용자의 현재 위치를 보내준 사용자 기기와 단계(S12)에서 복수 개의 제2 사용자 위치정보를 보내준 사용자 기기는 서로 같을 수도 있고 다른 것일 수도 있다. 이에 대하여는 실시예 2에서 설명하였다.
그 다음, 서버(1)는, 복수 개의 제1 위치영역 중 제1 사용자의 현재 위치를 포함하는 위치영역[1]을 결정하고, 복수 개의 제2 위치영역 중 제2 사용자의 현재 위치를 포함하는 위치영역[2]을 결정하는 단계(S121)를 포함할 수 있다. 여기서 미리 결정된 복수 개의 위치영역은, 상술한 단계(S33)에 의해 생성된 것일 수 있다.
그 다음, 서버(1)는 제1 사용자에 대한 제1 확률 및 제2 사용자에 대한 제2 확률을 추출하는 단계(S131)를 수행할 수 있다. 이때 제1 확률은, 제1 사용자가, 현재 체류 중인 위치영역[1]으로부터, 가입자 기기(3)의 이용자가 지정한 특정 위치를 포함하는 제1 임의의 위치영역으로 이동할 확률이다. 제1 임의의 위치영역은 복수 개의 제1 위치영역에 포함되는 위치영역이다. 제2 확률은, 제2 사용자가, 현재 체류 중인 위치영역[2]으로부터, 가입자 기기(3)의 이용자가 지정한 특정 위치를 포함하는 제2 임의의 위치영역으로 이동할 확률이다. 제2 임의의 위치영역은 복수 개의 제2 위치영역에 포함되는 위치영역이다. 위의 제1 임의의 위치영역 및 제2 임의의 위치영역은, 가입자 기기(3)가 지정한 특정 위치를 포함하는 특정 위치영역에 대응된다.
그 다음, 서버(1)는 제1 확률과 제2 확률이 미리 결정된 규칙을 만족하는지를 판단하여, 만족하는 사용자에 관한 정보를 선택하는 단계(S141)를 수행할 수 있다. 이때, 미리 결정된 규칙은, 예컨대 이동 확률이 0.5 이상인 사용자의 정보만 선택하도록 하는 규칙일 수 있는데, 이에 한정되는 것은 아니다.
위의 실시예 1 내지 3에서는 서버(1)에서 실행되는 단계들이 경우에 따라 사용자 기기(2)에서 실행될 수도 있었다. 실시예 4에서도 이와 마찬가지로 서버(1)가 실행한 단계들이 사용자 기기(21, 22)에서 실행될 수도 있다.
도 8a 및 도 8b는 도 7에서 설명한 단계(S11, S21, S33, S111, S112, S121, S131, S141, S210, S220)을 구체적인 예를 들어 설명하기 위한 것이다.
도 8a는, 제1 사용자로부터 얻은 복수 개의 제1 사용자 위치정보를 확률기반 군집화 알고리즘을 이용하여 얻은 복수 개의 제1 위치영역에 관한 정보를 나타낸다. 도 8b는, 제2 사용자로부터 얻은 복수 개의 제2 사용자 위치정보를 확률기반 군집화 알고리즘을 이용하여 얻은 복수 개의 제2 위치영역에 관한 정보를 나타낸다.
도 8a 및 도 8b의 예에서 가입자 기기(3)가 지정한 특정 위치는 서초 1동으로 가정한다. 이때, 제1 사용자의 현재 위치는 영역 #11(여의도)이고 제2 사용자의 현재 위치는 영역 #21(종로)로 가정한다. 이때, 가입자 기기(3)가 지정한 특정 위치인 서초 1동을 포함하는 특정 위치영역은, 제1 사용자의 경우에는 영역 #12(서초 1동, 서초 2동)가 되고, 제2 사용자의 경우에는 영역 #22(서초 1동, 서초 3동)가 된다. 따라서 상술한 제1 임의의 위치영역은 영역 #12가 되고, 제2 임의의 위치영역은 영역 #22가 된다. 이때, 제1 사용자가 영역 #11에서 영역 #12로 이동할 확률은 0.6이고, 제2 사용자가 영역 #21에서 영역 #22로 이동할 확률은 0.4이다. 상술한 미리 결정된 규칙이, 이동 확률이 0.5 이상인 사용자의 정보만 선택하도록 하는 규칙이라고 가정하면, 위의 경우 제1 사용자의 정보만 선택하여 가입자 기기(3)에 전송할 것이다. 가입자 기기(3)를 이용하는 자가 예컨대 상품이나 서비스를 제공하는 사업자이며, 이 사업자가 운영하는 매장이 서초 1동에 위치한 경우에는, 이 사업자는 지리적 위치상 자신의 매장에 방문할 가능성이 제1 사용자의 정보를 받아 제1 사용자에게 개별적인 마케팅활동을 할 수도 있을 것이다.
도 7에 관한 설명에서, 특정 위치는 가입자 기기(3)를 이용하는 자가 지정하는 것이지만, 위의 특정 위치를 포함하는 특정 위치영역이 어디이며 무엇인지는 서버(1)가 판단할 수 있다고 하였다. 예컨대, 도 8의 경우 특정 위치인 서초 1동은 가입자 기기(3)를 이용하는 자가 지정한 것이지만, 특정 위치영역은 제1 사용자와 제2 사용자에 대해 서로 다를 수 있다. 즉, 제1 사용자의 경우 위의 특정 위치를 포함하는 특정 위치영역은 영역 #11이지만, 제2 사용자의 경우에는 영역 #21이다. 이와 같이 특정 위치영역은 가입자 기기(3) 및/또는 가입자 기기(3)를 이용하는 자가 지정하거나 판단하기 어려울 수 있다.
실시예 5
이하 도 9를 참조하여 본 발명이 다른 실시예에 따른 사용자 정보 처리방법을 설명한다. 도 9는 본 발명의 다른 실시예에 따른 사용자 정보 처리방법을 설명하기 위한 것이다. 이 방법은 가입자 기기(3)에서 수행될 수 있다. 실시예 5는 실시예 4의 변형된 예로서, 여기서 특별히 설명하지 않는 개념은 실시예 4에서 설명한 내용과 같을 수 있다.
이 사용자 정보 처리방법은, 특정 위치를 포함하는 특정 위치영역으로 사용자가 이동할 확률에 관한 정보를, 가입자 기기(3)가 서버(1)에게 요청하는 단계(S310)를 포함할 수 있다. 이때 사용자에 관한 정보를 가입자 기기(3) 또는 가입자 기기(3)를 이용하는 자가 미리 알고 있을 수 있다. 여기서 특정 위치는 가입자 기기(3)를 이용하는 자가 지정한 것일 수 있으며, 고정된 위치일 수도 있고 시간에 따라 변동되는 위치일 수도 있다. 예컨대 특정 위치는 가입자 기기(3)를 사용하는 사업자가 실제로 상품이나 서비스를 판매하는 위치일 수 있다. 그러나 위의 특정 위치를 포함하는 특정 위치영역이 어떤 영역을 의미하는지는 서버(1)가 판단할 수 있다.
그 다음, 이 사용자 정보 처리방법에서는, 가입자 기기(3)가 위의 특정 위치영역으로 이동할 확률에 대한 정보를 서버(1)로부터 수신할 수 있다. 이 확률에 관한 정보는 확률 그 자체일 수 있으며, 다르게는 확률 그 자체 값을 가공하여 얻은 가공된 정보일 수 있다. 예컨대, 여기서 미리 결정된 규칙이란, 이동할 확률이 특정 값보다 큰지 작은지를 판단하는 규칙일 수 있다. 이러한 확률에 관한 정보를 얻기 위해 서버(1)에서는 다음의 단계들을 수행할 수 있다.
우선 서버(1)는 사용자 기기를 가지고 정지해 있는 또는 이동하고 있는 사용자로부터 수집된 복수 개의 사용자 위치정보를 제공받는 단계(S11)를 수행할 수 있다. 그 다음, 서버(1)는 실시예 1에서 설명한 확률기반 군집화 알고리즘을 이용하여, 복수 개의 사용자 위치정보를 복수 개의 위치영역으로 군집화하여 이 복수 개의 위치영역에 관한 정보를 생성하는 단계(S12)를 수행할 수 있다. 여기서 복수 개의 위치영역에 관한 정보는, 도 5에 나타낸 Markov chain와 같은 개념이거나 Markov chain을 포함하는 개념일 수 있다. 만일 복수 개의 위치영역에 관한 정보가 미리 제공되어 있다면 위의 단계(S11, S12)의 수행은 생략될 수도 있다.
그 다음, 서버(1)는 사용자의 현재 위치를 제공받는 단계(S110)를 수행할 수 있다. 단계(S110)에서 사용자의 현재 위치를 보내준 사용자 기기와 단계(S11)에서 복수 개의 사용자 위치정보를 보내준 사용자 기기는 서로 같을 수도 있고 다른 것일 수도 있다. 이에 대하여는 실시예 2에서 설명하였다.
그 다음, 서버(1)는, 복수 개의 위치영역 중 사용자의 현재 위치가 매핑되는 제1 위치영역을 결정하는 단계(S120)를 포함할 수 있다. 여기서 미리 결정된 복수 개의 위치영역은, 상술한 단계(S12)에 의해 생성된 것일 수 있다.
그 다음, 서버(1)는 사용자에 대한 확률 추출하는 단계(S130)를 수행할 수 있다. 이때 위의 확률은, 사용자가 현재 체류 중인 제1 위치영역으로부터, 가입자 기기(3)가 지정한 특정 위치를 포함하는 특정 위치영역으로 이동할 확률이다. 특정 위치영역은 복수 개의 위치영역에 포함되는 위치영역이다.
위의 실시예 1 내지 4에서는 서버(1)에서 실행되는 단계들이 경우에 따라 사용자 기기(2)에서 실행될 수도 있었다. 실시예 5에서도 이와 마찬가지로 서버(1)가 실행한 단계들이 사용자 기기(2)에서 실행될 수도 있다.
도 10은 본 발명의 일 실시예를 위해 사용될 수 있는 서버의 구조를 나타낸다.
도 10을 참조하면, 서버(1)는 통신부(100) 및 통신부(100)와 데이터 및/또는 명령을 주고받는 처리부(200)를 포함할 수 있다. 처리부(200)는 연산부(210) 및 저장부(220)를 포함할 수 있다.
처리부(200)는 도 3에 예로서 제시한 각 군에 관한 통계량을 계산할 수 있고, 도 5에 제시한 Markov chain을 생성할 수 있으며, 도 6a의 단계(S12, S120, S130), 도 7의 단계(S33, S121, S131, S141), 도 9의 단계(S12, S120, S130)를 실행할 수 있다. 통신부(100)는 도 6a의 단계(S11, S110, S140), 도 7의 단계(S11, S21, S112, S121, S220), 도 9의 단계(S11, S110, S320)를 실행할 수 있다.
본 발명의 일 실시예에서 사용되는 Markov chain의 개념은 continuous time Markov chain과 discrete tiem Markov chain으로 구분되는데, 이 중 어느 것이라도 사용될 수 있으나, 실시예에 따라서는 continuous time Markov chain을 사용하는 것이 더 좋을 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.

Claims (16)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 복수 개의 위치영역 중, 미리 결정된 특정 위치를 포함하는 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는 사용자에 관한 정보를 서버에게 요청하는 단계; 및
    상기 사용자에 관한 정보를 상기 서버로부터 수신하는 단계
    를 포함하며,
    상기 이동할 확률이 미리 결정된 규칙을 만족하는지 여부는, 상기 서버가, 상기 사용자의 현재 위치에 관한 정보를 제공받는 단계, 상기 복수 개의 위치영역 중 상기 현재 위치를 포함하는 제1 위치영역을 결정하는 단계, 및 상기 제1 위치영역으로부터 상기 특정 위치영역으로 이동할 확률이 미리 결정된 규칙을 만족하는지를 판단하는 단계를 포함하는 프로세스를 수행하여 판단하며,
    상기 복수 개의 위치영역 모두에 대하여, 상기 각각의 위치영역은 확정된 대표 위치값을 갖도록 되어 있으며,
    상기 사용자가 상기 복수 개의 위치영역 중 임의의 제1영역으로부터 임의의 제2영역으로 이동할 확률이 확정되어 있는 것을 특징으로 하는,
    사용자 정보 수집방법.
  12. 제11항에 있어서, 상기 복수 개의 위치영역은, 미리 수집된 상기 사용자에 관한 복수 개의 위치정보를 확률기반 군집화 알고리듬으로 처리하여 생성한 것인, 사용자 정보 수집방법.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
KR20120071212A 2011-12-29 2012-06-29 위치정보 표현방법, 위치정보 처리방법, 위치정보모델 생성방법, 및 위치정보처리장치 KR101510458B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110146367 2011-12-29
KR20110146367 2011-12-29

Publications (2)

Publication Number Publication Date
KR20130077754A KR20130077754A (ko) 2013-07-09
KR101510458B1 true KR101510458B1 (ko) 2015-04-10

Family

ID=48990937

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020120060839A KR101365993B1 (ko) 2011-12-29 2012-06-07 데이터처리방법, 데이터처리장치, 데이터수집방법, 및 정보제공방법
KR20120071212A KR101510458B1 (ko) 2011-12-29 2012-06-29 위치정보 표현방법, 위치정보 처리방법, 위치정보모델 생성방법, 및 위치정보처리장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020120060839A KR101365993B1 (ko) 2011-12-29 2012-06-07 데이터처리방법, 데이터처리장치, 데이터수집방법, 및 정보제공방법

Country Status (2)

Country Link
US (1) US9846736B2 (ko)
KR (2) KR101365993B1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101513453B1 (ko) * 2013-10-24 2015-04-20 에스케이텔레콤 주식회사 로그 정보 기반의 가구 구성원 정보 추정을 위한 장치 및 방법
US9288630B2 (en) * 2013-10-28 2016-03-15 Verizon Patent And Licensing Inc. Method and apparatus for providing positioning services using multi-spacing clustering
US9773210B2 (en) 2013-11-08 2017-09-26 Electronics And Telecommunications Research Institute System and method for providing information
WO2015167172A1 (ko) * 2014-04-28 2015-11-05 삼성전자 주식회사 크라우드소싱을 이용한 위치 결정, 매핑 및 데이터 관리 시스템 및 방법
US9510154B2 (en) 2014-04-28 2016-11-29 Samsung Electronics Co., Ltd Location determination, mapping, and data management through crowdsourcing
KR102084249B1 (ko) * 2014-10-15 2020-03-04 에스케이 텔레콤주식회사 단말기의 실제위치 확인 방법확인방법 및 그를 위한 장치
KR101640426B1 (ko) 2015-09-07 2016-07-22 박해영 모바일 빅 데이터 분석 장치
CN105307121B (zh) * 2015-10-16 2019-03-26 上海晶赞科技发展有限公司 一种信息处理方法及装置
CN108256914B (zh) * 2018-01-17 2022-02-11 华东师范大学 一种基于张量分解模型的兴趣点种类预测方法
CN110703192B (zh) * 2018-07-09 2023-04-28 中移物联网有限公司 一种定位的方法及装置、设备、存储介质
CN110336860A (zh) * 2019-06-13 2019-10-15 河海大学常州校区 工业物联网中基于多维数据处理的关键节点数据保护方法
CN110473278B (zh) * 2019-08-13 2023-07-21 深圳前海微众银行股份有限公司 场景可视化方法、装置、设备及计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008249640A (ja) * 2007-03-30 2008-10-16 Japan Advanced Institute Of Science & Technology Hokuriku 位置推定システム、及び、位置推定方法
JP2011118777A (ja) * 2009-12-04 2011-06-16 Sony Corp 学習装置および学習方法、予測装置および予測方法、並びにプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101097169B1 (ko) 2009-05-26 2011-12-22 국방과학연구소 이동체의 위치 예측 시스템 및 위치 예측 방법
JP5440080B2 (ja) * 2009-10-02 2014-03-12 ソニー株式会社 行動パターン解析システム、携帯端末、行動パターン解析方法、及びプログラム
JP2011118776A (ja) * 2009-12-04 2011-06-16 Sony Corp データ処理装置、データ処理方法、およびプログラム
US20150087333A1 (en) * 2012-03-30 2015-03-26 Ha Yoon Song and Hongik University Industry- Academia Cooperatiob Foundation Method for correcting position information
KR101447671B1 (ko) * 2012-11-19 2014-10-07 홍익대학교 산학협력단 대상의 위치를 확률적으로 예측하는 방법
KR101467318B1 (ko) * 2013-06-24 2014-12-02 홍익대학교 산학협력단 위치정보 보정방법
US20160123728A1 (en) * 2014-11-04 2016-05-05 Ha Yoon Song Method for classifying human mobility state using particle filter

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008249640A (ja) * 2007-03-30 2008-10-16 Japan Advanced Institute Of Science & Technology Hokuriku 位置推定システム、及び、位置推定方法
JP2011118777A (ja) * 2009-12-04 2011-06-16 Sony Corp 学習装置および学習方法、予測装置および予測方法、並びにプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Daniel Ashbrook and Thad Starner, "Learning significant locations and predicting user movement with GPS", IEEE Sixth International Symposium on Wearable Computing, 2002 *
Daniel Ashbrook and Thad Starner, "Learning significant locations and predicting user movement with GPS", IEEE Sixth International Symposium on Wearable Computing, 2002*

Also Published As

Publication number Publication date
KR20130077751A (ko) 2013-07-09
KR20130077754A (ko) 2013-07-09
US9846736B2 (en) 2017-12-19
US20150052097A1 (en) 2015-02-19
KR101365993B1 (ko) 2014-02-21

Similar Documents

Publication Publication Date Title
KR101510458B1 (ko) 위치정보 표현방법, 위치정보 처리방법, 위치정보모델 생성방법, 및 위치정보처리장치
Mohamed et al. Accurate real-time map matching for challenging environments
EP3241370B1 (en) Analyzing semantic places and related data from a plurality of location data reports
KR101806948B1 (ko) 관심 지점을 위한 클러스터링 방법 및 관련 장치
Jun et al. Social-Loc: Improving indoor localization with social sensing
Calabrese et al. Human mobility prediction based on individual and collective geographical preferences
WO2017031856A1 (zh) 信息预测的方法和装置
Leontiadis et al. From cells to streets: Estimating mobile paths with cellular-side data
CN103718627A (zh) 使用三阶段过程对室内楼层和位置的预测
CN104736968A (zh) 众包室内定位
CN104010364A (zh) 确定基站的估计位置
EP2965041A1 (en) Crowd sourced pathway maps
CN107133689B (zh) 一种位置标记方法
Jariyasunant et al. Overcoming battery life problems of smartphones when creating automated travel diaries
Du et al. UniLoc: A unified mobile localization framework exploiting scheme diversity
Alhazzani et al. Urban Attractors: Discovering patterns in regions of attraction in cities
Meneses et al. Using GSM CellID positioning for place discovering
Shad et al. Cell oscillation resolution in mobility profile building
Brouwers et al. Detecting dwelling in urban environments using gps, wifi, and geolocation measurements
Ahn et al. Crowd-assisted radio map construction for Wi-Fi positioning systems
Kim et al. Daily life mobility of a student: From position data to human mobility model through expectation maximization clustering
Huang et al. Database calibration for outdoor Wi-Fi positioning system
JP2012160988A (ja) 移動端末からの位置情報に基づく対象エリア表示方法及びシステム
Koh et al. Clustering and analysis of gps trajectory data using distance-based features
JP2016048529A (ja) 携帯端末を所持したユーザの滞在判定が可能な装置、プログラム及び方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
LAPS Lapse due to unpaid annual fee