KR20200044185A - 로봇 서비스 블럭 선택 장치 및 방법 - Google Patents

로봇 서비스 블럭 선택 장치 및 방법 Download PDF

Info

Publication number
KR20200044185A
KR20200044185A KR1020180119671A KR20180119671A KR20200044185A KR 20200044185 A KR20200044185 A KR 20200044185A KR 1020180119671 A KR1020180119671 A KR 1020180119671A KR 20180119671 A KR20180119671 A KR 20180119671A KR 20200044185 A KR20200044185 A KR 20200044185A
Authority
KR
South Korea
Prior art keywords
knowledge
composite
component
service block
composite knowledge
Prior art date
Application number
KR1020180119671A
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 KR1020180119671A priority Critical patent/KR20200044185A/ko
Publication of KR20200044185A publication Critical patent/KR20200044185A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Manipulator (AREA)

Abstract

로봇 서비스 블럭 선택 장치 및 방법이 개시된다. 본 발명에 따른 로봇 서비스 블럭 선택 장치는, 사용자 및 환경 중 적어도 어느 하나에 상응하는 원시 데이터를 수집하고, 상기 원시 데이터를 심볼화한 형태인 데이터를 지식 베이스에 저장하며, 상기 데이터 및 상기 지식 베이스에 저장된 규칙 집합을 이용한 추론 과정을 수행하여, 지식을 생성하는 하위 복합지식 생성 컴포넌트, 그리고 하나 이상의 상기 하위 복합지식 생성 컴포넌트를 포함하는 복수의 복합지식 생성 컴포넌트들로부터 상기 지식들을 입력받고, 입력받은 상기 지식들을 이용한 추론 과정을 수행하여, 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 로봇 서비스 블럭을 선택하는 상위 복합지식 생성 컴포넌트를 포함한다.

Description

