KR101444925B1 - 디바이스의 상황을 결정하기 위한 방법 및 시스템 - Google Patents

디바이스의 상황을 결정하기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR101444925B1
KR101444925B1 KR1020147006913A KR20147006913A KR101444925B1 KR 101444925 B1 KR101444925 B1 KR 101444925B1 KR 1020147006913 A KR1020147006913 A KR 1020147006913A KR 20147006913 A KR20147006913 A KR 20147006913A KR 101444925 B1 KR101444925 B1 KR 101444925B1
Authority
KR
South Korea
Prior art keywords
sensor
probability
sensors
predetermined
currently
Prior art date
Application number
KR1020147006913A
Other languages
English (en)
Other versions
KR20140043166A (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 KR20140043166A publication Critical patent/KR20140043166A/ko
Application granted granted Critical
Publication of KR101444925B1 publication Critical patent/KR101444925B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3231Monitoring the presence, absence or movement of users
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0251Power saving arrangements in terminal devices using monitoring of local events, e.g. events related to user activity
    • H04W52/0254Power saving arrangements in terminal devices using monitoring of local events, e.g. events related to user activity detecting a user operation or a tactile contact or a motion of the device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/10Details of telephonic subscriber devices including a GPS signal receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/12Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Environmental & Geological Engineering (AREA)
  • Telephone Function (AREA)
  • User Interface Of Digital Computer (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)

Abstract

디바이스가 현재 소정의 상황에 있는지를 결정하기 위한 방법 및 시스템이 설명된다. 디바이스는 이 디바이스에 결합되는 복수의 센서들을 포함할 수 있다. 디바이스가 현재 소정의 상황에 있는 지를 나타내는 출력을 센서가 어느 정도까지 제공할 수 있는지 그 정도를 표시하는 정확도 점수와, 센서에 대한 전력소비율이 결합된 센서 효용 값이 각각의 센서에 대해 결정될 수 있다. 디바이스에 결합된 복수의 센서들의 순위가 이러한 센서 효용 값들에 근거하여 정해질 수 있다. 센서는 이러한 센서 순위에 근거하여 식별될 수 있다. 디바이스가 현재 소정의 상황에 있는지의 결정과 관련된 확률이 센서에 할당될 수 있다. 디바이스가 현재 소정의 상황에 있는 지를 확률을 증가시켜 그리고 필요 전력을 증가시켜 결정하기 위해 더 많은 센서들이 식별될 수 있다.

Description

디바이스의 상황을 결정하기 위한 방법 및 시스템{METHODS AND SYSTEMS TO DETERMINE A CONTEXT OF A DEVICE}
관련 출원에 대한 상호 참조
본 출원은 미국 특허 출원번호 제13/297,425호(2011년 11월 16일 출원)에 대한 우선권 혜택을 주장하는바, 상기 특허문헌은 마치 본 명세서의 설명에 전체적으로 기술되는 것처럼 그 전체 내용이 본 명세서에 참조로 통합된다.
컴퓨팅을 수행할 때, 상황 인식(context awareness)은 현재 환경의 하나 이상의 속성들을 검출하기 위한 컴퓨팅 디바이스(예를 들어, 모바일 컴퓨팅 디바이스)의 능력을 말한다. 일부 경우에 있어서, 이러한 디바이스는 현재 사정에 대한 정보를 검출 및/또는 수신할 수 있고, 그리고 하나 이상의 규칙들 혹은 정책들의 소정의 세트에 근거하여, 하나 이상의 동작들을 수행할 수 있고, 소정의 기능을 제공할 수 있으며, 기타 등등을 행할 수 있다.
예컨대, 모바일 폰(mobile phone)은 모바일 폰의 현재 위치에 대한 정보를 제공하도록 구성된 위성 위치확인 시스템(Global Positioning System, GPS) 안테나를 구비할 수 있다. 이러한 예에서, 모바일 폰은 모바일 폰의 현재 위치에 적어도 부분적으로 근거하여 모바일 폰에서 실행되는 애플리케이션이 제공하는 데이터 출력 및/또는 기능을 조정할 수 있다. 더 구체적으로 살펴보면, 모바일 폰에서 실행되는 일기예보 애플리케이션은 (사용자가 위치 정보를 입력함이 없이) 모바일 폰의 현재 위치와 관련된 날씨 정보를 출력할 수 있다.
본 출원은 컴퓨팅 디바이스(예를 들어, 모바일 컴퓨팅 디바이스)가 소정의 상황 내에 및/또는 소정의 상황에 현재 위치하고 있는지, 처해 있는지 그리고/또는 존재하는지를 결정하기 위한 시스템 및 방법을 개시한다. 일부 실시예들에서, 이러한 시스템 및 방법은 컴퓨팅 디바이스가 소정의 상황 내에 및/또는 소정의 상황에 현재 위치하고 있지 않은지, 처해 있지 않은지 그리고/또는 존재하지 않는지를 결정할 수 있다. 일 실시형태에서, 방법이 설명된다. 이 방법은, 디바이스에 결합된 일 서브세트의 센서들(a subset of sensors)의 각각의 센서에 대해, 그 센서에 대한 각각의 전력소비율을 결정하는 것을 포함할 수 있다. 이 방법은 또한, 서브세트의 센서들의 각각의 센서에 대해, 각각의 정확도 점수(accuracy score)를 결정하는 것을 포함할 수 있다. 각각의 정확도 점수는 해당 센서와 관련된 정보가 소정의 상황을 어느 정도(degree)까지 나타내는지 그 정도를 표시할 수 있다. 이 방법은 또한, 서브세트의 센서들의 각각의 센서에 대해, 센서 효용 값(sensor utility value)을 결정하는 것을 포함할 수 있고, 여기서 각각의 센서 효용 값은 해당 센서에 대한 각각의 전력소비율 및 해당 센서에 대한 정확도 점수에 적어도 부분적으로 근거한다. 서브세트의 센서들의 각각의 센서에 대한 센서 효용 값에 근거하여, 본 방법은 또한, 소정의 센서를 식별하는 것과, 그리고 소정의 센서에 의해 출력된 정보를 수신하는 것을 포함할 수 있다. 소정의 센서에 의해 출력된 정보에 근거하여, 본 방법은 디바이스가 현재 소정의 상황에 있을 확률을 결정하는 것을 포함할 수 있다. 확률이 미리결정된 임계치(predetermined threshold)를 초과하는 경우, 본 방법은 또한, 디바이스가 현재 소정의 상황에 있다고 결정하는 것을 포함할 수 있다.
또 다른 실시형태에서는, 컴퓨팅 디바이스에 의해 실행가능한 명령들이 저장되어 있는 비일시적 컴퓨터 판독가능 매체(non-transitory computer readable medium)가 설명되는바, 여기서 명령들은 컴퓨팅 디바이스로 하여금 여러 기능들을 수행하도록 한다. 이러한 기능들은, 디바이스에 결합된 일 서브세트의 센서들의 각각의 센서에 대해, 그 센서에 대한 각각의 전력소비율을 결정하는 것을 포함할 수 있다. 이러한 기능들은 또한, 서브세트의 센서들의 각각의 센서에 대해, 각각의 정확도 점수를 결정하는 것을 포함할 수 있다. 각각의 정확도 점수는 해당 센서와 관련된 정보가 소정의 상황을 어느 정도까지 나타내는지 그 정도를 표시할 수 있다. 이러한 기능들은 또한, 서브세트의 센서들의 각각의 센서에 대해, 센서 효용 값을 결정하는 것을 포함할 수 있고, 여기서 각각의 센서 효용 값은 해당 센서에 대한 각각의 전력소비율 및 해당 센서에 대한 각각의 정확도 점수에 부분적으로 근거한다. 서브세트의 센서들의 각각의 센서에 대한 센서 효용 값에 근거하여, 이러한 기능들은 또한, 소정의 센서를 식별하는 것과, 그리고 소정의 센서에 의해 출력된 정보를 수신하는 것을 포함할 수 있다. 소정의 센서에 의해 출력된 정보에 근거하여, 이러한 기능들은 또한, 디바이스가 현재 소정의 상황에 있는지의 결정과 관련된 확률을 결정하는 것을 포함할 수 있다. 확률이 미리결정된 임계치를 초과하는 경우, 이러한 기능들은 또한, 디바이스가 현재 소정의 상황에 있다고 결정하는 것을 포함할 수 있다.
또 다른 실시형태에서는, 시스템이 설명된다. 이 시스템은 효용 기능 모듈(utility function module)과 확률 모듈(probability module)을 포함한다. 효용 기능 모듈은, 디바이스에 결합된 일 서브세트의 센서들의 각각의 센서에 대해서, 그 센서에 대한 각각의 전력소비율과 관련된 정보를 수신함과 아울러 서브세트의 센서들의 각각의 센서에 대해서, 각각의 정확도 점수를 수신하도록 구성될 수 있다. 각각의 정확도 점수는 해당 센서와 관련된 정보가 소정의 상황을 어느 정도까지 나타내는지 그 정도를 표시할 수 있다. 효용 기능 모듈은 또한, 서브세트의 센서들의 각각의 센서에 대한 센서 효용 값을 결정하도록 구성될 수 있으며, 여기서 각각의 센서 효용 값은 해당 센서에 대한 각각의 전력소비율 및 해당 센서에 대한 정확도 점수에 적어도 부분적으로 근거한다. 확률 모듈은 효용 기능 모듈과 통신할 수 있으며, 확률 모듈은 서브세트의 센서들의 각각의 센서에 대한 센서 효용 값에 근거하여 소정의 센서를 식별하는 것 그리고 소정의 센서에 의해 출력된 정보를 수신하는 것을 수행하도록 구성될 수 있다. 소정의 센서에 의해 출력된 정보에 근거하여, 확률 모듈은 디바이스가 현재 소정의 상황에 있을 확률을 결정하도록 구성될 수 있다. 확률이 미리결정된 임계치를 초과하는 경우, 확률 모듈은 디바이스가 현재 소정의 상황에 있다고 결정하도록 구성될 수 있다.
앞서의 개요적 설명은 단지 예시적인 것이며 어떠한 방식으로든 한정의 의미로서 의도된 것이 아니다. 앞서 설명된 예시적 실시형태, 실시예 및 특징에 추가하여, 또 다른 실시형태, 실시예 및 특징은 다음의 상세한 설명 및 도면을 참조함으로써 명백하게 될 것이다.
도 1은 본 명세서에서 설명되는 적어도 일부 실시예에 따른, 예시적 디바이스를 나타낸 블록도이다.
도 2는 디바이스가 현재 소정의 상황에 있는지를 결정하기 위한 예시적인 방법을 나타낸 흐름도이다.
도 3은 디바이스가 현재 소정의 상황에 있는지를 결정하는 경우에 포함되는 예시적인 추론 레벨들을 나타내는 블록도이다.
도 4는 디바이스가 현재 소정의 상황에 있는지를 추론하기 위한 예시적인 시간 통계 추론 다이어그램을 나타낸 블록도이다.
도 5는 본 명세서에서 설명되는 적어도 일부 실시예에 따라 구성된, 컴퓨팅 시스템 내에서 사용되는 예시적인 컴퓨팅 디바이스를 나타낸 기능블록도이다.
도 6은 본 명세서에서 제시되는 적어도 일부 실시예에 따라 구성된, 컴퓨팅 디바이스 상에서의 컴퓨터 프로세스 실행을 위한 컴퓨터 프로그램을 포함하는 예시적인 컴퓨터 프로그램물의 부분적 개념도를 나타낸 도면이다.
다음의 상세한 설명은 개시되는 시스템 및 방법의 다양한 특징 및 기능을 첨부되는 도면을 참조하여 설명한다. 도면에서, 유사한 심볼들은 문맥을 통해 달리 기술되지 않는 한 전형적으로 유사한 컴포넌트들을 나타낸다. 본 명세서에서 설명되는 예시적인 시스템 및 방법의 실시예들은 한정적 의미를 갖지 않는다. 개시되는 시스템 및 방법의 특정 실시형태가 광범위한 서로 다른 구성으로 정렬 및 결합될 수 있음(이들 모두는 본 명세서에서 고려됨)이 어렵지 않게 이해될 수 있다.
본 개시내용은 특히, 디바이스가 소정의 상황에 있는지를 결정하기 위한 시스템 및 방법을 개시할 수 있다. 디바이스는 디바이스에 결합된 복수의 센서들을 포함할 수 있다. 디바이스가 소정의 상황에 있는 지를 나타내는 출력을 각각의 센서가 어느 정도까지 제공할 수 있는지 그 정도를 표시하는 정확도 점수와, 센서에 대한 전력소비율이 결합된 센서 효용 값이 각각의 센서에 대해 결정될 수 있다. 이러한 센서 효용 값들에 근거하여, 디바이스에 결합되는 복수의 센서들의 순위가 정해질 수 있다. 센서는 이러한 센서 순위에 근거하여 식별될 수 있다. 디바이스가 소정의 상황에 있는지의 결정과 관련된 확률이 센서에 할당될 수 있다. 디바이스가 현재 소정의 상황에 있는 지를 확률을 증가시켜 그리고 필요 전력을 증가시켜 결정하기 위해 더 많은 센서들이 사용될 수 있다.
일부 예들에서, 디바이스는 다양한 파라미터들(예를 들어, 디바이스 위치, 가속도, 회전 등)의 연속적인 실시간 감지를 수행하는 복수의 센서들을 포함할 수 있다. 디바이스에 결합된 프로세서는 복수의 센서들로부터 정보를 수신하도록 구성될 수 있으며 디바이스로 하여금 디바이스의 기능을 적절하게 수행할 수 있게 하는 계산을 수행하도록 구성될 수 있다. 프로세서에 의해 수행된 연속적인 실시간 감지 및 계산은 디바이스로 하여금 전력을 소비하게 할 수 있다. 디바이스로 하여금 센서를 활성화시키도록, 센서로부터 정보를 수신하도록, 그리고 계산을 수행하도록 구성함으로써 디바이스는 더 효율적으로 실행될 수 있다.
특정 예로서, 디바이스가 소정의 상황(예를 들어, 디바이스의 환경 및 위치, 예컨대, 사용자의 주머니 속, 사용자의 손 안, 백팩(backpack)의 안, 사용자의 엉덩이 위, 팔에 장착되어 있음, 회의실 안 등)에 있는지를 결정함으로써, 디바이스는 소정에 상황에 맞게 조정되는 방식으로 실행되도록 구성될 수 있다. 모바일 폰의 소정의 상황이 회의실임을 결정한 모바일 폰은, 예를 들어, 착신 전화를 거절할 수 있거나 무시할 수 있다. 또 다른 예에서, 디바이스가 사용자의 주머니 안에 있는 동안, 사용자는 위성 위치확인 시스템(GPS) 모듈의 동작으로부터 얻을 수 있는 혜택을 받지 못할 수 있다. 만약 사용자의 주머니 안에 디바이스가 있을 수 있다고 디바이스가 결정하면, 디바이스는 전력을 아끼기 위해 GPS 안테나/모듈을 비활성화시킬 수 있다. 디바이스가 소정의 상황에 있는지를 결정함으로써, 디바이스는 소정의 상황이 부적합할 수 있는 경우 전력을 소비하는 센서들을 비활성화시킬 수 있다. 디바이스는 또한, 소정의 상황이 적합한 것으로 검출되면, 센서들 및 특징들을 활성화시킬 수 있다.
디바이스의 상황은 디바이스에 결합된 센서 혹은 복수의 센서들이 출력하는 정보를 수신함으로써 결정될 수 있다. 일 예에서, 하나의 센서로부터 수신된 정보는 디바이스가 현재 소정의 상황에 있는지를 결정하기에 충분할 수 있다. 또 다른 예에서, 디바이스에 결합된 복수의 센서들 혹은 일 서브세트의 센서들은 디바이스가 현재 소정의 상황에 있는지를 결정하는데 사용될 수 있다. 예를 들어, 디바이스에 결합된 카메라 혹은 광센서는, 디바이스가 사용자의 주머니 안에 있을 수 있는지, 아니면 어두운 환경의 임의의 표면에 위치하고 있을 수 있는지, 아니면 디바이스가 위치하고 있을 수 있는 그 표면에 의해 덮여 있을 수 있는 지를 구분할 수 없다. 가속도계와 같은 또 다른 센서는, 예를 들어, 운동량을 검출함으로써 디바이스가 사용자의 주머니 안에 있을 수 있는지의 결정을 확증하기 위해 사용될 수 있거나 혹은 이러한 결정과 관련된 확률을 증가시키기 위해 사용될 수 있다.
디바이스에 결합된 복수의 센서들은, 디바이스가 소정의 상황에 있는 지를 표시하는 정보를 센서가 어느 정도의 정확도로 제공할 수 있는지를 나타내는 정확도 레벨, 그리고 전력 소비에 따라 순위가 정해질 수 있다. 예를 들어, 카메라는 자이로스코프(gyroscope)보다 더 많은 전력을 소비할 수 있지만, 카메라는 소정의 상황을 결정함에 있어 자이로스코프보다 더 명확할 수 있다. 해당하는 상황을 결정하기 위해, 디바이스는 예를 들어, 제 1 센서와 관련된 정보를 사용할 수 있는바, 여기서 제 1 센서는 전력 소비에 있어 낮은 순위를 가질 수 있으며, 이는 제 1 센서가 다른 센서들보다 더 적은 전력을 소비함을 표시한다. 제 1 센서에 의해 출력된 정보는 디바이스가 소정의 상황에 있는지를 높은 확률로 혹은 확정적으로 표시하지 못할 수 있다. 디바이스가 소정의 상황에 있는지를 확률을 증가시켜 표시하기 위해, 제 2 센서에 의해 출력된 정보가 사용될 수 있다. 제 2 센서는 제 1 센서보다 전력 소비에 있어서는 순위가 더 높을 수 있지만, 디바이스가 소정의 상황에 있는 지를 제 2 센서에 의해 제공되는 정보가 어느 정도의 정확도로 표시할 수 있는지를 나타내는 정확도 레벨에 있어서는 더 높은 순위를 가질 수 있다. 제 1 센서와 제 2 센서로부터 수신된 결합된 정보는 여전히, 디바이스로 하여금 디바이스가 현재 소정의 상황에 있는지를 확정적으로 결정할 수 있도록 하지 못할 수 있다. 제 3 센서에 의해 출력된 정보가 사용될 수 있다. 다른 센서들에 의해 출력된 정보를 사용하는 것은, 디바이스가 소정의 상황에 있다는 결정이 확정적으로 이루어지거나 혹은 미리결정된 임계치를 초과하는 확률 레벨로 이루어질 때까지, 계속될 수 있다.
센서의 순위는 디바이스에 대한 입력에 따라 변할 수 있다. 예를 들어, 카메라는 더 높은 정확도로 디바이스가 야간(night)보다는 주간(day)에 사용자의 주머니 안에 있을 수 있음을 표시할 수 있는 정보를 제공할 수 있다. 예를 들어, 디바이스는 주간의 시간을 결정하기 위해 시계로부터의 입력을 사용할 수 있고 센서 순위를 변경할 수 있다. 일 예에서, GPS 모듈은 위도 및 경도를 포함하는 디바이스의 위치를 표시할 수 있다. 디바이스는 네트워크로부터 해당하는 위도 및 경도에 대한 일몰 시간(sunset time)과 관련된 정보를 수신할 수 있다. 디바이스는 일몰 시간과 관련된 정보 및 시계 시간을 사용할 수 있고, 디바이스의 환경이 어두운지 아니면 어둡지 않은지를 결정할 수 있고, 이에 따라 센서 순위를 변경할 수 있다. 센서 순위에서의 변화는 동적 순위(dynamic ranking)로서 지칭될 수 있다.
I. 디바이스가 현재 소정의 상황에 있는지를 결정하기 위한 시스템( System for Determining a That a Device is Currently Within a Given Context )
도 1은 예시적인 디바이스(100)를 나타낸 블록도이다. 디바이스(100)는, 디바이스(100)에 결합될 수 있는 센서들(104A-N)이 출력하는 정보를 수신하도록 구성된 효용 기능 모듈(utility function module)(102)과, 그리고 확률 모듈(probability module)(106)을 포함한다. 효용 기능 모듈(102)과 확률 모듈(106)은 서로 통신할 수 있다. 디바이스(100)에 대한 입력들은 효용 기능 모듈(102)과 확률 모듈(106)에 전달될 수 있다. 입력은 디바이스(100) 외부에서의 입력 혹은 내부에서의 입력일 수 있다. 복수의 입력들이 또한 사용될 수 있다. 일부 실시예들에서, 디바이스(100)는 예를 들어, 모바일 전화기(mobile telephone), 개인 휴대 단말기(Personal Digital Assistant, PDA), 랩탑(laptop), 노트북(notebook), 혹은 넷북 컴퓨터(netbook computer), 태블릿 컴퓨팅 디바이스(tablet computing device) 등일 수 있다.
효용 기능 모듈(102)은 센서들(104A-N) 중 하나 이상과 관련된 센서 효용 값을 결정하도록 구성될 수 있다. 센서들(104A-N)은 디바이스(100)에 결합되는 모든 센서들을 포함할 수 있거나, 혹은 디바이스(100)에 결합되는 일 서브세트의 센서들을 포함할 수 있다. 센서들(104A-N) 각각은 각각의 센서가 사용 중일 때 전력을 소비한다. 하나의 센서에 대한 전력소비율은 다른 센서들에 대한 전력소비율과는 다를 수 있다. 만약 디바이스(100)가 모바일 폰이라면, 예를 들어, 모바일 폰에 결합되는 센서들은 카메라 및 자이로스코프를 포함할 수 있다. 예를 들어, 카메라는 자이로스코프보다 더 많은 전력을 소비할 수 있다. 상이한 디바이스들은 상이한 센서들 및 이러한 센서들의 서브세트를 구비할 수 있다. 효용 기능 모듈(102)은 디바이스(100)에 결합되는 센서들의 타입을 결정하고 이에 따라 각각의 센서 효용 값을 결정하도록 구성될 수 있다.
센서들(104A-N) 각각에 의해 출력된 정보는 디바이스(100)로 하여금 소정의 정확도 레벨로 디바이스(100)의 현재 상황을 결정할 수 있도록 한다. 센서들(104A-N) 각각에 대해 정확도 점수가 결정 혹은 할당될 수 있다. 정확도 점수는, 디바이스(100)가 현재 소정의 상황에 있는지를 나타내는 출력을 소정의 센서가 어느 정도까지 제공할 수 있는지 그 정도를 표시할 수 있다. 효용 기능 모듈(102)은 센서들(104A-N) 각각과 관련된 센서 효용 값을 결정하도록 구성될 수 있다. 센서 효용 값은, 각각의 센서에 대한 전력소비율과 각각의 센서와 관련된 정확도 점수의 가중된 결합(weighted combination)을 포함할 수 있다. 센서 효용 값은 아래와 같은 수학식으로 계산될 수 있다.
센서효용값(i)=α.f(전력소비율(i))+β.f(정확도점수(i)) 방정식 (1)
방정식 (1)은 소정의 센서(i)와 관련된 센서 효용 값의 계산을 기술하고 있는바, 이는 센서(i)에 대한 전력소비율의 함수가 계수 α에 의해 가중된 것과, 센서(i)와 관련된 정확도 점수의 함수가 계수 β에 의해 가중된 것의 가중된 결합을 포함한다. 센서 효용 값 방정식 (1)은 다른 요소들을 포함할 수 있다. 예를 들어, 센서가 디바이스 상에서 사용 중일 수 있고, 프로세서는 이 센서로부터 정보를 수신하고 있을 수 있다. 센서를 사용하는 것은 여분의 전력량을 소비할 수 있는 센서 활성화를 포함하지 않을 수 있기 때문에, 센서에 대한 센서 효용 값의 가치를 높이기 위해 방정식 (1)에 임의의 요소가 추가될 수 있다.
센서 효용 값 방정식 (1)은, 요소들 중 어떤 요소도 센서 효용 값을 편향(bias)시키지 않도록, 방정식 (1)의 요소들(예를 들어, 전력소비율 및 정확도 점수)과 관련된 크기(order of magnitude)를 확립하기 위해 정규화 계수(normalizing factors)를 포함할 수 있다. 또 다른 예에서, 센서에 대한 전력소비율과 관련된 함수는 센서에 대한 전력소비율의 역(inverse)을 포함할 수 있다. 이러한 예에서, 센서에 대한 전력소비율이 낮으면 낮을수록, 센서와 관련된 센서 효용 값은 더 높아지게 된다.
계수 α와 β는 디바이스(100)에 대한 입력의 함수를 포함하는 상수 혹은 변수를 포함할 수 있다. 정확도 점수는 또한 디바이스(100)에 대한 입력의 함수를 포함할 수 있다. 예를 들어, 카메라는 야간보다는 주간에 디바이스(100)의 소정의 상황을 더 높은 정확도 레벨로 표시할 수 있는 정보를 제공할 수 있다. 디바이스(100)는 주간의 시간을 결정하기 위해 시계로부터의 입력을 사용할 수 있고, 이에 따라 효용 기능 모듈(102)은 카메라와 관련된 정확도 점수를 변경시키거나, 혹은 계수 β를 변경시키거나 혹은 이러한 것들 모두를 변경시키도록 구성될 수 있다. 따라서, 소정의 센서와 관련된 센서 효용 값은 디바이스(100)에 대한 입력에 따라 변할 수 있다. 효용 기능 모듈(102)은 센서들(104A-N)과 관련된 각각의 센서 효용 값들에 근거하여 센서들(104A-N)의 순위를 정할 수 있다. 센서들(104A-N)의 순위는 동적으로 정해질 수 있으며 디바이스(100)에 대한 입력에 따라 변할 수 있다.
확률 모듈(106)은 센서들(104A-N)에 의해 출력된 정보를 효용 기능 모듈(102)과의 통신을 통해 혹은 직접적으로 수신하도록 구성될 수 있다. 센서들(104A-N)의 순위에 근거하여, 확률 모듈(106)은 소정의 센서 혹은 제 1 센서를 식별하도록 구성될 수 있다. 제 1 센서는 효용 기능 모듈(102)에 의해 결정된 제 1 센서와 관련된 센서 효용 값에 근거하여 식별될 수 있다. 제 1 센서는 예를 들어, 디바이스(100)에 결합되는 다른 센서들에 대한 전력소비율과 비교해서 가장 낮은 전력소비율과 관련될 수 있다. 확률 모듈(106)은 제 1 센서에 의해 출력된 정보에 근거하여 디바이스(100)가 현재 소정의 상황에 있는지의 결정과 관련된 제 1 확률을 결정하도록 구성될 수 있다. 예를 들어, 제 1 센서는 모바일 폰에 결합되는 가속도계일 수 있다. 만약 가속도계가 움직임을 표시한다면, 모바일 폰은 사용자의 주머니 안에 있을 수 있지만, 또한 사용자의 손 안에 있을 수도 있고, 혹은 사용자가 뛰는 동안 사용자의 어깨에 고정되어 있을 수도 있다. 만약 확률 모듈(106)에 의해 가속도계에 할당되는 제 1 확률이 제1의 미리결정된 임계치를 초과하지 않는다면, 예를 들어 모바일 폰의 현재 상황은 확정적으로 결정되지 못할 수 있다.
확률 모듈(106)은, 디바이스(100)가 현재 소정의 상황에 있는지를 결정하기 위한 제 1 센서의 효율성과 관련된 효율성 파라미터(effectiveness parameter)를 결정하기 위해 디바이스가 소정의 상황에 있을 수 있는 확률을 제 1 센서에 대한 전력소비율과 결합시킬 수 있다. 효율성 파라미터는 아래와 같은 방정식으로 결정될 수 있다.
효율성파라미터(i)=[P i (상황( Context )=참( true ))]/[소비된전력량(i)] 방정식 (2)
방정식 (2)는 소정의 센서(i)에 대한 효율성 파라미터를 기술한다. 효율성 파라미터는, 센서(i)로부터 수신된 정보에 근거하여 센서(i)에 할당되는, 디바이스가 소정의 상황에 있을(예를 들어, 상황(context) = 참(true)) 확률 Pi를 센서(i)에 대한 전력소비율로 나눔으로써 결정될 수 있다. 센서(i)에 할당된 확률 Pi가 높으면 높을수록, 센서(i)와 관련된 효율성 파라미터는 더 높아지게 된다. 또한, 센서(i)에 대한 전력소비율이 낮으면 낮을수록, 센서(i)와 관련된 효율성 파라미터는 더 높아지게 된다. 일 예에서, 효율성 파라미터는 방정식 (1)에서 설명된 센서 효용 값 대신에 혹은 센서 효용 값과 결합시켜 센서 순위를 결정하는데 사용될 수 있다.
확률 모듈(106)은 제 2 센서를 식별하도록 구성될 수 있다. 제 2 센서는 효용 기능 모듈(102)에 의해 결정된 제 2 센서와 관련된 센서 효용 값에 근거하여 식별될 수 있다. 제 2 센서는 또한 제 2 센서와 관련된 효율성 파라미터에 근거하여 식별될 수 있다. 제 2 센서는 제 1 센서보다 더 많은 전력을 소비할 수 있지만, 더 높은 확률로 디바이스의 현재 상황을 표시할 수 있는 정보를 제공할 수 있다. 확률 모듈(106)은 제 2 센서에 의해 출력된 정보에 근거하여 디바이스(100)가 현재 소정의 상황에 있는지의 결정과 관련된 제 2 확률을 결정하도록 구성될 수 있다. 예를 들어, 모바일 폰에 결합되는 제 2 센서는 카메라 혹은 광센서일 수 있다. 만약 카메라 혹은 광센서에 의해 출력되는 정보가 어두운 환경을 표시한다면, 그리고 디바이스(100)에 입력되는 시계로부터 수신된 시간이 낮 시간(day time)을 표시한다면, 확률 모듈(106)은 모바일 폰의 현재 상황을 결정함에 있어서 제 2 센서와 관련하여 높은 확률을 할당하도록 구성될 수 있다.
확률 모듈(106)은 결합된 확률을 결정하기 위해 제 1 확률과 제 2 확률을 결합시키도록 구성될 수 있다. 예를 들어, 확률 모듈(106)은 결합된 확률을 결정하기 위해 제 1 확률과 제 2 확률을 합산하도록 구성될 수 있다. 확률 모듈(106)은 제 1 확률과 제 2 확률의 가중된 결합을 결정하도록 구성될 수 있다. 제 1 확률과 제 2 확률의 가중된 결합과 관련된 가중치들은 고정된 값일 수 있거나 혹은 디바이스(100)에 대한 입력과 상관(correlation)되어 변할 수 있다. 만약 결합된 확률이 제2의 미리결정된 임계치를 초과하지 않는다면, 디바이스(100)가 현재 소정의 상황에 있는지가 확정적으로 결정되지 못할 수 있다. 확률 모듈(106)은 제 3 센서로부터 정보를 수신하여 제 1 확률 및 제 2 확률과 결합될 제 3 확률을 결정하도록 구성될 수 있다. 결합된 확률이 미리결정된 임계치를 초과하고 디바이스(100)가 현재 소정의 상황에 있음이 결정될 때까지 더 많은 센서들이 사용될 수 있다.
확률 모듈(106)은, 예를 들어, 순시 결합 확률 정보(instantaneous combined probability information)에 포함될 수 있는 노이즈 혹은 왜곡을 필터링하기 위해 소정의 시간에 걸쳐 그 결합된 확률들의 평균을 구하도록 구성될 수 있다. 디바이스(100)의 동작 혹은 기능은 디바이스(100)가 현재 소정의 상황에 있는지에 따라 조정될 수 있다. 예를 들어, 만약 디바이스(100)가 모바일 폰이고 이 모바일 폰이 사용자의 주머니 안에 있음, 백팩 혹은 지갑 안에 있음, 혹은 사용자가 모바일 폰을 사용하고 있지 않은 다른 영역에 있음이 결정되면, 예를 들어, 센서들을 비활성화시킴으로써 그리고 모바일 폰의 기능을 감소시킴으로써, 모바일 폰 및 모바일 폰에서 실행되는 애플리케이션들은 조정될 수 있고, 폰은 더 효율적으로 운용될 수 있다. 또 다른 예에서, 상황이 적합한 경우, 디바이스는 센서를 활성화시킬 수 있고 기능을 증가시킬 수 있다.
디바이스(100)의 앞서 설명된 기능들 혹은 컴포넌트들 중 하나 이상은 추가적인 기능적 혹은 물리적 컴포넌트들로 나누어질 수 있거나, 또는 몇 개의 기능적 혹은 물리적 컴포넌트들로 결합될 수 있다. 어떤 다른 예들에서, 추가적인 기능적 및/또는 물리적 컴포넌트들은 도 1에 제시된 예에 추가될 수 있다. 또 다른 경우, 효용 기능 모듈(102)과 확률 모듈(106) 중 어느 하나는, 본 명세서에서 설명되는 로직 기능들을 구현하기 위한 하나 이상의 명령들이 포함된 프로그램 코드를 실행시키도록 구성된 프로세서(예를 들어, 마이크로프로세서(microprocessor), 디지털 신호 프로세서(Digital Signal Processor, DSP) 등)를 포함할 수 있거나 또는 이러한 프로세서 형태로 제공될 수 있다. 디바이스(100)는 또한, 프로그램 코드를 저장하기 위해서, 예를 들어, 디스크 혹은 하드 드라이브를 포함하는 저장 디바이스와 같은 임의 타입의 컴퓨터 판독가능 매체(비일시적 매체)를 포함할 수 있다. 다른 예들에서, 디바이스(100)는 다른 시스템들 내에 포함될 수 있다.
Ⅱ. 디바이스가 현재 소정의 상황에 있는지를 결정하기 위한 방법( Method to Determine That a Device is Currently Within a Given Context )
도 2는 디바이스가 현재 소정의 상황에 있는지를 결정하기 위한 예시적인 방법(200)을 나타낸 흐름도이다.
방법(200)은 블록들(202, 204, 206, 208, 210, 212, 및 214) 중 하나 이상의 블록에 의해 예시되는 바와 같은 하나 이상의 동작, 기능, 혹은 행위를 포함할 수 있다. 블록들이 비록 순차적인 순서로 예시되고 있지만, 이러한 블록들은 일부 예들에서는 병렬로 수행될 수 있고, 그리고/또는 본 명세서에서 설명되는 것과는 다른 순서로 수행될 수 있다. 또한, 구현하고자 하는 것에 따라, 다양한 블록들이 몇 개의 블록들로 결합될 수 있으며, 추가적인 블록들로 나누어질 수 있고, 그리고/또는 제거될 수 있다.
추가적으로, 방법(200) 그리고 본 명세서에서 개시되는 다른 프로세스들 및 방법들에 대해서, 이러한 흐름도는 본 실시예들의 하나의 가능한 구현예의 기능 및 동작을 제시한다. 이와 관련하여, 각각의 블록은, 프로세스에서 특정 로직 기능 혹은 단계를 구현하기 위해 프로세서에 의해 실행가능한 하나 이상의 명령들을 포함하는 프로그램 코드의 일부분 혹은 모듈(module), 세그먼트(segment)를 나타낼 수 있다. 프로그램 코드는 예를 들어, 디스크 혹은 하드 드라이브를 포함하는 저장 디바이스와 같은 임의 타입의 컴퓨터 판독가능 매체 상에 저장될 수 있다. 컴퓨터 판독가능 매체는 예를 들어, 레지스터 메모리(register memory), 프로세서 캐시(processor cache), 및 랜덤 액세스 메모리(Random Access Memory, RAM)와 같은 단기간 동안 데이터를 저장하는 컴퓨터-판독가능 매체들과 같은 그러한 비일시적 컴퓨터 판독가능 매체를 포함할 수 있다. 컴퓨터 판독가능 매체는 또한, 보조적 혹은 지속적인 장기간 저장소와 같은 비일시적 매체들을 포함할 수 있는바, 예를 들어, 판독 전용 메모리(Read Only Memory, ROM), 광 디스크 혹은 자기 디스크, 콤팩트-디스크 판독 전용 메모리(Compact Disc Read Only Memory, CD-ROM)와 같은 것을 포함할 수 있다. 컴퓨터 판독가능 매체들은 또한 임의의 다른 휘발성 혹은 비휘발성 저장 시스템들일 수 있다. 컴퓨터 판독가능 매체는 예를 들어, 컴퓨터 판독가능 저장 매체, 유형의 저장 디바이스, 혹은 다른 제조물로서 고려될 수 있다.
추가적으로, 방법(200) 그리고 본 명세서에서 설명되는 다른 프로세스들 및 방법들에 대해, 도 2에서의 각각의 블록은 해당 프로세스에서 특정 로직 기능을 수행하도록 배선된 회로를 나타낼 수 있다.
블록(202)에서, 방법(200)은 각각의 센서에 대한 전력소비율 및 정확도 점수를 결정하는 것을 포함한다. 복수의 센서들은 디바이스에 결합될 수 있다. 각각의 센서는 사용 중일 때 일정 양의 전력을 소비할 수 있다. 각각의 센서에 의해 출력된 정보는 소정의 정확도 레벨로 디바이스의 현재 상황을 결정하는데 사용될 수 있다. 디바이스가 현재 소정의 상황에 있는지를 나타내는 출력을 각각의 센서가 어느 정도까지 제공할 수 있는지 그 정도를 표시하기 위해 정확도 점수가 각각의 센서에 할당될 수 있거나 각각의 센서에 대해 계산될 수 있다. 예를 들어, 디바이스는 디바이스에 결합된 일 서브세트의 복수의 센서들의 각각의 센서에 대해 전력소비율 및 정확도 점수를 결정할 있거나, 또는 디바이스는 서버로부터 각각의 센서에 대한 전력소비율 및 정확도 점수와 관련된 정보를 수신할 수 있다. 서브세트의 센서들은 상이한 디바이스들에 대해 다를 수 있다. 디바이스에 결합되는 센서들의 유형 및 개수를 포함하는 디바이스의 구성에 따라, 일 서브세트의 센서들이 결정될 수 있다.
블록(204)에서, 방법(200)은 전력소비율 및 정확도 점수와 관련된 센서 효용 값을 결정하는 것을 포함한다. 디바이스는 프로세서를 포함할 수 있다. 프로세서는 서브세트의 센서들의 각각의 센서에 대해 센서 효용 값을 결정할 수 있다. 센서 효용 값은 각각의 센서에 대한 전력소비율과 각각의 센서와 관련된 정확도 점수의 가중된 결합을 포함할 수 있다. 센서 효용 값은 앞서의 방정식 (1)에서 기술된 바와 같은 수학식에 의해 계산될 수 있다.
센서의 정확도 점수와 전력소비율의 가중된 결합과 관련된 가중치들은 디바이스에 대한 입력과 상관되어 변할 수 있다. 예를 들어, 카메라는 디바이스의 현재 상황을 결정함에 있어 야간보다 주간에 다른 센서들과 비교해 높은 정확도 점수를 할당받을 수 있다. 이에 따라 디바이스는 카메라와 관련된 정확도 점수를 증가시키기 위해 시계로부터의 입력을 사용할 수 있고 혹은 이에 따라 카메라의 정확도 점수와 관련된 가중치를 변경시킬 수 있다. 따라서, 소정의 센서와 관련된 센서 효용 값은 디바이스에 대한 입력에 따라 변할 수 있다. 방정식 (1)에서 제시된 바와 같이, 센서 효용 값은 센서와 관련된 정확도 점수의 함수 및 전력소비율의 함수를 포함할 수 있다.
블록(206)에서, 방법(200)은 센서를 식별하는 것을 포함한다. 디바이스에 결합된 센서들과 관련된 센서 효용 값들에 근거하여, 센서들의 순위가 정해질 수 있다. 예를 들어, 프로세서는 센서들과 관련된 센서 효용 값들을 비교할 수 있고 이에 따라 센서들의 순위를 정할 수 있다. 센서들의 순위는 동적으로 정해질 수 있고 디바이스에 대한 입력 혹은 입력들에 따라 변할 수 있다. 순위는 또한 디바이스와 관련된 센서들의 유형 및 개수를 포함하는 디바이스의 구성에 따라 변할 수 있다. 센서의 순위에 근거하여 프로세서는 제 1 센서를 식별할 수 있다. 예를 들어, 제 1 센서는, 디바이스에 결합된 다른 센서들과 관련된 전력소비율과 비교해 볼 때 가장 낮은 전력소비율과 관련될 수 있다.
블록(208)에서, 방법(200)은 센서에 의해 출력된 정보를 수신하는 것을 포함한다. 블록(206)에서 식별된 제 1 센서에 대해, 제 1 센서에 의해 출력된 정보가 수신될 수 있다. 예를 들어, 프로세서는 센서로 하여금 제 1 센서에 의해 출력된 정보를 수신하도록 할 수 있다. 예를 들어, 만약 식별된 제 1 센서가 광센서라면, 프로세서는 광센서를 활성화시킬 수 있고, 센서로부터의 출력 형태인 광에 대한 디바이스의 노출과 관련된 정보를 수신할 수 있다.
블록(210)에서, 방법(200)은 디바이스가 현재 소정의 상황에 있는지의 결정과 관련된 확률 혹은 결합된 확률을 결정하는 것을 포함한다. 제 1 센서에 의해 출력된 정보에 근거하여, 디바이스가 현재 소정의 상황에 있는지의 결정과 관련된 확률이 결정될 수 있거나 제 1 센서에 할당될 수 있다. 예를 들어, 제 1 센서는 모바일 폰에 결합된 자이로스코프일 수 있다. 만약 자이로스코프가 높은 회전운동율을 표시한다면, 모바일 폰이 사용자의 주머니 안에 있을 확률보다 모바일 폰이 사용자가 뛰고 있는 동안 사용자의 어깨에 고정되어 있을 확률이 더 높을 수 있다. 예를 들어, 이러한 경우에, 모바일 폰에 결합된 프로세서는 모바일 폰이 사용자의 주머니 안에 있을 확률에 대해 낮은 확률을 자이로스코프에 할당하도록 구성될 수 있다. 예를 들어, 확률은 수치적 값일 수 있거나(예컨대, 0과 1 사이에 있는 일정 범위의 값들 중 0.2), 혹은 질적 서술(qualitative description)(예컨대, "낮은" 확률)일 수 있다.
결정 블록(212)에서, 방법(200)은 제 1 센서에 할당된 확률이 제 1 임계치를 초과하는지를 결정하기 위해 확률이 임계치를 초과하는가를 결정하는 것을 포함한다. 제 1 임계치는 디바이스가 현재 소정의 상황에 있는지의 결정에 관한 확실성(certainty)의 레벨과 관련될 수 있다.
만약 제 1 센서에 할당된 확률이 제 1 임계치를 초과한다면, 예를 들어, 방법(200)의 블록(214)에서 디바이스는 현재 소정의 상황에 있다고 결정될 수 있다.
만약 확률이 제 1 임계치를 초과하지 않는다면, 디바이스가 현재 소정의 상황에 있는지는 확정적으로 결정되지 못할 수 있다. 방법(200)은 블록(206)에서 제 2 센서를 식별할 수 있다. 제 2 센서는 블록(204)에서 식별된 제 2 센서와 관련된 센서 효용 값에 근거하여 식별될 수 있다. 제 2 센서는 제 1 센서보다 더 많은 양의 전력을 소비할 수 있지만, 제 1 센서보다 더 높은 확률로 디바이스(100)의 현재 상황을 표시하는 출력을 제공할 수 있다. 제 2 센서에 의해 출력된 정보는 블록(208)에서 수신될 수 있다. 제 2 센서에 의해 출력된 정보에 근거하여, 디바이스가 현재 소정의 상황에 있는지의 결정과 관련된 제 2 확률이 블록(210)에서 결정될 수 있거나 제 2 센서에 할당될 수 있다. 예를 들어, 모바일 폰에 결합된 제 2 센서는 카메라 혹은 광센서일 수 있다. 만약 카메라 혹은 광센서에 의해 출력된 정보가 어두운 환경을 표시한다면, 그리고 디바이스와 관련된 시계로부터 수신된 시간이 낮 시간을 표시한다면, 예를 들어, 모바일 폰의 현재 상황이 사용자의 주머니일 수 있거나 백팩일 수 있는 확률에 대해 높은 확률이 제 2 센서에 할당될 수 있다.
블록(210)에서, 방법(200)은 결합된 확률을 결정하기 위해 제 1 확률과 제 2 확률을 결합시키는 것을 포함할 수 있다. 예를 들어, 결합된 확률을 결정하는 것은 제 1 확률과 제 2 확률을 합산하는 것을 포함할 수 있다. 제 1 확률과 제 2 확률의 가중된 결합이 또한 결정될 수 있다. 가중치들은 고정된 값일 수 있거나 혹은 디바이스에 대한 입력과 상관되어 변할 수 있다.
만약 결합된 확률이 방법(200)의 블록(212)에서 제2의 미리결정된 임계치를 초과한다면, 디바이스는 높은 확실성 레벨로 현재 소정의 상황에 있다고 결정될 수 있다. 만약 초과하지 않는다면, 제 3 센서가 블록(206)에서 식별될 수 있고, 방법은 반복될 수 있다. 결합된 확률이 미리결정된 임계치를 초과하고 미리결정된 높은 확실성 레벨로 디바이스가 현재 소정의 상황에 있다고 결정될 수 있을 때까지 더 많은 센서들이 사용될 수 있다.
Ⅲ. 추론 레벨( Inference Levels )
또 다른 예에서, 디바이스가 현재 소정의 상황에 있는지의 결정은 세 개의 추론 레벨들 중 하나 이상의 레벨에 의해 설명될 수 있다. 도 3은 디바이스가 현재 소정의 상황에 있는지를 결정하는 경우에 포함되는 예시적인 추론 레벨들을 나타내는 블록도이다.
추론의 제 1 레벨은 개개의 센서 정보를 포함할 수 있다. 도 3은 단지 예시적 목적으로 세 개의 센서들(302A, 302B, 및 302C)을 나타낸다. 디바이스에 결합된 센서들의 유형 및 개수를 포함하는 디바이스의 구성 및 유형에 따라, 더 많거나 더 적은 수의 센서들이 사용될 수 있다. 개개의 센서들은 디바이스의 현재 상황을 표시하는 정보를 제공할 수 있다. 그러나, 개개의 센서 정보는 디바이스가 현재 소정의 상황에 있는지를 결정함에 있어 확정적이지 못할 수 있다. 예를 들어, 광센서는 모바일 폰이 사용자의 주머니 안에 있을 수 있는 지를 추론하는데 사용될 수 있다. 광센서에 의해 출력된 정보를 사용하는 것은 사용자의 주머니 안에 모바일 폰이 있을 수 있음을 확정적으로 결정하기에 충분하지 않을 수 있다. 광센서는 소량의 광을 검출할 수 있거나 혹은 전혀 광을 검출하지 못할 수 있는바, 이것은 모바일 폰이 사용자의 주머니 안에 있을 수 있음을 표시할 수 있지만 이것은 또한 어두운 환경에서 임의의 표면에 모바일 폰이 있을 수 있음을 표시할 수도 있다. 따라서, 개개의 센서 레벨 추론은 확정적이지 않을 수 있다.
확률 추론 레벨(304)은 디바이스가 현재 소정의 상황에 있는지를 추론하기 위해 개개의 센서들에 의해 출력된 정보를 사용할 수 있다. 확률 추론 레벨(304)은 하나의 센서에 의해 출력된 정보를 사용할 수 있고, 디바이스가 현재 소정의 상황에 있을 수 있는지를 센서에 의해 출력된 정보가 어는 정도의 확률로 표시할 수 있는지 그 확률을 결정할 수 있다. 확률이 임계치를 초과하지 못할 수 있고, 디바이스는 현재 소정의 상황에 있다고 확정적으로 결정되지 못할 수 있다. 확률 추론 레벨(304)은 제 2 센서에 의해 출력된 정보를 사용할 수 있고, 디바이스가 현재 소정의 상황에 있는지를 결합된 두 개의 센서들에 의해 출력된 정보가 어느 정도의 확률로 표시할 수 있는지 그 결합된 확률을 결정할 수 있다. 일 예에서, 확률 추론 레벨(304)은, 미리정의된 정확도 레벨로 디바이스가 현재 소정의 상황에 있다고 결정될 수 있을 때까지, 확률을 증가시켜 그리고 전력소비율을 증가시켜 더 많은 센서들에 의해 출력된 정보를 순차적으로 혹은 병렬로 계속 사용할 수 있다.
디바이스가 현재 소정의 상황에 있는지를 결정하기 위해 확률 추론 레벨(304)로부터의 정보를 시간 통계 추론 레벨(temporal statistical inference level)(306)이 더 사용할 수 있다. 시간 통계 추론 레벨(306)은, 비터비 정렬(Viterbi alignment), 부분적으로 관찰가능한 마르코프 결정 프로세스(Partially Observable Markov Decision Process), 및 나이브 베이즈 분류(Naive Bayes Classification)와 같은 알고리즘들에 근거하는 추론 모델을 포함할 수 있다. 추론 모델은 개개의 센서들을 개개의 요소들로서 고려할 수 있고, 디바이스의 상이한 상황들을 상이한 상태들로서 고려할 수 있다. 추론 모델에서 가정될 수 있는 것은, 각각의 센서 출력은 다른 센서들의 출력들과는 독립적일 수 있다는 것, 그리고 센서 출력들은 디바이스의 상태 혹은 상황의 확률에 독립적으로 기여한다는 것이다.
도 4는 디바이스가 현재 소정의 상황에 있는지를 추론하기 위한 예시적인 시간 통계 추론 다이어그램을 나타낸 블록도이다. 상태(402A)와 상태(402B)는 예를 들어, 디바이스의 두 개의 가능한 상황들일 수 있다. 예를 들어, 디바이스는 사용자의 주머니 안(상태 I(402A))에 있는 모바일 폰일 수 있거나, 혹은 사용자의 주머니 밖(상태 Ⅱ(402B))에 있을 수 있다. 디바이스의 상태들 혹은 가능한 상황들은, 센서 출력 상태들 혹은 값들(404A-404C)과 관련된 관측가능한 정보로부터 결정될 수 있는 숨겨진 혹은 비관측된 상태들로서 고려될 수 있다. 센서 출력 값들 혹은 상태들(404A-404C)은 예를 들어, 모바일 폰에 결합된 카메라의 출력 상태들 혹은 출력 값들을 포함할 수 있다. 단지 예시적 목적으로 도 4에서는 센서에 대한 세 개의 개별적인 출력 값들(404A-404C)이 제시된다. 출력 값들의 개수는 센서의 유형에 따라 달라질 수 있다. 예를 들어, 출력 값들은 개별적인 수치 값들로 나타내질 수 있다. 예로서, 카메라의 출력 값들은 0과 1 사이의 값이 되도록 정규화될 수 있다. 예를 들어, 세 개의 출력 값들(404A-404C)은 0.2, 0.5, 및 0.8일 수 있다. 또 다른 예에서, 카메라의 출력과 관련된 질적 기술(예컨대, "어두움(dark)")이 사용될 수 있다.
확률 P1 및 P2은 디바이스가 소정의 상황에 있을 평균 가능성(average likelihood) 혹은 시작 확률(starting probability)을 포함할 수 있다. 예를 들어, 만약 평균적으로, 디바이스가 시간의 60%는 상태(402A)에 있을 수 있고, 시간의 40%는 상태(402B)에 있을 수 있다면, P1은 0.6일 수 있고, P2는 0.4일 수 있다. 확률 P3 내지 P8은 방출 확률(emission probabilities)로서 지칭될 수 있다. 예를 들어, 만약 출력 값들(404A-404C)을 갖는 센서가 모바일 폰에 결합된 카메라이고, 상태 I(402A)이 모바일 폰이 사용자의 주머니 안에 있는 상태라면, P5는 모바일 폰이 상태 I(402A)에 있을 때 카메라 출력이 404C일 확률 혹은 가능성을 나타낼 수 있다. 예를 들어, 센서 출력 404C는 "어두움"일 수 있거나, 혹은 빛의 양을 나타내는 수치 값일 수 있다.
예시적인 시간 통계 추론 방법은, 센서 출력(예를 들어, 404A-404C)과 관련된 정보를 관측 혹은 수신함으로써, 디바이스가 디바이스의 소정의 비관측된 상태(예를 들어, 402A 또는 402B)에 있는 것과 관련된 확률을 결정할 수 있다. 예를 들어, 알고리즘 시작시, 임의의 관측된 상태 혹은 센서 출력 값 혹은 상태(404C)는 디바이스가 상황 혹은 상태 I(402A)에 현재 있을 수 있음을 일정 확률(P1xP5)로 표시할 수 있다. 도 3에서의 시간 통계 추론 레벨(306)은, 시간 경과에 따라 이러한 계산들을 수행하는 것, 노이즈 및 왜곡들을 필터링하는 것, 그리고 디바이스가 현재 소정의 상태에 있을 수 있는 확률을 결정하는 것을 포함할 수 있다. 계산들은 한번에 하나의 센서에 대해 수행될 수 있거나, 혹은 디바이스가 현재 소정의 상황에 있는지를 확률을 증가시켜 결정하기 위해 다른 센서들에 의해 출력된 정보를 결합 혹은 연결시킬 수 있다.
도 4에서의 확률 P1 내지 P8은 훈련(training)에 의해 결정될 수 있다. 예를 들어, 다수의 실험이 행해질 수 있는바, 여기서 디바이스는 서로 다른 가능한 상태들 혹은 상황들에 배치될 수 있고, 대응하는 센서 출력 값들 혹은 상태들이 기록될 수 있다. 디바이스의 서로 다른 상태들 혹은 상황들에 대해 센서 출력 값들의 평균 및 분산을 결정하기 위해 이러한 기록된 출력 값들에 대한 가우스 분포(Gaussian distribution)가 생성될 수 있다. 이러한 평균 및 분산에 근거하여, 확률이 결정될 수 있거나 할당될 수 있다. 실험으로부터 결정된 가우스 분포를 사용하여, 디바이스가 소정의 상황에 있을 확률은 센서 출력 값이 주어지는 경우 결정 혹은 할당될 수 있다.
IV . 예시적인 시스템 및 컴퓨터 프로그램물( Example Systems and Computer Program Products )
도 5는 본 명세서에서 설명되는 적어도 일부 실시예에 따라 구성된, 컴퓨팅 시스템 내에서 사용되는 예시적인 컴퓨팅 디바이스(500)를 나타낸 기능블록도이다. 컴퓨팅 디바이스는, 개인용 컴퓨터, 모바일 디바이스, 셀률러 폰, 비디오 게임 시스템, 혹은 위성 위치확인 시스템(GPS)일 수 있고, 이것은 클라이언트 디바이스, 서버, 시스템, 이들의 조합으로서 구현될 수 있거나, 혹은 도 1에서 설명된 컴포넌트들의 일부분으로서 구현될 수 있다. 기본 구성(502)에서, 컴퓨팅 디바이스(500)는 하나 이상의 프로세서들(510) 및 시스템 메모리(520)를 포함할 수 있다. 메모리 버스(530)는 프로세서(510)와 시스템 메모리(520) 간의 통신을 위해 사용될 수 있다. 원하는 구성에 따라서, 프로세서(510)는, 마이크로프로세서(microprocessor)(μP), 마이크로제어기(microcontroller)(μC), 디지털 신호 프로세서(DSP), 또는 이들의 임의의 조합을 포함하는(하지만 이러한 것에만 한정되지는 않는) 임의 유형의 프로세서일 수 있다. 메모리 제어기(515)는 또한, 프로세서(510)와 함께 사용될 수 있거나, 또는 일부 구현예들에서, 메모리 제어기(515)는 프로세서(510)의 내부의 일부분일 수 있다.
원하는 구성에 따라, 시스템 메모리(520)는 휘발성 메모리(예를 들어, RAM), 비휘발성 메모리(예를 들어, ROM, 플래시 메모리 등), 또는 이들의 임의의 조합을 포함하는(하지만 이러한 것에만 한정되지는 않는) 임의 유형의 메모리일 수 있다. 시스템 메모리(520)는 하나 이상의 애플리케이션들(522), 그리고 프로그램 데이터(524)를 포함할 수 있다. 애플리케이션(522)은 본 개시내용에 따라, 전자 회로에 입력을 제공하도록 되어 있는 디바이스의 상황 결정 알고리즘(523)을 포함할 수 있다. 프로그램 데이터(524)는 임의 개수의 데이터 유형들과 관련될 수 있는 콘텐츠 정보(525)를 포함할 수 있다. 일부 예시적 실시예들에서, 애플리케이션(522)은 오퍼레이팅 시스템 상에서 프로그램 데이터(524)와 함께 동작하도록 구성될 수 있다.
컴퓨팅 디바이스(500)는 기본 구성(502)과 임의의 디바이스 및 인터페이스 간의 통신을 용이하게 하기 위해 추가적인 인터페이스 및 추가적인 특징 혹은 기능을 가질 수 있다. 예를 들어, 탈착가능 저장 디바이스들(542), 비탈착가능 저장 디바이스들(544), 혹은 이들의 조합을 포함하는 데이터 저장 디바이스들(540)이 제공될 수 있다. 탈착가능 저장 디바이스 및 비탈착가능 저장 디바이스의 예는, 몇 가지 예를 들면, 플렉서블 디스크 드라이브(flexible disk drives) 및 하드-디스크 드라이브(Hard-Disk Drives, HDD)와 같은 자기 디스크 디바이스, 콤팩트 디스크(Compact Disk, CD) 드라이브 또는 디지털 다용도 디스크(Digital Versatile Disk, DVD) 드라이브와 같은 광학 디스크 드라이브, 솔리드 스테이트 드라이브(Solid State Drives, SSD), 그리고 테이프 드라이브(tape drives)를 포함한다. 컴퓨터 저장 매체들은, 휘발성 및 비휘발성의 비일시적 탈착가능 및 비탈착가능 매체들을 포함할 수 있는바, 이들은 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈, 혹은 다른 데이터와 같은 정보의 저장을 위해 임의의 방법 또는 기술로 구현된다.
시스템 메모리(520) 및 저장 디바이스들(540)은 컴퓨터 저장 매체들의 예들이다. 컴퓨터 저장 매체들은 RAM, ROM, EEPROM, 플래시 메모리 혹은 다른 메모리 기술, CD-ROM, 디지털 다용도 디스크(DVD) 혹은 다른 광학 저장소, 자기 카셋트(magnetic cassettes), 자기 테이프(magnetic tape), 자기 디스크 저장소 혹은 다른 자기 저장 디바이스 또는 임의의 다른 매체를 포함할 수 있으며(하지만 이러한 것으로만 한정되는 것은 아님), 이들은 원하는 정보를 저장하기 위해 사용될 수 있고, 컴퓨팅 디바이스(500)에 의해 액세스될 수 있다. 임의의 이러한 컴퓨터 저장 매체들은 디바이스(500)의 일부일 수 있다.
컴퓨팅 디바이스(500)는 또한, 출력 인터페이스들(550) 혹은 통신 인터페이스(570)를 포함할 수 있고, 여기서 출력 인터페이스들(550)은 그래픽 프로세싱 유닛(552)을 포함할 수 있는바, 그래픽 프로세싱 유닛(552)은 하나 이상의 A/V 포트들(554)을 통해 디스플레이 디바이스들(560) 혹은 스피커들과 같은 다양한 외부 디바이스들과 통신하도록 구성될 수 있다. 통신 인터페이스(570)는 네트워크 제어기(572)를 포함할 수 있고, 네트워크 제어기(572)는 하나 이상의 통신 포트들(574)을 통해 하나 이상의 센서들(582) 및 하나 이상의 다른 컴퓨팅 디바이스들(580)과 네트워크 통신을 통한 용이한 통신을 행하도록 구성될 수 있다. 하나 이상의 센서들(582)이 컴퓨팅 디바이스(500) 외부에 있는 것으로 도시되었지만 이들은 디바이스 내부에 있을 수도 있다. 통신 연결은 통신 매체들의 일 예이다. 통신 매체들에는 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들, 혹은 변조된 데이터 신호(예를 들어, 반송파 혹은 다른 전달 메커니즘)로 된 다른 데이터가 수록될 수 있으며, 통신 매체들은 임의의 정보 전달 매체들을 포함한다. 변조된 데이터 신호는 신호의 특성들 중 하나 이상의 특성이 신호에 정보가 인코딩되도록 하는 그러한 방식으로 설정 혹은 변경된 신호일 수 있다. 비한정적인 예로서, 통신 매체들은 유선 네트워크 혹은 다이렉트-유선 연결과 같은 그러한 유선 매체들을 포함할 수 있으며, 아울러 음향 매체, 무선 주파수(Rradio Frequency, RF), 적외선(infrared, IR), 그리고 다른 무선 매체들과 같은 그러한 무선 매체들을 포함할 수 있다.
컴퓨팅 디바이스(500)는 셀 폰(cell phone), 개인 휴대 단말기(PDA), 개인용 미디어 플레이어 디바이스(personal media player device), 무선 웹-와치 디바이스(wireless web-watch device), 개인용 헤드셋 디바이스(personal headset device), 애플리케이션 특정 디바이스(application specific device), 또는 앞서의 기능들 중 어느 하나를 포함하는 하이브리드 디바이스(hybrid device)와 같은 그러한 폼 팩터(form factor)가 작은 휴대용(혹은 모바일) 전자 디바이스의 일부분으로서 구현될 수 있다. 컴퓨팅 디바이스(500)는 또한, 랩탑 컴퓨터(laptop computer) 구성과 비-랩탑 컴퓨터(non-laptop computer) 구성 모두를 포함하는 개인용 컴퓨터로서 구현될 수 있다.
일부 실시예들에서, 본 명세서에서 개시되는 방법들은 머신-판독가능 포맷으로 컴퓨터-판독가능 저장 매체들에(또는 다른 비일시적 매체들 혹은 제조물에) 인코딩되는 컴퓨터 프로그램 명령들로서 구현될 수 있다. 도 6은 본 명세서에서 제시되는 적어도 일부 실시예에 따라 구성된, 컴퓨팅 디바이스 상에서의 컴퓨터 프로세스 실행을 위한 컴퓨터 프로그램을 포함하는 예시적인 컴퓨터 프로그램물(600)의 부분적 개념도를 나타낸 도면이다. 일 실시예에서, 예시적인 컴퓨터 프로그램물(600)은 신호 베어링 매체(signal bearing medium)(601)를 사용하여 제공된다. 신호 베어링 매체(601)는 하나 이상의 프로그램 명령들(602)을 포함할 수 있는바, 이들은 하나 이상의 프로세서들에 의해 실행될 때 도 1 내지 도 5에 관하여 앞서 설명된 기능 혹은 이러한 기능의 일부를 제공할 수 있다. 따라서, 예를 들어, 도 2에 제시된 실시예들을 참조하면, 블록들(202 내지 214) 중 하나 이상의 특징들은 신호 베어링 매체(601)와 관련된 하나 이상의 명령들에 의해 착수될 수 있다. 추가적으로, 도 6에서의 프로그램 명령들(602)은 또한 예시적인 명령들을 설명한다.
일부 예들에서, 신호 베어링 매체(601)는 컴퓨터-판독가능 매체(603)를 포괄할 수 있는바, 컴퓨터-판독가능 매체(603)의 예로는 하드 디스크 드라이브, 콤팩트 디스크(CD), 디지털 다용도 디스크(DVD), 디지털 테이프, 메모리 등과 같은 것이 있지만 이러한 것으로만 한정되는 것은 아니다. 일부 구현예들에서, 신호 베어링 매체(601)는 컴퓨터-기록가능 매체(604)를 포괄할 수 있는바, 컴퓨터-기록가능 매체(604)의 예로는 메모리, 판독/기입(Read/Write, R/W) CD, R/W DVD 등과 같은 것이 있지만 이러한 것으로만 한정되는 것은 아니다. 일부 구현예들에서, 신호 베어링 매체(601)는 통신 매체(605)를 포괄할 수 있는바, 통신 매체(605)의 예로는 디지털 및/또는 아날로그 통신 매체(예를 들어, 광섬유 케이블, 도파관(waveguide), 유선 통신 링크, 무선 통신 링크 등)와 같은 것이 있지만 이러한 것으로만 한정되는 것은 아니다. 따라서, 예컨대, 신호 베어링 매체(601)는 무선 형태의 통신 매체(605)(예를 들어, IEEE 802.11 표준 혹은 다른 전송 프로토콜을 따르는 무선 통신 매체)에 의해 운반될 수 있다.
하나 이상의 프로그래밍 명령들(602)은 예를 들어, 컴퓨터 실행가능 및/또는 로직 구현 명령들일 수 있다. 일부 예들에서, 도 5의 컴퓨팅 디바이스(500)와 같은 컴퓨팅 디바이스는, 컴퓨터 판독가능 매체(603), 컴퓨터 기록가능 매체(604) 및/또는 통신 매체(605) 중 하나 이상에 의해 컴퓨팅 디바이스(500)로 전달되는 프로그래밍 명령들(602)에 응답하여, 다양한 동작, 기능 혹은 행위를 제공하도록 구성될 수 있다.
본 명세서에서 설명되는 구성들은 단지 예시적 목적으로 제공되는 것임을 이해해야 한다. 이처럼, 본 발명의 기술분야에서 숙련된 자들이라면, 이러한 것 대신에 다른 구성 및 다른 요소들(예를 들어, 머신들, 인터페이스들, 기능들, 순서들, 기능들의 그룹화, 등)이 사용될 수 있고 일부 요소들은 원하는 결과에 따라 완전히 생략될 수 있음을 이해할 것이다. 더욱이, 본 명세서에 설명되는 요소들 중 많은 요소들은 개개의 컴포넌트들 혹은 분산형 컴포넌트들로서 구현될 수 있거나 혹은 임의의 적절한 조합으로 그리고 임의의 적절한 위치에 다른 컴포넌트들과 결합되어 구현될 수 있는 기능적 엔티티들이다.
다양한 실시형태들과 실시예들이 본 명세서에서 개시되고 있지만, 다른 실시형태들 및 실시예들이 본 발명의 기술분야에서 숙련된 자들에게 명백하게 될 것이다. 본 명세서에서 개시되는 다양한 실시형태들과 실시예들은 예시적 목적으로 제공되며, 한정의 의미를 갖도록 의도되지 않았고, 그 진정한 범위는 다음의 특허청구범위에 의해 나타나 있으며, 동시에 이러한 특허청구범위와 등가의 자격을 갖는 등가물의 전 범위를 포괄한다. 본 명세서에서 사용되는 용어는 단지 특정 실시예들만을 설명할 목적으로 제공되는바 이러한 것이 본 발명을 한정하도록 의도되지 않았음을 또한 이해해야 한다.

Claims (23)

  1. 디바이스의 상황을 결정하기 위한 방법으로서,
    상기 디바이스에 결합된 일 서브세트의 센서들(a subset of sensors)의 각각의 센서에 대해, 상기 센서에 대한 각각의 전력소비율을 결정하는 단계와;
    상기 서브세트의 센서들의 각각의 센서에 대해, 상기 센서와 관련된 정보가 소정의 상황(given context)을 어느 정도(degree)까지 나타내는지 그 정도를 표시하는 각각의 정확도 점수(accuracy score)를 결정하는 단계와;
    상기 서브세트의 센서들의 각각의 센서에 대해, 상기 센서에 대한 센서 효용 값(sensor utility value)을 결정하는 단계와, 여기서 각각의 센서 효용 값은 상기 센서에 대한 각각의 전력소비율 및 상기 센서에 대한 각각의 정확도 점수에 근거하여 결정되며;
    상기 서브세트의 센서들의 각각의 센서에 대한 상기 센서 효용 값에 근거하여 소정의 센서를 식별하는 단계와;
    상기 소정의 센서에 의해 출력된 정보를 수신하는 단계와;
    상기 소정의 센서에 의해 출력된 정보에 근거하여 상기 디바이스가 현재 상기 소정의 상황에 있을 확률을 결정하는 단계와; 그리고
    상기 확률이 미리결정된 임계치(predetermined threshold)를 초과하는 경우 상기 디바이스는 현재 상기 소정의 상황에 있다고 프로세서에 의해 결정하는 단계를 포함하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 방법.
  2. 제1항에 있어서,
    상기 소정의 센서는 제 1 센서이고, 상기 확률은 제 1 확률이고, 그리고 상기 미리결정된 임계치는 제1의 미리결정된 임계치이며, 상기 방법은,
    상기 제 1 확률이 상기 제1의 미리결정된 임계치를 초과하지 않는 경우,
    (ⅰ) 상기 서브세트의 센서들의 각각의 센서에 대한 상기 센서 효용 값에 근거하여 제 2 센서를 식별하는 단계, (ⅱ) 상기 제 2 센서에 의해 출력된 정보를 수신하는 단계, (ⅲ) 상기 제 2 센서에 의해 출력된 정보에 근거하여 상기 디바이스가 현재 상기 소정의 상황에 있을 제 2 확률을 결정하는 단계, (ⅳ) 상기 제 1 확률과 상기 제 2 확률을 결합하는 단계, 그리고 (ⅴ) 상기 결합된 확률이 제2의 미리결정된 임계치를 초과하는 경우 상기 디바이스는 현재 상기 소정의 상황에 있다고 결정하는 단계를 더 포함하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 방법.
  3. 제2항에 있어서,
    상기 제 1 센서에 대한 각각의 전력소비율은 상기 제 2 센서에 대한 각각의 전력소비율보다 낮은 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 디바이스의 상황을 결정하기 위한 방법.
  4. 제2항에 있어서,
    상기 제 2 확률은 상기 제 1 확률보다 높은 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 방법.
  5. 제2항에 있어서,
    상기 제 1 확률과 상기 제 2 확률을 결합하는 단계는 상기 제 1 확률과 상기 제 2 확률의 가중된 결합(weighted combination)을 결정하는 것을 포함하고, 상기 제 1 확률과 상기 제 2 확률의 상기 가중된 결합과 관련된 가중치들은 상기 디바이스에 대한 입력과 상관(correlation)되어 변하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 방법.
  6. 제5항에 있어서,
    상기 가중치들은 상기 디바이스의 구성(configuration)과 상관되어 변하고, 상기 디바이스의 구성은 상기 디바이스에 결합되는 센서들의 유형 및 개수를 포함하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 방법.
  7. 제1항에 있어서,
    각각의 센서에 대한 상기 센서 효용 값은 상기 센서에 대한 각각의 전력소비율과 상기 센서에 대한 각각의 정확도 점수의 가중된 결합을 포함하고, 상기 각각의 전력소비율과 상기 각각의 정확도 점수의 상기 가중된 결합과 관련된 가중치들은 상기 디바이스에 대한 입력과 상관되어 변하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 방법.
  8. 제1항에 있어서,
    각각의 센서에 대한 각각의 센서 효용 값에 근거하여, 각각의 센서에 대한 각각의 전력소비율에 근거하는 상기 서브세트의 센서들의 순위를 정하는 단계를 더 포함하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 방법.
  9. 제1항에 있어서,
    각각의 정확도 점수는 상기 디바이스에 대한 입력과 상관되어 변하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 방법.
  10. 컴퓨팅 디바이스에 의해 실행가능한 명령들이 저장되어 있는 비일시적 컴퓨터 판독가능 매체(non-transitory computer readable medium)로서, 상기 명령들은 상기 컴퓨팅 디바이스로 하여금 디바이스의 상황을 결정하기 위한 기능들을 수행하도록 하며, 상기 기능들은,
    상기 디바이스에 결합된 일 서브세트의 센서들의 각각의 센서에 대해, 상기 센서에 대한 각각의 전력소비율을 결정하는 것과;
    상기 서브세트의 센서들의 각각의 센서에 대해, 상기 센서와 관련된 정보가 소정의 상황을 어느 정도까지 나타내는지 그 정도를 표시하는 각각의 정확도 점수를 결정하는 것과;
    상기 서브세트의 센서들의 각각의 센서에 대해, 상기 센서에 대한 센서 효용 값을 결정하는 것과, 여기서 각각의 센서 효용 값은 상기 센서에 대한 각각의 전력소비율 및 상기 센서에 대한 각각의 정확도 점수에 근거하여 결정되며;
    상기 서브세트의 센서들의 각각의 센서에 대한 상기 센서 효용 값에 근거하여 소정의 센서를 식별하는 것과;
    상기 소정의 센서에 의해 출력된 정보를 수신하는 것과;
    상기 소정의 센서에 의해 출력된 정보에 근거하여 상기 디바이스가 현재 상기 소정의 상황에 있을 확률을 결정하는 것과; 그리고
    상기 확률이 미리결정된 임계치를 초과하는 경우 상기 디바이스는 현재 상기 소정의 상황에 있다고 결정하는 것을 포함하는 것을 특징으로 비일시적 컴퓨터 판독가능 매체.
  11. 제10항에 있어서,
    상기 소정의 센서는 제 1 센서이고, 상기 확률은 제 1 확률이고, 그리고 상기 미리결정된 임계치는 제1의 미리결정된 임계치이며, 상기 컴퓨팅 디바이스에 의해 실행가능한 상기 명령들은 상기 컴퓨팅 디바이스로 하여금,
    상기 제 1 확률이 상기 제1의 미리결정된 임계치를 초과하지 않는 경우,
    (ⅰ) 상기 서브세트의 센서들의 각각의 센서에 대한 상기 센서 효용 값에 근거하여 제 2 센서를 식별하는 것, (ⅱ) 상기 제 2 센서에 의해 출력된 정보를 수신하는 것, (ⅲ) 상기 제 2 센서에 의해 출력된 정보에 근거하여 상기 디바이스가 현재 상기 소정의 상황에 있을 제 2 확률을 결정하는 것, (ⅳ) 상기 제 1 확률과 상기 제 2 확률을 결합하는 것, 그리고 (ⅴ) 상기 결합된 확률이 제2의 미리결정된 임계치를 초과하는 경우 상기 디바이스는 현재 상기 소정의 상황에 있다고 결정하는 것을 포함하는 기능들을 더 수행하도록 하는 것을 특징으로 비일시적 컴퓨터 판독가능 매체.
  12. 제10항에 있어서,
    상기 컴퓨팅 디바이스에 의해 실행가능한 상기 명령들은 상기 컴퓨팅 디바이스로 하여금,
    사용자가 상기 디바이스를 사용하고 있지 않은 영역을 나타내는 상황에 상기 디바이스가 현재 있는 지를 결정하는 것을 포함하는 기능들을 더 수행하도록 하는 것을 특징으로 비일시적 컴퓨터 판독가능 매체.
  13. 제12항에 있어서,
    상기 컴퓨팅 디바이스에 의해 실행가능한 상기 명령들은 상기 컴퓨팅 디바이스로 하여금,
    상기 사용자가 상기 디바이스를 사용하고 있지 않은 영역을 나타내는 상황에 상기 디바이스가 현재 있다는 결정에 근거하여, 상기 디바이스에 결합된 적어도 하나의 센서를 비활성화(disabling)시키는 것을 포함하는 기능들을 더 수행하도록 하는 것을 특징으로 비일시적 컴퓨터 판독가능 매체.
  14. 제12항에 있어서,
    상기 컴퓨팅 디바이스에 의해 실행가능한 상기 명령들은 상기 컴퓨팅 디바이스로 하여금,
    상기 사용자가 상기 디바이스를 사용하고 있지 않은 영역을 나타내는 상황에 상기 디바이스가 현재 있다는 결정에 근거하여, 상기 디바이스의 기능(functionality)을 감소시키는 것을 포함하는 기능들을 더 수행하도록 하는 것을 특징으로 비일시적 컴퓨터 판독가능 매체.
  15. 제10항에 있어서,
    각각의 센서에 대한 상기 센서 효용 값은 상기 센서에 대한 각각의 전력소비율과 상기 센서에 대한 각각의 정확도 점수의 가중된 결합을 포함하고, 상기 각각의 전력소비율과 상기 각각의 정확도 점수의 상기 가중된 결합과 관련된 가중치들은 상기 디바이스에 대한 입력과 상관되어 변하는 것을 특징으로 비일시적 컴퓨터 판독가능 매체.
  16. 디바이스의 상황을 결정하기 위한 시스템으로서,
    효용 기능 모듈(utility function module)과; 그리고
    상기 효용 기능 모듈과 통신하는 확률 모듈(probability module)을 포함하여 구성되며,
    상기 효용 기능 모듈은, 상기 디바이스에 결합된 일 서브세트의 센서들의 각각의 센서에 대해서, 상기 센서에 대한 각각의 전력소비율과 관련된 정보를 수신함과 아울러 상기 서브세트의 센서들의 각각의 센서에 대해서, 상기 센서와 관련된 정보가 소정의 상황을 어느 정도까지 나타내는지 그 정도를 표시하는 각각의 정확도 점수를 수신하도록 되어 있고,
    상기 효용 기능 모듈은 또한, 상기 서브세트의 센서들의 각각의 센서에 대한 센서 효용 값을 결정하도록 되어 있고, 여기서 각각의 센서 효용 값은 상기 센서에 대한 각각의 전력소비율 및 상기 센서에 대한 각각의 정확도 점수에 근거하여 결정되며,
    상기 확률 모듈은, 상기 서브세트의 센서들의 각각의 센서에 대한 상기 센서 효용 값에 근거하여 소정의 센서를 식별하는 것, 상기 소정의 센서에 의해 출력된 정보를 수신하는 것, 그리고 상기 소정의 센서에 의해 출력된 정보에 근거하여 상기 디바이스가 현재 상기 소정의 상황에 있을 확률을 결정하는 것을 수행하도록 되어 있고, 그리고
    상기 확률 모듈은 상기 확률이 미리결정된 임계치를 초과하는 경우 상기 디바이스는 현재 상기 소정의 상황에 있다고 결정하도록 되어 있는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 시스템.
  17. 제16항에 있어서,
    상기 소정의 센서는 제 1 센서이고, 상기 확률은 제 1 확률이고, 그리고 상기 미리결정된 임계치는 제1의 미리결정된 임계치이며,
    상기 확률 모듈은 또한,
    상기 제 1 확률이 상기 제1의 미리결정된 임계치를 초과하지 않는 경우,
    (ⅰ) 상기 서브세트의 센서들의 각각의 센서에 대한 상기 센서 효용 값에 근거하여 제 2 센서를 식별하는 것, (ⅱ) 상기 제 2 센서에 의해 출력된 정보를 수신하는 것, (ⅲ) 상기 제 2 센서에 의해 출력된 정보에 근거하여 상기 디바이스가 현재 상기 소정의 상황에 있을 제 2 확률을 결정하는 것, (ⅳ) 상기 제 1 확률과 상기 제 2 확률을 결합하는 것, 그리고 (ⅴ) 상기 결합된 확률이 제2의 미리결정된 임계치를 초과하는 경우 상기 디바이스는 현재 상기 소정의 상황에 있다고 결정하는 것을 수행하도록 되어 있는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 시스템.
  18. 제16항에 있어서,
    상기 효용 기능 모듈 및 상기 확률 모듈과 통신하는 시간 통계 추론 모듈(temporal statistical inference module)을 더 포함하며,
    상기 시간 통계 추론 모듈은 상기 소정의 센서에 의해 출력된 정보가 주어질 때 상기 디바이스가 상기 소정의 상황에 있는지와 관련된 확률을 결정하도록 되어 있고, 여기서 확률은 상기 소정의 센서에 의해 출력된 정보가 주어질 때 상기 디바이스가 현재 상기 소정의 상황에 있을 가능성(likelihood)을 포함하는 방출 확률(emission probability)을 적어도 포함하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 시스템.
  19. 제18항에 있어서,
    시간 통계 추론 모듈은 또한, 상기 디바이스가 현재 상기 소정의 상황에 있는지를 확률을 증가시켜 결정하기 위해, 복수의 센서들에 의해 출력된 정보와 상기 복수의 센서들과 관련된 방출 확률들을 결합하도록 되어 있는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 시스템.
  20. 제18항에 있어서,
    상기 확률은 시작 확률(starting probability)과 상기 방출 확률의 곱(multiplication)을 포함하고, 상기 시작 확률은 상기 디바이스가 현재 상기 소정의 상황에 있을 평균 확률(average probability)을 포함하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 시스템.
  21. 제18항에 있어서,
    상기 확률 모듈은 머신 학습 시스템(machine learning system)을 훈련(training)시킴으로써 상기 방출 확률을 결정하고, 상기 훈련시키는 것은,
    상기 디바이스를 상기 소정의 상황에 위치시키는 것과;
    시간 경과에 따라 상기 서브세트의 센서들의 각각의 센서에 의해 출력된 정보를 수신하는 것과; 그리고
    각각의 센서의 출력에 대한 평균(average) 및 분산(variance)을 포함하는 통계 분포(statistical distribution)를 결정하는 것을 포함하는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 시스템.
  22. 제16항에 있어서,
    사용자가 상기 디바이스를 사용하고 있지 않은 영역을 나타내는 상황에 상기 디바이스가 현재 있는 경우, 상기 확률 모듈은, 상기 디바이스에 결합된 적어도 하나의 센서를 비활성화시키도록 되어 있는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 시스템.
  23. 제16항에 있어서,
    사용자가 상기 디바이스를 사용하고 있는 영역을 나타내는 상황에 상기 디바이스가 현재 있는 경우, 상기 확률 모듈은, 상기 디바이스에 결합된 적어도 하나의 센서를 활성화(enable)시키도록 되어 있는 것을 특징으로 하는 디바이스의 상황을 결정하기 위한 시스템.
KR1020147006913A 2011-11-16 2012-04-16 디바이스의 상황을 결정하기 위한 방법 및 시스템 KR101444925B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/297,425 2011-11-16
US13/297,425 US8180583B1 (en) 2011-11-16 2011-11-16 Methods and systems to determine a context of a device
PCT/US2012/033746 WO2013074140A1 (en) 2011-11-16 2012-04-16 Methods and systems to determine a context of a device

Publications (2)

Publication Number Publication Date
KR20140043166A KR20140043166A (ko) 2014-04-08
KR101444925B1 true KR101444925B1 (ko) 2014-09-26

Family

ID=46033288

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147006913A KR101444925B1 (ko) 2011-11-16 2012-04-16 디바이스의 상황을 결정하기 위한 방법 및 시스템

Country Status (7)

Country Link
US (1) US8180583B1 (ko)
KR (1) KR101444925B1 (ko)
CN (1) CN103975538B (ko)
AU (2) AU2012337366B2 (ko)
DE (1) DE112012004787B4 (ko)
GB (1) GB2508124B (ko)
WO (1) WO2013074140A1 (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL398136A1 (pl) * 2012-02-17 2013-08-19 Binartech Spólka Jawna Aksamit Sposób wykrywania kontekstu urzadzenia przenosnego i urzadzenie przenosne z modulem wykrywania kontekstu
WO2014014961A1 (en) 2012-07-17 2014-01-23 Intertrust Technologies Corporation Portable resource management systems and methods
US9659333B2 (en) 2012-10-26 2017-05-23 Disney Enterprises, Inc. Dining experience management
US20140122170A1 (en) * 2012-10-26 2014-05-01 Disney Enterprises, Inc. Detection of guest position
US20140122396A1 (en) * 2012-10-29 2014-05-01 Qualcomm Incorporated Rules engine as a platform for mobile applications
US9740773B2 (en) * 2012-11-02 2017-08-22 Qualcomm Incorporated Context labels for data clusters
US9961639B2 (en) 2013-02-19 2018-05-01 Thomson Licensing Method and apparatus for notifying missed events
US9594411B2 (en) * 2013-02-28 2017-03-14 Qualcomm Incorporated Dynamic power management of context aware services
US9268399B2 (en) * 2013-03-01 2016-02-23 Qualcomm Incorporated Adaptive sensor sampling for power efficient context aware inferences
US9910828B2 (en) * 2013-03-12 2018-03-06 Qualcomm Incorporated Spectrometer for personal context
EP3084737B1 (en) * 2013-12-17 2021-03-17 Tyco Fire Products LP System and method for monitoring and suppressing fire
US10119864B2 (en) 2014-03-11 2018-11-06 Google Technology Holdings LLC Display viewing detection
US20150261315A1 (en) * 2014-03-11 2015-09-17 Google Technology Holdings LLC Display viewing detection
US20160077892A1 (en) * 2014-09-12 2016-03-17 Microsoft Corporation Automatic Sensor Selection Based On Requested Sensor Characteristics
US9412361B1 (en) * 2014-09-30 2016-08-09 Amazon Technologies, Inc. Configuring system operation using image data
CN106292991A (zh) * 2015-06-01 2017-01-04 中兴通讯股份有限公司 一种降低终端设备功耗的方法及装置
US10315649B2 (en) * 2016-11-29 2019-06-11 Ford Global Technologies, Llc Multi-sensor probabilistic object detection and automated braking
US11042174B2 (en) 2017-02-03 2021-06-22 Qualcomm Incorporated System and method for thermal management of a wearable computing device based on proximity to a user
US11301022B2 (en) * 2018-03-06 2022-04-12 Motorola Mobility Llc Methods and electronic devices for determining context while minimizing high-power sensor usage
US10635462B2 (en) * 2018-05-23 2020-04-28 Microsoft Technology Licensing, Llc Skill discovery for computerized personal assistant
US11973894B2 (en) 2019-04-30 2024-04-30 Apple Inc. Utilizing context information with an electronic device
US11438452B1 (en) 2019-08-09 2022-09-06 Apple Inc. Propagating context information in a privacy preserving manner
CN110475023B (zh) * 2019-08-19 2021-04-09 Oppo广东移动通信有限公司 情景数据处理方法、装置、电子设备及计算机可读介质
US11821732B2 (en) * 2021-01-07 2023-11-21 Stmicroelectronics S.R.L. Electronic device including bag detection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6178141B1 (en) 1996-11-20 2001-01-23 Gte Internetworking Incorporated Acoustic counter-sniper system
US20060152382A1 (en) 2003-02-06 2006-07-13 Miska Hiltunen Method and mobile device for non-visually signaling the state of a mobile device
US7162026B2 (en) 2003-07-25 2007-01-09 William J Furnas Alert muting method through indirect contact for portable devices
US7248840B2 (en) 2003-12-16 2007-07-24 Alcon Telecommunications Co., Ltd. Re-positioning reminder for personal portable electronic equipment

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7327245B2 (en) * 2004-11-22 2008-02-05 Microsoft Corporation Sensing and analysis of ambient contextual signals for discriminating between indoor and outdoor locations
US20070161410A1 (en) 2006-01-11 2007-07-12 Inventec Corporation Mobile phone capable of controlling keyboard lock and method therefor
US20080119217A1 (en) 2006-11-16 2008-05-22 Sony Ericsson Mobile Communications Ab Portable communication having accidental key press filtering
US8405505B2 (en) * 2009-05-26 2013-03-26 Qualcomm Incorporated Power management of sensors within a mobile device
US8843181B2 (en) * 2009-05-27 2014-09-23 Qualcomm Incorporated Sensor uses in communication systems
US7873849B2 (en) * 2009-09-02 2011-01-18 Apple Inc. Motion sensor data processing using various power management modes
US20110071759A1 (en) * 2009-09-22 2011-03-24 Texas Instruments Incorporated Performance of a Navigation Receiver Operating in a Power-Save Mode with the Aid of Sensors

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6178141B1 (en) 1996-11-20 2001-01-23 Gte Internetworking Incorporated Acoustic counter-sniper system
US20060152382A1 (en) 2003-02-06 2006-07-13 Miska Hiltunen Method and mobile device for non-visually signaling the state of a mobile device
US7162026B2 (en) 2003-07-25 2007-01-09 William J Furnas Alert muting method through indirect contact for portable devices
US7248840B2 (en) 2003-12-16 2007-07-24 Alcon Telecommunications Co., Ltd. Re-positioning reminder for personal portable electronic equipment

Also Published As

Publication number Publication date
AU2014203479B2 (en) 2015-09-10
GB201404531D0 (en) 2014-04-30
AU2014203479A1 (en) 2014-07-17
AU2012337366B2 (en) 2014-03-27
US8180583B1 (en) 2012-05-15
GB2508124A (en) 2014-05-21
CN103975538A (zh) 2014-08-06
CN103975538B (zh) 2016-05-18
AU2012337366A1 (en) 2014-03-06
DE112012004787T5 (de) 2014-09-18
DE112012004787B4 (de) 2016-03-31
KR20140043166A (ko) 2014-04-08
WO2013074140A1 (en) 2013-05-23
GB2508124B (en) 2014-11-19

Similar Documents

Publication Publication Date Title
KR101444925B1 (ko) 디바이스의 상황을 결정하기 위한 방법 및 시스템
KR101762520B1 (ko) 애플리케이션 작업들로부터 사용자 의도 및 미래의 상호작용 예측
US20140129560A1 (en) Context labels for data clusters
CN105190746B (zh) 用于检测目标关键词的方法和设备
KR101678555B1 (ko) 오디오 환경들의 분류를 위한 시스템들 및 방법들
CN108319657B (zh) 检测强节奏点的方法、存储介质和终端
US20140100835A1 (en) User Behavior Modeling for Intelligent Mobile Companions
CN107608861B (zh) 散热控制方法及装置
KR20160147963A (ko) 적응적 배터리 수명 연장
US20100005045A1 (en) Situation recognizing apparatus, situation recognizing method, and radio terminal apparatus
CN107222914B (zh) 应用控制方法及相关产品
JP2015506141A (ja) モバイルデバイスのコンテキストを検出するための方法、および、コンテキスト検出モジュールを備えたモバイルデバイス
US20140171053A1 (en) Techniques and apparatus to manage power in wireless device
WO2015015047A1 (en) Distance estimation
EP3542243B1 (en) Dynamic energy storage device discharging
JP6208344B2 (ja) コンテキストに応じた電力管理
KR20150091121A (ko) 콘텍스트상의 추론들의 의미론적인 융합
US10679451B2 (en) User alerts based on image capturing by a bill storage device
CN107832848B (zh) 应用管理方法、装置、存储介质及电子设备
JP2022008797A (ja) 端末の電力消費を低減するための方法、および端末
CN114282169A (zh) 一种异常数据的检测方法以及相关装置
Rivero-Rodriguez et al. Semantic labeling of places based on phone usage features using supervised learning
CN110046711B (zh) 一种模型特征剔除方法及装置
US20200073561A1 (en) Adaptive power management of dynamic random access memory
CN116386894A (zh) 一种信息溯源方法、装置、存储介质及电子设备

Legal Events

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

Payment date: 20170911

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180905

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190910

Year of fee payment: 6