KR20200079703A - Service package authoring method and robot service development system - Google Patents

Service package authoring method and robot service development system Download PDF

Info

Publication number
KR20200079703A
KR20200079703A KR1020180169115A KR20180169115A KR20200079703A KR 20200079703 A KR20200079703 A KR 20200079703A KR 1020180169115 A KR1020180169115 A KR 1020180169115A KR 20180169115 A KR20180169115 A KR 20180169115A KR 20200079703 A KR20200079703 A KR 20200079703A
Authority
KR
South Korea
Prior art keywords
service
robot
template
robot service
interaction
Prior art date
Application number
KR1020180169115A
Other languages
Korean (ko)
Other versions
KR102143603B1 (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 KR1020180169115A priority Critical patent/KR102143603B1/en
Publication of KR20200079703A publication Critical patent/KR20200079703A/en
Application granted granted Critical
Publication of KR102143603B1 publication Critical patent/KR102143603B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Primary Health Care (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)

Abstract

According to an embodiment of the present invention, the robot service development system can comprise: a template generator which generates a template which describes in a declaring manner the flow of robot service requiring multilateral work based on information inputted from a developer; a template analyzer which generates a question for inferring at least one ontology model required for performing the robot service among a plurality of ontology models based on a meta model including metadata provided to each of the plurality of ontology models and the template; and a service package generator which binds the at least one ontology model inferred based on the question and the template, and generates a service package which includes a role description on the flow of the robot service for each of a plurality of roles, interaction description on interactions between the plurality of roles, and knowledge information required for the robot service. The present invention aims to provide a service package generating method and a robot service development system for performing the same, capable of improving the development environment of the developers.

Description

서비스 패키지 생성 방법 및 이를 수행하는 로봇 서비스 개발 시스템{SERVICE PACKAGE AUTHORING METHOD AND ROBOT SERVICE DEVELOPMENT SYSTEM}Service package creation method and robot service development system that performs the same {SERVICE PACKAGE AUTHORING METHOD AND ROBOT SERVICE DEVELOPMENT SYSTEM}

실시 예는 서비스 패키지 생성 방법 및 이를 수행하는 로봇 서비스 개발 시스템에 대한 것으로서, 더욱 상세하게는 다자간 작업을 필요로 하는 서비스의 서비스 패키지 생성 방법 및 이를 수행하는 로봇 서비스 개발 시스템에 관한 것이다. The embodiment relates to a method for generating a service package and a robot service development system for performing the same, and more particularly, to a method for generating a service package for a service requiring a multilateral operation and a robot service development system for performing the same.

최근 인식, 이동, 조작, 상호작용(Human-Robot Interaction, HRI), 학습, 추론 등의 지능적인 요소를 활용하여 다양한 서비스를 제공할 수 있는 로봇에 대한 연구가 활발하다. Recently, research on robots capable of providing various services using intelligent elements such as recognition, movement, manipulation, interaction (HRI), learning, and reasoning has been actively conducted.

기존에 로봇 서비스를 개발하는 개발자들은 서비스를 제공하는 로봇의 행위를 일일이 정의하는 방식으로 로봇 서비스를 구성하였다. 이러한 방식은 하나의 로봇 서비스를 개발하기까지 상당한 작업량과 복잡도를 요구하여 개발자가 로봇 서비스 개발에 쉽게 접근하지 못하도록 하였다. 또한, 이러한 방식은 서비스를 수행하는데 있어 로봇이 수행하는 행위만을 정의하고 있어, 다자간의 작업을 필요로 하는 서비스를 표현하는데 한계가 존재하고, 이를 수행하는 로봇 타입 또한 한정될 수 밖에 없어 로봇이 개발될 때마다 서비스를 새롭게 개발해야 하는 어려움이 있다. Developers developing robot services have configured robot services by defining the behavior of robots that provide services. This method required a considerable amount of work and complexity to develop a single robot service, which prevented developers from easily accessing robot service development. In addition, this method defines only the actions performed by the robot in performing the service, so there is a limitation in expressing the service that requires multi-party work, and the robot type that performs this must be limited, so the robot is developed. Whenever possible, there is a difficulty in developing a new service.

실시 예를 통해 해결하고자 하는 과제는, 다자간 작업을 필요로 하는 로봇 서비스의 개발을 용이하게 하고, 개발자의 개발 환경을 개선할 수 있는 서비스 패키지 생성 방법 및 이를 수행하는 로봇 서비스 개발 시스템을 제공하는 것이다. The problem to be solved through the embodiment is to provide a robot service development system and a service package generation method for facilitating the development of a robot service requiring multilateral work, and improving the developer's development environment, and performing the same. .

상기 과제를 해결하기 위한 실시 예에 따른 로봇 서비스 개발 시스템은, 개발자로부터 입력되는 정보에 기반하여, 다자간 작업을 필요로 하는 로봇 서비스의 흐름을 선언적으로 서술한 템플릿을 생성하는 템플릿 생성기, 복수의 온톨로지 모델 각각에 부여된 메타 데이터들을 포함하는 메타 모델과 상기 템플릿에 기초하여, 상기 복수의 온톨로지 모델 중 상기 로봇 서비스의 수행에 필요한 적어도 하나의 온톨로지 모델을 추론하는 질의문을 생성하는 템플릿 해석기, 및 상기 질의문을 바탕으로 추론된 상기 적어도 하나의 온톨로지 모델과 상기 템플릿을 바인딩하여, 상기 로봇 서비스를 수행하는 복수의 역할 별로 상기 로봇 서비스의 흐름을 설명하는 역할 설명, 상기 복수의 역할 간의 상호작용을 설명하는 상호작용 설명, 및 상기 로봇 서비스에 필요한 지식정보를 포함하는 서비스 패키지를 생성하는 서비스 패키지 생성기를 포함할 수 있다. The robot service development system according to an embodiment for solving the above problems is a template generator that generates a template declaratively describing the flow of a robot service requiring multi-party work based on information input from a developer, and a plurality of ontology A template interpreter for generating a query statement for inferring at least one ontology model necessary for the execution of the robot service among the plurality of ontology models, based on the meta model including the meta data given to each model and the template, and the template A role description for explaining the flow of the robot service for each of the plurality of roles that perform the robot service by binding the template and the template that are inferred based on the query statement, and explaining the interaction between the plurality of roles It may include a service package generator for generating a service package including the interaction description, and knowledge information required for the robot service.

상기 템플릿은 상기 복수의 역할과, 상기 복수의 역할 각각의 행위들, 그리고 상기 복수의 역할 간의 상호작용을 메타 데이터 형태로 서술할 수 있다.The template may describe the plurality of roles, the actions of each of the plurality of roles, and the interaction between the plurality of roles in the form of metadata.

상기 서비스 패키지 생성기는, 상기 적어도 하나의 온톨로지 모델을 바탕으로 상기 템플릿에 서술된 상호작용들을 상기 로봇 서비스의 도메인에 맞는 상호작용으로 분해 및 재조립하여 상기 서비스 패키지를 생성할 수 있다.The service package generator may generate and disassemble and reassemble interactions described in the template into interactions suitable for the domain of the robot service based on the at least one ontology model.

상기 메타 데이터는 상기 복수의 온톨로지 모델 각각의 속성을 선언적으로 서술할 수 있다. The metadata may declaratively describe the properties of each of the plurality of ontology models.

상기 역할 설명은, 상기 로봇 서비스의 목표 흐름을 역할 별로 서술하는 워크플로우 및 상기 로봇 서비스를 수행하기 위한 사전 환경 정보에 대응하는 컨디션을 포함할 수 있다. The role description may include a workflow describing a target flow of the robot service for each role and a condition corresponding to pre-environment information for performing the robot service.

상기 상호작용 설명은, 각 상호작용을 수행하는 역할들, 상기 각 상호작용의 시작조건 및 종료조건, 및 상기 각 상호작용을 수행하기 위한 행위 설명을 포함할 수 있다. The interaction description may include roles for performing each interaction, start and end conditions of each interaction, and action descriptions for performing each interaction.

상기 서비스 패키지는, 상기 로봇 서비스에서 활용되는 컨텍스트들의 소멸 및 생성에 대한 규칙을 서술하는 컨텍스트 설명을 더 포함할 수 있다. The service package may further include a context description describing rules for destruction and generation of contexts used in the robot service.

또한, 실시 예에 따른 로봇 서비스 개발 시스템의 서비스 패키지 생성 방법은, 개발자로부터 입력되는 정보에 기반하여, 다자간 작업을 필요로 하는 로봇 서비스의 흐름을 선언적으로 서술한 템플릿을 생성하는 단계, 복수의 온톨로지 모델 각각에 부여된 메타 데이터들을 포함하는 메타 모델과 상기 템플릿에 기초하여, 상기 복수의 온톨로지 모델 중 상기 로봇 서비스의 수행에 필요한 적어도 하나의 온톨로지 모델을 추론하는 질의문을 생성하는 단계, 상기 질의문을 이용하여 상기 복수의 온톨로지 모델 중 상기 적어도 하나의 온톨로지 모델을 가져오는 단계, 및 상기 적어도 하나의 온톨로지 모델과 상기 템플릿을 바인딩하여, 상기 로봇 서비스를 수행하는 복수의 역할 별로 상기 로봇 서비스의 흐름을 설명하는 역할 설명, 상기 복수의 역할 간의 상호작용을 설명하는 상호작용 설명, 및 상기 로봇 서비스에 필요한 지식정보를 포함하는 서비스 패키지를 생성하는 단계를 포함할 수 있다. In addition, the service package generation method of the robot service development system according to the embodiment, based on the information input from the developer, generating a template declaratively describing the flow of the robot service requiring multi-tasking, a plurality of ontology Generating a query statement for inferring at least one ontology model necessary for the execution of the robot service among the plurality of ontology models, based on the meta model including the meta data assigned to each model and the template, the query statement Importing the at least one ontology model among the plurality of ontology models, and binding the at least one ontology model and the template to flow the robot service according to a plurality of roles for performing the robot service. The method may include generating a service package including a role description to describe, an interaction description to describe interaction between the plurality of roles, and knowledge information required for the robot service.

상기 템플릿을 생성하는 단계는, 상기 개발자로부터 입력되는 작업 스크립트에 기초하여, 상기 복수의 역할과, 상기 복수의 역할 각각의 행위들, 그리고 상기 복수의 역할 간의 상호작용을 메타 데이터 형태로 서술하는 상기 템플릿을 생성하는 단계를 포함할 수 있다. In the generating of the template, based on a work script input from the developer, the description of the plurality of roles, the actions of each of the plurality of roles, and the interaction between the plurality of roles in metadata form And creating a template.

상기 서비스 패키지를 생성하는 단계는, 상기 적어도 하나의 온톨로지 모델을 바탕으로 상기 템플릿에 서술된 상호작용들을 상기 로봇 서비스의 도메인에 맞는 상호작용으로 분해 및 재조립하여 상기 서비스 패키지를 생성하는 단계를 포함할 수 있다. The generating of the service package includes generating and disassembling and reassembling the interactions described in the template into interactions suitable for the domain of the robot service based on the at least one ontology model. can do.

상기 서비스 패키지 생성 방법에서, 상기 상호작용 설명은, 각 상호작용을 수행하는 역할들, 상기 각 상호작용의 시작조건 및 종료조건, 및 상기 각 상호작용을 수행하기 위한 행위 설명을 포함하며, 상기 템플릿에 서술된 상호작용들을 분해 및 재조립하여 생성될 수 있다. 또한, 상기 메타 데이터는 상기 복수의 온톨로지 모델 각각의 속성을 선언적으로 서술할 수 있다. 또한, 상기 역할 설명은, 상기 로봇 서비스의 목표 흐름을 역할 별로 서술하는 워크플로우 및 상기 로봇 서비스를 수행하기 위한 사전 환경 정보에 대응하는 컨디션을 포함할 수 있다. 또한, 상기 서비스 패키지는, 상기 로봇 서비스에서 활용되는 컨텍스트들의 소멸 및 생성에 대한 규칙을 서술하는 컨텍스트 설명을 더 포함할 수 있다. In the service package generating method, the interaction description includes roles for performing each interaction, start and end conditions of each interaction, and action description for performing each interaction, and the template The interactions described in can be generated by disassembling and reassembling. In addition, the metadata may declaratively describe the attributes of each of the plurality of ontology models. In addition, the role description may include a workflow describing a target flow of the robot service for each role and a condition corresponding to pre-environment information for performing the robot service. In addition, the service package may further include a context description describing rules for destruction and generation of contexts used in the robot service.

실시 예에 따르면, 다자간 작업을 필요로 하는 로봇 서비스의 개발을 용이하게 하고, 더 나아가서 개발자의 개발 환경을 개선할 수 있다. According to the embodiment, it is possible to facilitate the development of a robot service requiring multi-party work, and further to improve the developer's development environment.

도 1은 실시 예에 따른 로봇 서비스 개발 시스템을 개략적으로 도시한 것이다.
도 2는 실시 예에 따른 사회성 모델의 속성을 정의하는 메타 데이터의 일 예를 도시한 것이다.
도 3은 실시 예에 따른 소셜 서비스 템플릿을 개략적으로 도시한 구조도이다.
도 4는 실시 예에 따른 소셜 서비스 템플릿의 일 예를 도시한 것이다.
도 5는 실시 예에 따른 소셜 서비스 패키지를 개략적으로 도시한 구조도이다.
도 6은 실시 예에 따른 소셜 서비스 패키지 생성 시스템에서 소셜 서비스 패키지를 생성하는 방법에 대해 개략적으로 도시한 것이다.
도 7은 실시 예에 따른 로봇 서비스 패키지 변환 시스템에서 소셜 서비스 패키지에 포함된 상호작용 모델로부터 로봇 작업을 도출하는 일 예를 도시한 것이다.
도 8은 실시 예에 따른 소셜 서비스 패키지를 개략적으로 도시한 구조도이다.
도 9는 실시 예에 따른 로봇 서비스 패키지 변환 시스템의 로봇 서비스 패키지 생성 방법을 개략적으로 도시한 것이다.
1 schematically illustrates a robot service development system according to an embodiment.
2 shows an example of metadata defining attributes of a sociality model according to an embodiment.
3 is a structural diagram schematically showing a social service template according to an embodiment.
4 shows an example of a social service template according to an embodiment.
5 is a structural diagram schematically showing a social service package according to an embodiment.
6 schematically illustrates a method of generating a social service package in a system for generating a social service package according to an embodiment.
7 illustrates an example of deriving a robot task from an interaction model included in a social service package in the robot service package conversion system according to the embodiment.
8 is a structural diagram schematically showing a social service package according to an embodiment.
9 schematically illustrates a method of generating a robot service package in a system for converting a robot service package according to an embodiment.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art to which the present invention pertains may easily practice. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. In addition, in order to clearly describe the present invention in the drawings, parts irrelevant to the description are omitted, and like reference numerals are assigned to similar parts throughout the specification.

명세서 및 청구범위 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification and claims, when a part “includes” a certain component, it means that the component may further include other components, not to exclude other components, unless otherwise stated.

이하, 필요로 하는 도면들을 참조하여 실시 예에 따른 서비스 패키지 생성 방법 및 이를 수행하는 로봇 서비스 개발 시스템에 대해 상세히 설명하기로 한다. 본 문서에서 소셜 서비스는 다자간 작업에 기반한 로봇 서비스를 의미하고, 로봇 서비스는 로봇에 의해 수행되는 서비스를 의미한다. 또한, 다자간 작업이란 복수의 주체들이 참가하는 작업으로, 주체들 간의 상호작용(interaction)으로 작업이 구성된다. Hereinafter, a method for generating a service package according to an embodiment and a robot service development system performing the same will be described in detail with reference to drawings required. In this document, social service means a robot service based on multilateral work, and robot service means a service performed by a robot. In addition, a multi-party work is a work in which a plurality of subjects participate, and the work is composed of interactions between subjects.

도 1은 실시 예에 따른 로봇 서비스 개발 시스템을 개략적으로 도시한 것이다. 1 schematically illustrates a robot service development system according to an embodiment.

도 1을 참조하면, 실시 예에 따른 로봇 서비스 개발 시스템(1)은 지식정보 데이터베이스(10), 소셜 서비스 패키지 생성 시스템(20), 작업 및 로봇 모델 데이터베이스(30), 및 로봇 서비스 패키지 변환 시스템(40)을 포함할 수 있다. Referring to FIG. 1, the robot service development system 1 according to an embodiment includes a knowledge information database 10, a social service package creation system 20, a work and robot model database 30, and a robot service package conversion system ( 40).

지식정보 데이터베이스(10)는 사회성 모델들(11~16)과, 메타 모델(17)을 포함할 수 있다. The knowledge information database 10 may include sociality models 11 to 16 and a meta model 17.

사회성 모델들(11~16)은, 로봇이 소셜 서비스를 수행하는데 필요로 하는 지식정보들을 모듈화하여 구성한 온톨로지 모델들이다. 지식정보 데이터베이스(10)에 저장되는 사회성 모델들은, 각 사회성 모델이 서술하는 지식정보의 타입에 따라, 목표/의도 모델(11), 감정 모델(12), 개성 모델(13), 작업 모델(14), 상호작용 모델(15), 사용자 모델(16) 등으로 구분될 수 있다. 목표/의도 모델(11)은 목표/의도 별로 대응하는 목표/의도를 이루는데 필요한 지식정보를 서술할 수 있다. 감정 모델(12)은 감정 타입 별로 대응하는 감정을 표출하는데 필요한 지식정보들을 서술할 수 있다. 개성 모델(13)은 개성 타입 별로 대응하는 개성을 표출하는데 필요한 지식정보를 서술할 수 있다. 또한, 작업 모델(14)은 작업 타입 별로 대응하는 작업을 수행하는데 필요한 지식정보를 서술할 수 있다. 상호작용 모델(15)은 상호작용 별로 상호작용을 수행하는데 필요한 지식정보들을 서술할 수 있다. 사용자 모델(16)은 소셜 서비스의 각 역할을 수행하는 사용자에 따라서 대응하는 역할을 수행하는데 필요한 지식정보를 서술한 것이다. The sociality models 11 to 16 are ontology models configured by modularizing knowledge information required for a robot to perform a social service. The sociality models stored in the knowledge information database 10 are target/intention models 11, emotion models 12, personality models 13, and work models 14 according to the type of knowledge information described by each sociality model. ), interaction model 15, user model 16, and the like. The target/intention model 11 may describe knowledge information necessary to achieve a target/intention corresponding to each target/intention. The emotion model 12 may describe knowledge information necessary to express emotions corresponding to each emotion type. The personality model 13 may describe knowledge information necessary to express personality corresponding to each personality type. In addition, the work model 14 may describe knowledge information required to perform a corresponding work for each work type. The interaction model 15 may describe knowledge information required to perform interaction for each interaction. The user model 16 describes knowledge information necessary to perform a corresponding role according to a user performing each role of a social service.

메타 모델(17)은 각 사회성 모델(11~16)의 속성을 서술하는 메타 데이터들을 포함할 수 있다. 통상적으로, 메타 데이터는 데이터에 관한 구조화된 데이터로, 다른 데이터의 속성을 설명해 주는 데이터를 의미한다. 이러한 메타 데이터는, 대량의 정보 가운데서 찾고 있는 정보를 효율적으로 찾아내서 이용하기 위해 일정한 규칙에 따라 데이터에 대하여 부여되는 데이터이다. The meta model 17 may include meta data describing attributes of each social model 11 to 16. Typically, meta data is structured data about data, and refers to data that describes properties of other data. Such meta data is data given to data according to a certain rule in order to efficiently find and use the information that is being searched among a large amount of information.

메타 모델(17)은, 각 사회성 모델(11~16)의 속성을 선언적으로 서술하는 메타 데이터들과, 각 사회성 모델(11~16)에 메타 데이터를 부여하는 규칙을 정의한 명세를 포함할 수 있다. 각 사회성 모델(11~16)의 속성을 정의하는 메타 데이터로는, 예를 들어, 대응하는 사회성 모델의 지식 도메인, 목적, 이름, 식별정보, 제작자(author) 정보, 타입(목표/의도, 감정, 개성, 작업, 상호작용, 사용자 등) 정보, 업데이트 날짜 등과, 대응하는 사회성 모델이 참조한 지식정보 모델(또는 사회성 모델), 대응하는 사회성 모델에 대한 설명, 대응하는 사회성 모델에서 사용되는 값의 단위, 대응하는 사회성 모델이 가지는 클래스(class), 대응하는 사회성 모델이 가지는 프로퍼티(property) 등을 포함할 수 있다. The meta model 17 may include meta data declaratively describing the attributes of each social model 11 to 16, and a specification defining rules for providing meta data to each social model 11 to 16. . As metadata defining the attributes of each sociality model 11 to 16, for example, the knowledge domain, purpose, name, identification information, author information, type (target/intention, emotion of the corresponding sociality model) , Personality, work, interaction, user, etc.) information, update date, etc., the knowledge information model (or sociality model) referenced by the corresponding sociality model, description of the corresponding sociality model, unit of value used in the corresponding sociality model , A class of a corresponding sociality model, properties of a corresponding sociality model, and the like.