로봇 서비스 블럭 선택 장치 및 방법{APPARATUS AND METHOD FOR SELECTING ROBOT SERVICE BLOCK}
본 발명은 로봇 서비스 블럭을 선택하는 기술에 관한 것으로, 특히 다양한 수준의 데이터를 체계화시켜 계층적 지식을 구축하고, 구축된 지식 체계를 기반으로 상황에 맞는 최적의 로봇 서비스 블럭을 선택하는 기술에 관한 것이다.
사용자의 발화(utterance)나 특정 인식 결과에 대한 이벤트에 대응하여 서비스 로봇이 어떻게 대화하거나 어떠한 행동을 수행해야 하는지가 스크립트 형태로 정의되어 있다. 사용자의 발화나 특정 이벤트가 스크립트에서 정의된 형태로 입력되면, 서비스 로봇 내의 스크립트 엔진은 입력에 대응되는 출력을 통하여, 사용자와 대화하거나, 응대할 수 있다.
즉, 로봇 서비스 블럭은 사용자에게 제공할 일련의 대화 및 행동을 정의한 스크립트 형태의 블럭을 의미한다. 사용자의 음성 기반 명령 또는 주변 환경에서 습득한 정보가 로봇 서비스 블럭을 실행할 조건을 만족하면, 해당 로봇 서비스 블럭이 선택되어 사용자에게 대화 또는 행동을 통하여 서비스를 제공할 수 있다.
도 1은 종래 기술에 따른 스크립트 형태의 로봇 서비스 블럭을 설명하기 위한 도면이다.
종래 기술에 따른 서비스 로봇은 다양한 수준의 이벤트를 복합적으로 활용하지 못하고, 도 1에 도시한 바와 같이 음성 인식된 문장이나 하나의 특정 이벤트에 대해서만 단순 대응하는 스크립트로 동작하였다. 이로 인하여, 동일한 상황에서는 항상 동일한 서비스만 반복해서 제공하는 한계가 있다.
종래 기술에 따른 로봇 서비스 스크립트(20)는 사용자의 발화나 주변 환경을 인식하는 인식 모듈(10)로부터 이벤트가 발생하면, 발생된 이벤트(21)에 따른 서비스 로봇의 출력(23)이 정의된 로봇 서비스 블럭(25)을 선택하여 서비스를 제공한다.
예를 들어, 음성 인식 모듈(10_1)로부터 "Hello"라는 TTS 결과(21_1)가 입력된 경우, 서비스 로봇은 "Hello" 이벤트(21_1)에 상응하는 로봇 서비스 블럭(25_1)을 선택하여, 기 정의된 출력인 "Nice to meet you"(23_1)를 출력한다.
서비스 로봇이 다양한 상황에서 사용자에게 특화된 최적의 서비스를 제공하기 위해서는, 서비스 로봇이 다양한 정보를 복합적으로 활용하여 로봇 서비스 블럭을 선택할 수 있어야 한다.
그러나, 단순 센서 데이터와 같은 저수준 데이터부터 클라우드 서비스에 대한 고수준의 데이터까지 서비스 로봇이 입력받는 데이터의 형태 및 수준이 다양하므로, 데이터들에 따라 서비스 수행에 필요한 조건을 정의하는 것이 매우 어렵다. 특히, 로봇 서비스 스크립트 내에서 이벤트들을 직접 결합하거나, 복잡한 규칙을 적용해야 하므로 로봇 서비스 블럭의 수행에 필요한 조건을 정의하는 것이 까다롭다.
로봇에 이용되는 지식을 표준화하기 위한 작업이 IEEE-RAS의 ORA Working Group을 통해 진행 중이고, RoboEarth 및 KnowRob 프로젝트에서는 OWL(Web Ontology Language)을 통한 지식 프레임워크를 개발하였으나, 주로 로봇의 행위 계획을 생성하고 실행할 수 있는 방법에 초점이 맞춰져 있으며, 로봇 서비스 블럭을 선택하기 위한 지식 체계로는 적합하지 않다.
또한, 하나의 대규모 지식 프레임워크로 구성되어, 새로운 지식의 추가 및 수정 과정에서 지식의 연관성을 유지하기 어려우므로, 로봇 서비스 블럭을 선택하기 위한 지식 체계로의 활용이 어렵다.
따라서, 저수준의 데이터부터 고수준의 데이터까지를 체계화시켜 지식 체계를 구축하고, 구축된 지식 체계에 추론 기반 규칙을 적용하여, 상황에 맞는 최적의 로봇 서비스 블럭을 선택할 수 있도록 하는 기술의 개발이 필요하다.
한국 등록 특허 제10-1101519호, 2012년 01월 04일 공고(명칭: 온톨로지 기반 컴포넌트 조립 기술을 이용한 소프트웨어 개발 시스템 및 그 방법) 한국 등록 특허 제10-1511832호, 2015년 04월 15일 공고(명칭: 도메인의 온톨로지에 기초한 사용자 의도의 결정)
본 발명의 목적은 다양한 수준의 데이터를 활용하여, 서비스 로봇이 사용자에게 제공할 최적의 로봇 서비스 블럭을 선택할 수 있도록 하는 것이다.
또한, 본 발명의 목적은 저수준의 센서 데이터부터 고수준의 심볼화된 이벤트까지 다양한 수준의 데이터를 계층적 형태의 지식으로 구축하고, 구축된 지식 체계에 추론 기반 규칙을 적용하여, 사용자에게 최적의 로봇 서비스를 제공할 수 있도록 하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 로봇 서비스 블럭 선택 장치는 사용자 및 환경 중 적어도 어느 하나에 상응하는 원시 데이터를 수집하고, 상기 원시 데이터를 심볼화한 형태인 데이터를 지식 베이스에 저장하며, 상기 데이터 및 상기 지식 베이스에 저장된 규칙 집합을 이용한 추론 과정을 수행하여, 지식을 생성하는 하위 복합지식 생성 컴포넌트, 그리고 하나 이상의 상기 하위 복합지식 생성 컴포넌트를 포함하는 복수의 복합지식 생성 컴포넌트들로부터 상기 지식들을 입력받고, 입력받은 상기 지식들을 이용한 추론 과정을 수행하여, 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 로봇 서비스 블럭을 선택하는 상위 복합지식 생성 컴포넌트를 포함한다.
이때, 하나 이상의 상기 하위 복합지식 생성 컴포넌트로부터 상기 지식을 수신하고, 하나 이상의 원시 데이터를 수집하며, 하나 이상의 상기 지식 및 하나 이상의 상기 원시 데이터 중 적어도 어느 하나와 상기 규칙 집합을 이용한 추론 과정을 수행하여, 복합지식을 생성하고, 생성된 상기 복합지식을 상기 상위 복합지식 생성 컴포넌트로 전달하는 중위 복합지식 생성 컴포넌트를 더 포함할 수 있다.
이때, 상기 하위 복합지식 생성 컴포넌트, 상기 중위 복합지식 생성 컴포넌트 및 상기 상위 복합지식 생성 컴포넌트 중 적어도 둘 이상은, 계층적으로 연결될 수 있다.
이때, 상기 하위 복합지식 생성 컴포넌트는, 상기 중위 복합지식 생성 컴포넌트 및 상기 상위 복합지식 생성 컴포넌트 중 적어도 어느 하나로 상기 지식을 전달하고, 상기 상위 복합지식 생성 컴포넌트는, 하나 이상의 상기 하위 복합지식 생성 컴포넌트 및 하나 이상의 상기 중위 복합지식 생성 컴포넌트 중 적어도 둘 이상으로부터 상기 지식 및 상기 복합지식 중 적어도 어느 하나를 입력받아 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 서비스의 상기 로봇 서비스 블럭을 선택할 수 있다.
이때, 상기 중위 복합지식 생성 컴포넌트의 추론 과정 수행 주기는, 상기 하위 복합지식 생성 컴포넌트의 추론 과정 수행 주기보다 길 수 있다.
이때, 복수의 상기 하위 복합지식 생성 컴포넌트들은, 동기적 또는 비동기적으로 상기 지식을 상기 중위 복합지식 생성 컴포넌트로 전달하고, 상기 중위 복합지식 생성 컴포넌트가 전달받은 상기 지식은, 복수의 상기 하위 복합지식 생성 컴포넌트들 중에서 하나 이상의 상기 하위 복합지식 생성 컴포넌트가 생성한 상기 지식을 포함할 수 있다.
이때, 상기 원시 데이터는, 상기 하위 복합지식 생성 컴포넌트로 입력되는 제1 수준 원시 데이터 및 상기 중위 복합지식 생성 컴포넌트로 입력되는 제2 수준 원시 데이터를 포함할 수 있다.
이때, 상기 원시 데이터는, 음성 인식 결과 데이터, 영상 인식 결과 데이터, 센싱 데이터, IoT 정보 및 클라우드 서비스 정보 중 적어도 어느 하나를 포함할 수 있다.
이때, 상기 하위 복합지식 생성 컴포넌트는, 주어, 술어, 목적어로 구성된 트리플 형태의 온톨로지로 상기 지식을 저장할 수 있다.
또한, 본 발명의 일실시예에 따른 복합지식 생성 컴포넌트 장치는, 사용자 및 환경 중 적어도 어느 하나에 상응하는 원시 데이터를 수집하는 원시 데이터 수집부, 상기 원시 데이터를 심볼화하여 데이터로 가공하는 데이터 가공부, 심볼화된 상기 데이터 및 규칙 집합을 저장하는 지식 베이스, 상기 규칙 집합을 이용한 추론 과정을 수행하여, 지식을 생성하는 지식 생성부, 그리고 상위의 복합지식 생성 장치가 상기 지식을 기반으로 복합지식을 생성하거나 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 서비스의 로봇 서비스 블럭을 선택하도록, 상기 지식을 상기 상위의 복합지식 생성 장치로 전송하는 지식 출력부를 포함한다.
또한, 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치에 의해 수행되는 로봇 서비스 블럭 선택 방법은 사용자 및 환경 중 적어도 어느 하나에 상응하는 원시 데이터를 수집하는 단계, 하위 복합지식 생성 컴포넌트가 상기 원시 데이터를 심볼화한 형태인 데이터를 지식 베이스에 저장하는 단계, 상기 하위 복합지식 생성 컴포넌트가 상기 데이터 및 상기 지식 베이스에 저장된 규칙 집합을 이용한 추론 과정을 수행하여, 지식을 생성하는 단계, 상위 복합지식 생성 컴포넌트가 하나 이상의 상기 하위 복합지식 생성 컴포넌트를 포함하는 복수의 복합지식 생성 컴포넌트들로부터 상기 지식들을 입력받는 단계, 그리고 상기 상위 복합지식 생성 컴포넌트가 상기 지식들을 이용한 추론 과정을 수행하여, 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 로봇 서비스 블럭을 선택하는 단계를 포함한다.
이때, 상기 하위 복합지식 생성 컴포넌트가 상기 지식을 생성한 후, 생성된 상기 지식을 중위 복합지식 생성 컴포넌트로 전달하는 단계, 상기 중위 복합지식 생성 컴포넌트가 수신한 하나 이상의 원시 데이터 및 하나 이상의 상기 하위 복합지식 생성 컴포넌트로부터 수신한 상기 지식 중 적어도 어느 하나와 상기 규칙 집합을 이용한 추론 과정을 수행하여, 복합지식을 생성하는 단계, 상기 중위 복합지식 생성 컴포넌트가 생성한 상기 복합지식을 상기 상위 복합지식 생성 컴포넌트로 전달하는 단계를 더 포함할 수 있다.
이때, 상기 하위 복합지식 생성 컴포넌트, 상기 중위 복합지식 생성 컴포넌트 및 상기 상위 복합지식 생성 컴포넌트 중 적어도 둘 이상은, 계층적으로 연결될 수 있다.
이때, 상기 하위 복합지식 생성 컴포넌트는 상기 중위 복합지식 생성 컴포넌트 및 상기 상위 복합지식 생성 컴포넌트 중 적어도 어느 하나로 상기 지식을 전달하고, 상기 상위 복합지식 생성 컴포넌트는 하나 이상의 상기 하위 복합지식 생성 컴포넌트 및 하나 이상의 상기 중위 복합지식 생성 컴포넌트 중 적어도 둘 이상으로부터 상기 지식 및 상기 복합지식 중 적어도 어느 하나를 입력받아 상기 로봇 서비스 블럭을 선택할 수 있다.
이때, 상기 로봇 서비스 블럭을 선택하는 단계는, 상기 상위 복합지식 생성 컴포넌트가 상기 지식 및 상기 복합지식과 상기 규칙 집합을 이용한 추론 과정을 수행하여, 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 서비스의 상기 로봇 서비스 블럭을 선택할 수 있다.
이때, 상기 중위 복합지식 생성 컴포넌트의 추론 과정 수행 주기는, 상기 하위 복합지식 생성 컴포넌트의 추론 과정 수행 주기보다 길 수 있다.
이때, 상기 하위 복합지식 생성 컴포넌트가 상기 지식을 중위 복합지식 생성 컴포넌트로 전달하는 단계는, 복수의 상기 하위 복합지식 생성 컴포넌트들이 동기적 또는 비동기적으로 상기 지식을 상기 중위 복합지식 생성 컴포넌트로 전달하며, 상기 중위 복합지식 생성 컴포넌트가 전달받은 상기 지식은, 복수의 상기 하위 복합지식 생성 컴포넌트들 중에서 하나 이상의 상기 하위 복합지식 생성 컴포넌트가 생성한 상기 지식을 포함할 수 있다.
이때, 상기 원시 데이터는, 상기 하위 복합지식 생성 컴포넌트로 입력되는 제1 수준 원시 데이터 및 상기 중위 복합지식 생성 컴포넌트로 입력되는 제2 수준 원시 데이터를 포함할 수 있다.
이때, 상기 데이터를 수집하는 단계는, 음성 인식 결과 데이터, 영상 인식 결과 데이터, 센싱 데이터, IoT 정보 및 클라우드 서비스 정보 중 적어도 어느 하나를 포함하는 상기 원시 데이터를 수집할 수 있다.
이때, 상기 지식을 생성하는 단계는, 주어, 술어, 목적어로 구성된 트리플 형태의 온톨로지로 상기 지식을 저장할 수 있다.
본 발명에 따르면, 다양한 수준의 데이터를 활용하여, 서비스 로봇이 사용자에게 제공할 최적의 로봇 서비스 블럭을 선택하도록 할 수 있다.
또한 본 발명에 따르면, 저수준의 센서 데이터부터 고수준의 심볼화된 이벤트까지 다양한 수준의 데이터를 계층적 형태의 지식으로 구축하고, 구축된 지식 체계에 추론 기반 규칙을 적용하여, 사용자에게 최적의 로봇 서비스를 제공할 수 있다.
도 1은 종래 기술에 따른 스크립트 형태의 서비스 블럭을 설명하기 위한 도면이다.
도 2는 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치가 적용되는 환경을 개략적으로 나타낸 도면이다.
도 3은 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치의 구성을 나타낸 블록도이다.
도 4는 본 발명의 일실시예에 따른 복합지식 생성 컴포넌트의 구성을 나타낸 블록도이다.
도 5는 본 발명의 일실시예에 따른 복합지식 생성 컴포넌트의 구조를 나타낸 예시도이다.
도 6은 본 발명의 일실시예에 따른 하위 복합지식 생성 컴포넌트의 동작을 설명하기 위한 순서도이다.
도 7은 본 발명의 일실시예에 따른 중위 복합지식 생성 컴포넌트의 동작을 설명하기 위한 순서도이다.
도 8은 본 발명의 일실시예에 따른 복합지식 생성 컴포넌트가 지식을 생성하는 과정을 나타낸 순서도이다.
도 9는 본 발명의 일실시예에 따른 상위 복합지식 생성 컴포넌트의 동작을 설명하기 위한 순서도이다.
도 10은 본 발명의 또 다른 실시예에 따른 복합지식 생성 컴포넌트의 구성을 나타낸 도면이다.
도 11은 본 발명의 일실시예에 따른 로봇 서비스 블럭을 선택하는 과정을 나타낸 예시도이다.
도 12는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
이하에서는 도 2를 통하여 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치가 적용되는 환경에 대하여 상세하게 설명한다.
도 2는 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치가 적용되는 환경을 개략적으로 나타낸 도면이다.
도 2에 도시한 바와 같이, 로봇 서비스 블럭 선택 시스템은 센싱 장치(110), IoT 장치(120) 및 클라우드 서비스 제공 장치(130) 등과 같이, 사용자의 발화나 상황 등에 대한 정보를 인식하는 장치, 로봇 서비스 블럭 선택 장치(200) 및 로봇 서비스 스크립트(300)로 구성될 수 있다.
로봇 서비스 블럭 선택 장치(200)는 센싱 장치(110), IoT 장치(120) 및 클라우드 서비스 제공 장치(130) 중 적어도 어느 하나로부터 사용자나 상황에 대한 복수의 원시 데이터를 수집하고, 수집된 원시 데이터들을 기반으로 로봇 서비스 스크립트(300)에 포함된 복수의 로봇 서비스 블럭들(350) 중에서 사용자에게 최적인 로봇 서비스 블럭을 선택할 수 있다.
도 2에서, 센싱 장치(110), IoT 장치(120) 및 클라우드 서비스 제공 장치(130)는 각각 저수준 원시 데이터, 중간수준 원시 데이터 및 고수준 원시 데이터를 생성하여 로봇 서비스 블럭 선택 장치(200)로 전송하는 장치를 의미할 수 있으며, 도 2에 한정하지 않고, 로봇 서비스 블럭 선택 장치(200)는 다양한 장치들로부터 다양한 수준의 원시 데이터를 수집할 수 있다.
그리고 로봇 서비스 블럭 선택 장치(200)는 서비스 로봇의 내부에 구비되거나, 서비스 로봇의 외부에 별도의 장치로 구현될 수 있다. 특히, 원시 데이터로부터 지식을 추출할 때, 고속의 CPU 성능이나 메모리가 요구되는 경우 또는 원시 데이터의 크기가 커서 데이터 전송에 많은 부하가 걸리는 경우, 로봇 서비스 블럭 선택 장치(200)는 별도의 외부 컴퓨터에 탑재되는 형태로 구현될 수 있다.
이하에서는 도 3 내지 도 5를 통하여 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치의 구성에 대하여 더욱 상세하게 설명한다.
도 3은 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치의 구성을 나타낸 블록도이다.
도 3과 같이, 로봇 서비스 블럭 선택 장치(200)는 하나 이상의 하위 복합지식 생성 컴포넌트(220), 하나 이상의 중위 복합지식 생성 컴포넌트(240) 및 하나 이상의 상위 복합지식 생성 컴포넌트(260)를 포함할 수 있다.
도 3에 도시한 바와 같이, 로봇 서비스 블럭 선택 장치(200)는 하위 복합지식 생성 컴포넌트(220), 중위 복합지식 생성 컴포넌트(240) 및 상위 복합지식 생성 컴포넌트(260)가 계층적으로 연결되어 구성될 수 있다.
제1 하위 복합지식 생성 컴포넌트(220_1)는 원시 데이터를 추론하여 지식을 생성하고, 생성한 지식을 상위 복합지식 생성 컴포넌트(260)로 전달할 수 있으며, 제2 하위 복합지식 생성 컴포넌트(220_2)는 원시 데이터를 추론하여 생성한 지식을 중위 복합지식 생성 컴포넌트(240) 및 상위 복합지식 생성 컴포넌트(260)로 전달할 수 있다.
그리고 중위 복합지식 생성 컴포넌트(240)는 원시 데이터 및 제2 하위 복합지식 생성 컴포넌트(220_2)로부터 전달받은 지식을 기반으로 추론하여 복합지식을 생성하고, 생성한 복합지식을 상위 복합지식 생성 컴포넌트(260)로 전달할 수 있다.
상위 복합지식 생성 컴포넌트(260)는 하위 복합지식 생성 컴포넌트(220)로부터 전달받은 지식, 중위 복합지식 생성 컴포넌트(240)로부터 전달받은 복합지식을 이용하여 추론 과정을 수행하며, 이를 통하여 사용자나 상황에 최적인 로봇 서비스 블럭을 선택할 수 있다. 이와 같이, 로봇 서비스 블럭 선택 장치(200)는 최적의 로봇 서비스 블럭을 선택하여, 사용자가 최적의 로봇 서비스를 제공받을 수 있도록 할 수 있다.
로봇 서비스 블럭 선택 장치(200)의 각각의 복합지식 생성 컴포넌트들이 지식 또는 복합지식을 생성하고, 로봇 서비스 블럭을 선택하는 과정에 대해서는 후술할 도 4 및 도 5를 통하여 더욱 상세하게 설명한다.
도 4는 본 발명의 일실시예에 따른 복합지식 생성 컴포넌트의 구성을 나타낸 블록도이고, 도 5는 본 발명의 일실시예에 따른 복합지식 생성 컴포넌트의 구조를 나타낸 예시도이다.
도 4에 도시한 바와 같이, 복합지식 생성 컴포넌트(210)는, 원시 데이터 수집부(211), 데이터 가공부(213), 지식 베이스(215), 지식 생성부(217) 및 지식 출력부(219)를 포함한다.
여기서, 복합지식 생성 컴포넌트(210)는 하위 복합지식 생성 컴포넌트(220) 및 중위 복합지식 생성 컴포넌트(240) 중 어느 하나를 의미할 수 있다. 그리고 복합지식 생성 컴포넌트(210)는 송신 컴포넌트 및 수신 컴포넌트의 연결을 통해 상위의 복합지식 생성 컴포넌트와 연결될 수 있다. 여기서, 상위의 복합지식 생성 컴포넌트는 계층 구조상 상위 수준의 복합지식 생성 컴포넌트를 의미할 수 있다.
먼저, 원시 데이터 수집부(211)는 사용자 및 환경 중 적어도 어느 하나에 상응하는 원시 데이터(raw data)를 수집한다.
원시 데이터 수집부(211)가 수집하는 원시 데이터는, 저수준 원시 데이터부터 고수준 원시 데이터까지 수준이 다양할 수 있다. 원시 데이터 수집부(211)는 단일 수준의 원시 데이터를 수집하거나, 다양한 수준의 원시 데이터들을 수집할 수 있다.
복합지식 생성 컴포넌트(210)가 하위 복합지식 생성 컴포넌트(220)인 경우, 원시 데이터 수집부(211)는 제1 수준 원시 데이터를 수집할 수 있고, 복합지식 생성 컴포넌트(210)가 중위 복합지식 생성 컴포넌트(240)인 경우 원시 데이터 수집부(211)는 제2 수준 원시 데이터를 수집할 수 있다. 이때, 제2 수준 원시 데이터는 제1 수준 원시 데이터에 비하여 높은 수준의 원시 데이터일 수 있다.
한편, 복합지식 생성 컴포넌트(210)와 같이 로봇 소프트웨어 구조에서 사용되는 로봇 컴포넌트는 각각의 내부 상태를 가질 수 있으며, 능동적으로 동작한다. 그리고 로봇 컴포넌트는 컴포넌트 인터페이스를 통해 컴포넌트 상호간의 데이터 교환 및 메쏘드 호출이 수행되어 로봇을 제어할 수 있다. 로봇의 이러한 특징을 지원하기 위하여, ROS(Robot Operating System), OROCOS(Open RObot Control Software), OPRoS(Open Platform for Robotic Services), RTC(Robot Technology Component) 등의 소프트웨어 플랫폼은 컴포넌트를 이용한 로봇 프로그래밍 방식을 제시하였다.
로봇 응용은 재사용 및 교체가 가능한 소프트웨어 모듈인 로봇용 소프트웨어 컴포넌트들의 연결로 구성된다. 외부 컴포넌트 사용자는 로봇용 소프트웨어 컴포넌트가 제공하는 인터페이스를 사용하여, 로봇용 소프트웨어 컴포넌트의 조합만으로 로봇 응용을 구성할 수 있다.
본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치(200)도 컴포넌트 인터페이스를 통해 복합지식 생성 컴포넌트들이 상호 데이터를 교환할 수 있다. 도 5에 도시한 바와 같이, 복합지식 생성 컴포넌트(210)와 상위의 복합지식 생성 컴포넌트 간 연결은 복합지식 생성 컴포넌트(210)가 전송하는 정보의 종류에 따라 다양한 통신 방법이 적용될 수 있다.
특히, 복합지식 생성 컴포넌트(210)와 상위의 복합지식 생성 컴포넌트 사이에 적용 가능한 통신 모델로는, 가입/출판(subscribe/publish) 모델과 요청/응답(request/response) 모델, 블랙보드 모델 등이 있으며, 복합지식 생성 컴포넌트(210)의 원시 데이터 수집부(211)는 원시 데이터가 제공되는 방식에 따라 적절한 통신 모델을 선택하여 통신 방식을 결정할 수 있다.
한편, 상위 복합지식 생성 컴포넌트(260)의 경우, 하위의 복합지식 생성 컴포넌트에서 지식이 생성될 때마다 생성된 새로운 지식을 전달받기 위하여, 가입/출판 모델에 따라 지식을 전달받을 수 있다. 여기서, 하위의 복합지식 생성 컴포넌트는 계층 구조상 하위 수준의 복합지식 생성 컴포넌트를 의미할 수 있다.
다음으로 데이터 가공부(213)는 원시 데이터를 심볼화하여 데이터로 가공한다.
데이터 가공부(213)는 수집한 원시 데이터를 해석하여 심볼화(symbolized)하고, 지식 베이스(215)에 저장하기 위한 형태로 가공한다. 이때, 심볼화 및 가공된 데이터는 지식 베이스(215)에 저장되어 인스턴스화 될 수 있다.
예를 들어, 원시 데이터 수집부(211)가 온도 센서로부터 수치화된 온도 데이터를 수신한 경우, 데이터 가공부(213)는 원시 데이터인 온도 데이터를 해석하여 comport, hot, cold 등으로 심볼화할 수 있다. 특히, 서비스 로봇이 사용자에게 외출을 추천하기 위한 서비스를 제공하는 경우, 외출에 적합한 온도는 comport로 심볼화하고, 외출하기에 너무 더운 온도는 hot으로 심볼화하며, 외출하기에 너무 추운 온도는 cold로 심볼화하여 지식 베이스(215)의 지식 메모리에 저장할 수 있다.
그리고 지식 베이스(215)는 심볼화된 데이터 및 규칙 집합을 저장한다. 지식 베이스(215)는 지식 메모리 및 규칙 집합을 포함할 수 있으며, 심볼화된 데이터는 지식 메모리에 저장되고, 추론 과정에서 이용되는 규칙은 규칙 집합에 저장될 수 있다.
지식 베이스(215)는 OWL(Web Ontology Language)나 RDF(Resource Description Framework) 언어를 이용하여, 주어(subject), 술어(predicate), 목적어(object)로 구성된 트리플(triple) 형태의 온톨로지(Ontology)로 구축될 수 있다. 또한, 전체 지식의 일관성을 유지하기 위하여, 해당 복합지식 생성 컴포넌트(210)가 담당하는 수준 및 영역에 해당하는 지식에 대해서만 지식 베이스(215)가 구축되고, 다른 복합지식 생성 컴포넌트의 지식 영역과는 최대한 독립적으로 지식 베이스(215)가 구축될 수 있다.
다음으로 지식 생성부(217)는 지식 베이스(215)의 규칙 집합을 이용하여 추론하여, 지식을 생성한다. 이때, 복합지식 생성 컴포넌트(210)가 중위 복합지식 생성 컴포넌트(240)인 경우, 지식 생성부(217)는 복합지식을 생성 할 수 있다.
지식 생성부(217)는 지식 베이스에 새로운 데이터 또는 지식이 입력될 때마다 규칙 집합을 기반으로 지식을 생성할 수 있으며, RETE 알고리즘과 같은 Forward Chain 추론 기법을 이용하거나, SWRL(Semantic Web Rule Language)과 같은 규칙 기반 추론 기법을 이용하여 지식을 생성할 수 있다.
이때, 생성되는 지식은 상위의 복합지식 생성 컴포넌트에게 전달하기 위한 것으로, 입력된 원시 데이터와 규칙을 이용하여 추론된 지식을 의미하거나, 원시 데이터와 저수준의 지식을 이용하여 추론된 지식을 의미할 수 있다.
설명의 편의를 위하여, 지식 생성부(217)가 새로운 데이터나 지식이 입력될때마다 지식을 생성하는 것으로 설명하였으나 이에 한정하지 않고, 지식 생성부(217)는 주기적으로 지식을 생성할 수 있다.
마지막으로 지식 출력부(219)는 상위의 복합지식 생성 컴포넌트로 지식을 전달한다.
여기서, 상위의 복합지식 생성 컴포넌트는 중위 복합지식 생성 컴포넌트(240)이거나, 상위 복합지식 생성 컴포넌트(260)일 수 있으며, 지식 출력부(219)는 상위의 복합지식 생성 컴포넌트로 지식을 전달하여, 상위의 복합지식 생성 컴포넌트가 복합지식을 생성하거나, 로봇 서비스 블럭을 선택하도록 할 수 있다.
특히, 복합지식 생성 컴포넌트(210)가 하위 복합지식 생성 컴포넌트(220)인 경우, 지식 출력부(219)는 생성된 지식을 중위 복합지식 생성 컴포넌트(240) 및 상위 복합지식 생성 컴포넌트(260) 중 적어도 어느 하나로 전달할 수 있다. 반면, 복합지식 생성 컴포넌트(210)가 중위 복합지식 생성 컴포넌트(240)인 경우 지식 출력부(219)는 생성된 복합지식을 상위 복합지식 생성 컴포넌트(260)로 전달할 수 있다.
이하에서는 도 6 내지 9를 통하여 본 발명의 일실시예에 따른 복합지식 생성 컴포넌트의 동작 방법에 대하여 더욱 상세하게 설명한다.
도 6은 본 발명의 일실시예에 따른 하위 복합지식 생성 컴포넌트의 동작을 설명하기 위한 순서도이다.
먼저, 하위 복합지식 생성 컴포넌트(220)는 원시 데이터를 수집한다(S610).
예를 들어, 하위 복합지식 생성 컴포넌트(220)는 온도 데이터, 미세먼지 데이터 등과 같이 저수준의 원시 데이터를 수집하거나, 클라우드 서비스 제공 장치로부터 단순 날씨 데이터를 원시 데이터로 수집할 수 있다.
그리고 하위 복합지식 생성 컴포넌트(220)는 원시 데이터를 심볼화한 데이터를 지식 베이스에 저장한다(S620).
하위 복합지식 생성 컴포넌트(220)는 수집된 원시 데이터를 규칙에 따라 심볼화하고, 심볼화된 데이터를 지식 베이스에 저장할 수 있다.
다음으로, 하위 복합지식 생성 컴포넌트(220)는 추론을 통해 지식을 생성하고(S630), 생성한 지식을 상위의 복합지식 생성 컴포넌트로 전달한다(S640).
하위 복합지식 생성 컴포넌트(220)는 지식 베이스에 저장된 기존의 지식과 규칙 집합을 이용하여 추론하고, 추론 결과 새로운 지식을 생성한다. 여기서, 지식 베이스에 저장된 기존의 지식은 S620 단계에서 저장된 데이터를 포함할 수 있다.
그리고 하위 복합지식 생성 컴포넌트(220)는 생성된 새로운 지식을 상위의 복합지식 생성 컴포넌트로 전달한다. 이때, 하위 복합지식 생성 컴포넌트(220)는 상위의 복합지식 생성 컴포넌트로 전달하기로 사전에 정의한 지식을 상위의 복합지식 생성 컴포넌트로 전달할 수 있다.
도 6에 도시한 바와 같이, 하위 복합지식 생성 컴포넌트(220)는 단순 상황 센싱 결과인 원시 데이터를 지식화하여, 빠른 실행 주기로 상위의 복합지식 생성 컴포넌트로 전달하며, 하위 복합지식 생성 컴포넌트(220)의 지식 체계 변동은 적게 일어난다.
도 7은 본 발명의 일실시예에 따른 중위 복합지식 생성 컴포넌트의 동작을 설명하기 위한 순서도이다.
중위 복합지식 생성 컴포넌트(240)는 원시 데이터를 수집하고(S710), 하위의 복합지식 생성 컴포넌트로부터 지식을 수신한다(S720).
예를 들어, 중위 복합지식 생성 컴포넌트(240)가 음성 인식의 결과인 '산책 좀 나갈까?'라는 텍스트를 원시 데이터로 수집하거나, 사용자 인식 정보를 원시 데이터로 수집할 수 있다. 이때, 중위 복합지식 생성 컴포넌트(240)가 수집하는 원시 데이터는 도 6의 하위 복합지식 생성 컴포넌트(220)가 수집한 원시 데이터보다 높은 수준의 원시 데이터이다.
중위 복합지식 생성 컴포넌트(240)가 원시 데이터를 수집한 경우, 중위 복합지식 생성 컴포넌트(240)는 수집된 원시 데이터를 심볼화하여 지식 베이스에 저장하는 과정을 수행할 수 있으며, 이는 도 6에 도시된 S620 단계와 실질적으로 동일할 수 있다.
또한, 중위 복합지식 생성 컴포넌트(240)는 하위의 복합지식 생성 컴포넌트가 추론한 결과인 지식을 수신할 수 있다. 예를 들어, 중위 복합지식 생성 컴포넌트(240)는 하위 복합지식 생성 컴포넌트(220)로부터 "온도는 적당하다", "미세먼지는 깨끗하다", "날씨는 비가 온다"등의 지식을 수신할 수 있다.
그리고 중위 복합지식 생성 컴포넌트(240)는 추론 과정을 수행하여 복합지식을 생성하고(S730), 생성된 복합지식을 상위의 복합지식 생성 컴포넌트로 전달한다(S740).
중위 복합지식 생성 컴포넌트(240)는 지식 베이스에 저장된 기존의 지식, 하위의 복합지식 생성 컴포넌트로부터 수신한 지식 및 규칙 집합 중 적어도 둘 이상을 이용하여 추론하고, 추론 결과 새로운 복합지식을 생성할 수 있다.
또한, 중위 복합지식 생성 컴포넌트(240)는 생성된 복합지식을 상위의 복합지식 생성 컴포넌트로 전달할 수 있다.
본 명세서에서는 설명의 편의를 위하여, 로봇 서비스 블럭 선택 장치(200)가 하위 복합지식 생성 컴포넌트(220), 중위 복합지식 생성 컴포넌트(230) 및 상위 복합지식 생성 컴포넌트(260)로 구성되는 것으로 설명하였으나 이에 한정하지 않고, 복합지식 생성 컴포넌트는 다계층으로 연결될 수 있으며, 중위 복합지식 생성 컴포넌트(240)는 상위의 또 다른 복합지식 생성 컴포넌트로 복합지식을 전달하거나, 상위 복합지식 생성 컴포넌트(260)로 복합지식을 전달할 수 있다.
도 7과 같이, 중위 복합지식 생성 컴포넌트(240)는 복잡한 상황을 추론하여 복합지식을 생성하고, 하위 복합지식 생성 컴포넌트(220)에 비해 긴 실행 주기로 복합지식을 전달한다. 이때, 중위 복합지식 생성 컴포넌트(240)의 지식 체계 변동은 하위 복합지식 생성 컴포넌트(220)의 지식 체계 변동에 비해 활발히 일어난다.
도 8은 본 발명의 일실시예에 따른 복합지식 생성 컴포넌트가 지식을 생성하는 과정을 나타낸 순서도이다.
먼저, 복합지식 생성 컴포넌트(210)는 새로운 지식을 입력받으면(S810), 새로 입력된 지식을 기존 지식에 통합하고(S820), 통합된 지식을 대상으로 추론한다(S830).
여기서, 새로운 지식을 입력받는다는 것은, 복합지식 생성 컴포넌트(210)의 지식 베이스에 새로운 데이터가 저장되는 것을 의미하거나, 하위의 복합지식 생성 컴포넌트로부터 지식을 수신하는 것을 의미할 수 있다.
복합지식 생성 컴포넌트(210)는 하위의 복합지식 생성 컴포넌트로부터 동기적 또는 비동기적으로 지식을 입력받을 수 있다. 복합지식 생성 컴포넌트(210)에 비동기적으로 지식이 유입되는 경우, 일부 지식에 대한 정보만 포함되고, 나머지 지식에 대한 정보는 비어있는(null) 상태로 지식을 입력받을 수 있다.
복합지식 생성 컴포넌트(210)는 비어있는 상태의 지식에 대한 정보가 모두 입력되거나, 입력된 지식에 대한 정보만으로 추론할 수 있다고 판단된 경우, 추론 과정을 수행하여 재귀적으로 복합지식을 생성할 수 있다.
이를 위하여 복합지식 생성 컴포넌트(210)는 지식에 대한 정보가 모두 입력되지 않더라도, 현재까지 입력된 지식에 적용 가능한 모든 규칙을 적용하여 추론함으로써 재귀적으로 지식을 생성해 놓을 수 있다. 즉, 복합지식 생성 컴포넌트(210)는 새로운 지식이 입력되거나, 새로운 지식이 생성될 때마다 재귀적으로 추론하여 후술할 S850 단계를 위해 필요한 지식을 생성할 수 있다.
복합지식 생성 컴포넌트(210)는 S820 단계를 수행하여, 저수준의 데이터들이 단계적으로 다른 지식과 결합하여 확장될 수 있도록 하며, 이를 통하여 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치(200)는 복합적인 상황에서 사용자에게 최적의 서비스를 제공할 수 있는 로봇 서비스 블럭을 선택할 수 있다.
그리고 새로운 지식이 추론되고(S840 Yes) 상위의 복합지식 생성 컴포넌트로 전달할 지식이 완성되면(S850 Yes), 복합지식 생성 컴포넌트(210)는 완성된 지식을 상위의 복합지식 생성 컴포넌트 전달한다(S860).
복합지식 생성 컴포넌트(210)는 새로운 지식을 추론한 후, 상위의 복합지식 생성 컴포넌트로 전달할 메시지를 생성하며, 상위의 복합지식 생성 컴포넌트로 추론된 지식을 전달한다. 이때, 복합지식 생성 컴포넌트(210)는 JSON(JavaScript Object Notation) 등의 문법으로 메시지를 생성하여 전송할 수 있다.
새로운 지식이 추론되지 않거나(S840 No), 상위의 복합지식 생성 컴포넌트로 전달할 지식이 완료되지 않으면, 복합지식 생성 컴포넌트(210)는 다시 S810 단계를 수행할 수 있다.
도 9는 본 발명의 일실시예에 따른 상위 복합지식 생성 컴포넌트의 동작을 설명하기 위한 순서도이다.
상위 복합지식 생성 컴포넌트(260)는 지식 및 복합지식 중 적어도 어느 하나를 입력받는다(S910).
여기서, 상위 복합지식 생성 컴포넌트(260)는 최종 단계의 복합지식 생성 컴포넌트를 의미하며, 상위 복합지식 생성 컴포넌트(260)는 하나 이상의 하위 복합지식 생성 컴포넌트(220) 및 하나 이상의 중위 복합지식 생성 컴포넌트(240) 중 적어도 어느 하나로부터 추론 결과인 지식을 입력받을 수 있다.
그리고 상위 복합지식 생성 컴포넌트(260)는 추론을 수행하여(S920), 사용자에게 제공할 서비스에 상응하는 로봇 서비스 블럭을 선택한다(S930).
상위 복합지식 생성 컴포넌트(260)는 복수의 복합지식 생성 컴포넌트들의 추론 결과인 지식 및 복합지식을 이용하여 추론하며, 추론을 통하여 사용자에게 제공할 최적의 로봇 서비스 블럭을 선택할 수 있다.
이하에서는 도 10을 통하여 본 발명의 또 다른 실시예에 따른 복합지식 생성 컴포넌트의 구성에 대하여 더욱 자세하게 설명한다.
도 10은 본 발명의 또 다른 실시예에 따른 복합지식 생성 컴포넌트의 구성을 나타낸 도면이다.
도 10에 도시한 바와 같이, 본 발명의 또 다른 실시예에 따른 복합지식 생성 컴포넌트(1000)는 입력 통신부(1010), 입력 해석부(1020), 지식 주입부(1030), 지식 베이스(1040), 추론 엔진(1050), 지식 출력부(1060) 및 출력 통신부(1070)를 포함할 수 있다.
입력 통신부(1010)는 원시 데이터를 입력받거나, 하위의 복합지식 생성 컴포넌트로부터 지식을 전달받을 수 있다. 특히, 복합지식 생성 컴포넌트(1000)가 하위 복합지식 생성 컴포넌트이거나, 중위 복합지식 생성 컴포넌트인 경우, 입력 통신부(1010)는 가입/출판 모델, 요청/응답 모델 및 블랙보드 모델 중 어느 하나의 통신 방식으로 원시 데이터를 입력받을 수 있다. 이때, 입력 통신부(1010)는 도 4의 원시 데이터 수집부(211)와 실질적으로 동일한 기능을 수행할 수 있다.
또한, 복합지식 생성 컴포넌트(1000)가 중위 복합지식 생성 컴포넌트이거나, 상위 복합지식 생성 컴포넌트인 경우, 입력 통신부(1010)는 가입/출판 모델에 따라 하위의 복합지식 생성 컴포넌트로부터 지식을 전달받을 수 있다.
다음으로 입력 해석부(1020)는 가공되지 않은 원시 데이터 및 하위의 복합지식 생성 컴포넌트로부터 입력받은 지식을 해석하여 심볼화하고, 지식 베이스(1040)의 지식 메모리에 저장하기 위한 형태로 가공할 수 있다. 여기서, 입력 해석부(1020)는 도 4의 데이터 가공부(213)와 실질적으로 동일할 수 있다.
그리고 지식 주입부(1030)는 입력 해석부(1020)에 의해 가공된 데이터를 지식 베이스(1040)에 저장한다. 이때, 지식 베이스(1040)는 지식 메모리 및 규칙 집합으로 구성될 수 있으며, 도 4의 지식 베이스(215)와 실질적으로 동일할 수 있다.
추론 엔진(1050)은 지식 베이스(1040)의 지식 메모리 및 규칙 집합을 이용하여 추론하며, 추론 결과 새로운 지식이 생성된다. 그리고 지식 출력부(1060)는 생성된 새로운 지식을 상위의 복합지식 생성 컴포넌트로 전달하기 위한 메시지를 생성하고, 출력 통신부(1070)는 상위의 복합지식 생성 컴포넌트로 메시지를 전달한다.
추론 엔진(1050)은 도 4의 지식 생성부(217)와 실질적으로 동일한 기능을 수행할 수 있으며, 지식 출력부(1060) 및 출력 통신부(1070)는 도 4의 지식 출력부와 실질적으로 동일한 기능을 수행할 수 있다.
이하에서는 도 11을 통하여 본 발명의 일실시예에 따른 로봇 서비스 블럭 선택 장치가 로봇 서비스 블럭을 선택하는 과정에 대하여 더욱 자세하게 설명한다.
도 11은 본 발명의 일실시예에 따른 로봇 서비스 블럭을 선택하는 과정을 나타낸 예시도이다.
도 11에서 대상이 되는 서비스 로봇은, 외출 가능 여부를 판단하여 사용자에게 외출을 추천하는 서비스를 제공하는 로봇인 것으로 가정한다.
로봇 서비스 블럭 선택 장치는 도 11에 도시한 바와 같이, 복수의 복합지식 생성 컴포넌트들이 계층적으로 연결된 구조일 수 있다. 특히, 로봇 서비스 블럭 선택 장치는 저수준 복합지식 생성 컴포넌트, 중간수준 복합지식 생성 컴포넌트 및 고수준 복합지식 생성 컴포넌트가 계층적으로 연결되어 계층적 형태의 지식을 구축하고, 구축된 지식 체계를 기반으로 로봇 서비스 블럭을 선택할 수 있다.
예를 들어, 저수준 복합지식 생성 컴포넌트는 온도 데이터, 미세먼지 데이터, 날씨 데이터를 원시 데이터로 수집하여 지식 베이스에 저장할 수 있다. 이때, 원시 데이터는 서비스 로봇에 탑재된 센서로부터 수집된 것이거나, 외부의 장치로부터 수신한 것일 수 있다.
그리고 저수준 복합지식 생성 컴포넌트는 지식 생성 규칙인 규칙 집합을 원시 데이터에 적용하여 온도, 미세먼지, 날씨에 관련된 지식(Temp, Dust, Weather)을 생성하고, 생성된 지식을 상위 수준의 복합지식 생성 컴포넌트인 중간 수준 복합지식 생성 컴포넌트로 전달할 수 있다.
중간 수준 복합지식 생성 컴포넌트는 하위 수준의 복합지식 생성 컴포넌트인 저수준 복합지식 생성 컴포넌트로부터 전달받은 지식(Temp, Dust, Weather)을 복합적으로 활용하여 외출 조건(Condition)을 추론할 수 있다.
이때, 온도에 대한 지식(Temp)이 Comfort이고, 미세먼지에 대한 지식(Dust)이 Clean인 경우, 규칙 집합은 잠정적으로 외출에 적합한 조건으로 판단하여 지식을 생성할 수 있다. 또한, 날씨에 대한 지식(Weather)이 Rain이 아닌 경우 최종적으로 외출에 적합한 조건으로 판단하여 지식을 생성할 수 있다. 반면, 온도와 미세먼지에 대한 지식으로 추론한 결과 외출에 적합한 조건으로 판단되었으나, 날씨에 대한 지식이 Rain인 경우 규칙 집합은 외출에 비 적합한 조건으로 지식을 생성할 수 있다.
그리고 중간 수준 복합지식 생성 컴포넌트는 추론된 결과인 외출 조건에 관한 지식을 상위 수준의 복합지식 생성 컴포넌트인 고수준 복합지식 생성 컴포넌트로 전달할 수 있다.
또 다른 중간 수준 복합지식 생성 컴포넌트는 음성 인식 결과를 원시 데이터로 입력받거나, 사용자 인식 결과를 원시 데이터로 입력받아 추론하여 복합지식을 생성할 수 있다.
"산책 좀 나갈까?"라는 음성 인식 결과를 원시 데이터로 입력받은 중간 수준 복합지식 생성 컴포넌트는 원시 데이터에 규칙 집합을 적용하여 사용자 의도(Intent)를 추론할 수 있다. 또한, 사용자 인식 결과를 원시 데이터로 입력받은 중간 수준 복합지식 생성 컴포넌트는 활동성(Activity)을 추론할 수 있다.
그리고 고수준 복합지식 생성 컴포넌트는 외출 조건(Condition), 사용자 의도(Intent) 및 활동성(Activity)에 대한 지식을 주간 수준 복합지식 생성 컴포넌트들로부터 입력받으며, 입력받은 지식들을 규칙 집합에 따라 추론하여, 서비스 로봇이 현재 사용자에게 제공할 서비스(Service)를 결정하고, 결정된 서비스에 상응하는 로봇 서비스 블럭을 선택할 수 있다.
도 12은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.
도 12을 참조하면, 본 발명의 실시예는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1200)에서 구현될 수 있다. 도 12에 도시된 바와 같이, 컴퓨터 시스템(1200)은 버스(1220)를 통하여 서로 통신하는 하나 이상의 프로세서(1210), 메모리(1230), 사용자 인터페이스 입력 장치(1240), 사용자 인터페이스 출력 장치(1250) 및 스토리지(1260)를 포함할 수 있다. 또한, 컴퓨터 시스템(1200)은 네트워크(1280)에 연결되는 네트워크 인터페이스(1270)를 더 포함할 수 있다. 프로세서(1210)는 중앙 처리 장치 또는 메모리(1230)나 스토리지(1260)에 저장된 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1230) 및 스토리지(1260)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 ROM(1231)이나 RAM(1232)을 포함할 수 있다.
따라서, 본 발명의 실시예는 컴퓨터로 구현된 방법이나 컴퓨터에서 실행 가능한 명령어들이 기록된 비일시적인 컴퓨터에서 읽을 수 있는 매체로 구현될 수 있다. 컴퓨터에서 읽을 수 있는 명령어들이 프로세서에 의해서 수행될 때, 컴퓨터에서 읽을 수 있는 명령어들은 본 발명의 적어도 한 가지 태양에 따른 방법을 수행할 수 있다.
이상에서와 같이 본 발명에 따른 로봇 서비스 블럭 선택 장치 및 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
10: 인식 모듈 20: 로봇 서비스 스크립트
21: 이벤트 23: 서비스 로봇의 출력
25: 로봇 서비스 블럭 110: 센싱 장치
120: IoT 장치 130: 클라우드 서비스 제공 장치
200: 로봇 서비스 블럭 선택 장치 210: 복합지식 생성 컴포넌트
211: 원시 데이터 수집부 213: 데이터 가공부
215: 지식 베이스 217: 지식 생성부
219: 지식 출력부
220: 하위 복합지식 생성 컴포넌트
240: 중위 복합지식 생성 컴포넌트
260: 상위 복합지식 생성 컴포넌트
300: 로봇 서비스 스크립트 350: 로봇 서비스 블럭
1000: 복합지식 생성 컴포넌트 1010: 입력 통신부
1020: 입력 해석부 1030: 지식 주입부
1040: 지식 베이스 1050: 추론 엔진
1060: 지식 출력부 1070: 출력 통신부
1200: 컴퓨터 시스템 1210: 프로세서
1220: 버스 1230: 메모리
1231: 롬 1232: 램
1240: 사용자 인터페이스 입력 장치
1250: 사용자 인터페이스 출력 장치
1260: 스토리지 1270: 네트워크 인터페이스
1280: 네트워크

