KR20220049901A - 패턴을 제공하는 방법 및 이를 지원하는 전자 장치 - Google Patents

패턴을 제공하는 방법 및 이를 지원하는 전자 장치 Download PDF

Info

Publication number
KR20220049901A
KR20220049901A KR1020200133596A KR20200133596A KR20220049901A KR 20220049901 A KR20220049901 A KR 20220049901A KR 1020200133596 A KR1020200133596 A KR 1020200133596A KR 20200133596 A KR20200133596 A KR 20200133596A KR 20220049901 A KR20220049901 A KR 20220049901A
Authority
KR
South Korea
Prior art keywords
pattern
electronic device
parameter
processor
value
Prior art date
Application number
KR1020200133596A
Other languages
English (en)
Inventor
정용섭
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020200133596A priority Critical patent/KR20220049901A/ko
Priority to PCT/KR2021/005389 priority patent/WO2022080615A1/ko
Priority to US17/309,157 priority patent/US11856124B2/en
Publication of KR20220049901A publication Critical patent/KR20220049901A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2823Reporting information sensed by appliance or service execution status of appliance services in a home automation network
    • H04L12/2827Reporting to a device within the home network; wherein the reception of the information reported automatically triggers the execution of a home appliance functionality
    • H04L12/2829Reporting to a device within the home network; wherein the reception of the information reported automatically triggers the execution of a home appliance functionality involving user profiles according to which the execution of a home appliance functionality is automatically triggered
    • 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/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/02Preprocessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 발명의 다양한 실시예들에 따른 전자 장치는, 통신 인터페이스, 메모리, 및 상기 통신 인터페이스 및 상기 메모리와 기능적으로 연결된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 통신 인터페이스를 통하여, 적어도 하나의 외부 전자 장치로부터, 지정된 제 1 시간 동안 발생한 적어도 하나의 제 1 이벤트와 관련된 정보를 수신하고, 상기 적어도 하나의 제 1 이벤트에 대한 정보 중에서 지정된 적어도 하나의 시간 간격 내에 발생한 적어도 하나의 제 2 이벤트에 대한 정보에 기반하여, 제 1 패턴 및 상기 제 1 패턴과 관련된 제 1 파라미터를 획득하고, 상기 통신 인터페이스를 통하여, 상기 적어도 하나의 외부 전자 장치로부터, 지정된 제 2 시간 동안 발생한 적어도 하나의 제 3 이벤트와 관련된 정보를 수신하고, 상기 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여, 상기 제 1 패턴과 관련된 제 2 파라미터를 획득하고, 상기 제 1 패턴, 상기 제 1 파라미터, 및 상기 제 2 파라미터에 기반하여, 제 1 템플릿을 생성하고, 및 상기 통신 인터페이스를 통하여, 서버로, 상기 제 1 템플릿에 대한 정보를 전송하도록 설정될 수 있다.

Description

패턴을 제공하는 방법 및 이를 지원하는 전자 장치{METHOD FOR PROVIDING PATTERN AND ELECTRONIC DEVICE FOR SUPPORTING THE SAME}
본 발명의 다양한 실시예들은, 패턴을 제공하는 방법 및 이를 지원하는 전자 장치에 관한 것이다.
스마트 폰(smart phone) 또는 태블릿 PC(tablet personal computer)와 같은 휴대 전자 장치의 급속한 확산에 따라 전자 장치를 통해 제공되는 서비스 및 부가 기능들이 점차 고도화되고 있다. 통신 서비스 제공자 또는 전자 장치 제조사들은 전자 장치의 효용 가치를 높이고 다양한 사용자의 욕구를 만족시키기 위하여 전자 장치에 다양한 구성 요소들을 탑재하고 관련 기술을 개발하는데 노력을 기울이고 있다.
최근, 현실 세계의 사물들(thinks)을 네트워크로 연결하고, 휴대 전자 장치를 이용하여 사물들로부터 상황 정보를 수집하고 주위 환경을 제어하는 IoT(internet of things) 기술에 대한 관심이 증가하고 있다.
IoT 기술은 가정을 비롯하여 자동차, 사무실, 또는 공장과 같이 다양한 환경에 적용될 수 있으며, 사용자로 하여금 복수의 사물들로부터 환경 정보를 수집하고 수집된 정보를 분석하여 기기들을 제어할 수 있도록 할 수 있다.
종래 기술에서, 전자 장치(예: 서버)는, 댁(home) 내에 위치하는 적어도 하나의 전자 장치로부터 사용자와 관련된 데이터를 수집할 수 있다. 전자 장치는 수집된 데이터에 기반하여 사용자의 패턴을 결정하고, 결정된 사용자의 패턴과 관련된 설정(예: 상기 적어도 하나의 전자 장치의 동작과 관련된 설정)을 사용자에게 제공(예: 추천)할 수 있다. 예를 들어, 전자 장치는, 지정된 기간 동안(예: 약 1 주일) 사용자와 관련된 데이터를 수집할 수 있다. 전자 장치는 수집된 데이터에 기반하여, 지정된 시간(예: 약 오후 6시)에 사용자(예: 사용자의 전자 장치)가 댁 외로부터 댁 내로 진입하면 지정된 시간 내에(예: 약 5분 내에) 댁 내의 전등 스위치를 턴-온(turn-on)하는, 사용자의 패턴을 결정할 수 있다. 전자 장치는 상기 지정된 시간(예: 약 오후 6시)에 사용자가 댁 외로부터 댁 내로 진입하면 자동적으로 전등 스위치를 턴-온하도록 하는 설정을 추천할 수 있다.
하지만, 전자 장치(예: 서버)가 특정 사용자와 관련된 패턴을 결정하고, 결정된 패턴을 특정 사용자에게만 제공하고 있어, 전자 장치가 제공하는 패턴은 제한적일 수 있다.
본 발명의 다양한 실시예들은, 다수의 사용자들(예: 다수의 사용자들의 전자 장치들)로부터 획득된 패턴과 관련된 데이터에 기반하여, 다수의 사용자들에게 적용 가능한 패턴을 제공(예: 추천)할 수 있는, 패턴을 제공하는 방법 및 이를 지원하는 전자 장치에 관한 것이다.
본 발명이 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 다양한 실시예들에 따른 전자 장치는, 통신 인터페이스, 메모리, 및 상기 통신 인터페이스 및 상기 메모리와 기능적으로 연결된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 통신 인터페이스를 통하여, 적어도 하나의 외부 전자 장치로부터, 지정된 제 1 시간 동안 발생한 적어도 하나의 제 1 이벤트와 관련된 정보를 수신하고, 상기 적어도 하나의 제 1 이벤트에 대한 정보 중에서 지정된 적어도 하나의 시간 간격 내에 발생한 적어도 하나의 제 2 이벤트에 대한 정보에 기반하여, 제 1 패턴 및 상기 제 1 패턴과 관련된 제 1 파라미터를 획득하고, 상기 통신 인터페이스를 통하여, 상기 적어도 하나의 외부 전자 장치로부터, 지정된 제 2 시간 동안 발생한 적어도 하나의 제 3 이벤트와 관련된 정보를 수신하고, 상기 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여, 상기 제 1 패턴과 관련된 제 2 파라미터를 획득하고, 상기 제 1 패턴, 상기 제 1 파라미터, 및 상기 제 2 파라미터에 기반하여, 제 1 템플릿을 생성하고, 및 상기 통신 인터페이스를 통하여, 서버로, 상기 제 1 템플릿에 대한 정보를 전송하도록 설정될 수 있다.
본 발명의 다양한 실시예들에 따른 서버는, 통신 인터페이스, 메모리, 및 상기 통신 인터페이스 및 상기 메모리와 기능적으로 연결된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 통신 인터페이스를 통하여, 복수의 외부 전자 장치들로부터, 제 1 패턴과 관련된 제 1 템플릿에 대한 정보를 수신하고, 상기 제 1 템플릿에 대하여, 지정된 조건을 만족하는, 상기 제 1 패턴과 관련된 지정된 시간 간격 및 임계 파라미터의 값을 결정하고, 및 상기 통신 인터페이스를 통하여, 상기 복수의 외부 전자 장치들로, 상기 제 1 패턴, 상기 지정된 시간 간격, 및 상기 임계 파라미터의 값을 전송하도록 설정될 수 있다.
본 발명의 다양한 실시예들에 따른 전자 장치는, 통신 인터페이스, 메모리, 및 상기 통신 인터페이스 및 상기 메모리와 기능적으로 연결된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 상기 통신 인터페이스를 통하여, 서버로부터, 제 1 패턴, 상기 제 1 패턴과 관련된 지정된 시간 간격, 및 상기 제 1 패턴과 관련된 임계 파라미터의 값을 수신하고, 상기 통신 인터페이스를 통하여, 상기 적어도 하나의 외부 전자 장치로부터, 지정된 제 1 시간 동안 발생한, 적어도 하나의 제 1 이벤트와 관련된 정보를 수신하고, 상기 적어도 하나의 제 1 이벤트 중에서 상기 지정된 시간 간격 내에 발생한 적어도 하나의 제 2 이벤트에 기반하여, 상기 제 1 패턴에 대응하는 제 2 패턴과 관련된 제 1 파라미터를 획득하고, 및 상기 제 1 파라미터의 값이 상기 임계 파라미터의 값 이상인 경우, 상기 제 2 패턴을 제공하도록 설정될 수 있다.
본 발명의 다양한 실시예에 따른 패턴을 제공하는 방법 및 이를 지원하기 위한 전자 장치는, 다수의 사용자들(예: 다수의 사용자들의 전자 장치들)로부터 획득된 패턴과 관련된 데이터에 기반하여, 다수의 사용자들에게 적용 가능한 패턴을 제공(예: 추천)할 수 있다.
도 1은 일 실시예에 따른 IoT(internet of things) 시스템을 도시한다.
도 2는, 다양한 실시예들에 따른, 전자 장치의 블록 도면이다.
도 3은, 다양한 실시예들에 따른, 서버의 블록 도면이다.
도 4는, 다양한 실시예들에 따른, 전자 장치가 템플릿을 제공하는 방법을 설명하는 흐름도이다.
도 5는, 다양한 실시예들에 따른, 제 1 패턴을 획득하는 방법을 설명하는 흐름도이다.
도 6은, 다양한 실시예들에 따른, 서버가 임계 파라미터를 결정하는 방법을 설명하는 흐름도이다.
도 7은, 다양한 실시예들에 따른, 제 1 패턴과 관련된 지정된 시간 간격 및 임계 파라미터를 결정하는 방법을 설명하는 흐름도이다.
도 8은, 다양한 실시예들에 따른, 전자 장치가 패턴을 제공하는 방법을 제공하는 방법을 설명하는 흐름도이다.
도 1은 일 실시예에 따른 IoT(internet of things) 시스템(100)을 도시한다.
한편, 도 1의 구성 요소 중 적어도 일부는 생략될 수도 있으며, 도시되지 않은 구성 요소가 더 포함되도록 구현될 수도 있다.
도 1을 참조하면, 일 실시예에 따른 IoT 시스템(100)은, 데이터 네트워크(116 또는 146)에 연결 가능한 복수의 전자 장치들을 포함한다. 예를 들어, IoT 시스템(100)은 제 1 IoT 서버(110), 제 1 노드(node)(120), 보이스 어시스턴트(voice assistance) 서버(130), 제 2 IoT 서버(140), 제 2 노드(150), 또는 디바이스들(121,122,123,124,125,136,137,151,152,153) 중 적어도 하나를 포함할 수 있다.
일 실시예에 따라서, 제 1 IoT 서버(110)는, 통신 인터페이스(111), 프로세서(112), 또는 저장부(113) 중 적어도 하나를 포함할 수 있다. 제 2 IoT 서버(140)는, 통신 인터페이스(141), 프로세서(142), 또는 저장부(143) 중 적어도 하나를 포함할 수 있다. 본 문서에서의 “IoT 서버”는, 예를 들어 데이터 네트워크(예: 데이터 네트워크(116) 또는 데이터 네트워크(146))에 기반하여, 중계 디바이스(예: 제 1 노드(120) 또는 제 2 노드(150))를 통하거나, 또는 중계 디바이스 없이 직접적으로(directly), 하나 또는 그 이상의 디바이스들(예: 디바이스들(121,122,123,124,125,151,152,153))을 원격으로 제어 및/또는 모니터링할 수 있다. 여기에서의 “디바이스”는, 예를 들어 가택, 사무실, 공장, 빌딩, 외부 지점, 또는 다른 타입의 부지들과 같은 로컬 환경 내에 배치되는(또는, 위치하는) 센서, 가전, 사무용 전자 디바이스, 또는 공정 수행을 위한 디바이스로, 그 종류에는 제한이 없다. 제어 명령을 수신하여 제어 명령에 대응하는 동작을 수행하는 디바이스를 “타겟 디바이스”로 명명할 수 있다. IoT 서버는, 복수의 디바이스들 중 타겟 디바이스를 선택하고 제어 명령을 제공하는 점에서, 중앙 서버(central server)로 명명될 수도 있다.
일 실시예에 따라서, 제 1 IoT 서버(110)는, 데이터 네트워크(116)를 통하여 디바이스들(121,122,123)과 통신을 수행할 수 있다. 데이터 네트워크(116)는, 예를 들어 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신을 위한 네트워크를 의미할 수 있으며, 또는 셀룰러 네트워크를 포함할 수도 있다.
일 실시예에 따라서, 제 1 IoT 서버(110)는, 통신 인터페이스(111)를 통하여 데이터 네트워크(116)에 연결될 수 있다. 통신 인터페이스(111)는, 데이터 네트워크(116)의 통신을 지원하기 위한 통신 디바이스(또는, 통신 모듈)를 포함할 수 있으며, 하나의 구성 요소(예: 단일 칩)로 통합되거나, 또는 별도의 복수의 구성 요소들(예: 복수 칩들)로 구현될 수 있다. 제 1 IoT 서버(110)는, 제 1 노드(120)를 통하여 디바이스들(121,122,123)와 통신을 수행할 수 있다. 제 1 노드(120)는, 제 1 IoT 서버(110)로부터의 데이터를 데이터 네트워크(116)를 통하여 수신하고, 수신한 데이터를 디바이스들(121,122,123) 중 적어도 일부로 송신할 수 있다. 또는, 제 1 노드(120)는, 디바이스들(121,122,123) 중 적어도 일부로부터 데이터를 수신하고, 수신한 데이터를 데이터 네트워크(116)를 통하여 제 1 IoT 서버(110)로 송신할 수 있다. 제 1 노드(120)는, 데이터 네트워크(116) 및 디바이스들(121,122,123) 사이의 브릿지(bridge)로서 기능할 수 있다. 한편, 도 1에서는 제 1 노드(120)가 하나인 것과 같이 도시되어 있지만 이는 단순히 예시적인 것으로, 그 숫자에는 제한이 없다.
본 문서에서의 “노드”는, 엣지 컴퓨팅 시스템(edge computing system)일 수 있거나, 또는 허브(hub) 디바이스일 수 있다. 일 실시예에 따라서, 제 1 노드(120)는, 데이터 네트워크(116)의 유선 및/또는 무선의 통신을 지원하며, 아울러 디바이스들(121,122,123)과의 유선 및/또는 무선의 통신을 지원할 수 있다. 예를 들어, 제 1 노드(120)는, 블루투스, Wi-Fi, Wi-Fi direct, Z-wave, Zig-bee, INSETEON, X10 등) 또는 IrDA(infrared data association 중 적어도 하나와 같은 근거리 통신 네트워크를 통하여 디바이스들(121,122,123)과 연결될 수 있으나, 통신 종류에는 제한이 없다. 제 1 노드(120)는, 예를 들어 가택, 사무실, 공장, 빌딩, 외부 지점, 또는 다른 타입의 부지들과 같은 환경 내에 배치(또는, 위치)될 수 있다. 이에 따라, 디바이스들(121,122,123)은, 제 1 IoT 서버(110)에 의하여 제공되는 서비스에 의하여 모니터링 및/또는 제어될 수 있으며, 디바이스들(121,122,123)은 제 1 IoT 서버(110)로의 직접 연결을 위한 완전한 네트워크 통신(예: 인터넷 통신)의 캐퍼빌리티(capability)를 갖출 것이 요구되지 않을 수 있다. 디바이스들(121,122,123)은, 예를 들어 전등 스위치, 근접 센서, 온도 센서 등으로 가택 환경 내의 전자 장치로 구현된 것과 같이 도시되었지만, 이는 예시적인 것으로 제한은 없다.
일 실시예에 따라서, 제 1 IoT 서버(110)는, 디바이스들(124,125)과의 직접 통신(direct communication)을 지원할 수도 있다. 여기에서, “직접 통신”은, 예를 들어 제 1 노드(120)와 같은 중계 디바이스를 통하지 않은 통신으로, 예를 들어 셀룰러 통신 네트워크 및/또는 데이터 네트워크를 통한 통신을 의미할 수 있다.
일 실시예에 따라서, 제 1 IoT 서버(110)는, 디바이스들(121,122,123,124,125) 중 적어도 일부로 제어 명령을 송신할 수 있다. 여기에서, “제어 명령”은, 제어 가능한 디바이스가 특정 동작을 수행하도록 야기하는 데이터를 의미할 수 있으며, 특정 동작은 디바이스에 의하여 수행되는 동작으로, 정보의 출력, 정보의 센싱, 정보의 보고, 정보의 관리(예: 삭제, 또는 생성)를 포함할 수 있으며, 그 종류에는 제한이 없다. 예를 들어, 프로세서(112)는, 외부(예: 보이스 어시스턴트 서버(130), 제 2 IoT 서버(140), 외부 시스템(160), 또는 디바이스들(121,122,123,124,125) 중 적어도 일부)로부터 제어 명령을 생성하기 위한 정보(또는, 요청)를 획득하고, 획득한 정보에 기반하여 제어 명령을 생성할 수 있다. 또는, 프로세서(112)는, 디바이스들(121,122,123,124,125) 중 적어도 일부의 모니터링 결과가 지정된 조건을 만족함에 기반하여 제어 명령을 생성할 수 있다. 프로세서(112)는, 제어 명령을, 타겟 디바이스로 송신하도록 통신 인터페이스(111)를 제어할 수 있다.
일 실시예에 따라서, 프로세서(112), 또는 프로세서(132), 프로세서(142)는, CPU(central processing unit), DSP(digital signal processor), AP(application processor), CP(communication processor) 등과 같은 범용 프로세서, GPU(graphical processing unit), VPU(vision processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU(neural processing unit)와 같은 인공 지능 전용 프로세서 중 하나 이상의 조합으로 구현될 수 있다. 상술한 처리 유닛은 단순히 예시적인 것으로, 프로세서(112)는, 예를 들어 메모리(113)에 저장된 인스트럭션을 실행하여, 실행된 결과를 출력할 수 있는 연산 수단이라면 제한이 없음을 당업자는 이해할 것이다.
일 실시예에 따라서, 프로세서(112)는, API(114)에 기반하여 웹-기반 인터페이스를 구성하거나, 또는 제 1 IoT 서버(110)에 의하여 관리되는 리소스(resource)를 외부에 노출시킬 수 있다. 웹-기반 인터페이스는, 예를 들어 제 1 IoT 서버(110) 및 외부 웹 서비스 사이의 통신을 지원할 수 있다. 프로세서(112)는, 예를 들어 외부 시스템(160)으로 하여금 디바이스들(121,122,123)의 제어 및/또는 억세스를 허용할 수도 있다. 외부 시스템(160)은, 예를 들어 시스템(100)과 연관이 없거나, 또는 일부가 아닌 독립적인 시스템일 수 있다. 외부 시스템(160)은, 예를 들어 외부 서버이거나, 또는 웹 사이트일 수 있다. 하지만, 외부 시스템(160)으로부터의 디바이스들(121,122,123), 또는 제 1 IoT 서버(110)의 리소스로의 억세스에 대한 보안이 요구된다. 일 실시예에 따라서, 프로세서(112)는, 자동화 어플리케이션은 API(114)에 기반한 API 엔드 포인트(예: URL(universal resource locator))을 외부에 노출할 수 있다. 상술한 바에 따라서, 제 1 IoT 서버(110)는, 제어 명령을 디바이스들(121,122,123) 중 타겟 디바이스에게 전달할 수 있다. 한편, 제 2 IoT 서버(140)의 통신 인터페이스(141), 프로세서(142), 저장부(143)의 API(144), 데이터베이스(145)에 대한 설명은, 제 1 IoT 서버(110)의 통신 인터페이스(111), 프로세서(112), 저장부(113)의 API(114), 데이터베이스(115)에 대한 설명과 실질적으로 동일할 수 있다. 아울러, 제 2 노드(150)에 대한 설명은, 제 1 노드(120)에 대한 설명과 실질적으로 동일할 수 있다. 제 2 IoT 서버(140)는, 제어 명령을 디바이스들(151,152,153) 중 타겟 디바이스에게 전달할 수 있다. 제 1 IoT 서버(110) 및 제 2 IoT 서버(140)는, 하나의 실시예에서는 동일한 서비스 제공자에 의하여 운영될 수 있으나, 다른 실시예에서는 상이한 서비스 제공자들에 의하여 각각 운영될 수도 있다.
일 실시예에 따라서, 보이스 어시스턴트 서버(130)는, 데이터 네트워크(116)를 통하여 제 1 IoT 서버(110)와 데이터를 송수신할 수 있다. 일 실시예에 따른 보이스 어시스턴트 서버(130)는, 통신 인터페이스(131), 프로세서(132), 또는 저장부(133) 중 적어도 하나를 포함할 수 있다. 통신 인터페이스(131)는, 데이터 네트워크(미도시) 및/또는 셀룰러 네트워크(미도시)를 통하여 스마트 폰(136) 또는 AI 스피커(137)와 통신을 수행할 수 있다. 스마트 폰(136) 또는 AI 스피커(137)는 마이크를 포함할 수 있으며, 사용자 음성(user voice)을 획득하여 음성 신호로 변환하여, 음성 신호를 보이스 어시스턴트 서버(130)로 송신할 수 있다. 프로세서(132)는, 통신 인터페이스(131)를 통하여 스마트 폰(136) 또는 AI 스피커(137)로부터 음성 신호를 수신할 수 있다. 프로세서(132)는, 수신한 음성 신호를 저장된 모델(134)에 기반하여 처리할 수 있다. 프로세서(132)는, 데이터베이스(135)에 저장된 정보에 기반하여, 처리 결과를 이용하여 제어 명령을 생성(또는, 확인)할 수 있다. 일 실시예에 따라서, 저장부(113,133,143)는, 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 비 일시적(non-transitory) 저장매체를 포함할 수 있으며, 그 종류에는 제한이 없다.
도 2는, 다양한 실시예들에 따른, 전자 장치(200)의 블록 도면이다.
도 2를 참조하면, 일 실시예에서, 전자 장치(200)는, 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 전자 장치일 수 있다. 일 실시예에서, 전자 장치(200)는, 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 컴퓨팅 능력(computing capability)을 가진 전자 장치일 수 있다. 예를 들어, 전자 장치(200)는, 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 성능을 가진 프로세서(240) 및 메모리(230)를 포함하는 전자 장치일 수 있다.
일 실시예에서, 전자 장치(200)는, 패턴을 제공하는 서비스에 등록된 전자 장치일 수 있다. 예를 들어, 적어도 하나의 전자 장치(예: 도 1의 디바이스들(121,122,123,124,125) 중 적어도 일부)는 패턴을 제공하는 서비스(또는 댁 내에 위치하는 적어도 하나의 전자 장치를 통합적으로 또는 개별적으로 관리(또는 제어)할 수 있는 서비스)에 등록될 수 있다. 전자 장치(200)는, 상기 등록된 적어도 하나의 전자 장치 중에서, 사용자 입력에 기반하여, 패턴을 제공하는 동작의 적어도 일부를 수행할 전자 장치로서, 지정될 수 있다.
일 실시예에서, 전자 장치(200)는, 댁 내에 위치하는 적어도 하나의 외부 전자 장치와 통신 연결되고, 통신 연결을 이용하여, 댁 내에 위치하는 적어도 하나의 외부 전자 장치의 동작을 제어하는 전자 장치일 수 있다. 예를 들어, 전자 장치(200)는, 도 1의 제 1 노드(120) 또는 제 2 노드(120)일 수 있다.
일 실시예에서, 전자 장치(200)는, 패턴을 제공하는 서비스를 제공하는 서버(예: 클라우드(cloud) 서버)와 패턴을 제공하는 동작을 분산 처리(distributed processing)할 수 있는, 엣지 컴퓨팅 장치(edge computing device)일 수 있다.
일 실시예에서, 전자 장치(200)는, 통신 인터페이스(210), 디스플레이(220), 메모리(230), 및 프로세서(240)를 포함할 수 있다.
일 실시예에서, 통신 인터페이스(210)는, 전자 장치(200)를, 적어도 하나의 외부 전자 장치 및 패턴을 제공하는 서비스를 제공하는 서버(300)(이하, '서버'로 지칭함)와 통신 연결할 수 있다.
일 실시예에서, 통신 인터페이스(210)는, 전자 장치(200)를 무선 또는 유선으로 적어도 하나의 외부 전자 장치와 통신 연결할 수 있다. 통신 인터페이스(210)는, 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치로부터, 적어도 하나의 외부 전자 장치에서 발생한 이벤트(event)에 대한 정보를 수신할 수 있다.
일 실시예에서, 통신 인터페이스(210)는, 전자 장치(200)와 통신 연결된 센서로부터, 댁 내의 상태(또는 댁 내의 상태 변경)에 대한 정보를 수신할 수 있다. 예를 들어, 통신 인터페이스(210)는, 전자 장치(200)와 통신 연결된 존재 감지 센서로부터, 댁 외부로부터 댁 내로 사용자가 진입함(예: 댁 내로 사용자가 들어옴 또는 댁 내에 사용자가 위치함)을 나타내는 정보를 수신할 수 있다. 다른 예를 들어, 통신 인터페이스(210)는, 전자 장치(200)와 통신 연결된 온도 센서로부터, 댁 내의 현재 온도(또는 온도의 변화)에 대한 정보를 수신할 수 있다. 다만, 통신 인터페이스(210)가 전자 장치(200)와 통신 연결된 센서로부터 수신하는 댁 내의 상태에 대한 정보는 전술한 예시에 제한되지 않는다.
일 실시예에서, 통신 인터페이스(210)는, 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치로부터, 적어도 하나의 외부 전자 장치의 동작(또는 적어도 하나의 외부 전자 장치의 동작 변경)에 대한 정보를 수신할 수 있다. 예를 들어, 통신 인터페이스(210)는, 전자 장치(200)와 통신 연결된 TV(텔레비전)로부터, TV가 턴-온(turn-on)(또는 턴-오프(turn-off))됨을 나타내는 정보를 수신할 수 있다. 다만, 통신 인터페이스(210)가 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치로부터 수신하는, 적어도 하나의 외부 전자 장치의 동작에 대한 정보는 전술한 예시에 제한되지 않는다.
일 실시예에서, 통신 인터페이스(210)가 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치로부터 수신하는 이벤트에 대한 정보는, 이벤트와 관련된 정보(예: 댁 내의 상태에 대한 정보 또는 적어도 하나의 외부 전자 장치의 동작에 대한 정보) 외에, 적어도 하나의 외부 전자 장치에서 이벤트가 발생한 시간에 대한 정보를 포함할 수 있다. 예를 들어, 이벤트에 대한 정보는, 전자 장치(200)와 통신 연결된 TV가 턴-온됨을 나타내는 정보와 함께 TV가 턴-온된 시간에 대한 정보를 포함할 수 있다.
일 실시예에서, 통신 인터페이스(210)는, 전자 장치(200)와 서버를 통신 연결할 수 있다. 예를 들어, 통신 인터페이스(210)는, 후술할 패턴과 관련된 템플릿(template)을 서버(300)로 전송할 수 있다. 통신 인터페이스(210)는, 서버(300)로부터, 후술할 패턴과 관련된 임계 파라미터를 포함하는 정보를 수신할 수 있다.
일 실시예에서, 디스플레이(220)는, 전자 장치(200)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이(220)는, 예를 들어, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시예에서, 디스플레이(220)는, 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
일 실시예에서, 디스플레이(220)는, 패턴과 관련된 정보를 제공할 수 있다. 예를 들어, 디스플레이(220)는, 전자 장치(200)가 제공된(예: 추천된) 패턴을 설정할지 할지 여부를 사용자가 선택하도록 하는 정보를 표시할 수 있다. 다만, 디스플레이(220)가 제공할 수 있는 정보는 전술한 예시에 제한되지 않는다.
일 실시예에서, 메모리(230)는, 전자 장치(200)의 적어도 하나의 구성요소(예: 프로세서(240))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(230)는, 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다.
일 실시예에서, 메모리(230)는, 패턴을 제공하는 동작의 적어도 일부를 수행하는 동안 획득된 정보를 저장할 수 있다.
일 실시예에서, 프로세서(240)는, 예를 들면, 소프트웨어(예: 프로그램)를 실행하여 프로세서(240)에 연결된 전자 장치(200)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에서, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(240)는 다른 구성요소(예: 통신 인터페이스(210))로부터 수신된 명령 또는 데이터를 휘발성 메모리에 저장하고, 휘발성 메모리에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.
일 실시예에서, 프로세서(240)는 메인 프로세서(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서를 포함할 수 있다.
일 실시예에 따르면, 보조 프로세서(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능이 수행되는 전자 장치(200) 자체에서 수행될 수 있고, 별도의 서버(예: 서버)를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
일 실시예에서, 프로세서(240)는, 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있다. 프로세서(240)가 수행하는 패턴을 제공하는 동작의 적어도 일부에 대하여 도 4 내지 도 8을 참조하여 상세히 후술하도록 한다.
일 실시예에서, 도 2에서는, 전자 장치(200)가 통신 인터페이스(210), 디스플레이(220), 메모리(230), 및 프로세서(240)를 포함하는 것으로 예시하고 있지만 이에 제한되지 않는다. 예를 들어, 전자 장치(200)는, 도 2에 도시된 구성 중 일부(예: 디스플레이(220))를 포함하지 않을 수 있으며, 도 2에 도시되지 않은 구성(예: 댁 내의 상태를 검출하기 위한 센서)을 더 포함할 수 있다.
도 3은, 다양한 실시예들에 따른, 서버(300)의 블록 도면이다.
도 3을 참조하면, 일 실시예에서, 서버(300)는, 패턴을 제공하는 서비스를 제공할 수 있는 서버일 수 있다.
일 실시예에서, 서버(300)는, 도 1의 제 1 IoT 서버(110), 보이스 어시스턴트 서버(130), 또는 제 2 IoT 서버(140)에 포함될 수 있다. 일 실시예에서, 서버(300)는, 도 1의 제 1 IoT 서버(110), 보이스 어시스턴트(voice assistance) 서버(130), 및 제 2 IoT 서버(140)와 독립된 서버일 수 있다.
일 실시예에서, 서버(300)는, 통신 인터페이스(310), 메모리(320), 및 프로세서(330)를 포함할 수 있다.
일 실시예에서, 통신 인터페이스(310)는, 서버(300)와 복수의 외부 전자 장치들을 통신 연결할 수 있다. 예를 들어, 통신 인터페이스(310)는, 서버(300)를, 다양한 통신 방식들 중 적어도 하나를 통하여, 복수의 외부 전자 장치와 통신 연결할 수 있다.
일 실시예에서, 통신 인터페이스(310)는, 패턴을 제공하는 서비스에 등록된 복수의 외부 전자 장치들로부터, 패턴과 관련된 템플릿을 수신할 수 있다. 일 실시예에서, 통신 인터페이스(310)는, 패턴과 관련된 임계 파라미터를 포함하는 정보를 복수의 외부 전자 장치들로 전송할 수 있다.
일 실시예에서, 메모리(320)는, 서버(300)의 적어도 하나의 구성요소(예: 프로세서(330))에 의해 사용되는 다양한 데이터를 저장할 수 있다.
일 실시예에서, 메모리(320)는, 패턴을 제공하는 동작의 적어도 일부를 수행하는 동안 획득된 정보를 저장할 수 있다.
일 실시예에서, 프로세서(330)는, 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있다. 일 실시예에서, 프로세서(330)는, 복수의 외부 전자 장치들로부터 수신된 패턴과 관련된 템플릿에 기반하여, 패턴과 관련된 임계 파라미터를 결정할 수 있다. 예를 들어, 프로세서(330)는, 인공 신경망을 이용하여, 복수의 외부 전자 장치들로부터 수신된 패턴과 관련된 템플릿에 기반하여, 패턴과 관련된 임계 파라미터를 결정할 수 있다. 다른 예를 들어, 프로세서(330)는, 지정된 알고리즘을 이용하여, 복수의 외부 전자 장치들로부터 수신된 패턴과 관련된 템플릿에 기반하여, 패턴과 관련된 임계 파라미터를 결정할 수 있다. 프로세서(330)가 복수의 외부 전자 장치들로부터 수신된 패턴과 관련된 템플릿에 기반하여, 패턴과 관련된 임계 파라미터를 결정하는 방법에 대하여 상세히 후술하도록 한다.
도 3에서는, 서버(300)가 통신 인터페이스(310), 메모리(320), 및 프로세서(330)를 포함하는 것으로 예시하고 있지만 이에 제한되지 않으며, 서버(300)는 다양한 구성(예: 입력 장치, 디스플레이)을 더 포함할 수 있다.
도 4는, 다양한 실시예들에 따른, 전자 장치(200)가 템플릿을 제공하는 방법을 설명하는 흐름도(400)이다.
도 4를 참조하면, 동작 401에서, 일 실시예에서, 프로세서(240)는, 통신 인터페이스(210)를 통하여, 적어도 하나의 외부 전자 장치로부터, 지정된 제 1 시간 동안 발생한 적어도 하나의 제 1 이벤트와 관련된 정보를 수신할 수 있다.
일 실시예에서, 전자 장치(200) 및 적어도 하나의 외부 전자 장치는, 패턴을 제공하는 서비스에 등록된 전자 장치들일 수 있다. 예를 들어, 전자 장치(200) 및 적어도 하나의 외부 전자 장치는 패턴을 제공하는 서비스(또는 댁 내에 위치하는 적어도 하나의 전자 장치를 통합적으로 또는 개별적으로 관리(또는 제어)할 수 있는 서비스)에 등록된 전자 장치들일 수 있다.
일 실시예에서, 제 1 시간은, 전자 장치(200)가 적어도 하나의 외부 전자 장치로부터, 적어도 하나의 외부 전자 장치에서 발생하는 적어도 하나의 제 1 이벤트를 수집하는 시간(또는 기간)으로 지정된 시간일 수 있다. 예를 들어, 전자 장치(200)는, 2 주 동안, 통신 인터페이스(210)를 통하여, 적어도 하나의 외부 전자 장치로부터, 적어도 하나의 외부 전자 장치에서 발생한 적어도 하나의 제 1 이벤트를 수집할 수 있다.
일 실시예에서, 적어도 하나의 제 1 이벤트에 대한 정보는, 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치(예: 센서)로부터 수신되는, 댁 내의 상태(또는 댁 내의 상태 변경)에 대한 정보 또는 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치(예: 가전 기기)로부터 수신되는, 적어도 하나의 외부 전자 장치의 동작(또는 적어도 하나의 외부 전자 장치의 동작 변경)에 대한 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 적어도 하나의 제 1 이벤트에 대한 정보는, 적어도 하나의 외부 전자 장치의 고유한 식별자(이하, '장치 ID(identity)'와 혼용함), 적어도 하나의 외부 전자 장치의 종류(type), 적어도 하나의 외부 전자 장치의 능력(capability)(예: 기능), 또는 능력의 값(예: 기능에 따른 상태 또는 동작을 나타내는 값) 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 적어도 하나의 제 1 이벤트에 대한 정보는, 이벤트와 관련된 정보(예: 댁 내의 상태에 대한 정보 또는 적어도 하나의 외부 전자 장치의 동작에 대한 정보) 외에, 적어도 하나의 외부 전자 장치에서 이벤트가 발생한 시간에 대한 정보를 포함할 수 있다.
일 실시예에서, 프로세서(240)는, 적어도 하나의 제 1 이벤트에 대한 정보를 수신한 후, 적어도 하나의 제 1 이벤트에 대한 정보에 대하여 식별자(이하, '제 1 식별자'로 지칭함)를 생성(또는 할당, 또는 부여)할 수 있다.
일 실시예에서, 제 1 식별자는, 댁 내의 적어도 하나의 전자 장치(예: 전자 장치(200) 및 적어도 하나의 외부 전자 장치)에 대하여 생성될 수 있는 식별자일 수 있다. 일 실시예에서, 제 1 식별자는, 암호화된 코드 형태일 수 있다. 일 실시예에서, 제 1 식별자는 댁 내의 적어도 하나의 전자 장치 각각에 대하여 동일한 값으로서 생성될 수 있다.
일 실시예에서, 제 1 식별자는, 패턴을 제공하는 서비스를 제공 받기 위하여, 댁 내의 적어도 하나의 전자 장치를 통합적으로 등록하기 위하여 이용되는 식별자일 수 있다. 일 실시예에서, 제 1 식별자는, 패턴을 제공하는 서비스를 제공 받기 위하여, 댁 내의 적어도 하나의 전자 장치를 통합적으로 등록하기 위하여 이용되는 식별자에 기반하여 생성되는(또는 대응하는) 식별자일 수 있다. 일 실시예에서, 제 1 식별자는, 댁 내의 적어도 하나의 전자 장치를 그룹화하여 관리하기 위하여 이용되는 식별자일 수 있다. 일 실시예에서, 제 1 식별자는, 댁 내의 적어도 하나의 전자 장치를 그룹화하여 관리하기 위하여 이용되는 식별자에 기반하여 생성된 식별자일 수 있다. 일 실시예에서, 제 1 식별자는, 댁 내의 적어도 하나의 전자 장치를 그룹화하여 관리하기 위하여 이용되는 전자 장치(200)의 사용자의 계정일 수 있다. 일 실시예에서, 제 1 식별자는, 댁 내의 적어도 하나의 전자 장치를 그룹화하여 관리하기 위하여 이용되는 전자 장치(200)의 사용자의 계정에 기반하여 생성되는 식별자일 수 있다.
일 실시예에서, 아래 [표 1]은, 적어도 하나의 제 1 이벤트에 대한 정보 및 제 1 식별자를 나타낼 수 있다.
이벤트 발생 시간 장치 종류 장치 ID 능력 능력 값 제 1 식별자
2020-07-21 16:01 sensor(예: 존재 감지 센서) xxx0 presence
(존재 검출)
present
(존재가 검출됨)
A
2020-07-21 16:12 TV(텔레비전) xxx1 switch(TV의 전원) on
(TV의 전원 on)
A
2020-07-21 16:13 TV xxx1 tvChannel(TV의 채널) 11
(TV의 채널 번호)
A
2020-07-21 16:28 AC(에어컨) xxx2 switch(에어컨의 전원) on
(에어콘의 전원 on)
A
일 실시예에서, [표 1]에서, 이벤트 발생 시간은, 적어도 하나의 외부 전자 장치에서 이벤트가 발생한 시간을 나타낼 수 있다. 예를 들어, '2020-07-21 16:01'은, 2020년 7월 21일 16시 01분에, 존재 감지 센서에서, 사용자(또는 사용자의 전자 장치)가 댁 외부로부터 댁 내로 진입함이 감지된 시간을 나타낼 수 있다. 다른 예를 들어, '2020-07-21 16:12'은, 2020년 7월 21일 16시 12분에, TV의 전원이 온(on)된 시간을 나타낼 수 있다. 또 다른 예를 들어, '2020-07-21 16:13'은, 2020년 7월 21일 16시 13분에, TV의 채널이 채널 번호 '11'이 된(또는 '11'로 변경된) 시간을 나타낼 수 있다. 또 다른 예를 들어, '2020-07-21 16:28'은, 2020년 7월 21일 16시 28분에, 에어컨의 전원이 온(on)된 시간을 나타낼 수 있다.
일 실시예에서, [표 1]에 도시된 바와 같이, 프로세서(240)는, 댁 내의 적어도 하나의 전자 장치(예: 존재 감지 센서, TV, 및 에어콘)에 대하여 동일한 제 1 식별자(예: 'A')를 생성할 수 있다.
일 실시예에서, 프로세서(240)는, [표 1]에 도시된 바와 같은, 적어도 하나의 제 1 이벤트에 대한 정보 및 제 1 식별자를 데이터화 할 수 있다.
동작 403에서, 일 실시예에서, 프로세서(240)는, 적어도 하나의 제 1 이벤트에 대한 정보 중에서, 지정된 적어도 하나의 시간 간격 내에 발생한 적어도 하나의 제 2 이벤트에 대한 정보에 기반하여, 제 1 패턴을 획득할 수 있다.
프로세서(240)가 제 1 패턴을 획득하는 동작과 관련하여 이하 도 5를 참조하여 상세히 설명하도록 한다.
도 5는, 다양한 실시예들에 따른, 제 1 패턴을 획득하는 방법을 설명하는 흐름도(500)이다.
도 5를 참조하면, 동작 501에서, 일 실시예에서, 프로세서(240)는, 지정된 적어도 하나의 시간 간격으로 패턴과 관련된 시퀀스 셋(sequence set)(이하, '시퀀스 셋'으로 지칭함)을 획득할 수 있다.
일 실시예에서, 프로세서(240)는, 지정된 적어도 하나의 시간 간격 마다, 지정된 적어도 하나의 시간 간격 내에 발생한 이벤트에 기반하여, 시퀀스 셋을 획득할 수 있다.
일 실시예에서, 아래 [표 2]는, [표 1]에 기반하여 획득한 시퀀스 셋을 나타낼 수 있다.
시간 간격 시점 시퀀스 셋 제 1 식별자
5분 16:00 {Sensor_xxx0_presence_present} A
16:10 {TV_xxx1_switch_on, TV_xxx1_tvChannel_11} A
16:25 {AC_xxx2_switch_on} A
15분 16:00 {Sensor_xxx0_presence_present, TV_xxx1_switch_on, TV_xxx1_tvChannel_11} A
16:15 {AC_xxx2_switch_on} A
30분 16:00 {Sensor_xxx0_presence_present, TV_xxx1_switch_on, TV_xxx1_tvChannel_11, AC_xxx2_switch_on} A
[표 2]에서, 시퀀스 셋의 원소는 장치의 종류, 장치 ID, 능력, 및 능력의 값을 나타낼 수 있다. 예를 들어, Sensor_xxx0_presence_present는, 존재 감지 센서_존재 감지 센서의 ID_존재 감지 센서의 능력_존재 감지 센서의 능력의 값을 나타낼 수 있다.
일 실시예에서, 프로세서(240)는, [표 2]에 도시된 바와 같이, 5분, 15분, 및 30분을 시퀀스 셋을 획득하기 위한 시간 간격으로 지정할 수 있다. 다만, 시퀀스 셋을 획득하기 위한 시간 간격은 5분, 15분, 및 30분에 제한되지 않으며, 다양한 시간 간격으로 지정될 수 있다.
일 실시예에서, 프로세서(240)는, [표 2]에 도시된 바와 같이, 시점(이하, 지정된 시간 간격의 기준이 되는 시간을 '시점'으로 지칭함)을 기준으로 지정된 시간 간격(이하, '시간 간격'과 혼용함) 내에 발생한 적어도 하나의 제 2 이벤트에 기반하여 시퀀스 셋을 획득할 수 있다. 예를 들어, 프로세서(240)는, 시점(예: 16:00(16시), 16:10(16시 10분), 16:25(16시 25분))을 기준으로 지정된 시간 간격(예: 5분) 마다, 지정된 시간 간격 내에 발생한 이벤트들을 포함하는 시퀀스 셋들(예: {Sensor_xxx0_presence_present}, {TV_xxx1_switch_on, TV_xxx1_tvChannel_11}. {AC_xxx2_switch_on})을 획득할 수 있다. 일 실시예에서, 시퀀스 셋의 원소들(elements)은, 이벤트가 발생한 시간에 따라 배열될 수 있다. 예를 들어, 시간 간격이 15분이고, 시점이 16시에 대응하는 시퀀스 셋, {Sensor_xxx0_presence_present, TV_xxx1_switch_on, TV_xxx1_tvChannel_11}에서, 원소의 이벤트가 발생한 시간 순서는, Sensor_xxx0_presence_present (이벤트 발생 시간: 16시 1분), TV_xxx1_switch_on (이벤트 발생 시간: 16시 12분), 및 TV_xxx1_tvChannel_11 (이벤트 발생 시간: 16시 13분) 순서일 수 있다.
일 실시예에서, [표 2]에서는, 시점(예: 16시) 후의 지정된 시간 간격(예: 5분) 이내에 발생한 제 2 이벤트들에 기반하여 시퀀스 셋을 획득하는 것을 예시하고 있지만 이에 제한되지 않는다. 예를 들어, 프로세서(240)는, 시점(예: 16 시) 후의 지정된 시간 간격(예: 5분)의 일부(예: 2분 30초) 내에(예: 16시 57분 30초 내지 16시 사이의 시간) 발생하거나 및 시점(예: 16시) 전의 지정된 시간 간격의 일부(예: 2분 30분) 내에(예: 16시 내지 16시 2분 30초 사이의 시간) 발생한 제 2 이벤트에 기반하여 시퀀스 셋을 획득할 수 있다.
동작 503에서, 일 실시예에서, 프로세서(240)는, 시점 및 시퀀스 셋에 기반하여, 제 1 패턴을 획득할 수 있다.
일 실시예에서, 제 1 패턴은 조건(condition) 및 액션(action)(예: 조건 및 액션의 조합)을 포함할 수 있다. 일 실시예에서, 프로세서(240)는, 시퀀스 셋에 포함된 댁 내의 적어도 하나의 외부 전자 장치의 동작과 관련된 이벤트(이하, '동작 관련 이벤트'로 지칭함)를 액션으로서 설정할 수 있다. 일 실시예에서, 프로세서(240)는, 설정된 액션에 대하여, 시퀀스 셋에 대응하는 시점, 댁 내의 상태와 관련된 이벤트(이하, '상태 관련 이벤트'로 지칭함), 또는 액션으로서 설정된 동작 관련 이벤트 외의 동작 관련 이벤트 중 적어도 하나에 기반하여, 조건을 설정할 수 있다. 예를 들어, 프로세서(240)는, [표 2]의 시간 간격 15분의 시점(16시 0분) 및 시퀀스 셋({Sensor_xxx0_presence_present, TV_xxx1_switch_on, TV_xxx1_tvChannel_11})으로부터, 동작 관련 이벤트로서 TV_xxx1_switch_on를 액션으로서 설정할 수 있다. 프로세서(240)는, 액션으로 설정된 이벤트 TV_xxx1_switch_on에 대하여, 시점(16시 0분) 및 액션으로 설정된 이벤트 보다 먼저 발생한 이벤트로서 Sensor_xxx0_presence_present를 조합함으로써 조건들(예: 조건(16시 0분), 조건(Sensor_xxx0_presence_present), 또는 조건(16시 0분 및 Sensor_xxx0_presence_present))을 설정할 수 있다. 프로세서(240)는, 액션으로 설정된 이벤트 TV_xxx1_tvChannel_11에 대하여, 시점(16시 0분), Sensor_xxx0_presence_present, 및 TV_xxx1_switch_on를 조합함으로써 조건들(예: 조건(16시 0분), 조건(Sensor_xxx0_presence_present), 조건(TV_xxx1_switch_on), 조건(16시 0분 및 Sensor_xxx0_presence_present), 조건(16시 0분 및 TV_xxx1_switch_on), 조건(Sensor_xxx0_presence_present 및 TV_xxx1_switch_on))을 설정할 수 있다.
전술한 예시에서는, 프로세서(240)가, 액션으로 설정된 이벤트 보다 먼저 발생한 이벤트에 대하여, 조건으로서 설정하는 것을 예시하고 있지만 이에 제한되지 않는다. 일 실시예에서, 프로세서(240)는, 액션으로 설정된 이벤트 보다 지정된 시간 이내(예: 지정된 시간 간격의 약 1/6의 시간 간격 이내)에서 늦게 발생한 이벤트에 대하여, 설정된 액션의 조건으로서 설정할 수 있다. 예를 들어, TV_xxx1_switch_on가 액션으로 설정되고, TV_xxx1_tvChannel_11의 이벤트 발생 시간이 TV_xxx1_switch_on의 이벤트 발생 시간 보다 지정된 시간 이내(예: 지정된 시간으로서 5분의 1/6의 시간 간격 내에 포함되는 1분)에서 늦게 발생한 경우, TV_xxx1_tvChannel_11를 TV_xxx1_switch_on의 조건으로서 설정할 수 있다.
일 실시예에서, 지정된 시간 간격의 제 1 패턴은, 제 1 패턴의 조건으로 설정된 시점(또는 제 1 패턴의 조건으로 설정된 이벤트의 발생 시간) 및 액션으로 설정된 이벤트의 발생 시간이 지정된 시간 간격 내에 있는, 제 1 패턴의 조건 및 제 1 패턴의 액션을 지칭할 수 있다. 예를 들어, 15분 간격의 제 1 패턴(조건(16:10) 및 액션(TV_xxx1_switch_on))은, 조건으로 설정된 시점(16시 10분) 및 TV의 전원이 온된 시간이 15분 내에 있는, 제 1 패턴의 조건(16:10) 및 제 1 패턴의 액션(TV_xxx1_switch_on)을 지칭할 수 있다.
일 실시예에서, 아래 [표 3] 및 [표 4]는, 획득된 제 1 패턴과 관련된 정보를 나타낼 수 있다.
이벤트 발생 날짜 시간 간격 조건 액션 제 1 식별자
2020-07-21 5분 16:10 TV_xxx1_switch_on A
2020-07-21 15분 16:15 TV_xxx1_switch_on A
2020-07-21 30분 16:00 TV_xxx1_switch_on A
2020-07-21 5분 16:30 AC_xxx2_switch_on A
2020-07-21 15분 16:30 AC_xxx2_switch_on A
2020-07-21 30분 16:30 AC_xxx2_switch_on A
이벤트 발생 날짜 시간 간격 조건 액션 same_device delay 제 1 식별자
2020-07-21 5분 16:10+TV_xxx1_switch_on TV_xxx1_tvChannel_11 1 1분 A
2020-07-21 15분 16:15+TV_xxx1_switch_on TV_xxx1_tvChannel_11 1 1분 A
2020-07-21 30분 16:00+TV_xxx1_switch_on TV_xxx1_tvChannel_11 1 1분 A
2020-07-21 15분 16:00+sensor_xxx0_present TV_xxx1_switch_on 0 11분 A
2020-07-21 30분 16:00+sensor_xxx0_present TV_xxx1_switch_on 0 11분 A
2020-07-21 30분 16:00+sensor_xxx0_present AC_xxx2_switch_on 0 27분 A
2020-07-21 30분 16:00+TV_xxx1_switch_on AC_xxx2_switch_on 0 16분 A
[표 4]에서, 예를 들어, 조건, '16:10+TV_xxx1_on'는, 시점이 16시 10분이고 TV의 전원이 온(on)되는 조건을 나타낼 수 있다.
일 실시예에서, [표 3] 및 [표 4]에 도시된 바와 같이, 프로세서(240)는, 지정된 시간 간격 마다, 시퀀스 셋에 기반하여 액션을 설정하고, 설정된 액션에 대한 조건을 조합함으로써, 제 1 패턴을 획득할 수 있다.
일 실시예에서, [표 4]에서, 'same_device'는, 조건과 관련된 외부 전자 장치 및 액션과 관련된 외부 전자 장치가 동일한 전자 장치인지 여부를 나타낼 수 있다. 예를 들어, 'same_device'는, 조건과 관련된 외부 전자 장치 및 액션과 관련된 외부 전자 장치가 동일한 경우, '1'로 설정되고, 조건과 관련된 외부 전자 장치 및 액션과 관련된 외부 전자 장치가 다른 경우. '0'으로 설정될 수 있다.
일 실시예에서, [표 4]에서, 'delay'는, 조건으로 설정된 이벤트가 발생한 시간 및 액션으로 설정된 이벤트가 발생한 시간 간 차이를 나타낼 수 있다. 일 실시예에서, 'delay'는, 조건이 이벤트(예: 상태 관련 이벤트 또는 동작 관련 이벤트)에 기반하여 설정된 경우, 설정될 수 있다. 예를 들어, 조건이 시점에 기반하여 설정된 경우, 'delay'는 설정되지 않을 수 있다. 다른 예를 들어, 조건이 '16:10+TV_xxx1_switch_on'이고, 액션이 'TV_xxx1_tvChannel_11'인 경우, 조건으로 설정된 동작 관련 이벤트 TV_xxx1_switch_on의 발생 시간 및 액션으로 설정된 동작 관련 이벤트 TV_xxx1_tvChannel_11의 발생 시간 간 차이가 1분이므로, delay는 1분으로 설정될 수 있다.
도 4로 리턴하면, 동작 405에서, 일 실시예에서, 프로세서(240)는, 제 1 패턴과 관련된 제 1 파라미터를 획득할 수 있다.
일 실시예에서, 프로세서(240)는, 제 1 패턴(또는 제 1 패턴과 관련된 정보)을 분석함으로써, 제 1 파라미터를 획득할 수 있다. 일 실시예에서, 제 1 파라미터는, 연관 규칙(association rule)의 지지도(support), 신뢰도(confidence), 향상도(lift), 또는 RPF(rule power factor) 중 적어도 하나를 포함할 수 있다. 일 실시예에서, 제 1 파라미터는, 지지도, 신뢰도, 향상도, 또는 RPF 중 적어도 하나 외에, 지지도, 신뢰도, 향상도, 또는 RPF 중 적어도 하나를 산출하기 위하여 필요한 정보(예: n_all, n_x, n_y, 및 n_ptns)를 포함할 수 있다.
일 실시예에서, 아래 [표 5]는, 지정된 제 1 시간(예: 2주) 동안, 적어도 하나의 외부 전자 장치로부터 획득한 이벤트에 대한 정보에 기반하여 획득된, 제 1 패턴 및 제 1 파라미터와 관련된 정보를 나타낼 수 있다.
제 1
식별자
시간 간격 조건 액션 same_device delay n_all n_x n_y n_ptns confidence lift RPF
A 5분 16:10 TV_xxx1_switch_on - - 4032 14 40 9 0.64 64.8 41.66
A 15분 16:15 TV_xxx1_switch_on - - 1344 14 38 9 0.64 22.7 14.62
A 30분 16:00 TV_xxx1_switch_on - - 672 14 35 10 0.71 13.7 9.80
A 5분 16:30 AC_xxx2_switch_on - - 4032 14 30 3 0.21 28.8 6.17
A 15분 16:30 AC_xxx2_switch_on - - 1344 14 27 4 0.29 14.2 4.06
A 30분 16:30 AC_xxx2_switch_on - - 672 14 24 8 0.57 16.0 9.14
A 5분 16:10+TV_xxx1_on TV_xxx1_tvChannel_11 1 2분 4032 9 50 3 0.33 26.9 8.96
A 15분 16:15+TV_xxx1_on TV_xxx1_tvChannel_11 1 2분 1344 9 40 3 0.33 11.2 3.73
A 30분 16:00+TV_xxx1_on TV_xxx1_tvChannel_11 1 3분 672 10 35 3 0.30 5.8 1.73
A 15분 16:00+sensor_xxx0_present TV_xxx1_switch_on 0 7분 1344 7 38 6 0.86 30.3 25.98
A 30분 16:00+sensor_xxxx0_present TV_xxx1_switch_on 0 9분 672 10 35 8 0.80 15.4 12.29
A 30분 16:00+ sensor_xxx0_present AC_xxx2_switch_on 0 20분 672 10 27 3 0.30 7.5 2.24
A 30분 16:00+TV_xxx1_on AC_xxx2_switch_on 0 10분 672 10 24 7 0.70 19.6 13.72
A 15분 sensor_xxx0_present TV_xxx1_switch_on 0 7분 1344 22 38 14 0.64 22.5 14.32
A 30분 sensor_xxx0_present TV_xxx1_switch_on 0 10분 672 20 35 17 0.85 16.3 13.87
A 30분 sensor_xxx0_present AC_xxx2_switch_on 0 20분 672 20 24 10 0.50 14.0 7.00
A 30분 TV_xxx1_on AC_xxx2_switch_on 0 10분 672 38 24 15 0.39 11.1 4.36
[표 5]에서, 'n_all'은, 지정된 제 1 시간(예: 2주)을 지정된 시간 간격으로 나눈 값일 수 있다. 예를 들어, 지정된 1 시간이 2주이고, 지정된 시간 간격이 5분인 경우, n_all은 4023(=2(2주) * 7(7일) * 24(24시간) * 12(1시간 내 5분의 개수) )일 수 있다.
[표 5]에서, 'n_x'는, 지정된 제 1 시간(예: 2주) 동안, 조건에 해당하는 시점 또는 이벤트가 발생한, 지정된 시간 간격의 개수를 나타낼 수 있다. 예를 들어, 조건이 16시 10분인 경우, 2주 동안 16시 10분을 포함하는 지정된 시간 간격(예: 5분)의 개수는 14일 수 있다.
[표 5]에서, 'n_y'는, 지정된 제 1 시간(예: 2주) 동안, 액션(또는 액션에 해당하는 이벤트)이 발생한 지정된 시간 간격의 개수를 나타낼 수 있다. 예를 들어, 액션이 TV_xxx1_switch_on인 경우, 2주 동안 TV의 전원이 온(on)된 지정된 시간 간격(예: 5분)의 개수는 40일 수 있다. [표 5]에 나타내지는 않았지만, 프로세서(240)는, 지정된 시간 간격 내에 동일한 액션으로 설정된 이벤트가 복수 회 발생된 경우는, 지정된 시간 간격 내에 동일한 액션이 1 회 발생한 것으로 결정할 수 있다. 예를 들어, 프로세서(240)는, 지정된 시간 간격, 5분 내에, 액션으로 설정된 동일한 TV_xxx1_switch_on이 2회 발생된 경우, n_y 연산 시, 액션으로 설정된 TV_xxx1_switch_on이 1회 발생된 것으로 결정할 수 있다.
[표 5]에서, 'n_ptns'는, 지정된 제 1 시간(예: 2주) 동안, 지정된 시간 간격 동안 조건 및 액션이 함께 발생한 지정된 시간 간격의 개수를 나타낼 수 있다. 예를 들어, 지정된 제 1 시간이 2주이고 시간 간격이 5분이고 조건이 16시 10분이고 액션이 TV_xxx1_switch_on인 경우, 2주 동안 16시 10분으로부터 5분 내에 TV_xxx1_switch_on이 발생한, 5분의 시간 간격의 개수는 9일 수 있다.
[표 5]에서, 신뢰도(confidence)는, n_ptns를 n_x로 나눈 값일 수 있다.
[표 5]에서, 향상도(lift)는, 신뢰도r n_y * n_all 연산을 수행함으로써, 획득될 수 있다.
[표 5]에서, RPF는, 신뢰도 및 향상도를 곱함으로써, 획득될 수 있다.
일 실시예에서, [표 5]에서 지지도를 나타내지 않았지만, 지지도는 n_ptns를 n_ptns로 나눔으로써, 획득될 수 있다.
다만, 제 1 패턴과 관련된 제 1 파라미터는, [표 5]를 통해 나타낸 파라미터에 제한되지 않는다.
동작 407에서, 일 실시예에서, 프로세서(240)는, 통신 인터페이스(210)를 통하여, 적어도 하나의 외부 전자 장치로부터, 지정된 제 2 시간 동안 적어도 하나의 외부 전자 장치에서 발생한, 적어도 하나의 제 3 이벤트와 관련된 정보를 수신할 수 있다.
일 실시예에서, 지정된 제 2 시간은, 동작 401에서 예시한 지정된 제 1 시간 경과 후의 시간으로서, 지정된 제 1 시간(또는 지정된 제 1 시간의 크기)과 동일하거나(예: 지정된 제 1 시간으로서 2주 경과 후 지정된 제 1 시간과 동일한 2주) 다를 수 있다(예: 지정된 제 1 시간으로서 2주 경과 후 지정된 제 1 시간과 동일한 2주 1주).
동작 409에서, 일 실시예에서, 프로세서(240)는, 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여, 제 1 패턴과 관련된 제 2 파라미터를 획득할 수 있다.
일 실시예에서, 프로세서(240)는, 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여 제 1 패턴과 동일한 패턴(예: 제 1 패턴의 조건 및 액션과 동일한 조건 및 액션의 조합)을 획득할 수 있다. 프로세서(240)가, 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여 제 1 패턴과 동일한 패턴을 획득하는 방법에 대한 예시들은, 동작 403의 제 1 패턴을 획득하는 동작에 대한 예시들과 적어도 일부가 동일 또는 유사하므로, 상세한 설명은 생략하기로 한다.
일 실시예에서, 프로세서(240)는, 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여 획득한, 제 1 패턴과 동일한 패턴에 기반하여, 제 2 파라미터를 획득할 수 있다.
일 실시예에서, 지정된 제 2 시간(예: 지정된 제 2 시간의 크기)와 지정된 제 1 시간이 동일한 경우, 프로세서(240)가 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여 획득한, 제 1 패턴과 동일한 패턴에 기반하여 제 2 파라미터를 획득하는 방법에 대한 예시들은, 동작 405의 제 1 파라미터를 획득하는 동작에 대한 예시들과 적어도 일부가 동일 또는 유사하므로, 상세한 설명은 생략하기로 한다.
일 실시예에서, 지정된 제 2 시간(예: 지정된 제 2 시간의 크기)와 지정된 제 1 시간이 다른 경우, 프로세서(240)는, 제 1 패턴과 동일한 패턴에 기반하여 파라미터를 획득하고, 지정된 제 2 시간 및 지정된 제 1 시간의 비율에 기반하여, 상기 획득된 파라미터를 조정함으로써, 제 2 파라미터를 획득할 수 있다. 예를 들어, 지정된 제 1 시간이 2주이고 지정된 제 2 시간이 1주인 경우, 프로세서(240)는, 1주 동안 적어도 하나의 외부 전자 장치로부터 획득한 제 3 이벤트에 기반하여 파라미터를 획득할 수 있다. 프로세서(240)는, 획득한 파라미터의 일부로서, n_all이 2016이고, n_x가 5이고, n_y가 25이고, n_ptns가 2인 경우, n_all, n_x, n_y, 및 n_ptns를 각각 2(지정된 제 1 시간을 지정된 제 2 시간으로 나눈 값)를 곱함으로써, n_all, n_x, n_y, 및 n_ptns를 각각 4032, 10, 50, 4로 조정할 수 있다. 프로세서(240)는, 조정된 n_all, n_x, n_y, 및 n_ptns에 기반하여, 신뢰도, 향상도, 또는 RPF를 산출함으로써, 제 2 파라미터를 획득할 수 있다.
일 실시예에서, 아래 [표 6]은, [표 5]의 일부 및 제 2 파라미터로서 신뢰도(y_confidence)(이하, '검증을 위한 신뢰도'로 지칭하기로 한다)를 나타낼 수 있다.
제 1 식별자 시간 간격 조건 액션 same_device delay n_all n_x n_y n_ptns confidence lift RPF y_confidence
A 5분 16:10+TV_xxx1_switch_on TV_xxx1_tvChannel_11 1 2 분 4032 9 50 3 0.33 26.9 8.96 0.4
A 15분 16:15+TV_xxx1_switch_on TV_xxx1_tvChannel_11 1 2분 1344 9 40 3 0.33 11.2 3.73 0.35
A 30분 16:00+TV_xxx1_switch_on TV_xxx1_tvChannel_11 1 3분 672 10 35 3 0.30 5.8 1.73 0.38
A 15분 16:00+sensor_xxx0_present TV_xxx1_switch_on 0 7분 1344 7 38 6 0.86 30.3 25.98 0.7
A 30분 16:00+sensor_xxx0_present TV_xxx1_switch_on 0 9분 672 10 35 8 0.80 15.4 12.29 0.75
A 30분 16:00+sensor_xxx0_present AC_xxx2_switch_on 0 20분 672 10 27 3 0.30 7.5 2.24 0.6
[표 6]에서, 제 2 파라미터로서, 검증을 위한 신뢰도(y_confidence)를 예시하고 있지만, 이에 제한되지 않으며, 제 2 파라미터는, 제 1 패턴과 동일한 패턴에 기반하여 획득 가능한 다양한 파라미터를 포함할 수 있다.
[표 6]에서는, [표 5]의 일부를 포함하는 것으로 예시하고 있지만, 이에 제한되지 않으며, [표 5]의 전체에 대한 제 2 파라미터가 획득될 수 있다.
동작 411에서, 일 실시예에서, 프로세서(240)는, 제 1 패턴, 제 1 파라미터, 및 제 2 파라미터에 기반하여, 제 1 템플릿을 생성할 수 있다.
일 실시예에서, 프로세서(240)는, 제 1 패턴의 조건 및 액션으로부터, 특정 정보를 삭제함으로써, 제 1 템플릿을 생성할 수 있다. 예를 들어, 프로세서(240)는, 제 1 패턴의 조건 및 액션의 특정 정보를 빈 칸으로 둠으로써, 제 1 템플릿을 생성할 수 있다. 이하에서, 제 1 패턴의 조건 및 액션으로부터, 특정 정보가 삭제된 제 1 패턴을 '제 2 패턴'으로 지칭하기로 한다.
일 실시예에서, 아래 [표 7]은, [표 6]에 기반하여, 생성된 템플릿들을 나타낼 수 있다.
제 1 식별자 시간 간격 조건 액션 same_device delay n_all n_x n_y n_ptns confidence lift RPF y_confidence
A 5분 ?:?+TV_? _switch_? TV_?_tvChannel_? 1 2 분 4032 9 50 3 0.33 26.9 8.96 0.4
A 15분 ?:?+TV_?_switch_on TV_?_tvChannel_? 1 2분 1344 9 40 3 0.33 11.2 3.73 0.35
A 30분 ?:?+TV_?_switch_on TV_?_tvChannel_? 1 3분 672 10 35 3 0.30 5.8 1.73 0.38
A 15분 ?:?+sensor_?_present TV_?_switch_on 0 7분 1344 7 38 6 0.86 30.3 25.98 0.7
A 30분 ?:?+sensor_?_present TV_?_switch_on 0 9분 672 10 35 8 0.80 15.4 12.29 0.75
A 30분 ?:?+sensor_?_present AC_?_switch_on 0 20분 672 10 27 3 0.30 7.5 2.24 0.6
[표 7]에 도시된 바와 같이, 일 실시예에서, 프로세서(240)는, 조건 및 액션에서 특정 시간, 장치 ID, 및 TV의 특정 채널 번호를 삭제할 수 있다. 일 실시예에서, [표 7]에서, TV의 전원의 온(on)은 삭제되지 않은 것을 예시하고 있지만, TV의 전원의 온(on)과 같은 외부 전자 장치의 능력의 값은 삭제될 수도 있다. 예를 들어, 프로세서(240)는, TV의 전원의 경우 온(on) 또는 오프(off)의 같이 능력의 값이 가능한 개수(예: 2개)가 지정된 개수 미만인 경우, 외부 전자 장치의 능력의 값은 삭제되지 않을 수 있다. 다른 예를 들어, 프로세서(240)는, TV의 특정 채널 번호 또는 댁 내의 온도와 같이, 능력의 값이 지정된 개수 이상인 경우, 외부 전자 장치의 능력의 값은 삭제될 수 있다.
일 실시예에서, 템플릿은, 제 2 패턴(예: 조건 및 액션이 모두 동일한 제 2 패턴), 제 2 패턴과 관련된 제 1 파라미터, 및 제 2 패턴과 관련된 제 2 파라미터를 포함하는 정보를 지칭할 수 있다. 예를 들어, [표 7]는, 패턴(?:?+TV_? _switch_? 및 TV_?_tvChannel_?) 및 패턴(?:?+sensor_?_present 및 TV_?_switch_on), 각각과 관련된, 2개의 템플릿을 나타낼 수 있다.
동작 413에서, 일 실시예에서, 프로세서(240)는, 통신 인터페이스(210)를 통하여, 서버(300)로, 제 1 템플릿에 대한 정보를 전송할 수 있다. 예를 들어, 프로세서(240)는, 통신 인터페이스(210)를 통하여, 패턴을 제공하는 서비스를 제공하는 서버(300)로, 제 1 템플릿에 대한 정보를 전송할 수 있다. 일 실시예에서, 제 1 템플릿에 대한 정보는 제 1 템플릿 및 제 1 식별자를 포함할 수 있다.
도 4에서는, 전자 장치(200)가 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 컴퓨팅 능력을 가진 전자 장치인 경우를 예시하고 있으며, 일 실시예에서, 전자 장치(200)가 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 컴퓨팅 능력을 가진 전자 장치가 아닌 경우(예: 패턴을 제공하는 서비스에 등록된 전자 장치 전체가 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 컴퓨팅 능력을 가지지 못한 경우), 도 4에서 설명한 예시들은, 서버(300)에서 수행될 수 있다.
도 6은, 다양한 실시예들에 따른, 서버(300)가 임계 파라미터를 결정하는 방법을 설명하는 흐름도(600)이다.
도 6을 참조하면, 동작 601에서, 일 실시예에서, 프로세서(330)는, 통신 인터페이스(310)를 통하여, 복수의 외부 전자 장치들로부터, 제 2 패턴과 관련된 제 1 템플릿에 대한 정보를 수신할 수 있다. 예를 들어, 프로세서(330)는, 통신 인터페이스(310)를 통하여, 복수의 외부 전자 장치들 각각으로부터, 복수의 외부 전자 장치들 각각에서 생성된 제 1 템플릿에 대한 정보를 수신할 수 있다.
일 실시예에서, 아래 [표 8]은, 복수의 외부 전자 장치들로부터 수신된, 제 1 템플릿에 대한 정보를 나타낼 수 있다.
제1 식별자 시간 간격 조건 액션 same_device delay n_all n_x n_y n_ptns confidence lift RPF y_confidence
A 5분 ?:?+sensor_?_present TV_?_switch_on 0 Null 4032 7 38 0 0.00 0.0 0.00 0.3
A 15분 ?:?+sensor_?_present TV_?_ switch_on 0 7분 1344 7 38 4 0.57 20.2 11.55 0.8
A 30분 ?:?+sensor_?_present TV_?_switch_on 0 9분 672 10 35 8 0.80 15.4 12.29 0.8
B 5분 ?:?+sensor_?_present TV_?_switch_on 0 2분 4032 5 24 2 0.40 67.2 26.88 0.45
B 15분 ?:?+sensor_?_present TV_?_switch_on 0 7분 1344 6 22 3 0.50 30.5 15.27 0.45
B 30분 ?:?+sensor_?_present TV_?_switch_on 0 9분 672 9 22 4 0.44 13.6 6.03 0.45
C 5분 ?:?+sensor_?_present TV_?_switch_on 0 3분 4032 4 64 4 1.00 63.0 63.00 0.45
C 15분 ?:?+sensor_?_present TV_?_switch_on 0 7분 1344 5 60 5 1.00 22.4 22.40 0.85
C 30분 ?:?+sensor_?_present TV_?_switch_on 0 9분 672 7 50 6 0.86 11.5 9.87 0.85
D 5분 ?:?+sensor_?_present TV_?_switch_on 0 Null 4032 10 24 0 0.00 0.0 0.00 0.2
D 15분 ?:?+sensor_?_present TV_?_switch_on 0 7분 1344 10 24 6 0.60 33.6 20.16 0.7
D 30분 ?:?+sensor_?_present TV_?_switch_on 0 9분 672 11 22 7 0.64 19.4 12.37 0.81
[표 8]에서는, 서버(300)가 4개의 외부 전자 장치들(예: 서로 다른 4개의 식별자들(A, B, C, 및 D) 각각에 대응하는 외부 전자 장치들)로부터 수신된 제 1 템플릿에 대한 정보를 나타낼 수 있다. 다만, 이에 제한되지 않으며, 서버(300)는, 4개 보다 크거나 적은 개수의 적어도 하나의 외부 전자 장치로부터 제 1 템플릿에 대한 정보를 수신할 수 있다.
동작 603에서, 일 실시예에서, 프로세서(330)는, 제 1 템플릿에 대하여, 지정된 조건을 만족하는, 제 2 패턴과 관련된 지정된 시간 간격 및 임계 파라미터를 결정할 수 있다.
제 2 패턴과 관련된 지정된 시간 간격 및 임계 파라미터를 결정하는 방법과 관련하여, 이하 도 7을 참조하여, 상세히 설명하도록 한다.
도 7은, 다양한 실시예들에 따른, 제 2 패턴과 관련된 지정된 시간 간격 및 임계 파라미터를 결정하는 방법을 설명하는 흐름도(700)이다.
도 7을 참조하면, 동작 701에서, 일 실시예에서, 프로세서(330)는, 제 1 템플릿에 대하여, 지정된 시간 간격 마다, 후보 임계 파라미터의 값을 이용하여, 검증을 위한 신뢰도의 평균, 추천 범위, 및 추천 정확도를 획득할 수 있다.
일 실시예에서, 아래 [표 9]는, [표 8]의 제 1 템플릿에 기반하여, 획득된 검증을 위한 신뢰도의 평균, 추천 범위, 및 추천 정확도를 나타낼 수 있다.
시간 간격 후보 임계 n_ptns 후보 임계 confidence ave(y_confidence) n_recommend coverage n_success accuracy
5분 0 0 0.35 4 100% 0 0%
15분 0 0 0.7 4 100% 3 75%
30분 0 0 0.7275 4 100% 3 75%
5분 4 0.5 0.45 1 25% 0 0%
15분 4 0.5 0.783333 3 75% 3 100%
30분 4 0.5 0.82 3 75% 3 100%
5분 4 0.6 0.45 1 25% 0 0%
15분 4 0.6 0.775 2 50% 2 100%
30분 4 0.6 0.82 3 75% 3 100%
[표 9]에서, 프로세서(330)는, 후보 임계 파라미터로서, 후보 임계 n_ptns 및 후보 임계 confidence를 포함할 수 있다. 다만, 후보 임계 파라미터는 후보 임계 n_ptns 및 후보 임계 confidence에 제한되지 않는다. 일 실시예에서, 후보 임계 파라미터는, 후보 임계 delay, 후보 임계 n_x, 후보 임계 n_y, 후보 임계 lift, 또는 후보 임계 RPF 중 적어도 하나를 포함할 수도 있다.
일 실시예에서, 프로세서(330)는, 지정된 알고리즘(또는 인공 신경망)을 이용하여, 파라미터들(예 delay, n_x, n_y, n_ptns, confidence, lift, 및 RPF) 중에서, 후보 임계 파라미터를 결정할 수 있다. 일 실시예에서, 프로세서(330)는, 다중 회귀 분석(Multiple Linear Regression Analysis)을 이용하여, 파라미터들(예 delay, n_x, n_y, n_ptns, confidence, lift, 및 RPF) 중에서, 후보 임계 파라미터를 결정할 수 있다. 예를 들어, 프로세서(330)는, 다중 회귀 분석의 종속 변수를 추천 범위(예: 표 9의 coverage)로 설정하고, 독립 변수를 파라미터들(예 delay, n_x, n_y, n_ptns, confidence, lift, 및 RPF) 중 적어도 하나로 설정할 수 있다. 프로세서(330)는, 독립 변수 중에서, p 값(p-value)이 지정된 값(예: 0.05) 이하인 독립 변수의 파라미터를 후보 임계 파라미터로 결정할 수 있다.
일 실시예에서, 프로세서(330)는, 지정된 시간 간격 마다, 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 제 1 식별자의 개수(n_recommend), 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 제 1 식별자의 검증을 위한 신뢰도의 평균(ave(y_confidence))(이하, '검증을 위한 신뢰도의 평균'으로 지칭됨), 패턴을 제공하는 서비스에 등록된 제 1 식별자들의 총 개수에 대한 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 제 1 식별자의 개수의 비율(converage)(이하, '추천 범위'로 지칭됨), 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 제 1 식별자 중에서 검증을 위한 신뢰도의 지정된 값(예: 0.5) 보다 큰 신뢰도 값을 가지는 제 1 식별자의 개수(n_success), 및 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 제 1 식별자의 개수(n_recommend)에 대한 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 제 1 식별자 중에서 지정된 값(예: 0.5) 이상의 검증을 위한 신뢰도의 값을 가지는 제 1 식별자의 개수(n_success)의 비율(accurracy)(이하, '추천 정확도'로 지칭됨)를 결정할 수 있다.
예를 들어, 프로세서(330)는, [표 8] 및 [표 9]를 참조하면, 시간 간격이 15분이고, 후보 임계 n_ptns가 4이고, 후보 임계 confidence가 0.6인 경우, [표 8]에서 시간 간격이 15분에 해당하는 제 1 식별자 A 내지 D의 n_ptns들 및 confidence들 중에서 제 1 식별자 C의 n_ptns(5) 및 confidence(1.00)와 제 1 식별자 D의 n_ptns(6) 및 confidence(0.6)가, 후보 임계 n_ptns 4 이상이고 후보 임계 confidence 0.6 이상임을 확인할 수 있다. 프로세서(330)는, 시간 간격이 15분에 해당하는 제 1 식별자 C의 y_confidence(0.85) 및 제 1 식별자 D의 y_confidence(0.7)의 평균 값으로서, 검증을 위한 신뢰도의 평균 값(0.775)를 산출할 수 있다. 프로세서(330)는, 후보 임계 n_ptns 4 이상이고 후보 임계 confidence 0.6 이상인 파라미터 값을 가지는 제 1 식별자(예: 제 1 식별자 C 및 제 1 식별자 D)의 개수를 2개로 산출할 수 있다. 프로세서(330)는, 패턴을 제공하는 서비스에 등록된 제 1 식별자들의 총 개수가 4인 경우, 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 제 1 식별자의 개수의 비율(converage)을 50%(예: 2/4)로 산출할 수 있다. 프로세서(330)는, 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 제 1 식별자 중에서 검증을 위한 신뢰도의 지정된 값(예: 0.5) 보다 큰 검증을 위한 신뢰도의 값을 가지는 제 1 식별자의 개수(n_success)를 2로 산출할 수 있다. 프로세서(330)는, 산출된 n_recommend(예: 2)에 대한 n_success(예: 2)의 비율로서 추천 정확도 100%(예: 2/2)을 산출할 수 있다.
일 실시예에서, 프로세서(330)는, 후보 임계 파라미터의 임의의 값들에 대하여, 검증을 위한 신뢰도의 평균, 추천 범위, 및 추천 정확도를 획득할 수 있다. 예를 들어, 프로세서(330)는, 후보 임계 n_ptns의 값을 0 및 4로 설정하고, 후보 임계 confidence의 값을 0, 0.5, 및 0.6으로 설정할 수 있다. 프로세서(330)는, 후보 임계 n_ptns의 값 및 후보 임계 confidence의 값의 조합 각각에 대하여, 검증을 위한 신뢰도의 평균, 추천 범위, 및 추천 정확도를 획득할 수 있다. [표 9]에서는, 후보 임계 n_ptns의 값을 0 및 4로 설정되고, 후보 임계 confidence의 값을 0. 0.5, 및 0.6으로 설정된 경우를 예시하고 있지만 이에 제한되지 않으며, 후보 임계 파라미터의 다양한 임의의 값들이 설정될 수 있다.
동작 703에서, 일 실시예에서, 프로세서(330)는, 후보 임계 파라미터의 값들 중에서, 검증을 위한 신뢰도의 평균, 추천 범위, 또는 추천 정확도 중 적어도 하나에 기반하여, 임계 파라미터의 값 및 시간 간격(예: 제 2 패턴의 시간 간격)을 결정할 수 있다.
일 실시예에서, 프로세서(330)는, 검증을 위한 신뢰도(예: 검증을 위한 신뢰도의 값)의 평균이 지정된 값(예: 0.7) 이상이고, 추천 정확도가 지정된 값(예: 지정된 비율)(예: 75%) 이상으로 산출되도록 하는, 지정된 시간 간격의 후보 임계 파라미터의 값 중에서 추천 범위가 최대인, 지정된 시간 간격의 후보 임계 파라미터의 값을 임계 파라미터의 값으로 결정할 수 있다.
일 실시예에서, 프로세서(330)는, 검증을 위한 신뢰도(예: 검증을 위한 신뢰도의 값)의 평균이 지정된 값(예: 0.7) 이상이고, 추천 정확도가 지정된 값(예: 지정된 비율)(예: 75%) 이상으로 산출되도록 하는, 지정된 시간 간격의 후보 임계 파라미터의 값 중에서 추천 범위가 최대인, 지정된 시간 간격의 후보 임계 파라미터의 값이 복수인 경우, 후보 임계 파라미터의 값이 큰 후보 임계 파라미터의 값을 임계 파라미터의 값으로 결정할 수 있다. 예를 들어, 프로세서(330)는, [표 9]에서, 검증을 위한 신뢰도(예: 검증을 위한 신뢰도의 값)의 평균이 지정된 값(예: 0.7) 이상이고, 추천 정확도가 지정된 값(예: 지정된 비율)(예: 75%) 이상으로 산출되도록 하는, 지정된 시간 간격이 30분에 해당하는 후보 임계 n_ptns의 값 4 및 후보 임계 confidence의 값 0.5와, 지정된 시간 간격이 30분에 해당하는 후보 임계 n_ptns의 값 4 및 후보 임계 confidence의 값 0.6를 확인할 수 있다. 프로세서(330)는, 지정된 시간 간격이 30분에 해당하는 후보 임계 n_ptns의 값 4 및 후보 임계 confidence의 값 0.5와, 지정된 시간 간격이 30분에 해당하는 후보 임계 n_ptns의 값 4 및 후보 임계 confidence의 값 0.6 중에서, 큰 후보 임계 confidence의 값을 가지는 후보 임계 confidence 0.6과 함께 후보 임계 n_ptns 4를 임계 파라미터의 값으로 결정할 수 있다. 프로세서(330)는, 결정된 임계 파라미터의 값에 대응하는 시간 간격 30분을 시간 간격(또는 최종 시간 간격)으로서 결정할 수 있다.
도 6으로 리턴하면, 동작 605에서, 일 실시예에서, 프로세서(330)는, 통신 인터페이스(310)를 통하여, 복수의 외부 전자 장치들로, 제 2 패턴, 지정된 시간 간격(예: 제 2 패턴의 지정된 시간 간격), 및 임계 파라미터(예: 임계 파라미터의 값)를 전송할 수 있다.
일 실시예에서, 프로세서(330)는, 통신 인터페이스(310)를 통하여, 패턴을 제공하는 서비스에 등록된 모든 외부 전자 장치들로, 제 2 패턴(예: 임계 파라미터에 대응하는 제 2 패턴)(예: [표 9]에서 조건(?:?+sensor_?_present) 및 액션( TV_?_switch_on)의 조합), 지정된 시간 간격(예: 동작 703에서 결정된 최종 시간 간격), 및 임계 파라미터(예: 동작 703에서 결정된 임계 파라미터의 값)를 전송할 수 있다. 예를 들어, 프로세서(330)는, 동작 601에서 패턴을 제공하는 서비스에 등록된 모든 외부 전자 장치들 중 일부로서 복수의 제 1 외부 전자 장치들로부터 제 2 패턴과 관련된 제 1 템플릿에 대한 정보를 수신한 경우에도, 패턴을 제공하는 서비스에 등록된 모든 외부 전자 장치들로, 통신 인터페이스(310)를 통하여, 제 2 패턴, 지정된 시간 간격, 및 임계 파라미터를 전송할 수 있다.
도 8은, 다양한 실시예들에 따른, 전자 장치(200)가 패턴을 제공하는 방법을 제공하는 방법을 설명하는 흐름도(800)이다.
일 실시예에서, 도 8은, 전자 장치(200)가 서버(300)로부터 제 2 패턴, 지정된 시간 간격(예: 제 2 패턴의 지정된 시간 간격), 및 임계 파라미터를 수신한 후, 제 2 패턴에 대응하는 제 3 패턴을 추천하는 방법에 대한 흐름도일 수 있다.
일 실시예에서, 도 8의 동작들을 수행하는 전자 장치(200)는, 도 4의 서버(300)로 템플릿에 대한 정보를 전송하는 전자 장치와 동일하거나 다를 수 있다. 예를 들어, 서버(300)는 패턴을 제공하는 서비스에 등록된 모든 전자 장치들로, 제 2 패턴, 지정된 시간 간격, 및 임계 파라미터를 전송할 수 있다. 서버(300)로 템플릿에 대한 정보를 전송하지 않은 전자 장치라도, 서버(300)로부터 제 2 패턴, 지정된 시간 간격, 및 임계 파라미터를 수신할 수 있다. 서버(300)로부터 제 2 패턴, 지정된 시간 간격, 및 임계 파라미터를 수신한 전자 장치는 도 8의 동작들을 수행할 수 있다.
동작 801에서, 일 실시예에서, 프로세서(240)는, 통신 인터페이스(210)를 통하여, 서버(300)로부터, 제 2 패턴, 지정된 시간 간격(예: 제 2 패턴의 지정된 시간 간격), 및 제 2 패턴과 관련된 임계 파라미터를 수신할 수 있다.
동작 803에서, 일 실시예에서, 프로세서(240)는, 통신 인터페이스(210)를 통하여, 적어도 하나의 외부 전자 장치로부터, 지정된 제 3 시간 동안 적어도 하나의 외부 전자 장치에서 발생한 적어도 하나의 제 3 이벤트와 관련된 정보를 수신할 수 있다.
일 실시예에서, 전자 장치(200) 및 적어도 하나의 외부 전자 장치는, 패턴을 제공하는 서비스에 등록된 전자 장치들일 수 있다. 예를 들어, 전자 장치(200) 및 적어도 하나의 외부 전자 장치는 패턴을 제공하는 서비스(또는 댁 내에 위치하는 적어도 하나의 전자 장치를 통합적으로 또는 개별적으로 관리(또는 제어)할 수 있는 서비스)에 등록된 전자 장치들일 수 있다.
일 실시예에서, 적어도 하나의 제 3 이벤트에 대한 정보는, 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치(예: 센서)로부터 수신되는, 댁 내의 상태(또는 댁 내의 상태 변경)에 대한 정보 또는 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치(예: 가전 기기)로부터 수신되는, 적어도 하나의 외부 전자 장치의 동작(또는 적어도 하나의 외부 전자 장치의 동작 변경)에 대한 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 적어도 하나의 제 3 이벤트에 대한 정보는, 이벤트와 관련된 정보(예: 댁 내의 상태에 대한 정보 또는 적어도 하나의 외부 전자 장치의 동작에 대한 정보) 외에, 적어도 하나의 외부 전자 장치에서 이벤트가 발생한 시간에 대한 정보를 포함할 수 있다.
일 실시예에서, 지정된 제 3 시간(또는 지정된 제 3 시간의 크기)는, 전술한 지정된 제 1 시간 또는 지정된 제 2 시간 중 적어도 하나와, 동일하거나 다를 수 있다. 일 실시예에서, 지정된 제 3 시간은, 지정된 제 2 시간 후의 시간으로서, 현재로부터 지정된 시간 이전까지의 시간을 지칭할 수 있다.
도 8에서는, 동작 801이 동작 803 보다 먼저 수행되는 것으로 예시하고 있지만 이에 제한되지 않는다. 예를 들어, 동작 803이 동작 801 보다 먼저 수행될 수도 있다.
일 실시예에서, 아래 [표 10]은, 지정된 제 3 시간 동안 적어도 하나의 외부 전자 장치에서 발생한 적어도 하나의 제 3 이벤트와 관련된 정보를 나타낼 수 있다.
이벤트 발생 시간 장치 종류 장치 ID 능력 능력 값
2020-07-29 16:11:22 TV xxx1 switch on
2020-07-30 16:14:22 sensor(예: 존재 감지 센서) xxx0 presence present
2020-07-31 16:12:22 TV(텔레비전) xxx1 switch on
2020-07-31 16:12:42 TV xxx1 tvChannel 11
2020-07-31 16:15:30 AC(에어컨) xxx2 switch on
동작 805에서, 일 실시예에서, 프로세서(240)는, 적어도 하나의 제 3 이벤트에 대한 정보 중에서, 지정된 적어도 하나의 시간 간격 내에 발생한 적어도 하나의 제 4 이벤트에 대한 정보에 기반하여, 제 2 패턴에 대응하는 제 3 패턴과 관련된 파라미터를 획득할 수 있다.
일 실시예에서, 제 3 패턴은, 조건 및 액션의 특정 정보가 삭제된 제 2 패턴과, 삭제된 조건 및 액션의 특정 정보를 제외한 정보가 동일하고, 조건 및 액션의 특정 정보를 포함하는 패턴을 지칭할 수 있다. 예를 들어, 제 2 패턴이 조건(?:?+sensor_?_present) 및 액션(TV_?_switch_on)의 조합인 경우, 제 3 패턴은 조건(16:10+sensor_xxx0_present) 및 액션(TV_xxx1_switch_on)의 조합일 수 있다. 일 실시예에서, 제 3 패턴의 지정된 시간 간격은 제 2 패턴의 지정된 시간 간격과 동일할 수 있다.
일 실시예에서, 프로세서(240)는, 도 4의 동작 403 및 동작 405를 통하여 설명한 동작과 적어도 일부가 동일 또는 유사한 동작을 수행함으로써, 복수의 패턴들을 획득할 수 있다. 프로세서(240)는, 획득된 복수의 패턴들 중에서 제 2 패턴에 대응하는 제 3 패턴(예: 제 2 패턴에 대응하고 지정된 시간 간격이 동일한 제 3 패턴)을 결정할 수 있다. 프로세서(240)는, 제 3 패턴(예: 제 3 패턴과 관련된 정보)에 기반하여, 제 3 패턴과 관련된 파라미터를 획득할 수 있다.
일 실시예에서, 아래 [표 11]은, [표 10]의 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여 획득된 제 3 패턴 및 제 3 패턴과 관련된 파라미터를 나타낼 수 있다.
시간 간격 조건 액션 n_ptns Confidence Lift
5분 16:10 TV_xxx1_switch_on 2 0.67 14
30분 TV_xxx1_switch_on AC_xxx2_switch_on 1 0.5 6
일 실시예에서, [표 11]은, 서버(300)로부터 수신된 제 2 패턴이, 패턴(조건(?:?) 및 액션(TV_?_switch_on)의 조합) 및 패턴(조건(TV_?_switch_on) 및 액션(AC_?_switch_on)의 조합)을 포함하는 경우에 획득되는, 제 3 패턴을 나타낼 수 있다.
동작 807에서, 일 실시예에서, 프로세서(240)는, 제 3 패턴의 파라미터가 임계 파라미터 이상인 경우, 제 3 패턴을 제공(예: 추천)할 수 있다.
일 실시예에서, 아래 [표 12]는, 날짜 별로 획득된, 제 3 패턴, 제 3 패턴의 파라미터, 및 임계 파라미터를 나타낼 수 있다.
현재날짜 조건 액션 n_ptns confidence Lift 임계 n_ptns 임계 confidence 임계 lift 시간 간격
2020-08-01 16:10 TV_xxx1_switch_on 8 0.72 8 ≥9 ≥0.7 ≥5 5분
TV_xxx1_switch_on AC_xxx2_switch_on 4 0.85 4 ≥6 ≥0.6 ≥2 30분
2020-08-02 16:10 TV_xxx1_switch_on 9 0.81 8 ≥9 ≥0.7 ≥5 5분
TV_xxx1_switch_on AC_xxx2_switch_on 5 0.75 4 ≥6 ≥0.6 ≥2 30분
2020-08-03 16:10 TV_xxx1_switch_on 9 0.75 8 ≥9 ≥0.7 ≥5 5분
TV_xxx1_switch_on AC_xxx2_switch_on 6 0.65 4 ≥6 ≥0.6 ≥2 30분
[표 12]에서, 지정된 시간 간격 5분의 제 3 패턴(조건(16:10) 및 액션(TV_xxx1_switch_on))과 관련된 임계 파라미터는, 임계 n_ptns가 9이고, 임계 confidence가 0.7이고, 임계 lift가 5일 수 있다.
[표 12]에서, 지정된 시간 간격 30분의 제 3 패턴(조건(TV_xxx1_switch_on) 및 액션(AC_xxx2_switch_on))과 관련된 임계 파라미터는, 임계 n_ptns가 6이고, 임계 confidence가 0.6이고, 임계 lift가 2일 수 있다.
일 실시예에서, 프로세서(240)는, [표 12]에서 현재 날짜가 2020년 8월 1일 인경우(예: 2020년 8월 1일을 기준으로 역산하여 지정된 제 3 시간(예: 2주) 동안 적어도 하나의 외부 전자 장치로부터 적어도 하나의 제 3 이벤트를 수신한 경우), 제 3 패턴의 n_ptns가 임계 n_ptns 보다 작으므로, 제 3 패턴을 추천하지 않을 수 있다.
일 실시예에서, 프로세서(240)는, [표 12]에서 현재 날짜가 2020년 8월 2일인 경우(예: 2020년 8월 2일을 기준으로 역산하여 지정된 제 3 시간(예: 2주) 동안 적어도 하나의 외부 전자 장치로부터 적어도 하나의 제 3 이벤트를 수신한 경우), 제 3 패턴(예: 조건(16:10) 및 액션(TV_xxx1_switch_on)의 조합)의 파라미터가 임계 파라미터 이상이므로, 제 3 패턴을 추천할 수 있다.
일 실시예에서, 프로세서(240)는, [표 12]에서 현재 날짜가 2020년 8월 3일인 경우(예: 2020년 8월 3일을 기준으로 역산하여 지정된 제 3 시간(예: 2주) 동안 적어도 하나의 외부 전자 장치로부터 적어도 하나의 제 3 이벤트를 수신한 경우), 제 3 패턴(예: 패턴(조건(16:10) 및 액션(TV_xxx1_switch_on)의 조합) 및 패턴(TV_xxx1_switch_on) 및 액션(AC_xxx2_switch_on)의 조합)의 파라미터가 임계 파라미터 이상이므로, 제 3 패턴을 추천할 수 있다.
일 실시예에서, 프로세서(240)는, 제 3 패턴의 파라미터가 임계 파라미터 이상이고, 제 3 패턴의 조건에 해당하는 이벤트가 발생한 경우, 제 3 패턴을 제공(예: 추천)할 수 있다.
일 실시예에서, 프로세서(240)는, 제 3 패턴을 제공하기 위하여, 디스플레이(220)를 통하여, 전자 장치(200)가 제 3 패턴을 상기 전자 장치에 설정할지 여부를 나타내는 정보를 표시할 수 있다. 다만, 제 3 패턴을 제공하는 방법은 전술한 예시에 제한되지 않는다.
일 실시예에서, 프로세서(240)가, 사용자 입력에 기반하여 제 3 패턴을 설정된 경우, 제 3 패턴의 조건에 해당하는 이벤트가 발생하면, 제 3 패턴의 액션에 해당하는 이벤트가 발생하도록, 적어도 하나의 외부 전자 장치를 제어할 수 있다. 예를 들어, 프로세서(240)는, 사용자 입력에 기반하여 제 3 패턴(조건(16:10) 및 액션(TV_xxx1_switch_on)의 조합)이 설정된 경우, 16시 10분이 되면 TV의 전원이 온되도록, TV를 제어할 수 있다. 다른 예를 들어, 프로세서(240)는, 사용자 입력에 기반하여 제 3 패턴(조건(16:10) 및 액션(TV_xxx1_switch_on)의 조합)이 설정된 경우, 16시 10분이 되면 TV의 전원이 온되도록, TV를 설정할 수 있다.
일 실시예에서, 도 4 내지 도 8에 도시하지는 않았지만, 전자 장치(200)는, 통신 인터페이스(210)를 통하여, 전자 장치(200)와 통신 연결된 적어도 하나의 외부 전자 장치로부터 이벤트에 대한 정보를 수신한 경우, 전술한 방법에 의해 템플릿을 생성하고 생성된 템플릿을 서버(300)로 전송함으로써, 서버(300)가 임계 파라미터를 조정(또는 업데이트)하도록 할 수 있다. 이에 따라, 서버(300)가 생성하는 임계 파라미터는 전자 장치(200)로부터 수신되는 템플릿에 대한 정보에 따라 조정될 수 있다.
도 8에서는, 전자 장치(200)가 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 컴퓨팅 능력을 가진 전자 장치인 경우를 예시하고 있으며, 일 실시예에서, 전자 장치(200)가 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 컴퓨팅 능력을 가진 전자 장치가 아닌 경우(예: 패턴을 제공하는 서비스에 등록된 전자 장치 전체가 패턴을 제공하는 동작의 적어도 일부를 수행할 수 있는 컴퓨팅 능력을 가지지 못한 경우), 도 8에서 설명한 예시들은, 서버(300)에서 수행될 수 있다.
또한, 상술한 본 발명의 실시예에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, CD-ROM, DVD 등)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: IoT 시스템

Claims (20)

  1. 전자 장치에 있어서,
    통신 인터페이스;
    메모리; 및
    상기 통신 인터페이스 및 상기 메모리와 기능적으로 연결된 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 통신 인터페이스를 통하여, 적어도 하나의 외부 전자 장치로부터, 지정된 제 1 시간 동안 발생한 적어도 하나의 제 1 이벤트와 관련된 정보를 수신하고,
    상기 적어도 하나의 제 1 이벤트에 대한 정보 중에서 지정된 적어도 하나의 시간 간격 내에 발생한 적어도 하나의 제 2 이벤트에 대한 정보에 기반하여, 제 1 패턴 및 상기 제 1 패턴과 관련된 제 1 파라미터를 획득하고,
    상기 통신 인터페이스를 통하여, 상기 적어도 하나의 외부 전자 장치로부터, 지정된 제 2 시간 동안 발생한 적어도 하나의 제 3 이벤트와 관련된 정보를 수신하고,
    상기 적어도 하나의 제 3 이벤트와 관련된 정보에 기반하여, 상기 제 1 패턴과 관련된 제 2 파라미터를 획득하고,
    상기 제 1 패턴, 상기 제 1 파라미터, 및 상기 제 2 파라미터에 기반하여, 제 1 템플릿을 생성하고, 및
    상기 통신 인터페이스를 통하여, 서버로, 상기 제 1 템플릿에 대한 정보를 전송하도록 설정된 전자 장치.
  2. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 적어도 하나의 제 1 이벤트에 대한 정보에 대한 식별자를 생성하고, 및
    상기 통신 인터페이스를 통하여, 상기 서버로, 상기 제 1 템플릿 및 상기 식별자를 포함하는 상기 제 1 템플릿에 대한 정보를 전송하도록 설정된 전자 장치.
  3. 제 2 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 적어도 하나의 지정된 시간 간격 마다, 상기 적어도 하나의 제 2 이벤트에 기반하여, 시퀀스 셋(sequence set)을 획득하고,
    상기 시퀀스 셋과, 상기 지정된 시간 간격의 기준이 시점에 기반하여, 상기 제 1 패턴의 조건 및 액션을 결정하고, 및
    상기 제 1 파라미터를 획득하도록 설정된 전자 장치.
  4. 제 3 항에 있어서,
    상기 시퀀스 셋은 상기 적어도 하나의 지정된 시간 간격 내에 발생된 상기 적어도 하나의 제 2 이벤트를 포함하고,
    상기 적어도 하나의 제 2 이벤트는 상기 시퀀스에서 상기 적어도 하나의 제 2 이벤트가 발생한 시간에 따라 배열되는 전자 장치.
  5. 제 3 항에 있어서,
    상기 제 1 파라미터는, 상기 제 1 패턴과 관련된, 지지도(support), 신뢰도(confidence), 향상도(lift), 또는 RPF(rule power factor) 중 적어도 하나를 포함하는 전자 장치.
  6. 제 5 항에 있어서,
    상기 제 2 파라미터는, 검증을 위한 신뢰도를 포함하는 전자 장치.
  7. 제 1 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 1 패턴의 특정 정보를 삭제함으로써 제 2 패턴을 획득하고,
    상기 제 2 패턴, 상기 제 1 파라미터, 상기 제 2 파라미터, 상기 적어도 하나의 시간 간격을 포함하는 상기 제 1 템플릿을 생성하도록 설정된 전자 장치.
  8. 서버에 있어서,
    통신 인터페이스;
    메모리; 및
    상기 통신 인터페이스 및 상기 메모리와 기능적으로 연결된 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 통신 인터페이스를 통하여, 복수의 외부 전자 장치들로부터, 제 1 패턴과 관련된 제 1 템플릿에 대한 정보를 수신하고,
    상기 제 1 템플릿에 대하여, 지정된 조건을 만족하는, 상기 제 1 패턴과 관련된 지정된 시간 간격 및 임계 파라미터의 값을 결정하고, 및
    상기 통신 인터페이스를 통하여, 상기 복수의 외부 전자 장치들로, 상기 제 1 패턴, 상기 지정된 시간 간격, 및 상기 임계 파라미터의 값을 전송하도록 설정된 서버.
  9. 제 8 항에 있어서,
    상기 제 1 템플릿에 대한 정보는, 조건 및 액션의 특정 정보가 삭제된 상기 제 1 패턴, 상기 제 1 패턴과 관련된 제 1 파라미터 및 제 2 파라미터, 상기 제 1 패턴을 획득하기 위하여 이용된 적어도 하나의 시간 간격, 및 상기 복수의 외부 전자 장치들 각각의 식별자를 포함하는 서버,
  10. 제 9 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 1 템플릿에 대하여, 상기 지정된 적어도 하나의 시간 간격 마다, 후보 임계 파라미터의 값들을 이용하여, 검증을 위한 신뢰도의 평균, 추천 범위, 및 추천 정확도를 획득하도록 설정된 서버.
  11. 제 10 항에 있어서,
    상기 검증을 위한 신뢰도의 평균은, 상기 후보 임계 파라미터의 값 이상인 상기 제 1 파라미터의 값을 가지는 식별자에 대응하는, 검증을 위한 신뢰도의 평균이고,
    상기 추천 범위는, 상기 서버에 등록된 식별자의 총 개수에 대한, 상기 후보 임계 파라미터의 값 이상인 상기 제 1 파라미터의 값을 가지는 상기 식별자의 개수의 비율이고, 및
    상기 추천 정확도는, 상기 후보 임계 파라미터의 값 이상의 상기 제 1 파라미터의 값을 가지는 상기 식별자의 개수에 대한, 상기 후보 임계 파라미터의 값 이상인 파라미터 값을 가지는 상기 식별자 중에서 상기 제 2 파라미터에 포함되고 지정된 값 이상의 검증을 위한 신뢰도의 값을 가지는 식별자의 개수의 비율인 서버.
  12. 제 11 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 후보 임계 파라미터의 값들 중에서, 상기 검증을 위한 신뢰도의 평균, 상기 추천 범위, 또는 상기 추천 정확도 중 적어도 하나에 기반하여, 상기 임계 파라미터의 값 및 상기 지정된 시간 간격을 결정하도록 설정된 서버.
  13. 제 12 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 검증을 위한 신뢰도의 평균이 지정된 값 이상이고, 상기 추천 정확도가 지정된 값 이상으로 산출되도록 하는, 후보 임계 파라미터의 값들 중에서, 상기 추천 범위가 최대인, 후보 임계 파라미터의 값을, 상기 임계 파라미터의 값으로 결정하도록 설정된 서버.
  14. 제 13 항에 있어서,
    상기 적어도 하나의 프로세서는,
    지정된 알고리즘 또는 인공 신경망을 이용하여, 상기 제 1 파라미터 중에서 상기 후보 임계 파라미터를 결정하도록 설정된 서버.
  15. 전자 장치에 있어서,
    통신 인터페이스;
    메모리; 및
    상기 통신 인터페이스 및 상기 메모리와 기능적으로 연결된 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는,
    상기 통신 인터페이스를 통하여, 서버로부터, 제 1 패턴, 상기 제 1 패턴과 관련된 지정된 시간 간격, 및 상기 제 1 패턴과 관련된 임계 파라미터의 값을 수신하고,
    상기 통신 인터페이스를 통하여, 상기 적어도 하나의 외부 전자 장치로부터, 지정된 제 1 시간 동안 발생한, 적어도 하나의 제 1 이벤트와 관련된 정보를 수신하고,
    상기 적어도 하나의 제 1 이벤트 중에서 상기 지정된 시간 간격 내에 발생한 적어도 하나의 제 2 이벤트에 기반하여, 상기 제 1 패턴에 대응하는 제 2 패턴과 관련된 제 1 파라미터를 획득하고, 및
    상기 제 1 파라미터의 값이 상기 임계 파라미터의 값 이상인 경우, 상기 제 2 패턴을 제공하도록 설정된 전자 장치.
  16. 제 15 항에 있어서,
    상기 제 1 패턴은 조건 및 액션의 특정 정보가 삭제된 패턴인 전자 장치.
  17. 제 16 항에 있어서,
    상기 제 2 패턴은, 상기 제 1 패턴과 상기 삭제된 조건 및 액션의 특정 정보를 제외한 정보가 동일하고, 상기 적어도 하나의 제 2 이벤트에 기반하여 획득된 조건 및 액션 특정 정보를 포함하는 전자 장치.
  18. 제 17 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 1 파라미터가 상기 임계 파라미터 이상인 경우, 상기 전자 장치의 디스플레이를 통하여, 상기 제 2 패턴을 설정할지 여부를 나타내는 정보를 표시하도록 설정된 전자 장치.
  19. 제 18 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 2 패턴이 설정된 경우, 상기 제 2 패턴의 조건으로 설정된 이벤트가 발생되면, 상기 제 2 패턴의 액션으로 설정된 이벤트가 수행되도록, 상기 적어도 하나의 외부 전자 장치를 제어하도록 설정된 전자 장치.
  20. 제 17 항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제 1 파라미터의 값이 상기 임계 파라미터의 값 이상이고 상기 제 2 패턴의 조건에 해당하는 이벤트가 발생된 경우, 상기 전자 장치의 디스플레이를 통하여, 상기 제 2 패턴을 설정할지 여부를 나타내는 정보를 표시하도록 설정된 전자 장치.
KR1020200133596A 2020-10-15 2020-10-15 패턴을 제공하는 방법 및 이를 지원하는 전자 장치 KR20220049901A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200133596A KR20220049901A (ko) 2020-10-15 2020-10-15 패턴을 제공하는 방법 및 이를 지원하는 전자 장치
PCT/KR2021/005389 WO2022080615A1 (ko) 2020-10-15 2021-04-28 패턴을 제공하는 방법 및 이를 지원하는 전자 장치
US17/309,157 US11856124B2 (en) 2020-10-15 2021-04-28 Method for providing pattern and electronic device for supporting the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200133596A KR20220049901A (ko) 2020-10-15 2020-10-15 패턴을 제공하는 방법 및 이를 지원하는 전자 장치

Publications (1)

Publication Number Publication Date
KR20220049901A true KR20220049901A (ko) 2022-04-22

Family

ID=81209300

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200133596A KR20220049901A (ko) 2020-10-15 2020-10-15 패턴을 제공하는 방법 및 이를 지원하는 전자 장치

Country Status (3)

Country Link
US (1) US11856124B2 (ko)
KR (1) KR20220049901A (ko)
WO (1) WO2022080615A1 (ko)

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101283185B1 (ko) 2009-11-23 2013-07-05 한국전자통신연구원 사용자 패턴 기반으로 동작하는 저전력 장치 및 그 방법
US9369505B2 (en) 2010-11-24 2016-06-14 Industry-University Cooperation Foundation Hanyang University Erica Campus System for sharing event and data between personal devices
KR20120071722A (ko) 2010-12-23 2012-07-03 한국전자통신연구원 응용 필드 통신 방법 및 시스템
US10185934B2 (en) 2013-07-09 2019-01-22 Qualcomm Incorporated Real-time context aware recommendation engine based on a user internet of things environment
KR102104355B1 (ko) 2013-08-30 2020-05-29 엘지전자 주식회사 영상 표시 기기 및 그 동작 방법
JP6201670B2 (ja) * 2013-11-15 2017-09-27 富士通株式会社 判定装置、判定プログラム、及び判定方法
WO2015076609A1 (en) 2013-11-21 2015-05-28 Samsung Electronics Co., Ltd. Method and apparatus for controlling home devices on group basis in a home network system
US10007886B1 (en) * 2014-10-02 2018-06-26 Google Llc Context-based event creation
US10204310B2 (en) 2015-01-16 2019-02-12 Txu Energy Retail Company Llc System and method for home automation
US9813509B1 (en) * 2015-06-09 2017-11-07 Amazon Technologies, Inc. Template generator for frequently occurring application programming interface call sequences
KR102344021B1 (ko) 2015-12-23 2021-12-28 삼성전자주식회사 디바이스를 제어하는 방법 및 장치
KR102522150B1 (ko) 2016-03-31 2023-04-14 삼성전자주식회사 단말장치 및 그 제어방법
KR20170116306A (ko) 2016-04-08 2017-10-19 한국전자통신연구원 가전 사용 패턴 추천 장치 및 방법
KR102058557B1 (ko) 2016-05-17 2019-12-23 한국전자통신연구원 스마트 홈 기반 실내 환경 제어모드 추천 장치 및 방법
KR101927706B1 (ko) 2016-08-03 2018-12-11 주식회사 버즈뮤직코리아 상황별 음악 추천 방법 및 이를 이용하는 장치
US10764153B2 (en) 2016-09-24 2020-09-01 Apple Inc. Generating suggestions for scenes and triggers
KR102042690B1 (ko) 2018-05-30 2019-11-27 (주)유비벨록스모바일 Iot 기기 자동 제어를 위한 엣지-클라우드 시스템
US20200120163A1 (en) 2018-10-12 2020-04-16 Thingify Private Limited Managing data and personification of iot devices in multiple networks
JP2020190831A (ja) * 2019-05-20 2020-11-26 パナソニックIpマネジメント株式会社 情報処理方法、サーバ装置及び情報処理プログラム

Also Published As

Publication number Publication date
US11856124B2 (en) 2023-12-26
WO2022080615A1 (ko) 2022-04-21
US20220217230A1 (en) 2022-07-07

Similar Documents

Publication Publication Date Title
US10401806B2 (en) Adaptive control systems for buildings
KR102060573B1 (ko) 개방식 감시 시스템 및 그 조작 방법
US9021462B2 (en) Systems and methods for provisioning equipment
CN107544272B (zh) 终端控制方法、装置及存储介质
KR102058557B1 (ko) 스마트 홈 기반 실내 환경 제어모드 추천 장치 및 방법
CN107003836B (zh) 用于所连接的消费者设备的灵活设备模板
US10885454B2 (en) Novelty detection of IoT temperature and humidity sensors using Markov chains
KR102456900B1 (ko) 에지 컴퓨팅 기반 데이터 분석 시스템 및 그 방법
KR20190037472A (ko) 히스토리 데이터 기반 뉴럴 네트워크 학습을 통한 공정 제어 방법 및 시스템
KR20190043019A (ko) 외부 전자 장치의 상태에 대응하도록 IoT 장치를 제어할 수 있는 전자 장치 및 전자 장치 운용 방법
JP2020154785A (ja) 予測方法、予測プログラムおよびモデル学習方法
Haque et al. IoT based home automation system with customizable GUI and low cost embedded system
US20180246488A1 (en) Generation and publication of shared tagsets
KR102075507B1 (ko) 모바일 단말을 이용한 실내 조명 관리 방법, 장치 및 컴퓨터-판독가능 기록매체
CN114360554A (zh) 一种车辆远程控制方法、装置、设备及存储介质
KR20220049901A (ko) 패턴을 제공하는 방법 및 이를 지원하는 전자 장치
CN113162851A (zh) 组的实现方法及相关设备
WO2017013740A1 (ja) 規則生成装置、規則生成方法、及びプログラム
US20220207289A1 (en) Device selection apparatus, data set selection apparatus, method for selecting device, and program
CN109218049B (zh) 一种控制方法、相关设备以及系统
KR20190142644A (ko) 관제 맵 가중치 제어 방법 및 그 장치
US20230199932A1 (en) Executing control command in dependence on presence being detected
CN114928538A (zh) 设备配置处理方法、装置、计算机设备和存储介质
JP6515052B2 (ja) 通信装置、通信システム、通信方法およびプログラム
JP2023524953A (ja) モノのインターネットに基づく動作関連付け方法、電子デバイス及び記憶媒体