KR20120124446A - 네트워크 기반 위치 결정 시스템을 위한 위치 데이터베이스 관리 - Google Patents

네트워크 기반 위치 결정 시스템을 위한 위치 데이터베이스 관리 Download PDF

Info

Publication number
KR20120124446A
KR20120124446A KR1020127021337A KR20127021337A KR20120124446A KR 20120124446 A KR20120124446 A KR 20120124446A KR 1020127021337 A KR1020127021337 A KR 1020127021337A KR 20127021337 A KR20127021337 A KR 20127021337A KR 20120124446 A KR20120124446 A KR 20120124446A
Authority
KR
South Korea
Prior art keywords
location
access point
locations
geographic
mobile device
Prior art date
Application number
KR1020127021337A
Other languages
English (en)
Other versions
KR101355269B1 (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 KR20120124446A publication Critical patent/KR20120124446A/ko
Application granted granted Critical
Publication of KR101355269B1 publication Critical patent/KR101355269B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves

Abstract

위치 데이터베이스를 관리하기 위한 방법, 프로그램 제품 및 시스템이 설명된다. 서버는 무선 통신 네트워크의 액세스 포인트들의 통신 범위 내에 위치하는 위치 인식 모바일 장치(예컨대, GPS 가능 장치)로부터 위치 정보를 수신할 수 있다. 서버는 각 액세스 포인트에 대해 수신된 위치를 이용하여 평균 지리적 위치들을 계산할 수 있다. 평균 지리적 위치들에 기초하여, 서버는 액세스 포인트들을 지리적 격자의 셀들에 할당할 수 있다. 서버는 수신된 데이터 및 액세스 포인트의 인기도, 안정성, 수명 및 최신 정도에 기초하여 각 셀 내의 액세스 포인트들을 필터링할 수 있다. 제2 모바일 장치가 셀 내의 액세스 포인트에 연결되는 경우, 제2 모바일 장치의 위치는 셀 내의 및 인접하는 셀 내의 액세스 포인트들의 위치에 기초하여 결정될 수 있다.

Description

네트워크 기반 위치 결정 시스템을 위한 위치 데이터베이스 관리{MANAGING A LOCATION DATABASE FOR NETWORK-BASED POSITIONING SYSTEM}
본 발명은 일반적으로 모바일 장치에 대한 지리적 위치를 결정하는 것에 관한 것이다.
무선 통신 네트워크는 무선으로 통신하는 장치를 위한 다양한 기술을 사용할 수 있다. 예를 들어, 무선 로컬 네트워크(WLAN)는 네트워크의 노드들(예컨대, 장치들) 간의 통신을 위한 선들 보다 전파(radio wave)를 이용하는 로컬 영역 네트워크(예컨대, 집, 사무실 또는 학교와 같은 작은 그룹의 빌딩과 같은 상대적으로 작은 물리적 영역을 커버하는 컴퓨터 네트워크)를 포함할 수 있다. 일부 WLAN 기술 예는 임의의 IEEE(Institute of Electrical and Electronics Engineers) 802.11 표준에 기초하는 임의의 WLAN 제품을 포함할 수 있는 WiFi를 포함한다.
송신자 및 수신자 간의 무선 연결은 무선 주파수(RF) 기술, 전파 진행과 연관되는 전자기 스펙트럼 내의 주파수를 이용할 수 있다. WiFi에 사용되는 일부 예시적인 무선 주파수는 2.5 기가헤르츠(GHz) 또는 5 GHz이다. RF 전류가 안테나에 공급되는 경우, 전자기장이 생성될 수 있다. 전자기장은 공간을 통해 전파할 수 있다. 무선 통신 네트워크의 구성요소는 액세스 포인트(AP)가 될 수 있다. 액세스 포인트는 무선 모바일 장치가 유선 네트워크와 통신하도록 할 수 있다. 액세스 포인트의 한 기능은 무선 어댑터 또는 무선 모바일 장치가 장착된 컴퓨터가 검출하고 "조정"될 수 있는 무선 신호를 브로드캐스팅할 수 있다.
WiFi 네트워크의 액세스 포인트는 액세스 포인트로부터 보내지고 이에 의해 수신되는 신호들의 세기 및 지리적 영역의 물리적 특성에 의해 결정되는 지리적 영역을 커버할 수 있다. 모바일 장치의 변수는 액세스 포인트의 통신 범위 내에 위치할 수 있다. 모바일 장치는 동시에 다수의 액세스 포인트의 통신 범위 내에 있을 수 있다. 모바일 장치는 때때로 모바일 장치가 통신할 수 있는 액세스 포인트의 위치를 이용하여 자신의 위치를 결정할 수 있는데, 액세스 포인트의 위치가 알려지면 액세스 포인트로부터 수신되는 신호들의 세기에 기초하여 자신의 위치를 3각 측량을 하여 결정할 수 있다.
네트워크 기반 위치 확인 시스템의 위치 데이터베이스를 관리하기 위한 방법, 프로그램 제품 및 시스템이 설명된다. 서버 컴퓨터는 무선 통신 네트워크의 액세스 포인트들의 통신 범위 내에 위치하는 위치 인식 모바일 장치(예컨대, GPS 가능 장치)로부터 위치 정보를 수신할 수 있다. 서버는 각 액세스 포인트에 대한 수신된 위치를 이용하여 평균 지리적 위치들을 계산할 수 있다. 평균 지리적 위치들에 기초하여, 서버 컴퓨터는 액세스 포인트들을 지리적 격자의 셀들에 할당할 수 있다. 서버 컴퓨터는 액세스 포인트 및 수신된 데이터의 인기도, 안정성, 수명 및 최신 정도에 기초하여 각 셀 내의 액세스 포인트들을 필터링할 수 있다. 서버 컴퓨터는 액세스 포인트들의 식별자를 평균 지리적 위치들과 연관시켜 위치 데이터베이스에 저장할 수 있다.
모바일 장치는 모바일 장치가 연결할 수 있는 액세스 포인트들의 위치를 이용하여 자신의 위치를 결정할 수 있다. 모바일 장치는 지리적 격자 상의 셀 내의 액세스 포인트에 연결됨에 따라, 액세스 포인트의 위치 정보, 셀 내의 다른 액세스 포인트의 위치, 및 이 셀에 이웃하는 셀들 내의 액세스 포인트들의 위치를 요청하고 수신할 수 있다. 모바일 장치는 모바일 장치의 통신 범위 내의 액세스 포인트와 연관되는 위치들을 수신된 정보로부터 식별할 수 있다. 모바일 장치는 식별된 위치들을 이용하여 평균 지리적 위치를 계산할 수 있다. 모바일 장치는 각 위치 및 계산된 평균 간의 거리를 더욱 계산할 수 있다. 모바일 장치는 평균으로부터 충분히 멀리 떨어진 위치들을 배제할 수 있다. 모바일 장치는 평균 지리적 위치에 대해 정확도가 달성될 때까지 계산 및 배제를 반복할 수 있다. 모바일 장치는 모바일 장치의 지도 디스플레이 상에 정보를 디스플레이할 수 있다.
네트워크 기반 위치 확인 시스템의 위치 데이터베이스를 관리하는 기술은 다음의 예시적인 이점을 달성하기 위해 수행될 수 있다. 지리적 영역은 액세스 포인트의 실제 위치가 알려지지 않은 경우 무선 통신 네트워크의 액세스 포인트와 연관될 수 있다. 지리적 영역은, 액세스 포인트의 실제 위치보다는 액세스 포인트의 통신 범위 내에 위치하는 실제 모바일 장치가 위치할 가능성이 높은 영역에 대응할 수 있다. 지리적 영역은 자주 업데이트될 수 있는 모바일 장치들로부터의 실시간 데이터에 기초하여 추정될 수 있고, 따라서 최신 위치 정보를 제공할 수 있다. 만약 액세스 포인트가 멀리 벗어나거나 정지되면, 액세스 포인트가 데이터베이스로부터 제거되어 유효하지 않은 위치 결정을 피할 수 있다. 지리적 영역은 다양한 시간에서 모바일 장치로부터 수신되는 데이터에 기초하여 계산될 수 있고, 따라서 지리적 영역은 예컨대 통근 시간, 영업 시간, 또는 밤에 대한 다양한 사용 패턴에 대응할 수 있다.
지리적 영역과 연관되는 액세스 포인트가 액세스 포인트의 통신 영역 내에 위치하는 GPS 사용불가 모바일 장치의 위치를 결정하는데 사용될 수 있다. 액세스 포인트 및 모바일 장치 사이의 데이터 송신은 모바일 장치 및 액세스 포인트 간의 정상 통신에 간섭을 하는 것을 막기 위해, 모바일 장치가 유휴 상태(idle)시 발생할 수 있다. 액세스 포인트의 위치들을 이용하여 모바일 장치의 위치를 결정하는 시스템은 모바일 장치의 대역폭의 소비를 스스로 제한할 수 있는데, 시스템이 직접 모바일 장치의 통신 범위 내에 있는 액세스 포인트들의 위치 및 이웃하는 영역들 내의 액세스 포인트들의 위치를 송신할 수 있기 때문이다. 따라서, 모바일 장치가 움직이는 경우에도 잦은 업데이트 및 재전송이 불필요하다. 각 셀 내의 액세스 포인트들의 필터링 메커니즘은 각 송신에서 모바일 장치로 송신되는 데이터 양을 더욱 제한할 수 있다. 모바일 장치는 신호 세기가 다양한 간섭으로 인해 변할 수 있기 때문에, 예컨대 위치를 추정하는 신호 세기를 이용하는 것보다 자신의 위치를 보다 정확히 추정할 수 있다. GPS 이용가능 모바일 장치는 예컨대 GPS 신호가 약한 경우(예컨대, 빌딩 내에 있는 경우), 무선 액세스 포인트들의 위치를 이용할 수 있다.
네트워크 기반 위치 확인 시스템의 위치 데이터베이스를 관리하는 하나 이상의 구현의 상세한 내용은 첨부되는 도면 및 아래의 설명에서 제시된다. 위치 데이터 베이스를 관리하는 다른 특징, 양상 및 이점은 상세한 설명, 도면 및 청구항으로부터 명확해질 것이다.
도 1a는 위치 데이터베이스를 관리하는 기술의 개략도.
도 1b는 3차원 공간에서 위치 데이터베이스를 관리하는 기술을 도시한 도면.
도 2a 내지 2c는 모바일 장치를 이용하여 WLAN 내의 액세스 포인트와 연관되는 위치를 결정하는 예시적인 단계를 도시한 도면.
도 2d는 3차원 공간 내의 모바일 장치를 이용하여 WLAN 내의 액세스 포인트와 연관되는 위치들을 결정하는 예시적인 단계를 도시한 도면.
도 3a 및 3b는 모바일 장치를 이용하여 WLAN 내의 액세스 포인트와 연관되는 위치들을 결정하는 예시적인 프로세스를 도시하는 흐름도.
도 3c는 위치 데이터베이스를 관리하는 기술을 구현하는 예시적인 시스템을 도시하는 블록도.
도 4a는 네트워크 기반 위치 확인 시스템 내의 위치 데이터베이스를 이용하여 모바일 장치의 위치들을 결정하기 위한 기술을 도시하는 도면.
도 4b는 위치 데이터베이스를 이용하여 모바일 장치의 위치를 결정하는 예시적인 프로세스를 도시하는 흐름도.
도 4c는 모바일 장치의 위치를 결정하는 예시적인 적응 다중 패스 프로세스를 도시하는 흐름도.
도 5는 무선 액세스 포인트의 위치를 이용하여 모바일 장치의 위치를 결정하기 위한 예시적인 사용자 인터페이스를 도시하는 도면.
도 6은 도 1 내지 5와 관련하여 설명되는 특징 및 작동을 구현하기 위한 예시적인 시스템 아키텍처의 블록도.
도 7은 모바일 장치의 예시적인 아키텍처의 블록도.
여러 도면 내의 유사한 참조 번호는 유사한 요소를 나타낸다.
위치 데이터베이스 관리의 개요
도 1a는 네트워크 기반 위치 확인 시스템에 대한 위치 데이터베이스를 관리하는 기술의 개략도이다. 무선 로컬 영역 네트워크(WLAN)는 여러 액세스 포인트(105)를 포함하는 무선 통신 네트워크가 될 수 있다. 액세스 포인트(105)는 무선 장치들에 대한 통신 허브로 동작할 수 있는 하드웨어 장치 또는 컴퓨터 소프트웨어를 포함하여 유선 네트워크에 연결될 수 있다. 복수의 액세스 포인트(105)가 영역(예컨대, 사무실 빌딩 또는 공항)에서 분배될 수 있다.
액세스 포인트(105)는 다양한 통신 프로토콜을 이용하여 무선 장치들(예컨대, 모바일 장치(108 및 110))과 통신할 수 있다. 일부 구현에서, 액세스 포인트(105)는 IEEE(Institute of Electrical and Electronics Engineers) 802.11 기반 프로토콜(예컨대, IEEE 802.11a)을 구현하는 WiFiTM 네트워크의 액세스 포인트가 될 수 있다. 일부 구현에서, 액세스 포인트(105)는 IEEE 802.16 기반 프로토콜(예컨대, IEEE 802.16-2004 또는 IEEE 802.16e-2005)을 구현하는 WiMAX(worldwide interoperability for microwave access) 네트워크의 액세스 포인트가 될 수 있다. 액세스 포인트(105)는 액세스 포인트(105)의 위치로부터, 액세스 포인트(105)의 구성 및 물리적 환경을 포함하는 요소들에 따라 10미터 미만에서 수 백미터에 이르는 위치에 달하는 통신 범위를 가질 수 있다. 복수의 무선 장치(108 및 110)는 모바일 장치(108 및 110)가 액세스 포인트(105)의 통신 범위 내에 있는 경우 액세스 포인트로 연결될 수 있다. 다음으로, 복수의 액세스 포인트(105)가 연결하기 위한 단일 모바일 장치(108 또는 110)에 이용가능할 수 있다. 모바일 장치(108 및 110)는 모바일 장치(108 및 110)가 다양한 요소에 기초하여 연결할 수 있는 특정 액세스 포인트(105)를 선택할 수 있다. 예를 들어, 선택은 모바일 장치(108)가 액세스 포인트(105a)로 연결되도록 인가되는지 여부, 또는 액세스 포인트(105a)가 무선 연결을 위한 가장 강한 신호를 모바일 장치(108)로 제공할 수 있는지 여부에 기초할 수 있다.
시스템은 액세스 포인트들(105)과 연관되는 위치 영역들(115)을 결정할 수 있다. 위치 영역(115)은 액세스 포인트(105)의 통신 범위 내에 위치하는 모바일 장치(108)가 위치할 가능성이 높은 곳을 나타내도록 계산될 수 있다. 시스템은 액세스 포인트들(105)의 통신 범위 내에 위치하는 모바일 장치(108)로부터의 알려진 위치들에 기초하여 이 결정을 할 수 있다. 모바일 장치들(108)은 위치 인식 모바일 장치, 예컨대 글로벌 위치확인 시스템(Global Positioning System; GPS)을 수신할 수 있고 GPS 신호들을 이용하여 위치들을 결정할 수 있는 수신기들을 내부에 가지고 있거나 이와 결합되는 GPS 이용가능 모바일 장치가 될 수 있다. 위치 인식 모바일 장치들(108)은 도 1a의 검은 삼각형으로 나타난다. 위치 인식 모바일 장치들(108)이 특정 액세스 포인트(105)(예컨대, 액세스 포인트(105a))의 통신 범위 내에 위치하는 경우, 위치 인식 모바일 장치들(108)은 장치들의 위치를 액세스 포인트(105a)로 전송할 수 있다. 액세스 포인트(105a)는 전송을 시스템으로 중계할 뿐만 아니라 액세스 포인트(105a)의 식별자를 시스템으로 중계할 수 있다. 시스템은 액세스 포인트(105a)의 통신 범위 내에 위치하는 임의의 모바일 장치(108 또는 110)가 위치할 가능성이 가장 높은 추정된 위치 영역(115a)을 결정할 수 있다. 이 설명에서, 추정된 위치 영역들(115)은 존재 영역들이라 하고, 특정 액세스 포인트(105)의 통신 범위 내에 위치하는 경우 모바일 장치(108 또는 110)이 존재할 가능성이 높다고 나타낸다.
존재 영역들(115)을 계산하기 위해, 시스템은 반복 프로세스(예컨대, 다중 패스 분석을 수행하여)를 적용할 수 있다. 반복 프로세스는 액세스 포인트(예컨대, 액세스 포인트(105))와 연관된 존재 영역(예컨대, 존재 영역(115))을 원으로서 결정할 수 있다. 원은 액세스 포인트(105)의 통신 범위 내에 위치하는 위치 인식 모바일 장치(108)의 위치들에 기초하여 계산되는 평균 지리적 위치에 대응하는 중심을 가질 수 있다. 원은 오차 마진에 대응하는 반경을 가질 수 있는데, 이는 예컨대 모바일 장치(108)의 위치 및 평균 지리적 위치 간의 거리에 의해 결정될 수 있다. 반복 프로세스에 대한 추가적인 상세한 내용은 도 2 및 3을 참조하여 아래에서 설명된다. 반복 프로세스는 하루 중 상이한 시간 동안 상이한 무선 액세스 사용 패턴을 포착하고 액세스 포인트들(105)의 잠재적 움직임들을 포착하도록 주기적으로(예컨대, 매 6시간마다) 수행될 수 있다.
시스템은 수신 모바일 장치가 존재 영역들(115)을 이용하여 장치들의 추정된 위치를 결정할 수 있도록 액세스 포인트들(105)의 통신 범위 내에 위치하는 GPS 이용불가 모바일 장치(예컨대, 모바일 장치(110))를 포함하는 모바일 장치들에게 존재 영역들(115)의 정보를 보낼 수 있다. 예를 들어, 모바일 장치(110)가 액세스 포인트(105b)의 통신 범위 내에 위치하면, 모바일 장치(110)의 위치는 액세스 포인트(105b)와 연관되는 존재 영역(115b)과 일치하는 것으로 추정될 수 있다.
주어진 영역(예컨대, 공항)에서, 여러 액세스 포인트들(105)이 존재할 수 있다. 더욱이, 모바일 장치(110)는 이동할 수 있는데, 모바일 장치(110)의 통신 범위 바로 내에 있지는 않지만 충분히 가까이 있는 액세스 포인트들의 위치들을 모바일 장치(110)로 보내서, 모바일 장치(110)가 이 위치들을 이용하여 자신의 움직임을 추적할 수 있다. 많은 양의 위치 데이터를 모바일 장치(110)로 보내는 것을 막기 위해, 시스템은 세상에 존재하는 모든 단일 액세스 포인트들의 위치 데이터보다는 제한된 수의 액세스 포인트들(예컨대, 액세스 포인트(105a))의 위치 데이터만이 전송되도록 액세스 포인트들(105) 및 위치 영역들(115)을 필터링할 수 있다. 필터링은 위치들(115) 및 액세스 포인트들(105)의 인기도, 안정성, 수명, 및 최신 정도를 포함하는 다양한 요소들에 기초할 수 있다.
위치들(115) 및 액세스 포인트들(105)을 필터링하기 위해, 시스템은 셀들(102)을 포함하는 지리적 격자(100)를 생성할 수 있다. 셀(102)은 실질적으로 직사각형 모양을 갖는 다각형일 수 있는데, 이 다각형은 지리적 영역의 식별점(예컨대, 중심 또는 코너)의 위도 및 경도 및 크기(예컨대, 위도로 측정되는 길이, 및 경도로 측정되는 폭)에 의해 지리적 격자(100) 상에서 식별될 수 있는 지리적 영역에 대응한다. 각 셀(102)은 특정 수의 위치를 포함할 수 있는 컨테이너로 사용될 수 있다. 예를 들어, 셀(102)은 길이가 0.0005도 자오선(약 56미터) 및 폭이 0.0005도 위도(미터 폭은 위도에 따라 변할 수 있음)인 직사각형이 될 수 있다. 셀(102)은 액세스 포인트(105)에 대응하는 존재 영역(115)의 수(예컨대, 3)를 유지하도록 구성될 수 있다. 일부 구현에서, 셀(102)은 존재 영역(115)의 중심이 셀(102)의 경계 내에 위치하면 존재 영역(115)을 "유지(hold)"할 수 있다. 존재 영역들(115)은 하나 이상의 신뢰 요소에 기초하여 셀(102) 내에 위치하는 모든 존재 영역들(115)로부터 선택될 수 있다. 선택은 인기도, 안정성, 수명 및 최신 정도와 같은 다양한 조건에 기초할 수 있다.
특정 액세스 포인트(예컨대, 액세스 포인트(105b)) 및 액세스 포인트와 연관된 존재 영역(예컨대, 존재 영역(115b))은 동일한 셀(102)에 위치할 필요가 없다. 이는 예를 들어, 액세스 포인트(105b)가 셀(102a) 내의 빌딩에 위치하고 액세스 포인트(105b)의 통신 범위 내에 위치하는 대부분의 모바일 장치들(108)이 셀(102b) 내의 또 다른 빌딩 내에 위치하는 경우 발생할 수 있다. 일부 구현에서, 시스템은 액세스 포인트(105b)의 실제 위치를 무시할 수 있다.
모바일 장치(110)가 액세스 포인트(예컨대, 자신의 연관된 존재 영역(115a)이 셀(102c) 내에 위치하는 액세스 포인트(105a))에 연결되는 경우, 또는 다른 방법으로(예컨대, 셀룰러 네트워크를 통해) 시스템에 연결되는 경우, 모바일 장치(110)는 시스템으로부터 위치 업데이트를 수신할 수 있다. 위치 업데이트는 존재 영역(115a)이 위치하는 동일한 셀(예컨대, 셀(102c))에 위치하는 모든 존재 영역들(115)을 포함할 수 있다. 위치 업데이트는 지리적 격자(100) 상의 셀(102c)에 이웃하는 다른 셀들(102)(예컨대, 셀(102a) 및 셀(102b)) 내에 위치하는 존재 영역들(115)을 더 포함할 수 있다.
모바일 장치(110)가 액세스 포인트(105a)로 연결되는 경우, 모바일 장치(110)는 이용가능한 다른 액세스 포인트(105)(예컨대, 액세스 포인트(105b))를 검출할 수 있다. 모바일 장치(110)는 이용가능한 액세스 포인트들에 대한 존재 영역들(예컨대, 존재 영역들(115a 및 115b))을 식별할 수 있다. 모바일 장치(110)는 다양한 알고리즘을 이용하여 모바일 장치(110)의 현재 위치를 계산할 수 있다. 예를 들어, 하나의 존재 영역(115a)만이 식별되는 경우, 모바일 장치(110)는 존재 영역(115a)을 모바일 장치(110)의 현재 위치로 지정할 수 있다. 둘 이상의 존재 영역(115)이 식별되는 경우, 모바일 장치(110)는 반복 프로세스(예컨대, 다중 패스 분석)를 이용하여 자신의 현재 위치를 계산할 수 있다. 반복 프로세스는 존재 영역들의 평균 위치를 계산하고, 존재 영역들 및 평균 위치 간의 거리들을 계산하며, 평균 위치로부터 가장 멀리 있는 존재 영역들을 배재할 수 있다. 모바일 장치(110)는 모바일 장치(110)의 위치를 결정하기 위한 정확도 요건이 만족될 때까지 반복을 계속할 수 있다. 모바일 장치(110)는 평균 위치를 모바일 장치(110)의 현재 위치로 지정할 수 있고 평균 위치를 지도 디스플레이 장치 상에 디스플레이할 수 있다.
일부 구현에서, 시스템으로부터 모바일 장치(110) 상으로 수신되는 위치 업데이트는 존재 영역(115a) 주위의 충분히 큰 영역(예컨대, 1 또는 2 제곱 킬로미터)이 커버될 수 있도록 여러 이웃하는 셀들을 포함할 수 있다. 큰 영역을 커버하는 위치 업데이트에 기초하여, 모바일 장치(110)는 모바일 장치(110)가 움직이는 경우 잦은 업데이트를 요청해야 하는 것을 피할 수 있다. 모바일 장치(110)는 예컨대 모바일 장치(110)가 유휴 상태이거나 아니면 이용가능한 통신 대역폭을 갖는 경우 업데이트된 존재 영역 정보를 수신할 기회를 가질 수 있다.
도 1b는 3차원 공간에서 위치 데이터베이스를 관리하는 것을 도시한다. 일부 위치 인식 모바일 장치들(108)(예컨대, GPS 이용가능 장치)은 3차원 공간에서의 위치들을 식별할 수 있다. 위치들은 위도, 경도 및 고도에 의해 나타날 수 있다. 고도는 예컨대 해수면으로부터 미터로 측정되는 높이로 나타날 수 있다. 3차원 공간에 모바일 장치를 놓는 것은 모바일 장치의 위치를 알아내는데 모바일 장치의 고도가 필요한 경우 바람직할 수 있다. 예를 들어, 고도는 모바일 장치가 고층 빌딩에서 위치하는 층을 결정하는데 사용될 수 있다. 3차원 공간에서 모바일 장치(108)의 위치는 고도를 주석으로 갖는 2차원 지도 상에서, 또는 3차원 지도 상에서 디스플레이될 수 있다.
모바일 장치들(108)은 액세스 포인트(126)에 연결될 수 있다. 모바일 장치들(108)은 위도, 경도 및 고도 좌표를 포함하는 자신들의 위치들을 시스템으로 전송할 수 있는 위치 인식 모바일 장치들이 될 수 있다. 시스템은 모바일 장치들(108)로부터 수신되는 위도, 경도 및 고도 좌표들에 기초하여 평균 위치를 계산할 수 있다. 평균 위치를 중심으로 갖고 오차 마진을 반경으로 갖는 3차원 공간(124)이 액세스 포인트(126)와 연관될 수 있다. 공간(124)은 모바일 장치가 액세스 포인트(126)의 통신 범위 내에 위치하는 경우 모바일 장치가 위치할 가능성이 높은 공간을 나타낼 수 있다. 이 설명에서, 공간(124)은 존재 공간이라고 한다.
시스템은 존재 공간(124)에 대한 정보를 액세스 포인트(126)의 통신 범위 내에 위치하는 모바일 장치들로 보낼 수 있다. 정보를 수신하는 모바일 장치들은 이 정보를 이용하여 자신의 지리적 위치들을 결정할 수 있다. 시스템은 3차원 지리적 공간을 3차원 격자(120)로 나눌 수 있다. 3차원 격자(120)는 3차원 셀들(122)로 구성될 수 있다. 각 3차원 셀(122)은 지리적 격자(100)의 셀(102)에 대응하는 베이스를 가질 수 있다. 각 3차원 셀(122)은 한 차원으로서 (예컨대, 미터로 측정되는) 높이를 가질 수 있다. 존재 영역(124)은 존재 영역(124)의 중심이 셀(122) 내에 있으면 셀(122) 내에 위치한다고 할 수 있다. 시스템은 존재 공간의 대중성(예컨대, 얼마나 많은 연결들이 존재 공간 내의 모바일 장치들(108)로부터 액세스 포인트(126)로 이루어지는지), 존재 공간(124)의 안정성(예컨대, 존재 공간(124)이 얼마나 안정되어 있는지), 액세스 포인트(126)의 수명(예컨대, 액세스 포인트(126)가 얼마나 오래 존재했는지), 및 존재 공간(124)의 최신 정도(예컨대, 액세스 포인트(126)의 통신 범위 내에 위치하는 모바일 장치(108)로부터 가장 최근의 위치 송신을 언제 수신하였는지)에 기초하여 셀(122) 내의 존재 공간들의 수를 제한할 수 있다.
시스템은 존재 공간(124) 및 3차원 격자(120)의 3차원 셀들(122)에 기초한 인접하는 존재 공간들에 대한 정보를 액세스 포인트(126)의 통신 범위 내에 위치하는 모바일 장치(예컨대, 모바일 장치(110))로 보낼 수 있다. 모바일 장치(110)는 이 정보를 이용하여 3차원 공간 내의 모바일 장치(110)의 현재 위치를 추정할 수 있고, 추정된 현재 위치를 3차원 지도 상에 디스플레이할 수 있다.
위치 데이터베이스를 관리하기 위한 예시적인 서버측 프로세스 및 시스템
도 2a 내지 2c는 위치 데이터베이스를 관리하는 예시적인 단계들을 도시한다. 편의상, 기술들은 이 기술들을 구현하는 서버를 포함하는 네트워크 기반 위치 결정 시스템을 참고하여 설명된다.
도 2a는 액세스 포인트(105)와 연관되는 존재 영역을 결정하는데 사용될 수 있는 다중 패스 분석의 예시적인 단계를 도시한다. 액세스 포인트(105)는 액세스 포인트(105)의 송신기의 신호 강도 및 기타 요소들(예컨대, 액세스 포인트(105)를 둘러싸는 지리적 영역들의 물리적 특성)에 의해 결정될 수 있는 커버 영역(202)을 가질 수 있다. 커버 영역(202) 내에 위치하는 모바일 장치들(108)은 액세스 포인트(105)에 무선으로 연결될 수 있다. 액세스 포인트(105)는 모바일 장치들(108)이 다양한 게이트웨이를 통해 유선 네트워크로 연결되도록 할 수 있다. 유선 네트워크는 데이터 네트워크(예컨대, 인터넷), 공중 교환 전화 네트워크(public switched telephone network; PSTN), 기타 디지털 또는 아날로그 네트워크, 또는 이들의 조합을 포함할 수 있다.
모바일 장치(108)는 위치 인식 모바일 장치(예컨대, GPS 가능 모바일 장치)를 포함할 수 있다. 각 위치 인식 모바일 장치들(108)(도 2a의 검은 삼각형으로 나타남)은 자신의 현재 지리적 위치를 검출할 수 있다. 현재 지리적 위치는 모바일 장치(108)의 위도 및 경도를 포함하는 지리적 좌표에 의해 나타날 수 있다. 모바일 장치들(108)이 액세스 포인트(105)와 통신하는 경우, 모바일 장치들(108)은 위치 정보를 액세스 포인트(105)를 통해 시스템으로 송신할 수 있다. 위치 정보는 액세스 포인트(105)의 식별자(예컨대, 액세스 포인트(105)의 매체 액세스 제어(Media Access Control; MAC) 주소)와 연관될 수 있다. 시스템은 다수의 모바일 장치들(108)로부터 수신되는 위치 정보를 이용하여 액세스 포인트(105)와 연관될 수 있는 존재 영역을 결정할 수 있다. 존재 영역은 액세스 포인트(100)가 실제로 위치하는 위치를 반드시 포함할 필요는 없다. 존재 영역이 커버 영역(202) 내에 위치할 수 있더라도 존재 영역이 커버 영역(202)의 기하학적 위치 또는 모양에 대응할 필요는 없다.
커버 영역(202)으로 모바일 장치들(108)을 분배하는 것은 특정 시간(예컨대, 액세스 포인트(105)가 위치하는 시간대의 오전 8:30 지역 시간)에서의 모바일 장치들(108)의 스냅 사진에 대응할 수 있다. 각 모바일 장치(108)는 단일 위치와 연관될 수 있다. 커버 영역(202)으로 모바일 장치들(108)을 분배하는 것은 또한 시간 동안(예컨대, 오전 4시에서 오전 10시까지 6시간 동안) 모바일 장치들(108)의 위치들에 대응할 수 있다. 각 모바일 장치(108)는 (예컨대 모바일 장치(108)가 움직이는 경우) 다수의 위치들과 연관될 수 있다. 다수의 위치들과 연관되는 단일 모바일 장치(108)는 도 2a의 다수의 삼각형에 의해 도시된 바와 같이 시스템 내의 다수의 위치들에 의해 나타날 수 있다.
서버는 모바일 장치들(108)로부터 수신된 위치들의 세트의 평균 지리적 위치를 결정할 수 있다. 위치들의 세트는 특정 시간에서 또는 특정 시간 동안 모바일 장치들(108)로부터 수신되는 위치들을 포함할 수 있다. 평균 지리적 위치는 원(204a)에 의해 둘러싸이는 영역의 중심(205)으로 지정될 수 있다. 원(204a)의 중심은 액세스 포인트(105)의 위치와 일치할 필요가 없다. 서버는 평균 지리적 위치 및 세트 내의 각 위치 간의 거리를 계산하고 하나 이상의 이상치를 식별할 수 있다. 이상치들은 평균 지리적 위치로부터 가장 멀리 떨어져 위치하는 세트 내의 위치들일 수 있다. 중심으로의 거리들이 임계값을 초과하는 이상치들(예컨대, 위치(210))은 세트로부터 제외될 수 있다. 원(204a)은 평균 지리적 위치 및 이상치들이 제외된 후의 현재 세트 내의 위치들 간의 가장 먼 거리에 대응하는 반경(206)을 가질 수 있다.
도 2b는 도 2a의 단계 다음의 다중 패스 분석의 예시적인 단계를 도시한다. 도 2a의 평균 지리적 위치(원(204a)의 중심(205))까지의 거리들이 임계값을 초과하는 위치들은 세트로부터 제외되었다. 임계값은 위치들의 퍼센트(예컨대, 도 2a의 위치들의 5퍼센트)가 제외되도록 구성될 수 있다. 새로운 평균 지리적 위치는 세트 내에 남아 있는 위치들(예컨대, 남아있는 위치들의 95퍼센트)에 기초하여 계산될 수 있다. 새로운 평균 지리적 위치는 예컨대 원(204b)의 중심(225)이 될 수 있다. 다양한 구현에서, 새로운 평균 지리적 위치를 계산하는 것은 세트 내의 남아 있는 위치들을 평균내는 것, 세트 내의 중간 지리적 위치를 선택하는 것(예컨대, 중간 위도 또는 중간 경도를 선택하여), 또는 다른 알고리즘을 적용하는 것을 포함할 수 있다. 평균 지리적 위치를 계산하기 위한 알고리즘들은 다중 패스 분석의 각 패스에서 동일할 수 있거나, 각 패스에서 서로 상이할 수 있다.
원(204b)에 의해 둘러쌓이는 영역은 이상치 위치들이 제외되는 경우 이전 패스에서 결정된 바와 같이 원(204a)에 의해 둘러쌓이는 영역보다 작을 수 있다. 더 작은 영역은 향상된 계산 정확도를 반영할 수 있다. 원(204b)의 중심(225)은 원(204a)의 중심(205)과 반드시 일치할 필요는 없다. 일부 구현에서, 원(204b)의 반경(216)은 원(204b)의 중심(225)으로부터 가장 멀리 떨어져 있는 모바일 장치(108)의 남아있는 위치에 대응할 수 있다. 반경(216)은 현재 패스에서 계산되는 존재 영역의 새로운 추정의 오차 마진을 나타낼 수 있다.
도 2c는 다중 패스 분석의 예시적인 최종 단계를 도시한다. 특정 종료 조건이 만족되는 경우, 시스템은 최종 단계 후에 반복 프로세스를 종료할 수 있다. 최종 단계는 모바일 장치들(108)의 위치들의 무리에 대응하는 최종 평균 지리적 위치를 생산할 수 있다. 최종 평균 지리적 위치는 원(204c)의 중심(235)으로 나타날 수 있다. 원(204c)은 최종 평균 지리적 위치 및 무리 내의 한 위치 간의 거리에 기초하는 최종 오차 마진에 대응하는 반경을 가질 수 있다. 원(204c)은 액세스 포인트(105) 및 액세스 포인트(105)의 식별자(예컨대, MAC 주소)와 연관되는 존재 영역으로 지정될 수 있다.
서버는 다양한 요인에 기초하여 액세스 포인트(105)의 식별자 및 위치 데이터베이스 내의 연관된 존재 영역을 포함할지 여부를 결정할 수 있다. 예를 들어, 서버는 지리적 격자(100)의 셀(102) 내의 존재 영역들의 수를 셀 수 있고, 인기도, 안정성, 및 수명에 기초하여 여러 존재 영역들을 선택할 수 있다. 서버는 위치 데이터베이스 내의 (존재 영역(204c)이 선택되면 존재 영역(204c)을 포함하는) 존재 영역들의 정보를, 모바일 장치(215)가 GPS 이용가능한 것인지 여부에 상관없이, 모바일 장치(예컨대, 모바일 장치(215))로 보낼 수 있다.
도 2d는 3차원 공간 내의 위치 데이터베이스를 관리하는 예시적인 단계를 도시한다. 도 2d에서, 축 X, Y 및 Z은 3차원 공간을 나타내는데 사용될 수 있다. 예를 들어, 축 X, Y, 및 Z는 각각 위도, 경도 및 고도를 나타낼 수 있다. 편의상, 액세스 포인트(126)의 위치는 도 2d 내의 X, Y, 및 Z 축 상의 0점과 일치하도록 도시된다. 일부 구현에서, 액세스 포인트(126)의 실제 위치(예컨대, 위도, 경도 및 고도 좌표)는 계산에서 선택적이다.
도 2d의 각 삼각형은 3차원 공간 내에 위치하는 모바일 장치의 위치를 나타낼 수 있다. 위치들은 3차원 공간 내의 평면 상에 투사(projection)(예컨대, 투사(226))를 가질 수 있다. 평면은 임의의 고도(예컨대, 액세스 포인트(126)의 고도)에서 정의될 수 있다. 예를 들어, 평면은 축 X 및 Y에 의해 정의될 수 있다. 액세스 포인트(126)는 액세스 포인트(126)의 신호 강도 및 기타 제한 인자(예컨대, 신호 경로 상의 바닥, 천장, 빌딩)에 의해 결정될 수 있는 커버 공간(222)에 대응할 수 있다.
다중 패스 분석은 지리적 공간을 셀 공간(202)에 위치하는 위치 인식 모바일 장치들(108)로부터 수신된 위치들의 세트 상의 WLAN 기반 액세스 포인트(126)와 연관시킬 수 있다. 다중 경로 분석의 패스에서, 평균 지리적 위치(예컨대, 공간(224)의 중심)는 예컨대 세트 내의 위치들의 위도, 경도 및 고도 좌표를 평균내어 결정될 수 있다. 평균 지리적 위치 및 커버 공간(222) 내의 위치들 간의 거리들이 계산될 수 있다. 커버 공간(222) 내에 있지만 평균 지리적 위치로부터 충분히 멀리 떨어져 잇는 위치들은 세트로부터 제외되고 추가 계산에서 제외될 수 있다. 공간(224)의 반경은 예컨대 세트 내의 남아 있는 위치들 및 평균 지리적 위치 간의 가장 먼 거리에 의해 결정될 수 있다.
시스템은 세트 내의 평균 지리적 위치를 계산하는 단계, 평균 지리적 위치 및 세트 내의 위치들 간의 거리들을 계산하는 단계, 및 계산된 거리들에 기초하여 세트로부터 위치들을 제외시키는 단계를 반복할 수 있다. 반복은 종료 조건이 만족될 때까지 계속될 수 있다. 평균 지리적 위치에서 중심을 갖는 공간 및 평균 지리적 위치 및 세트 내의 남아 있는 위치 간의 거리에 기초하는 반경은 액세스 포인트(126)와 연관될 수 있는 존재 공간으로 지정될 수 있다.
도 3a는 위치 데이터베이스를 관리하는 예시적인 프로세스(300)를 도시하는 흐름도이다. 프로세스(300)는 예컨대 WLAN의 액세스 포인트와 연관되는 존재 영역 또는 존재 공간을 결정하는데 사용될 수 있다. 존재 영역 또는 존재 공간은 GPS 이용불가 모바일 장치의 위치를 결정하는데 사용될 수 있다. 편의상, 프로세스(300)는 프로세스(300)를 구현하는 시스템을 참조하여 설명된다.
시스템은 액세스 포인트(105)의 통신 범위 내에 위치하는 하나 이상의 제1 모바일 장치(108)로부터 위치들의 세트를 수신할 수 있다(302). 각 위치는 지리적 좌표 세트(예컨대, 위도, 경도 및 고도)에 의해 나타날 수 있다. 위치는 액세스 포인트(105)의 식별자(예컨대, MAC 주소)와 연관될 수 있다. 액세스 포인트의 식별자는 액세스 포인트(105)가 시스템과 통신하는 경우 액세스 포인트(105)에 의해 자동으로 공급될 수 있다. 다양한 구현에서, 위치들의 세트는 시간 구간(예컨대, 6시간, 또는 액세스 포인트(105)가 위치하는 시간대의 오전 6시에서 오전 10시)에 대응할 수 있다.
일부 구현에서, 시간 구간은 하루 중 다양한 시간에서의 특정 사용 패턴의 특성을 반영하도록 구성될 수 있다. 액세스 포인트(105)의 통신 범위 내에 위치하는 모바일 장치들이 가장 가능성 높게 위치할 영역은 낮 시간 동안 변할 수 있는데, 이는 특정 시간대에서 다양한 사용 패턴을 나타낸다. 예를 들어, 시간 구간은 "통근 시간", "영업 시간", "밤 시간" 등에 대응할 수 있다. 하루 중 시간대의 특성은 모바일 장치(108)의 다양한 사용 패턴에 대응할 수 있다. 예를 들어, 통근 시간 동안, 액세스 포인트(105)와 연관되는 존재 영역은 고속도로에 또는 그 근처에 있을 수 있고; 영업 시간 동안, 액세스 포인트(105)와 연관되는 존재 영역은 사무실 빌딩에 또는 그 근처에 있을 수 있으며; 밤 시간에는, 액세스 포인트(105)와 연관되는 존재 영역은 특정 집중 지점 없이 퍼져있을 수 있다. 시스템은 예컨대 오전 4시에서 오전 10시에 수신된 위치들에 기초한 존재 영역을 계산할 수 있고, 오전 10시에서 오후 4시에 수신된 위치에 기초한 존재 영역을 재계산할 수 있다. 각 특정 시간대에서 수신된 위치들은 시스템에 세트로 그룹화될 수 있다. 위치들은 서버에 결합되는 저장 장치에 임의의 데이터 구조(예컨대, 세트, 목록, 어레이, 관련 데이터 베이스 내의 데이터 레코드 등)로 저장될 수 있다.
시스템은 수신된 위치들의 세트의 평균에 기초하여 액세스 포인트(105)와 연관된 지리적 위치를 결정할 수 있다(304). 지리적 위치는 존재 영역 또는 위에서 설명되는 존재 공간을 포함할 수 있다. 존재 영역 또는 존재 공간은 예컨대 액세스 포인트(105)의 MAC 주소에 의해 액세스 포인트(105)와 연관될 수 있다. 일부 구현에서, 지리적 위치를 결정하는 단계는 각 패스 내의 세트로부터 적어도 하나의 위치를 제외하는 것을 포함하는 수신된 위치들의 세트에 대해 다중 패스 알고리즘을 적용하는 단계를 포함할 수 있다. 지리적 위치를 결정하는 단계는 다중 패스 알고리즘을 주기적으로 적용하는 단계를 포함할 수 있다.
시스템은 액세스 포인트(105) 및 액세스 포인트(105)와 연관된 지리적 위치를 액세스 포인트(105)의 인기도, 지리적 위치의 안정성, 및 액세스 포인트(105)의 수명을 포함하는 다양한 인자에 기초하여 지리적 격자(예컨대 지리적 격자(100)) 상의 셀(예컨대, 셀(102))로 지정할 수 있다(306). 일부 구현에서, 액세스 포인트(105)의 인기도는 얼마나 많은 모바일 장치(108)가 액세스 포인트(105)의 통신 범위 내에 있는지를 측정할 수 있다. 액세스 포인트의 인기도는 예컨대 액세스 포인트(105)의 통신 범위 내에 위치하는 모바일 장치들(108)의 얼마나 많은 위치들이 시간 구간에서 시스템에 의해 수신되는지에 의해 측정될 수 있다.
액세스 포인트(105)와 연관되는 존재 영역의 안정도가 존재 영역이 액세스 포인트(105)의 통신 범위 내에 위치하는 장치의 위치를 추정하는데 사용되면, 존재 영역이 얼마나 믿을만한지를 반영할 수 있다. 액세스 포인트(105)와 연관되는 존재 영역의 안정성은 예컨대 마지막 두 계산에 의해 계산되는 존재 영역들을 비교하여 측정될 수 있고, 존재 영역들 간의 겹치는 정도를 결정할 수 있다. 겹치는 정도가 높을수록, 존재 영역은 더 안정된다.
액세스 포인트(105)의 수명은 액세스 포인트(105)와 연관되는 데이터의 품질을 반영할 수 있다. 예를 들어, 오랜 기간 데이터베이스에 있던 액세스 포인트는 최근에 추가된 액세스 포인트에 비해 더 신뢰성이 있을 수 있다. 액세스 포인트(105)의 수명은 위치 데이터베이스 내의 데이터의 히스토리에 의해 측정될 수 있다.
일부 구현에서, 데이터의 최신 정도는 액세스 포인트(105)와 연관되는 존재 영역이 지리적 격자(100)의 셀(102)로 지정되는지 여부를 결정하는데 또한 사용될 수 있다. 데이터의 최신 정도는 얼마나 전에 시스템이 모바일 장치(108)로부터 가장 최근의 정보를 수신하였는지에 의해 측정될 수 있다.
시스템은 인기도, 안정성, 수명 및 최신 정도에 기초하여 지리적 격자(100)의 셀(102) 내에 위치하는 각각의 존재 영역을 등급 매길 수 있다. 적어도 셀(102) 내에 위치하는 모든 존재 영역들 중 일부가(예컨대, 액세스 포인트(105)와 연관되는 존재 영역을 포함하는 3개의 존재 영역들) 셀(102)로 지정될 수 있다. 지정된 액세스 포인트들 및 존재 영역들은 액세스 포인트(105)의 통신 영역 내에 위치하는 모바일 장치들(예컨대, 모바일 장치들(110))을 위치 확인하는데 사용될 수 있다. 지정되지 않은 존재 영역들은 나중의 사용을 위해 위치 데이터베이스에 저장될 수 있다.
시스템은 액세스 포인트(105)와 연관된 지리적 위치를 액세스 포인트(105)의 통신 범위 내에 위치하는 제2 모바일 장치(예컨대, 모바일 장치(110))로 제공할 수 있다(308). 시스템은 동일한 셀 내에 위치하는 다른 지리적 위치들 및 이웃하는 셀들에 지정되는 액세스 포인트들과 연관되는 지리적 위치들을 제2 모바일 장치에 추가로 제공할 수 있다. 위치들은 요청에 따라 또는 다양한 푸시 또는 브로드캐스트 기술을 이용하여 액세스 포인트(105)로부터 제2 모바일 장치로 전송될 수 있다.
일부 구현에서, 시스템은 3차원 위치 정보를 수신, 처리 및 송신할 수 있다. 존재 공간들(예컨대, 존재 공간(124))은 지리적 3차원 격자(예컨대, 3차원 격자(120)) 상의 3차원 셀들(예컨대, 3차원 셀(122))로 지정될 수 있다. 위치들은 요청에 따라 또는 다양한 푸시 또는 브로드캐스트 기술을 이용하여 액세스 포인트(126)로부터 액세스 포인트(126)의 통신 범위 내에 위치하는 제2 모바일 장치로 송신될 수 있다.
도 3b는 위치들의 세트를 이용하여 평균 지리적 위치를 계산하는 예시적인 프로세스(304)를 도시하는 흐름도이다. 편의상, 프로세스(304)는 프로세스(304)를 구현하는 시스템을 참고하여 설명된다.
시스템은 세트 내의 위치들을 이용하여 평균 지리적 위치를 계산할 수 있다(324). 평균 지리적 위치를 계산하는 것은 세트 내의 위치들의 위도, 경도 및 고도의 평균을 계산하는 것, 및 계산된 평균 위도, 경도 및 고도에서의 위치를 평균 지리적 위치로 지정하는 것을 포함할 수 있다. 일부 구현에서, 평균 지리적 위치를 계산하는 것은 세트 내의 위치들의 중간(median) 위도, 중간 경도, 및 중간 고도에서의 위치를 평균 지리적 위치로 지정하는 것을 포함할 수 있다.
시스템은 세트 내의 위치들 및 평균 지리적 위치 간의 거리들을 계산할 수 있다(326). 일부 구현에서, 시스템은 유클리드 공간에서 세트 내의 각각의 위치들 및 평균 지리적 위치 간의 선형 거리를 계산할 수 있다. 일부 구현에서, 시스템은 지구의 곡률을 고려하여 세트 내의 각각의 위치들 및 평균 지리적 위치 간의 측지 거리(geodesic distance)를 계산할 수 있다.
단계(326)에서 계산된 거리들은 중심과 연관되는 반경으로 지정될 수 있다. 중심은 단계(324)에서 계산되는 평균 지리적 위치가 될 수 있는데, 이는 원(예컨대, 원(204a))의 중심이 될 수 있다. 원의 반경은 위치들의 세트 내의 위치 및 평균 지리적 위치 간의 적어도 하나의 거리에 기초하여 결정될 수 있다. 일부 구현에서, 반경은 평균 지리적 위치 및 세트 내에 남아있는 위치 간의 가장 먼 거리와 동일할 수 있다. 일부 구현에서, 반경은 원(106d)이 반경 및 평균 지리적 위치를 중심으로서 이용하여 그려진 경우 원이 세트 내의 남아 있는 위치들의 퍼센트(예컨대, 80 퍼센트)를 감쌀 수 있는 거리가 될 수 있다. 반경은 이를 넘어서는 경우 GPS 이용불가 모바일 장치의 위치 추정이 통계적으로 별로 중요하지 않을 수 있는 오차 마진을 나타낼 수 있다.
시스템은 평균 위치 및 위치 간의 거리에 기초하여 적어도 하나의 위치를 세트로부터 제외할 수 있다(328). 일부 구현에서, 시스템은 평균 지리적 위치까지의 거리가 임계 거리를 초과하는 위치들을 제외할 수 있다. 다중-패스 분석의 각 패스에서, 시스템은 위치들의 집중(예컨대, 덩어리)으로부터 떨어지는 것으로 보이는 위치들을 제외하여 추정된 평균 지리적 위치의 정확도 증가시킬 수 있다. 위치들의 덩어리로부터 떨어지는 위치는 액세스 포인트(105)와 연관되는 존재 영역을 추정하는데 덜 유용할 수 있고, 제외될 수 있다. 다양한 구현에서, 임계 거리는 하나의 패스에서 다른 패스로 변할 수 있다. 일부 구현에서, 임계 거리는 세트 내의 위치들의 특정 퍼센트(예컨대, 95 퍼센트)가 그 안에 위치하는 평균 지리적 위치까지의 거리가 될 수 있다. 일부 구현에서, 임계 거리는 패스들에 대응하는 거리들의 세트(예컨대, 제1 패스에 대해 250미터, 제2 패스에 대해 150미터 등)가 될 수 있다. 시스템은 평균 지리적 위치와 적어도 하나의 위치 사이의 거리가 임계 거리를 초과하는 경우 세트로부터 이 위치를 제외할 수 있다.
시스템은 종료 조건이 만족될 때까지 프로세스(304)의 단계들(324, 326 및 328)을 반복할 수 있다. 시스템은 반복을 종료시키기 위한 종료 조건이 만족되는지 여부를 결정할 수 있다(330). 일부 구현에서, 종료 조건은 반복 수가 임계 수(예컨대, 10번)에 도달하는 경우 만족될 수 있다. 임계 수 및 제외할 위치들의 퍼센트는 확실성(예컨대, 더 큰 존재 영역은 셀 내의 모바일 장치가 실제로 존재 영역 내에 위치한다고 보다 확실하는 결과를 가져올 수 있음) 및 정확도(예컨대, 보다 작은 존재 영역은 모바일 장치의 보다 정확한 위치를 가져올 수 있음) 간의 균형을 미세 조정하도록 구성될 수 있다. 예를 들어, 퍼센트가 95 퍼센트로 설정되고 패스의 수가 10개로 설정되는 경우, 최종 패스는 모든 위치 데이터 포인트들의 약 60 퍼센트를 포함하는 원을 생성할 수 있다.
일부 구현에서, 단계(330)의 종료 조건은 존재 영역 또는 존재 공간이 충분히 작은 경우 만족될 수 있다. 모바일 장치들이 매우 집중되는 셀에서, 추가적인 패스가 반드시 정확도를 증가시킬 필요가 없을 정도로 존재 영역이 충분히 작을 수 있다. 단계들(324, 326 및 328)의 반복은 원의 반경이 임계 반경 아래로 도달하는 경우 종료될 수 있다. 예를 들어, 임계 반경은 8 내지 10미터가 될 수 있다. 임계 반경은 수신된 세트 내의 위치들의 분배 패턴(예컨대, 수신된 위치 데이터 포인트들의 수, 위치 데이터 포인트들의 밀도, 및 셀들 내의 집중 영역들)에 기초하여 액세스 포인트마다 상이할 수 있다.
시스템은 적어도 하나의 계산된 거리에 기초하여 지리적 영역을 평균 지리적 위치를 중심 및 반경으로서 갖는 원으로 지정할 수 있다(332). 지리적 영역은 액세스 포인트(예컨대, 액세스 포인트(105))와 연관될 수 있다. 서버는 지리적 영역(예컨대, 중심 및 반경)을 모바일 장치의 현재 위치를 계산하기 위한 모바일 장치로 제공할 수 있다. 중심은 위도 및 경도로 나타날 수 있다. 거리들이 3차원 공간에서 계산되는 일부 구현에서, 중심은 추가로 고도로 나타날 수 있다.
도 3c는 위치 데이터베이스를 관리하는 기술들을 구현하는 예시적인 시스템을 도시하는 블록도이다. 시스템은 하나 이상의 프로세서, 명령어들을 저장하는 하나 이상의 메모리 장치, 및 기타 하드웨어 또는 소프트웨어 구성요소를 포함할 수 있다. 시스템은 액세스 포인트(예컨대, 액세스 포인트(105))와 연관되는 존재 영역 또는 존재 공간를 결정하는데 사용될 수 있는 위치 엔진(350)을 포함할 수 있다.
위치 엔진(350)은 다양한 액세스 포인트를 통해 다양한 모바일 장치로부터 데이터를 수신할 수 있는 데이터 수집 모듈(352)을 포함할 수 있다. 데이터는 하나 이상의 위치 인식 모바일 장치(예컨대, 모바일 장치들(108))의 위치 뿐만 아니라 액세스 포인트 모바일 장치들(108)이 연결되는 곳을 나타내는 액세스 포인트들의 식별자들(예컨대, 액세스 포인트들(105)의 MAC 주소들)을 나타낼 수 있는 다수의 데이터 포인트들을 포함할 수 있다. 일부 구현에서, 데이터 포인트들은 또한 모바일 장치들(108)이 위치하는 시간대에 관한 정보를 포함할 수 있다. 데이터 수집 모듈(352)은 모바일 장치들(108)로부터 송신된 데이터를 수신할 수 있는 데이터 수신 모듈(354) 및 데이터 색인 모듈(356)을 포함할 수 있다. 데이터 색인 모듈(356)은 수신된 데이터 포인트들에 대하여 다양한 프로세싱을 수행할 수 있다. 예를 들어, 데이터 색인 모듈(356)은 셀 ID에 기초하여 위도, 경도 및 고도를 정렬할 수 있다. 데이터 색인 모듈(356)은 또한 시간 구간에 기초하여 데이터를 세트들로 그룹화할 수 있다. 예를 들어, 수신된 위치들의 새로운 세트가 구성가능 시간 구간(예컨대, 6시간)에 대해 생성될 수 있다.
모바일 장치들(108)의 수신된 위치들의 세트들은 데이터 포인트 데이터베이스(360)에 저장될 수 있다. 데이터 포인트 데이터베이스(360)는 다양한 모바일 장치들(108)의 현재 및 이전 위치들을 저장할 수 있다. 데이터 포인트 데이터베이스(360)는 애드-혹 데이터베이스, 관계 데이터베이스, 객체 지향 데이터베이스를 포함할 수 있다. 데이터 포인트 데이터베이스(360)는 위치 엔진(350)에 대하여 지역적으로 또는 원격으로 관리될 수 있다.
위치 계산 모듈(364)은 데이터 포인트 데이터베이스 내의 데이터 포인트들의 세트들 내의 평균 지리적 위치를 계산하고, 평균 지리적 위치 및 다양한 데이터 포인트들의 위치들 간의 거리들을 계산하며, 위치들을 추가적인 계산을 위해 세트들로부터 제외하는데 활용될 수 있다. 위치 계산 모듈(364)은 종료 조건이 특정 세트에 대해 도달할 때까지 특정 세트(예컨대, 셀 ID와 연관된 데이터 포인트 세트)에 대해 계산을 수행할 수 있다. 위치 계산 모듈(364)은 각 액세스 포인트(예컨대, 액세스 포인트(105))에 대한 존재 영역들 또는 존재 공간들을 결정할 수 있다.
일부 구현에서, 위치 계산 모듈(464)은 유효성 검사기(366)를 이용하여 데이터 포인트들 내의 다양한 조건 및 다양한 데이터에 기초하여 존재 영역들 또는 존재 공간들에 대한 유효성 검사를 수행할 수 있다. 예를 들어, 모바일 장치들(108)로부터 수신되는 데이터 포인트들은 모바일 국가 코드들(Mobile Country Codes; MCCs) 및 시간대 정보를 포함할 수 있다. 유효성 검사기(366)는 계산된 존재 영역 또는 존재 공간을 MCC들에 의해 나타나는 국가들에 대응하는 다각형들 및 시간대들에 대응하는 다각형들과 비교할 수 있다. 만약 계산된 존재 영역 또는 존재 공간이 다각형들 밖에 위치하면, 유효성 검사기(366)는 비정상을 등록하고 액세스 포인트를 제거할 수 있다.
위치 필터링 엔진(368)은 존재 영역 또는 존재 공간이 액세스 포인트의 통신 범위 내에 현재 위치하는 모바일 장치의 위치를 추정하는데 사용될 수 있는지 여부를 판단할 수 있다. 위치 필터링 엔진(368)은 지리적 영역을 지리적 격자(100)의 셀들(102) 또는 3차원 격자(120)의 3차원 셀들(122)로 나눌 수 있다. 위치 필터링 엔진(368)은 인기도, 안정성, 수명 및 최신 정도에 기초하여 존재 영역들 또는 존재 공간들의 등급을 매길 수 있다. 위치 필터링 엔진(368)은 각 셀(102) 또는 3차원 셀(122) 내에 위치하는 최상위 등급 존재 영역들 또는 존재 공간들을 셀(102) 또는 3차원 셀들로 할당할 수 있다.
존재 영역들 및 존재 공간들은 위치들의 세트의 평균 위도, 경도 및 고도 좌표를 갖는 중심에 의해 정의될 수 있다. 존재 영역들 및 존재 공간들은 위치들의 세트 내의 위치들로부터 중심으로의 거리들에 기초하여 결정되는 반경에 의해 추가로 정의될 수 있다. 존재 영역들 및 존재 공간들에 대한 중심 들의 위도, 경도 및 고도 좌표 및 존재 영역들 및 존재 공간들의 반경들은 위치 데이터베이스(372)에 저장될 수 있다. 위치 데이터베이스(372)는 지정 및 비지정된 존재 영역들 및 존재 공간들 모두를 저장할 수 있다. 비지정된 존재 영역들 또는 존재 공간들은 위치 계산 모듈(364)에 의해 다음 계산에 할당될 수 있다. 위치 데이터베이스(372)는 위치 계산 모듈(364)에 의해 주기적으로 업데이트될 수 있다.
위치 데이터베이스(372)의 데이터는 데이터 분배 모듈(376)을 이용하여 모바일 장치들로 분배될 수 있다. 데이터 분배 모듈(376)은, 모바일 장치들로부터의 요청들을 수신하지 않고 브로드캐스팅을 통해 또는 다양한 푸시 기술을 이용하여, 요청에 따라 액세스 포인트들과 연관되는 할당된 존재 영역들 및 존재 공간들의 정보(예컨대, 중심 좌표 및 반경)를 모바일 장치들(예컨대, GPS 이용불가 모바일 장치(110))로 보낼 수 있다.
일부 구현에서, 데이터 분배 모듈(376)은 다수의 존재 영역 및 존재 공간을 하나의 송신 세션에서 모바일 장치들로 보낼 수 있다. 모바일 장치의 통신 대역폭을 소비할 수 있는 모바일 장치들로의 위치 송신들의 수를 줄이기 위해, 데이터 분배 모듈(376)은 이웃 위치 탐지기(378)를 이용하여 모바일 장치(110)가 위치하는 셀에 이웃하는 셀들을 위치 탐지할 수 있다. 이웃하는 셀들은, 예컨대 셀의 전체 영역 및 둘러싸는 셀들의 전체 영역이 특정 지리적 영역(예컨대, 일 또는 이 제곱 킬로미터)을 커버하도록 모바일 장치(110)가 위치하는 셀을 둘러싸는 여러 셀들을 포함할 수 있다. 다수의 셀들(예컨대, 400 셀들)과 연관되는 존재 영역들 및 존재 공간들에 대한 정보를 모바일 장치(110)로 송신하는 것은 모바일 장치(110)가 셀들을 건너 이동하는 경우 송신의 수를 줄일 수 있다. 이러한 구현에서, 데이터 분배 모듈(376)은 모바일 장치(110)가 이전에 보내진 모들 셀들을 떠나는 경우에만 업데이트를 모바일 장치(110)로 보내면 된다.
무선 액세스 포인트들의 위치들을 이용하여 모바일 장치들의 위치들을
결정하기 위한 예시적인 프로세스
도 4a는 무선 액세스 포인트들의 위치들을 이용하여 모바일 장치들의 위치들을 결정하기 위한 기술들을 도시한다. 모바일 장치(400)는 무선 액세스 포인트들의 위치들을 이용하여 자신의 위치를 결정할 수 있는 예시적인 모바일 장치가 될 수 있다. 액세스 포인트들(400)을 포함하는 통신 네트워크의 예시적인 섹션이 설명된다.
모바일 장치(400)는 액세스 포인트(404a)의 통신 범위 내에 위치할 수 있다. 액세스 포인트(404a)로부터, 모바일 장치(400)는 이웃하는 액세스 포인트들의 존재 영역들 또는 존재 공간들(존재 영역들(406)을 포함)에 대한 정보를 포함하는 데이터를 수신할 수 있다. 모바일 장치(400)는 수신된 데이터를 저장 장치에 저장할 수 있다. 저장된 데이터는 주기적으로 업데이트될 수 있다.
설명된 예에서, 모바일 장치(400)는 액세스 포인트(400a)의 통신 범위 내에 위치한다. 또한, 모바일 장치(400)는 액세스 포인트들(404b, 404c 및 404d)에 대한 통신 범위들 내에 있다. 모바일 장치들(400)은 WLAN (예컨대, IEEE 802.11a)에서 사용되는 무선 통신 프로토콜 하에서 액세스 포인트들(404a, 404b, 404c 및 404d)을 식별할 수 있다. 액세스 포인트들(404a, 404b, 404c 및 404d)은 액세스 포인트들의 MAC 주소들 또는 기타 식별자(예컨대, BluetoothTM 식별자)에 의해 식별될 수 있다.
모바일 장치(400)는 각각 액세스 포인트들(404a-d)과 연관되는 존재 영역들(406a, 406b, 406c 및 406d)을 식별할 수 있다. 존재 영역들(406a-d)을 식별하는 것은 모바일 장치(400)에 결합된 메모리 장치로부터 존재 영역들(406a-d)에 대한 정보를 검색하는 것을 포함할 수 있다. 일부 구현에서, 모바일 장치(400)는 액세스 포인트들(404a-d)의 식별자들을 서버로 보냄으로써 서버로부터 존재 영역들(406a-d)을 요청할 수 있다.
존재 영역들(406a-d)에 기초하여, 모바일 장치(400)는 존재 영역들(406a-d)에 대해 반복 프로세스(예컨대, 다중-패스 분석)를 실행할 수 있다. 반복 프로세스는 모바일 장치(400)의 현재 지리적 위치의 추정이 될 수 있는 지리적 영역(402)을 생성할 수 있다. 지리적 영역(402)은 3차원 위치 정보가 활용되는 경우 지리적 공간이 될 수 있다. 모바일 장치(400)는 디스플레이 장치(예컨대, 지도 디스플레이) 상에 추정된 현재 위치를 디스플레이할 수 있다.
도 4b는 위치 데이터베이스를 이용하여 모바일 장치의 위치를 결정하는 예시적인 프로세스(410)을 도시하는 흐름도이다. 편의상, 프로세스(410)는 프로세스(410)를 구현하는 모바일 장치(400)를 참고하여 설명된다.
모바일 장치(400)는 모바일 장치(400)가 연결되는 현재 액세스 포인트를 식별할 수 있다(412). 모바일 장치(400)는 현재 액세스 포인트를 이용하여 모바일 장치(400) 상에서 관리되는 위치 데이터베이스의 업데이트를 요청해야하는지 여부를 판단할 수 있다. 모바일 장치(400) 상에서 관리되는 위치 데이터베이스는 모바일 장치(400)로 이전에 다운로드된 액세스 포인트들의 기록들을 포함할 수 있다. 모바일 장치(400) 상에서 관리되는 위치 데이터베이스 내의 기록들은 액세스 포인트들의 식별자들(예컨대, MAC 주소들) 및 대응하는 위치들(예컨대, 위도/경도 좌표)을 포함할 수 있다.
단계(412)에서, 모바일 장치(400)는 현재 액세스 포인트가 위치 데이터베이스의 기록들에 포함되는지 여부를 판단할 수 있다. 모바일 장치는 모바일 장치(400)가 연결되는 현재 액세스 포인트의 식별자(예컨대, MAC 주소)를 이용하여 위치 데이터베이스의 검색을 수행할 수 있다. 만약 현재 액세스 포인트가 위치 데이터베이스의 기록들에 포함되면, 모바일 장치는 위치 데이터베이스가 최신 것이라고 판단할 수 있다. 만약 현재 액세스 포인트가 위치 데이터베이스의 기록들에 포함되지 않으면, 모바일 장치(400)는 위치 데이터베이스가 업데이트될 필요가 있다고 판단할 수 있다.
모바일 장치(400)는 현재 액세스 포인트의 식별자를 이용하여 서버로부터 모바일 장치(400)의 위치 데이터베이스의 업데이트를 요청할 수 있다(414). 액세스 포인트들의 식별자들 및 위치들을 포함하는, 위치 데이터 베이스 내의 기록들은 새로운 액세스 포인트들의 새로운 식별자들 및 위치들을 이용하여 리프레시될 수 있다. 모바일 장치(400)는 현재 액세스 포인트의 식별자를 서버로 보낼 수 있다. 서버는 하나의 셀을 지리적 격자 내의 중심 셀로 식별할 수 있다. 중심 셀은 서버에 대한 현재 액세스 포인트의 식별자와 연관되는 위치를 포함하고, 셀 및 이웃하는 셀들 내의 모든 액세스 포인트 위치들을 모바일 장치(400)로 보내는 셀이 될 수 있다.
모바일 장치(400)는 제2 액세스 포인트들과 연관되는 제2 위치들의 세트를 수신할 수 있다(416). 제2 액세스 포인트들은 중심 셀 및 지리적 격자 상에서 중심 셀에 이웃하는 셀들 내에 분배될 수 있다. 현재 액세스 포인트와 연관되는 위치(예컨대, 원형 영역의 중심)는 중심 셀 내에 위치할 수 있다. 이웃하는 셀들은 지리적 격자 상의 중심 셀 옆에 위치하거나 가장 가까이 위치하는 셀들이 될 수 있다. 이웃하는 셀들의 수는 중심 셀 및 이웃하는 셀들이 사전결정된 지리적 영역(예컨대, 1.5 제곱 킬로미터)을 커버할 수 있도록 하는 값을 가질 수 있다. 액세스 포인트들 및 액세스 포인트들과 연관되는 위치들의 식별자들은 액세스 포인트들과 연관되는 위치들이 중심 셀 및 이웃하는 셀들에 의해 커버되는 지리적 영역 내에 있는 경우 업데이트에 포함될 수 있다. 현재 액세스 포인트가 위치 데이터베이스의 기록들에 포함되지 않는 경우 위치를 모바일 장치(400)로 업데이트하는 한가지 예시적인 장점은, 모바일 장치(400)가 셀 간을 움직이는 경우, 모바일 장치(400)가 단일 액세스 포인트의 커버 영역에 비해 넓은 영역을 벗어날 때까지 업데이트가 필요없다는 점이다. 따라서, 잦은 업데이트를 피할 수 있어, 모바일 장치(400)에 대한 리소스들(예컨대, 대역폭, CPU 사이클, 배터리 전력) 및 서버에 대한 리소스들(예컨대, 서버는 장치들이 하나의 거리 블록에서 다음으로 이동하는 경우 매우 많은 모바일 장치들에게 잦은 업데이트를 보낼 필요가 없음)을 절약할 수 있다.
모바일 장치(400)는 액세스 포인트들의 위치들 및 식별자들의 수신된 세트를 이용하여 모바일 장치(400) 상에서 관리되는 위치 데이터베이스를 업데이트할 수 있다(418). 업데이트는 중심 셀 및 이웃하는 셀들에 의해 커버되는 지리적 영역에 모바일 장치(400)를 "중심에 놓을" 수 있다. 모바일 장치(400)는 모바일 장치(400)가 중심 셀에서 이웃하는 셀들 중 하나에 의해 커버되지 않는 셀로 움직일 때가지 또 다른 업데이트를 요청할 필요가 없다. 예를 들어, 만약 각 셀이 대략 가로 세로 50미터이고, 사전결정된 지리적 영역이 1.5 제곱 킬로미터이면, 각 업데이트는 대략 600 셀을 모바일 장치(400)의 위치 데이터베이스로 넣을 수 있다. 모바일 장치(400)는 모바일 장치가 600셀에 의해 커버되는 영역을 벗어나지 않는 한 또 다른 업데이트를 요청할 필요가 없다.
모바일 장치(400)는 모바일 장치(400) 상에서 관리되는 위치 데이터베이스를 이용하여 모바일 장치(400)의 현재 위치를 계산할 수 있다(420). 계산은 모바일 장치(400)에 의해 실행되는 적응 다중-경로 프로세스를 이용하여 수행될 수 있다. 다중-패스의 추가적인 상세한 설명은 아래의 도 4c와 관련하여 설명된다. 다른 요소들(예컨대, 다양한 액세스 포인트들로부터의 신호 세기)이 현재 위치의 계산을 도울 수 있지만, 이러한 요소들은 계산에서 요구되지는 않는다.
모바일 장치(400)는 모바일 장치(400)의 현재 위치를 모바일 장치(400)의 지도 디스플레이 장치 상에 선택적으로 디스플레이할 수 있다(422). 현재 위치의 디스플레이 예는 도 5와 관련하여 아래에서 더 상세히 설명된다.
도 4c는 모바일 장치의 위치를 결정하는 예시적인 적응 다중-패스 프로세스(430)를 도시하는 흐름도이다. 편의상, 프로세스(430)는 프로세스(430)를 수행하는 모바일 장치(400)를 참고하여 설명된다.
모바일 장치(400)는 무선 통신 네트워크(예컨대, WLAN)의 액세스 포인트들(예컨대, 액세스 포인트들(404))의 식별자들을 수신할 수 있다(432). 액세스 포인트들은 모바일 장치(400)의 통신 범위 내에 위치할 수 있다. 식별자들은 모바일 장치(400)가 연결되거나 연결될 수 있는 액세스 포인트들과 연관될 필요가 없다. 예를 들어, 특정 위치에서, 모바일 장치(400)는 3 내지 20 액세스 포인트의 통신 범위 내에 있을 수 있다. 모바일 장치(400)는 두 개의 액세스 포인트에만 연결될 수 있다(예컨대, 액세스 포인트들 및 모바일 장치(400)의 보안 설정으로 인해). 모바일 장치(400)는 두 액세스 포인트 중 하나에만 동적으로 연결될 수 있다. 그러나, 모바일 장치(400)에 의해 수신되는 액세스 포인트들의 모든 식별자가 계산에서 사용될 수 있다.
모바일 장치(400)는 모바일 장치(400)의 위치 데이터베이스로부터 액세스 포인트들과 연관되는 위치들의 세트를 식별할 수 있다(433). 위치들의 세트는 액세스 포인트와 연관되는 존재 영역들(406) 또는 존재 공간들에 대응할 수 있다. 각 위치는 지리적 좌표(예컨대, 위도, 경도 및 고도)에 의해 나타날 수 있다. 각 위치는 액세스 포인트(404)의 식별자(예컨대, MAC 주소)와 연관될 수 있다. 모바일 장치(400)는 데이터베이스 검색을 이용하여 위치들을 식별할 수 있다.
모바일 장치(400)는 세트 내의 위치들을 이용하여 평균 지리적 위치를 계산할 수 있다(434). 평균 지리적 위치를 계산하는 것은 세트 내의 위치들의 위도, 경도 및 고도의 평균을 계산하는 것, 및 계산된 평균 위도, 경도 및 고도에서의 위치를 평균 지리적 위치로 지정하는 것을 포함할 수 있다. 일부 구현에서, 평균 지리적 위치를 계산하는 것은 세트 내의 위치들의 중간 위도, 중간 경도 및 중간 고도에서의 위치를 평균 지리적 위치로 지정하는 것을 포함할 수 있다.
모바일 장치(400)는 세트 내의 위치들 및 평균 지리적 위치 간의 거리들을 계산할 수 있다(436). 일부 구현에서, 시스템은 유클리드 공간에서 세트 내의 각각의 위치들 및 평균 지리적 위치 간의 선형 거리를 계산할 수 있다. 일부 구현에서, 시스템은, 지구의 곡률을 고려하여, 세트 내의 각각의 위치들 및 평균 지리적 위치 간의 측지 거리를 계산할 수 있다.
단계(436)에서 계산된 거리들은 중심과 연관되는 반경으로 지정될 수 있다. 중심은 단계(434)에서 계산되는 평균 지리적 위치가 될 수 있는데, 이는 원(예컨대, 지리적 영역(402)을 둘러싸는 원)의 중심이 될 수 있다. 원의 반경은 위치들의 세트 내의 위치 및 평균 지리적 위치 간의 적어도 하나의 거리에 기초하여 결정될 수 있다. 일부 구현에서, 반경은 평균 지리적 위치 및 세트 내에 남아있는 위치 간의 가장 먼 거리와 동일할 수 있다. 일부 구현에서, 반경은, 원이 반경 및 평균 지리적 위치를 중심으로 이용하여 그려진 경우, 원이 세트 내에 남아 있는 위치들의 퍼센트(예컨대, 80 퍼센트)를 둘러쌀 수 있는 거리가 될 수 있다. 반경은 이를 넘어서는 경우 GPS 이용불가 모바일 장치의 위치 추정이 통계적으로 덜 중요하게 되는 오차 마진을 나타낼 수 있다.
모바일 장치(400)는 평균 위치 및 적어도 하나의 위치 간의 거리에 기초하여 이 위치를 세트로부터 제외할 수 있다(438). 일부 구현에서, 시스템은 평균 지리적 위치까지의 거리가 임계 거리를 초과하는 위치들을 제외할 수 있다. 다중-패스 분석의 각 패스에서, 시스템은 위치들의 집중(예컨대, 덩어리)으로부터 멀리 떨어져 보이는 위치들을 제외하여 추정되는 평균 지리적 위치의 정확도를 높일 수 있다. 위치들의 덩어리로부터 멀리 떨어지는 위치는 모바일 장치(400)의 현재 위치를 추정하는데 덜 유용할 수 있고, 제외될 수 있다. 다양한 구현에서, 임계 거리는 하나의 패스에서 다음 패스로 갈 때 변할 수 있다. 예를 들어, 임계 거리는 패스들(예컨대, 제1 패스에 대해서 50미터, 제2 패스에 대해 30미터 등)에 대응하는 거리들의 세트가 될 수 있다. 시스템은 평균 지리적 위치 및 적어도 하나의 위치 간의 거리가 임계 거리를 초과하는 경우 세트로부터 이 위치를 제외할 수 있다.
일부 구현에서, 모바일 장치(400)는 제외될 위치들의 임계 퍼센트를 결정할 수 있다. 임계 퍼센트는 사전 지정된 값(예컨대, 5 퍼센트)을 가질 수 있다. 각 패스에서, 모바일 장치(400)는 평균 지리적 위치로부터 가장 멀리 위치하는 임계 퍼센트의 위치들을 제외할 수 있다.
모바일 장치(400)는 종료 조건이 만족될 때까지 프로세스(430)의 단계들(434, 436 및 438)을 반복할 수 있다. 시스템은 반복을 멈추기 위한 종료 조건이 만족되는지 여부를 판단할 수 있다(440). 일부 구현에서, 종료 조건은 반복 횟수가 임계 횟수(예컨대, 5회)에 도달하는 경우 만족될 수 있다. 임계 횟수는 처음에 수신된 세트 내의 위치들의 수와 연관될 수 있다. 임계 횟수 뿐만 아니라 제외할 위치들의 퍼센트는 확실성(예컨대, 더 큰 존재 영역은 셀 내의 모바일 장치가 실제로 존재 영역 내에 위치한다고 보다 확실하는 결과를 가져올 수 있음) 및 정확도(예컨대, 보다 작은 존재 영역은 모바일 장치의 보다 정확한 위치를 가져올 수 있음) 간의 균형을 미세 조정하도록 구성될 수 있다. 예를 들어, 퍼센트가 95 퍼센트로 설정되고 패스의 수가 10개로 설정되는 경우, 최종 패스는 모든 위치 데이터 포인트들의 약 60 퍼센트를 포함하는 원을 생성할 수 있다.
일부 구현에서, 단계(330)의 종료 조건은 존재 영역 또는 존재 공간이 충분히 작은 경우 만족될 수 있다. 액세스 포인트들(404)이 매우 집중되는 영역에서, 추정된 현재 위치는 추가적인 패스들이 반드시 정확도를 높이지는 않는 충분히 작은 영역을 포함할 수 있다. 단계(434, 436 및 438)의 반복은 원의 반경이 임계 반경 아래로 도달하는 경우 종료될 수 있다. 예를 들어, 임계 반경은 8 내지 10미터가 될 수 있다. 임계 반경은 존재 영역들(406)의 반경에 기초할 수 있다. 일부 구현에서, 만약 존재 영역들(406)의 일부 반경이 충분히 작으면, 임계 반경이 작을 수 있어 추정에 신뢰도를 줄 수 있다.
모바일 장치(400)는 적어도 하나의 계산된 거리에 기초하여 평균 지리적 위치를 갖는 원을 이용하여 모바일 장치(400)의 현재 위치를 중심 및 반경으로 지정할 수 있다(442). 중심은 위도 및 경도로 나타날 수 있다. 거리들이 3차원 공간들에서 계산되는 일부 구현에서, 중심은 추가적으로 고도로 나타날 수 있다. 일부 구현에서, 모바일 장치는 추가적으로 현재 위치를 지도 사용자 인터페이스 상의 디스플레이 장치에 디스플레이할 수 있다. 예시적인 지도 사용자 인터페이스들은 아래의 도 5를 참고하여 설명된다.
모바일 장치들의 위치들을 결정하기 위한 예시적인 사용자 인터페이스들
도 5는 무선 액세스 포인트들의 위치들을 이용하여 모바일 장치들의 위치들을 결정하기 위한 예시적인 사용자 인터페이스를 도시한다. 도 5에서, 지리적 영역의 예시 지도(502)가 모바일 장치(500) 상에 디스플레이된다. 일부 구현에서, 모바일 장치(500)는 디스플레이 지도(502)를 모바일 장치(500)의 터치 감지 디스플레이(530) 상에 디스플레이할 수 있다. 지도(502)는 사용자가 맵핑 및 위치 기반 서비스를 보기 위해 지도 객체를 선택하는 경우 디스플레이될 수 있다. 일부 구현에서, 객체들 이를테면 지도 객체는 음성 작동에 의해 선택될 수 있다. 검색 바(504) 및 북마크 목록 객체(506)는 지도(502)의 맨 위에서 디스플레이될 수 있다. 지도의 맨 아래에 하나 이상의 디스플레이 객체들이 디스플레이 될 수 있는데, 예컨대 검색 객체(508), 방향 객체(510), 지도 보기 객체(512), 및 현재 위치 객체(514)가 디스플레이될 수 있다.
검색 바(504)는 지도 상의 주소 또는 다른 위치를 찾는데 사용될 수 있다. 예를 들어, 사용자는 검색 바(504)에 자신의 집 주소를 입력할 수 있고, 이 주소를 포함하는 지역이 지도(502) 상에 디스플레이될 수 있다. 북마크 목록 객체(506)는 예컨대 사용자의 집 주소와 같은 자주 방문하는 주소들을 포함하는 북마크 목록을 가져올 수 있다. 북마크 목록은 예컨대 현재 위치(예컨대, 모바일 장치(500)의 현재 위치)와 같은 특정 북마크를 포함할 수 있다.
검색 객체(508)는 검색 바(504) 및 기타 지도 관련 검색 메뉴를 디스플레이하는데 사용될 수 있다. 방향 객체(510)는 예컨대 사용자가 시작 및 종료 위치를 입력할 수 있게 하는 메뉴 인터페이스를 가져올 수 있다. 인터페이스는 그 다음 정보(예컨대, 시작 위치로부터 종료 위치까지의 경로에 대한 방향 및 이동 시간)를 디스플레이할 수 있다. 지도 보기 객체(512)는 사용자가 지도(502)에 대한 디스플레이 옵션들을 선택할 수 있도록 하는 메뉴를 가져올 수 있다. 예를 들어, 지도(502)가 검정색에서 흰색으로 바뀔 수 있거나, 지도의 배경이 변경될 수 있거나, 사용자가 지도의 밝기를 변경할 수 있다.
현재 위치 객체(514)는 사용자가 장치(500)가 현재 위치하는 곳을 나타내는 지도(502) 상의 지리적 영역(516)을 볼 수 있도록 할 수 있다. 지리적 영역(516)은 중심이 모바일 장치(500)의 통신 범위 내에 있는 액세스 포인트들과 연관되는 데이터 포인트들의 평균 지리적 위치인 추정된 지리적 영역(예컨대, 지리적 영역(402))에 대응할 수 있다. 지리적 영역(516)의 반경은 평균 지리적 위치 및 액세스 포인트들과 연관되는 하나 이상의 위치들 간의 거리에 기초하여 결정될 수 있다. 특정 현재 위치 북마크가 현재 위치 객체(514)가 선택되는 경우 북마크 목록에 놓일 수 있다. 특정 현재 위치 북마크가 북마크 목록에 미리 설정되는 경우, 예컨대, 이전의 북마크 정보가 새로운 현재 위치 정보로 교체될 수 있다. 일부 구현에서, 특정 현재 위치 북마크는 지리적 영역(516)의 중심과 결부된다. 즉, 특정 현재 위치 북마크는 지리적 영역(516)의 중심에 대한 좌표를 포함할 수 있다. 지리적 영역(516)은 모바일 장치(500)의 메모리 장치에 저장되는 위치 명령어들을 이용하여 결정되거나 추정되는 위치 데이터에 기초할 수 있다. 지리적 영역(516)은 예컨대 원, 직사각형, 정사각형, 육각형, 또는 기타 십자선을 갖는 둘러싸인 영역, 또는 지리적 영역(516)을 지도(502)로부터 구별하기 위한 일부 다른 구분되는 요소에 의해 그려질 수 있다.
일부 구현에서, 지리적 영역(516)은 모바일 장치(500)가 위치하는 것으로 판단되거나 추정되는 영역을 나타낼 수 있고, 지리적 영역은 모바일 장치(500)의 실제 현재 위치 상의 중심에 반드시 놓일 필요가 없다. 이 예에서, 모바일 장치(500)는 지리적 영역 내의 중심이 아닌 곳에 위치할 수 있다. 또 다른 예에서, 지리적 영역(516)은 모바일 장치(500)의 추정된 현재 위치 상의 중심에 놓일 수 있다.
모바일 장치(500)는 예컨대 현재 위치 객체(514)가 두드러지거나 선택되는 경우 지리적 영역(516) 상에 지도 보기를 중심에 놓을 수 있다. 일부 구현에서, 지도의 줌 레벨은 위치 데이터 또는 기술의 정확도 또는 정밀도, 시스템 또는 위치 데이터를 제공한 서비스에 기초하여 조정될 수 있다. 예를 들어, 지도는 모바일 장치(500)가 낮은 정확도로는 GPS 신호들을 수신할 수 없고 액세스 포인트 데이터를 이용하여 자신의 위치를 결정하는 경우 줌 아웃될 수 있다. 지도는 모바일 장치(500)가 GPS 위치 데이터를 이용하여 자신의 현재 위치를 결정할 수 있으면 보다 높은 정확도를 위해 줌 인될 수 있다. 일부 구현에서, 줌 레벨은 모바일 장치(500)의 속도에 기초할 수 있다(예컨대, 지도는 더 빠른 속도에서 줌 아웃될 수 있고 모바일 장치(500)가 움직이지 않는 경우 줌 인 될 수 있다). 정확도 또는 정밀도 및 속도의 조합이 또한 사용될 수 있다.
위치 기반 데이터를 검색하기 위한 모든 방법이 실패하고(예컨대, 모바일 장치(500)가 임의의 액세스 포인트의 통신 범위 내에 있지 않거나, 속도 검사기(366)가 어떠한 존재 영역도 모바일 장치(500)가 연결될 수 있는 임의의 액세스 포인트들과 연관될 수 없다고 결정하는 경우), 모바일 장치(500)의 현재 위치를 판단하거나 추정할 다른 시스템 또는 서비스가 이용가능하지 않으면, 오류가 사용자에게 디스플레이될 수 있고 지리적 영역은 지도(502) 상에 디스플레이되지 않는다. 예를 들어, 오류는 사용자에게 실패 및 실패에 대한 가능한 원인 또는 원인들을 알리는 메시지를 포함할 수 있다.
현재 위치 객체(514)가 선택되어, 예컨대, 지도(502) 상의 지리적 영역(516)의 추정 및 디스플레이를 활성화하거나, 추정된 현재 위치(예컨대, 지리적 영역(516)의 중심)로의 방향 또는 이로부터의 방향을 얻거나, 모바일 장치(500)의 추정된 현재 위치를 친구로 보내거나(예컨대, 친구가 동일한 위치로 갈 수 있도록), 추정된 현재 위치에 대한 북마크를 생성할 수 있다.
예시적인 시스템 아키텍처
도 6은 도 1 내지 5와 관련하여 설명된 특징 및 작동을 구현하기 위한 예시적인 시스템 아키텍처(600)의 블록도이다. 더 많거나 적은 구성요소를 갖는 아키텍처를 포함하는 다른 아키텍처가 가능하다. 일부 구현에서, 아키텍처(600)는 하나 이상의 프로세서(602)(예컨대, 듀얼 코어 Intel® Xeon® Processors), 하나 이상의 출력 장치(604)(예컨대, LCD), 하나 이상의 네트워크 인터페이스(606), 하나 이상의 입력 장치(608)(예컨대, 마우스, 키보드, 터치 감지 디스플레이) 및 하나 이상의 컴퓨터 판독가능 매체(612)(예컨대, RAM, ROM, SDRAM, 하드 디스크, 광 디스크, 플래시 메모리 등)를 포함한다. 이 구성요소들은 하나 이상의 통신 채널(610)(예컨대, 버스)을 통해 통신하고 데이터를 교환할 수 있는데, 이는 데이터 전송을 용이하게 하기 위한 다양한 하드웨어 및 소프트웨어를 활용하고 구성요소들 간의 신호들을 제어할 수 있다.
"컴퓨터 판독가능 매체"라는 용어는, 이하에 한정되지 않는 비휘발성 매체(예컨대, 광 또는 자기 디스크), 휘발성 매체(예컨대, 메모리) 및 전송 매체를 포함하는, 프로세서(602)가 실행하기 위한 명령어들을 제공하는 것에 관여하는 임의의 매체를 의미한다. 전송 매체는 제한 없이 동축 케이블, 구리 와이어 및 광섬유를 포함한다.
컴퓨터 판독가능 매체(612)는 도 1 내지 5를 참고하여 설명된 바와 같이, 오퍼레이팅 시스템(614)(예컨대, Mac OS® 서버, Windows® NT 서버), 네트워크 통신 모듈(616), 데이터베이스 인터페이스(620), 데이터 수집 모듈(630), 데이터 분배 모듈(640), 및 위치 계산 모듈(650)을 더 포함할 수 있다. 오퍼레이팅 시스템(614)은 멀티-유저, 멀티프로세싱, 멀티태스킹, 멀티스레딩, 실시간 등이 될 수 있다. 오퍼레이팅 시스템(614)은 이하에 한정되지 않지만 장치들(606, 608)로부터 입력을 인식하고 출력을 이로 제공하는 것; 컴퓨터 판독가능 매체들(612)(예컨대, 메모리 또는 저장 장치) 상의 파일들 및 디렉토리들을 추적하고 관리하는 것; 주변 장치들을 제어하는 것; 및 하나 이상의 통신 채널(610) 상의 트래픽을 관리하는 것을 포함하는 기본 작업들을 수행한다. 네트워크 통신 모듈(616)은 네트워크 연결을 구축하고 관리하기 위한 다양한 구성요소들(예컨대, 통신 프로토콜, 이를테면 TCP/IP, HTTP 등을 구현하기 위한 소프트웨어)을 포함한다. 데이터베이스 인터페이스(620)는 파일 시스템 상의 하나 이상의 데이터베이스(예컨대, 데이터 포인트 데이터베이스(360) 및 위치 데이터베이스(372))에 대한 인터페이스들을 포함할 수 있다. 데이터베이스는 계층 폴더 구조하에서 조직될 수 있는데, 폴더들은 파일 시스템 내의 디렉토리들로 맵핑된다. 데이터 수집 모듈(630)은 액세스 포인트들 또는 기타 통신 채널들(예컨대, 셀룰러 네트워크들)을 통해 시스템(600)에 무선으로 연결되는 다수의 모바일 장치들로부터 데이터를 수집하기 위한 구성요소들을 포함할 수 있다. 데이터 분배 모듈(640)은 위치 데이터를 무선 통신 네트워크의 액세스 포인트들과 관련하여, 모바일 장치들(108 및 110)을 포함하는 컴퓨팅 장치들로 전송하기 위한 다양한 기능들을 수행할 수 있다. 위치 계산 모듈(650)은 모바일 장치들(108)로부터 수신된 위치들에 대해 멀티-패스 분석을 수행하기 위한 하나 이상의 구성요소들을 포함할 수 있다.
아키텍처(600)는 데이터베이스 애플리케이션 프로그램을 관리할 수 있는 임의의 장치에 포함될 수 있다. 아키텍처(600)는 병렬 프로세싱 또는 피어-투-피어 하부구조로 또는 하나 이상의 프로세서를 갖는 단일 장치 상에서 구현될 수 있다. 소프트웨어는 다수의 소프트웨어 구성요소를 포함할 수 있거나 코드 단일체가 될 수 있다.
설명된 특징들은 데이터 및 명령어들을 데이터 저장 시스템, 적어도 하나의 입력 장치, 및 적어도 하나의 출력 장치로부터 수신하고 데이터 및 명령어들을 이들로 송신하도록 결합된 적어도 하나의 프로그램가능 프로세서를 포함하는 프로그램가능 시스템 상에서 실행될 수 있는 하나 이상의 컴퓨터 프로그램에서 효과적으로 구현될 수 있다. 컴퓨터 프로그램은 컴퓨터에서 특정 동작을 수행하거나 특정 결과를 가져오는데, 직접 또는 간접적으로 사용될 수 있는 명령어들의 세트이다. 컴퓨터 프로그램은 컴파일되거나 해석된 언어들을 포함하는 임의의 형태의 프로그래밍 언어(예컨대, Objective-C, Java)로 작성될 수 있고, 스탠드 어론 프로그램, 또는 컴퓨팅 환경에서 사용하기에 적합한 모듈, 구성요소, 서브루틴, 브라우저 기반 웹 애플리케이션 또는 기타 유닛을 포함하는 임의의 형태로 사용될 수 있다.
명령어들의 프로그램의 실행을 위한 적절한 프로세서들은 예로서, 임의의 종류의 컴퓨터의 범용 및 특수 목적 마이크로프로세서, 및 단일 프로세서 또는 다수의 프로세서들 또는 코어들 중 하나를 포함한다. 일반적으로, 프로세서는 리드-온니 메모리 또는 랜덤 액세스 메모리 또는 둘 다로부터 명령어들 및 데이터를 수신한다. 컴퓨터의 필수 요소들은 명령어들을 실행하기 위한 프로세서 및 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리이다. 일반적으로, 컴퓨터는 또한 데이터 파일들을 저장하기 위한 하나 이상의 대용량 저장 장치를 포함하거나 이와 동작적으로 결합된다; 이러한 장치들은 자기 디스크들, 이를테면 내부 하드 디스크 및 제거가능 디스크; 자기-광 디스크; 및 광 디스크를 포함한다. 컴퓨터 프로그램 명령어들 및 데이터를 실체적으로 구현하기에 적절한 저장 장치들은 예로서 반도체 메모리 장치들, 예컨대, EPROM, EEPROM, 및 플래시 메모리 장치들; 자기 디스크 이를테면 내부 하드 디스크 및 착탈식 디스크; 자기-광 디스크; 및 CD-ROM 및 DVD-ROM 디스크를 포함하는 모든 형태의 비휘발성 메모리를 포함한다. 프로세서 및 메모리는 ASIC(애플리케이션 특정 집적회로)에 의해 보충될 수 있거나, 이에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 특징들은 디스플레이 장치 이를테면 정보를 사용자에게 디스플레이하기 위한 CRT(음극선관) 또는 LCD(액정 디스플레이) 모니터 및 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 장치 이를테면 마우스 또는 트랙볼을 갖는 컴퓨터 상에서 구현될 수 있다.
특징들은 데이터 서버와 같은 백-엔드 구성요소를 포함하거나, 애플리케이션 서버 또는 인터넷 서버와 같은 미들웨어 구성요소를 포함하거나, 그래픽 사용자 인터페이스 또는 인터넷 브라우저, 또는 이들의 임의의 조합을 갖는 클라이언트 컴퓨터와 같은 프론트-엔드 구성요소를 포함하는 컴퓨터 시스템에서 구현될 수 있다. 시스템의 구성요소들은 통신 네트워크와 같은 디지털 데이터 통신의 임의의 형태 또는 매체에 의해 연결될 수 있다. 통신 네트워크 예들은 예컨대, LAN, WAN 및 인터넷을 형성하는 컴퓨터 및 네트워크를 포함한다.
컴퓨터 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 떨어져 있고 통상적으로 네트워크를 통해 상호작용한다. 클라이언트 및 서버의 관계는 각각의 컴퓨터 상에서 실행되는 컴퓨터 프로그램에 의해 이루어지고 서로에 대해 클라이언트-서버 관계를 갖는다.
예시적인 모바일 장치 아키텍처
도 7은 모바일 장치의 예시적인 아키텍처(700)의 블록도이다. 모바일 장치는 예컨대 핸드헬드 컴퓨터, 개인용 디지털 보조기, 셀룰러 전화기, 전자 태블릿, 네트워크 기기, 카메라, 스마트폰, 향상된 일반 패킷 무선 서비스(enhanced general packet radio service; EGPRS) 모바일 전화기, 네트워크 기지국, 매체 재생기, 네비게이션 장치, 이메일 장치, 게임 콘솔, 또는 임의의 둘 이상의 이러한 데이터 프로세싱 장치 또는 기타 데이터 프로세싱 장치들의 조합이 될 수 있다.
모바일 장치는 메모리 인터페이스(702), 하나 이상의 데이터 프로세서, 이미지 프로세서 및/또는 중앙 처리 장치(704), 및 주변장치 인터페이스(706)를 포함할 수 있다. 메모리 인터페이스(702), 하나 이상의 프로세서(704) 및/또는 주변장치 인터페이스(706)는 별도의 구성요소가 될 수 있거나 하나 이상의 집적 회로에 통합될 수 있다. 모바일 장치(100) 내의 다양한 구성요소들은 하나 이상의 통신 버스 또는 신호 라인들에 의해 결합될 수 있다.
센서, 장치 및 서브시스템이 주변장치 인터페이스(706)에 결합되어 다중 기능을 용이하게 할 수 있다. 예를 들어, 움직임 센서(710), 광 센서(712), 및 근접 센서(714)가 주변장치 인터페이스(706)에 결합되어 모바일 장치의 배향, 빛, 및 근접 기능을 용이하게 할 수 있다. 위치 프로세서(715)(예컨대, GPS 수신기)가 주변 장치 인터페이스(706)에 연결되어 지구상의 위치를 제공할 수 있다. 전자 자기계(716)(예컨대, 집적회로 칩)가 또한 주변 인터페이스(706)에 연결되어 자기 북극의 방향을 결정하는데 사용될 수 있는 데이터를 제공할 수 있다.
카메라 서브시스템(720) 및 광 센서(722), 예컨대 전하 결합 디바이스(CCD) 또는 CMOS(complementary metal-oxide semiconduct) 광 센서가 카메라 기능, 이를테면 사진 및 비디오 클립 녹음을 용이하게 하는데 활용될 수 있다.
통신 기능들은 무선 주파수 수신기 및 송신기 및/또는 광(예컨대, 적외선) 수신기 및 송신기를 포함할 수 있는 하나 이상의 무선 통신 서브시스템(724)을 통해 용이하게 할 수 있다. 통신 서브시스템(724)의 특정 디자인 및 구현은 모바일 장치가 동작하도록 의도되는 통신 네트워크에 달려 있을 수 있다. 예를 들어, 모바일 장치는 GSM 네트워크, GPRS 네트워크, EDGE 네트워크, Wi-Fi 또는 WiMax 네트워크, 및 블루투스 네트워크를 통해 작동하도록 설계되는 통신 서브시스템(724)을 포함할 수 있다. 특히, 무선 통신 서브시스템(724)은 장치가 다른 무선 장치들에 대한 기지국으로서 구성될 수 있도록 호스팅 프로토콜들을 포함할 수 있다.
오디오 서브시스템(726)은 스피커(728) 및 마이크로폰(730)에 결합되어 음성 인식, 음성 복제, 디지털 레코딩, 및 전화 기능과 같은 음성 가능 기능을 용이하게 할 수 있다.
I/O 서브시스템(740)은 터치 스크린 컨트롤러(742) 및/또는 기타 입력 컨트롤러(744)를 포함할 수 있다. 터치 스크린 컨트롤러(742)는 터치 스크린(746) 또는 패드에 결합될 수 있다. 터치 스크린(746) 및 터치 스크린 컨트롤러(742)는 예를 들어 이하에 한정되지는 않지만 용량성, 저항성, 적외선 및 표면 음파 기술 뿐만 아니라 터치 스크린(746)과의 하나 이상의 접촉점을 결정하기 위한 기타 근접 센서 배열들 또는 기타 요소들을 포함하는 임의의 복수의 터치 감지 기술을 이용하여 접촉 및 움직임 또는 이들의 해제를 검출할 수 있다.
기타 입력 컨트롤러(744)가 기타 입력/제어 장치들(748), 이를테면 하나 이상의 버튼, 록커 스위치, 엄지 휠, 적외선 포트, USB 포트, 및/또는 스타일러스와 같은 포인터 장치에 결합될 수 있다. 하나 이상의 버튼(도시되지 않음)은 스피커(728) 및/또는 마이크로폰(730)의 볼륨 제어를 위한 업/다운 버튼을 포함할 수 잇다.
일 구현에서, 제1 기간 동안 버튼을 누르는 것은 터치 스크린(746)의 잠금을 해재할 수 있고; 제1 기간보다 긴 제2 기간 동안 버튼을 누르는 것은 모바일 장치의 전원을 키거나 끌 수 있다. 사용자는 하나 이상의 버튼의 기능을 커스텀화할 수 있다. 터치 스크린(746)이 예컨대 가상 또는 소프트 버튼 및/또는 키보드를 구현하는데 사용될 수 있다.
일부 구현에서, 모바일 장치는 녹음된 오디오 및/또는 비디오 파일, 이를테면 MP3, AAC, 및 MPEG 파일들을 제시할 수 있다. 일부 구현에서, 모바일 장치는 iPodTM과 같은 MP3 플레이어의 기능을 포함할 수 있다. 따라서, 모바일 장치는 iPod과 호환되는 핀 커넥터를 포함할 수 있다. 기타 입력/출력 및 제어 장치들이 또한 사용될 수 있다.
메모리 인터페이스(702)가 메모리(750)에 결합될 수 있다. 메모리(750)는 고속 랜덤 액세스 메모리 및/또는 비휘발성 메모리, 이를테면 하나 이상의 자기 디스크 저장 장치, 하나 이상의 광 저장 장치, 및/또는 플래시 메모리(예컨대, NAND, NOR)를 포함할 수 있다. 메모리(750)는 오퍼레이팅 시스템(752), 이를테면 Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS 또는 VxWorks와 같은 임베디드 오퍼레이팅 시스템을 저장할 수 있다. 오퍼레이팅 시스템(752)은 기본 시스템 서비스를 다루기 위한 명령어들 및 하드웨어 종속 작업들을 수행하기 위한 명령어들을 포함할 수 있다. 일부 구현에서, 오퍼레이팅 시스템(752)은 커널을 포함할 수 있다(예컨대, UNIX 커널).
메모리(750)는 또한 통신 명령어들(754)을 저장하여 하나 이상의 추가적인 장치, 하나 이상의 컴퓨터 및/또는 하나 이상의 서버와의 통신을 용이하게 할 수 있다. 메모리(750)는 그래픽 사용자 인터페이스 명령어들(756)을 포함하여 그래픽 사용자 인터페이스 프로세싱을 용이하게 할 수 있는데; 센서 프로세싱 명령어들(758)을 포함하여 센서 관련 프로세싱 및 기능을 용이하게 하고; 전화 명령어들(760)을 포함하여 전화 관련 프로세스들 및 기능들을 용이하게 하며; 전자 메시징 명령어들(762)을 포함하여 전자 메시징 관련 프로세스들 및 기능들을 용이하게 하고; 웹 브라우징 명령어들(764)을 포함하여 웹 브라우징-관련 프로세스들 및 기능들을 용이하게 하며; 매체 프로세싱 명령어들(766)을 포함하여 매체 프로세싱 관련 프로세스들 및 기능들을 용이하게 하고; GPS/네비게이션 명령어들(768)을 포함하여 GPS 및 네비게이션 관련 프로세시들 및 명령어들을 용이하게 하며; 카메라 명령어들(770)을 포함하여 카메라 관련 프로세스들 및 기능들을 용이하게 하고; 자기계 데이터(772) 및 보정 명령어들(774)을 포함하여 자기계 보정을 용이하게 할 수 있다. 메모리(750)는 현재 위치를 액세스 포인트로 송신하고, 모바일 장치가 통신 범위 내에 있는 액세스 포인트들과 연관되는 위치 데이터에 기초하여 추정된 현재 위치를 결정하는데 사용될 수 있는 위치 명령어들(776)을 포함할 수 있다. 메모리(750)는 또한 보안 명령어들, 웹 비디오 명령어들과 같은 기타 소프트웨어 명령어들(도시되지 않음)을 저장하여 웹 비디오 관련 프로세스들 및 기능들을 용이하게 하고 및/또는 웹 쇼핑 명령어들을 포함하여 웹 쇼핑 관련 프로세서들 및 기능들을 용이하게 할 수 있다. 일부 구현에서, 매체 프로세싱 명령어들(766)은 오디오 프로세싱 명령어들 및 비디오 프로세싱 명령어들로 나뉘어져 오디오 프로세싱 관련 프로세스들 및 기능들 및 비디오 프로세싱 관련 프로세스들 및 기능들 각각을 용이하게 할 수 있다. 작동 레코드 및 국제 이동 단말기 식별번호(International Mobile Equipment Identity; IMEI) 또는 유사한 하드웨어 식별자가 또한 메모리(750)에 저장될 수 있다.
위에서 식별된 명령어들 및 애플리케이션들 각각은 위에서 설명되는 하나 이상의 기능을 수행하기 위한 명령어들의 세트에 대응할 수 있다. 이 명령어들은 별개의 소프트웨어 프로그램, 절차, 또는 모듈로 구현될 필요가 없다. 메모리(750)는 추가적인 명령어들 또는 더 적은 명령어들을 포함할 수 있다. 더욱이, 모바일 장치의 다양한 기능은 하드웨어 및/또는 소프트웨어서 구현될 수 있는데, 하나 이상의 신호 프로세싱 및/또는 애플리케이션 특정 집적 회로에서 구현되는 것을 포함한다.
본 발명의 여러 구현이 설명되었다. 그렇지만, 당업자라면 본 발명의 사상 및 범위를 벗어나지 않는 한도 내에서 다양한 수정을 할 수 있음을 알 것이다. 예를 들어, 위치 인식 장치는 GPS 이용가능으로 나타날 수 있다. 위치 인식 모바일 장치들은 또한 삼각 측량 또는 기타 기술에 기초할 수 있다. 셀들은 도면들에서 실질적으로 직사각형 모양으로 나타난다. 셀의 실제 모양을 변할 수 있다. 위치들은 "원들"로 설명되었다. 본 명세서에서 사용되는 "원"이라는 용어는 완벽히 원형일 필요는 없지만 둘러싸이거나 둘러싸인 모습을 갖는 임의의 기하학적 모양(예컨대, 타원, 정사각형, 볼록 또는 오목 다각형, 또는 자유로운 모양)을 포함할 수 있다. 완벽히 원형이 아닌 기하학적 모양의 반경은 기하학적 모양의 경계 상의 다양한 포인트들 및 기하학적 모양의 중심 간의 평균 거리를 포함할 수 있다. WiFi 및 WiMax 네트워크들이 예로 사용된다. 기타 무선 기술(예컨대, 셀룰러 네트워크)이 또한 사용될 수 있다. 따라서, 기타 구현은 다음의 청구항의 범위 내에 있다.

Claims (27)

  1. 컴퓨터에 의해 실행되는 방법으로서,
    무선 통신 네트워크의 액세스 포인트의 통신 범위 내에 위치하는 제1 모바일 장치들로부터 위치들의 세트를 수신하는 단계;
    상기 수신된 위치들의 세트의 평균에 기초하여 상기 액세스 포인트와 연관되는 지리적 위치를 결정하는 단계;
    상기 액세스 포인트 및 상기 액세스 포인트와 연관되는 상기 지리직 위치를 상기 수신된 세트 내의 위치들의 수 및 상기 수신된 세트 내의 위치들의 수명(longevity)에 기초하여 지리적 격자 상의 셀에 지정하는 단계; 및
    상기 액세스 포인트와 연관되는 상기 지리적 위치 및 상기 지리적 격자 상의 셀에 이웃하는 셀들에 지정되는 액세스 포인트들의 지리적 위치들을 제2 모바일 장치에 제공하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 액세스 포인트는 상기 액세스 포인트의 매체 액세스 제어(Media Access Control; MAC) 주소에 의해 식별되고, 상기 MAC 주소는 상기 위치들의 세트와 연관되는 방법.
  3. 제1항에 있어서,
    상기 무선 통신 네트워크는 IEEE(Institute of Electrical and Electronics Engineers) 802.11 기반 프로토콜들을 이용하는 무선 로컬 영역 네트워크(Wireless Local Area Network; WLAN)인 방법.
  4. 제1항에 있어서,
    상기 액세스 포인트와 연관되는 지리적 위치를 결정하는 단계는,
    각 패스 내의 세트로부터 적어도 하나의 위치를 제외하는 단계를 포함하여, 상기 수신된 위치들의 세트에 대해 다중-패스(multi-pass) 분석을 적용하는 단계를 포함하는 방법.
  5. 제4항에 있어서,
    상기 다중-패스 분석을 적용하는 단계는,
    (a) 상기 위치들의 세트를 이용하여 평균 지리적 위치를 계산하는 단계;
    (b) 상기 평균 지리적 위치와 상기 세트 내의 위치들 사이의 거리들을 계산하는 단계;
    (c) 상기 평균 지리적 위치와 상기 적어도 하나의 위치 사이의 거리에 기초하여 상기 세트로부터 적어도 하나의 위치를 제외하는 단계;
    (d) 종료(exit) 조건이 만족될 때까지 (a), (b), 및 (c) 단계를 반복하는 단계; 및
    (e) 적어도 하나의 계산된 거리에 기초하여 상기 평균 지리적 위치를 갖는 원을 이용하여 상기 액세스 포인트와 연관된 지리적 위치를 중심 및 반경으로 지정하는 단계
    를 포함하는 방법.
  6. 제5항에 있어서,
    상기 종료 조건은 반복 횟수가 임계 횟수에 도달하는 경우 만족되는 방법.
  7. 제5항에 있어서,
    상기 종료 조건은 상기 원의 반경이 임계 반경 아래로 도달하는 경우 만족되는 방법.
  8. 제1항에 있어서,
    상기 지리적 격자의 상기 셀은 실질적으로 직사각형인 지리적 영역의 식별점의 위도 및 경도에 의해 상기 지리적 격자 상에서 식별될 수 있는 상기 지리적 영역을 포함하는 방법.
  9. 제1항에 있어서,
    상기 지리적 격자는 3차원 공간을 정의하고, 상기 셀은 3차원 인클로저(enclosure) 내의 식별점의 위도, 경도 및 고도에 의해 상기 지리적 격자 내에서 식별가능한 상기 인클로저를 포함하는 방법.
  10. 시스템으로서,
    무선 통신 네트워크의 액세스 포인트의 통신 범위 내에 위치하는 제1 모바일 장치들로부터 위치들의 세트를 수신하는 동작;
    상기 수신된 위치들의 세트의 평균에 기초하여 상기 액세스 포인트와 연관되는 지리적 위치를 결정하는 동작;
    상기 액세스 포인트 및 상기 액세스 포인트와 연관되는 상기 지리직 위치를 상기 수신된 세트 내의 위치들의 수 및 상기 수신된 세트 내의 위치들의 수명에 기초하여 지리적 격자 상의 셀에 지정하는 동작; 및
    상기 액세스 포인트와 연관되는 상기 지리적 위치 및 상기 지리적 격자 상의 셀에 이웃하는 셀들에 지정되는 액세스 포인트들의 지리적 위치들을 제2 모바일 장치로 제공하는 동작
    을 포함하는 동작들을 수행하도록 구성되는 하나 이상의 컴퓨터
    를 포함하는 시스템.
  11. 제10항에 있어서,
    상기 액세스 포인트는 상기 액세스 포인트의 MAC 주소에 의해 식별되고, 상기 MAC 주소는 상기 위치들의 세트와 연관되는 시스템.
  12. 제10항에 있어서,
    상기 무선 통신 네트워크는 IEEE 802.11 기반 프로토콜들을 이용하는 무선 로컬 영역 네트워크(WLAN)인 시스템.
  13. 제10항에 있어서,
    상기 액세스 포인트와 연관되는 지리적 위치를 결정하는 동작은,
    각 패스 내의 세트로부터 적어도 하나의 위치를 제외하는 동작을 포함하여, 상기 수신된 위치들의 세트에 대해 다중-패스 분석을 적용하는 동작을 포함하는 시스템.
  14. 제13항에 있어서,
    상기 다중-패스 분석을 적용하는 동작은,
    (a) 상기 위치들의 세트를 이용하여 평균 지리적 위치를 계산하는 동작;
    (b) 상기 평균 지리적 위치와 상기 세트 내의 위치들 사이의 거리들을 계산하는 동작;
    (c) 상기 평균 지리적 위치와 상기 적어도 하나의 위치 사이의 거리에 기초하여 상기 세트로부터 적어도 하나의 위치를 제외하는 동작;
    (d) 종료 조건이 만족될 때까지 (a), (b), 및 (c) 동작을 반복하는 동작; 및
    (e) 적어도 하나의 계산된 거리에 기초하여 상기 평균 지리적 위치를 갖는 원을 이용하여 상기 액세스 포인트와 연관된 지리적 위치를 중심 및 반경으로 지정하는 동작
    을 포함하는 시스템.
  15. 제14항에 있어서,
    상기 종료 조건은 반복 횟수가 임계 횟수에 도달하는 경우 만족되는 시스템.
  16. 제14항에 있어서,
    상기 종료 조건은 상기 원의 반경이 임계 반경 아래로 도달하는 경우 만족되는 시스템.
  17. 제10항에 있어서,
    상기 지리적 격자의 상기 셀은 실질적으로 직사각형인 지리적 영역의 식별점의 위도 및 경도에 의해 상기 지리적 격자 상에서 식별될 수 있는 상기 지리적 영역을 포함하는 시스템.
  18. 제10항에 있어서,
    상기 지리적 격자는 3차원 공간을 정의하고, 상기 셀은 3차원 인클로저 내의 식별점의 위도, 경도 및 고도에 의해 상기 지리적 격자 내에서 식별가능한 상기 인클로저를 포함하는 시스템.
  19. 저장 장치에 유형으로(tangibly) 저장되는 컴퓨터 프로그램 제품으로서, 데이터 프로세싱 장치로 하여금,
    무선 통신 네트워크의 액세스 포인트의 통신 범위 내에 위치하는 제1 모바일 장치들로부터 위치들의 세트를 수신하는 동작;
    상기 수신된 위치들의 세트의 평균에 기초하여 상기 액세스 포인트와 연관되는 지리적 위치를 결정하는 동작;
    상기 액세스 포인트 및 상기 액세스 포인트와 연관되는 상기 지리적 위치를 상기 수신된 세트 내의 위치들의 수 및 상기 수신된 세트 내의 위치들의 수명에 기초하여 지리적 격자 상의 셀에 지정하는 동작; 및
    상기 액세스 포인트와 연관되는 상기 지리적 위치 및 상기 지리적 격자 상의 셀에 이웃하는 셀들에 지정되는 액세스 포인트들의 지리적 위치들을 제2 모바일 장치에 제공하는 동작
    을 포함하는 동작들을 수행하게 하도록 동작할 수 있는 컴퓨터 프로그램 제품.
  20. 제19항에 있어서,
    상기 액세스 포인트는 상기 액세스 포인트의 MAC 주소에 의해 식별되고, 상기 MAC 주소는 상기 위치들의 세트와 연관되는 컴퓨터 프로그램 제품.
  21. 제19항에 있어서,
    상기 무선 통신 네트워크는 IEEE 802.11 기반 프로토콜들을 이용하는 무선 로컬 영역 네트워크(WLAN)인 컴퓨터 프로그램 제품.
  22. 제19항에 있어서,
    상기 액세스 포인트와 연관되는 지리적 위치를 결정하는 동작은,
    각 패스 내의 세트로부터 적어도 하나의 위치를 제외하는 동작을 포함하여, 상기 수신된 위치들의 세트에 대해 다중-패스 분석을 적용하는 동작을 포함하는 컴퓨터 프로그램 제품.
  23. 제22항에 있어서,
    상기 다중-패스 분석을 적용하는 동작은,
    (a) 상기 위치들의 세트를 이용하여 평균 지리적 위치를 계산하는 동작;
    (b) 상기 평균 지리적 위치와 상기 세트 내의 위치들 사이의 거리들을 계산하는 동작;
    (c) 상기 평균 지리적 위치와 상기 적어도 하나의 위치 사이의 거리에 기초하여 상기 세트로부터 적어도 하나의 위치를 제외하는 동작;
    (d) 종료 조건이 만족될 때까지 (a), (b), 및 (c) 동작을 반복하는 동작; 및
    (e) 적어도 하나의 계산된 거리에 기초하여 상기 평균 지리적 위치를 갖는 원을 이용하여 상기 액세스 포인트와 연관된 지리적 위치를 중심 및 반경으로 지정하는 동작
    을 포함하는 컴퓨터 프로그램 제품.
  24. 제23항에 있어서,
    상기 종료 조건은 반복 횟수가 임계 횟수에 도달하는 경우 만족되는 컴퓨터 프로그램 제품.
  25. 제23항에 있어서,
    상기 종료 조건은 상기 원의 반경이 임계 반경 아래로 도달하는 경우 만족되는 컴퓨터 프로그램 제품.
  26. 제19항에 있어서,
    상기 지리적 격자의 상기 셀은 실질적으로 직사각형인 지리적 영역의 식별점의 위도 및 경도에 의해 상기 지리적 격자 상에서 식별될 수 있는 상기 지리적 영역을 포함하는 컴퓨터 프로그램 제품.
  27. 제19항에 있어서,
    상기 지리적 격자는 3차원 공간을 정의하고, 상기 셀은 3차원 인클로저 내의 식별점의 위도, 경도 및 고도에 의해 상기 지리적 격자 내에서 식별가능한 상기 인클로저를 포함하는 컴퓨터 프로그램 제품.
KR1020127021337A 2010-01-15 2010-08-25 네트워크 기반 위치 결정 시스템을 위한 위치 데이터베이스 관리 KR101355269B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/688,806 2010-01-15
US12/688,806 US8433334B2 (en) 2010-01-15 2010-01-15 Managing a location database for network-based positioning system
PCT/US2010/046707 WO2011087529A1 (en) 2010-01-15 2010-08-25 Managing a location database for network-based positioning system

Publications (2)

Publication Number Publication Date
KR20120124446A true KR20120124446A (ko) 2012-11-13
KR101355269B1 KR101355269B1 (ko) 2014-01-27

Family

ID=43027507

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127021337A KR101355269B1 (ko) 2010-01-15 2010-08-25 네트워크 기반 위치 결정 시스템을 위한 위치 데이터베이스 관리

Country Status (9)

Country Link
US (2) US8433334B2 (ko)
EP (1) EP2524553B1 (ko)
JP (2) JP5395963B2 (ko)
KR (1) KR101355269B1 (ko)
CN (2) CN102204374B (ko)
AU (1) AU2010341772B2 (ko)
BR (1) BR112012017530B1 (ko)
MX (1) MX2012008170A (ko)
WO (1) WO2011087529A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102259156B1 (ko) * 2020-09-28 2021-06-01 박나은 네트워크 환경 내 디바이스 인증 시스템 및 방법

Families Citing this family (114)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8756010B2 (en) * 2009-10-12 2014-06-17 Qualcomm Incorporated Method and apparatus for identification of points of interest within a predefined area
US8433334B2 (en) * 2010-01-15 2013-04-30 Apple Inc. Managing a location database for network-based positioning system
US8660576B2 (en) * 2010-01-15 2014-02-25 Apple Inc. Adaptive location determination
US8655371B2 (en) * 2010-01-15 2014-02-18 Apple Inc. Location determination using cached location area codes
US8200251B2 (en) 2010-01-15 2012-06-12 Apple Inc. Determining a location of a mobile device using a location database
US8504059B2 (en) * 2010-01-15 2013-08-06 Apple Inc. Location filtering using mobile country code
US8634860B2 (en) * 2010-01-15 2014-01-21 Apple Inc. Location determination using cached location area codes
US8620344B2 (en) 2010-04-07 2013-12-31 Apple Inc. Location-based application program management
KR101446032B1 (ko) * 2010-05-06 2014-10-02 에스케이텔레콤 주식회사 무선랜 신호를 이용한 위치 측위 방법 및 장치
US8924152B2 (en) 2010-05-28 2014-12-30 Agjunction Llc Remote management system for equipment
KR101440836B1 (ko) * 2010-07-08 2014-11-04 에스케이텔레콤 주식회사 무선랜 신호를 이용한 측위 오차 판별 방법 및 장치
US8923258B2 (en) * 2010-11-12 2014-12-30 Intel Corporation Techniques for autonomous wireless network infrastructure assisted location resolution
US9055408B2 (en) * 2011-04-02 2015-06-09 Open Invention Network, Llc System and method for determining geolocation of wireless access point or wireless device
US9880604B2 (en) 2011-04-20 2018-01-30 Microsoft Technology Licensing, Llc Energy efficient location detection
GB201107849D0 (en) * 2011-05-11 2011-06-22 Cambridge Silicon Radio Ltd Cooperative positioning
US8981995B2 (en) 2011-06-03 2015-03-17 Microsoft Technology Licensing, Llc. Low accuracy positional data by detecting improbable samples
US9464903B2 (en) 2011-07-14 2016-10-11 Microsoft Technology Licensing, Llc Crowd sourcing based on dead reckoning
US9470529B2 (en) 2011-07-14 2016-10-18 Microsoft Technology Licensing, Llc Activating and deactivating sensors for dead reckoning
US9877299B2 (en) 2011-08-18 2018-01-23 Rivada Research, Llc Method and system for performing trilateration for fixed infrastructure nodes (FIN) based on enhanced location based information
US9485623B2 (en) * 2011-08-18 2016-11-01 Rivada Research, Llc Method and system for providing enhanced location based trilateration
CN102333339B (zh) * 2011-09-22 2015-07-08 华为技术有限公司 一种覆盖数据库的校准方法和装置
US9462490B2 (en) * 2011-10-12 2016-10-04 Telefonaktiebolaget Lm Ericsson (Publ) Mapping of position data for a network service in a cellular telecommunications network
CN103096423A (zh) * 2011-11-04 2013-05-08 宏碁股份有限公司 帮助使用者整理无线接入点清单的方法及移动装置
US9429657B2 (en) 2011-12-14 2016-08-30 Microsoft Technology Licensing, Llc Power efficient activation of a device movement sensor module
US20130155102A1 (en) * 2011-12-20 2013-06-20 Honeywell International Inc. Systems and methods of accuracy mapping in a location tracking system
US9710982B2 (en) 2011-12-23 2017-07-18 Microsoft Technology Licensing, Llc Hub key service
US8874162B2 (en) 2011-12-23 2014-10-28 Microsoft Corporation Mobile device safe driving
CN103188763B (zh) * 2011-12-31 2016-07-06 联想(北京)有限公司 一种基于空间的签到方法及装置、电子设备
US8897803B2 (en) * 2012-01-13 2014-11-25 Apple Inc. Finding wireless network access points
US8611247B2 (en) * 2012-01-24 2013-12-17 Qualcomm Incorporated Dynamic data retrieval in a WLAN positioning system
CN103260237B (zh) * 2012-02-20 2016-08-10 华为技术有限公司 一种网络定位方法和相关设备
CN104285377A (zh) 2012-03-15 2015-01-14 诺基亚公司 数据的编码和解码
WO2013136124A1 (en) * 2012-03-15 2013-09-19 Nokia Corporation Supporting storage of data
US8599812B2 (en) * 2012-03-26 2013-12-03 Qualcomm Incorporated Encoded wireless data delivery in a WLAN positioning system
JP5915382B2 (ja) * 2012-05-29 2016-05-11 株式会社リコー 管理サーバ及び位置情報設定方法
CN103457876B (zh) * 2012-05-30 2016-09-21 方正宽带网络服务有限公司 一种确定最近接入网络资源的方法及系统
US10042035B2 (en) 2012-06-08 2018-08-07 Apple, Inc. System and method for tile-based reduction of access point location information
EP2862377B1 (en) 2012-06-19 2016-04-06 Telefonaktiebolaget LM Ericsson (publ) Method and arrangement for d2d discovery
KR20140005451A (ko) * 2012-07-04 2014-01-15 한국전자통신연구원 가상 인프라 생성을 이용한 단말 위치 추정 방법 및 장치
US9442181B2 (en) 2012-07-18 2016-09-13 Microsoft Technology Licensing, Llc Prediction for power conservation in a mobile device
US8744484B2 (en) 2012-07-24 2014-06-03 Qualcomm Incorporated Wireless network coverage estimation using down-sampled crowd-sourced data
US8995255B2 (en) 2012-08-03 2015-03-31 Intel Corporation Coverage adjustment in E-UTRA networks
WO2014025724A2 (en) * 2012-08-09 2014-02-13 Sony Computer Entertainment Inc. Information processing terminal, information processing method, program, and information storage medium
US8805407B2 (en) 2012-08-31 2014-08-12 The Nielsen Company (Us), Llc. Methods and apparatus to scan a wireless communication spectrum
EP2896263B1 (en) 2012-09-17 2018-04-04 Telefonaktiebolaget LM Ericsson (publ) Method and arrangement for handling d2d communication
US9860929B2 (en) * 2012-09-18 2018-01-02 Telefonaktiebolaget L M Ericsson (Publ) User equipment, a network node, and methods for device discovery in device to-device (D2D) communications in a wireless telecommunications network
US8934369B2 (en) * 2012-10-05 2015-01-13 Cisco Technology, Inc. Direction aware neighbor list infrastructure assisted roaming
US8886161B2 (en) 2012-10-05 2014-11-11 The Nielsen Company (Us), Llc Methods and apparatus to discover spectrum usage of mobile carriers
US20140155084A1 (en) * 2012-12-03 2014-06-05 Qualcomm Incorporated Multi-mode wireless position association
US9357521B2 (en) * 2013-02-27 2016-05-31 Marvell World Trade Ltd. Determining an estimated location of a base station
US9820231B2 (en) 2013-06-14 2017-11-14 Microsoft Technology Licensing, Llc Coalescing geo-fence events
US8918109B1 (en) * 2013-07-02 2014-12-23 Sprint Spectrum L.P. Using a coverage area identifier to facilitate network reporting
US9107045B2 (en) 2013-07-09 2015-08-11 Google Inc. Crowdsourcing method to detect broken WiFi indoor locationing model
US9237418B2 (en) * 2013-07-26 2016-01-12 Marvell World Trade Ltd. Positioning database management applied to server-based positioning system
US9100926B2 (en) 2013-08-01 2015-08-04 The Nielsen Company (Us), Llc Methods and apparatus to determine a base station location
US9398465B2 (en) * 2013-08-08 2016-07-19 Intel IP Corporation User equipment distribution information collection
US9313767B2 (en) * 2013-09-19 2016-04-12 Qualcomm Incorporated Using broadcast position and transmit power from access points to form assistance data
TWI511603B (zh) * 2013-10-31 2015-12-01 Acer Inc 電子裝置與無線傳輸方法
US9628359B1 (en) * 2013-12-23 2017-04-18 Google Inc. Network selection using current and historical measurements
FR3019285B1 (fr) * 2014-03-26 2016-05-06 Bull Sas Procede d'assistance au deplacement d'un agent dans un environnement interieur
WO2015162458A1 (en) 2014-04-24 2015-10-29 Singapore Telecommunications Limited Knowledge model for personalization and location services
EP3149978B1 (en) * 2014-06-02 2021-11-24 Geospock Limited System for providing location-based social networking services to users of mobile devices
WO2016008540A1 (en) 2014-07-18 2016-01-21 Here Global B.V. Obtaining radiomaps
US9911398B1 (en) * 2014-08-06 2018-03-06 Amazon Technologies, Inc. Variable density content display
US9794511B1 (en) 2014-08-06 2017-10-17 Amazon Technologies, Inc. Automatically staged video conversations
JP6142898B2 (ja) * 2014-09-30 2017-06-07 ダイキン工業株式会社 測位システム
US9730013B2 (en) * 2014-10-31 2017-08-08 Hsiao-Tse Chang Method, recording medium and electronic device of 3D geolocation
EP3026454B1 (de) * 2014-11-27 2024-02-07 Deutsche Telekom AG Verfahren und drahtloses Kommunikationssystem zum automatischen Bestimmen der Position eines stationären drahtlosen Zugangspunktes für mobile Endgeräte, stationärer drahtloser Zuganspunkt und Computerprogramm
CN107209247B (zh) 2014-12-04 2021-06-18 赫尔环球有限公司 支持数据的协作收集
WO2016086993A1 (en) 2014-12-04 2016-06-09 Here Global B.V. Supporting radio model quality assurance
US10809349B2 (en) 2014-12-04 2020-10-20 Here Global B.V. Supporting positioning quality assurance
KR102280542B1 (ko) 2015-01-13 2021-07-22 삼성전자 주식회사 전자 장치, 무선 중계 장치, 및 무선 중계 장치의 위치 정보 제공 방법
US9462427B2 (en) * 2015-01-14 2016-10-04 Kodiak Networks, Inc. System and method for elastic scaling using a container-based platform
EP3755055A1 (en) * 2015-03-20 2020-12-23 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus for facilitating network coexistence
US9819905B1 (en) 2015-05-28 2017-11-14 Amazon Technologies, Inc. Video communication sessions between whitelisted devices
US9571979B2 (en) 2015-06-10 2017-02-14 The Nielsen Company (Us), Llc Methods and apparatus for cell tower location estimation using multiple types of data sources
EP3332267B1 (en) * 2015-08-07 2021-12-15 Telefonaktiebolaget LM Ericsson (PUBL) Differentiated positioning
US9973939B2 (en) * 2015-09-25 2018-05-15 Vivint, Inc. UAV network design
US10063419B2 (en) * 2015-10-31 2018-08-28 Mcafee, Llc Establishing nodes for global routing manager
US10154378B2 (en) * 2015-11-23 2018-12-11 Electronics And Telecommunications Research Institute System and method for tracking location of worker
US10841852B2 (en) 2015-12-09 2020-11-17 DataSpark, PTE. LTD. Transportation network monitoring using cellular radio metadata
US11249167B2 (en) 2016-01-21 2022-02-15 Rx Networks Inc. Location determination using crowd sourced information
KR102541244B1 (ko) * 2016-02-03 2023-06-12 삼성전자주식회사 위치 추정 방법 및 이를 수행하는 전자 장치
US10176340B2 (en) 2016-03-13 2019-01-08 DataSpark, PTE. LTD. Abstracted graphs from social relationship graph
US11157520B2 (en) 2016-03-28 2021-10-26 DataSpark, Pte Ltd. Uniqueness level for anonymized datasets
US10337835B2 (en) 2016-05-11 2019-07-02 Rivada Research LLC Method and system for using enhanced location-based information to guide munitions
US9635510B1 (en) 2016-06-24 2017-04-25 Athentek Innovations, Inc. Database for Wi-Fi position estimation
PL3497403T3 (pl) * 2016-08-11 2022-01-10 Axon Vibe AG Geolokalizowanie osób na podstawie pochodnej sieci społecznościowej
US10298699B2 (en) * 2016-09-08 2019-05-21 Microsoft Technology Licensing, Llc Physical location determination of internal network components
US10349375B2 (en) 2016-11-16 2019-07-09 At&T Intellectual Property I, L.P. Location determination based on access point emulation
JP6776848B2 (ja) * 2016-11-25 2020-10-28 富士通株式会社 情報処理システム、情報処理装置及び情報処理方法
US20210172759A1 (en) 2017-02-17 2021-06-10 Dataspark Pte Ltd Map Matching and Trajectory Analysis
WO2018150228A1 (en) 2017-02-17 2018-08-23 Dataspark Pte, Ltd Mobility gene for visit data
US10873832B2 (en) 2017-02-17 2020-12-22 DataSpark, PTE. LTD. Mobility gene for trajectory data
WO2018151672A1 (en) * 2017-02-17 2018-08-23 Dataspark Pte. Ltd. Trajectory analysis through fusion of multiple data sources
US10834600B2 (en) * 2017-05-22 2020-11-10 Apple Inc. Managing moving wireless access points in wireless network positioning system
US9974043B1 (en) 2017-05-31 2018-05-15 Aruba Networks, Inc. Assigning a subset of access points in a wireless network to a high priority
US10545231B2 (en) 2017-06-02 2020-01-28 Apple Inc. Compressing radio maps using different compression models
US10151824B1 (en) * 2017-06-02 2018-12-11 Apple Inc. Compressing radio maps
CN108169709B (zh) * 2018-03-01 2021-11-16 西京学院 一种基于分布式天线的室内三维定位方法
CN110211204B (zh) * 2018-03-06 2022-07-26 腾讯科技(深圳)有限公司 一种确定道路任务包的方法、装置及存储介质
KR102546949B1 (ko) * 2018-07-13 2023-06-23 삼성전자 주식회사 전자 장치, 서버 장치 및 전자 장치의 위치를 결정하는 방법
KR102531062B1 (ko) * 2018-07-13 2023-05-11 삼성전자주식회사 액세스 포인트의 위치 추적 방법 및 이를 위한 전자 장치
KR102645260B1 (ko) 2018-10-25 2024-03-11 삼성전자주식회사 전자 장치 및 전자 장치의 위치 측정 방법
US11191054B2 (en) * 2018-11-02 2021-11-30 Qualcomm Incorporated Method and apparatus for estimating a position of a mobile device using bundled positioning reference signals
US11917488B2 (en) * 2019-09-13 2024-02-27 Troverlo, Inc. Passive asset tracking using observations of pseudo Wi-Fi access points
US11622234B2 (en) 2019-09-13 2023-04-04 Troverlo, Inc. Passive asset tracking using observations of Wi-Fi access points
US10848935B1 (en) 2019-09-13 2020-11-24 Troverlo, Llc Passive asset tracking with existing infrastructure
US11589187B2 (en) 2019-09-13 2023-02-21 Troverlo, Inc. Passive sensor tracking using observations of Wi-Fi access points
US10728709B1 (en) 2019-09-13 2020-07-28 Troverlo, Llc Passive asset tracking with existing infrastructure
US10848934B1 (en) 2019-09-13 2020-11-24 Troverlo, Llc Passive sensor tracking with existing infrastructure
CN114902700A (zh) * 2020-01-21 2022-08-12 联想(北京)有限公司 用于无线通信的方法及设备
US11438834B2 (en) 2021-06-14 2022-09-06 Ultralogic 6G, Llc Searchable database of 5G/6G network access information
EP4261562A1 (en) * 2022-04-14 2023-10-18 Aptiv Technologies Limited Method for estimating a position of an object

Family Cites Families (138)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9016277D0 (en) * 1990-07-25 1990-09-12 British Telecomm Location and handover in mobile radio systems
US6278936B1 (en) 1993-05-18 2001-08-21 Global Research Systems, Inc. System and method for an advance notification system for monitoring and reporting proximity of a vehicle
US5444450A (en) * 1993-08-11 1995-08-22 Motorola, Inc. Radio telecommunications system and method with adaptive location determination convergence
US5412388A (en) * 1993-08-11 1995-05-02 Motorola, Inc. Position ambiguity resolution
US5493286A (en) * 1994-03-10 1996-02-20 Motorola, Inc. Method for providing communications within a geographic region
US5539924A (en) * 1994-03-10 1996-07-23 Motorola, Inc. Method for providing communications within a geographic region
US5519760A (en) 1994-06-22 1996-05-21 Gte Laboratories Incorporated Cellular network-based location system
US5570412A (en) * 1994-09-28 1996-10-29 U.S. West Technologies, Inc. System and method for updating a location databank
US5508707A (en) * 1994-09-28 1996-04-16 U S West Technologies, Inc. Method for determining position by obtaining directional information from spatial division multiple access (SDMA)-equipped and non-SDMA-equipped base stations
US5913170A (en) * 1994-11-16 1999-06-15 Highwaymaster Communications, Inc. Locating system and method using a mobile communications network
US5642303A (en) * 1995-05-05 1997-06-24 Apple Computer, Inc. Time and location based computing
US5802468A (en) * 1995-06-28 1998-09-01 Mci Corporation System and method for identifying calling areas within a communication system
US5945944A (en) * 1996-03-08 1999-08-31 Snaptrack, Inc. Method and apparatus for determining time for GPS receivers
US5945948A (en) * 1996-09-03 1999-08-31 Motorola, Inc. Method and apparatus for location finding in a communication system
WO1998010307A1 (en) 1996-09-09 1998-03-12 Dennis Jay Dupray Location of a mobile station
JPH11196452A (ja) * 1997-12-26 1999-07-21 Hitachi Ltd 移動通信端末、処理装置、および、位置登録エリア設定方法
US6122520A (en) * 1998-02-13 2000-09-19 Xerox Corporation System and method for obtaining and using location specific information
US6236861B1 (en) * 1998-07-30 2001-05-22 Ramot University Authority For Applied Research And Development Ltd. Method for tracking mobile users in a cellular network
AU6249799A (en) 1998-09-22 2000-04-10 Iridium Ip Llc Method and system for providing a global satellite based telecommunication network
US6269246B1 (en) 1998-09-22 2001-07-31 Ppm, Inc. Location determination using RF fingerprinting
JP2000134662A (ja) * 1998-10-26 2000-05-12 Fujitsu Ltd 移動通信システムおよび移動機
US6321092B1 (en) 1998-11-03 2001-11-20 Signal Soft Corporation Multiple input data management for wireless location-based applications
US8135413B2 (en) 1998-11-24 2012-03-13 Tracbeam Llc Platform and applications for wireless location and other complex services
US7783299B2 (en) 1999-01-08 2010-08-24 Trueposition, Inc. Advanced triggers for location-based service applications in a wireless location system
DE19911938A1 (de) 1999-03-17 2000-09-21 Viag Interkom Gmbh & Co Kommunikationssystem für den Mobilfunk und geeignetes Verfahren hierfür
US6232915B1 (en) * 1999-08-31 2001-05-15 Qwest Communications International Inc. System and method for identifying clusters of geographic locations
US6490519B1 (en) 1999-09-27 2002-12-03 Decell, Inc. Traffic monitoring system and methods for traffic monitoring and route guidance useful therewith
US6424840B1 (en) * 1999-11-05 2002-07-23 Signalsoft Corp. Method and system for dynamic location-based zone assignment for a wireless communication network
US6445937B1 (en) * 1999-12-02 2002-09-03 Lucent Technologies Inc. Methods and apparatus for mobile phone power management
US7457628B2 (en) 2000-02-29 2008-11-25 Smarter Agent, Llc System and method for providing information based on geographic position
US6625457B1 (en) * 2000-04-11 2003-09-23 Ericsson Inc. Mobile terminal with location database
US8050686B1 (en) * 2000-08-29 2011-11-01 Motorola Mobility, Inc. Method of enabling low tier location applications
US6856807B1 (en) * 2000-09-07 2005-02-15 Ericsson Inc. Method to control the update frequency of a positioning device by a mobile terminal
US20020067308A1 (en) * 2000-12-06 2002-06-06 Xerox Corporation Location/time-based reminder for personal electronic devices
FI111901B (fi) * 2000-12-29 2003-09-30 Ekahau Oy Sijainnin arviointi langattomissa tietoliikenneverkoissa
US7133909B2 (en) * 2001-01-12 2006-11-07 Microsoft Corporation Systems and methods for locating mobile computer users in a wireless network
US7576692B2 (en) 2001-02-23 2009-08-18 Nokia Corporation Method for positioning, a positioning system, and an electronic device
CN1330975C (zh) 2001-03-15 2007-08-08 高通股份有限公司 无线通信设备和方法
US7072666B1 (en) * 2001-06-21 2006-07-04 Spring Spectrum L.P. Method and system for communicating location in a cellular wireless system
US20030013449A1 (en) 2001-07-11 2003-01-16 Hose David A. Monitoring boundary crossings in a wireless network
US7974642B2 (en) * 2001-09-10 2011-07-05 Sirf Technology, Inc. System and method for estimating cell center position for cell ID based positioning
EP1292168B1 (en) * 2001-09-10 2009-05-06 NTT DoCoMo, Inc. Registration and paging in a mobile communication system
FI113731B (fi) * 2001-09-21 2004-05-31 Locus Portal Corp Paikannusmenetelmä matkaviestin verkoille
EP1304897A1 (en) * 2001-10-22 2003-04-23 Agilent Technologies, Inc. (a Delaware corporation) Methods and apparatus for providing data for enabling location of a mobile communications device
US7127257B2 (en) 2001-12-27 2006-10-24 Qualcomm Incorporated Use of mobile stations for determination of base station location parameters in a wireless mobile communication system
KR100686741B1 (ko) * 2002-01-21 2007-02-27 노키아 코포레이션 위치 정보 제공
JP2003230171A (ja) 2002-01-31 2003-08-15 Ntt Docomo Inc 移動管理装置、移動通信端末及び移動通信システム
US20040203845A1 (en) 2002-03-22 2004-10-14 Lal Amrish K. Method and system for associating location specific data with data in a mobile database
US7565155B2 (en) * 2002-04-10 2009-07-21 Networks In Motion Method and system for dynamic estimation and predictive route generation
US6947880B2 (en) * 2002-04-23 2005-09-20 Motorola, Inc. Method for improving accuracy of a velocity model
JP4179473B2 (ja) * 2002-10-30 2008-11-12 リサーチ イン モーション リミテッド データサービスを利用可能にする通信ネットワークを優先的に選択するための、方法およびデバイス
US20040203891A1 (en) 2002-12-10 2004-10-14 International Business Machines Corporation Dynamic service binding providing transparent switching of information services having defined coverage regions
US20040176107A1 (en) * 2003-02-07 2004-09-09 Lovleen Chadha Methods and systems for position based tasks for wireless devices
US20070207816A1 (en) 2003-02-24 2007-09-06 Polaris Wireless, Inc. Location Estimation of Wireless Terminals Based on Combinations of Signal-Strength Measurements and Geometry-of-Arrival Measurements
DE10316063A1 (de) 2003-04-08 2004-10-28 O2 (Germany) Gmbh & Co. Ohg Kommunikationssystem für den Mobilfunk mit wenigstens einem in einem Gesamtgebiet befindlichen Teilnehmergebiet
US7346359B2 (en) * 2003-07-31 2008-03-18 Pango Networks, Inc. Method for RF fingerprinting
US20050239478A1 (en) 2003-09-03 2005-10-27 Nokia Corporation Terminal location
US7312752B2 (en) * 2003-10-22 2007-12-25 Awarepoint Corporation Wireless position location and tracking system
US7373109B2 (en) * 2003-11-04 2008-05-13 Nokia Corporation System and method for registering attendance of entities associated with content creation
JP4046705B2 (ja) 2004-03-23 2008-02-13 三洋電機株式会社 移動通信支援装置、移動通信端末および移動通信システム
US7460872B2 (en) * 2004-07-06 2008-12-02 International Business Machines Corporation Method and application for automatic tracking of mobile devices for computer network processor systems
ATE356507T1 (de) * 2004-09-27 2007-03-15 Ibm System und verfahren zur dynamischen planung von aufgaben in abhängigkeit von der position eines mobilen benutzers
JP4922175B2 (ja) * 2004-10-19 2012-04-25 ヤフー! インコーポレイテッド 位置に基づくソーシャルネットワーキングシステム及び方法
US7433693B2 (en) 2004-10-27 2008-10-07 Qualcomm Incorporated Location-sensitive calibration data
KR101099151B1 (ko) * 2004-10-29 2011-12-27 스카이후크 와이어리스, 인크. 위치 표지 데이터베이스와 서버, 위치 표지 데이터베이스구축 방법 및 이것을 이용한 위치 기반 서비스
US8369264B2 (en) * 2005-10-28 2013-02-05 Skyhook Wireless, Inc. Method and system for selecting and providing a relevant subset of Wi-Fi location information to a mobile client device so the client device may estimate its position with efficient utilization of resources
FR2880505B1 (fr) * 2004-12-31 2007-05-11 Evolium Sas Soc Par Actions Si Procede et systeme pour l'exploitation d'un reseau de communications mobiles
WO2007081356A2 (en) * 2005-02-22 2007-07-19 Skyhook Wireless, Inc. Continuous data optimization in positioning system
US7502620B2 (en) * 2005-03-04 2009-03-10 Shyhook Wireless, Inc. Encoding and compression of a location beacon database
JP4465661B2 (ja) 2005-03-01 2010-05-19 株式会社カシオ日立モバイルコミュニケーションズ 移動通信端末及び通信制御方法
JP2008537859A (ja) 2005-03-15 2008-09-25 エムフォーメイション テクノロジーズ インコーポレイテッド 無線デバイスを使用する端末間動作のモニタリング及び測定システム及び方法
US7450064B2 (en) 2005-03-22 2008-11-11 Qualcomm, Incorporated Methods and systems for deriving seed position of a subscriber station in support of unassisted GPS-type position determination in a wireless communication system
US8589532B2 (en) * 2005-06-24 2013-11-19 Qualcomm Incorporated Apparatus and method for determining WLAN access point position
US7478578B2 (en) * 2005-06-24 2009-01-20 Honeywell International Inc. Commercial airliner missile protection using formation drone aircraft
CN101253734A (zh) * 2005-07-07 2008-08-27 高通股份有限公司 用于无线广域网、无线局域网和无线个域网中的位置确定和基于位置的服务的方法和装置
US8311543B2 (en) * 2005-07-07 2012-11-13 Qualcomm Incorporated Methods and devices for interworking of wireless wide area networks and wireless local area networks or wireless personal area networks
US8126477B2 (en) * 2005-07-07 2012-02-28 Qualcomm Incorporated Methods and devices for interworking of wireless wide area networks and wireless local area networks or wireless personal area networks
US9042917B2 (en) * 2005-11-07 2015-05-26 Qualcomm Incorporated Positioning for WLANS and other wireless networks
US7664511B2 (en) * 2005-12-12 2010-02-16 Nokia Corporation Mobile location method for WLAN-type systems
US20070290924A1 (en) 2005-12-14 2007-12-20 Innerwireless, Inc. Wireless resource monitoring system and method
KR100651594B1 (ko) * 2005-12-29 2006-11-30 주식회사 팬택 목적지 방향표시 기능을 제공하는 이동통신 단말기 및 그방향표시 방법
US8706159B2 (en) * 2006-01-03 2014-04-22 Apple Inc. Media data transfer
US7471954B2 (en) 2006-02-24 2008-12-30 Skyhook Wireless, Inc. Methods and systems for estimating a user position in a WLAN positioning system based on user assigned access point locations
JP2007232458A (ja) * 2006-02-28 2007-09-13 Seiko Epson Corp 測位装置、測位装置の制御方法、測位装置の制御プログラム、測位装置の制御プログラムを記録したコンピュータ読み取り可能な記録媒体
US20070233899A1 (en) 2006-04-03 2007-10-04 Aborn Justin A Locating devices
US7515578B2 (en) * 2006-05-08 2009-04-07 Skyhook Wireless, Inc. Estimation of position using WLAN access point radio propagation characteristics in a WLAN positioning system
US7551579B2 (en) * 2006-05-08 2009-06-23 Skyhook Wireless, Inc. Calculation of quality of wlan access point characterization for use in a wlan positioning system
US7551929B2 (en) * 2006-05-08 2009-06-23 Skyhook Wireless, Inc. Estimation of speed and direction of travel in a WLAN positioning system using multiple position estimations
AU2006350335A1 (en) * 2006-05-16 2008-05-08 Tomtom International B.V. Navigation device with automatic GPS precision enhancement
US7561890B2 (en) 2006-06-22 2009-07-14 Sony Ericsson Mobile Communications Ab Hotspot location database system, mobile terminal for use in such a system and method for creating maintaining and updating such a system
WO2008006077A2 (en) * 2006-07-07 2008-01-10 Skyhook Wireless Inc. Systems and methods of gathering information from wlan- enabled access points to estimate position of a wlan positioning device
US7974645B2 (en) * 2006-08-30 2011-07-05 At&T Mobility Ii Llc Mobile registration using a service area identifier or plurality of service area identifiers
JP5388206B2 (ja) * 2006-09-06 2014-01-15 コーニンクレッカ フィリップス エヌ ヴェ 位置決めのための基準ノードを探す技術
US20080225779A1 (en) 2006-10-09 2008-09-18 Paul Bragiel Location-based networking system and method
JP4957174B2 (ja) 2006-10-19 2012-06-20 ソニー株式会社 位置記憶装置、無線端末、位置記憶システム、位置登録方法、位置更新方法およびプログラム
GB2443860B (en) 2006-10-19 2011-02-16 Vodafone Plc Controlling the use of access points in a telecommunications network
US9226257B2 (en) * 2006-11-04 2015-12-29 Qualcomm Incorporated Positioning for WLANs and other wireless networks
US9110903B2 (en) * 2006-11-22 2015-08-18 Yahoo! Inc. Method, system and apparatus for using user profile electronic device data in media delivery
US8798639B2 (en) * 2007-01-17 2014-08-05 Qualcomm Incorporated Method and apparatus for using historic network information for determining approximate position
GB2445986A (en) * 2007-01-17 2008-07-30 Connect Spot Ltd Database Update Systems for Wireless communications Systems
US8000276B2 (en) * 2007-02-05 2011-08-16 Wefi, Inc. Providing easy access to radio networks
DE602007000963D1 (de) 2007-02-15 2009-06-04 Research In Motion Ltd Notrufnummerwahl für mobiles Kommunikationsgerät
KR100896680B1 (ko) 2007-04-13 2009-05-14 에스케이 텔레콤주식회사 G-pCell 데이터베이스를 이용하여 위치에 따라이동통신 단말기에 네트워크 기반의 위치 측위를 제공하는방법 및 시스템
US8768356B2 (en) 2007-04-23 2014-07-01 At&T Mobility Ii Llc Dual mode device with MAC address capture and pairing
US9109904B2 (en) * 2007-06-28 2015-08-18 Apple Inc. Integration of map services and user applications in a mobile device
US9066199B2 (en) * 2007-06-28 2015-06-23 Apple Inc. Location-aware mobile device
US8290513B2 (en) * 2007-06-28 2012-10-16 Apple Inc. Location-based services
US9288751B2 (en) * 2007-08-29 2016-03-15 Qualcomm Incorporated Use of position data to select wireless access point
US20090067420A1 (en) * 2007-09-11 2009-03-12 General Instrument Corporation Location Determination for a Packet-Switched Device for Providing Location-Based Services
US8711034B2 (en) * 2007-10-02 2014-04-29 Ricoh Co., Ltd. Geographically self-labeling access points
EP2056532A1 (en) 2007-11-05 2009-05-06 Spotigo GmbH Determining positions in a wireless radio system
US8620996B2 (en) * 2007-11-19 2013-12-31 Motorola Mobility Llc Method and apparatus for determining a group preference in a social network
WO2009070138A1 (en) 2007-11-29 2009-06-04 David Stackpole Dynamic geosocial networking
WO2009089308A2 (en) 2008-01-10 2009-07-16 Apple Inc. Wireless data acquisition for mobile electronic devices
US9094933B2 (en) * 2008-01-14 2015-07-28 Qualcomm Incorporated Wireless communication paging utilizing multiple types of node identifiers
US9392572B2 (en) 2008-03-04 2016-07-12 Yahoo! Inc. Using location-based request data for identifying beacon locations
US20090234876A1 (en) 2008-03-14 2009-09-17 Timothy Schigel Systems and methods for content sharing
US8213389B2 (en) 2008-04-15 2012-07-03 Apple Inc. Location determination using formula
US8761786B2 (en) 2008-05-02 2014-06-24 Pine Valley Investments, Inc. System and method for assigning communication cells to servers in a cellular communication system
US20090280801A1 (en) 2008-05-09 2009-11-12 Ajay Malik Cell Sensor for Access Ports
US20090303114A1 (en) 2008-06-06 2009-12-10 Skyhook Wireless, Inc. Method and system for determining location using a hybrid satellite and wlan positioning system by selecting the best wlan-ps solution
US8885736B2 (en) 2008-06-13 2014-11-11 Ikanos Communications, Inc. Systems and methods for positioning and messaging of reserved tones for peak-to-average ratio (PAR) reduction in DSL systems
WO2010005731A1 (en) 2008-06-16 2010-01-14 Skyhook Wireless, Inc. Methods and systems for determining location using a cellular and wlan positioning system by selecting the best wlan ps solution
US7916071B2 (en) * 2008-12-23 2011-03-29 Andrew, Llc System and method for determining a reference location of a mobile device
US20100255856A1 (en) 2009-04-03 2010-10-07 Microsoft Corporation Location Sensing Selection for Mobile Devices
US8467805B2 (en) 2009-05-08 2013-06-18 Andrew Llc System and method for determining a reference location using cell table data mining
US8434153B2 (en) * 2009-08-24 2013-04-30 Microsoft Corporation Application display on a locked device
CN101667208B (zh) 2009-09-25 2013-06-26 深圳创维数字技术股份有限公司 数字电视接收机及其节目搜索、节目切换方法
US8374632B2 (en) * 2010-01-04 2013-02-12 Alcatel Lucent Method and apparatus for providing geo-location enablement for wireless device
US8504059B2 (en) * 2010-01-15 2013-08-06 Apple Inc. Location filtering using mobile country code
US8433334B2 (en) 2010-01-15 2013-04-30 Apple Inc. Managing a location database for network-based positioning system
US8655371B2 (en) * 2010-01-15 2014-02-18 Apple Inc. Location determination using cached location area codes
US8200251B2 (en) * 2010-01-15 2012-06-12 Apple Inc. Determining a location of a mobile device using a location database
US8660576B2 (en) * 2010-01-15 2014-02-25 Apple Inc. Adaptive location determination
US8634860B2 (en) * 2010-01-15 2014-01-21 Apple Inc. Location determination using cached location area codes
US20110252422A1 (en) 2010-04-07 2011-10-13 Apple Inc. Opportunistic Multitasking
US8447326B2 (en) * 2010-04-07 2013-05-21 Apple Inc. Selective location determination
US8886158B2 (en) * 2010-12-30 2014-11-11 GreatCall, Inc. Extended emergency notification systems and methods

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102259156B1 (ko) * 2020-09-28 2021-06-01 박나은 네트워크 환경 내 디바이스 인증 시스템 및 방법

Also Published As

Publication number Publication date
US20110176523A1 (en) 2011-07-21
KR101355269B1 (ko) 2014-01-27
US8433334B2 (en) 2013-04-30
US20130231132A1 (en) 2013-09-05
AU2010341772A1 (en) 2012-08-23
CN102204374A (zh) 2011-09-28
AU2010341772B2 (en) 2015-02-19
CN104125638B (zh) 2018-02-02
CN104125638A (zh) 2014-10-29
CN102204374B (zh) 2014-05-07
MX2012008170A (es) 2012-11-06
JP2013517679A (ja) 2013-05-16
JP5722408B2 (ja) 2015-05-20
JP5395963B2 (ja) 2014-01-22
EP2524553B1 (en) 2019-05-22
JP2014060737A (ja) 2014-04-03
WO2011087529A1 (en) 2011-07-21
US9119168B2 (en) 2015-08-25
EP2524553A1 (en) 2012-11-21
BR112012017530A2 (pt) 2016-06-28
BR112012017530B1 (pt) 2021-04-13

Similar Documents

Publication Publication Date Title
KR101355269B1 (ko) 네트워크 기반 위치 결정 시스템을 위한 위치 데이터베이스 관리
KR101343174B1 (ko) 위치 데이터베이스를 이용한 모바일 장치의 위치 결정
US9078230B2 (en) Selective location determination
US8634860B2 (en) Location determination using cached location area codes
KR101347467B1 (ko) 이동 국가 코드를 이용한 위치 필터링
US10698073B2 (en) Wireless access point location estimation using collocated harvest data
US8655371B2 (en) Location determination using cached location area codes
AU2016225929A1 (en) Managing a location database for network-based positioning system
AU2015202130A1 (en) Managing a location database for network-based positioning system

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171219

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181226

Year of fee payment: 6