Claims (20)

  1. 사용자 및 환경 중 적어도 어느 하나에 상응하는 원시 데이터를 수집하고, 상기 원시 데이터를 심볼화한 형태인 데이터를 지식 베이스에 저장하며, 상기 데이터 및 상기 지식 베이스에 저장된 규칙 집합을 이용한 추론 과정을 수행하여, 지식을 생성하는 하위 복합지식 생성 컴포넌트, 그리고
    하나 이상의 상기 하위 복합지식 생성 컴포넌트를 포함하는 복수의 복합지식 생성 컴포넌트들로부터 상기 지식들을 입력받고, 입력받은 상기 지식들을 이용한 추론 과정을 수행하여, 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 로봇 서비스 블럭을 선택하는 상위 복합지식 생성 컴포넌트를 포함하는 로봇 서비스 블럭 선택 장치.
  2. 제1항에 있어서,
    하나 이상의 상기 하위 복합지식 생성 컴포넌트로부터 상기 지식을 수신하고, 하나 이상의 원시 데이터를 수집하며, 하나 이상의 상기 지식 및 하나 이상의 상기 원시 데이터 중 적어도 어느 하나와 상기 규칙 집합을 이용한 추론 과정을 수행하여, 복합지식을 생성하고, 생성된 상기 복합지식을 상기 상위 복합지식 생성 컴포넌트로 전달하는 중위 복합지식 생성 컴포넌트를 더 포함하는 로봇 서비스 블럭 선택 장치.
  3. 제2항에 있어서,
    상기 하위 복합지식 생성 컴포넌트, 상기 중위 복합지식 생성 컴포넌트 및 상기 상위 복합지식 생성 컴포넌트 중 적어도 둘 이상은,
    계층적으로 연결되는 것을 특징으로 하는 로봇 서비스 블럭 선택 장치.
  4. 제3항에 있어서,
    상기 하위 복합지식 생성 컴포넌트는,
    상기 중위 복합지식 생성 컴포넌트 및 상기 상위 복합지식 생성 컴포넌트 중 적어도 어느 하나로 상기 지식을 전달하고,
    상기 상위 복합지식 생성 컴포넌트는,
    하나 이상의 상기 하위 복합지식 생성 컴포넌트 및 하나 이상의 상기 중위 복합지식 생성 컴포넌트 중 적어도 둘 이상으로부터 상기 지식 및 상기 복합지식 중 적어도 어느 하나를 입력받아 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 서비스의 상기 로봇 서비스 블럭을 선택하는 로봇 서비스 블럭 선택 장치.
  5. 제2항에 있어서,
    상기 중위 복합지식 생성 컴포넌트의 추론 과정 수행 주기는,
    상기 하위 복합지식 생성 컴포넌트의 추론 과정 수행 주기보다 긴 것을 특징으로 하는 로봇 서비스 블럭 선택 장치.
  6. 제2항에 있어서,
    복수의 상기 하위 복합지식 생성 컴포넌트들은,
    동기적 또는 비동기적으로 상기 지식을 상기 중위 복합지식 생성 컴포넌트로 전달하고,
    상기 중위 복합지식 생성 컴포넌트가 전달받은 상기 지식은,
    복수의 상기 하위 복합지식 생성 컴포넌트들 중에서 하나 이상의 상기 하위 복합지식 생성 컴포넌트가 생성한 상기 지식을 포함하는 로봇 서비스 블럭 선택 장치.
  7. 제2항에 있어서,
    상기 원시 데이터는,
    상기 하위 복합지식 생성 컴포넌트로 입력되는 제1 수준 원시 데이터 및 상기 중위 복합지식 생성 컴포넌트로 입력되는 제2 수준 원시 데이터를 포함하는 로봇 서비스 블럭 선택 장치.
  8. 제7항에 있어서,
    상기 원시 데이터는,
    음성 인식 결과 데이터, 영상 인식 결과 데이터, 센싱 데이터, IoT 정보 및 클라우드 서비스 정보 중 적어도 어느 하나를 포함하는 로봇 서비스 블럭 선택 장치.
  9. 제1항에 있어서,
    상기 하위 복합지식 생성 컴포넌트는,
    주어, 술어, 목적어로 구성된 트리플 형태의 온톨로지로 상기 지식을 저장하는 로봇 서비스 블럭 선택 장치.
  10. 사용자 및 환경 중 적어도 어느 하나에 상응하는 원시 데이터를 수집하는 원시 데이터 수집부,
    상기 원시 데이터를 심볼화하여 데이터로 가공하는 데이터 가공부,
    심볼화된 상기 데이터 및 규칙 집합을 저장하는 지식 베이스,
    상기 규칙 집합을 이용한 추론 과정을 수행하여, 지식을 생성하는 지식 생성부, 그리고
    상위의 복합지식 생성 장치가 상기 지식을 기반으로 복합지식을 생성하거나 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 서비스의 로봇 서비스 블럭을 선택하도록, 상기 지식을 상기 상위의 복합지식 생성 장치로 전송하는 지식 출력부를 포함하는 복합지식 생성 컴포넌트 장치.
  11. 로봇 서비스 블럭 선택 장치에 의해 수행되는 로봇 서비스 블럭 선택 방법에 있어서,
    사용자 및 환경 중 적어도 어느 하나에 상응하는 원시 데이터를 수집하는 단계,
    하위 복합지식 생성 컴포넌트가 상기 원시 데이터를 심볼화한 형태인 데이터를 지식 베이스에 저장하는 단계,
    상기 하위 복합지식 생성 컴포넌트가 상기 데이터 및 상기 지식 베이스에 저장된 규칙 집합을 이용한 추론 과정을 수행하여, 지식을 생성하는 단계,
    상위 복합지식 생성 컴포넌트가 하나 이상의 상기 하위 복합지식 생성 컴포넌트를 포함하는 복수의 복합지식 생성 컴포넌트들로부터 상기 지식들을 입력받는 단계, 그리고
    상기 상위 복합지식 생성 컴포넌트가 상기 지식들을 이용한 추론 과정을 수행하여, 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 로봇 서비스 블럭을 선택하는 단계를 포함하는 로봇 서비스 블럭 선택 방법.
  12. 제11항에 있어서,
    상기 하위 복합지식 생성 컴포넌트가 상기 지식을 생성한 후, 생성된 상기 지식을 중위 복합지식 생성 컴포넌트로 전달하는 단계,
    상기 중위 복합지식 생성 컴포넌트가 수신한 하나 이상의 원시 데이터 및 하나 이상의 상기 하위 복합지식 생성 컴포넌트로부터 수신한 상기 지식 중 적어도 어느 하나와 상기 규칙 집합을 이용한 추론 과정을 수행하여, 복합지식을 생성하는 단계,
    상기 중위 복합지식 생성 컴포넌트가 생성한 상기 복합지식을 상기 상위 복합지식 생성 컴포넌트로 전달하는 단계를 더 포함하는 로봇 서비스 블럭 선택 방법.
  13. 제12항에 있어서,
    상기 하위 복합지식 생성 컴포넌트, 상기 중위 복합지식 생성 컴포넌트 및 상기 상위 복합지식 생성 컴포넌트 중 적어도 둘 이상은,
    계층적으로 연결되는 것을 특징으로 하는 로봇 서비스 블럭 선택 방법.
  14. 제13항에 있어서,
    상기 하위 복합지식 생성 컴포넌트는 상기 중위 복합지식 생성 컴포넌트 및 상기 상위 복합지식 생성 컴포넌트 중 적어도 어느 하나로 상기 지식을 전달하고,
    상기 상위 복합지식 생성 컴포넌트는 하나 이상의 상기 하위 복합지식 생성 컴포넌트 및 하나 이상의 상기 중위 복합지식 생성 컴포넌트 중 적어도 둘 이상으로부터 상기 지식 및 상기 복합지식 중 적어도 어느 하나를 입력받아 상기 로봇 서비스 블럭을 선택하는 로봇 서비스 블럭 선택 방법.
  15. 제12항에 있어서,
    상기 로봇 서비스 블럭을 선택하는 단계는,
    상기 상위 복합지식 생성 컴포넌트가 상기 지식 및 상기 복합지식과 상기 규칙 집합을 이용한 추론 과정을 수행하여, 상기 사용자 및 상기 환경 중 적어도 어느 하나에 상응하는 서비스의 상기 로봇 서비스 블럭을 선택하는 로봇 서비스 블럭 선택 방법.
  16. 제12항에 있어서,
    상기 중위 복합지식 생성 컴포넌트의 추론 과정 수행 주기는,
    상기 하위 복합지식 생성 컴포넌트의 추론 과정 수행 주기보다 긴 것을 특징으로 하는 로봇 서비스 블럭 선택 방법.
  17. 제12항에 있어서,
    상기 하위 복합지식 생성 컴포넌트가 상기 지식을 중위 복합지식 생성 컴포넌트로 전달하는 단계는,
    복수의 상기 하위 복합지식 생성 컴포넌트들이 동기적 또는 비동기적으로 상기 지식을 상기 중위 복합지식 생성 컴포넌트로 전달하며,
    상기 중위 복합지식 생성 컴포넌트가 전달받은 상기 지식은,
    복수의 상기 하위 복합지식 생성 컴포넌트들 중에서 하나 이상의 상기 하위 복합지식 생성 컴포넌트가 생성한 상기 지식을 포함하는 로봇 서비스 블럭 선택 방법.
  18. 제12항에 있어서,
    상기 원시 데이터는,
    상기 하위 복합지식 생성 컴포넌트로 입력되는 제1 수준 원시 데이터 및 상기 중위 복합지식 생성 컴포넌트로 입력되는 제2 수준 원시 데이터를 포함하는 로봇 서비스 블럭 선택 방법.
  19. 제18항에 있어서,
    상기 데이터를 수집하는 단계는,
    음성 인식 결과 데이터, 영상 인식 결과 데이터, 센싱 데이터, IoT 정보 및 클라우드 서비스 정보 중 적어도 어느 하나를 포함하는 상기 원시 데이터를 수집하는 로봇 서비스 블럭 선택 방법.
  20. 제11항에 있어서,
    상기 지식을 생성하는 단계는,
    주어, 술어, 목적어로 구성된 트리플 형태의 온톨로지로 상기 지식을 저장하는 로봇 서비스 블럭 선택 방법.
KR1020180119671A 2018-10-08 2018-10-08 로봇 서비스 블럭 선택 장치 및 방법 KR20200044185A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180119671A KR20200044185A (ko) 2018-10-08 2018-10-08 로봇 서비스 블럭 선택 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180119671A KR20200044185A (ko) 2018-10-08 2018-10-08 로봇 서비스 블럭 선택 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20200044185A true KR20200044185A (ko) 2020-04-29

Family

ID=70466877

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180119671A KR20200044185A (ko) 2018-10-08 2018-10-08 로봇 서비스 블럭 선택 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20200044185A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102365838B1 (ko) * 2020-11-12 2022-02-21 숭실대학교산학협력단 사용자 의도 추론을 위한 뉴럴 심볼릭 기반 규칙 생성 방법 및 장치
KR20220150553A (ko) * 2021-05-04 2022-11-11 숭실대학교산학협력단 뉴럴 심볼릭 기반 시퀀스 모델을 활용한 규칙 추론 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101101519B1 (ko) 2009-11-03 2012-01-04 정안모 온톨로지 기반 컴포넌트 조립 기술을 이용한 소프트웨어 개발 시스템 및 그 방법
KR101511832B1 (ko) 2010-01-18 2015-04-15 애플 인크. 도메인의 온톨로지에 기초한 사용자 의도의 결정

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101101519B1 (ko) 2009-11-03 2012-01-04 정안모 온톨로지 기반 컴포넌트 조립 기술을 이용한 소프트웨어 개발 시스템 및 그 방법
KR101511832B1 (ko) 2010-01-18 2015-04-15 애플 인크. 도메인의 온톨로지에 기초한 사용자 의도의 결정

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102365838B1 (ko) * 2020-11-12 2022-02-21 숭실대학교산학협력단 사용자 의도 추론을 위한 뉴럴 심볼릭 기반 규칙 생성 방법 및 장치
KR20220150553A (ko) * 2021-05-04 2022-11-11 숭실대학교산학협력단 뉴럴 심볼릭 기반 시퀀스 모델을 활용한 규칙 추론 방법 및 장치

Similar Documents

Publication Publication Date Title
Mostaco et al. AgronomoBot: a smart answering Chatbot applied to agricultural sensor networks
CN110321413B (zh) 会话框架
US11227581B2 (en) Systems and methods for generating a response based on task-independent conversational responses or task-specific responses
US20120116584A1 (en) Apparatus and method for providing robot interaction services using interactive behavior model
Qamar et al. Dependency modeling and model management in mechatronic design
WO2017197018A2 (en) Systems and methods enabling online one-shot learning and generalization by intelligent systems of task-relevant features and transfer to a cohort of intelligent systems
KR102105187B1 (ko) 지식 증강을 위한 선순환 자가 학습 방법 및 그 장치
Greengard AI on edge
KR20200044185A (ko) 로봇 서비스 블럭 선택 장치 및 방법
CN111566728B (zh) 能够实现用户意图和机器服务之间的语义理解映射的对话系统
Guo et al. An energy sensitive computation offloading strategy in cloud robotic network based on ga
KR20200046191A (ko) 실시간 사용자 행위 분석에 의한 계층적 상황인지 및 디바이스 자율 구성 장치 및 그 방법
Wlodarczyk et al. SWRL-F: a fuzzy logic extension of the semantic web rule language
CN111814460B (zh) 基于外部知识的药物相互作用关系抽取方法及系统
KR20190127708A (ko) 대화 시스템 및 그것을 위한 컴퓨터 프로그램
CN113489654B (zh) 一种路由选择方法、装置、电子设备及存储介质
Petrovic et al. Adopting linear optimization to support autonomous vehicles in smart city
US11949635B2 (en) Proactive and reactive directing of conversational bot-human interactions
Thoutam Machine Learning Vs Artificial Intelligence
Kremenski et al. Brain-robot Communications in the Internet of Things
Li et al. A proxy-based cloud infrastructure for home service robots
JP2016029561A (ja) エージェント、プログラム
Bosse Distributed Serverless Chat Bot Networks using Mobile Agents: A Distributed Data Base Model for Social Networking and Data Analytics.
Riaz et al. Augmenting autonomous vehicular communication using the appreciation emotion: A mamdani fuzzy inference system model
Tahilyani et al. Cognitive framework for intelligent traffic routing in a multiagent environment

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal