KR101752488B1 - 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체 - Google Patents

사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR101752488B1
KR101752488B1 KR1020160079306A KR20160079306A KR101752488B1 KR 101752488 B1 KR101752488 B1 KR 101752488B1 KR 1020160079306 A KR1020160079306 A KR 1020160079306A KR 20160079306 A KR20160079306 A KR 20160079306A KR 101752488 B1 KR101752488 B1 KR 101752488B1
Authority
KR
South Korea
Prior art keywords
data
context
information
object internet
inference
Prior art date
Application number
KR1020160079306A
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 KR1020160079306A priority Critical patent/KR101752488B1/ko
Priority to PCT/KR2017/006707 priority patent/WO2017222354A1/ko
Application granted granted Critical
Publication of KR101752488B1 publication Critical patent/KR101752488B1/ko

Links

Images

Classifications

    • G06F17/30734
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F17/30864
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • H04L67/16
    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 상황 인지 시스템에 관한 것으로서, 사물 인터넷 환경에서 지능형 서비스를 제공하기 위한 상황인지 시스템에 있어서, 각각 적어도 하나의 센서와 통신부를 포함하는 복수 개의 사물 인터넷 디바이스들; 상기 복수 개의 사물 인터넷 디바이스들과 연결되어 사물 인터넷 네트워크 레이어를 형성하며, 인터넷 망과 연결되는 적어도 하나의 게이트웨이 디바이스를 포함하는 게이트웨이; 및 상기 인터넷 망과 상기 게이트웨이를 통해 상기 사물 인터넷 네트워크 레이어의 상기 복수 개의 사물 인터넷 디바이스들과 데이터를 송수신하는 클라우드 서버 레이어; 를 포함하고, 상기 복수 개의 사물 인터넷 디바이스들 중 상황인지 처리 과정을 실시간 처리할 수 없다고 판단한 적어도 하나의 사물 인터넷 디바이스는, 상기 상황인지 처리 과정의 필수요소인 상황정보를 생성하여 상기 클라우드 서버 레이어의 상황인지 서버로 전송하고, 상기 상황인지 서버는, 상기 상황정보를 전송한 사물 인터넷 디바이스의 상황인지 처리 과정을 수행하여 결과 데이터인 상황인지 결과정보를 생성하며, 상기 생성된 상황인지 결과정보를 상기 사물 인터넷 네트워크 레이어의 상기 복수 개의 사물 인터넷 디바이스들에게 배포하고, 상기 상황인지 결과정보를 수신 받은 사물 인터넷 디바이스가 상기 수신 받은 상황인지 결과정보에 대응되는 적어도 하나의 동작을 수행하도록 지원하는 것을 포함할 수 있다.

Description