도 2는 실시 예에 따른 사회성 모델의 속성을 정의하는 메타 데이터의 일 예를 도시한 것이다. 도 2를 예를 들면, 메타 모델(17)은 작업 모델(14)로 분류되는 사회성 모델에 대해, 해당 모델을 구성하는 지식정보들의 목적을 서술하는 메타 데이터(171), 해당 모델을 구성하는 지식정보들이 어떠한 역할을 수행하기 위한 것인지를 서술하는 메타 데이터(172), 해당 모델을 구성하는 지식정보들의 타입을 서술하는 메타 데이터(173) 등을 포함할 수 있다. 2 shows an example of metadata defining attributes of a sociality model according to an embodiment. For example, in FIG. 2, the meta model 17 is the social model classified as the work model 14, the metadata 171 describing the purpose of knowledge information constituting the model, and the knowledge constituting the model. It may include meta data 172 describing what role information is to perform, meta data 173 describing the type of knowledge information constituting the corresponding model, and the like.

메타 모델(17)은 또한, 사회성 모델들 간의 관계정보 및 바인딩 규칙(binding rule)정보를 더 포함할 수 있다. 사회성 모델들 간의 관계정보는, 각 사회성 모델이 다른 사회성 모델과 연계된 정보를 생성하고자 하는 경우 사용되는 정보이다. 예를 들어, 행복지수를 1~100 사이의 값으로 나타내는 사회성 모델 A와 행복지수를 높음, 보통, 낮음 단계로 정의하는 사회성 모델 B 간의 관계정보는, '사회성 모델 A에서의 70 이상의 행복지수는 사회성 모델 B에서의 높음 단계의 행복지수에 대응한다'와 같이 정의될 수 있다. 사회성 모델들 간의 바인딩 규칙은, 사회성 모델들 간의 값을 바인딩하기 위한 규칙을 정의한 것이다. 예를 들어, 불쾌지수를 만들어내기 위해, 사회성 모델 C에 서술된 온도와 사회성 모델 D에 서술된 습도를 통합하기 위한 규칙 등을 바인딩 규칙이라 한다.The meta model 17 may further include relation information and binding rule information between social models. The relationship information between sociality models is information used when each sociality model wants to generate information associated with other sociality models. For example, the relationship information between the sociality model A, which represents the happiness index as a value between 1 and 100, and the sociality model B, which defines the happiness index as high, normal, and low levels is:'The happiness index over 70 in the sociality model A is It corresponds to the high level of happiness index in social model B'. The binding rules between sociality models define rules for binding values between sociality models. For example, in order to generate an unpleasant index, the rules for integrating the temperature described in social model C and the humidity described in social model D are called binding rules.

지식정보 데이터베이스(10)는 개방형으로 운용되어, 개발자들은 자신의 단말을 통해 자신이 제작한 사회성 모델을 지식정보 데이터베이스(10)에 업로드하거나, 지식정보 데이터베이스(10)에 저장된 자신의 사회성 모델을 갱신할 수 있다. 또한, 개발자들은 자신이 개발한 사회성 모델을 업로드하거나 갱신 시, 해당 사회성 모델에 대한 대한 메타 데이터를 작성하여 메타 모델(17)에 추가하거나 갱신할 수 있다. The knowledge information database 10 is operated in an open type, so developers upload their sociality model to the knowledge information database 10 through their terminals or update their sociality model stored in the knowledge information database 10. can do. Also, when uploading or updating the sociality model developed by the developers, developers can create meta data about the sociality model and add or update the metamodel 17.

한편, 도 1에서는 지식정보 데이터베이스(10)가 로봇 서비스 개발 시스템(1) 내에 포함되는 경우를 예로 들어 도시하였으나, 본 명의 기술적 사상이 이로 한정되는 것은 아니다. 다른 실시 예에 따르면, 지식정보 데이터베이스(10)는 로봇 서비스 개발 시스템(1)의 외부 데이터베이스로 구현될 수도 있다. Meanwhile, in FIG. 1, the case where the knowledge information database 10 is included in the robot service development system 1 is illustrated as an example, but the technical spirit of the present invention is not limited thereto. According to another embodiment, the knowledge information database 10 may be implemented as an external database of the robot service development system 1.

다시, 도 1을 보면, 소셜 서비스 패키지 생성 시스템(20)은 개발자로부터 입력되는 작업 스크립트에 기반하여 소셜 서비스의 서비스 패키지(이하, '소셜 서비스 패키지'라 명명하여 사용함) 생성을 위한 템플릿(이하, '소셜 서비스 템플릿'이라 명명하여 사용함)을 생성하고, 소셜 서비스 템플릿과 메타 모델(17) 간의 연계를 통해 지식정보 데이터베이스(10)로부터 가져온 사회성 모델들을 바탕으로 소셜 서비스 패키지를 생성할 수 있다. 이를 위해, 소셜 서비스 패키지 생성 시스템(20)은 템플릿 생성기(21), 템플릿 해석기(22), 및 서비스 패키지 생성기(23)를 포함할 수 있다. Referring back to FIG. 1, the social service package generation system 20 is a template for generating a service package (hereinafter, referred to as a'social service package') of a social service based on a work script input from a developer (hereinafter, It is possible to create a social service package based on social models obtained from the knowledge information database 10 through association between the social service template and the meta model 17. To this end, the social service package generation system 20 may include a template generator 21, a template interpreter 22, and a service package generator 23.

템플릿 생성기(21)는 서비스 개발자로부터 입력되는 작업 스크립트들에 기초하여 개발하고자 하는 소셜 서비스의 소셜 서비스 템플릿을 생성할 수 있다. 소셜 서비스 템플릿은, 개발하고자 하는 소셜 서비스의 목적에 따라 필요한 정보들을 메타 데이터 형태로 서술한 것이다. 즉, 소셜 서비스 템플릿은 대응하는 소셜 서비스를 수행하는데 필요한 역할들과 각 역할의 행위, 그리고 역할들 간의 상호작용을 메타 데이터 형태로 서술하여 대응하는 소셜 서비스의 흐름을 선언적으로 정의하는 템플릿이다. The template generator 21 may generate a social service template of a social service to be developed based on work scripts input from a service developer. The social service template describes necessary information in the form of metadata according to the purpose of the social service to be developed. That is, the social service template is a template that declaratively defines the flow of the corresponding social service by describing the roles required for performing the corresponding social service, the action of each role, and the interaction between the roles in the form of metadata.

이러한 소셜 서비스 템플릿은, 도 3에 도시된 바와 같이, 소셜 서비스를 수행하는 주체인 역할(role)들에 대한 역할 설명(110), 행위(activity) 정보(120) 및 상호작용(interaction) 설명(130)를 포함할 수 있다. As illustrated in FIG. 3, such a social service template may include role description 110, activity information 120, and interaction description (role) for roles that are the main subjects that perform the social service (interaction) ( 130).

도 3은 실시 예에 따른 소셜 서비스 템플릿을 개략적으로 도시한 구조도이다. 3 is a structural diagram schematically showing a social service template according to an embodiment.

도 3을 참조하면, 실시 예에 따른 소셜 서비스 템플릿(100)에서 역할 설명(110)은 각 역할 별로 서비스 흐름을 정의하는 정보로서, 각 역할의 라이브니스(liveness), 안전성(safety), 컨디션(condition) 등을 포함할 수 있다. 여기서, 라이브니스는, 각 역할이 소셜 서비스 수행을 위해 실행하는 상호작용 및/또는 행위(activity)의 순서를 서술하고, 안전성은 소셜 서비스를 수행하는 동안 각 역할이 유지해야 하는 컨텍스트(context) 리스트를 서술하고, 컨디션은 각 역할이 배정되기 위해 필요한 사전 환경(컨텍스트 리스트)을 서술할 수 있다. Referring to FIG. 3, the role description 110 in the social service template 100 according to an embodiment is information defining a service flow for each role, and includes the liveness, safety, and condition of each role ( condition). Here, the liveness describes the order of interaction and/or activity that each role executes to perform the social service, and safety is a list of contexts that each role must maintain while performing the social service. And the condition may describe the dictionary environment (context list) required for each role to be assigned.

또한, 소셜 서비스 템플릿(100)에 포함되는 행위 설명(120)은 소셜 서비스 내에서 각 역할이 혼자서 수행해야 하는 행위들에 대해 서술하고, 상호작용 설명(130)은 소셜 서비스를 수행하기 위해 2 이상의 역할들이 어떠한 상호작용들을 수행해야 하는지에 대해 서술할 수 있다. In addition, the action description 120 included in the social service template 100 describes actions that each role should perform alone in the social service, and the interaction description 130 includes two or more to perform the social service. Describe what interactions the roles should perform.

소셜 서비스 템플릿(100)은, 전술한 역할 설명(110), 행위 설명(120), 및 상호작용 설명(130) 외에도, 소셜 서비스에서 필요로 하는 지식정보, 사회성 모델 등의 속성을 정의하는 메타 데이터들을 더 포함할 수 있다. The social service template 100, in addition to the above-described role description 110, action description 120, and interaction description 130, metadata defining attributes such as knowledge information and sociality model required by the social service. It may further include.

도 4는 실시 예에 따른 소셜 서비스 템플릿의 일 예를 도시한 것이다. 4 shows an example of a social service template according to an embodiment.

도 4를 예로 들면, 치매노인 교육을 위한 로봇 서비스를 다자간 작업이 필요한 소셜 서비스로 구성하는 경우, 해당 서비스는 교사(R1)와 학생(R2) 이렇게 두 개의 역할을 필요로 한다. 따라서, 치매노인 교육을 위한 소셜 서비스 템플릿(100)은 교사 역할(R1)과 학생 역할(R2) 각각에 대한 역할 설명(110), 행위 설명(120) 및 상호작용 설명(130)를 포함하도록 구성된다. For example, in the case of configuring the robot service for the education of the dementia elderly as a social service requiring multi-tasking, for example, the service requires two roles: a teacher (R1) and a student (R2). Therefore, the social service template 100 for the education of the elderly with dementia is configured to include a role description 110, an action description 120, and an interaction description 130 for each of the teacher role R1 and the student role R2. do.

교사 역할(R1)을 예로 들면, 교사 역할(R1)에 대한 역할 설명(110)으로는, 교사 역할(R1)에 필요한 상호작용 및/또는 행위들(학습 안내, 학습 준비, 학습 수행, 복습 수행, 서비스 종료)의 순서를 정의한 라이브니스 정보(111)와, "학생 집중도가 높아야 한다", "학습 도구가 계속 사용 가능하여야 한다" 등과 같이 교사 역할(R1)이 유지해야 하는 컨텍스트 리스트를 선언적으로 서술하는 안전성 정보(112)와, "학습 예정에 따라 수행"과 같이 교사 역할(R1)이 배정되기 위해 필요로 하는 컨텍스트 리스트를 선언적으로 서술하는 컨디션 정보(113)가 포함될 수 있다. 또한, 교사 역할(R1)에 대한 행위 설명(120)으로는, 대응하는 행위에 대한 메타 데이터(121)와, 시작조건(122) 및 종료조건(123)을 포함할 수 있다. 또한, 상호작용 설명(130)로는, 대응하는 상호작용에 대한 메타 데이터(상호작용을 수행하는 역할들(시작하는 역할과 참여하는 역할), 상호작용을 위한 행위 둥)(131)와, 대응하는 상호작용의 시작조건(132) 및 종료조건(133)을 포함할 수 있다. Taking the role of the teacher R1 as an example, as the role description 110 for the teacher role R1, interactions and/or actions required for the teacher role R1 (learning guidance, learning preparation, learning performance, review performance) Declaratively the list of contexts that the teacher role R1 should maintain, such as liveness information 111 that defines the sequence of service termination, and "student concentration must be high" and "learning tools must be continuously available." Safety information 112 to be described and condition information 113 to declaratively describe a context list required for the teacher role R1 to be assigned, such as "perform according to a learning schedule," may be included. In addition, the action description 120 for the teacher role R1 may include meta data 121 for a corresponding action, and a start condition 122 and an end condition 123. In addition, the interaction description 130 includes meta data (corresponding roles (beginning role and participating role), action role for interaction) 131 for the corresponding interaction, 131, and corresponding An interaction start condition 132 and an end condition 133 may be included.

또한, 치매노인 교육 소셜 서비스 템플릿(100)은 전술한 역할 설명(110), 행위 설명(120), 및 상호작용 설명(130) 외에, 노인 인지 교육용 작업 모델, 인지 교육 학습 환경 모델, 노인 사용자용 액터(actor) 모델, 인지 교육 교사 의도 모델 등과 같이 치매노인 교육을 위한 소셜 서비스를 수행하는데 필요한 사회성 모델들의 속성에 대해 서술하는 메타 데이터들(140)을 더 포함할 수 있다. In addition, the dementia elderly education social service template 100, in addition to the above-described role description 110, behavior description 120, and interaction description 130, the elderly cognitive education work model, cognitive education learning environment model, elderly users The actor model, the cognitive education teacher intention model, and the like, may further include meta data 140 describing properties of social models required to perform social services for the elderly with dementia.

다시, 도 1을 보면, 템플릿 해석기(22)는 템플릿 생성기(21)에 의해 소셜 서비스 템플릿이 생성되면, 이를 해석하여 서비스 수행에 필요한 사회성 모델을 추론하여 지식정보 데이터베이스(10)로부터 가져오기 위한 질의문을 생성할 수 있다. 템플릿 해석기(22)에 의해 생성되는 질의문은, 메타 모델(17)에 기반하여 대응하는 소셜 서비스의 수행에 필요한 사회성 모델들을 지식정보 데이터베이스(10)로부터 가져오도록 생성될 수 있다. 이를 위해서, 템플릿 해석기(22)는 각 사회성 모델에 대해 메타 데이터를 부여하는 규칙을 서술하는 메타 모델(17)의 명세 정보를 메타 모델(17)과 공유하고, 이를 바탕으로 질의문을 생성할 수 있다. Referring again to FIG. 1, when the template interpreter 22 generates a social service template by the template generator 21, the template interpreter infers the sociality model necessary for performing the service and inquires it from the knowledge information database 10 You can create a door. The query generated by the template interpreter 22 may be generated based on the meta model 17 so as to bring social models necessary for performing a corresponding social service from the knowledge information database 10. To this end, the template interpreter 22 may share the specification information of the meta model 17 describing the rules for providing metadata for each social model with the meta model 17, and generate a query based on this. have.

템플릿 해석기(22)에 의해 생성되는 질의문은, 스파클(Simple Protocol and RDF Query Language, SPARQL) 형태로 작성될 수 있다. The query statement generated by the template interpreter 22 may be written in the form of Sparkle (Simple Protocol and RDF Query Language, SPARQL).

서비스 패키지 생성기(23)는 템플릿 해석기(22)에 의해 생성된 질의문과 지식정보 데이터베이스(10) 내 메타 모델(17)에 기반하여, 대응하는 소셜 서비스의 수행에 필요한 사회성 모델들을 추론하고, 이를 지식정보 데이터베이스(10)로부터 검색하여 가져올 수 있다. 서비스 패키지 생성기(23)는 지식정보 데이터베이스(10)로부터 사회성 모델을 가져올 때, 웹 온톨로지 언어(Ontology Web Language, OWL)를 사용하여 가져올 수 있다. The service package generator 23 infers social models necessary for the execution of a corresponding social service based on the query generated by the template interpreter 22 and the meta model 17 in the knowledge information database 10, and knowledge It can be retrieved and retrieved from the information database 10. The service package generator 23 may import a social model from the knowledge information database 10 using a Web Ontology Web Language (OWL).

서비스 패키지 생성기(23)는 지식정보 데이터베이스(10)로부터 사회성 모델들을 가져오면, 가져온 사회성 모델들과 소셜 서비스 템플릿의 바인딩을 통해 소셜 서비스 패키지를 생성할 수 있다. 사회성 모델들과 소셜 서비스 템플릿의 바인딩 과정에서, 소셜 서비스 템플릿에 포함된 상호작용들을 소셜 서비스의 도메인에 맞게 분해 및 재조립되고, 이러한 분해 및 재조립 과정을 통해 소셜 서비스를 수행하는데 필요한 다자간 작업 즉, 상호작용을 소셜 서비스의 도메인에 맞게 재구축하여 소셜 서비스 패키지를 생성할 수 있다. The service package generator 23 may generate a social service package through binding of the imported social model and the social service template when social models are imported from the knowledge information database 10. In the process of binding the sociality models and the social service template, the interactions included in the social service template are decomposed and reassembled according to the domain of the social service, and the multilateral work required to perform the social service through such decomposition and reassembly process, , Interaction can be rebuilt to fit the domain of the social service to create a social service package.

실시 예에 따르면, 소셜 서비스를 수행하기 위한 소셜 서비스 패키지는, 소셜 서비스를 수행하는 전체 흐름을 역할 별로 서술하는 역할 설명, 소셜 서비스를 수행하는 역할들 간의 상호작용을 서술하는 상호작용 설명, 소셜 서비스에서 활용되는 컨텍스트들의 소멸과 생성에 대해 서술하는 컨텍스트 설명, 및 소셜 서비스에 필요한 지식정보를 명세한 도메인 지식을 포함할 수 있다. According to an embodiment, the social service package for performing a social service includes a role description describing the overall flow of performing the social service for each role, an interaction description describing interactions between roles performing the social service, and a social service It may include a context description that describes the destruction and creation of contexts used in and domain knowledge that specifies knowledge information required for social services.

도 5는 실시 예에 따른 소셜 서비스 패키지를 개략적으로 도시한 구조도이다. 5 is a structural diagram schematically showing a social service package according to an embodiment.

도 5를 참조하면, 실시 예에 따른 소셜 서비스 패키지(200)에서 역할 설명(210)은 대응하는 역할에 대해 정의하는 것으로, 워크플로우, 및 컨디션을 포함할 수 있다. 워크플로우는 소셜 서비스를 수행하는 전체 흐름을 목표 단위에서 역할별로 서술하고, 컨디션은 각 역할이 소셜 서비스를 수행하기 위한 사전 환경 정보를 서술할 수 있다. Referring to FIG. 5, in the social service package 200 according to the embodiment, the role description 210 is defined for a corresponding role, and may include a workflow and a condition. The workflow describes the overall flow of performing the social service for each role in the target unit, and the condition may describe pre-environment information for each role to perform the social service.

소셜 서비스 패키지(200)에서 상호작용 설명(220)은 대응하는 상호작용을 정의하는 것으로, 프로토콜 및 상호작용을 위한 행위 설명을 포함할 수 있다. 프로토콜은 각 상호작용을 수행하는 역할들(시작하는 역할과 참여하는 역할)과, 각 상호작용의 시작 조건 및 종료 조건을 서술하고, 행위 설명은 상호작용을 수행하기 위한 각 역할의 행위들에 대해 서술할 수 있다. In the social service package 200, the interaction description 220 defines a corresponding interaction, and may include a protocol and an action description for the interaction. The protocol describes the roles that perform each interaction (starting and participating roles), and the start and end conditions of each interaction, and the action descriptions describe the actions of each role to perform the interaction. Can be described.

소셜 서비스 패키지(200)에서 컨텍스트 설명(230)은 소셜 서비스에서 활용되는 각 컨텍스트의 생성과 소멸에 대한 규칙에 대해 서술할 수 있다. The context description 230 in the social service package 200 may describe rules for the creation and destruction of each context utilized in the social service.

소셜 서비스 패키지(200)에서 도메인 지식(240)은 소셜 서비스와 관련된 지식 정보를 포함할 수 있다. 도메인 지식(240)은 사회성 모델들이 소셜 서비스 패키지(200) 내에 바인딩 되어 생성될 수 있다.The domain knowledge 240 in the social service package 200 may include knowledge information related to the social service. The domain knowledge 240 may be generated by binding social models in the social service package 200.

전술한 구조의 소셜 서비스 패키지 생성 시스템(20)에서 템플릿 생성기(21), 템플릿 해석기(22) 및 서비스 패키지 생성기(23)의 기능들은 하나 이상의 중앙 처리 유닛(central processing unit, CPU)이나 기타 칩셋, 마이크로프로세서 등으로 구현되는 프로세서에 의해 수행될 수 있다.The functions of the template generator 21, the template interpreter 22, and the service package generator 23 in the social service package creation system 20 having the above-described structure may include one or more central processing units (CPUs) or other chipsets, It may be performed by a processor implemented as a microprocessor.

도 6은 실시 예에 따른 소셜 서비스 패키지 생성 시스템(20)에서 소셜 서비스 패키지를 생성하는 방법에 대해 개략적으로 도시한 것이다. 도 6의 소셜 서비스 패키지 생성 방법은 도 1을 참조하여 설명한 소셜 서비스 패키지 생성 시스템(20)에 의해 수행될 수 있다. 6 schematically illustrates a method of generating a social service package in the social service package creation system 20 according to the embodiment. The method for generating the social service package of FIG. 6 may be performed by the social service package creation system 20 described with reference to FIG. 1.

도 6을 참조하면, 실시 예에 따른 소셜 서비스 패키지 생성 시스템(20)은 서비스 개발자로부터 입력되는 작업 스크립트들에 기초하여 개발하고자 하는 소셜 서비스의 소셜 서비스 템플릿을 생성한다(S10). 여기서, 소셜 서비스 템플릿은, 개발하고자 하는 소셜 서비스를 수행하는데 필요한 역할들과 각 역할의 행위, 그리고 역할들 간의 상호작용을 메타 데이터 형태로 서술하여 대응하는 소셜 서비스의 흐름을 선언적으로 정의한 것으로서, 소셜 서비스를 수행하는 역할에 대한 역할 설명, 행위 설명 및 상호작용 설명을 포함할 수 있다.Referring to FIG. 6, the social service package generation system 20 according to an embodiment generates a social service template of a social service to be developed based on work scripts input from a service developer (S10 ). Here, the social service template declaratively defines a flow of a corresponding social service by describing roles required for performing a social service to be developed, an action of each role, and interactions between roles in the form of metadata. It may include a role description, an action description, and an interaction description for a role performing a service.

소셜 서비스 템플릿이 생성되면, 소셜 서비스 패키지 생성 시스템(20)은 소셜 서비스 템플릿을 해석하여(S11), 서비스 수행에 필요한 사회성 모델들을 지식정보 데이터베이스(10)로부터 읽어오기 위한 질의문을 생성한다(S12). 그리고, 생성된 질의문과 지식정보 데이터베이스(10) 내 메타 모델(17)을 이용하여, 소셜 서비스 수행에 필요한 사회성 모델들을 추론하여 지식정보 데이터베이스(10)로부터 가져온다(S13). When the social service template is generated, the social service package generation system 20 interprets the social service template (S11), and generates a query statement for reading social models necessary for service execution from the knowledge information database 10 (S12). ). Then, using the generated query and the meta-model 17 in the knowledge information database 10, the sociality models necessary for performing social services are inferred and taken from the knowledge information database 10 (S13).

소셜 서비스 패키지 생성 시스템(20)은 지식정보 데이터베이스(10)로부터 사회성 모델들을 가져오면, 가져온 사회성 모델들과 개발자에 의해 작성된 소셜 서비스 템플릿에 기반하여 소셜 서비스 수행을 위한 소셜 서비스 패키지를 생성한다(S14). The social service package creation system 20 generates social service packages for performing social services based on the imported sociality models and the social service templates created by the developer when social modeling is obtained from the knowledge information database 10 (S14) ).

소셜 서비스 패키지 생성 시스템(20)에 의해 생성된 소셜 서비스 패키지는, 외부 데이터베이스(미도시) 상에 저장되어 이를 이용하여 로봇 서비스를 개발하고자 하는 개발자 또는 이를 이용하여 로봇 서비스를 수행하고자 하는 로봇 시스템으로 배포될 수 있다. The social service package generated by the social service package creation system 20 is stored on an external database (not shown) and is a developer who wants to develop a robot service using it or a robot system that wants to perform a robot service using the social service package. Can be distributed.

전술한 바에 따르면, 실시 예에 따른 소셜 서비스 패키지 생성 방법은, 로봇이 하는 작업을 일일이 기재하여 서비스 패키지를 생성하던 기존의 방식과 달리, 개발자가 자신이 개발하고자 하는 소셜 서비스를 수행하는데 필요한 역할들과 각 역할의 행위, 그리고 역할들 간의 상호작용을 직관적으로 정의하여 템플릿을 생성하면, 이를 바탕으로 소셜 서비스 수행을 위한 서비스 패키지를 자동으로 생성할 수 있다. 따라서, 서비스 패키지의 개발 절차를 간소화하여, 개발자들의 편의성과 접근성을 향상시킬 수 있으며, 이를 통해 소셜 서비스를 위한 서비스 패키지 개발에 대한 개발자들의 적극적인 참여를 유도할 수 있다. According to the foregoing, the method for generating a social service package according to an embodiment, unlike the conventional method in which a service package is generated by individually describing the work of the robot, roles required for a developer to perform a social service he or she wants to develop When the template is created by intuitively defining the actions of each role and the interaction between roles, a service package for performing a social service can be automatically generated based on the template. Accordingly, it is possible to improve the convenience and accessibility of developers by simplifying the process of developing a service package, and thereby, to actively induce developers to participate in service package development for a social service.

또한, 하나의 주체에 대해서만 명세하던 기존의 서비스 패키지와 달리, 서비스 패키지 내에 다자간 작업을 수행하는 역할들 각각에 대해 명세하고 있어, 특정 역할이나, 환경, 로봇 등에 구애 받지 않는 서비스 패키지를 생성하는 것이 가능하여, 서비스 패키지의 호환성을 높이는 효과가 있다. In addition, unlike the existing service package that only specified for one subject, it is specified for each of the roles that perform multilateral tasks in the service package, so creating a service package regardless of a specific role, environment, robot, etc. Possible, there is an effect to increase the compatibility of the service package.

한편, 소셜 서비스 패키지는 서비스 흐름을 소셜 서비스를 수행하는 역할 별로 정의하고, 역할들의 행위를 역할들 간의 다자간 작업 즉, 상호작용으로 정의하고 있다. 따라서, 이후 로봇에서 해당 소셜 서비스 패키지를 이용하여 특정 역할을 수행하고자 하는 경우, 상호작용으로 서술된 행위들을 실제 로봇이 수행하는 로봇 작업으로 변환하는 과정이 필요하다. Meanwhile, the social service package defines a service flow for each role performing a social service, and defines an action of roles as a multi-party operation between roles, that is, interaction. Therefore, when a robot wants to perform a specific role using the corresponding social service package, there is a need for a process of converting actions described as interaction into robot tasks performed by a real robot.

다시, 도 1을 보면, 작업 및 로봇 모델 데이터베이스(30)와 로봇 서비스 패키지 변환 시스템(40)은 소셜 서비스 패키지 내에 상호작용으로 서술된 행위들을 실제 로봇이 수행하는 로봇 작업으로 변환하여 서비스 패키지를 생성하는 기능을 수해하기 위한 것이다. Referring again to FIG. 1, the task and robot model database 30 and the robot service package conversion system 40 convert service actions that are described as interactions in a social service package into robot tasks performed by a real robot to generate a service package. It is to understand the function to do.

작업 및 로봇 모델 데이터베이스(30)는 하나 이상의 로봇 프로파일(31), 액터 모델(32), 및 작업 모델(33)들을 포함할 수 있다. The work and robot model database 30 may include one or more robot profiles 31, actor models 32, and work models 33.

로봇 프로파일(31)은 로봇이 자체적인 센서 및 행위 모듈을 구동할 수 있도록 하기 위한 프로파일로, 로봇의 기능 별로 해당 기능을 수행하기 위한 행위 모듈 등을 정의할 수 있다. 예를 들어, A 로봇의 로봇 프로파일(31)은 A 로봇이 발화인식 기능을 수행하기 위해서는 STT(Speech To Text) 모듈을 행위 모듈로 사용하고, 로봇이 발화 기능을 수행하기 위해서는 TTS(Text To Speech) 모듈을 행위 모듈로 사용함을 서술하는 정보를 포함할 수 있다. The robot profile 31 is a profile for allowing the robot to drive its own sensor and behavior module, and may define an behavior module for performing a corresponding function for each robot function. For example, the robot profile 31 of the robot A uses the speech to text (STT) module as the behavior module for the robot A to perform the speech recognition function, and the text to speech (TSS) for the robot to perform the speech function. ) May include information describing the use of the module as an action module.

로봇 프로파일(31)은 로봇 서비스 개발 시스템(1)이 지원하는 로봇 타입들 각각에 대해 정의될 수 있다. 예를 들어, 로봇 서비스 개발 시스템(1)이 로봇 타입 A와 로봇 타입 B를 지원하는 경우, 작업 및 로봇 모델 데이터베이스(30)는 로봇 타임 A와 로봇 타입 B 각각에 대해 정의된 로봇 프로파일(31)들을 포함할 수 있다. The robot profile 31 may be defined for each of the robot types supported by the robot service development system 1. For example, if the robot service development system 1 supports robot type A and robot type B, the job and robot model database 30 includes robot profiles 31 defined for robot time A and robot type B respectively. It may include.

액터 모델(32)은 소셜 서비스를 수행하는 역할들 중 로봇에게 주어진 역할에 따라 로봇이 각 행위를 수행하는데 사용하는 기능 등을 서술할 수 있다. 예를 들어, 로봇에게 교사 역할이 주어져 로봇이 학생이 학습 내용을 인지하는 행위를 수행하는 경우, 액터 모델(32)은 로봇이 발화 인식(speech recognition) 기능을 이용하여 해당 행위를 수행하도록 정의하는 정보를 포함할 수 있다. The actor model 32 may describe a function used by the robot to perform each action according to a role given to the robot among roles performing social services. For example, when a robot is given a teacher role and the robot performs an action of recognizing a student's learning content, the actor model 32 defines that the robot performs a corresponding action using a speech recognition function. Information may be included.

액터 모델(32)은 로봇 프로파일(31)과 마찬가지로 로봇 서비스 개발 시스템(1)이 지원하는 로봇 타입들 각각에 대해 정의될 수 있다. The actor model 32 may be defined for each of the robot types supported by the robot service development system 1, like the robot profile 31.

작업 모델(33)은 로봇에서 특정 기능을 수행하기 위해 실행 가능한 작업 계획들을 서술하는 것이다. 작업 모델(33)은 로봇이 지원하는 기능 별로 정의되어 사용될 수 있다. 예를 들어, 로봇이 이동 기능과 음성 인식 기능을 지원하는 경우, 작업 및 로봇 모델 데이터베이스(30)는 이동 기능에 대한 작업 모델(33)과 음성 인식 기능에 대한 작업 모델(33)을 포함할 수 있다.The work model 33 describes work plans that are executable to perform a specific function in the robot. The work model 33 may be defined and used for each function supported by the robot. For example, if the robot supports the mobile function and the voice recognition function, the work and robot model database 30 may include a work model 33 for the mobile function and a work model 33 for the voice recognition function. have.

한편, 도 1에서는 작업 및 로봇 모델 데이터베이스(30)가 로봇 서비스 개발 시스템(1) 내에 포함되는 경우를 예로 들어 도시하였으나, 본 명의 기술적 사상이 이로 한정되는 것은 아니다. 다른 실시 예에 따르면, 작업 및 로봇 모델 데이터베이스(30)는 로봇 서비스 개발 시스템(1)의 외부 데이터베이스로 구현될 수도 있다. Meanwhile, in FIG. 1, the case where the work and robot model database 30 is included in the robot service development system 1 is illustrated as an example, but the technical spirit of the present invention is not limited thereto. According to another embodiment, the work and robot model database 30 may be implemented as an external database of the robot service development system 1.

다시, 도 1을 보면, 로봇 서비스 패키지 변환 시스템(40)은 소셜 서비스 패키지를 실제 로봇에 적용할 로봇 서비스 패키지로 변환하는 기능을 수행하는 시스템이다. 이러한 로봇 서비스 패키지 변환 시스템(40)은 로봇 작업 생성기(42), 및 서비스 패키지 변환기(43)를 포함할 수 있다. Referring again to FIG. 1, the robot service package conversion system 40 is a system that performs a function of converting a social service package into a robot service package to be applied to an actual robot. The robot service package conversion system 40 may include a robot task generator 42 and a service package converter 43.

소셜 서비스 패키지 해석기(41)는 로봇에서 수행하고자 하는 소셜 서비스가 정해지면, 해당 소셜 서비스의 소셜 서비스 패키지를 외부 데이터베이스(미도시)로부터 가져올 수 있다. 그리고, 소셜 서비스 패키지를 수행하는 각 역할에 대한 액터가 결정되면, 이를 바탕으로 소셜 서비스 패키지로부터 로봇이 실제 수행하는 행위들을 추론할 수 있다. 즉, 소셜 서비스 패키지 해석기(42)는 소셜 서비스 패키지에서 다자간 작업으로 표현된 상호작용들을 행위 단위로 분해하고, 로봇에 부여된 역할에 따라 로봇이 실제 수행해야 하는 행위들만 추론할 수 있다. The social service package interpreter 41 may bring the social service package of the corresponding social service from an external database (not shown) when the social service to be performed by the robot is determined. In addition, when an actor for each role performing a social service package is determined, it is possible to infer the actions actually performed by the robot from the social service package. That is, the social service package interpreter 42 may decompose interactions expressed as multi-party tasks in the social service package into action units, and infer only actions that the robot actually needs to perform according to the role assigned to the robot.

로봇 작업 생성기(42)는 소셜 서비스 패키지 해석기(41)에 의해 로봇이 수행해야 하는 행위들이 추출되면, 대응하는 로봇 프로파일(31) 및 액터 모델(32)을 참조하여, 로봇이 각 행위를 수행하기 위해 사용하는 기능과, 로봇이 해당 기능을 수행하는데 실제 사용하는 행위 모듈을 추론하고, 이를 바탕으로 작업 모델(33)로부터 로봇이 실제 수행할 작업 계획을 가져올 수 있다.When the actions to be performed by the robot are extracted by the social service package interpreter 41, the robot task generator 42 refers to the corresponding robot profile 31 and the actor model 32 to perform each action by the robot. In order to deduce the function to be used and the action module actually used by the robot to perform the corresponding function, based on this, a work plan to be actually performed by the robot can be obtained from the work model 33.

도 7은 실시 예에 따른 로봇 서비스 패키지 변환 시스템(40)이 소셜 서비스 패키지에 포함된 상호작용으로부터 로봇 작업을 도출하는 일 예를 도시한 것이다. 7 illustrates an example in which the robot service package conversion system 40 according to an embodiment derives a robot task from interactions included in the social service package.

도 7을 예로 예로 들면, 로봇 서비스 패키지 변환 시스템(40)은 로봇에 교사 역할이 할당되면, 소셜 서비스 패키지(200)에 정의된 상호작용들 중 교사 역할이 포함된 상호작용 모델(220-1)을 해석하여, 상호작용을 구성하는 행위들(A1, A2) 중 교사 역할의 로봇이 수행해야 하는 행위들을 추론한다. 도 7의 경우, 교사 역할의 학습 내용 전달(A1)과 학습 내용 인지 인식(A2)이 로봇이 수행해야 하는 행위들로 추출될 수 있다. 이후, 로봇 서비스 패키지 변환 시스템(40)은 작업 및 로봇 모델 데이터베이스(30)에 저장된 로봇 프로파일(31) 및 액터 모델(32)과 연계하여, 로봇이 수행해야 하는 각 행위에 대응하는 작업 계획들(plan1, plan2)을 작업 모델(33)로부터 가져올 수 있다. 7 as an example, when the robot service package conversion system 40 is assigned a teacher role to the robot, an interaction model 220-1 including a teacher role among interactions defined in the social service package 200 By interpreting, we infer the actions that the robot in the role of teacher should perform among the actions (A1, A2) constituting the interaction. In the case of FIG. 7, the teacher role learning content delivery (A1) and the learning content recognition recognition (A2) may be extracted as actions that the robot should perform. Subsequently, the robot service package conversion system 40 is linked with the robot profile 31 and the actor model 32 stored in the work and robot model database 30, and the work plans corresponding to each action that the robot needs to perform ( plan1, plan2) can be taken from the working model 33.

서비스 패키지 변환기(43)는, 소셜 서비스 패키지 해석기(41) 및 로봇 작업 생성기(42)가 로봇 프로파일(31) 및 액터 모델(32)을 바탕으로 소셜 서비스 패키지를 해석하여 로봇의 작업 계획들을 획득하면, 이를 바탕으로 소셜 서비스 패키지를 로봇에서의 서비스 제공을 위한 서비스 패키지(이하, '로봇 서비스 패키지'라 명명하여 사용함)로 변환할 수 있다. The service package converter 43, when the social service package interpreter 41 and the robot task generator 42 interpret the social service package based on the robot profile 31 and the actor model 32 to obtain the robot's work plans Based on this, the social service package can be converted into a service package for providing a service on the robot (hereinafter referred to as a'robot service package').

도 8은 실시 예에 따른 소셜 서비스 패키지를 개략적으로 도시한 구조도이다. 8 is a structural diagram schematically showing a social service package according to an embodiment.

도 8을 참조하면, 서비스 패키지 변환기(43)는 로봇에게 할당된 역할을 참조하여 소셜 서비스 패키지(200)에서 역할 단위로 정의된 역할 설명(210)을 로봇 서비스 패키지(300)의 서비스 설명(310)으로 변환할 수 있다. 또한, 서비스 패키지 변환기(43)는 로봇 작업 생성기(42)에 의해 획득된 작업계획들을 참조하여, 소셜 서비스 패키지(200)에서 다자간 작업으로 정의되던 상호작용 설명(220)을 로봇 서비스 패키지(300)의 작업 설명(320)으로 변환하고, 소셜 서비스 패키지(200)에 정의된 컨텍스트 설명(230)과 도메인 지식(240)들을 로봇 서비스 패키지(300)의 컨텍스트 설명(330)과 도메인 지식(340)으로 변환할 수 있다. Referring to FIG. 8, the service package converter 43 refers to the role assigned to the robot, and describes the role description 210 defined by the role unit in the social service package 200 in the service description 310 of the robot service package 300. ). In addition, the service package converter 43 refers to the work plans obtained by the robot task generator 42, and the interaction service 220 defined as a multi-party task in the social service package 200 is provided to the robot service package 300. To the job description 320 of the, and the context description 230 and domain knowledge 240 defined in the social service package 200 to the context description 330 and domain knowledge 340 of the robot service package 300 Can be converted.

로봇 서비스 패키지(300)의 서비스 설명(310)은 서비스 단위로 정의된 워크 플로우 및 컨디션을 포함하고, 작업 설명(320)은 대응하는 로봇 서비스를 수행하기 위한 작업 계획들에 대해 정의할 수 있다. 또한, 컨텍스트 설명(330)은 로봇 서비스에서 활용되는 각 컨텍스트의 생성과 소멸에 대한 규칙에 대해 서술하고, 도메인 지식(340)은 로봇 서비스와 관련된 지식 정보를 포함할 수 있다. The service description 310 of the robot service package 300 includes a workflow and a condition defined in a service unit, and the job description 320 can define work plans for performing a corresponding robot service. In addition, the context description 330 describes rules for the creation and destruction of each context utilized in the robot service, and the domain knowledge 340 may include knowledge information related to the robot service.

전술한 구조의 로봇 서비스 패키지 변환 시스템(40)에서 소셜 서비스 패키지 해석기(41), 로봇 작업 생성기(42) 및 로봇 서비스 패키지 변환기(43)의 기능들은 하나 이상의 중앙 처리 유닛(central processing unit, CPU)이나 기타 칩셋, 마이크로프로세서 등으로 구현되는 프로세서에 의해 수행될 수 있다.The functions of the social service package interpreter 41, the robot task generator 42, and the robot service package converter 43 in the robot service package conversion system 40 of the above-described structure are one or more central processing units (CPUs). Or other chipset, microprocessor, or the like.

도 9는 실시 예에 따른 로봇 서비스 패키지 변환 시스템(40)의 로봇 서비스 패키지 생성 방법을 개략적으로 도시한 것이다. 도 9의 로봇 서비스 패키지 생성 방법은, 도 1을 참조하여 설명한 로봇 서비스 패키지 변환 시스템(40)에 의해 수행될 수 있다.9 schematically illustrates a method of generating a robot service package of the robot service package conversion system 40 according to the embodiment. The method for generating the robot service package of FIG. 9 may be performed by the robot service package conversion system 40 described with reference to FIG. 1.

도 9를 참조하면, 실시 예에 따른 로봇 서비스 패키지 변환 시스템(40)은 로봇이 수행하고자 하는 소셜 서비스의 소셜 서비스 패키지를 외부 데이터로부터 읽어오고(S20), 이를 해석(S21)하여 소셜 서비스 패키지 내 다자간 작업으로 정의된 상호작용들로부터 로봇에 부여된 역할에 따라 로봇이 실제 수행해야 하는 행위들만 추론한다. Referring to FIG. 9, the robot service package conversion system 40 according to an embodiment reads a social service package of a social service to be performed by the robot from external data (S20), interprets it (S21), and generates a social service package in the social service package. Based on the roles assigned to the robot from the interactions defined as multilateral work, only the actions that the robot must actually perform are inferred.

소셜 서비스 패키지로부터 로봇이 실제 수행해야 하는 행위들이 추출되면, 로봇 서비스 패키지 변환 시스템(40)은 대응하는 로봇 프로파일(31) 및 액터 모델(32)을 참조하여, 로봇이 각 행위를 수행하기 위해 사용하는 기능과, 해당 기능을 수행하는데 실제 사용되는 로봇의 행위 모듈을 추론하고, 이를 바탕으로 작업 모델(33)로부터 로봇이 실제 수행할 작업을 가져온다(S22). 그리고, 가져온 로봇 작업들을 바탕으로 소셜 서비스 패키지를 로봇에서의 서비스 제공을 위한 로봇 서비스 패키지로 변환한다(S23). When the actions to be actually performed by the robot are extracted from the social service package, the robot service package conversion system 40 refers to the corresponding robot profile 31 and the actor model 32 to be used by the robot to perform each action. The function and the behavior module of the robot actually used to perform the corresponding function are inferred, and based on this, the robot actually performs a task to be performed (S22). Then, the social service package is converted into a robot service package for providing a service on the robot based on the imported robot tasks (S23).

이렇게 생성된 로봇 서비스 패키지는, 이후 서비스를 수행하는 로봇 시스템에 플러그 앤 플레이될 수 있다. The robot service package thus generated may be plugged and played into a robot system that performs a service.

전술한 바에 따르면, 실시 예에 따른 로봇 서비스 패키지 생성 방법은 소셜 서비스 패키지에서 다자간 작업으로 정의된 상호작용으로부터, 로봇에 주어진 역할에 해당하는 행위들만 자동으로 추출하고, 이를 토대로 로봇이 수행해야 하는 작업을 자동으로 정의하여 로봇 서비스 패키지를 생성한다. 이에 따라, 다자간 작업을 필요로 하는 소셜 서비스를 로봇이 특정 역할이 되어 수행하는 서비스를 제공하고자 하는 경우, 로봇에 적용할 서비스 패키지의 개발을 용이하게 하여, 개발자의 부담이 감소하고, 이로 인해 로봇 서비스 개발에 대한 개발자의 편의성 및 접근성이 향상될 수 있다. According to the above, the robot service package generation method according to the embodiment automatically extracts only actions corresponding to a role given to the robot from the interaction defined as a multi-party operation in the social service package, and the robot needs to perform the operation based on this Defines automatically to create a robot service package. Accordingly, when a robot wants to provide a service that performs a social service that requires a multi-party operation by performing a specific role, it facilitates the development of a service package to be applied to the robot, reducing the burden on the developer, and thereby the robot. The convenience and accessibility of developers for service development can be improved.

한편, 전술한 실시 예에서는 로봇 서비스 개발 시스템(1)이 로봇 시스템(미도시)과 별도로 존재하는 경우를 예로 들어 설명하였으나, 본 발명의 기술적 사상이 이로 한정되는 것은 아니다. 다른 실시 예에서는 로봇 서비스 개발 시스템(1)을 구성하는 적어도 일부의 구성 요소들이 로봇 내에 구현되어 사용될 수도 있다. 예를 들어, 전술한 로봇 서비스 패키지 변환 시스템(40)이 로봇 내부에 구현되어 사용될 수 있다. 이 경우, 로봇은 자신이 수행해야 하는 소셜 서비스와 해당 서비스에서의 자신의 역할이 정해지면, 로봇 서비스 패키지 변환 시스템(40)을 통해 대응하는 소셜 서비스 패키지를 자신의 역할에 맞는 로봇 서비스 패키지로 자동 변환하고, 이를 자신의 로봇 시스템에 플러그 앤 플레이할 수 있다. 예를 들어, 전술한 소셜 서비스 패키지 생성 시스템(20) 및 로봇 서비스 패키지 변환 시스템(40)이 로봇 내부에 구현되어 사용될 수 있다. 이 경우, 로봇은 소셜 서비스 패키지 생성 시스템(20)을 통해 자신이 수행해야 하는 소셜 서비스에 대해 선언적으로 명세한 템플릿을 이용하여 소셜 서비스 패키지를 자동 생성하고, 로봇 서비스 패키지 변환 시스템(40)을 통해 이를 다시 자신의 역할에 맞는 로봇 서비스 패키지로 변환한 뒤, 이를 자신의 로봇 시스템에 플러그 앤 플레이할 수 있다. Meanwhile, in the above-described embodiment, the case where the robot service development system 1 exists separately from the robot system (not shown) is described as an example, but the technical spirit of the present invention is not limited thereto. In another embodiment, at least some components constituting the robot service development system 1 may be implemented and used in the robot. For example, the aforementioned robot service package conversion system 40 may be implemented and used inside the robot. In this case, when the social service to be performed by the robot and his role in the corresponding service are determined, the robot automatically converts the corresponding social service package through the robot service package conversion system 40 into a robot service package suitable for his role. You can convert it and plug and play it into your own robotic system. For example, the above-described social service package creation system 20 and robot service package conversion system 40 may be implemented and used inside the robot. In this case, the robot automatically generates a social service package using a template declaratively specified for a social service that needs to be performed through the social service package creation system 20, and through the robot service package conversion system 40 After converting it back into a robot service package for your role, you can plug and play it into your robot system.

본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현되는 것은 아니며, 본 발명의 실시 예의 구성에 대응하는 기능을 실현하기 위해 기록매체에 기록된 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시 예의 기재로부터 본 발명이 속하는 기술 분야의 전문가라면 쉽게 구현할 수 있는 것이다. The embodiment of the present invention is not implemented only through the apparatus and/or method described above, and a program recorded in a recording medium or a recording medium in which the program is recorded is realized in order to realize a function corresponding to the configuration of the embodiment of the present invention. It may be implemented through, such an implementation can be easily implemented by those skilled in the art to which the present invention belongs from the description of the above-described embodiment.

이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리 범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리 범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of rights of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concept of the present invention defined in the following claims are also provided. It belongs to the scope of rights.

1: 로봇 서비스 개발 시스템
10: 지식정보 데이터베이스
11~16: 사회성 모델
17: 메타 모델
20: 소셜 서비스 패키지 생성 시스템
21: 템플릿 생성기
22: 템플릿 해석기
23: 서비스 패키지 생성기
30: 작업 및 로봇 모델 데이터베이스
31: 로봇 프로파일
32: 액터 모델
33: 작업 모델
40: 로봇 서비스 패키지 변환 시스템
41: 소셜 서비스 패키지 해석기
42: 로봇 작업 생성기
100: 소셜 서비스 템플릿
200: 소셜 서비스 패키지
300: 로봇 서비스 패키지
.
1: Robot service development system
10: Knowledge information database
11~16: Sociality model
17: meta model
20: social service package creation system
21: Template Generator
22: Template interpreter
23: Service Package Generator
30: Work and robot model database
31: robot profile
32: actor model
33: working model
40: robot service package conversion system
41: social service package interpreter
42: robot task generator
100: social service template
200: social service package
300: robot service package
.

Claims (14)

개발자로부터 입력되는 정보에 기반하여, 다자간 작업을 필요로 하는 로봇 서비스의 흐름을 선언적으로 서술한 템플릿을 생성하는 템플릿 생성기,
복수의 온톨로지 모델 각각에 부여된 메타 데이터들을 포함하는 메타 모델과 상기 템플릿에 기초하여, 상기 복수의 온톨로지 모델 중 상기 로봇 서비스의 수행에 필요한 적어도 하나의 온톨로지 모델을 추론하는 질의문을 생성하는 템플릿 해석기, 및
상기 질의문을 바탕으로 추론된 상기 적어도 하나의 온톨로지 모델과 상기 템플릿을 바인딩하여, 상기 로봇 서비스를 수행하는 복수의 역할 별로 상기 로봇 서비스의 흐름을 설명하는 역할 설명, 상기 복수의 역할 간의 상호작용을 설명하는 상호작용 설명, 및 상기 로봇 서비스에 필요한 지식정보를 포함하는 서비스 패키지를 생성하는 서비스 패키지 생성기를 포함하는 로봇 서비스 개발 시스템.
Template generator that generates a template declaratively describing the flow of a robot service that requires multi-party work based on information input from a developer,
A template interpreter that generates a query statement for inferring at least one ontology model necessary to perform the robot service among the plurality of ontology models, based on the meta model and the template including meta data assigned to each of the plurality of ontology models. , And
Role description for explaining the flow of the robot service for each of the plurality of roles for performing the robot service by binding the at least one ontology model inferred based on the query statement and the template, and interaction between the plurality of roles A robot service development system including a service package generator for generating a service package including an interaction description to be described and knowledge information required for the robot service.
제1항에 있어서,
상기 템플릿은 상기 복수의 역할과, 상기 복수의 역할 각각의 행위들, 그리고 상기 복수의 역할 간의 상호작용을 메타 데이터 형태로 서술한 것을 특징으로 하는 로봇 서비스 개발 시스템.
According to claim 1,
The template is a robot service development system, characterized in that the plurality of roles, the actions of each of the plurality of roles, and the interaction between the plurality of roles are described in the form of metadata.
제2항에 있어서,
상기 서비스 패키지 생성기는, 상기 적어도 하나의 온톨로지 모델을 바탕으로 상기 템플릿에 서술된 상호작용들을 상기 로봇 서비스의 도메인에 맞는 상호작용으로 분해 및 재조립하여 상기 서비스 패키지를 생성하는 것을 특징으로 하는 로봇 서비스 개발 시스템.
According to claim 2,
The service package generator, based on the at least one ontology model, decomposes and reassembles interactions described in the template into interactions suitable for the domain of the robot service to generate the service package. Development system.
제1항에 있어서,
상기 메타 데이터는 상기 복수의 온톨로지 모델 각각의 속성을 선언적으로 서술하는 것을 특징으로 하는 로봇 서비스 개발 시스템.
According to claim 1,
The metadata is a robot service development system, characterized in that declaratively describes the properties of each of the plurality of ontology models.
제1항에 있어서,
상기 역할 설명은, 상기 로봇 서비스의 목표 흐름을 역할 별로 서술하는 워크플로우 및 상기 로봇 서비스를 수행하기 위한 사전 환경 정보에 대응하는 컨디션을 포함하는 것을 특징으로 하는 로봇 서비스 개발 시스템.
According to claim 1,
The role description, the robot service development system comprising a workflow for describing the target flow of the robot service for each role and a condition corresponding to pre-environment information for performing the robot service.
제1항에 있어서,
상기 상호작용 설명은, 각 상호작용을 수행하는 역할들, 상기 각 상호작용의 시작조건 및 종료조건, 및 상기 각 상호작용을 수행하기 위한 행위 설명을 포함하는 것을 특징으로 하는 로봇 서비스 개발 시스템.
According to claim 1,
The interaction description includes a role for performing each interaction, a start condition and an end condition for each interaction, and a robot service development system, characterized in that it includes an action description for performing each interaction.
제1항에 있어서,
상기 서비스 패키지는,
상기 로봇 서비스에서 활용되는 컨텍스트들의 소멸 및 생성에 대한 규칙을 서술하는 컨텍스트 설명을 더 포함하는 로봇 서비스 개발 시스템.
According to claim 1,
The service package,
A robot service development system further comprising a context description describing rules for the destruction and generation of contexts used in the robot service.
로봇 서비스 개발 시스템의 서비스 패키지 생성 방법에 있어서,
개발자로부터 입력되는 정보에 기반하여, 다자간 작업을 필요로 하는 로봇 서비스의 흐름을 선언적으로 서술한 템플릿을 생성하는 단계,
복수의 온톨로지 모델 각각에 부여된 메타 데이터들을 포함하는 메타 모델과 상기 템플릿에 기초하여, 상기 복수의 온톨로지 모델 중 상기 로봇 서비스의 수행에 필요한 적어도 하나의 온톨로지 모델을 추론하는 질의문을 생성하는 단계,
상기 질의문을 이용하여 상기 복수의 온톨로지 모델 중 상기 적어도 하나의 온톨로지 모델을 가져오는 단계, 및
상기 적어도 하나의 온톨로지 모델과 상기 템플릿을 바인딩하여, 상기 로봇 서비스를 수행하는 복수의 역할 별로 상기 로봇 서비스의 흐름을 설명하는 역할 설명, 상기 복수의 역할 간의 상호작용을 설명하는 상호작용 설명, 및 상기 로봇 서비스에 필요한 지식정보를 포함하는 서비스 패키지를 생성하는 단계를 포함하는 서비스 패키지 생성 방법.
In the service package generation method of the robot service development system,
Generating a template declaratively describing the flow of a robot service that requires multi-party work based on information input from a developer,
Generating a query statement for inferring at least one ontology model required to perform the robot service among the plurality of ontology models, based on the template and the meta model including meta data assigned to each of the plurality of ontology models,
Obtaining the at least one ontology model among the plurality of ontology models using the query statement, and
A role description for explaining the flow of the robot service for each of the plurality of roles for performing the robot service by binding the at least one ontology model and the template, an interaction description for explaining interactions between the plurality of roles, and the A service package generating method comprising the step of generating a service package including knowledge information required for a robot service.
제8항에 있어서,
상기 템플릿을 생성하는 단계는,
상기 개발자로부터 입력되는 작업 스크립트에 기초하여, 상기 복수의 역할과, 상기 복수의 역할 각각의 행위들, 그리고 상기 복수의 역할 간의 상호작용을 메타 데이터 형태로 서술하는 상기 템플릿을 생성하는 단계를 포함하는 것을 특징으로 하는 서비스 패키지 생성 방법.
The method of claim 8,
The step of generating the template,
And generating the template describing metadata of the plurality of roles, actions of each of the plurality of roles, and interactions between the plurality of roles based on a work script input from the developer. Method of creating a service package, characterized in that.
제9항에 있어서,
상기 서비스 패키지를 생성하는 단계는,
상기 적어도 하나의 온톨로지 모델을 바탕으로 상기 템플릿에 서술된 상호작용들을 상기 로봇 서비스의 도메인에 맞는 상호작용으로 분해 및 재조립하여 상기 서비스 패키지를 생성하는 단계를 포함하는 것을 특징으로 하는 서비스 패키지 생성 방법.
The method of claim 9,
The step of generating the service package,
And generating and disassembling and reassembling the interactions described in the template into interactions suitable for the domain of the robot service based on the at least one ontology model to generate the service package. .
제10항에 있어서,
상기 상호작용 설명은, 각 상호작용을 수행하는 역할들, 상기 각 상호작용의 시작조건 및 종료조건, 및 상기 각 상호작용을 수행하기 위한 행위 설명을 포함하며, 상기 템플릿에 서술된 상호작용들을 분해 및 재조립하여 생성되는 것을 특징으로 하는 서비스 패키지 생성 방법.
The method of claim 10,
The interaction description includes roles for performing each interaction, a start condition and an end condition for each interaction, and an action description for performing each interaction, and decomposes the interactions described in the template And re-assembled to generate the service package.
제8항에 있어서,
상기 메타 데이터는 상기 복수의 온톨로지 모델 각각의 속성을 선언적으로 서술하는 것을 특징으로 하는 서비스 패키지 생성 방법.
The method of claim 8,
The meta data declaratively describes the properties of each of the plurality of ontology models.
제8항에 있어서,
상기 역할 설명은, 상기 로봇 서비스의 목표 흐름을 역할 별로 서술하는 워크플로우 및 상기 로봇 서비스를 수행하기 위한 사전 환경 정보에 대응하는 컨디션을 포함하는 것을 특징으로 하는 서비스 패키지 생성 방법.
The method of claim 8,
The role description includes a workflow for describing a target flow of the robot service for each role and a condition corresponding to pre-environment information for performing the robot service.
제8항에 있어서,
상기 서비스 패키지는,
상기 로봇 서비스에서 활용되는 컨텍스트들의 소멸 및 생성에 대한 규칙을 서술하는 컨텍스트 설명을 더 포함하는 서비스 패키지 생성 방법.
The method of claim 8,
The service package,
A service package generation method further comprising a context description describing rules for destruction and generation of contexts used in the robot service.
KR1020180169115A 2018-12-26 2018-12-26 Service package authoring method and robot service development system KR102143603B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180169115A KR102143603B1 (en) 2018-12-26 2018-12-26 Service package authoring method and robot service development system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180169115A KR102143603B1 (en) 2018-12-26 2018-12-26 Service package authoring method and robot service development system

Publications (2)

Publication Number Publication Date
KR20200079703A true KR20200079703A (en) 2020-07-06
KR102143603B1 KR102143603B1 (en) 2020-08-11

Family

ID=71571285

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180169115A KR102143603B1 (en) 2018-12-26 2018-12-26 Service package authoring method and robot service development system

Country Status (1)

Country Link
KR (1) KR102143603B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230007147A (en) * 2021-07-05 2023-01-12 한국생산기술연구원 Method and device for generating robot task planning from assembly instruction
KR20230081379A (en) 2021-11-30 2023-06-07 서울시립대학교 산학협력단 Method for multi-robot task processing using organization based task specification and apparatus thereof
KR20230081380A (en) 2021-11-30 2023-06-07 서울시립대학교 산학협력단 Method for multi-robot task processing allocating tasks to robots and apparatus thereof

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230103493A (en) 2021-12-31 2023-07-07 서울시립대학교 산학협력단 Method and module for determining social action using social parameter

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060063561A (en) * 2004-12-07 2006-06-12 한국전자통신연구원 System and method for generation of robot service plan

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060063561A (en) * 2004-12-07 2006-06-12 한국전자통신연구원 System and method for generation of robot service plan

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230007147A (en) * 2021-07-05 2023-01-12 한국생산기술연구원 Method and device for generating robot task planning from assembly instruction
KR20230081379A (en) 2021-11-30 2023-06-07 서울시립대학교 산학협력단 Method for multi-robot task processing using organization based task specification and apparatus thereof
KR20230081380A (en) 2021-11-30 2023-06-07 서울시립대학교 산학협력단 Method for multi-robot task processing allocating tasks to robots and apparatus thereof
WO2023101365A1 (en) * 2021-11-30 2023-06-08 서울시립대학교 산학협력단 Method and device for processing multi-robot work by using group-based work description
WO2023101368A1 (en) * 2021-11-30 2023-06-08 서울시립대학교 산학협력단 Multi-robot task processing method and apparatus for assigning tasks to robots
KR20240009526A (en) 2021-11-30 2024-01-22 아리카 주식회사 Method for multi-robot task processing allocating tasks to robots and apparatus thereof

Also Published As

Publication number Publication date
KR102143603B1 (en) 2020-08-11

Similar Documents

Publication Publication Date Title
Ross et al. The programmer’s assistant: Conversational interaction with a large language model for software development
KR102143603B1 (en) Service package authoring method and robot service development system
KR102106193B1 (en) Methods and systems for managing dialogs of a robot
Coronado et al. A cognitive assistant for learning java featuring social dialogue
Dibia Lida: A tool for automatic generation of grammar-agnostic visualizations and infographics using large language models
Çetinkaya et al. Model continuity in discrete event simulation: A framework for model-driven development of simulation models
CN115796299A (en) Transparent and controllable human-intelligent interaction via a chain of machine-learned language models
Buchina et al. Design and evaluation of an end-user friendly tool for robot programming
Stefanidi et al. ParlAmI: a multimodal approach for programming intelligent environments
Trovato et al. A novel greeting selection system for a culture-adaptive humanoid robot
Pastor Conceptual modeling of life: beyond the homo sapiens
Canal et al. PlanVerb: Domain-Independent Verbalization and Summary of Task Plans
Atzeni et al. Towards semantic approaches for general-purpose end-user development
Foster et al. Task-based evaluation of context-sensitive referring expressions in human–robot dialogue
KR102143602B1 (en) Service package authoring method and robot service development system
JP2018072784A (en) Voice recognition method, computer program, and device
Kim et al. Speak your mind: Introducing aptly, the software platform that turns ideas into working apps
Stöckl Natural language interface for data visualization with deep learning based language models
Blumendorf Multimodal interaction in smart environments: a model-based runtime system for ubiquitous user interfaces.
McLean et al. Computer programming in the creative arts
Singh et al. Effective Analysis of Chatbot Frameworks: RASA and Dialogflow
Yaghoubzadeh et al. Enabling robust and fluid spoken dialogue with cognitively impaired users
Feld et al. Software platforms and toolkits for building multimodal systems and applications
Monge Roffarello et al. Defining Trigger-Action Rules via Voice: A Novel Approach for End-User Development in the IoT
Bouchet et al. A framework for modeling the relationships between the rational and behavioral reactions of assisting conversational agents

Legal Events

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