KR102212081B1 - 장치 위치를 결정하기 위한 측위 소스 순위화 기법 - Google Patents

장치 위치를 결정하기 위한 측위 소스 순위화 기법 Download PDF

Info

Publication number
KR102212081B1
KR102212081B1 KR1020167009234A KR20167009234A KR102212081B1 KR 102212081 B1 KR102212081 B1 KR 102212081B1 KR 1020167009234 A KR1020167009234 A KR 1020167009234A KR 20167009234 A KR20167009234 A KR 20167009234A KR 102212081 B1 KR102212081 B1 KR 102212081B1
Authority
KR
South Korea
Prior art keywords
location
positioning
sources
geographic area
source
Prior art date
Application number
KR1020167009234A
Other languages
English (en)
Other versions
KR20160065115A (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 KR20160065115A publication Critical patent/KR20160065115A/ko
Application granted granted Critical
Publication of KR102212081B1 publication Critical patent/KR102212081B1/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
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • 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/29Geographical information databases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/90Services for handling of emergency or hazardous situations, e.g. earthquake and tsunami warning systems [ETWS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Emergency Management (AREA)
  • Public Health (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Remote Sensing (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)
  • Alarm Systems (AREA)
  • Telephone Function (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술이 설명된다. 일반적으로, 측위 소스는 장치의 지리 위치를 결정하는 데 사용될 수 있는 포지션 정보(예로서, GPS 좌표, 위도 및 경도, 거리 주소 등)의 소스를 지칭한다. 하나 이상의 실시예에 따르면, 측위 소스 및/또는 측위 소스들의 조합은 다양한 기준에 기초하여 순위화될 수 있다. 따라서, 특정 장치에 대한 위치가 요청될 때, 최고 순위 가용 측위 소스 또는 측위 소스들의 조합을 선택하여 장치의 위치를 결정할 수 있다. 예를 들어, 측위 소스 순위는 클라이언트 장치 상에 그리고/또는 원격 위치 관련 서비스를 통해 유지될 수 있다. 다양한 실시예에 따르면, 장치의 위치는 비상 지원이 그 위치에서 제공되는 것을 가능하게 하기 위해 결정될 수 있다.

Description

장치 위치를 결정하기 위한 측위 소스 순위화 기법{LOCATION SOURCE RANKING FOR DETERMINING DEVICE LOCATION}
오늘날의 이동 장치는 사용자에게 막대한 양의 휴대 기능을 제공한다. 예를 들어, 스마트폰, 태블릿, 랩탑 등은 사용자가 특정 위치에 구애됨이 없이 다양한 상이한 작업을 수행하는 것을 가능하게 한다. 사용자가 위치를 이동할 수 있으므로, 사용자가 특정 시간에 어느 곳에 위치하는지를 아는 것이 유용할 수 있다. 예를 들어, 사용자가 비상 상황을 만나는 것을 고려한다. 사용자가 지리적으로 어느 곳에 위치하는지를 알게 되면, 가장 가까운 이용 가능한 비상 서비스가 더 빠르게 식별될 수 있다. 비상 서비스가 식별되면, 비상 서비스는 사용자의 위치를 통지받아서, 비상 상황의 현장에 비상 서비스를 빠르고 정확하게 보낼 수 있다.
사용자의 이동 장치의 기능을 이용하여 사용자의 위치를 결정하기 위한 현존 방법이 존재하지만, 이러한 현재의 기술은 다수의 결함을 겪는다. 예를 들어, 일부 기술은 유연하지 못하며, 일시적일 수 있는 정보, 예로서 셀룰러 기지국과의 통신을 통한 삼각 측량을 위한 셀 타워로부터의 신호의 가용성에 의존한다. 또한, 일부 기술은 특정 위치에서 이용 가능할 수 있는 위치 정보의 타입의 변화에 적응하지 못한다.
이 요약은 아래의 상세한 설명에서 더 설명되는 개념의 발췌를 간단한 형태로 소개하기 위해 제공된다. 이 요약은 청구 발명의 중요한 특징 또는 본질적인 특징을 식별하는 것을 의도하지 않으며, 청구 발명의 범위를 결정하는 데 있어서의 보조물로서 사용되는 것도 의도하지 않는다.
장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술이 설명된다. 일반적으로 측위 소스는 상이한 장치에 대한 포지션 정보(예로서, GPS 좌표, 위도 및 경도, 거리 주소 등)의 소스를 지칭한다. 예를 들어, 클라이언트 장치에 대한 포지션 정보를 처리하여, 클라이언트 장치의 지리 위치를 결정할 수 있다. 하나 이상의 실시예에 따르면, 측위 소스 및/또는 측위 소스들의 조합은 다양한 기준에 기초하여 순위화될 수 있다. 측위 소스는 예를 들어 각각의 측위 소스의 상대 정밀도, 정확도 및/또는 과거 신뢰성에 기초하여 순위화될 수 있다. 따라서, 특정 장치에 대한 위치가 요청될 때, 최고 순위의 가용 측위 소스 또는 측위 소스들의 조합을 선택하여 장치의 위치를 결정할 수 있다.
적어도 일부 실시예에서, 상이한 측위 소스를 서로에 대해 순위화하는 측위 정책이 생성될 수 있다. 예를 들어, 측위 정책은 클라이언트 장치 상에 그리고/또는 원격 위치 관련 서비스를 통해 유지될 수 있다. 또한, 측위 정책은 클라이언트 장치에 대한 위치 결정 판단이 클라이언트 장치에서 그리고/또는 원격 서비스에서 수행되어야 하는 상황을 지정할 수 있다. 따라서, 일부 시나리오에서는 클라이언트 장치의 위치가 클라이언트 장치에서 결정될 수 있고, 다른 시나리오에서는 클라이언트 장치의 위치가 원격 서비스에서 결정될 수 있다. 다양한 실시예에 따르면, 클라이언트 장치의 위치를 결정하여, 비상 지원이 그 위치에서 제공되는 것을 가능하게 할 수 있다.
첨부 도면을 참조하여 상세한 설명이 설명된다. 도면에서, 참조 번호의 가장 좌측의 숫자는 참조 번호가 최초로 나타나는 도면을 식별한다. 설명 및 도면 내의 상이한 사례에서의 동일한 참조 번호의 사용은 유사하거나 동일한 아이템을 지시할 수 있다.
도 1은 본 명세서에서 설명되는 기술을 이용하도록 동작 가능한 예시적인 구현의 환경의 예시이다.
도 2는 하나 이상의 실시예에 따른 예시적인 구현 시나리오를 예시한다.
도 3은 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다.
도 4는 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다.
도 5는 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다.
도 6은 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다.
도 7은 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다.
도 8은 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다.
도 9는 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다.
도 10은 본 명세서에서 설명되는 기술의 실시예를 구현하도록 구성되는, 도 1을 참조하여 설명되는 바와 같은 예시적인 시스템 및 컴퓨팅 장치를 예시한다.
장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술이 설명된다. 일반적으로, 측위 소스는 글로벌 포지셔닝 시스템(GPS) 위성, 셀룰러 통신 시스템, 광대역 무선(예로서, WiFi(상표)) 네트워크, 위치 정보 서버(LIS), 위치 정보의 사용자 입력 등과 같은 장치에 대한 포지션 정보의 소스를 지칭한다. 따라서, 측위 소스는 이동 컴퓨팅 장치와 같은 장치에 대한 포지션 정보를 제공하는 데 이용될 수 있다. 포지션 정보의 예는 GPS 좌표, 거리 주소, 위도 및 경도 좌표 등을 포함한다. 클라이언트 장치에 대한 포지션 정보를 처리하여 클라이언트 장치의 지리 위치를 결정할 수 있다.
하나 이상의 실시예에 따르면, 측위 소스 및/또는 측위 소스들의 조합은 다양한 기준에 기초하여 순위화될 수 있다. 측위 소스는 예를 들어 각각의 측위 소스의 상대 정밀도, 정확도 및/또는 과거 신뢰성에 기초하여 순위화될 수 있다. 예를 들어, 다수의 GPS 위성과 같은 더 높은 알려진 정확도를 갖는 측위 소스는 셀룰러 삼각 측량과 같은 더 낮은 알려진 정확도를 갖는 다른 측위 소스보다 더 높게 순위화될 수 있다. 따라서, 특정 장치에 대한 위치가 요청될 때, 최고 순위의 가용 측위 소스 또는 측위 소스들의 조합을 선택하여 장치의 위치를 결정할 수 있다.
적어도 일부 실시예에서, 상이한 측위 소스를 서로에 대해 순위화하는 측위 정책이 생성될 수 있다. 측위 정책은 클라이언트 장치 상에 그리고/또는 원격 위치 관련 서비스를 통해 유지될 수 있다. 또한, 측위 정책은 클라이언트 장치에 대한 위치 결정 판단이 클라이언트 장치에서 그리고/또는 원격 서비스에서 수행되어야 하는 상황을 지정할 수 있다. 따라서, 일부 시나리오에서 클라이언트 장치의 위치는 클라이언트 장치에서 결정될 수 있고, 다른 시나리오에서 클라이언트 장치의 위치는 원격 서비스에서 결정될 수 있다.
클라이언트 장치의 위치가 다양한 상이한 시나리오에서 결정되고/되거나 요청될 수 있다. 예를 들어, 장치 위치는 장치의 현재 또는 가장 최근의 위치가 다양한 목적을 위해 유지되도록 주기적으로 결정될 수 있다. 주기적인 위치 조회가 예를 들어 사전 지정된 조회 간격에 기초하여 수행될 수 있다. 예를 들어, 본 명세서에서 설명되는 기술을 이용하여, 장치의 위치를 주기적으로, 예로서 5초마다, 30초마다, 기타 등등으로 결정할 수 있다. 따라서, 클라이언트 장치의 현재 또는 가장 최근의 위치가 다양한 목적을 위해 요청될 경우에 위치는 선행적으로 유지될 수 있다.
추가로 또는 대안으로서, 클라이언트 장치의 위치는 특정 요청에 응답하여 결정될 수 있다. 예를 들어, 클라이언트 장치의 위치가 비상 지원에 대한 요청의 일부로서 요청되는 시나리오를 고려한다. 예를 들어, 이동 장치의 사용자가 비상 상황을 만나고, 이동 장치를 이용하여 비상 지원을 요청하는 음성 호출을 개시하는 것을 고려한다. 예를 들어, 사용자는 이동 장치 상의 통신 애플리케이션(예로서, VoIP(Voice over Internet Protocol) 클라이언트)을 이용하여 호출을 개시할 수 있다. 비상 호출에 응답하여, 이동 장치의 위치에 대한 요청이 자동으로 생성된다. 예를 들어, 요청은 통신 애플리케이션, 통신 서비스(예로서, VoIP 서비스), 원격 측위 서비스 등에 의해 생성된다.
요청에 응답하여, 이동 장치에 대한 가용 측위 소스가 식별된다. 예를 들어, 신호를 갖는 다수의 GPS 위성, 다수의 셀룰러 기지국, 측위 서비스(예로서, LIS), 광대역 네트워크(예로서, 무선 및/또는 유선) 등이 결정될 수 있다. 가용 측위 소스는 이동 장치에 대한 측위 정책과 비교된다. 측위 정책은 예를 들어 이동 장치 및/또는 이동 장치와 통신하는 원격 서비스에 의해 적용될 수 있다. 측위 정책은 특히 상이한 타입의 측위 소스 및/또는 측위 소스의 조합의 순위를 지정한다. 따라서, 가용 측위 소스를 측위 정책과 비교하여, 이용 가능한 최고 순위 측위 소스 및/또는 측위 소스의 조합을 선택한다. 선택된 측위 소스(들)로부터의 포지션 정보를 검색하여, 이동 장치의 위치를 결정한다.
이동 장치의 위치는 비상 지원을 제공할 비상 서비스를 찾는 데 사용된다. 예를 들어, 이동 장치의 위치에 가장 가까운 비상 센터(예로서, 비상 서비스, 비상 디스패처 등)가 식별될 수 있다. 식별된 비상 센터는 비상 상황을 통지받고, 이동 장치의 위치를 제공받는다. 따라서, 비상 센터는 비상 서비스를 위치에 제공 및/또는 파견하여 비상 지원을 제공할 수 있다.
본 명세서에서 설명되는 기술은 다양한 상이한 시나리오에서 그리고 다양한 상이한 목적을 위해 장치 위치를 결정하는 데 이용될 수 있다. 예를 들어, 장치 위치는 비상 서비스를 찾고 라우팅하기 위해, 장치의 사용자에 대한 존재 및/또는 위치 정보를 공표하기 위해, 호출 라우팅, 사용자 추적, 로컬 기업 서비스의 위치 결정 등을 최적화하기 위해 결정될 수 있다. 이러한 시나리오는 예시의 목적을 위해 제공될 뿐이며, 장치 위치는 다양한 다른 목적을 위해 그리고 본 명세서에서 구체적으로 설명되지 않는 다양한 다른 시나리오에서 결정될 수 있다.
아래의 설명에서는, 본 명세서에서 설명되는 기술을 이용하도록 동작 가능한 예시적인 환경이 먼저 설명된다. 이어서, "측위 소스 선호"라는 제목의 섹션이 하나 이상의 실시예에 따른 측위 소스의 선호 및 순위를 지정하기 위한 일부 예시적인 방법을 설명한다. 이후, "예시적인 절차"라는 제목의 섹션이 하나 이상의 실시예에 따른 일부 예시적인 절차를 설명한다. 마지막으로, "예시적인 시스템 및 장치"라는 제목의 섹션이 하나 이상의 실시예에 따른, 본 명세서에서 설명되는 기술을 이용하도록 동작 가능한 예시적인 시스템 및 장치를 설명한다.
하나 이상의 실시예에 따른 예시적인 구현의 개요를 제공하였으며, 이제 예시적인 구현이 이용될 수 있는 예시적인 환경을 고찰한다.
예시적인 환경
도 1은 본 명세서에서 설명되는 장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술을 이용하도록 동작 가능한 예시적인 구현 환경(100)의 예시이다. 환경(100)은 상이한 형태의 통신을 가능하게 하기 위해 데이터를 교환, 처리 및/또는 라우팅하는 상이한 접속된 컴포넌트를 나타내는 통신 네트워크(102)를 포함한다. 네트워크(102)의 예는 로컬 액세스 네트워크(LAN), 광역 네트워크(WAN), 인터넷 등을 포함한다.
네트워크(102)를 통해 통신하도록 구성되는 최종 사용자 장치를 나타내는 클라이언트 단말기(104)가 네트워크(102)에 접속된다. 클라이언트 단말기(104)는 전통적인 컴퓨터(예로서, 데스크탑 개인용 컴퓨터, 랩탑 컴퓨터 등), 이동국, 엔터테인먼트 설비, 스마트폰, 넷북, 게임 콘솔, 핸드헬드 장치(예로서, 태블릿) 등과 같이 다양한 방식으로 구성될 수 있다.
클라이언트 단말기(104)는 클라이언트 단말기(104)를 통해 상이한 형태의 통신을 가능하게 하기 위한 기능을 나타내는 통신 애플리케이션(106)을 포함한다. 통신 애플리케이션(106)의 예는 음성 통신 애플리케이션(예로서, VoIP 클라이언트), 비디오 통신 애플리케이션, 메시징 애플리케이션, 콘텐츠 공유 애플리케이션 및 이들의 조합을 포함한다. 예를 들어, 통신 애플리케이션(106)은 다양한 통신 시나리오를 제공하기 위해 상이한 통신 양식의 조합을 가능하게 한다. 적어도 일부 실시예에서, 통신 애플리케이션(106)은 클라이언트 단말기(104) 상에 설치되는 애플리케이션을 나타낸다. 추가로 또는 대안으로서, 통신 애플리케이션(106)은 웹 브라우저, 웹 애플리케이션 등을 통해 액세스되는 것과 같은 원격 애플리케이션으로서 전부 또는 일부 구현될 수 있다.
다양한 실시예에 따르면, 통신 애플리케이션(106)은 통신 서비스(108)와의 상호작용을 통해 다양한 타입의 통신을 가능하게 하도록 구성된다. 통신 서비스(108)는 클라이언트 단말기(104)와 다른 엔티티, 예로서 다른 클라이언트 단말기 사이의 통신의 관리를 위한 다양한 작업을 수행하기 위한 서비스를 나타낸다. 통신 서비스(108)는 예를 들어 클라이언트 단말기(104)에 대한 통신 세션의 개시, 조절 및 종료를 관리할 수 있다. 통신 서비스(108)의 예는 VoIP 서비스, 온라인 회의 서비스, 통합 통신 및 협력(UC&C) 서비스 등을 포함한다. 적어도 일부 실시예에서, 통신 서비스(108)는 클라이언트 단말기(104)와 다른 장치 사이의 음성 통신을 가능하게 하기 위해 공중 교환 전화망("PSTN")과 통신하는 사설 교환기(PBX)로서 구현되거나 그에 접속될 수 있다.
클라이언트 단말기(104)는 측위 하드웨어(110) 및 클라이언트 측위 모듈(112)을 더 포함한다. 측위 하드웨어(110)는 위치 정보를 수신, 송신 및/또는 처리하기 위한 다양한 타입의 하드웨어를 나타낸다. 측위 하드웨어(110)는 예를 들어 GPS, 셀룰러 통신, WiFi(상표), 위성 통신, 무선 주파수(RF) 통신 등과 같은 다양한 상이한 기술에 따라 포지션 정보의 송신, 수신 및 처리를 지원한다.
클라이언트 측위 모듈(112)은 본 명세서에서 설명되는 장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술의 다양한 양태를 수행하기 위한 기능을 나타낸다. 예를 들어, 클라이언트 측위 모듈(112)은 측위 하드웨어(110)로부터 위치 정보를 수신하고, 위치 정보를 다양한 방식으로 처리하여 클라이언트 단말기(104)의 위치를 결정할 수 있다. 적어도 일부 실시예에서, 클라이언트 측위 모듈(112)은 또한 운영 체제, 위치 관련 플러그인 모듈, 위치 제공자 서비스 등과 같은 다른 소프트웨어 기능으로부터 위치 정보를 수신할 수 있다. 예를 들어, 클라이언트 단말기(104)에 대한 운영 체제는 클라이언트 단말기(104)의 근사 위치를 결정하기 위해 클라이언트 측위 모듈(112)에 의해 이용될 수 있는 서브넷, 이더넷 스위치 및/또는 포트 정보 등을 제공할 수 있다. 클라이언트 측위 모듈(112)은 또한 클라이언트 단말기(104)의 위치를 결정하기 위한 처리를 위해 위치 정보가 클라이언트 단말기(104)로부터 원격 자원으로 전송되게 할 수 있다.
다양한 실시예에 따르면, 측위 하드웨어(110)는 포지션 정보 기반구조(114)와 통신하여, 클라이언트 단말기(104)에 대한 포지션 정보를 획득할 수 있다. 포지션 정보 기반구조(114)는 포지션 정보를 송신 및/또는 수신할 수 있는 다양한 타입의 포지션 정보 시스템을 나타낸다. 포지션 정보 기반구조(114)의 예는 GPS 위성, 셀룰러 전화망, 무선 데이터(예로서, WiFi(상표)) 네트워크, 무선 주파수 식별(RFID) 기능 등을 포함한다. 포지션 정보는 예를 들어 클라이언트 단말기(104)의 위치의 결정을 가능하게 하기 위해 측위 하드웨어(110)와 포지션 정보 기반구조(114) 사이에서 통신될 수 있다. 포지션 정보의 예는 GPS 좌표, 거리 주소, 네트워크 위치, 셀 타워 및/또는 셀 타워 세트와 관련된 위치 등을 포함한다.
환경(100)은 측위 서비스(116) 및 비상 서비스(118)도 포함한다. 측위 서비스(116)는 다양한 위치 결정 작업을 수행하기 위한 기능을 나타낸다. 예를 들어, 측위 서비스(116)는 클라이언트 단말기(104)에 대해 원격지에 있고 네트워크(102)를 통해 클라이언트 단말기(104)와 통신할 수 있는 하드웨어 및 로직(예로서, 서버)을 포함한다. 측위 서비스(116)는 예를 들어 클라이언트 단말기(104)로부터 위치 정보를 수신하고, 위치 정보를 처리하여, 클라이언트 단말기(104)의 위치를 결정할 수 있다. 측위 서비스(116)의 예시적인 구현은 위치 정보 서비스(LIS)를 포함한다. 측위 서비스(116)는 본 명세서에서 설명되는 장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술의 다양한 양태를 수행하기 위한 기능을 나타내는 측위 서비스 모듈(120)을 포함한다.
적어도 일부 실시예에서, 측위 서비스(116)는 통신 서비스(108)에 의해 그리고/또는 그의 일부로서 구현될 수 있다. 대안으로서, 측위 서비스(116)는 독립 서비스로서 구현될 수 있다.
비상 서비스(118)는 비상 지원을 파견 및/또는 제공하는 다양한 엔티티를 나타낸다. 비상 서비스(118)의 예는 비상 서비스 운영자(예로서, 911 운영자), 법 시행, 비상 의료 서비스, 소방 서비스 등을 포함한다.
본 명세서에서 설명되는 장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술의 예시적인 구현으로서, 클라이언트 단말기(104)가 스마트폰과 같은 이동 장치인 것을 고려한다. 클라이언트 단말기(104)를 소유하는 사용자가 자동차 사고와 같은 비상 상황에 연루된다. 사용자는 통신 애플리케이션(106) 및/또는 통신 서비스(108)를 통해 음성 호출을 개시하여 비상 지원을 요청한다.
비상 지원에 대한 요청에 응답하여, 통신 애플리케이션(106)은 클라이언트 단말기(104)의 위치에 대한 요청을 개시한다. 그에 응답하여, 포지션 정보(예로서, GPS 좌표)가 포지션 정보 기반구조(114)를 통해 클라이언트 단말기(104)에 의해 검색된다. 본 명세서에서 설명되는 장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술의 양태를 이용하여 클라이언트 단말기(104)의 위치를 결정하기 위해, 클라이언트 측위 모듈(112) 및/또는 측위 서비스 모듈(120)의 기능을 이용하여 포지션 정보를 처리한다. 사용자의 위치에 기초하여, 적절한 비상 서비스(118)가 식별된다. 예를 들어, 사용자의 위치에 가장 가까운 비상 서비스(118)(예로서, 비상 파견 센터)가 식별될 수 있다. 적절한(예를 들어, 가장 가까운) 비상 서비스가 식별되면, 식별된 비상 서비스(118)는 비상 상황 및 사용자의 위치를 통지받는다. 따라서, 비상 서비스(118)는 사용자 및/또는 사용자의 위치의 다른 사람에게 비상 지원을 제공하기 위해 사용자의 위치로 파견된다.
비상 지원에 대한 요청에 응답하여 클라이언트 단말기(104)의 위치를 결정하는 것에 대한 대안으로서 또는 그에 더하여, 위치는 요청 전에 사전 결정될 수 있다. 전술한 바와 같이, 예를 들어, 클라이언트 단말기(104) 및/또는 측위 서비스(116)는 주기적으로 그리고/또는 가끔 클라이언트 단말기(104)의 위치를 갱신할 수 있다. 따라서, 클라이언트 단말기(104)의 현재 및/또는 가장 최근의 위치가 일관성 있게 유지되고 이용 가능할 수 있다. 따라서, 위치가 특정 목적(예로서, 비상 지원)을 위해 요청되는 경우, 추가적인 위치 결정 절차의 수행 없이 사전 결정된 위치가 제공될 수 있다.
환경(100)의 상이한 엔티티에 관한 다양한 다른 기능 및 구현 상세가 아래에서 설명된다.
본 명세서에서 설명되는 기술이 동작할 수 있는 예시적인 환경을 설명하였으며, 이제 하나 이상의 실시예에 따른 장치 위치를 결정하기 위한 측위 소스 순위화를 위한 일부 예시적인 구현 시나리오를 고찰한다.
측위 소스 선호
다양한 실시예에 따르면, 측위 소스에 대한 선호를 지정하기 위한 측위 정책이 정의될 수 있다. 일반적으로, 측위 소스는 포지션 정보의 특정 소스 또는 소스들의 조합을 지칭한다. 예를 들어, 특정 측위 정책은 상이한 측위 소스를 선호의 순서로 순위화할 수 있다. 예를 들어, 선호는 상이한 위치 정보 소스의 상대 정확도에 기초할 수 있다. 위치 정보가 요청되는 주어진 시나리오에서, 가용 측위 소스를 정책 순위와 비교하여 어느 소스 또는 소스들의 조합을 위치 정보를 확인하는 데 사용할지를 결정할 수 있다.
일례로서, 다양한 측위 소스를 선호의 내림차순으로 순위화하는 아래의 측위 소스 정책을 고려한다. 적어도 일부 실시예에서, 정책은 (예로서, 클라이언트 단말기(104)에 대한) 클라이언트측 정책 및/또는 예를 들어 측위 서비스(116)에 대한 서버측 정책을 나타낸다. 예를 들어, 정책은 통신 애플리케이션(106), 클라이언트 측위 모듈(112) 및 측위 서비스 모듈(120)에 의해 유지될 수 있다. 이러한 정책은 예시의 목적을 위해 제공될 뿐이며, 다양한 상이한 정책 및 순위화가 다양한 실시예에 따라 이용될 수 있다.
(1) GPS/지원형 GPS(A-GPS): 4개 위성. 이러한 측위 소스는 일반적으로 4개의 GPS 위성으로부터 수신되는 신호를 지칭하며, 높은 정확도를 갖는 것으로 간주되고, 따라서 선호된다.
(2) 3개의 동일하게 가중된 측위 소스:
a. 셀룰러: 서로 분리된 3개의 셀룰러 기지국. 이러한 측위 소스는 일반적으로, 기지국의 포지션이 구별될 수 있도록 기지국 사이에 충분한 각도 구별이 존재하는 셀룰러 네트워크 내의 3개 이상의 기지국(예로서, 타워)으로부터 수신되는 신호를 지칭한다.
b. 광대역 신호 소스: 클라이언트 장치에 인터넷 접속을 제공하는 인터넷 서비스 제공자(ISP)와 같은 상용 인터넷 신호 소스. 예를 들어, 이러한 측위 소스는 WiFi(상표) 및/또는 다른 무선 데이터 소스를 포함할 수 있다.
c. 기업 네트워크: 클라이언트 장치가 접속되는 기업(예로서, 작업장) 네트워크.
(3) GPS/지원형 GPS(A-GPS): 3개의 위성. 이러한 측위 소스는 일반적으로 3개의 GPS 위성으로부터 수신되는 신호를 지칭한다.
(4) 셀룰러: 기지국의 포지션이 구별될 수 있도록 기지국 사이에 충분한 각도 구별을 갖지 않는 3개 미만의 기지국 또는 3개 이상의 기지국.
(5) 공개 측위 서비스: 예를 들어 사용자 계정 및/또는 인증을 요구하지 않고서 임의의 요청 장치에 의해 공개적으로 액세스될 수 있는 측위 서비스.
(6) 사용자 제공 위치: 주소, GPS 좌표 등과 같은 위치 정보의 사용자 입력.
(7) GPS/A-GPS: 2개의 위성.
이러한 예시적인 측위 소스 및 순위화는 예시의 목적을 위해 제공될 뿐이며, 다양한 다른 측위 소스 및/또는 측위 소스 순위화/가중화가 하나 이상의 실시예에 따라 이용될 수 있다. 예를 들어, 측위 소스의 순위화는 가용 측위 소스의 속성에 기초하여 변할 수 있다. 측위 소스 순위화는 또한 맞춤화된 측위 소스 순위화를 제공하도록 사용자 및/또는 관리자에 의해 구성될 수 있다.
적어도 일부 실시예에서, 측위 소스들을 조합하여, 위치 결정의 정확도를 개선할 수 있다. 예를 들어, 클라이언트 장치의 지리 위치를 더 높은 정확도로 확인하기 위해 클라이언트 장치에 대한 GPS 판독이 셀룰러 삼각 측량 데이터와 결합될 수 있다. 예를 들어, 아래의 예시적인 시나리오를 고려한다.
도 2는 예시적인 구현 시나리오(200)를 나타낸다. 시나리오(200)는 전술한 클라이언트 단말기(104)의 일 구현을 나타내는 클라이언트 단말기(202)를 포함한다. 시나리오(200)와 관련하여, 비상 지원에 대한 요청의 일부와 같은 클라이언트 단말기(202)의 위치에 대한 요청이 수신된다. 예를 들어, 요청은 통신 애플리케이션(106)을 이용하여 행해지는 비상 또는 다른 타입의 호출의 일부로서 통신 애플리케이션(106)에 의해 생성될 수 있다.
요청에 응답하여, 클라이언트 단말기(202)에 대한 셀룰러 삼각 측량 정보가 수집된다. 셀룰러 삼각 측량 정보는 삼각 측량과 관련된 에러의 마진을 포함하는 클라이언트 단말기에 대한 근사 지리 위치를 나타내는 삼각 측량 근사화 구역(204)을 제공한다. 따라서, 삼각 측량 근사화 구역(204)은 클라이언트 단말기(202)로부터 다수의 셀룰러 기지국에서 수신되는 신호에 기초한다.
시나리오(200)와 관련하여, 클라이언트 단말기(202)에 대한 GPS 데이터를 이용하여 GPS 근사화 구역(206)을 생성한다. 다양한 실시예에 따르면, GPS 근사화 구역(206)은 클라이언트 단말기(202)의 지리 위치의 근사화를 나타낸다. 따라서, 삼각 측량 근사화 구역(204) 및 GPS 근사화 구역(206)은 클라이언트 단말기(202)가 특정 시간에 위치하는 것으로 결정되는 분명한 지리 구역을 나타낸다. 적어도 일부 실시예에서, 삼각 측량 근사화 구역(204) 및 GPS 근사화 구역(206)은 동시에 그리고/또는 서로 특정 기간, 예로서 2초 이상 내에 캡처된다.
예시된 바와 같이, 삼각 측량 근사화 구역(204) 및 GPS 근사화 구역(206)은 2개의 측정 기술 간의 차이를 반영하는 중첩 영역(208) 및 비중첩 영역(210)을 포함한다. 하나 이상의 실시예에 따르면, 중첩 영역(208)은 삼각 측량 근사화 구역(204) 및 GPS 근사화 구역(206)이 중첩되는 지리 영역을 나타내는 타겟 구역(212)으로서 지정된다. 타겟 구역(212)은 예를 들어 삼각 측량 근사화 구역(204) 및 GPS 근사화 구역(206) 양자에 공통인 지리 좌표를 나타낸다.
적어도 일부 실시예에서, 타겟 구역(212)은 삼각 측량 근사화 구역(204) 또는 GPS 근사화 구역(206) 단독보다 클라이언트 단말기(202)의 위치의 더 정확한 근사화인 것으로 간주된다. 따라서, 타겟 구역(212)은 클라이언트 단말기(202)의 정확한 위치를 지정하는 데 사용된다.
따라서, 시나리오(200)는 클라이언트 장치의 위치의 집중 근사화를 제공하기 위해 다수의 측위 소스가 조합될 수 있는 예시적인 구현을 나타낸다. 시나리오(200)는 GPS 및 셀룰러 삼각 측량을 이용하지만, 임의의 적절한 타입의 측위 소스를 조합하여 클라이언트 장치의 위치를 결정할 수 있다는 것을 알아야 한다. 실시예는 2개보다 많은 측위 소스, 예로서 3개 이상의 상이한 측위 소스에 대한 중첩 구역을 결합할 수도 있다.
적어도 일부 실시예에서, 측위 정책은 소스들의 조합을 측위 소스의 순위로 통합할 수 있다. 예를 들어, 측위 소스를 선호의 내림차순으로 순위화하는 아래의 측위 정책을 고려한다.
(1) GPS와 셀룰러의 결합
(2) GPS 단독
(3) 광대역 소스와 셀룰러의 결합
(4) 사용자 제공 위치와 셀룰러의 결합
(5) 셀룰러 삼각 측량 단독
이러한 소스와 순위화의 결합의 그룹은 측위 소스들의 조합이 선호의 순서로 순위화될 수 있다는 것을 예시하기 위해 제공될 뿐이다. 또한, 측위 소스들의 조합이 개별 소스와 관련하여 순위화될 수 있다.
측위 소스 선호의 일부 예시적인 구현을 설명하였으며, 이제 하나 이상의 실시예에 따른 일부 예시적인 절차의 설명을 고찰한다.
예시적인 절차
아래의 설명은 하나 이상의 실시예에 따른 장치 위치를 결정하기 위한 측위 소스 순위화를 위한 일부 예시적인 절차를 설명한다. 예시적인 절차는 도 1의 환경(100), 도 10의 시스템(1000) 및/또는 임의의 다른 적절한 환경에서 이용될 수 있다. 적어도 일부 실시예에서, 다양한 절차에 대해 설명되는 단계는 자동으로 그리고 사용자 상호작용과 무관하게 구현될 수 있다. 또한, 절차의 다양한 단계는 클라이언트에 의해, 예를 들어 클라이언트 단말기의 통신 애플리케이션(106)을 통해 수행될 수 있다. 추가로 또는 대안으로서, 단계는 서버측에서, 예로서 측위 서비스(116)에 의해 수행될 수 있다.
도 3은 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다. 단계 300은 클라이언트 장치의 위치에 대한 요청을 수신한다. 위치 요청은 다양한 상이한 시나리오에 따라 수신될 수 있다. 예를 들어, 위치 요청은 주기적으로 생성될 수 있으며, 따라서 클라이언트 장치의 현재 또는 가장 최근의 위치가 클라이언트 장치 및/또는 클라이언트 장치로부터 떨어진 측위 서비스에 의해 유지될 수 있다. 사용자는 또한 예를 들어 클라이언트 장치에 대한 입력, 상이한 컴퓨팅 장치에 대한 입력 등을 통해 클라이언트 장치의 위치를 명확하게 요청할 수 있다.
클라이언트 장치의 위치에 대한 요청은 다양한 상이한 엔티티에 의해 요청될 수 있다. 예를 들어, 클라이언트 장치는 예를 들어 상이한 장치 또는 서비스로부터의 조회와 관계없이 그 자신의 위치를 요청할 수 있다. 원격 장치 및/또는 서비스도 예를 들어 클라이언트 장치로부터의 조회와 관계없이 클라이언트 장치의 위치를 요청할 수 있다.
클라이언트 장치의 위치는 특정 이벤트에 응답하여 요청될 수도 있다. 예를 들어, 요청은 클라이언트 장치의 사용자로부터의 비상 지원에 대한 요청에 응답하여 이루어질 수 있다. 예를 들어, 환경(100)을 참조하면, 클라이언트 단말기(104)(예로서, 통신 애플리케이션(106)) 및/또는 측위 서비스(116)가 요청을 생성할 수 있다. 예를 들어, 요청은 비상 지원을 요청하는 호출과 같이 통신 애플리케이션에 의해 관리되는 음성 호출의 일부로서 통신 애플리케이션(106)에 의해 생성될 수 있다.
단계 302는 클라이언트 장치에 대한 가용 측위 소스를 식별한다. 예를 들어, 상이한 포지션 정보 시스템으로부터의 신호, 예로서 GPS 신호, 셀룰러 기지국으로부터의 신호 및/또는 전술한 것과 같은 다양한 다른 측위 소스로부터의 신호가 식별될 수 있다. 다른 포지션 정보 시스템의 예는 네트워크 접속 데이터를 이용하는 시스템 및/또는 기능을 포함한다. 예를 들어, 서브넷 데이터, 무선 데이터 스위치 및/또는 포트 정보, WiFi(상표) 기반구조 데이터 등이 다른 포지션 정보 시스템으로부터의 포지션 정보에 더하여 그리고/또는 그에 대한 대안으로서 이용될 수 있다.
단계 304는 각각의 측위 소스의 순위에 기초하여 가용 측위 소스로부터 측위 소스를 선택한다. 예를 들어, 가용 측위 소스가 측위 정책과 비교될 수 있고, 최고 순위 소스(들)가 선택될 수 있다. 개별 소스 및/또는 가용 측위 소스들의 조합이 선택될 수 있다. 측위 소스의 선택에 관한 추가 상세는 위에서 그리고 아래에서 제공된다.
단계 306은 선택된 측위 소스를 이용하여 클라이언트 장치의 위치를 결정한다. 예를 들어, 선택된 측위 소스 및/또는 선택된 측위 소스들의 조합으로부터의 포지션 측정이 검색될 수 있다. 포지션 측정은 거리 주소, 지리 좌표 세트 등과 같은 지리 위치와 상관될 수 있다.
단계 308은 클라이언트 장치의 위치를 제공한다. 예를 들어, 위치는 위치를 요청한 엔티티에 제공될 수 있다. 예를 들어, 비상 호출 상황에서, 가장 가까운 비상 서비스가 클라이언트 장치의 위치를 이용하여 식별될 수 있다. 식별된 비상 서비스가 장치의 위치를 통지받아서, 비상 서비스가 비상 지원을 올바른 위치로 보내도록 할 수 있다.
다양한 실시예에 따르면, 어느 측위 서비스를 이용하여 클라이언트 장치의 위치를 결정할지에 관한 결정은 클라이언트 장치에서 그리고/또는 원격 위치에서 행해질 수 있다. 예를 들어, 아래의 예시적인 절차를 고려한다.
도 4는 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다. 단계 400은 클라이언트 장치를 통해 또는 원격 서비스를 통해 클라이언트 장치의 위치를 결정할지를 확인한다. 예를 들어, 단계 400은 클라이언트 장치의 위치에 대한 요청에 응답하여, 예로서 도 3을 참조하여 설명된 단계 300에 응답하여 수행될 수 있다.
다양한 실시예에 따르면, 측위 정책은 클라이언트 장치에 대한 위치가 언제 클라이언트 장치에서 결정되어야 하는지 그리고 위치가 언제 원격 서비스, 예로서 전술한 측위 서비스(116)를 통해 결정되어야 하는지를 지정하도록 구성될 수 있다. 예를 들어, 측위 정책은 측위 서비스가 위치를 결정해야 하는 것으로 지정할 수 있다. 따라서, 클라이언트 장치는 클라이언트 장치에 의해 확인된 포지션 정보를 측위 서비스로 전송하여, 클라이언트 장치의 위치를 결정하기 위해 처리되게 할 수 있다.
다른 예로서, 측위 정책은 클라이언트 자원이 지정된 임계치 아래인 경우에 클라이언트의 위치가 측위 서비스에 의해 결정되어야 하는 것으로 지정할 수 있다. 그러한 자원의 예는 배터리 충전 레벨, 메모리 자원, 프로세서 자원 등을 포함한다. 따라서, 적어도 일부 실시예에서, 클라이언트 자원이 임계치를 초과하는 경우, 위치 결정은 클라이언트에서 발생할 수 있다. 그렇지 않은 경우, 위치 결정은 원격 측위 서비스를 통해 수행될 수 있다.
또 다른 예로서, 측위 정책은 클라이언트 장치가 (예로서, 무선 대역폭에 대해) 통신 대역폭 제한을 갖는 경우에 포지션 정보를 처리를 위해 원격 서비스로 전송하는 대신에 위치 결정이 클라이언트 장치에서 발생해야 하는 것으로 지정할 수 있다.
적어도 일부 실시예에서, 측위 정책은 위치 결정이 클라이언트 장치 및/또는 원격 서비스에서 발생해야 할지를 지정하도록 사용자 및/또는 관리자에 의해 구성될 수 있다. 또한, 측위 정책은 위치 결정 논리 중 일부 부분이 클라이언트 장치에서 수행되고, 다른 부분이 원격 서비스에서 수행되어야 하는 것으로 지정할 수 있다.
위치가 클라이언트 장치("클라이언트")에서 결정되어야 하는 경우, 단계 402는 클라이언트 장치에서 위치를 결정한다. 예를 들어, 도 3을 참조하여 설명된 절차가 클라이언트 장치에서 수행될 수 있다.
위치가 원격 서비스("원격 서비스")에서 결정되어야 하는 경우, 단계 404는 원격 서비스를 통해 위치를 결정한다. 예를 들어, 도 3을 참조하여 설명된 절차가 원격 서비스에서 수행될 수 있다. 적어도 일부 실시예에서, 클라이언트 장치는 포지션 정보를 원격 서비스에 제공하며, 원격 서비스는 포지션 정보를 처리하여 클라이언트 장치의 위치를 확인한다.
하나 이상의 실시예에 따르면, 위치 결정은 클라이언트 장치 및 원격 서비스 양자에서 발생할 수 있다. 예를 들어, 아래의 절차를 고려한다.
도 5는 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다. 단계 500은 클라이언트 장치에서 가용 측위 소스를 식별한다. 예를 들어, 클라이언트 장치는 현재 이용 가능한 측위 소스의 타입 및 속성을 식별할 수 있다. 예를 들어, 클라이언트 장치는 클라이언트 장치가 현재 신호를 수신하고 있는 위성(예로서, GPS 위성)의 수, 상이한 포지션 정보 시스템(예로서, 위성으로부터의 신호, 클라이언트 장치와 셀룰러 기지국 사이의 신호, WiFi(상표) 기지국으로부터의 신호 등)의 신호 강도, 상이한 포지션 정보 시스템으로부터의 신호에 대한 신호 대 잡음(S/N) 비율 등을 식별할 수 있다.
단계 502는 가용 측위 소스의 속성을 원격 서비스로 전송한다. 예를 들어, 환경(100)을 참조하면, 클라이언트 단말기(104)는 (예로서, 포지션 정보 기반구조(114)로부터) 가용 측위 소스의 타입 및 속성을 측위 서비스(116)로 전송할 수 있다. 그러한 타입 및 속성의 예는 위에서 설명되었다.
단계 504는 원격 서비스에서 가용 측위 소스 중 어느 것을 이용하여 클라이언트 장치의 위치를 결정할지를 결정한다. 예를 들어, 원격 서비스는 가용 측위 소스의 타입 및 속성을 상이한 측위 소스의 순위를 지정하는 측위 정책과 비교할 수 있다. 최고 순위 측위 소스(들)가 선택될 수 있다.
적어도 일부 실시예에서, 특정 측위 소스의 품질(예로서, 신호 품질)을 고려하여, 클라이언트 장치의 위치를 결정하기 위해 측위 소스로부터의 포지션 정보를 사용할지를 결정할 수 있다. 예를 들어, 측위 소스에 대한 신호 강도 및/또는 S/N 비율이 신호 강도 임계치 아래로 떨어지는 경우, 측위 소스는 순위가 강등되고/되거나, 어느 측위 소스를 사용할지를 결정함에 있어서 무시될 수 있다.
단계 506은 클라이언트 장치의 위치를 결정하기 위해 어느 측위 소스를 사용할지를 식별하는 통지를 클라이언트 장치로 전송한다. 예를 들어, 원격 서비스는 어느 측위 소스를 사용할지를 식별하는 통지를 클라이언트 장치로 전송할 수 있다.
단계 508은 클라이언트 장치에서, 식별된 측위 소스를 이용하여 클라이언트 장치의 위치를 결정한다. 예를 들어, 클라이언트 장치는 식별된 측위 소스(들)로부터 포지션 정보를 검색하고, 포지션 정보를 이용하여 클라이언트 장치의 위치를 확인할 수 있다.
따라서, 적어도 일부 실시예에서, 어느 측위 소스(들)를 이용할지에 대한 결정은 원격 서비스에서 발생할 수 있다. 선택된 측위 소스로부터의 포지션 정보를 처리하고 클라이언트 장치 위치를 결정하기 위한 논리가 클라이언트 장치에서 실행될 수 있다. 대안으로서, 클라이언트 장치는 측위 소스를 선택할 수 있고, 측위 소스로부터의 포지션 정보를 원격 서비스로 전송할 수 있다. 원격 서비스는 포지션 정보를 처리하여, 클라이언트 장치의 위치를 결정할 수 있다.
도 6은 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다. 단계 600은 클라이언트 장치에서 클라이언트 장치의 위치를 결정한다. 예를 들어, 하나 이상의 측위 소스로부터의 포지션 정보를 이용하여 클라이언트 장치의 위치를 결정한다. 측위 소스는 클라이언트 장치 및/또는 원격 서비스에서 적용되는 측위 정책에 기초하여 선택될 수 있다.
단계 602는 클라이언트 장치의 클라이언트 결정 위치를 원격 서비스에 통지한다. 예를 들어, 클라이언트 장치는 거리 주소, GPS 좌표 등과 같은 클라이언트 결정 위치에 대한 정보를 전송할 수 있다. 클라이언트 장치는 하나 이상의 측위 소스로부터 확인된 클라이언트 장치에 대한 원본 포지션 정보도 전송할 수 있다.
단계 604는 원격 서비스에서 클라이언트 장치의 서비스 결정 위치를 확인한다. 예를 들어, 원격 서비스는 클라이언트 장치 및/또는 다른 자원으로부터 수신된 원본 포지션 정보를 처리하여 클라이언트 장치의 위치를 결정할 수 있다. 원본 포지션 정보의 예는 GPS 좌표, 서브넷 정보, 이더넷 스위치 및/또는 포트 데이터, WiFi(상표) 정보(예로서, 접속된 무선 네트워크에 대한 기본 서비스 세트 식별자(BSSID)) 등을 포함한다. 따라서, 다양한 타입의 포지션 정보 및/또는 이들의 조합을 이용하여 클라이언트 장치의 위치를 결정할 수 있다.
단계 606은 클라이언트 결정 위치 및 서비스 결정 위치에 기초하여 클라이언트 장치의 위치를 계산한다. 예를 들어, 클라이언트 결정 위치 및 서비스 결정 위치가 오버레이될 수 있고, 클라이언트 결정 위치와 서비스 결정 위치의 중첩 영역이 클라이언트 장치의 위치인 것으로 결정될 수 있다. 적어도 일부 실시예에서, 클라이언트 결정 위치는 제1 측위 소스 및/또는 측위 소스들의 조합(예로서, GPS, 사용자 지정 위치 등)에 기초할 수 있고, 서비스 결정 위치는 제2의 상이한 측위 소스 및/또는 측위 소스들의 조합, 예로서 셀룰러 삼각 측량, LIS로부터의 정보 등에 기초할 수 있다.
단계 608은 클라이언트 장치의 위치를 제공한다. 예를 들어, 위치는 원격 서비스에 의해 클라이언트 장치 자체에 그리고/또는 다른 요청 엔티티에 제공될 수 있다. 적어도 일부 실시예에서, 원격 서비스에 의해 제공된 위치는 클라이언트 장치에 의해 결정된 위치를 무효화하고/하거나 그보다 우선권을 가질 수 있다.
적어도 일부 실시예에서, 다수의 측위 소스를 결합하여 클라이언트 장치의 전체 위치를 결정할 수 있다. 예를 들어, 아래의 예시적인 절차를 고려한다.
도 7은 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다. 단계 700은 제1 측위 소스를 이용하여 클라이언트 장치의 제1 위치를 결정한다. 다른 측위 소스의 예는 위에서 설명되었다.
단계 702는 제2의 상이한 측위 소스를 이용하여 클라이언트 장치의 제2 위치를 결정한다. 도 2를 참조하여 전술한 바와 같이, 제1 위치 및 제2 위치는 일부 중첩 부분 및 일부 비중첩 부분을 포함할 수 있다.
단계 704는 제1 위치 및 제2 위치에 기초하여 클라이언트 장치의 타겟 위치를 계산한다. 예를 들어, 제1 위치와 제2 위치의 중첩 부분이 클라이언트 장치의 타겟 위치로서 식별될 수 있다. 전술한 바와 같이, 타겟 부분은 제1 위치와 제2 위치 사이의 공통 지리 좌표, 제1 위치와 제2 위치 사이의 공통 거리 주소 등에 대응할 수 있다. 따라서, 적어도 일부 실시예에서, 타겟 위치는 제1 위치 또는 제2 위치 각각 보다 클라이언트 장치의 더 정확한 위치인 것으로 간주될 수 있다.
하나 이상의 실시예에 따르면, 다수의 측위 소스를 이용하여 클라이언트 장치의 위치를 결정할 때, 다수의 측위 소스는 측위 정책에서의 그들의 순위화에 기초하여 선택될 수 있다. 예를 들어, 측위 정책 및/또는 측위 정책 그룹에서의 N개의 상위 순위의 측위 소스(여기서, N = 2, 3, ..., n)를 선택 및 결합하여, 클라이언트 장치의 전체 타겟 위치를 결정할 수 있다.
적어도 일부 실시예에서, 측위 서비스가 클라이언트 장치로부터 수신된 네트워크 정보에 기초하여 클라이언트 장치의 위치를 결정할 수 있다. 예를 들어, 아래의 예시적인 절차를 고려한다.
도 8은 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다. 단계 800은 측위 서비스에서 클라이언트 장치로부터 네트워크 정보를 수신한다. 예를 들어, 측위 서비스(116)는 클라이언트 단말기(104)로부터 다양한 타입의 네트워크 정보를 수신할 수 있다. 네트워크 정보의 예는 클라이언트 단말기(104)가 접속된 네트워크에 대한 서브넷 정보, 네트워크에 대한 이더넷 스위치 및/또는 포트 데이터, WiFi(상표) 정보(예로서, 접속된 무선 네트워크에 대한 기본 서비스 세트 식별자(BSSID)) 등을 포함한다.
단계 802는 측위 서비스에서 측위 정책을 적용하여, 클라이언트 장치로부터 수신된 네트워크 정보 중 적어도 일부를 선택한다. 예를 들어, 측위 정책은 측위 소스의 우선권, 위치 정보의 타입 등을 지정한다. 측위 정책은 예를 들어 네트워크에 대한 식별자(예로서, BSSID)에 기초하여 특정 네트워크의 우선권을 지정할 수 있다. 따라서, 특정 네트워크 및/또는 네트워크 결합을 선택하여 클라이언트 장치의 위치를 결정할 수 있다.
단계 804는 측위 서비스에서 선택 네트워크 정보를 이용하여 클라이언트 장치의 위치를 확인한다. 예를 들어, 측위 서비스는 네트워크 정보를 이용하여, 클라이언트 장치가 접속된 네트워크의 위치를 결정하고, 이를 클라이언트 장치의 위치와 상관시킨다.
단계 806은 측위 서비스에 의해 클라이언트 장치의 위치를 제공한다. 예를 들어, 측위 서비스는 클라이언트 장치의 위치를 클라이언트 장치 자체 및/또는 다른 엔티티와 같은 다양한 엔티티에 제공할 수 있다.
적어도 일부 실시예에서, 소정 시나리오에서 다수의 측위 서비스(예로서, LIS)를 고려하여, 클라이언트 장치의 위치를 결정할 수 있다. 예를 들어, 측위 정책은 예를 들어 과거의 신뢰성 및/또는 정확도에 기초하여 상이하나 측위 서비스를 순위화할 수 있다. 예를 들어, 특정 측위 서비스는 다른 측위 서비스보다 더 정확한 또는 덜 정확한 클라이언트 장치에 대한 위치를 제공한 기록을 가질 수 있다. 따라서, 적어도 일부 실시예에서, 측위 서비스는 선호의 내림차순으로 순위화될 수 있고, 더 선호되는 측위 서비스가 덜 선호되는 측위 서비스보다 높은 순위를 가질 수 있다. 예시적인 구현으로서, 아래의 예시적인 절차를 고려한다.
도 9는 하나 이상의 실시예에 따른 방법의 단계를 설명하는 흐름도이다. 단계 900은 클라이언트 장치의 위치에 대한 요청을 수신한다. 클라이언트 장치의 위치를 요청하기 위한 예시적인 구현은 위에서 설명되었다.
단계 902는 클라이언트 장치의 위치를 결정하기 위해 다수의 원격 측위 서비스가 이용 가능한 것을 확인한다. 예를 들어, 전술한 환경(100)을 참조하면, 클라이언트 단말기(104)의 위치를 결정하기 위해 다수의 측위 서비스(116)가 이용 가능할 수 있다. 예를 들어, 측위 서비스 중 적어도 일부가 네트워크 접속을 통해 클라이언트 장치에 접속될 수 있다. 대안으로서 또는 추가로, 측위 서비스 중 하나 이상이 예를 들어 클라이언트 장치에 접속된 상이한 네트워크 자원을 통해 클라이언트 장치에 대한 포지션 정보에 대한 보조 액세스를 가질 수 있다.
단계 904는 클라이언트 장치의 위치를 결정하는 데 사용될 측위 서비스를 가용 측위 서비스로부터 선택한다. 측위 서비스(들)는 측위 서비스의 선호 및/또는 순위를 지정하는 측위 정책에 기초하여 선택될 수 있다. 예를 들어, 최고 순위 측위 서비스 또는 측위 서비스 세트가 선택될 수 있다.
단계 906은 선택된 측위 서비스로부터 클라이언트 장치의 위치를 요청한다. 예를 들어, 위치는 (예로서, 통신 애플리케이션을 통해) 클라이언트 장치 자체, 비상 서비스 등과 같은 다양한 엔티티에 의해 요청될 수 있다.
단계 908은 선택된 측위 서비스로부터 클라이언트 장치의 위치를 수신한다. 예를 들어, 위치는 지리 좌표, 거리 주소 등의 세트로서 수신될 수 있다. 위치는 클라이언트 장치, 비상 서비스 등과 같은 다양한 엔티티에서 수신되고/되거나 그들로 전송될 수 있다.
일부 예시적인 절차를 설명하였으며, 이제 하나 이상의 실시예에 따른 예시적인 시스템 및 장치의 설명을 고찰한다.
예시적인 시스템 및 장치
도 10은 본 명세서에서 설명되는 다양한 기술을 구현할 수 있는 하나 이상의 컴퓨팅 시스템 및/또는 장치를 나타내는 예시적인 컴퓨팅 장치(1002)를 포함하는 일반적으로 1000에 있는 예시적인 시스템을 나타낸다. 예를 들어, 도 1을 참조하여 전술한 클라이언트 단말기(104)는 컴퓨팅 장치(1002)로서 구현될 수 있다. 컴퓨팅 장치(1002)는 예를 들어 서비스 제공자의 서버, 클라이언트와 관련된 장치(예로서, 클라이언트 장치), 온칩 시스템 및/또는 임의의 다른 적절한 컴퓨팅 장치 또는 컴퓨팅 시스템일 수 있다.
도시된 바와 같은 예시적인 컴퓨팅 장치(1002)는 서로 통신적으로 결합되는 처리 시스템(1004), 하나 이상의 컴퓨터 판독 가능 매체(1006) 및 하나 이상의 입출력(I/O) 인터페이스(1008)를 포함한다. 도시되지 않지만, 컴퓨팅 장치(1002)는 다양한 컴포넌트를 서로 결합하는 시스템 버스 또는 다른 데이터 및 커맨드 전송 시스템을 더 포함할 수 있다. 시스템 버스는 임의의 다양한 버스 아키텍처를 이용하는 메모리 버스 또는 메모리 제어기, 주변장치 버스, 유니버설 직렬 버스 및/또는 프로세서 또는 로컬 버스와 같은 상이한 버스 구조 중 어느 하나 또는 결합을 포함할 수 있다. 제어 및 데이터 라인과 같은 다양한 다른 예도 고려될 수 있다.
처리 시스템(1004)은 하드웨어를 이용하여 하나 이상의 동작을 수행하기 위한 기능을 나타낸다. 따라서, 처리 시스템(1004)은 프로세서, 기능 블록 등으로서 구성될 수 있는 하드웨어 요소(1010)를 포함하는 것으로 예시된다. 이것은 하나 이상의 반도체를 이용하여 형성되는 주문형 집적 회로 또는 다른 논리 장치로서의 하드웨어에서의 구현을 포함할 수 있다. 하드웨어 요소(1010)는 그를 형성하는 재료 또는 그 안에서 이용되는 처리 메커니즘에 의해 한정되지 않는다. 예를 들어, 프로세서는 반도체(들) 및/또는 트랜지스터(예로서, 전자 집적 회로(IC))로 구성될 수 있다. 그러한 상황에서, 프로세서 실행 가능 명령어는 전자적으로 실행 가능한 명령어일 수 있다.
컴퓨터 판독 가능 매체(1006)는 메모리/저장소(1012)를 포함하는 것으로 예시된다. 메모리/저장소(1012)는 하나 이상의 컴퓨터 판독 가능 매체와 관련된 메모리/저장 능력을 나타낸다. 메모리/저장소(1012)는 (랜덤 액세스 메모리(RAM)와 같은) 휘발성 매체 및/또는 (판독 전용 메모리(ROM), 플래시 메모리, 광 디스크, 자기 디스크 등과 같은) 비휘발성 매체를 포함할 수 있다. 메모리/저장소(1012)는 고정식 매체(예로서, RAM, ROM, 고정식 하드 드라이브 등)는 물론, 이동식 매체(예로서, 플래시 메모리, 이동식 하드 드라이브, 광 디스크 등)도 포함할 수 있다. 컴퓨터 판독 가능 매체(1006)는 아래에 더 설명되는 바와 같은 다양한 다른 방식으로 구성될 수 있다.
입출력 인터페이스(들)(1008)는 사용자가 컴퓨팅 장치(1002)에 커맨드 및 정보를 입력하는 것을 가능하게 하고, 또한 정보가 다양한 입출력 장치를 이용하여 사용자 및/또는 다른 컴포넌트 또는 장치에 제공되는 것을 가능하게 하기 위한 기능을 나타낸다. 입력 장치의 예는 키보드, 커서 제어 장치(예로서, 마우스), (예로서, 음성 인식 및/또는 구두 입력을 위한) 마이크, 스캐너, 터치 기능(예로서, 물리적 터치를 검출하도록 구성되는 용량성 또는 다른 센서), (예로서, 가시 또는 비가시 파장, 예로서 적외선 주파수를 이용하여, 터치를 포함하지 않는 움직임을 제스처로서 검출할 수 있는) 카메라 등을 포함한다. 출력 장치의 예는 디스플레이 장치(예로서, 모니터 또는 프로젝터), 스피커, 프린터, 네트워크 카드, 촉각 응답 장치 등을 포함한다. 따라서, 컴퓨팅 장치(1002)는 사용자 상호작용을 지원하기 위해 아래에 더 설명되는 바와 같은 다양한 방식으로 구성될 수 있다.
본 명세서에서는 다양한 기술이 소프트웨어, 하드웨어 요소 또는 프로그램 모듈과 일반적으로 관련하여 설명될 수 있다. 일반적으로, 그러한 모듈은 특정 작업을 수행하거나 특정 추상 데이터 타입을 구현하는 루틴, 프로그램, 객체, 요소, 컴포넌트, 데이터 구조 등을 포함한다. 본 명세서에서 사용되는 바와 같은 용어 "모듈", "기능" 및 "컴포넌트"는 일반적으로 소프트웨어, 펌웨어, 하드웨어 또는 이들의 결합을 나타낸다. 본 명세서에서 설명되는 기술의 특징은 플랫폼과 무관하며, 이는 기술이 다양한 프로세서를 갖는 다양한 상용 컴퓨팅 플랫폼 상에서 구현될 수 있다는 것을 의미한다.
설명되는 모듈 및 기술의 구현은 소정 형태의 컴퓨터 판독 가능 매체에 저장되거나 그를 통해 전달될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨팅 장치(1002)에 의해 액세스될 수 있는 다양한 매체를 포함할 수 있다. 한정이 아니라 예로서, 컴퓨터 판독 가능 매체는 "컴퓨터 판독 가능 저장 매체" 및 "컴퓨터 판독 가능 신호 매체"를 포함할 수 있다.
"컴퓨터 판독 가능 저장 매체"는 단순한 신호 전송, 반송파 또는 신호 자체와 달리 정보의 영구 저장을 가능하게 하는 매체 및/또는 장치를 지칭할 수 있다. 따라서, 컴퓨터 판독 가능 저장 매체는 신호 자체를 포함하지 않는다. 컴퓨터 판독 가능 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈, 논리 요소/회로 또는 다른 데이터와 같은 정보의 저장에 적합한 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체 및/또는 저장 장치와 같은 하드웨어를 포함한다. 컴퓨터 판독 가능 저장 매체의 예는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크(DVD) 또는 다른 광학 저장소, 하드 디스크, 자기 카세트, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 장치, 또는 원하는 정보를 저장하기에 적합하고 컴퓨터에 의해 액세스될 수 있는 다른 저장 장치, 유형 매체 또는 제조물을 포함할 수 있지만 이에 한정되지 않는다.
"컴퓨터 판독 가능 신호 매체"는 예를 들어 네트워크를 통해 명령어를 컴퓨팅 장치(1002)의 하드웨어로 전송하도록 구성되는 신호 보유 매체를 지칭할 수 있다. 통상적으로, 신호 매체는 반송파, 데이터 신호 또는 다른 운반 메커니즘과 같은 피변조 데이터 신호 내에 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 구현할 수 있다. 신호 매체는 또한 임의의 정보 전달 매체를 포함한다. 용어 "피변조 데이터 신호"는 신호 내에 정보를 인코딩하는 방식으로 신호의 특성 중 하나 이상이 설정 또는 변경된 신호를 의미한다. 한정이 아니라 예로서, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체, 및 음향, 무선 주파수(RF), 적외선 및 다른 무선 매체와 같은 무선 매체를 포함한다.
전술한 바와 같이, 하드웨어 요소(1010) 및 컴퓨터 판독 가능 매체(1006)는 본 명세서에서 설명되는 기술의 적어도 일부 양태를 구현하기 위해 일부 실시예에서 이용될 수 있는 하드웨어 형태로 구현되는 명령어, 모듈, 프로그래밍 가능 장치 논리 및/또는 고정 장치 논리를 나타낸다. 하드웨어 요소는 집적 회로 또는 온칩 시스템의 컴포넌트, 주문형 집적 회로(ASIC), 필드 프로그래머블 게이트 어레이(FPGA), 복합 프로그래밍 가능 논리 장치(CPLD), 및 실리콘 또는 다른 하드웨어 장치 내의 다른 구현을 포함할 수 있다. 이와 관련하여, 하드웨어 요소는 하드웨어 요소에 의해 구현되는 명령어, 모듈 및/또는 논리에 의해 정의되는 프로그램 작업을 수행하는 처리 장치는 물론, 실행할 명령어를 저장하는 데 사용되는 하드웨어 장치, 예로서 전술한 컴퓨터 판독 가능 저장 매체로서 동작할 수 있다.
전술한 것의 결합도 본 명세서에서 설명되는 다양한 기술 및 모듈을 구현하는 데 사용될 수 있다. 따라서, 소프트웨어, 하드웨어 또는 프로그램 모듈 및 다른 프로그램 모듈은 소정형태의 컴퓨터 판독 가능 저장 매체 상에 그리고/또는 하나 이상의 하드웨어 요소(1010)에 의해 구현되는 하나 이상의 명령어 또는 논리로서 구현될 수 있다. 컴퓨팅 장치(1002)는 소프트웨어 및/또는 하드웨어 모듈에 대응하는 특정 명령어 및/또는 기능을 구현하도록 구성될 수 있다. 따라서, 컴퓨팅 장치(1002)에 의해 소프트웨어로서 실행될 수 있는 모듈의 구현은 하드웨어에서, 예로서 컴퓨터 판독 가능 저장 매체 및/또는 처리 시스템의 하드웨어 요소(1010)의 사용을 통해 적어도 부분적으로 달성될 수 있다. 명령어 및/또는 기능은 본 명세서에서 설명되는 기술, 모듈 및 예를 구현하기 위해 하나 이상의 제조물(예로서, 하나 이상의 컴퓨팅 장치(1002) 및/또는 처리 시스템(1004))에 의해 실행/동작 가능할 수 있다.
도 10에 더 도시된 바와 같이, 예시적인 시스템(1000)은 개인용 컴퓨터(PC), 텔레비전 장치 및/또는 이동 장치 상에서 애플리케이션을 실행할 때 중단 없는 사용자 경험을 위한 유비쿼터스 환경을 가능하게 한다. 서비스 및 애플리케이션은 애플리케이션을 이용하고, 비디오 게임을 실행하고, 비디오를 시청하고, 기타 등등을 하면서 하나의 장치로부터 다른 장치로 이동할 때 통상의 사용자 경험을 위해 3개의 환경 모두에서 실질적으로 유사하게 실행된다.
예시적인 시스템(1000)에서, 다수의 장치는 중앙 컴퓨팅 장치를 통해 상호접속된다. 중앙 컴퓨팅 장치는 다수의 장치에 대해 국지적일 수 있거나, 다수의 장치로부터 떨어져 위치할 수 있다. 일 실시예에서, 중앙 컴퓨팅 장치는 네트워크, 인터넷 또는 다른 데이터 통신 링크를 통해 다수의 장치에 접속되는 하나 이상의 서버 컴퓨터의 클라우드일 수 있다.
일 실시예에서, 이러한 상호접속 아키텍처는 다수의 장치의 사용자에게 통상의 중단 없는 경험을 제공하기 위해 기능이 다수의 장치에 걸쳐 전달되는 것을 가능하게 한다. 다수의 장치 각각은 상이한 물리적 요구 및 능력을 가질 수 있으며, 중앙 컴퓨팅 장치는 플랫폼을 이용하여, 장치에 맞춤화될 뿐만 아니라 모든 장치에 공통인 경험의 장치로의 전달을 가능하게 한다. 일 실시예에서, 타겟 장치의 클래스가 생성되고, 경험이 장치의 일반 클래스에 맞춤화된다. 장치의 클래스는 장치의 물리적 특징, 사용 타입 또는 다른 공통 특성에 의해 정의될 수 있다.
다양한 구현에서, 컴퓨팅 장치(1002)는 컴퓨터(1014), 모바일(1016) 및 텔레비전(1018) 용도와 같은 다양한 상이한 구성을 취할 수 있다. 이러한 구성 각각은 일반적으로 상이한 구조 및 능력을 가질 수 있는 장치를 포함하며, 따라서 컴퓨팅 장치(1002)는 상이한 장치 클래스 중 하나 이상에 따라 구성될 수 있다. 예를 들어, 컴퓨팅 장치(1002)는 개인용 컴퓨터, 데스크탑 컴퓨터, 멀티스크린 컴퓨터, 랩탑 컴퓨터, 넷북 등을 포함하는 컴퓨터(1014) 장치 클래스로서 구현될 수 있다.
컴퓨팅 장치(1002)는 이동 전화, 휴대용 뮤직 플레이어, 휴대용 게이밍 장치, 태블릿 컴퓨터, 멀티스크린 컴퓨터 등과 같은 이동 장치를 포함하는 모바일(1016) 장치 클래스로서 구현될 수도 있다. 컴퓨팅 장치(1002)는 통상의 시청 환경에서 일반적으로 더 큰 스크린을 갖거나 그에 접속되는 장치를 포함하는 텔레비전(1018) 장치 클래스로서 구현될 수도 있다. 이러한 장치는 텔레비전, 셋톱 박스, 게이밍 콘솔 등을 포함한다.
본 명세서에서 설명되는 기술은 컴퓨팅 장치(1102)의 이러한 다양한 구성에 의해 지원될 수 있으며, 본 명세서에서 설명되는 기술의 특정 예로 한정되지 않는다. 예를 들어, 환경(100)의 다양한 엔티티와 관련하여 설명된 기능은 예를 들어 전술한 바와 같이 플랫폼(1022)을 통해 "클라우드"(1020)를 통해 분산형 시스템을 이용하여 전부 또는 일부 구현될 수 있다.
클라우드(1020)는 자원(1024)에 대한 플랫폼(1022)을 포함하고/하거나 나타낸다. 플랫폼(1022)은 클라우드(1020)의 하드웨어(예로서, 서버) 및 소프트웨어 자원의 기본 기능을 추상화한다. 자원(1024)은 컴퓨팅 장치(1002)로부터 떨어진 서버 상에서 컴퓨터 처리가 실행되는 동안 이용될 수 있는 애플리케이션 및/또는 데이터를 포함할 수 있다. 자원(1024)는 인터넷을 통해 그리고/또는 셀룰러 또는 WiFi 네트워크와 같은 가입자 네트워크를 통해 제공되는 서비스도 포함할 수 있다.
플랫폼(1022)은 컴퓨팅 장치(1002)와 다른 컴퓨팅 장치를 접속하기 위한 자원 및 기능을 추상화할 수 있다. 플랫폼(1022)은 플랫폼(1022)을 통해 구현되는 자원(1024)에 대한 마주한 요구에 대한 대응하는 스케일 레벨을 제공하기 위해 자원의 스케일링을 추상화하는 데에도 사용될 수 있다. 따라서, 상호접속된 장치 실시예에서, 본 명세서에서 설명되는 기능의 구현은 시스템(1000) 전반에 분산될 수 있다. 예를 들어, 기능은 컴퓨팅 장치(1002)에서는 물론, 클라우드(1020)의 기능을 추상화하는 플랫폼(1022)을 통해서도 부분적으로 구현될 수 있다.
본 명세서에서 설명되는 기술을 수행하도록 구현될 수 있는 다수의 방법이 본 명세서에서 설명된다. 방법의 양태는 하드웨어, 펌웨어 또는 소프트웨어 또는 이들의 결합에서 구현될 수 있다. 방법은 하나 이상의 장치에 의해 수행되는 동작을 지정하는 단계의 세트로서 도시되지만, 각각의 블록에 의해 동작을 수행하기 위해 도시된 순서로 반드시 한정되지는 않는다. 또한, 특정 방법과 관련하여 도시된 동작은 하나 이상의 구현에 따라 다른 방법의 동작과 결합 및/또는 교환될 수 있다. 방법의 양태는 환경(100)과 관련하여 전술한 다양한 엔티티 간의 상호작용을 통해 구현될 수 있다.
결론
장치 위치를 결정하기 위한 측위 소스 순위화를 위한 기술이 설명된다. 실시예는 구조적 특징 및/또는 방법적 액트에 고유한 언어로 설명되지만, 첨부된 청구항에서 정의되는 실시예는 설명되는 특정 특징 또는 액트로 반드시 한정되지는 않는다는 것을 이해해야 한다. 오히려, 특정 특징 및 액트는 청구되는 실시예를 구현하는 예시적인 형태로서 개시된다.

Claims (20)

  1. 시스템으로서,
    적어도 하나의 프로세서와,
    명령어를 포함하는 하나 이상의 컴퓨터 판독 가능 저장 매체
    를 포함하고,
    상기 명령어는 상기 적어도 하나의 프로세서에 의한 실행에 응답하여 상기 시스템으로 하여금:
    장치의 위치에 대한 요청을 수신하는 동작과,
    상기 장치에 대한 포지션 정보를 제공하는 데 이용 가능한 가용 측위 소스를 식별하는 동작과,
    각각의 상기 가용 측위 소스의 순위에 기초하여 상기 가용 측위 소스의 조합을 선택하는 동작과,
    중첩 지리 구역을 이용해서 상기 장치에 대한 타겟 지리 구역을 정의하고, 상기 선택된 상기 가용 측위 소스의 조합으로부터 비중첩 지리 구역을 제외하는 동작과,
    상기 타겟 지리 구역을 이용해서 상기 장치의 상기 위치를 결정하는 동작
    을 포함하는 동작들을 수행하게 하되,
    상기 중첩 지리 구역을 이용해서 상기 장치에 대한 타겟 지리 구역을 정의하고, 상기 선택된 상기 가용 측위 소스의 조합으로부터 비중첩 지리 구역을 제외하는 동작은,
    상기 선택된 상기 가용 측위 소스의 제1 측위 소스를 이용해서 상기 장치의 제1 위치를 결정하는 것과,
    상기 선택된 상기 가용 측위 소스의 다른 측위 소스인 제2 측위 소스를 이용해서 상기 장치의 제2 위치를 결정하는 것과,
    상기 중첩 지리 구역을 이용해서 상기 타겟 지리 구역을 정의하고, 상기 제1 위치 및 상기 제2 위치로부터 상기 비중첩 지리 구역을 제외하는 것
    을 포함하는
    시스템.
  2. 제1항에 있어서,
    상기 장치의 위치에 대한 상기 요청은 상기 장치의 사용자로부터의 비상 지원에 대한 요청에 따라 행해지는
    시스템.
  3. 제1항에 있어서,
    상기 장치의 위치에 대한 상기 요청은
    상기 장치의 위치에 대해 상기 장치에 의해 생성되는 주기적 요청, 또는
    상기 장치의 위치에 대한 원격 서비스로부터의 그리고 상기 장치에 의한 요청과 독립적인 요청
    중 하나 이상에 따라 행해지는
    시스템.
  4. 제1항에 있어서,
    상기 가용 측위 소스는, 상기 장치의 위치 정보를 제공하기 위해 상기 요청의 시점에 이용 가능한 위치 정보 시스템을 포함하는
    시스템.
  5. 제1항에 있어서,
    상기 순위는 클라이언트 측위 정책 또는 서버 측위 정책 중 하나 이상에 의해 지정되는
    시스템.
  6. 제1항에 있어서,
    상기 순위는 적어도 하나의 개별 측위 소스에 대해 순위화된 측위 소스의 적어도 하나의 조합을 포함하는
    시스템.
  7. 제1항에 있어서,
    상기 동작들은,
    하나 이상의 측위 정책에 기초하여, 상기 장치의 상기 위치를 상기 장치를 통해 결정할지 혹은 원격 서비스를 통해 결정할지 확인하는 동작과,
    상기 위치가 상기 장치를 통해 결정되게 되는 경우에는, 상기 장치의 상기 위치를 결정하는 것을 상기 장치를 통해 수행하는 동작과,
    상기 위치가 상기 원격 서비스를 통해 결정되게 되는 경우에는, 상기 장치의 상기 위치를 결정하는 것을 상기 원격 서비스를 통해 수행하는 동작
    을 더 포함하는
    시스템.
  8. 제1항에 있어서,
    상기 식별하는 동작은, 상기 가용 측위 소스의 타입 및 속성을 상기 장치를 통해서 식별하는 것을 포함하고,
    상기 동작들은,
    상기 가용 측위 소스의 상기 타입 및 속성을 원격 측위 서비스로 전송하는 동작과,
    상기 원격 측위 서비스로부터, 상기 장치의 상기 위치를 결정하는데 상기 가용 측위 소스 중 어느 것을 사용할지를 나타내는 통지를 수신하는 동작
    을 더 포함하는
    시스템.
  9. 제1항에 있어서,
    상기 타겟 지리 구역을 이용해서 상기 장치의 상기 위치를 결정하는 동작은,
    원격 서비스에서 상기 장치의 장치 결정 위치를 수신하는 것과,
    상기 원격 서비스에서 상기 장치의 서비스 결정 위치를 확인하는 것
    을 포함하고,
    상기 가용 측위 소스의 조합은 상기 장치 결정 위치 및 상기 서비스 결정 위치를 포함하는
    시스템.
  10. 제1항에 있어서,
    상기 가용 측위 소스는 다수의 원격 측위 서비스를 포함하고,
    상기 선택하는 동작은, 상기 원격 측위 서비스 중 적어도 하나를 상기 원격 측위 서비스 중 적어도 하나의 다른 것에 대한 그 순위에 기초해서 선택하는 것을 포함하는
    시스템.
  11. 장치 위치 결정 방법으로서,
    장치의 위치에 대한 요청을 수신하는 단계와,
    상기 장치와는 독립된 원격 위치 관련 서비스에서, 하나 이상의 측위 정책에 기초해서, 상기 장치의 상기 위치를 상기 장치를 통해서 결정할지 원격 서비스를 통해서 결정할지 확인하는 단계 - 상기 하나 이상의 측위 정책은 상기 위치를 상기 장치를 통해서 결정할지 상기 원격 서비스를 통해서 결정할지 지정하도록 사전 구성됨 - 와,
    상기 장치와 상기 원격 서비스 중 하나에서 상기 장치의 상기 위치를 결정하고, 순위화된 측위 소스 세트로부터 선택된 측위 소스의 조합을 이용하는 단계 - 상기 장치의 상기 위치를 결정하는 것은,
    중첩 지리 구역을 이용해서 상기 장치의 상기 위치에 대한 타겟 지리 구역을 정의하고, 상기 측위 소스의 조합으로부터 비중첩 지리 구역을 제외하는 것을 포함하되,
    상기 타겟 지리 구역을 정의하고 상기 비중첩 지리 구역을 제외하는 것은,
    상기 측위 소스의 조합의 제1 측위 소스를 이용해서 상기 장치의 제1 위치를 결정하고,
    상기 측위 소스의 조합의 다른 측위 소스인 제2 측위 소스를 이용해서 상기 장치의 제2 위치를 결정하며,
    상기 중첩 지리 구역을 이용해서 상기 타겟 지리 구역을 정의하고, 상기 제1 위치 및 상기 제2 위치로부터 상기 비중첩 지리 구역을 제외함으로써, 행해짐 - 와,
    상기 타겟 지리 구역을 이용해서 상기 장치의 상기 위치를 결정하는 단계
    를 포함하는
    장치 위치 결정 방법.
  12. 제 11 항에 있어서,
    상기 하나 이상의 측위 정책은, 상기 장치의 하나 이상의 자원이 지정된 임계치 아래인 경우에는 상기 장치의 상기 위치는 상기 원격 서비스를 통해서 결정되어야 하는 것으로 지정하도록 사전 구성되는
    장치 위치 결정 방법.
  13. 제 12 항에 있어서,
    상기 장치의 상기 하나 이상의 자원은 배터리 충전 레벨, 메모리 자원, 프로세서 자원 중 적어도 하나를 포함하는
    장치 위치 결정 방법.
  14. 제 11 항에 있어서,
    상기 하나 이상의 측위 정책은, 상기 장치의 상기 위치를 상기 장치를 통해서 결정할지 상기 원격 서비스를 통해서 결정할지 지정하도록 사용자 설정 가능한
    장치 위치 결정 방법.
  15. 제 11 항에 있어서,
    상기 장치의 상기 위치에 대한 상기 요청은 비상 서비스에 대한 요청에 따라 행해지고, 상기 방법은
    상기 장치의 상기 위치에 기초하여 가용 비상 서비스를 식별하는 단계, 또는
    상기 장치의 상기 위치를 상기 가용 비상 서비스에 통지하는 단계
    중 하나 이상을 더 포함하는
    장치 위치 결정 방법.
  16. 장치 위치 결정 방법으로서,
    장치의 위치에 대한 요청을 수신하는 단계와,
    상기 장치에 대한 포지션 정보를 제공하는 데 이용 가능한 측위 소스를 식별하는 단계와,
    각각의 상기 측위 소스의 순위에 기초하여 상기 측위 소스의 조합을 선택하는 단계와,
    중첩 지리 구역을 이용해서 상기 장치의 상기 위치에 대한 타겟 지리 구역을 정의하고, 상기 측위 소스의 조합으로부터 비중첩 지리 구역을 제외하는 단계와,
    상기 타겟 지리 구역을 이용해서 상기 장치의 상기 위치를 결정하는 단계
    를 포함하되,
    상기 중첩 지리 구역을 이용해서 상기 장치의 상기 위치에 대한 타겟 지리 구역을 정의하고, 상기 측위 소스의 조합으로부터 비중첩 지리 구역을 제외하는 단계는,
    상기 측위 소스의 조합의 제1 측위 소스를 이용해서 상기 장치의 제1 위치를 결정하는 것과,
    상기 측위 소스의 조합의 다른 측위 소스인 제2 측위 소스를 이용해서 상기 장치의 제2 위치를 결정하는 것과,
    상기 중첩 지리 구역을 이용해서 상기 타겟 지리 구역을 정의하고, 상기 제1 위치 및 상기 제2 위치로부터 상기 비중첩 지리 구역을 제외하는 것을 포함하는
    장치 위치 결정 방법.
  17. 제 16 항에 있어서,
    상기 장치의 위치에 대한 요청은 상기 장치로부터의 비상 지원에 대한 요청에 따라 행해지는
    장치 위치 결정 방법.
  18. 제 16 항에 있어서,
    상기 장치의 위치에 대한 요청은
    상기 장치의 위치에 대해 상기 장치에 의해 생성되는 주기적 요청, 또는
    상기 장치의 위치에 대한 원격 서비스로부터의 그리고 상기 장치에 의한 요청과 독립적인 요청
    중 하나 이상에 따라 행해지는
    장치 위치 결정 방법.
  19. 제 16 항에 있어서,
    상기 순위는 적어도 하나의 개별 측위 소스에 대해 순위화된 측위 소스의 적어도 하나의 조합을 포함하는
    장치 위치 결정 방법.
  20. 제 16 항에 있어서,
    하나 이상의 측위 정책에 기초하여, 상기 장치의 상기 위치를 상기 장치를 통해 결정할지 혹은 원격 서비스를 통해 결정할지 확인하는 단계와,
    상기 위치가 상기 장치를 통해 결정되게 되는 경우에는, 상기 장치의 상기 위치를 결정하는 것을 상기 장치를 통해 수행하는 단계와,
    상기 위치가 상기 원격 서비스를 통해 결정되게 되는 경우에는, 상기 장치의 상기 위치를 결정하는 것을 상기 원격 서비스를 통해 수행하는 단계
    를 더 포함하는
    장치 위치 결정 방법.
KR1020167009234A 2013-10-09 2014-10-07 장치 위치를 결정하기 위한 측위 소스 순위화 기법 KR102212081B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/050,187 US10255328B2 (en) 2013-10-09 2013-10-09 Location source ranking for determining device location
US14/050,187 2013-10-09
PCT/US2014/059378 WO2015054168A2 (en) 2013-10-09 2014-10-07 Location source ranking for determining device location

Publications (2)

Publication Number Publication Date
KR20160065115A KR20160065115A (ko) 2016-06-08
KR102212081B1 true KR102212081B1 (ko) 2021-02-03

Family

ID=51790871

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167009234A KR102212081B1 (ko) 2013-10-09 2014-10-07 장치 위치를 결정하기 위한 측위 소스 순위화 기법

Country Status (11)

Country Link
US (1) US10255328B2 (ko)
EP (1) EP3042511B1 (ko)
JP (1) JP2016540958A (ko)
KR (1) KR102212081B1 (ko)
CN (1) CN105659638A (ko)
AU (1) AU2014332140B2 (ko)
BR (1) BR112016007131B1 (ko)
CA (1) CA2925570C (ko)
MX (1) MX366478B (ko)
RU (1) RU2689425C2 (ko)
WO (1) WO2015054168A2 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10437506B2 (en) * 2015-08-17 2019-10-08 Microsoft Technology Licensing Llc Optimal storage and workload placement, and high resiliency, in geo-distributed cluster systems
CN107807759B (zh) * 2016-09-08 2021-06-15 菜鸟智能物流控股有限公司 地址显示方法、装置、设备和用户界面系统
CN107124701B (zh) * 2017-05-25 2020-10-30 深圳华云时空技术有限公司 Wifi终端的定位方法和定位装置
KR102645260B1 (ko) 2018-10-25 2024-03-11 삼성전자주식회사 전자 장치 및 전자 장치의 위치 측정 방법
US11586660B2 (en) 2019-07-31 2023-02-21 Palantir Technologies Inc. Determining object geolocations based on heterogeneous data sources
US11966430B2 (en) * 2019-07-31 2024-04-23 Palantir Technologies Inc. Determining geolocations of composite entities based on heterogeneous data sources
US10992972B1 (en) * 2019-12-31 2021-04-27 Adobe Inc. Automatic identification of impermissable account sharing
US20210243301A1 (en) * 2020-02-03 2021-08-05 Microsoft Technology Licensing, Llc Address reliability and augmentation for emergency text
CN111885499B (zh) * 2020-07-16 2022-06-21 北京字节跳动网络技术有限公司 一种移动设备的定位方法、装置、电子设备及存储介质
JP7306366B2 (ja) * 2020-11-16 2023-07-11 横河電機株式会社 機器登録端末、機器登録方法、および、機器登録プログラム
US20220295219A1 (en) * 2021-03-15 2022-09-15 Samsung Electronics Co., Ltd. Method and apparatus for collaborative wi-fi localization

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001305210A (ja) 2000-04-25 2001-10-31 Matsushita Electric Works Ltd 位置検出装置
US20020145984A1 (en) 2001-01-31 2002-10-10 International Business Machines Corporation System and method for aggregating information to determine users' locations
US20100291947A1 (en) * 2009-05-15 2010-11-18 Magesh Annamalai Facility for selecting a mobile device location determination technique
US8825078B1 (en) 2011-08-18 2014-09-02 Google Inc. Probabilistic estimation of location based on wireless signal strength

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6075515A (en) * 1997-01-10 2000-06-13 U.S. Philips Corporation Virtual workspace for tactual interaction
FR2784357A1 (fr) 1998-10-08 2000-04-14 Jean Gilles Soupeaux Dispositif de remplissage de verres avec verseur doseur.
US6873290B2 (en) 1999-01-08 2005-03-29 Trueposition, Inc. Multiple pass location processor
US7457628B2 (en) 2000-02-29 2008-11-25 Smarter Agent, Llc System and method for providing information based on geographic position
FI108372B (fi) 2000-06-30 2002-01-15 Nokia Corp Menetelmõ ja laite paikanmõõritykseen
KR100450571B1 (ko) * 2000-09-08 2004-09-30 엔티티 도꼬모 인코퍼레이티드 위치 정보 제공 장치, 통신 단말, 이동 통신 단말 및 위치정보 제공 방법
US7202816B2 (en) 2003-07-22 2007-04-10 Microsoft Corporation Utilization of the approximate location of a device determined from ambient signals
GB0415072D0 (en) * 2004-07-05 2004-08-04 Whereonearth Ltd Geographical location indexing
US8051087B2 (en) * 2004-07-04 2011-11-01 Yahoo! Inc. Customized geographical location indexing
US7668925B1 (en) * 2005-01-28 2010-02-23 Pmc-Sierra, Inc. Method and apparatus for routing in SAS using logical zones
EP1872150B9 (en) * 2005-04-08 2013-04-10 WaveMarket, Inc. (d/b/a Location Labs) Mobile location
US7961717B2 (en) 2005-05-12 2011-06-14 Iposi, Inc. System and methods for IP and VoIP device location determination
US20070185980A1 (en) 2006-02-03 2007-08-09 International Business Machines Corporation Environmentally aware computing devices with automatic policy adjustment features
US7933612B2 (en) * 2006-02-28 2011-04-26 Microsoft Corporation Determining physical location based upon received signals
US8086398B2 (en) 2007-10-25 2011-12-27 Research In Motion Limited Sending location information from within a communication application
US8660574B2 (en) 2008-04-02 2014-02-25 Qualcomm Incorporated Generic positioning protocol
WO2012030197A2 (ko) 2010-09-05 2012-03-08 엘지전자 주식회사 무선통신 시스템에서 단말의 위치를 결정하는 방법 및 장치
CN102761959A (zh) 2011-04-26 2012-10-31 上海真石信息技术有限公司 Lbs定位纠偏过滤技术

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001305210A (ja) 2000-04-25 2001-10-31 Matsushita Electric Works Ltd 位置検出装置
US20020145984A1 (en) 2001-01-31 2002-10-10 International Business Machines Corporation System and method for aggregating information to determine users' locations
US20100291947A1 (en) * 2009-05-15 2010-11-18 Magesh Annamalai Facility for selecting a mobile device location determination technique
US8825078B1 (en) 2011-08-18 2014-09-02 Google Inc. Probabilistic estimation of location based on wireless signal strength

Also Published As

Publication number Publication date
EP3042511A4 (en) 2017-04-05
AU2014332140B2 (en) 2019-01-03
RU2016113355A (ru) 2017-10-10
CN105659638A (zh) 2016-06-08
EP3042511A2 (en) 2016-07-13
MX366478B (es) 2019-07-10
US20150100589A1 (en) 2015-04-09
WO2015054168A3 (en) 2015-05-28
JP2016540958A (ja) 2016-12-28
CA2925570A1 (en) 2015-04-16
KR20160065115A (ko) 2016-06-08
EP3042511B1 (en) 2020-12-30
MX2016004367A (es) 2016-07-05
RU2689425C2 (ru) 2019-05-28
CA2925570C (en) 2022-06-21
US10255328B2 (en) 2019-04-09
WO2015054168A2 (en) 2015-04-16
BR112016007131A2 (pt) 2017-08-01
RU2016113355A3 (ko) 2018-07-17
BR112016007131A8 (pt) 2020-03-03
BR112016007131B1 (pt) 2023-03-14

Similar Documents

Publication Publication Date Title
KR102212081B1 (ko) 장치 위치를 결정하기 위한 측위 소스 순위화 기법
RU2640027C2 (ru) Обнаружение событий геозоны с помощью изменяющихся уровней достоверности
AU2014332140A1 (en) Location source ranking for determining device location
CN107079360B (zh) 接入点辅助漫游
US10075387B1 (en) Mobile server connection
US10674344B2 (en) Location determination for a service request
CN110771128B (zh) 使用地理电话号码的连接
CN111221484B (zh) 投屏方法及装置
US20160050529A1 (en) Location Information from a Mobile Device
US20180206102A1 (en) Determining a Valid Resource String for a Resource
KR101639204B1 (ko) 컴퓨팅 장치의 글로벌 위치를 결정하기 위해 측지 삼각 측량을 사용하고 용이하게 하기 위한 메커니즘

Legal Events

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