사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체{SYSTEM, METHOD AND COMPUTER READABLE RECORDING MEDIUM FOR PROVIDING ONTOLOGY BASED CONTEXT AWARENESS SERVICE IN IoT ENVIRONMENT}
본 발명은 상황인지 시스템에 관한 것으로서, 보다 상세하게는 사물 인터넷 환경에서 각각의 사물 인터넷 디바이스가 자신의 사양에 제약 없이 상황 인지를 위한 데이터들을 실시간 처리할 수 있도록 지원할 수 있는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다.
사물 인터넷(IoT: Internet Of Things)은 센서를 내장하고 있는 사물들이 서로 연결되어 각 객체로 존재하던 디바이스들 정보의 합 이상의 가치를 제공하는 시스템 또는 네트워크계를 의미한다. 사물 인터넷 환경(IoT Environment)은 서비스(service), IoT 디바이스 및 플랫폼(platform)을 포함하여 구성되며, 각 구성 요소간 연결성(connectivity) 제공을 통해 각 구성 요소 간 상호 연동하여 다양한 서비스를 제공할 수 있다. 여기서 플랫폼은 다음과 같은 세가지 요건들이 충족되어야 한다.
첫째, 사용자의 유/무형의 환경을 충분히 감당(cover)할 수 있는 서비스를 제공되도록 지원할 수 있어야 한다.
둘째, 사용자의 주변 환경에서 발생하는 상황들에 대한 정보를 언제나 수집할 수 있도록 지원할 수 있어야 한다.
셋째, 사용자와 각 구성 요소 간 커뮤니케이션이 언제든지 원활하게 수행되도록 지원할 수 있어야 한다.
한편, 종래의 사물 인터넷 환경에서 각각의 사물 인터넷 디바이스는 자신의 사양에 제약이 있어 상황인지를 위한 데이터 처리를 실시간 수행할 수 없었다.
또한, 종래의 사물 인터넷 환경에서 각각의 사물 인터넷 디바이스는 인터넷 망과 연결된 게이트웨이를 통해 서버와 연결되고, 연결된 서버로부터 각각의 사물 인터넷 디바이스는 동작을 제어 받았다. 각각의 사물 인터넷 디바이스와 서버 간의 데이터 송수신 연결이 단절된 경우, 각각의 사물 인터넷 디바이스는 사용자에게 각자의 고유 동작을 서비스할 수 없다. 이는 매우 효율적이지 못하고 사용자에게 제공되어야 할 서비스를 개시하는데 많은 시간을 소모한다.
따라서 사물 인터넷 환경에서 상황인지를 위한 데이터들을 실시간 처리하고, 각각의 사물 인터넷 디바이스가 상황에 맞는 서비스를 사용자에게 제공하도록 지원할 수 있는 사물 인터넷 환경을 구성하는 효율적인 메커니즘에 대한 필요성이 대두되고 있다.
KR 10-2015-7025996 A
본 발명의 일 실시예는 사물 인터넷 환경에서 각각의 사물 인터넷 디바이스가 사양의 제약 없이 상황인지를 데이터를 실시간 처리할 수 있도록 지원할 수 있는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체를 제공하는 것이다.
본 발명의 일 측면에 따르면, 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템은, 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템에 있어서, 각각 적어도 하나의 센서와 통신부를 포함하는 복수 개의 사물 인터넷 디바이스들; 상기 복수 개의 사물 인터넷 디바이스들과 연결되어 사물 인터넷 네트워크 레이어를 형성하며, 인터넷 망과 연결되는 적어도 하나의 게이트웨이 디바이스를 포함하는 게이트웨이; 및 상기 인터넷 망과 상기 게이트웨이를 통해 상기 사물 인터넷 네트워크 레이어의 상기 복수 개의 사물 인터넷 디바이스들과 데이터를 송수신하는 클라우드 서버 레이어; 를 포함하고, 상기 복수 개의 사물 인터넷 디바이스들 중 상황인지 처리 과정을 실시간 처리할 수 없다고 판단한 적어도 하나의 사물 인터넷 디바이스는, 상기 상황인지 처리 과정의 필수요소인 상황정보를 생성하여 상기 클라우드 서버 레이어의 상황인지 서버로 전송하고, 상기 상황인지 서버는, 상기 상황정보를 전송한 사물 인터넷 디바이스의 상황인지 처리 과정을 수행하여 결과 데이터인 상황인지 결과정보를 생성하며, 상기 생성된 상황인지 결과정보를 상기 사물 인터넷 네트워크 레이어의 복수 개의 사물 인터넷 디바이스들에게 배포하는 하고, 상기 상황인지 결과정보를 수신 받은 사물 인터넷 디바이스가 상기 수신 받은 상황인지 결과정보에 대응되는 적어도 하나의 동작을 수행하도록 지원할 수 있다.
상기 클라우드 레이어는, 상기 복수 개의 사물 인터넷 디바이스들로부터 전송되는 센싱데이터 수집되는 및 상황정보를 수신 및 저장하는 데이터 저장소; 상기 인터넷 망을 통해 공개된 외부 데이터를 수집하여 상기 데이터 저장소에 저장되도록 지원하는 외부 데이터 수집 크롤러; 및 상기 복수 개의 사물 인터넷 디바이스들 중 적어도 하나로부터 상기 상황정보가 수신되면, 데이터 저장소에 저장된 정보들을 바탕으로 상기 상황정보를 전송한 해당 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행하여 결과 데이터인 상황인지 결과정보를 생성하고, 상기 생성된 상황인지 결과정보를 상기 사물 인터넷 네트워크 레이어의 복수 개의 사물 인터넷 디바이스들에게 배포하는 상황인지 서버; 를 포함할 수 있다.
상기 외부 데이터 수집 크롤러는, 상기 수집된 외부 데이터 중 상기 상황인지 서버가 상기 상황정보를 전송한 해당 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행 시 참조할 수 있는 데이터를 선별하여 정제 외부 데이터를 생성하고, 상기 정제 외부 데이터를 상기 데이터 저장소에 저장되도록 지원할 수 있다.
상기 복수 개의 사물 인터넷 디바이스들 중 적어도 하나의 인터넷 디바이스로부터 관리자 명령정보가 수신되면, 상기 수신 받은 관리자 명령정보에 대응되는 제어정보를 생성하고, 상기 생성된 제어정보를 상기 관리자 명령정보를 전송한 적어도 하나의 사물 인터넷 디바이스로 전송하여 상기 제어정보에 대응되는 적어도 하나의 동작이 수행되도록 지원하는 제어 서버; 를 더 포함할 수 있다.
상기 제어 서버는, 상기 제어정보를 수신 받은 적어도 하나의 사물 인터넷 디바이스로부터 상기 동작의 수행 결과를 나타내는 결과정보를 수신 받고, 상기 수신 받은 결과 정보를 상기 상황인지 서버가 상기 상황정보를 전송한 해당 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행 시 참조할 수 있도록 상기 데이터 저장소에 저장되도록 지원할 수 있다.
상기 상황인지 서버는, 상기 데이터 저장소로부터 트리플(triples) 형태의 데이터인 초기 트리플을 획득하여 복수 개의 리소스들로 분류하고, 분류된 상기 복수 개의 리소스 중 선부호화해야 하는 리소스를 추출하여, 추출된 리소스를 대상으로 리소스 사전 데이터를 참조하여 부호화를 수행하며, 상기 부호화의 수행 결과인 부호화된 데이터를 생성하고, 상기 분석된 복수 개의 리소스들을 구성하는 각각의 리소스에 대한 메타데이터를 생성하며, 상기 초기 트리플의 전체 데이터를 대상으로 사전 부호화를 통해 데이터 압축을 수행하는 데이터 변환부; 상기 데이터 변환부로부터 상기 부호화된 데이터, 인스턴스 데이터, 스키마 데이터 및 추론된 트리플 데이터를 저장하는 부호화 데이터 저장소; 상기 리소스 사전 데이터가 미리 저장된 리소스 사전 데이터 저장부; 맵리듀스 기반의 RDFS 공리(axiom)를 사용하여 온톨로지 추론을 수행하는 RDF/RDFS 추론부; 및 상기 RDF/RDFS 추론부와 상기 부호화 데이터 저장소의 사이에서 사용되는 메타데이터를 관리하는 메타데이터 관리부; 를 더 포함할 수 있다.
상기 데이터 변환부는, 상기 데이터 저장소로부터 트리플(triples) 형태의 데이터인 초기 트리플을 획득하여, 상기 초기 트리플을 복수 개의 리소스들로 분석하고, 분석된 상기 복수 개의 리소스 중 선부호화해야 하는 리소스를 추출하는 초과 계수부; 상기 분석된 복수 개의 리소스들을 구성하는 각각의 리소스에 대한 메타데이터를 생성하는 메타데이터 생성부; 및 상기 초기 트리플의 전체 데이터를 대상으로 사전 부호화를 통해 데이터 압축을 수행하며, 상기 초과 계수부에서 추출된 리소스를 대상으로 리소스 사전 데이터를 참조하여 부호화를 수행하고, 상기 부호화의 수행 결과인 부호화된 데이터를 생성하는 사전 부호화부; 를 포함할 수 있다.
상기 상황인지 서버는, 상기 온톨로지 추론을 수행한 후, 상기 온톨로지 추론의 결과 데이터를 보정하기 위해 확률적 추론-기계 학습(Machine Learning) 방법 중 강화 학습(Reinforcement Learning) 방법 기반의 추론-을 추가로 수행할 수 있다.
상기 온톨로지 추론은, 상기 RDFS 공리 중 RDF 제1 추론 규칙 및 RDFS 제2 내지 제13 추론 규칙을 사용하되, 각각 추론 규칙의 조건부 형식에 대한 분석을 통해 상기 각각의 추론 규칙이 공통된 특징을 갖는 추론 규칙을 하나의 추론 블록에 속하도록 구성한 추론 블록을 사용할 수 있다.
본 발명의 다른 측면에 따르면, 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법은, 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법에 있어서, 클라우드 레이어의 데이터 저장소가 사물 인터넷 네트워크 레이어로부터 전송되는 센싱데이터 및 상황정보를 수집하는 사물 인터넷 네트워크 레이어 정보 수집 과정; 상기 클라우드 레이어의 외부 데이터 수집 크롤러가 인터넷 망을 통해 대중에게 공개된 외부 데이터를 수집하여 정제한 후, 결과 데이터로 정제 외부 데이터를 생성하는 외부 데이터 처리 과정; 상기 클라우드 레이어의 상황인지 서버가 사물 인터넷 네트워크 레이어의 적어도 하나의 사물 인터넷 디바이스로부터 상황정보가 수신되었는지 판단하는 상황정보 수신 판단 과정; 상기 상황정보가 수신된 경우, 상기 상황인지 서버가 상기 데이터 저장소에 저장된 정보들을 참조하여 상기 상황정보를 전송한 적어도 하나의 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행하는 상황인지 처리 과정; 및 상기 상황인지 서버가 상기 상황인지 처리 과정의 결과 데이터인 상황인지 결과정보를 생성하고, 상기 생성된 상황인지 결과정보를 상기 사물 인터넷 네트워크 레이어의 복수 개의 사물 인터넷 디바이스들에게 배포하는 상황인지 결과정보 생성 및 전송 과정; 을 포함할 수 있다.
상기 상황인지 처리 과정은, 상기 상황인지 서버가 상기 데이터 저장소에 기 저장된 상기 사물 인터넷 네트워크 레이어의 각각의 사물 인터넷 디바이스의 센싱 데이터, 컨텍스트 타일-상황 정보 중 가장 작은 단위 데이터-, 정제 외부 데이터들 및 기존에 수행된 상황인지 처리 과정의 결과 데이터인 상황인지 결과정보 중 적어도 하나를 참조할 수 있다.
상기 따른 클라우드 레이어의 제어 서버가 상기 사물 인터넷 네트워크 레이어의 적어도 하나의 사물 인터넷 디바이스로부터 관리자의 명령정보가 수신되었는지 판단하는 관리자 명령정보 수신여부 판단 과정; 및 상기 명령정보가 수신된 경우, 제어 서버가 상기 관리자 명령정보를 전송한 사물 인터넷 디바이스의 제어정보를 생성하고, 상기 생성된 제어정보를 상기 관리자 명령 정보를 전송한 사물 인터넷 디바이스로 전송하여 상기 수신 받은 관리자 명령정보에 대응되는 동작을 상기 관리자 명령 정보를 전송한 사물 인터넷 디바이스가 수행하도록 지원하는 제어정보 생성 및 전송 과정; 을 더 포함할 수 있다.
상기 제어정보 생성 및 전송 과정 이후, 상기 제어 서버가 상기 제어정보를 수신 받은 사물 인터넷 디바이스로부터 상기 제어정보에 따라 동작의 수행 여부 및 수행 결과를 나타내는 결과정보를 수신 받고, 상기 수신 받은 결과 정보를 상기 상황인지 서버가 상기 관리자 명령정보를 전송한 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행 시 참조할 수 있도록 상기 데이터 저장소에 저장되도록 지원하는 결과정보 처리 과정; 을 더 포함할 수 있다.
상기 상황인지 처리 과정은, 상기 데이터 저장소로부터 트리플(triples) 형태의 데이터인 초기 트리플을 획득하여, 복수 개의 리소스들로 분석하고, 분석된 상기 복수 개의 리소스 중 선부호화해야 하는 리소스를 추출하여, 추출된 리소스를 대상으로 리소스 사전 데이터를 참조하여 부호화를 수행하며, 상기 부호화의 수행 결과인 부호화된 데이터를 생성하고, 상기 분석된 복수 개의 리소스들을 구성하는 각각의 리소스에 대한 메타데이터를 생성하며, 상기 초기 트리플의 전체 데이터를 대상으로 사전 부호화를 통해 데이터 압축을 수행하는 데이터 변화 과정; 상기 부호화된 데이터, 인스턴스 데이터, 스키마 데이터 및 추론된 트리플 데이터를 부호화 데이터 저장소에 저장하는 부호화 데이터 저장 과정; 및 맵리듀스 기반의 RDFS 공리(axiom)를 사용하여 온톨로지 추론을 수행하는 RDF/RDFS 추론 과정; 을 더 포함할 수 있다.
상기 상황인지 서버는, 상기 온톨로지 추론을 수행한 후, 상기 온톨로지 추론의 결과 데이터를 보정하기 위해 확률적 추론- 기계 학습(Machine Learning) 방법 중 강화 학습(Reinforcement Learning) 방법 기반의 추론-을 추가로 수행할 수 있다.
상기 RDF/RDFS 추론 과정은, 상기 RDFS 공리 중 RDF 제1 추론 규칙 및 RDFS 제2 내지 제13 추론 규칙을 사용하되, 각각 추론 규칙의 조건부 형식에 대한 분석을 통해 상기 각각의 추론 규칙이 공통된 특징을 갖는 추론 규칙을 하나의 추론 블록에 속하도록 구성한 추론 블록을 사용할 수 있다.
한편, 상기 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법에 대한 정보는 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있다. 이러한 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있도록 프로그램 및 데이터가 저장되는 모든 종류의 기록매체를 포함한다. 그 예로는, 롬(Read Only Memory), 램(Random Access Memory), CD(Compact Disk), DVD(Digital Video Disk)-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치, 임베디드 멀티미디어 카드(eMMC) 등이 있다. 또한, 이러한 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
본 발명의 실시예에 따르면, 사양의 제약에 의해 실시간 상황인지 처리 과정을 수행할 수 없는 사물 인터넷 레이어의 사물 인터넷 디바이스의 상황인지 처리 과정을 클라우드 레이어가 수행한 후, 상황인지 결과정보를 사물 인터넷 네트워크 레이어의 복수 개의 사물 인터넷 디바이스들에게 배포함으로써 사물 인터넷 레이어의 각각의 사물 인터넷 디바이스는 실시간 상황인지 처리 과정을 수행할 수 있다.
도 1은 본 발명의 실시예에 따른 본 발명의 실시예에 따른 사물 인터넷 환경에서 지능형 서비스를 제공하기 위한 상황인지 시스템을 나타내는 도면.
도 2는 본 발명의 실시예에 따른 클라우드 레이어의 세부구조를 나타내는 도면.
도 3은 본 발명의 실시예에 따른 클라우드 레이어의 처리 절차를 나타내는 도면.
도 4는 본 발명의 실시예에 따른 상황인지 서버의 세부구조를 나타내는 도면.
도 5는 본 발명의 실시예에 따른 클래스의 계층 구조에 따라 인스턴스의 새로운 타입을 추론하는 맵리듀스 작업의 흐름을 나타내는 도면.
도 6은 본 발명의 실시예에 따른 사전 부호화의 개념을 나타내는 도면.
도 7은 본 발명의 실시예에 따른 사전 부호화의 처리 절차를 나타내는 도면.
도 8은 본 발명의 실시예에 따른 사전 부호화 과정 중 트리플 아이디 할당 과정의 결과 예제를 나타내는 도면.
도 9는 RDFS 시맨틱스를 나타내는 도면.
도 10은 본 발명의 실시예에 따른 온톨로지 메타데이터 구축부를 나타내는 도면.
도 11은 본 발명의 실시예에 따른 RDF 스키마의 시맨틱스 중 도메인 정의역(domain relation)에 대한 메타데이터를 나타내는 도면.
도 12는 본 발명의 실시예에 따른 맵리듀스 환경에서 부하 균형 문제의 발생 원인을 나타내는 도면.
도 13은 본 발명의 실시예에 따른 RDFS 공리 사이의 의존 관계를 나타내는 도면.
도 14는 본 발명의 실시예에 따른 RDFS 규칙 간의 연관성을 나타내는 도면.
도 15는 본 발명의 실시예에 따른 공통된 특징에 따른 추론 블록의 구성 예를 나타내는 도면.
도 16은 본 발명의 실시예에 따른 rdfs 9를 맵리듀스로 표현한 알고리즘을 나타내는 도면.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 사상 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 사상 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는 적절하게 설명된다면 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
한편, 본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 발명에서 "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않아야 한다.
본 발명의 실시예들에 따른 '트리플' 또는 '트리플 데이터'는 '주어(Subject)-술어(Predicate)-목적어(Object)'의 구조로 이루어진 데이터를 의미할 수 있다. 여기서 술어(Predicate)은 주어(Subject)와 목적어(Object)를 연결해주는 관계(relation)가 된다. 데이터가 가지는 구조적 형태로 인해 온톨로지 분야에서 트리플로 칭해지며, 이는 데이터 모델 중 그래프 모델에서 가장 기본이 되는 데이터 형식이다
또한, 본 발명의 실시예에 따른 '트리플' 또는 '트리플 데이터'의 의미는 스테이트먼트(Statement)라는 의미와 동등하게 해석될 수 있다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 본 발명의 실시예에 따른 사물 인터넷 환경에서 지능형 서비스를 제공하기 위한 상황인지 시스템을 나타내는 도면이다.
도 1을 참조하면, 본 발명의 실시예에 따른 사물 인터넷 환경에서 지능형 서비스를 제공하기 위한 상황인지 시스템(500)은 사물 인터넷 네트워크 레이어(100), 게이트웨이(200), 인터넷 망(300) 및 클라우드 레이어(400)를 포함할 수 있다.
사물 인터넷 네트워크 레이어(100)는 복수 개의 사물 인터넷 디바이스들(110: 110a, 110b, 110c)을 포함할 수 있다. 복수 개의 사물 인터넷 디바이스들(110)은 게이트웨이(200)의 적어도 하나의 게이트웨이 디바이스(210: 210a, 210b, 210c, 210d)와 연결되어 자체 사물 인터넷 네트워크 망을 형성할 수 있다.
한편, 클라우드 레이어(400)의 적어도 하나의 상황인지 서버(410)가 수행하는 상황인지 데이터 처리를 무거운 연산작업이라 한다면 이에 비해 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)는 가벼운 연산 작업 즉, 각각의 사물 인터넷 디바이스(110a, 110b, 110c)의 상황인지 데이터 처리를 수행할 수 있다. 이는, 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)는 클라우드 레이어(400)의 적어도 하나의 상황인지 서버(410)에 비해 매우 낮은 수준의 컴퓨팅 성능과 작은 메모리를 양을 가지고 있기 때문이다.
게이트웨이(200)는 인터넷 망(300)과 연결된 적어도 하나의 게이트웨이 디바이스(210: 210a, 210b, 210c, 210d)를 포함할 수 있다.
게이트웨이 디바이스(210)는 사물 인터넷 네트워크 레이어(100)의 복수 개의 사물 인터넷 디바이스들(110)과 클라우드 레이어(400)의 적어도 하나의 상황인지 서버(410) 간의 데이터 송수신을 중개할 수 있다.
더욱 상세하게는, 게이트웨이 디바이스(210)는 인터넷 망(300)을 통해 클라우드 레이어(400)의 적어도 하나의 상황인지 서버(410)와 연결될 수 있다. 사물 인터넷 네트워크 레이어(100)의 복수 개의 사물 인터넷 디바이스들(11)은 게이트웨이 디바이스(210)를 통해 클라우드 레이어(400)의 적어도 하나의 상황인지 서버(410)와 연결되어 데이터 송수신을 수행할 수 있다.
또한, 게이트웨이 디바이스(210)는 자신과 연결된 사물 인터넷 디바이스들(110)에게 서로간 데이터 송수신을 수행할 수 있도록 자체 사물 인터넷 네트워크 망을 제공할 수 있다. 이때, 게이트웨이 디바이스(210)는 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(11a, 11b, 11c)이 자신의 상황인지 데이터를 실시간 처리할 수 있도록 지원할 수 있다.
더욱 상세하게는, 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)는 게이트웨이 디바이스(210)를 통해 메쉬업(mesh up)과 같은 자체 사물 인터넷 네트워크 망을 형성할 수 있다.
또한, 게이트웨이 디바이스(210)는 센서부(미도시)를 구비한 경우, 사물 인터넷 디바이스(110)와 같은 자신의 상황인지 처리 작업을 수행할 수 있다. 즉, 게이트웨이 디바이스(210)로서 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)과 클라우드 레이어(400) 간의 데이터 송수신을 담당함과 동시에 하나의 사물 인터넷 디바이스로서 동작할 수 있다.
또한, 게이트웨이 디바이스(210)와 인터넷 망(300) 간의 통신 연결이 단절된 경우, 게이트웨이 디바이스(210)는 형성된 사물 인터넷 네트워크 망 내에서 각각의 사물 인터넷 디바이스(110a, 110b, 110c)이 자신의 상황인지 데이터를 실시간 처리할 수 있도록 지원할 수 있다. 더욱 상세하게는, 게이트웨이 디바이스(210)는 일반적으로 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)의 사양에 비해 높은 사양의 컴퓨팅 능력을 보유하고 있기 때문에 상황인지 처리 과정을 실시간 수행할 수 없는 사물 인터넷 인터넷 디바이스의 상황인지 처리 과정을 대신 수행하고, 그 결과 데이터를 부하가 발생하여 자신의 상황 인지 처리 과정을 실시간 수행하지 못해 게이트웨이 디바이스(210)에게 대리시킨 해당 사물 인터넷 디바이스뿐만 아니라 사물 인터넷 네트워크 레이어(100)에 속한 나머지 다른 복수 개의 사물 인터넷 디바이스들에게 제공할 수 있다.
클라우드 레이어(400)는 적어도 하나의 상황인지 서버(410)를 포함할 수 있다. 여기서 서버는 클라우드 서버를 포함할 수 있다.
또한, 클라우드 레이어(400)의 상황인지 서버(410)는 하나의 마스터 서버(미도시)와 마스터 서버와 연결된 적어도 하나의 슬레이브 서버(미도시)를 포함할 수 있다. 여기서 마스터 서버와 슬레이브 서버는 하나의 전자장치 내에 존재하거나 각각 서로 다른 독립된 전자장치로 존재할 수 있다. 예를 들어, 상황인지 서버(410)가 실시간 처리해야 하는 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)로부터 전송 받는 상황정보의 양이 상황인지 서버(410)의 저장부(미도시)에 미리 설정된 실시간 데이터 처리 기준량을 초과하는지 모니터링할 수 있다. 여기서 상황정보는 상황인지 서버(410)가 수행하는 상황인지 처리 과정에 사용되는 정보를 의미할 수 있다.
상기 모니터링 결과, 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)로부터 상황인지 서버(410)로 실시간 전송되는 상황정보의 양이 미리 설정된 실시간 데이터 처리 기준량을 초과한다고 판단된 경우, 상황인지 서버(410)는 적어도 하나의 다른 서버를 슬레이브 서버로 지정한 후, 슬레이브 서버로 수신 받은 상황정보를 전송하여 데이터 처리의 부담을 슬레이브 서버에게 분담시킬 수 있다. 기존의 상황인지 서버(410)는 수신된 상황정보를 적어도 하나의 슬레이브 서버로 전송하여 상황인지 처리 과정을 분담시키고, 각각의 슬레이브 서버로부터 상황 인지 처리 과정을 통해 생성된 결과 데이터를 수집할 수 있는 권한을 가질 수 있다. 즉, 마스터 서버로 동작할 수 있다. 반면, 마스터 서버로부터 데이터 처리를 분담 받은 적어도 하나의 다른 서버는 슬레이브 서버로 동작할 수 있다.
상황인지 서버(410)는 인터넷 망(300)과 연결된 게이트웨이(200)의 게이트웨이 디바이스(210)를 통해 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스들(110a, 110b, 110c)과 데이터를 송수신할 수 있다.
또한, 상황인지 서버(410)는 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)로부터 상황인지 처리 과정에 필요한 상황정보들을 실시간 수신 받을 수 있다.
그 후, 상황인지 서버(410)는 각각의 사물 인터넷 디바이스(110a, 110b, 110c)로부터 수신 받은 상황정보들을 참조하여 상황인지 처리 과정을 수행할 수 있다. 여기서, 상황인지 서버(410)는 상황인지 처리 과정을 수행함에 있어서, 데이터 아카이브(Data Archive)와 같은 데이터 저장소에 저장된 기존에 수행된 상황인지 처리 결과 데이터들을 참조할 수 있다.
그 후, 상황인지 서버(410)는 상황인지 처리 과정을 수행한 결과 데이터를 생성하고, 생성된 결과 데이터를 다시 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)로 전송할 수 있다. 또한, 상황인지 서버(410)는 결과 데이터를 연결된 데이터 저장소로 전달하여 기존 저장된 상황인지 처리 결과 데이터들 갱신되도록 지원할 수 있다.
도 2는 본 발명의 실시예에 따른 클라우드 레이어의 세부구조를 나타내는 도면이다.
도 2를 참조하면, 본 발명의 실시예에 따른 클라우드 레이어(400)는 데이터 저장소(420), 외부 데이터 수집 크롤러(430), 제어 서버(440) 및 상황인지 서버(410)를 포함할 수 있다.
데이터 저장소(420)는 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스(110a, 110b, 110c)로부터 게이트웨이(200)와 인터넷 망(300)을 통해 클라우드 레이어(400)에 전송 또는 수집된 정보들이 저장될 수 있다.
외부 데이터 수집 크롤러(430)는 상황인지 서버(410)에서 수행되는 상황인지 처리 과정 중 판단 과정에서 참조될 수 있는 공개된 외부 데이터를 수집할 수 있다. 예를 들어, 외부 데이터는 기상정보와 같은 논리적 환경정보를 포함할 수 있다.
또한, 외부 데이터 수집 크롤러(430)는 수집된 외부 데이터 중 상황인지 서버(410)의 상황인지 처리 과정에서 실제 참조될 수 있는 데이터들을 선별하는 외부 데이터 정제 과정을 수행한 후, 결과 데이터로 정제 외부 데이터를 생성할 수 있다.
또한, 외부 데이터 수집 크롤러(430)는 정제 외부 데이터를 데이터 저장소(420)로 전달하여 저장되도록 지원할 수 있다. 여기서 데이터 저장소(420)에 미리 저장된 정제 외부 데이터는 상황인지 서버(410)가 상황인지 처리 과정 중 판단 과정 수행 시 필요에 따라 참조할 수 있다.
더욱 상세하게는, 외부 데이터 수집 크롤러(430)에서 생성된 후, 데이터 저장소(420)에 저장된 정제 외부 데이터를 참조하여 상황인지 서버(410)가 상황인지 처리 과정을 수행한 결과 데이터의 정확성은 정제 외부 데이터의 참조 없이 처리된 결과 데이터에 비해 높아질 수 있다.
제어 서버(440)는 사물 인터넷 네트워크 레이어(100)의 적어도 하나의 사물 인터넷 디바이스로부터 관리자(사용자)의 명령정보가 수신되면, 수신 받은 관리자 명령정보에 대응되는 동작을 사물 인터넷 디바이스가 수행하도록 사물 인터넷 디바이스의 제어정보를 생성하여 사물 인터넷 네트워크 레이어(100)로 전송할 수 있다. 여기서 명령정보는 특정된 사물 인터넷 디바이스의 ID 정보 및 특정된 동작을 수행하도록 제어하는 제어정보를 포함할 수 있다.
또한, 제어 서버(440)는 사물 인터넷 디바이스의 제어정보를 수신 받은 해당 사물 인터넷 디바이스로부터 제어정보에 따라 동작의 수행 여부 및 수행 결과를 나타내는 결과정보를 응답 데이터로 수신 받을 수 있다. 또한, 제어 서버(440)는 수신 받은 결과정보를 데이터 저장소(420)로 전달하여 저장되도록 지원할 수 있다. 여기서 데이터 저장소(420)에 저장된 결과정보는 상황인지 서버(410)가 상황인지 처리 과정 수행 시 필요에 따라 참조할 수 있다.
상황인지 서버(410)는 사물 인터넷 네트워크 레이어(100) 내에 적어도 하나의 사물 인터넷 디바이스로부터 상황정보가 수신되면, 데이터 저장소(440)에 저장된 정보들을 바탕으로 상황인지 처리 과정을 수행한 후, 상황인지 처리 과정의 처리 결과를 나타내는 정보인 상황인지 결과정보를 생성할 수 있다. 그 후, 상황인지 서버(410)는 상황인지 결과정보를 인터넷 망(300)과 연결된 게이트웨이(200)를 통해 사물 인터넷 네트워크 레이어(100)의 복수 개의 사물 인터넷 디바이스들에게 배포할 수 있다. 또한, 상황인지 서버(410)는 생성된 상황인지 결과정보를 데이터 저장소(420)로 전달하여 저장되도록 지원할 수 있다. 여기서 데이터 저장소(420)에 저장된 상황인지 결과정보는 상황인지 서버(410)가 상황인지 처리 과정 수행 시 필요에 따라 참조할 수 있다.
더욱 상세하게는, 다음 도 3을 참조하여 본 발명의 실시예에 따른 클라우드 레이어의 처리 절차를 설명한다.
도 3은 본 발명의 실시예에 따른 클라우드 레이어의 처리 절차를 나타내는 도면이다.
도 3을 참조하면, 본 발명의 실시예에 따른 클라우드 레이어(400)의 데이터 저장소(420)는 사물 인터넷 네트워크 레이어(100)로부터 전송되는 센싱데이터 및 상황정보를 수집하는 사물 인터넷 네트워크 레이어 정보 수집 과정(S310)을 수행할 수 있다.
또한, 본 발명의 실시예에 따른 클라우드 레이어(400)의 외부 데이터 수집 크롤러(430)는 인터넷 망(300)을 통해 대중에게 공개된 외부 데이터를 수집하여 정제한 후, 결과 데이터로 정제 외부 데이터를 생성하는 외부 데이터 처리 과정(S320)을 수행할 수 있다.
더욱 상세하게는, 본 발명의 실시예에 따른 클라우드 레이어의 외부 데이터 수집 크롤러의 외부 데이터 처리 과정(S320)은 다음과 같은 과정들을 더 포함할 수 있다.
본 발명의 실시예에 따른 클라우드 레이어(400)의 외부 데이터 수집 크롤러(430)는 인터넷 망(300)을 통해 대중에게 공개된 외부 데이터들을 수집하는 공개 외부 데이터 수집 과정을 수행할 수 있다. 그 후, 외부 데이터 수집 크롤러(430)는 수집된 공개 외부 데이터를 바탕으로 하기 설명된 상황인지 서버(410)가 수행하는 상황인지 처리 과정(S340)에서 실제 참조될 수 있는 데이터들을 선별하여 결과 데이터로 정제 외부 데이터들을 생성하는 정제 외부 데이터 생성 과정을 수행할 수 있다. 그 후, 외부 데이터 수집 크롤러(430)는 생성된 정제 외부 데이터들을 데이터 저장소(420)로 전달하여 기존에 저장된 정제 외부 데이터들이 갱신되도록 지원하는 정제 외부 데이터 갱신 과정을 수행할 수 있다.
사물 인터넷 네트워크 레이어 정보 수집 과정(S310) 및 외부 데이터 처리 과정(S320)이 수행된 후, 본 발명의 실시예에 따른 클라우드 레이어(400)의 상황인지 서버(410)는 사물 인터넷 네트워크 레이어(100)의 적어도 하나의 사물 인터넷 디바이스로부터 상황정보가 수신되었는지 판단하는 상황정보 수신 판단 과정(S330)을 수행할 수 있다.
상기 판단 결과, 상황정보가 수신된 경우, 상황인지 서버(410)는 데이터 저장소(420)에 저장된 정보들을 바탕으로 상황정보를 전송한 적어도 하나의 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행하는 상황인지 처리 과정(S340)을 수행할 수 있다.
상황정보가 수신되지 않은 경우, 상황인지 서버(410)는 상황정보가 수신되는지 여부를 모니터링 할 수 있다.
더욱 상세하게는, 상황인지 서버(410)가 상황인지 처리 과정(S340)에서 상황인지 서버(410)는 데이터 저장소(420)에 기 저장된 사물 인터넷 네트워크 레이어(100)의 각각의 사물 인터넷 디바이스의 센싱 데이터, 컨텍스트 타일-상황정보 중 가장 작은 단위 데이터-, 정제 외부 데이터들 및 기존에 수행된 상황인지 처리 과정(S340)의 결과 데이터인 상황인지 결과정보 중 적어도 하나를 참조할 수 있다.
그 후, 상황인지 서버(410)는 상황인지 처리 과정(S340)의 결과 데이터인 상황인지 결과정보를 생성하고, 생성된 상황인지 결과정보를 사물 인터넷 네트워크 레이어의 상기 복수 개의 사물 인터넷 디바이스들에게 배포하는 상황인지 결과정보 생성 및 전송 과정(S350)을 수행할 수 있다.
다음은 본 발명의 실시예에 따른 클라우드 레이어의 제어 서버의 처리 절차를 설명한다.
본 발명의 실시예에 따른 클라우드 레이어(400)의 제어 서버(440)는 사물 인터넷 네트워크 레이어(100)의 적어도 하나의 사물 인터넷 디바이스로부터 관리자(사용자)의 명령정보가 수신되었는지 판단하는 관리자 명령정보 수신여부 판단 과정을 수행할 수 있다.
상기 판단 결과, 명령정보가 수신된 경우, 제어 서버(440)는 수신 받은 관리자 명령정보에 대응되는 동작을 관리자 명령정보를 전송한 사물 인터넷 디바이스가 수행하도록 사물 인터넷 디바이스의 제어정보를 생성하고, 생성된 제어정보를 사물 인터넷 디바이스로 전송하는 제어정보 생성 및 전송 과정을 수행할 수 있다. 여기서 명령정보는 특정된 사물 인터넷 디바이스의 ID 정보 및 특정된 동작을 수행하도록 제어하는 제어정보를 포함할 수 있다.
그 후, 제어 서버(440)는 제어정보를 수신 받은 사물 인터넷 디바이스로부터 제어정보에 따라 동작의 수행 여부 및 수행 결과를 나타내는 결과정보를 응답 데이터로 수신 받고, 수신 받은 결과정보를 상황인지 서버(410)가 관리자 명령정보를 전송한 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행 시 참조할 수 있도록 데이터 저장소(420)로 전달하여 저장되도록 지원하는 결과정보 처리 과정을 수행할 수 있다.
본 발명의 실시예에 따른 상황인지 서버(410)는 상황인지 처리 과정을 크게 두 파트로 나누어 수행할 수 있다.
먼저, 상황인지 서버(410)의 첫 번째 파트는, 상황인지 서버(410)가 수집할 수 있는 상황 정보들과 사물 인터넷 디바이스(110)의 저장부(미도시)에 미리 저장된 상황인지 규칙정보로부터 기본 상황인지 결과정보-사물 인터넷 디바이스(110)의 저장부에 미리 저장된 상황인지 규칙정보를 기준으로 도출된 사물 인터넷 디바이스(110)의 상황을 나타내는 정보-를 도출할 수 있다.
더욱 상세하게는, 상황인지 서버(410)는 사물 인터넷 디바이스(110)에 저장부에 미리 저장된 상황인지 규칙정보-상황인지 처리 과정을 위해 참고되는 기준 규칙들을 나타내는 정보-를 기준으로 사물 인터넷 디바이스(110)의 센서부(미도시)에서 생성된 센싱 데이터, 사물 인터넷 디바이스(110)의 제어부(미도시)에서 생성된 컨텍스트 타일-상황정보 중 가장 작은 단위 데이터-, 외부 데이터 수집 크롤러(430)에서 생성된 정제 외부 데이터들 및 기존에 수행된 상황인지 처리 과정(S340)의 결과 데이터인 상황인지 결과정보를 참조하여, 사물 인터넷 디바이스(100)의 기본 상황인지 결과 정보를 도출할 수 있다.
한편, 클라우드 레이어(400)의 데이터 저장소(420)가 사물 인터넷 네트워크 레이어(100)로부터 수집하는 상황정보의 데이터의 양은 사물 인터넷 네트워크 레이어(100)에 속한 사물 인터넷 디바이스(110)의 수에 비례하여 증가할 수 있다. 따라서 상황인지 서버(410)는 사물 인터넷 디바이스(100)의 기본적인 상황판단을 수행하는 첫 번째 파트를 통해 많은 양의 데이터를 효율적으로 처리할 수 있다.
그 후, 상황인지 서버(410)의 두 번째 파트는, 첫 번째 파트에서 도출된 기본 상황인지 결과 정보가 옳은 판단이었는지를 검수하고, 검수된 기본 상황인지 결과 정보를 지속적으로 획득하는 정보들(센싱데이터, 컨텍스트 타일, 상황정보 및 기처리된 상황 결과 정보)을 참고하여 보정할 수 있다.
더욱 상세하게는, 상황인지 서버(410)의 두 번째 파트는, 첫 번째 파트에서 도출된 기본 상황인지 결과 정보가 옳은 판단이었는지를 검수하고, 검수된 기본 상황인지 결과 정보를 지속적으로 획득하는 정보들(센싱데이터, 컨텍스트 타일, 상황정보 및 기처리된 상황 결과 정보)을 참고하여 보정할 수 있다. 여기서 보정은 기계 학습(Machine Learning) 방법 중 강화 학습(Reinforcement Learning) 방법-지속적인 학습 및 평가-을 이용하여 수행되며, 단기적으로 수행되는 것이 아닌 지속적으로 될 수 있다.
따라서 상황인지 서버(410)는 도출된 기본 상황인지 결과정보를 검수한 후 보정을 진행함으로써, 최종 생성되는 상황인지 결과정보의 정확성을 증가시킬 수 있으며, 오판할 경우의 수를 감소시킬 수 있다.
또한, 상황인지 서버(410)는 검수된 상황인지 결과정보를 대상으로 강화학습을 통해 보정을 수행하여 보정된 기본 상황인지 결과정보를 생성한 후, 생성된 보정 상황인지 결과정보를 참조하여 상황인지 규칙 갱신정보-상황인지 처리 과정의 대리 수행을 요청한 해당 사물 인터넷 디바이스(110)의 상황인지 규칙정보를 갱신하기 위한 정보-를 생성할 수 있다. 그 후, 상황인지 서버(410)는 생성된 상황인지 규칙 갱신정보를 사물 인터넷 디바이스(110)로 전송하여 저장부에 저장된 상황인지 규칙정보가 갱신되도록 지원할 수 있다.
또한, 상황인지 서버(410)는 상황인지 처리 과정(S340)을 효율적으로 수행하기 위해, RDF(Resource Description Framework)을 사용하여 온톨로지를 구성하여 데이터 저장소(420)에 수집된 정보들을 구조화된 형식으로 운영할 수 있다.
또한, 상황인지 서버(410)는 RDFS 추론(Inference)- RDF와 RDF 데이터에 대한 스키마를 정의하고 있는 RDFS(RDF Schema)를 기반으로 하는 연역적 추론-을 통해 논리적 오류가 없는 상황 추론을 수행할 수 있으며 올바른 상황인지 결과를 도출할 수 있다. 예를 들어, 상황인지 서버(410)는 RDFS 기반 추론 과정을 수행하고, RDFS 기반 추론 과정에서 생성된 결과 데이터를 기반으로 사물 인터넷 디바이스(110)의 상황을 판단할 수 있다. 여기서 RDFS 기반 추론 과정은 W3C에서 표준으로 권고된 RDFS 추론 규칙(RDFS entailment rules) 중 총 14개의 핵심 추론 규칙을 사용하여 수행될 수 있다.
또한, 상황인지 서버(410)는 RDFS 추론 과정을 수행함에 있어서, 맵리듀스(Map Reduce) 알고리즘을 활용하여 데이터 저장소(420)에 수집된 대량의 데이터를 분산 처리할 수 있다.
한편, 상황인지 서버(410)가 수행하는 RDFS 추론 과정은 RDFS 추론 규칙들(총 14개의 핵심 추론 규칙)을 기준으로 명확한 논리 기반의 참/거짓에 대한 판단을 수행하기 때문에 추론의 유연성 및 다른 결과의 가능성이 배제될 수 있다. 이에 본 발명의 실시예에 따른 상황인지 서버(410)는 기계학습 기반의 확률적 추론을 함께 수행하여 RDFS 기반의 추론의 단점을 보완할 수 있다.
더욱 상세하게는, 상황인지 서버(410)는 데이터 저장소(420)에 수집된 정보들로 사물 인터넷 디바이스(110)의 현재 상황을 판단하며, 미래에 해당 사물 인터넷 디바이스(110)에서 발생할 수 있는 상황을 확률적 추론의 결과 데이터를 기반으로 예측할 수 있다. 또한, 상황인지 서버(410)는 RDFS 기반 추론 결과와 확률적 추론의 결과를 상호 비교하여 얻어지는 차이를 비교/분석하여 상황인지 서버(410)에서 최종 출력되는 데이터를 보정할 수 있다.
도 4는 본 발명의 실시예에 따른 상황인지 서버의 세부구조를 나타내는 도면이다.
도 4를 참조하면, 본 발명의 실시예에 따른 클라우드 레이어(400)의 상황인지 서버(410)는 데이터 변환부(data translation unit)(411), 메타데이터 관리부(metadata manager unit)(412), 부호화 데이터 저장소(encoded triples storage unit)(413), 리소스 사전 데이터 저장부(resource dictionary data storage unit)(414), 데이터 복호화부(415)(data decoder unit) 및 RDF/RDFS 추론부(Resource Description Framework/ Resource Description Framework Schema reasoner unit)(416)를 포함할 수 있다.
데이터 변환부(411)는 초기 트리플-데이터 저장소(420)에 수집된 정보들을 트리플(triples) 형태의 데이터-을 획득할 수 있다.
데이터 변환부(411)는 초과 계수부(excess counter unit)(411-1), 메타데이터 생성부(metadata generator unit)(411-2) 및 사전 부호화부(dictionary encoder unit)(411-3)을 포함할 수 있다.
초과 계수부(411-1)는 획득된 초기 트리플을 복수 개의 리소스들로 분석할 수 있다.
또한, 초과 계수부(411-1)는 분석된 복수 개의 리소스들 중 선부호화 해야 하는 리소스로 선택하여 추출하고, 추출된 리소스를 사전 부호화부(411-3)(미도시)로 전달할 수 있다.
더욱 상세하게는, 도 12를 참조하여 초과 계수부에 대하여 상세히 설명한다.
부하 균형 문제는 데이터 처리 과정에서의 빈번히 발생하는 문제로써, 특히 맵리듀스 환경에서는 동작 특성상 부하 균형에 대한 관리가 매우 중요하다. 맵리듀스 환경에서 type과 subClass 관계를 추론하기 위한 계산 수행을 시나리오로 부하 균형 문제를 표현할 수 있다.
도 12는 본 발명의 실시예에 따른 맵리듀스 환경에서 부하 균형 문제의 발생 원인을 나타내는 도면이다.
도 12를 참조하면, 맵리듀스 환경에서는 추론 시스템은 입력된 데이터를 각각 맵 함수(제1 내지 제n 맵 함수)로 전달할 수 있다. 각각의 맵 함수에서 추론을 위하여 각각 트리플의 목적어 리소스를 추출하여 키로 할당한 후, 리듀스 함수로 전달하는 과정에서 도 13에 도시된 봐와 같이 <Student>를 자주 출현하는 리소스라고 가정할 때, 제1 리듀스 함수가 속한 계산 노드는 제2 리듀스 함수가 속한 계산 노드에 비해 처리해야 하는 데이터의 양이 많아 병목현상이 발생하게 된다. 따라서, 제 2리듀스 함수가 속한 계산 노드는 작업을 완료하고도 제1 리듀스 함수의 작업이 완료될 때까지 유휴상태로 대기해야 하는 비효율성이 발생한다.
한편, 종래의 웹파이(WebPIE: Web-scale Parallel Inference Engine)에서 상술된 부하 균형 문제를 해결하기 위하여, 사전 부호화 과정을 통해 'Popular Term'을 추출하여 해당 리소스를 미리 처리하여 추후에 해당 리소스로 인한 병목을 해소하였다. 더욱 상세하게는, 종래의 WebPIE에서 'Popular Term'이 될 수 있는 요건은 '전체 트리플에서 1,000회 이상 나타난 리소스'와 같이 각각의 리소스의 출현 수를 합산하고, 합산된 출현 수가 입력한 값(사용자의 직관 하에 실행 명령의 인수(parameter)로 1,000을 입력한 값)을 초과하는 경우에 해당 리소스를 'Popular Term'으로 처리했다. 하지만 종래의 WebPIE에서 부하 균형 문제를 해결하는 방법은 사용자가 입력되는 트리플을 완벽히 이해하고 있다는 가정이 있어야만 실행 명령의 인수를 직접 입력할 수 있다. 따라서 부하 균형 문제에 대한 적합한 방안으로 볼 수 없다.
이에 본 발명의 실시예에 따른 상황인지 서버(410)의 초과 계수부(411-1)는 맵리듀스 환경의 부하 균형 문제를 해결하기 위해 초과 계수부(411-1)를 통해 각각의 리듀스 함수에 입력되는 입력 데이터 크기를 균일하게 조정할 수 있다.
더욱 상세하게는, 초과 계수부(411-1)는 데이터 변환기(411)에 입력되는 트리플 데이터의 각각의 리소스에 대한 계수 값을 나타내는 리소스별 계수 데이터를 생성할 수 있다. 여기서 데이터 변환기(411)에 입력되는 트리플 데이터는 사전 부호화부(411-3)에 의해 개별 리소스로 분리될 수 있으며, 초과 계수부(411-1)는 분리된 개별 리소스의 출현빈도를 계수하여 리소스별 계수 데이터를 생성할 수 있다.
그 후, 초과 계수부(411-1)는 생성된 계수 데이터를 바탕으로 각각의 리소스에 대한 평균출현빈도 수를 나타내는 리소스별 평균출현빈도 데이터를 산출할 수 있다. 여기서 평균출현빈도 데이터는 리소스별 계수 데이터를 기반으로 각각의 리소스의 출현빈도 수의 평균 값을 나타내는 정보이다.
그 후, 초과 계수부(411-1)는 생성된 리소스별 평균출현빈도 데이터 간의 편차를 기반으로 편차 값들의 기준 값을 나타내는 표준편차 데이터를 산출하여 빈출 어휘(popular term)를 추출할 수 있다.
그 후, 초과 계수부(411-1)는 데이터 변환기(411)에 입력되는 트리플 데이터에서 분리된 개별 리소스를 빈출 어휘 그룹 또는 노멀 어휘 그룹으로 구분할 수 있다.
더욱 상세하게는, 초과 계수부(411-1)는 리소스별 계수 데이터에 포함된 각각의 리소스에 대한 계수 값이 리소스별 계수 데이터를 기반으로 산출된 각각의 리소스 평균출현 빈도 데이터가 나타내는 평균 값과 표준편차 데이터 값이 나타내는 기준 값의 합산 값을 초과하는지 여부를 판단하는 과정을 수행할 수 있다. 상기 판단 결과, 합산 값을 초과하는 계수 값을 갖는 리소스를 빈출 어휘 그룹으로 구분하며, 합산 값의 미만의 계수 값을 갖는 리소스를 노멀 어휘 그룹으로 구분할 수 있다.
그 후, 초과 계수부(411-1)는 빈출 어휘 그룹 또는 노멀 어휘 그룹으로 구분된 개별 리소스를 사전 부호화부(411-3)을 전달하여 사전 부호화를 진행되도록 지원함으로써, 특정 계산 노드에 데이터가 집중되는 현상을 출현빈도에 따른 편차수준으로 감소시킬 수 있다.
메타데이터 생성부(411-2)는 초과 계수부(411-1)에서 분석된 복수 개의 리소스들을 구성하는 각각의 리소스에 대한 메타데이터를 생성할 수 있다.
또한, 메타데이터 생성부(411-2)는 생성된 각각의 리소스에 대한 메타데이터를 메타데이터 관리부(412) 또는 부호화 데이터 저장소(413)로 전달할 수 있다.
본 발명의 실시예에 따른 메타데이터 생성부(411-2)는 온톨로지 메타 데이터 구축부(1000)를 더 포함할 수 있다.
다음은 도 10을 참고하여 본 발명의 실시예에 따른 온톨로지 메타 데이터 구축부에 대하여 설명한다.
도 10은 본 발명의 실시예에 따른 온톨로지 메타데이터 구축부를 나타내는 도면이다.
도 10을 참조하면, 본 발명의 실시예에 따른 온톨로지 메타 데이터 구축부(1000)는 리소스 분류부(1010), RDFS 공리 저장부(1020), 메타데이터 생성부(1030), 온톨로지 메타데이터 구성부(1040) 및 온톨로지 메타데이터 저장부(미도시)를 포함할 수 있다.
리소스 분류부(1010)는 입력 받은 초기 입력 트리플과 RDFS 공리 저장부(1020)에 미리 저장된 공리 정보-RDFS 시맨틱스의 복수 개의 공리(Axiom) 중 RDF 공리 1번과 RDFS 공리 2번 내지 13번까지의 총 14개의 공리에 대한 각각의 조건부 정보 및 결과부 정보를 포함하는 정보-를 서로 비교하여 스키마 트리플과 인스턴스 트리플을 분류할 수 있다.
또한, 리소스 분류부(1010)는 스키마 분류부(1011), 인스턴스 분류부(1012) 를 포함할 수 있다.
스키마 분류부(1011)는 공리 정보를 기반으로 초기 입력 받은 입력 트리플을 분석하여 스키마(Schema) 트리플을 분류할 수 있다.
또한, 스키마 분류부(1011)는 분류한 스키마 트리플을 온톨로지 메타데이터 저장부에 저장되도록 지원할 수 있다. 여기서, 스키마 분류부(1011)는 분류한 스키마 트리플을 온톨로지 메타데이터 저장부에 저장함에 있어서, 분류한 스키마 트리플을 다시 RDFS 공리 저장부(1020)에 미리 저장된 공리 정보에 따라 하위 클라스(subClass) 트리플, 하위 속성(subProperty) 트리플, 도메인(Domain) 트리플 및 레인지(Range) 트리플로 각각 분류하여 저장되도록 지원할 수 있다. 스키마 분류부(1011)에 의해 분류된 각각의 트리플에는 명시적 위치 정보의 관리를 위한 데이터가 포함될 수 있다.
인스턴스 분류부(1012)는 공리 정보를 기반으로 초기 입력 받은 입력 트리플을 분석하여 인스턴스(Instance) 트리플로 분류할 수 있다.
또한, 인스턴스 분류부(1012)는 분류된 인스턴스 트리플이 온톨로지 메타데이터 저장부에 저장되도록 지원할 수 있다. 여기서, 인스턴스 분류부(1012)는 분류한 인스턴스 트리플을 온톨로지 메타데이터 저장부에 저장함에 있어서, 분류된 인스턴스 트리플을 다시 RDFS 공리 저장부(1020)에 미리 저장된 공리 정보에 따라 하위 타입(Type) 트리플 및 사용자 정의 트리플로 각각 분류하고, 분류된 정보들이 저장되도록 지원할 수 있다. 인스턴스 분류부(1100)에 의해 분류된 각각의 트리플에는 명시적 위치 정보의 관리를 위한 데이터가 포함될 수 있다.
RDFS 공리 저장부(1020)에는 공리 정보가 미리 저장될 수 있다. 여기서 공리 정보는 RDFS 시맨틱스의 복수 개의 공리(Axiom) 중 RDF 공리 1번과 RDFS 공리 2번 내지 13번까지의 총 14개의 공리에 대한 각각의 조건부 정보 및 결과부 정보를 포함할 수 있다.
메타데이터 생성부(1030)는 리소스 분류부(1010)에 의해 분류된 스키마 트리플의 데이터와 인스턴스 트리플의 데이터를 구분하여 하둡 분산 파일 시스템(HDFS: hadoop distributed fils system)(미도시) 내 특정 위치에 저장 및 경로 메타인덱스 생성할 수 있다.
온톨로지 메타데이터 구성부(1040)는 사전 부호화부(411-3)에서 생성된 결과 데이터-각각의 리소스 별로 할당된 노드 아이디를 포함-를 이용하여 리소스별로 어떤 속성의 데이터인지 인지할 수 있다.
트리플 내에 각각의 리소스에는 위치(예를 들어, 주어, 술어 및 목적어)에 따른 속성 정보가 부여된 상태이다. 즉, 사전 부호화부(411-3)가 수행하는 사전 부호화 과정을 통해 초기 입력된 트리플 입력 데이터는 리소스별로 분해되고, 분해된 리소스별로 트리플 아이디와 포지션 아이디의 OR 연산을 통해 노드 아이디-포지션 아이디를 포함하는 정보-가 할당될 수 있다. 여기서 노드 아이디에 포함된 포지션 아이디는, 주어:0, 술어(userDefined):1, 술어(type):2, 술어(subProperty):3, 술어(subClass):4, 술어(domain):5, 술어(range):6, 목적어(resource):7 및 목적어(literal):8 중 하나를 포함할 수 있다. 따라서 온톨로지 메타데이터 구성부(1040)는 각각의 리소스가 어떤 속성을 갖는 데이터인지의 확인하여 온톨로지 메타데이터를 구성할 수 있다.
예를 들어, 도 8은 본 발명의 실시예에 따른 사전 부호화 과정 중 트리플 아이디 할당 과정의 결과 예제를 나타내는 도면이다.
도 8을 참조하면, t100 트리플의 각 리소스를 살펴보면 <john>은 주어 위치에 있기 때문에 포지션 아이디가 0이 된다. 트리플 아이디 100과 주어에 해당하는 포지션 아이디 0을 OR 연산을 하면 100이 되며, 연산 결과인 100을 반영하여 노드 아이디 n100이 할당될 수 있다. t100의 각 리소스는 (<john>, n100), (<type>, n102), (<Student>, n107)과 같이 노드 아이디가 할당되어 표현될 수 있다. 즉, t100 트리플은 사전 부호화부(411-3)가 수행하는 사전 부호화 과정을 통해 (<n100><n102><n107>)의 형태로 변환될 수 있다.
한편, 리소스 분류부(1010)는 사전 부호화 과정을 통해 변환된 t100 트리플을 대상으로 쉬프트 연산을 통해 트리플 아이디를 제거하여 포지션 정보를 추출할 수 있다.
또한, 리소스 분류부(1010)의 스키마 분류부(1011)는 노드 아이디에 포함된 포지션 정보가 RDFS 공리 중 rdfs:subPropertyOf, rdfs:subClassOf, rdfs:domain 및 rdfs:range 중 하나에 속할 경우, 해당 트리플을 스키마 트리플로 분류할 수 있다.
또한, 리소스 분류부(1010)의 인스턴스 분류부(1012)는 스키마 분류부(1011)에 의해 분류되지 않은 나머지 트리플들을 인스턴스 트리플로 분류할 수 있다. 여기서 인스턴스 트리플은 rdf:type 프로퍼티를 포함하는 트리플 및 기타 트리플(예를 들어, 사용자 정의 트리플)로 분류될 수 있다.
또한, 리소스 분류부(1010)에 의해 분류된 트리플은 온톨로지 메타데이터 저장부의 서로 구분된 각각의 저장 공간에 저장될 수 있다. 여기서 각각의 저장 공간에 대한 정보는 RDFS 공리(Axiom)의 어휘와 경로의 키/값의 쌍으로 정의될 수 있다.
다음은 도 11을 참조하여, 본 발명의 실시예에 따른 온톨로지 메타데이터 구성부(1040)가 생성하는 온톨로지 메타테이터를 설명한다.
도 11은 본 발명의 실시예에 따른 RDF 스키마의 시맨틱스 중 도메인 정의역(domain relation)에 대한 메타데이터를 나타내는 도면이다.
도 11을 참조하면, rdfs:domain 정보를 포함하는 메타데이터는 도 11에 도시된 바와 같이 표현될 수 있다.
메타데이터의 기본 형태는 7개의 키(name, triplecount, path, init-files, inf-files 및 size)와 이에 대응하는 값의 쌍으로 정의될 수 있다.
name 키는 메타데이터가 어떤 Axiom에 대한 것인지를 나타낼 수 있다.
triplecount는 해당 Axiom에 속한 트리플의 수를 나타낼 수 있다.
filecount는 맵리듀스의 특성상 파일이 분할되어 저장되는 것에 대한 대응으로, 해당 RDFS 공리(Axiom)에 대한 분할 파일의 수를 나타낼 수 있다.
path, init-files 및 inf-files는 실제 트리플이 저장되는 경로를 나타낼 수 있다.
path는 해당 Axiom의 저장 위치에 대한 최상위 폴더의 경로를 나타낼 수 있다.
init-files은 초기 입력 트리플의 위치를 파일 수준의 경로로 나타낼 수 있다.
inf-files는 추론되어 생성된 트리플의 위치를 파일 수준의 경로로 나타낼 수 있다.
size는 해당 Axiom에 대한 트리플의 용량을 나타낼 수 있다.
상술된 본 발명의 실시예에 따른 상황인지 서버(410)가 온톨로지 메타데이터 구축하여 얻는 효과는 다음과 같다.
1. 네트워크를 통한 데이터 이동을 효율적으로 관리하여 시간 비용을 줄일 수 있다. 전형적으로 온톨로지 스키마의 크기는 인스턴스의 크기와 비교했을 때 매우 작다. 따라서 입력된 온톨로지로부터 스키마 데이터와 인스턴스 데이터를 분리하고, 분리된 스키마 데이터를 저장부에 적재함으로써, RDFS 추론 과정에서 분산환경의 네트워크로 불필요한 스키마 데이터가 전달되는 것을 줄여 네트워크 혼잡도를 낮추고 각 컴퓨팅 노드에서 처리해야 하는 데이터의 양을 효율적으로 관리할 수 있다.
2. 추론 과정에서 각 추론 규칙에 따른 적절한 데이터를 전달하여 추론의 효율성을 향상시킬 수 있다. 대용량 데이터를 기반으로 하는 추론은, 추론 규칙에 적용되는 데이터의 증가에 따라 계산 비용은 기하급수적으로 증가하게 된다. 그러나 추론 규칙의 각 조건부에 대한 특징을 고려하여 추론 규칙별로 요구되는 데이터를 입력할 경우, 불필요한 패턴 매칭을 줄여 효율적인 추론 과정을 수행할 수 있다.
사전 부호화부(411-3)는 획득된 초기 트리플의 전체 데이터를 대상으로 사전 부호화를 통해 데이터 압축을 수행할 수 있다.
사전 부호화부(411-3)는 전달 받은 리소스를 대상으로 선부호화를 수행하여 부호화된 데이터를 생성하고, 생성된 부호화된 데이터를 부호화 데이터 저장소(413)로 전달할 수 있다.
다음은 하기 도 6을 참조하여, 본 발명의 실시예에 따른 사전 부화화 개념에 대하여 설명한다.
사전 부호화 기술은 데이터 압축을 위해 폭넓게 사용되는 기술이다. 대용량 데이터를 운영하는 시스템은 데이터 저장에 대한 공간적 제약을 갖게 된다. 따라서 대용량 데이터를 운영하는 시스템은 운영되는 데이터를 효율적인 구조로 변환/압축하여 보다 작은 저장공간을 사용하여 효율적으로 데이터를 운영할 필요가 있다. 예를 들어, 온톨로지에 포함된 각 리소스의 평균 길이가 25byte라고 가정할 때, 하나의 트리플은 75byte의 길이가 된다. 이러한 가정 하에 100만 트리플을 포함하는 온톨로지는 약 70MB 크기를 갖는다.
따라서 본 발명의 실시예에 따른 상황인지 서버(410)의 사전 부호화부(411-3)는 트리플 구조의 온톨로지 데이터를 입력 데이터로 입력 받고, 입력 받은 입력 데이터를 사전 부호화 과정을 통해 비트 연산이 가능한 형태의 온톨로지 데이터로 변환할 수 있다. 예를 들어, 사전 부호화부(411-3)를 통해 변환된 온톨로지 데이터의 하나의 리소스는 4byte를 갖도록 변환될 수 있으며, 하나의 트리플은 12byte를 갖도록 변환할 수 있다. 즉, 같은 데이터의 저장에 있어서 사전 부호화 과정을 통해 초기 70MB의 데이터를 11MB로 압축함으로써 저장 공간을 효율적으로 사용할 수 있다.
더욱 상세하게는, 도 6은 본 발명의 실시예에 따른 사전 부호화의 개념을 나타내는 도면이며, 도 7은 본 발명의 실시예에 따른 사전 부호화의 처리 절차를 나타내는 도면이다.
본 발명의 실시예에 따른 상황인지 서버(410)의 사전 부호화부(411-3)가 수행하는 사전 부호화 과정은 맵리듀스를 기반으로 수행되며, 모든 리소스에 고유한 숫자(아이디)를 할당하는 과정과 텍스트로 구성된 리소스를 숫자로 치환하여 트리플을 재구성하는 과정을 포함할 수 있다.
도 6을 참조하면, 본 발명의 실시예에 따른 상황인지 서버(410)의 사전 부호화부(411-3)는 입력 받은 트리플 원본데이터-트리플 구조의 온톨로지 데이터-를 사전 부호화 과정을 통해 사전 테이블을 기반으로 부호화된 트리플 데이터로 변환할 수 있다.
도 7을 참조하면, 본 발명의 실시예에 따른 상황인지 서버(410)의 사전 부호화부(411-3)는 초기 입력 트리플을 입력 받고, 입력 받은 초기 입력 트리플을 적어도 하나의 리소스로 분해하고, 분해된 적어도 하나의 리소스에 노드 아이디-트리플에서 각각의 리소스의 포지션을 나타내는 정보-를 할당하는 트리플 아이디 할당 과정(S710)을 수행할 수 있다. 여기서 초기 입력 트리플은 상술된 트리플 원본데이터-트리플 구조의 온톨로지 데이터-를 의미할 수 있다.
그 후, 사전 부호화부(411-3)는 아이디가 할당된 프리플을 적어도 하나의 리소스로 분해하며, 분해된 적어도 하나의 리소스를 대상으로 노드 아이디 할당하는 트리플 분해 및 노드 아이디 할당 과정(S720)을 수행할 수 있다.
더욱 상세하게는, 도 8은 본 발명의 실시예에 따른 사전 부호화 과정 중 트리플 아이디 할당 과정의 결과 예제를 나타내는 도면이다.
도 8을 참조하면, 본 발명의 실시예에 따른 사전 부호화부(411-3)는 트리플 아이디할당 과정(S710)을 통해 도 8에 도시된 봐와 같은 결과 데이터를 생성할 수 있다.
사전 부호화부(411-3)는 초기 입력 트리플을 입력 받아, 입력 받은 하나의 트리플을 3개의 리소스로 분해하고, 분해된 3개의 리소스 각각의 포지션을 의미하는 노드 아이디를 할당하는 트리플 분해 및 노드 아이디 할당 과정(S720)을 수행할 수 있다. 여기서 노드 아이디는 사전 부호화부(411-3)가 트리플 아이디와 노드의 포지션 아이디의 OR 연산 값으로 생성할 수 있다. 노드 아이디는 트리플 재구축 과정(S740)의 트리플 재구성 시점에서 각각 부호화된 리소스를 새로운 트리플의 정확한 위치에 각각 배치하기 위해 사용될 수 있다. 여기서 트리플 내에 각각의 리소스의 포지션 아이디는 주어:0, 술어(userDefined):1, 술어(type):2, 술어(subProperty):3, 술어(subClass):4, 술어(domain):5, 술어(range):6, 목적어(resource):7 및 목적어(literal):8 중 하나가 될 수 있다. t200 트리플의 경우, <john>은 주어 위치에 있기 때문에 트리플에서 해당 리소스의 포지션 아이디는 0이 된다. 트리플 아이디 200과 리소스의 표지션 아이디 0을 OR 연산을 하면 200이 된다. 따라서 사전 부호화부(411-3)는 200을 해당 리소스의 노드 아이디(n200)로 할당할 수 있다. 이와 같은 사전 부호화부(411-3)의 노드 아이디의 할당 규칙에 따르면, t200의 각 리소스는 (<john>, n200), (<hasColleague>, n201) 및 (<jane>, n207)과 같이 표현될 수 있다.
그 후, 사전 부호화부(411-3)는 사전 테이블 생성하는 사전 테이블 생성 과정(S730)을 수행할 수 있다.
더욱 상세하게는, 사전 부호화부(411-3)가 수행하는 사전 테이블 생성 과정(S730)은 상기 도 8에 도시된 바와 같이 트리플을 구성하는 각각 리소스에 고유한 숫자로 된 아이디를 인덱스하는 과정을 포함할 수 있다. 사전 부호화부(411-3)가 수행하는 사전 테이블 생성 과정(S730)은 결과 데이터로서, 각각 리소스에 대하여 사전 인덱스와 노드 아이디 세트로 구성된 결과 데이터를 생성할 수 있다. 여기서 본 발명의 실시예에 따른 사전 부호화부(411-3)는 사전 테이블 생성 과정(S730)을 통해 입력된 온톨로지 내에서 각각 리소스의 다양한 포지션의 정보, 이에 대응되는 고유한 사전 아이디 정보 및 각각의 리소스의 포지션 정보를 포함하고 있는 노드 아이디를 포함하는 결과 데이터-각각 리소스에 대한 사전 인덱스와 노드 아이디 세트로 구성 데이터- 를 생성할 수 있다. 예를 들어, 상기 도 8에 도시된 <john>의 사전 아이디는 도 6에 도시된 사전 리소스 데이터를 참조하면, 0001이다. 이때 초기 입력된 트리플 내에서 <john>의 위치를 표현하는 노드 아이디는 n100 및 n200으로 두 개의 값을 갖게 된다. 따라서, 본 발명의 실시예에 따른 사전 부호화부(411-3)는 사전 테이블 생성 과정(S730)을 통해 <john>에 대한 사전 아이디와 노드 아이디 세트의 구성으로 이루어진 결과 데이터(0001, [n100, n200]으로 표현된 데이터-를 생성할 수 있다.
그 후, 사전 부호화부(411-3)는 리소스 사전 데이터 저장부(414)에 미리 저장된 리소스 사전 데이터 중 사전의 리소스 아이디 및 노드 아이디가 할당된 트리플로부터 부호화된 새로운 트리플을 생성하는 트리플 재구축 과정(S740)을 수행할 수 있다.
예를 들어, 사전 부호화부(411-3)는 사전 테이블 생성 과정(S730)을 통해 생성된 결과 데이터를 바탕으로 상기 도 6에 도시된 바와 같은 부호화된 트리플 데이터를 새롭게 생성할 수 있다. 여기서 트리플 재구축 과정(S740)에서 입력되는 사전 테이블 생성 과정(S730)의 결과 데이터는 각각의 리소스의 트리플 아이디 및 트리플 내에서 각각의 리소스의 포지션 정보를 포함하는 노드 아이디를 포함하고 있기 때문에 사전 부호화부(411-3)는 부호화된 트리플 데이터를 효율적으로 생성할 수 있다.
메타데이터 관리부(412)는 RDF/RDFS 추론부(416)와 부호화 데이터 저장소(413)의 사이에서 사용되는 메타데이터를 관리 및 운영할 수 있다.
또한, 메타데이터 관리부(412)는 RDF/RDFS 추론부(416)로부터 데이터 추출 명령 정보- RDF/RDFS 추론부(416)가 RDFS 기반의 추론을 수행함이 있어서 참조되는 데이터를 추출하도록 명령하는 정보-가 획득되면, 부호화 데이터 저장소(413)로부터 획득된 데이터 추출 명령 정보에 대응되는 데이터를 추출하고, 추출된 데이터를 RDF/RDFS 추론부(416)로 전달할 수 있다.
부호화 데이터 저장소(413)는 사전 부호화부(411-3)로부터 전달 받은 부호화된 데이터를, 인스턴스 데이터(413-1), 스키마 데이터(413-2) 및 추론된 트리플 데이터(413-3)으로 구분하여 관리할 수 있다.
또한, 부호화 데이터 저장소(413)는 데이터 복호화부(415)가 데이터를 복호화시 참조하는 리소스 사전 데이터를 관리할 수 있다. 여기서 리소스 사전 데이터는 리소스 사전 데이터 저장부(414)에 미리 저장될 수 있다.
RDF/RDFS 추론부(416)는 맵리듀스 기반의 RDFS 공리(axiom)를 사용하여 온톨로지 추론을 수행할 수 있다. 여기서 본 발명의 실시예에 따른 온톨로지 추론은 상술된 RDFS 추론 과정 또는 기계학습 기반의 확률적 추론을 포함할 수 있다. 또한, 온톨로지 추론은 클래스 계층 추론, 프로퍼티 계층 추론, 프로퍼티의 도메인/레인지 추론 및 인스턴스 타입 추론 중 적어도 하나의 추론을 포함할 수 있다.
또한, RDF/RDFS 추론부(416)는 추론 과정이 완료되면, 데이터 복호화부(415)를 통해 모든 리소스 데이터가 리소스 사전 데이터 저장부(414)에 미리 저장된 리소스 사전 데이터를 바탕으로 복호화되어 트리플 형식의 데이터로 출력되도록 지원할 수 있다.
또한, RDF/RDFS 추론부(416)는 하위 프로퍼티 추론부(416-1), 도메인 추론부(416-2), 레인지 추론부(416-3), 하위 클래스 추론부(416-4), 및 타입 추론부(416-5)를 포함할 수 있다.
하위 프로퍼티 추론부(416-1)는 프로퍼티 계층 추론을 수행할 수 있다.
도메인 추론부(416-2)는 프로퍼티의 도메인 추론을 수행할 수 있다.
레인지 추론부(416-3)는 프로퍼티의 레인지 추론을 수행할 수 있다.
하위 클래스 추론부(416-4)는 클래스 계층 추론을 수행할 수 있다.
타입 추론부(416-5)를 인스턴스 타입 추론을 수행할 수 있다.
다음은 하기 도 5를 참조하여, 본 발명의 실시예에 따른 맵리듀스 작업에 대하여 설명한다.
맵리듀스는 분산 컴퓨팅 지원을 목적으로 개발된 프레임워크이다. 더욱 상세하게는, 네트워크로 연결된 다수의 계산 노드 상에서 대용량 데이터를 일괄처리 작업을 위해 병렬 및 분산처리를 지원하는 프레임워크이다.
본 발명의 실시예에 따른 RDF/RDFS 추론부(416)는 복수 개의 맵함수들을 사용하여 맵 과정을 수행하고, 복수 개의 리듀스 함수들을 사용하여 리듀스 과정을 수행하는 맵리듀스 과정을 수행할 수 있다.
예를 들어 하위 프로퍼티 추론부(416-1)는 맵리듀스 과정을 통해 프로퍼티 계층 추론을 수행할 수 있다. 또한, 도메인 추론부(416-2)는 맵리듀스 과정을 통해 프로퍼티의 도메인 추론을 수행할 수 있다. 또한, 레인지 추론부(416-3)는 맵리듀스 과정을 통해 프로퍼티의 레인지 추론을 수행할 수 있다. 또한, 하위 클래스 추론부(416-4)는 맵리듀스 과정을 통해 클래스 계층 추론을 수행할 수 있다. 또한, 타입 추론부(416-5)를 맵리듀스 과정을 통해 인스턴스 타입 추론을 수행할 수 있다.
먼저, RDF/RDFS 추론부(416)는 트리플 구조의 온톨로지 데이터를 입력 데이터로 입력 받고, 입력 받은 입력 데이터를 구획화(Partitioning)하는 맵 과정을 수행할 수 있다. 예를 들어, RDF/RDFS 추론부(416)는 입력 데이터를 복수 개의 맵 함수들을 사용하여 특정 키를 중심으로 연관성 있는 데이터로 구획화하는 맵 과정을 수행할 수 있다. 더욱 상세하게는, RDF/RDFS 추론부(416)는 입력 데이터를 복수 개의 맵 함수들을 사용하여 키/값(Key/Value)의 쌍으로 구분하여 처리한 후 구획화된 새로운 키/값을 생성할 수 있다.
그 후, RDF/RDFS 추론부(416)는 복수 개의 리듀스 함수들를 사용하여 구획화된 데이터에서 서로 중복된 중복 데이터를 제거하며, 각각의 구획화된 데이터로부터 RDF/RDFS 추론에 필요한 데이터를 추출할 수 있다. 예를 들어, 그 후, RDF/RDFS 추론부(416)는 리듀스 함수들을 사용하여 생성된 키/값의 쌍들 중 같은 키를 중심으로 값들을 통합하여 처리하여 최종 결과 데이터를 생성할 수 있다.
더욱 상세하게는, 도 5는 본 발명의 실시예에 따른 클래스의 계층 구조에 따라 인스턴스의 새로운 타입을 추론하는 맵리듀스 작업의 흐름을 나타내는 도면이다.
도 5를 참조하면, 본 발명의 실시예에 따른 RDF/RDFS 추론부(416)는 입력 데이터인 온톨로지 트리플 세트-트리플 구조의 온톨로지 데이터-을 각각의 트리플 단위로 나누어 복수 개의 맵 함수들(510)로 전달할 수 있다.
복수 개의 맵 함수들(510) 각각은 입력받은 트리플 단위에 포함된 각각의 리소스(예를 들어 주어, 술어, 목적어)를 키(Key)로 하며, 값은 트리플로 할당하여 키/값의 쌍을 생성하고, 생성된 키/값의 쌍들을 복수 개의 리듀스 함수들(520) 각각으로 전달할 수 있다. 여기서 맵 함수들(510) 각각이 생성한 키/값의 쌍들은 동일한 키와 해당 키에 대한 값들의 묶음으로 구성될 수 있다. 즉, 복수 개의 맵 함수들(510) 각각에서 새롭게 생성된 키/값의 쌍들은 같은 키를 중심으로 그룹을 생성될 수 있다.
그 후, 복수 개의 리듀스 함수들(520) 각각은 전달 받은 키/값의 쌍으로부터 RDF/RDFS 추론에 필요한 데이터를 추출하여 할당된 처리를 진행한 후 그 결과를 출력할 수 있다.
한편, 상술된 과정들을 네트워크 관점으로 확장하여 살펴보면, 입력된 데이터는 여러 블록으로 나뉘어 네트워크 상에 위치하는 계산 노드로 전달되고, 각 계산 노드는 하나 이상의 데이터 블록을 담당하며, 해당 데이터 블록을 바탕으로 맵 함수를 수행할 수 있다. 그리고 같은 키를 가지는 모든 중간 값들은 네트워크를 통해 동일한 하나의 계산 노드로 전달되어 리듀스 함수를 수행할 수 있다.
다음은 도 9를 참조하여, 본 발명의 실시예에 따른 RDF/RDFS 추론 과정의 이해를 돕기 위해 RDFS 추론 규칙에 대하여 설명한다.
RDFS 시맨틱스(Semantics)는 W3C로부터 권고안으로 채택된 규칙이며, 2개의 RDF Axiom, 기본 RDFS Axiom 13개와 더불어 확장 Axiom 9개 및 데이터 타입 Axiom 4개를 포함한다.
본 특허의 실시예에 따른 RDF/RDFS 추론부(416)는 RDFS 시맨틱스의 복수 개의 공리(Axiom) 중 RDF 공리 1번과 RDFS 공리 2번 내지 13번까지의 총 14개의 공리를 추론 규칙으로 사용할 수 있다.
도 9는 RDFS 시맨틱스를 나타내는 도면이다.
도 9를 참조하면, 본 발명의 실시예에 따른 RDF/RDFS 추론부(416)는 맵리듀스 기반의 RDFS 공리(axiom)를 사용하여 온톨로지 추론을 수행할 수 있다.
RDF/RDFS 추론부(416)는 주어진 온톨로지 데이터와 각각의 RDFS 공리(axiom)의 조건부의 매칭을 통해 새로운 온톨로지 데이터를 생성할 수 있다. 즉, RDF/RDFS 추론부(416)는 입력 받은 온톨로지 데이터 중에 각각의 RDFS 공리 의 조건부과 같은 패턴의 데이터가 있는 경우, 해당 RDFS 공리의 결론부에 명시된 데이터를 산출할 수 있다. 즉, RDF/RDFS 추론부(416)는 입력된 온톨로지 데이터를 각각의 RDFS 공리(axiom)의 조건부에 각 변수에 대입하여 '참'이 되는 경우, 해당 RDFS 공리의 결론부의 데이터를 산출할 수 있다. 여기서, 각각의 RDFS 공리의 조건부와 결론부에 표현된 uuu, aaa 등은 리소스의 URI를 표현하는 변수를 포함할 수 있다.
한편, RDF/RDFS 추론부(416)가 수행하는 추론 과정은 RDFS 시맨틱스 (Semantics)에서 정의된 공리(Axiom)를 통해 입력된 온톨로지로부터 새로운 지식을 도출하는 과정을 의미할 수 있다.
또한, RDF/RDFS 추론부(416)는 RDFS 추론 규칙 사이의 연관 관계를 고려하여 맵리듀스 기반으로 추론 규칙을 그룹지어 추론 블록을 구성할 수 있다.
또한, RDF/RDFS 추론부(416)는 각 추론 블록의 입력과 출력의 연관성 즉, 추론 규칙 사이의 연관성을 바탕으로 추론 블록을 순차 정렬하여 절차적으로 추론을 수행할 수 있다.
또한, RDF/RDFS 추론부(416)는 추론 블록을 순차 정렬하여 절차적으로 추론을 수행함에 있어서, 각 추론 블록이 요구하는 입력 데이터를 온톨로지 메타데이터 참조를 통해 전달함으로써 효율적으로 대용량 온톨로지 추론을 수행할 수 있다.
도 13은 본 발명의 실시예에 따른 RDFS 공리 사이의 의존 관계를 나타내는 도면이다.
도 13을 참조하면, RDFS 공리(Axiom) 사이에는 도시된 봐와 같은 의존 관계가 성립한다. 각 RDFS 추론 규칙 사이에는 결론으로 도출된 데이터가 다른 규칙의 조건으로 입력되는 순환적 연결성을 가지고 있다. 예를 들어, 추론 규칙의 결론부는 rdf1 규칙을 처리함에 있어
uuu aaa yyy → aaa rdf:type rdf:Property
와 같이 임의의 트리플로부터 rdf:type 프로퍼티를 갖는 결과 데이터를 도출할 수 있다. 여기서 도출된 결과 데이터는 다시 rdf1, rdfs2, rdfs3, rdfs4a, rdfs4b, rdfs6, rdfs7, 그리고 rdfs9 규칙의 조건절에 대한 입력 데이터가 될 수 있다. 따라서 추론 규칙의 조건부에서 요구되는 데이터와 결론부를 통해 산출되는 데이터에 따라 각 규칙 사이의 연결성을 분석하면 하기 도 14와 같은 순서를 획득할 수 있다.
도 14는 본 발명의 실시예에 따른 RDFS 규칙 간의 연관성을 나타내는 도면이다.
도 14를 참조하면, RDF/RDFS 추론부(416)는 상기 도 13에 도시된 봐와 같은 RDFS 공리(Axiom) 사이에의 의존 관계로부터 도 14의 제1 단계에서 도시된 봐와 같이, 각각 규칙을 서로간 상호 의존관계를 가지며 연계되는 제1 구성을 획득할 수 있다.
그 후, RDF/RDFS 추론부(416)는 제1 구성을 바탕으로, 도 14의 제2 단계에서 도시된 봐와 같이 각각 규칙을 상호 의존성이 거의 없는 상태의 구성인 제2 구성을 획득할 수 있다.
더욱 상세하게는, rdf1, rdfs4, rdfs6, rdfs8 및 rdfs10은 실제 추론 결과에 큰 영향을 주지 않으며, rdfs8, rdfs12 및 rdfs13은 제1 구성에도 포함되어 있으나 제2 구성에 추가되어 RDFS 추론 과정을 수행시 참조됨으로써, RDFS 추론 과정의 결과 데이터의 완벽성을 증대시킬 수 있다.
또한, RDF/RDFS 추론부(416)는 도 14의 제2 단계에서 도시된 봐와 같이 각각 규칙의 조건부 형식에 대한 분석을 통해 추론 규칙 그룹을 구성할 수 있다. 예를 들어, RDF/RDFS 추론부(416)는 도 15와 같이 각각의 추론 규칙이 공통된 특징을 갖는 추론 규칙을 하나의 추론 블록에 속하도록 구성할 수 있다.
도 15는 본 발명의 실시예에 따른 공통된 특징에 따른 추론 블록의 구성 예를 나타내는 도면이다.
본 발명의 실시예에 따른 RDF/RDFS 추론부(416)는 맵리듀스를 통해 추론 과정을 수행함에 있어서 도 15에 도시된 봐와 같은 공통된 특징에 따른 추론 블록을 참조하여 추론 과정의 수행에 과정들은 축소시킬 수 있다. 이는 RDF/RDFS 추론부(416)는 추론 블록을 참조하여 각각의 추론 규칙 사이의 우선순위에 따라 추론을 수행하기 때문이다.
도 15를 참조하면, rdfs5와 rdfs7 두 공리(Axiom) 모두 조건부에 rdfs:subPropertyOf의 트리플을 요구하는 공통성을 갖는다. 따라서 RDF/RDFS 추론부(416)는 두 공리들을 하나의 제1 추론 블록으로 구성하여 맵리듀스를 수행하면 단일 과정을 통해서 두 추론 규칙을 모두 수행할 수 있다.
한편, 각각 추론 블록(제1 내지 제5 추론블록)의 실행 후에 생성되는 결과 트리플은 별도의 여러 개의 파일로 생성될 수 있다. 이 과정에서 중복된 트리플이 각 트리플 파일에 혼재되어 저장될 수 있으며, 이는 다음 단계의 추론 블록 수행에 있어서 계산 비용의 증가를 발생시킬 수 있다. 따라서 RDF/RDFS 추론부(416)는 각각의 추론 블록의 수행된 후에는 중복 트리플을 제거하는 중복 트리플 제거 과정을 더 수행할 수 있다.
또한, 각각의 추론 블록(제1 내지 제5 추론블록 중 적어도 하나의 추론 블록)은 추론 공리(Axiom)를 도 16과 같이 맵리듀스 알고리즘으로 정의될 수 있다.
도 16은 본 발명의 실시예에 따른 rdfs 9를 맵리듀스로 표현한 알고리즘을 나타내는 도면이다.
도 16을 참조하면, 본 발명의 실시예에 따른 RDF/RDFS 추론부(416)는 RDF/RDFS 추론 과정 수행 시 도 16에 도시된 봐와 같은 알고리즘과 같이 표현된 추론 규칙을 블록 단위(제1 내지 제4 추론블록)로 수행할 수 있다. 이때 하나의 추론 블록 단위에서 도출된 결과는 다음 추론 블록의 입력 데이터로 전달될 수 있다. 각각의 추론 블록에 입력되는 트리플은 해당 추론 블록에 대응하는 유효한 트리플이다.
또한, 본 발명의 실시예에 따른 RDF/RDFS 추론부(416)는 RDF/RDFS 추론 과정 수행 시 각각의 추론 규칙의 특징에 따른 데이터를 전달할 수 있도록 하는 인덱스를 활용할 수 있다.
인덱스는 트리플 데이터가 저장되어 있는 상태를 표현하는 메타데이터이며, 하둡과 같은 분산 파일 시스템(미도시) 내에 트리플 세트의 위치와 속성을 표현하는 정보와 함께 저장되어 있을 수 있다.
메타데이터는 7개의 키/값의 쌍으로 구성될 수 있다. 트리플 세트에 대한 대분류 속성으로는 스키마 트리플 또는 인스턴스 트리플로 구분될 수 있다.
트리플 세트의 위치와 속성을 표현하는 정보는 해당 트리플 세트가 저장된 폴더의 위치, 폴더 내의 파일 개수, 파일 용량 및 저장된 트리플 수에 대한 정보를 나타낼 수 있다.
또한, 트리플 세트의 위치와 속성을 표현하는 정보는, 해당 트리플의 데이터가 초기 입력 파일로 입력된 트리플인지, 추론 수행의 결과로 산출된 트리플인지를 구분함으로써, RDF/RDFS 추론부(416)는 RDF/RDFS 추론 과정 수행 시 하나의 추론 블록을 참조하여 추론 과정을 수행한 후 그 결과 데이터를 다음 추론 블록의 입력 데이터로 전달 시 보다 정확한 데이터를 지정할 수 있도록 지원할 수 있다.
한편, 상술된 “컨텍스트”라는 용어의 일반적으로 “어떠한 객체나 환경에 관하여 특정 짓기 위하여 사용될 수 있는 모든 정보”로 정의될 수 있다.
따라서 본 발명의 실시예들에 따른 “컨텍스트 타일”, “상황정보” 및 “상황인지 결과정보”는 상황인지 서버가 수행하는 상황인지 처리 과정에서 사용되는 정보를 나타내는 “컨텍스트”에 포함되는 것이 자명하다.
한편, 상술한 본 발명의 실시예들에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 본 발명의 실시예들은 하드웨어, 소프트웨어 또는 하드웨어 및 소프트웨어의 조합의 형태로 실현 가능하다는 것을 알 수 있을 것이다. 이러한 임의의 소프트웨어는 예를 들어, 삭제 가능 또는 재기록 가능 여부와 상관없이, ROM 등의 저장 장치와 같은 휘발성 또는 비휘발성 저장 장치, 또는 예를 들어, RAM, 메모리 칩, 장치 또는 집적 회로와 같은 메모리, 또는 예를 들어 CD, DVD, 자기 디스크 또는 자기 테이프 등과 같은 광학 또는 자기적으로 기록 가능함과 동시에 기계(예를 들어, 컴퓨터)로 읽을 수 있는 저장 매체에 저장될 수 있다. 사물 인터넷 디바이스 또는 서비스 서버에 포함될 수 있는 저장부는 본 발명의 실시예들을 구현하는 지시들을 포함하는 프로그램 또는 프로그램들을 저장하기에 적합한 기계로 읽을 수 있는 저장 매체의 한 예임을 알 수 있을 것이다. 따라서, 본 발명은 본 명세서의 임의의 청구항에 기재된 시스템 또는 방법을 구현하기 위한 코드를 포함하는 프로그램 및 이러한 프로그램을 저장하는 기계로 읽을 수 있는 저장 매체를 포함한다. 또한, 이러한 프로그램은 유선 또는 무선 연결을 통해 전달되는 통신 신호와 같은 임의의 매체를 통해 전자적으로 이송될 수 있고, 본 발명은 이와 균등한 것을 적절하게 포함한다.
상술한 본 발명의 설명에서는 구체적인 실시예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시할 수 있다. 따라서 본 발명의 범위는 설명된 실시예에 의하여 정할 것이 아니고 특허청구범위와 특허청구범위의 균등한 것에 의해 정해져야 한다.
100:사물 인터넷 네트워크 레이어 110:복수 개의 사물 인터넷 디바이스들
200:게이트웨이 210:게이트웨이 디바이스
300:인터넷 망 400:클라우드 레이어
410:상황인지 서버 411:데이터 변환부
411-1:초과 계수부 411-2:메타데이터 생성부
411-3:사전 부호화부 412:메타데이터 관리부
413:부호화 데이터 저장소 413-1:인스턴스 데이터
413-2:스키마 데이터 413-3:추론된 트리플 데이터
414:리소스 사전 데이터 저장부 415:데이터 복호화부
416:RDF/RDFS 추론부 416-1:하위 프로퍼티 추론부
416-2:도메인 추론부 416-3:레인지 추론부
416-4:하위 클래스 추론부 416-5:타입 추론부
420:데이터 저장소 430:외부 데이터 수집 크롤러
440:제어 서버

Claims (17)

  1. 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템에 있어서,
    각각 적어도 하나의 센서와 통신부를 포함하는 복수 개의 사물 인터넷 디바이스들;
    상기 복수 개의 사물 인터넷 디바이스들과 연결되어 사물 인터넷 네트워크 레이어를 형성하며, 인터넷 망과 연결되는 적어도 하나의 게이트웨이 디바이스를 포함하는 게이트웨이; 및
    상기 인터넷 망과 상기 게이트웨이를 통해 상기 사물 인터넷 네트워크 레이어의 상기 복수 개의 사물 인터넷 디바이스들과 데이터를 송수신하는 클라우드 서버 레이어; 를 포함하고,
    상기 복수 개의 사물 인터넷 디바이스들 중 상황인지 처리 과정을 실시간 처리할 수 없다고 판단한 적어도 하나의 사물 인터넷 디바이스는, 상기 상황인지 처리 과정의 필수요소인 상황정보를 생성하여 상기 클라우드 서버 레이어의 상황인지 서버로 전송하고,
    상기 상황인지 서버는, 상기 상황정보를 전송한 사물 인터넷 디바이스의 상황인지 처리 과정을 수행하여 결과 데이터인 상황인지 결과정보를 생성하며, 상기 생성된 상황인지 결과정보를 상기 사물 인터넷 네트워크 레이어의 상기 복수 개의 사물 인터넷 디바이스들에게 배포하고, 상기 상황인지 결과정보를 수신 받은 사물 인터넷 디바이스가 상기 수신 받은 상황인지 결과정보에 대응되는 적어도 하나의 동작을 수행하도록 지원하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  2. 제 1항에 있어서, 상기 클라우드 서버 레이어는,
    상기 복수 개의 사물 인터넷 디바이스들로부터 전송되는 센싱데이터 수집되는 및 상황정보를 수신 및 저장하는 데이터 저장소;
    상기 인터넷 망을 통해 공개된 외부 데이터를 수집하여 상기 데이터 저장소에 저장되도록 지원하는 외부 데이터 수집 크롤러; 및
    상기 복수 개의 사물 인터넷 디바이스들 중 적어도 하나로부터 상기 상황정보가 수신되면, 데이터 저장소에 저장된 정보들을 바탕으로 상기 상황정보를 전송한 해당 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행하여 결과 데이터인 상황인지 결과정보를 생성하고, 상기 생성된 상황인지 결과정보를 상기 사물 인터넷 네트워크 레이어의 상기 복수 개의 사물 인터넷 디바이스들에게 배포하는 상황인지 서버;
    를 포함하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  3. 제 2항에 있어서, 상기 외부 데이터 수집 크롤러는,
    상기 수집된 외부 데이터 중 상기 상황인지 서버가 상기 상황정보를 전송한 해당 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행 시 참조할 수 있는 데이터를 선별하여 정제 외부 데이터를 생성하고, 상기 정제 외부 데이터를 상기 데이터 저장소에 저장되도록 지원하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  4. 제 2항에 있어서,
    상기 복수 개의 사물 인터넷 디바이스들 중 적어도 하나의 인터넷 디바이스로부터 관리자 명령정보가 수신되면, 상기 수신 받은 관리자 명령정보에 대응되는 제어정보를 생성하고, 상기 생성된 제어정보를 상기 관리자 명령정보를 전송한 적어도 하나의 사물 인터넷 디바이스로 전송하여 상기 제어정보에 대응되는 적어도 하나의 동작이 수행되도록 지원하는 제어 서버;
    를 더 포함하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  5. 제 4항에 있어서, 상기 제어 서버는,
    상기 제어정보를 수신 받은 적어도 하나의 사물 인터넷 디바이스로부터 상기 동작의 수행 결과를 나타내는 결과정보를 수신 받고, 상기 수신 받은 결과 정보를 상기 상황인지 서버가 상기 상황정보를 전송한 해당 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행 시 참조할 수 있도록 상기 데이터 저장소에 저장되도록 지원하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  6. 제 2항에 있어서, 상기 상황인지 서버는,
    상기 데이터 저장소로부터 트리플(triples) 형태의 데이터인 초기 트리플을 획득하여 복수 개의 리소스들로 분류하고, 분류된 상기 복수 개의 리소스들 중 선부호화해야 하는 리소스를 추출하여, 추출된 리소스를 대상으로 리소스 사전 데이터를 참조하여 부호화를 수행하며, 상기 부호화의 수행 결과인 부호화된 데이터를 생성하고, 상기 분류된 복수 개의 리소스들을 구성하는 각각의 리소스에 대한 메타데이터를 생성하며, 상기 초기 트리플의 전체 데이터를 대상으로 사전 부호화를 통해 데이터 압축을 수행하는 데이터 변환부;
    상기 데이터 변환부로부터 상기 부호화된 데이터, 인스턴스 데이터 및 스키마 데이터를 저장하는 부호화 데이터 저장소;
    상기 리소스 사전 데이터가 미리 저장된 리소스 사전 데이터 저장부;
    맵리듀스 기반의 RDFS 공리(axiom)를 사용하여 온톨로지 추론을 수행하는 RDF/RDFS 추론부; 및
    상기 RDF/RDFS 추론부와 상기 부호화 데이터 저장소의 사이에서 사용되는 메타데이터를 관리하는 메타데이터 관리부;를 더 포함하고,
    상기 부호화 데이터 저장소는 상기 RDF/RDFS 추론부로부터 추론된 트리플 데이터도 저장하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  7. 제 6항에 있어서, 상기 데이터 변환부는,
    상기 데이터 저장소로부터 트리플(triples) 형태의 데이터인 초기 트리플을 획득하여, 상기 초기 트리플을 복수 개의 리소스들로 분석하고, 분석된 상기 복수 개의 리소스 중 선부호화해야 하는 리소스를 추출하는 초과 계수부;
    상기 분석된 복수 개의 리소스들을 구성하는 각각의 리소스에 대한 메타데이터를 생성하는 메타데이터 생성부; 및
    상기 초기 트리플의 전체 데이터를 대상으로 사전 부호화를 통해 데이터 압축을 수행하며, 상기 초과 계수부에서 추출된 리소스를 대상으로 리소스 사전 데이터를 참조하여 부호화를 수행하고, 상기 부호화의 수행 결과인 부호화된 데이터를 생성하는 사전 부호화부;
    를 포함하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  8. 제 6항에 있어서, 상기 상황인지 서버는,
    상기 온톨로지 추론을 수행한 후, 상기 온톨로지 추론의 결과 데이터를 보정하기 위해 확률적 추론-기계 학습(Machine Learning) 방법 중 강화 학습(Reinforcement Learning) 방법 기반의 추론-을 추가로 수행하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  9. 제 6항에 있어서, 상기 온톨로지 추론은,
    상기 RDFS 공리 중 RDF 제1 추론 규칙 및 RDFS 제2 내지 제13 추론 규칙을 사용하되, 각각 추론 규칙의 조건부 형식에 대한 분석을 통해 상기 각각의 추론 규칙이 공통된 특징을 갖는 추론 규칙을 하나의 추론 블록에 속하도록 구성한 추론 블록을 사용하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템.
  10. 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법에 있어서,
    클라우드 레이어의 데이터 저장소가 사물 인터넷 네트워크 레이어로부터 전송되는 센싱데이터 및 상황정보를 수집하는 사물 인터넷 네트워크 레이어 정보 수집 과정;
    상기 클라우드 레이어의 외부 데이터 수집 크롤러가 인터넷 망을 통해 대중에게 공개된 외부 데이터를 수집하여 정제한 후, 결과 데이터로 정제 외부 데이터를 생성하는 외부 데이터 처리 과정;
    상기 클라우드 레이어의 상황인지 서버가 사물 인터넷 네트워크 레이어의 적어도 하나의 사물 인터넷 디바이스로부터 상황정보가 수신되었는지 판단하는 상황정보 수신 판단 과정;
    상기 상황정보가 수신된 경우, 상기 상황인지 서버가 상기 데이터 저장소에 저장된 정보들을 참조하여 상기 상황정보를 전송한 적어도 하나의 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행하는 상황인지 처리 과정; 및
    상기 상황인지 서버가 상기 상황인지 처리 과정의 결과 데이터인 상황인지 결과정보를 생성하고, 상기 생성된 상황인지 결과정보를 상기 사물 인터넷 네트워크 레이어의 복수 개의 사물 인터넷 디바이스들에게 배포하는 상황인지 결과정보 생성 및 전송 과정;
    을 포함하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법.
  11. 제 10항에 있어서, 상기 상황인지 처리 과정은,
    상기 상황인지 서버가 상기 데이터 저장소에 기 저장된 상기 사물 인터넷 네트워크 레이어의 각각의 사물 인터넷 디바이스의 센싱 데이터, 컨텍스트 타일-상황 정보 중 가장 작은 단위 데이터-, 정제 외부 데이터들 및 기존에 수행된 상황인지 처리 과정의 결과 데이터인 상황인지 결과정보 중 적어도 하나를 참조하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법.
  12. 제 10항에 있어서,
    상기 클라우드 레이어의 제어 서버가 상기 사물 인터넷 네트워크 레이어의 적어도 하나의 사물 인터넷 디바이스로부터 관리자의 명령정보가 수신되었는지 판단하는 관리자 명령정보 수신여부 판단 과정; 및
    상기 명령정보가 수신된 경우, 제어 서버가 상기 관리자 명령정보를 전송한 사물 인터넷 디바이스의 제어정보를 생성하고, 상기 생성된 제어정보를 상기 관리자 명령 정보를 전송한 사물 인터넷 디바이스로 전송하여 상기 수신 받은 관리자 명령정보에 대응되는 동작을 상기 관리자 명령 정보를 전송한 사물 인터넷 디바이스가 수행하도록 지원하는 제어정보 생성 및 전송 과정;
    을 더 포함하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법.
  13. 제 12항에 있어서, 상기 제어정보 생성 및 전송 과정 이후,
    상기 제어 서버가 상기 제어정보를 수신 받은 사물 인터넷 디바이스로부터 상기 제어정보에 따라 동작의 수행 여부 및 수행 결과를 나타내는 결과정보를 수신 받고, 상기 수신 받은 결과 정보를 상기 상황인지 서버가 상기 관리자 명령정보를 전송한 사물 인터넷 디바이스의 상황인지 처리 과정을 대신 수행 시 참조할 수 있도록 상기 데이터 저장소에 저장되도록 지원하는 결과정보 처리 과정;
    을 더 포함하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법
  14. 제 10항에 있어서, 상기 상황인지 처리 과정은,
    상기 데이터 저장소로부터 트리플(triples) 형태의 데이터인 초기 트리플을 획득하여, 복수 개의 리소스들로 분석하고, 분석된 상기 복수 개의 리소스 중 선부호화해야 하는 리소스를 추출하여, 추출된 리소스를 대상으로 리소스 사전 데이터를 참조하여 부호화를 수행하며, 상기 부호화의 수행 결과인 부호화된 데이터를 생성하고, 상기 분석된 복수 개의 리소스들을 구성하는 각각의 리소스에 대한 메타데이터를 생성하며, 상기 초기 트리플의 전체 데이터를 대상으로 사전 부호화를 통해 데이터 압축을 수행하는 데이터 변화 과정;
    상기 부호화된 데이터, 인스턴스 데이터, 스키마 데이터 및 추론된 트리플 데이터를 부호화 데이터 저장소에 저장하는 부호화 데이터 저장 과정; 및
    맵리듀스 기반의 RDFS 공리(axiom)를 사용하여 온톨로지 추론을 수행하는 RDF/RDFS 추론 과정;
    을 더 포함하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법.
  15. 제 14항에 있어서, 상기 RDF/RDFS 추론 과정은,
    상기 온톨로지 추론을 수행한 후, 상기 온톨로지 추론의 결과 데이터를 보정하기 위해 확률적 추론-기계 학습(Machine Learning) 방법 중 강화 학습(Reinforcement Learning) 방법 기반의 추론-을 추가로 더 수행하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법.
  16. 제 14항에 있어서, 상기 RDF/RDFS 추론 과정은,
    상기 RDFS 공리 중 RDF 제1 추론 규칙 및 RDFS 제2 내지 제13 추론 규칙을 사용하되, 각각 추론 규칙의 조건부 형식에 대한 분석을 통해 상기 각각의 추론 규칙이 공통된 특징을 갖는 추론 규칙을 하나의 추론 블록에 속하도록 구성한 추론 블록을 사용하는 것을 특징으로 하는 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 방법.
  17. 제10항 내지 제16항 중 어느 한 항에 기재된 방법을 컴퓨터상에서 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
KR1020160079306A 2016-06-24 2016-06-24 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체 KR101752488B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160079306A KR101752488B1 (ko) 2016-06-24 2016-06-24 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체
PCT/KR2017/006707 WO2017222354A1 (ko) 2016-06-24 2017-06-26 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160079306A KR101752488B1 (ko) 2016-06-24 2016-06-24 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체

Publications (1)

Publication Number Publication Date
KR101752488B1 true KR101752488B1 (ko) 2017-07-11

Family

ID=59354603

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160079306A KR101752488B1 (ko) 2016-06-24 2016-06-24 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체

Country Status (2)

Country Link
KR (1) KR101752488B1 (ko)
WO (1) WO2017222354A1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3893471A1 (en) * 2017-07-26 2021-10-13 Amazon Technologies Inc. Tiered data processing for iot device clusters
KR102337799B1 (ko) * 2020-12-09 2021-12-09 주식회사 에즈원시스템 스마트시티 구축을 위한 서버 및 그 시스템
US11412574B2 (en) 2017-07-26 2022-08-09 Amazon Technologies, Inc. Split predictions for IoT devices
US11838835B2 (en) 2019-01-08 2023-12-05 Samsung Electronics Co., Ltd. Distributed inference system and operating method of the same
US11902396B2 (en) 2017-07-26 2024-02-13 Amazon Technologies, Inc. Model tiering for IoT device clusters

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10743169B2 (en) 2018-03-22 2020-08-11 Coolfire Solutions, Inc. Situational awareness systems and methods
DE112018007932T5 (de) * 2018-09-28 2021-06-17 Mitsubishi Electric Corporation Inferenzvorrichtung, inferenzverfahren und inferenzprogramm
WO2021067731A2 (en) * 2019-10-02 2021-04-08 Coolfire Solutions, Inc. Situational awareness systems and methods
CN115134131B (zh) * 2022-06-20 2023-10-20 中能融合智慧科技有限公司 一种基于态势感知的物联网通信传输系统
CN115134386B (zh) * 2022-06-29 2024-03-08 广东电网有限责任公司 一种物联网态势感知系统、方法、设备及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101476321B1 (ko) 2014-06-23 2014-12-26 주식회사 젬 사물 인터넷 기반의 살균 겸용 led 조명 시스템

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7769848B2 (en) * 2004-09-22 2010-08-03 International Business Machines Corporation Method and systems for copying data components between nodes of a wireless sensor network
KR101063036B1 (ko) * 2005-11-29 2011-09-07 엘지에릭슨 주식회사 유비쿼터스환경하의 센서 네트워크장치 및 그 제어방법
KR100738333B1 (ko) * 2005-12-01 2007-07-12 한국전자통신연구원 유비쿼터스 센서 네트워크에서의 원격제어용 센서 노드, 및이동통신 단말기를 이용한 센서노드 원격 제어 방법
CN103312532B (zh) * 2012-10-17 2016-03-02 中兴通讯股份有限公司 用于物联网网关的故障自动排除方法及系统
KR101559712B1 (ko) * 2014-01-24 2015-10-14 모다정보통신 주식회사 자율적인 소셜 협업 그룹의 형성에 기초한 지능형 사물 서비스를 제공하는 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101476321B1 (ko) 2014-06-23 2014-12-26 주식회사 젬 사물 인터넷 기반의 살균 겸용 led 조명 시스템

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3893471A1 (en) * 2017-07-26 2021-10-13 Amazon Technologies Inc. Tiered data processing for iot device clusters
US11412574B2 (en) 2017-07-26 2022-08-09 Amazon Technologies, Inc. Split predictions for IoT devices
US11902396B2 (en) 2017-07-26 2024-02-13 Amazon Technologies, Inc. Model tiering for IoT device clusters
US11838835B2 (en) 2019-01-08 2023-12-05 Samsung Electronics Co., Ltd. Distributed inference system and operating method of the same
KR102337799B1 (ko) * 2020-12-09 2021-12-09 주식회사 에즈원시스템 스마트시티 구축을 위한 서버 및 그 시스템
KR102396812B1 (ko) * 2020-12-09 2022-05-13 주식회사 에즈원시스템 스마트시티에 설치되는 센서들을 관리하는 방법 및 그 서버

Also Published As

Publication number Publication date
WO2017222354A1 (ko) 2017-12-28

Similar Documents

Publication Publication Date Title
KR101752488B1 (ko) 사물 인터넷 환경에서 온톨로지 기반의 상황인지 서비스를 제공하기 위한 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체
US11068439B2 (en) Unsupervised method for enriching RDF data sources from denormalized data
CN109564568B (zh) 用于分布式数据集索引的装置、方法和机器可读存储介质
EP2674875B1 (en) Method, controller, program and data storage system for performing reconciliation processing
US10803088B2 (en) Semantic indexing engine
KR102048648B1 (ko) 시맨틱 IoT에 대한 Restful 오퍼레이션들
US9672474B2 (en) Concurrent binning of machine learning data
US10318882B2 (en) Optimized training of linear machine learning models
JP2017037648A (ja) ハイブリッドデータを保存するためのハイブリッドデータストレージシステム、方法及びプログラム
CN107038161B (zh) 一种用于过滤数据的设备及方法
Alshammari et al. Big IoT healthcare data analytics framework based on fog and cloud computing
Fan et al. An integrated personalization framework for SaaS-based cloud services
US20220237446A1 (en) Hybrid graph neural network
CN116745758A (zh) 使用基于神经网络的机器学习的智能查询编辑器
Azzini et al. Advances in data management in the big data era
Iglesias-Molina et al. An ontological approach for representing declarative mapping languages
Lin et al. An agent-based approach to reconciling data heterogeneity in cyber-physical systems
Maté et al. A novel multidimensional approach to integrate big data in business intelligence
US11636124B1 (en) Integrating query optimization with machine learning model prediction
KR101684579B1 (ko) 지식 생성 시스템 및 방법
Zhao et al. Integrating ontologies using ontology learning approach
Amato et al. Big data processing for pervasive environment in cloud computing
Vinodhini¹ et al. Building personalised recommendation system with big data and hadoop MapReduce
US11657069B1 (en) Dynamic compilation of machine learning models based on hardware configurations
CN114648121A (zh) 一种数据处理方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant