KR102142582B1 - Module and method for controling robot - Google Patents

Module and method for controling robot Download PDF

Info

Publication number
KR102142582B1
KR102142582B1 KR1020180152641A KR20180152641A KR102142582B1 KR 102142582 B1 KR102142582 B1 KR 102142582B1 KR 1020180152641 A KR1020180152641 A KR 1020180152641A KR 20180152641 A KR20180152641 A KR 20180152641A KR 102142582 B1 KR102142582 B1 KR 102142582B1
Authority
KR
South Korea
Prior art keywords
value corresponding
preset
rules
perform
robot
Prior art date
Application number
KR1020180152641A
Other languages
Korean (ko)
Other versions
KR20200071820A (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 KR1020180152641A priority Critical patent/KR102142582B1/en
Publication of KR20200071820A publication Critical patent/KR20200071820A/en
Application granted granted Critical
Publication of KR102142582B1 publication Critical patent/KR102142582B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed

Abstract

로봇 제어 장치 및 방법이 개시된다. 본 발명의 일 실시예에 따른 로봇 제어 장치는 사용자의 명령이 입력되거나 미리 설정된 이벤트가 발생된 경우, 상기 명령 또는 이벤트에 따라 로봇이 수행하여야 할 동작을 결정하는 동작 결정부; 및 상기 동작의 수행 여부에 대응되는 값에 기초하여, 상기 동작의 수행 여부를 결정하는 동작 수행 여부 결정부를 포함한다.A robot control device and method is disclosed. The robot control apparatus according to an embodiment of the present invention includes an operation determining unit that determines an operation to be performed by the robot according to the command or event when a user command is input or a preset event occurs; And an operation performance determination unit determining whether to perform the operation based on a value corresponding to whether or not the operation is performed.

Description

로봇 제어 장치 및 방법{MODULE AND METHOD FOR CONTROLING ROBOT}Robot control device and method{MODULE AND METHOD FOR CONTROLING ROBOT}

개시되는 실시예들은 로봇 제어 기술과 관련된다.The disclosed embodiments relate to robot control technology.

로봇 기술은 산업 발달의 원동력이 됨과 동시에 국가 경쟁력의 핵심이며, 인간의 편의성을 향상시키는 동시에 각종 인간이 해결 못한 문제를 해결할 수 있는 인간이 다룰 수 있는 가장 최상위 고급 기술 중 하나이다. 초기 로봇은 특정 조건에서 특정 기본적인 동작만을 반복하는 단순한 기계 장치에 불과하였다. 그러나, 최근 인공지능 기술 등 각종 4차 산업 기술이 발전하면서, 로봇이 수행할 수 있는 동작 내지 로봇이 처리 가능한 사용자의 명령이 다양해지고, 로봇은 인간의 생활에 더욱 가까지고 있다.Robot technology is the driving force of industrial development, and at the same time, is the core of national competitiveness, and is one of the most advanced and advanced technologies that humans can handle to solve problems that humans cannot solve while improving human convenience. Early robots were merely mechanical devices that repeated only certain basic movements under certain conditions. However, in recent years, as various quaternary industrial technologies, such as artificial intelligence technology, have developed, the operations that the robot can perform or the user's commands that can be processed by the robot are diversified, and the robot is getting closer to human life.

그러나, 이렇게 로봇 기술이 발전하면서 로봇이 다양한 동작을 수행함에 따라 로봇이 사용자의 명령에 따라 그대로 동작하는 경우 경제적, 윤리적으로 부적절하게 되는 문제가 발생할 수 있다. 예를 들어, 가정에서 적절한 홈 서비스를 제공하는 홈 서비스 로봇이 있는데, 아직 정신적으로 완전히 성숙되지 않은 꼬마 아이가 칼을 가져오라는 명령에 로봇이 이를 그대로 따를 경우 윤리적으로 부적절하다는 평가를 받을 수 있고, 이러한 윤리적 책임을 누구에게 물어야 하는지에 대한 논란이 있다.However, as the robot technology develops, as the robot performs various operations, if the robot operates as it is according to a user's command, a problem that is economically and ethically inappropriate may occur. For example, there is a home service robot that provides adequate home service in the home, and if a kid who has not yet been fully mentally mentally instructed to bring a knife can follow the robot as it is, it can be evaluated as ethically inappropriate, There is controversy over who should hold this ethical responsibility.

따라서, 로봇이 기술 발전에 따라 인간의 생활에 더욱더 가까워지기 위해서는 로봇이 윤리적으로 부적절하게 되는 동작을 수행하지 못하게 할 필요가 있다.Therefore, it is necessary to prevent the robot from performing an ethically inappropriate operation in order to make the robot closer to human life as technology advances.

개시되는 실시예들은 로봇 제어 장치 및 방법을 제공하기 위한 것이다.The disclosed embodiments are intended to provide a robot control apparatus and method.

개시되는 실시예들에 따르면, 사용자의 명령이 입력되거나 미리 설정된 이벤트가 발생된 경우, 상기 명령 또는 이벤트에 따라 로봇이 수행하여야 할 동작을 결정하는 동작 결정부; 및 상기 동작의 수행 여부에 대응되는 값에 기초하여, 상기 동작의 수행 여부를 결정하는 동작 수행 여부 결정부를 포함하는, 로봇 제어 장치가 제공된다.According to the disclosed embodiments, when a user's command is input or a preset event occurs, an operation determination unit for determining an operation to be performed by the robot according to the command or event; And based on the value corresponding to whether or not to perform the operation, the robot control apparatus is provided, including an operation or not determining unit for determining whether or not to perform the operation.

상기 동작 결정부는, 상기 미리 설정된 이벤트가 발생된 경우, 미리 저장된 이벤트 별 로봇 동작 지침 정보에 기초하여 상기 로봇이 수행하여야 할 동작을 결정할 수 있다.When the preset event occurs, the operation determining unit may determine an operation to be performed by the robot based on pre-stored robot operation instruction information for each event.

상기 동작 수행 여부 결정부는, 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값의 크기를 비교하여, 상기 동작의 수행 여부를 결정할 수 있다.The operation determining unit may determine whether to perform the operation by comparing the size of a value corresponding to the execution of the operation and a value corresponding to the non-performance of the operation.

상기 동작 수행 여부 결정부는, 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값이 동일한 경우, 상기 동작을 수행하는 것으로 결정할 수 있다.The operation determining unit may determine that the operation is performed when the value corresponding to the execution of the operation and the value corresponding to the non-performance of the operation are the same.

상기 동작 수행 여부 결정부는, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 큰 경우 상기 동작을 수행하는 것으로 결정하고, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 작은 경우 상기 동작을 수행하지 않는 것으로 결정할 수 있다.The operation determining unit determines whether to perform the operation when the value corresponding to the performance of the operation is greater than the value corresponding to the non-performance of the operation, and the value corresponding to the performance of the operation is the meaning of the operation. If it is smaller than a value corresponding to performance, it may be determined that the above operation is not performed.

상기 동작 수행 여부 결정부는, 상기 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값의 합에 기초하여 상기 동작의 수행 여부에 대응되는 값을 계산할 수 있다.The operation determining unit may calculate a value corresponding to whether the operation is performed based on a sum of values corresponding to each of one or more preset rules according to whether the operation is performed.

상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값은, 상기 하나 이상의 사용자에 대응되어 미리 저장될 수 있다.Values corresponding to each of the preset one or more rules may be stored in advance corresponding to the one or more users.

상기 동작 수행 여부 결정부는, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값 및 상기 미리 설정된 하나 이상의 규칙 각각에 대한 중요도에 대응되는 값에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산할 수 있다.The determining whether the operation is performed may correspond to each of the preset one or more rules based on a value corresponding to whether each of the preset one or more rules is satisfied and a value corresponding to an importance for each of the preset one or more rules. The value can be calculated.

상기 동작 수행 여부 결정부는, 상기 동작의 수행 여부에 따른 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단하고, 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 결정할 수 있다.The operation determining unit determines whether each of the preset one or more rules is satisfied according to whether the operation is performed, and based on whether each of the preset one or more rules is satisfied, for each of the preset one or more rules. A value corresponding to whether or not it is satisfied can be determined.

상기 동작 수행 여부 결정부는, 미리 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단할 수 있다.The operation determining unit may determine whether each of the preset one or more rules is satisfied by using a pre-trained prediction model.

상기 동작 수행 여부 결정부는, 상기 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 정도를 확률 값으로 출력하고, 상기 확률 값을 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값으로 결정할 수 있다.The operation determining unit outputs a degree of satisfaction of each of the preset one or more rules as a probability value using the learned prediction model, and corresponds to whether the probability value of each of the preset one or more rules is satisfied Can be determined by value.

상기 동작 수행 여부 결정부는, 상기 동작의 수행 여부가 결정된 이후, 상기 결정된 동작의 수행 여부에 따라 상기 로봇을 제어할 수 있다.After determining whether or not to perform the operation, the determination unit for performing the operation may control the robot according to whether or not the determined operation is performed.

개시되는 다른 실시예들에 따르면, 사용자의 명령이 입력되거나 미리 설정된 이벤트가 발생된 경우, 상기 명령 또는 이벤트에 따라 로봇이 수행하여야 할 동작을 결정하는 단계; 및 상기 동작의 수행 여부에 대응되는 값에 기초하여, 상기 동작의 수행 여부를 결정하는 단계를 포함하는, 로봇 제어 방법이 제공된다.According to other disclosed embodiments, when a user's command is input or a preset event occurs, determining a motion to be performed by the robot according to the command or event; And determining whether to perform the operation based on a value corresponding to whether or not the operation is performed.

상기 로봇이 수행하여야 할 동작을 결정하는 단계는, 상기 미리 설정된 이벤트가 발생된 경우, 미리 저장된 이벤트 별 로봇 동작 지침 정보에 기초하여 상기 로봇이 수행하여야 할 동작을 결정할 수 있다.In the determining of an operation to be performed by the robot, when the preset event occurs, an operation to be performed by the robot may be determined based on pre-stored robot operation instruction information for each event.

상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값의 크기를 비교하여, 상기 동작의 수행 여부를 결정할 수 있다.In determining whether to perform the operation, the size of a value corresponding to the performance of the operation and a value corresponding to the non-performance of the operation may be compared to determine whether the operation is performed.

상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값이 동일한 경우, 상기 동작을 수행하는 것으로 결정할 수 있다.In determining whether to perform the operation, when the value corresponding to the performance of the operation and the value corresponding to the non-performance of the operation are the same, it may be determined to perform the operation.

상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 큰 경우 상기 동작을 수행하는 것으로 결정하고, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 작은 경우 상기 동작을 수행하지 않는 것으로 결정할 수 있다.In the determining whether to perform the operation, when the value corresponding to the performance of the operation is greater than the value corresponding to the non-performance of the operation, it is determined to perform the operation, and the value corresponding to the performance of the operation is determined. If it is smaller than a value corresponding to the non-performance of the operation, it may be determined that the operation is not performed.

상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값의 합에 기초하여 상기 동작의 수행 여부에 대응되는 값을 계산할 수 있다.In determining whether to perform the operation, the value corresponding to whether the operation is performed may be calculated based on a sum of values corresponding to each of one or more preset rules according to whether the operation is performed.

상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값은, 상기 하나 이상의 사용자에 대응되어 미리 저장될 수 있다.Values corresponding to each of the preset one or more rules may be stored in advance corresponding to the one or more users.

상기 동작의 수행 여부를 결정하는 단계는, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값 및 상기 미리 설정된 하나 이상의 규칙 각각에 대한 중요도에 대응되는 값에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산할 수 있다.The determining whether to perform the operation may include determining the one or more rules based on a value corresponding to whether each of the one or more preset rules is satisfied and a value corresponding to the importance of each of the one or more preset rules. Values corresponding to each can be calculated.

상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행 여부에 따른 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단하고, 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 결정할 수 있다.The determining whether to perform the operation may include determining whether each of the preset one or more rules is satisfied according to whether the operation is performed, and determining whether the predetermined one or more rules are satisfied, and based on whether each of the preset one or more rules is satisfied. A value corresponding to whether each rule is satisfied can be determined.

상기 동작의 수행 여부를 결정하는 단계는, 미리 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단할 수 있다.In determining whether to perform the operation, it may be determined whether each of the preset one or more rules is satisfied by using a pre-trained prediction model.

상기 동작의 수행 여부를 결정하는 단계는, 상기 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 정도를 확률 값으로 출력하고, 상기 확률 값을 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값으로 결정할 수 있다.The determining whether to perform the operation may include outputting a degree of satisfaction of each of the preset one or more rules as a probability value using the learned prediction model, and satisfying the probability value for each of the preset one or more rules It can be determined by a value corresponding to whether or not.

상기 동작의 수행 여부가 결정된 이후, 상기 결정된 동작의 수행 여부에 따라 상기 로봇을 제어하는 단계를 더 포함할 수 있다.After determining whether or not to perform the operation, the method may further include controlling the robot according to whether or not the determined operation is performed.

개시되는 실시예들에 따를 경우, 상기 동작의 수행 여부에 대응되는 값에 기초하여 상기 동작의 수행 여부를 결정함으로써, 동작의 수행 여부에 따른 가치가 수치적으로 반영된 값에 기초하여 로봇이 적절한 동작을 수행하고 적절하지 못한 동작을 수행하지 못하도록 하기 위함이다.According to the disclosed embodiments, by determining whether or not to perform the operation based on a value corresponding to whether or not the operation is performed, the robot operates appropriately based on a value whose value according to whether the operation is performed is numerically reflected. This is to prevent the user from performing inappropriate actions.

도 1은 일 실시예에 따른 로봇 제어 장치의 블록도
도 2는 일 실시예에 따른 동작 수행 여부가 결정되는 과정을 설명하기 위한 예시도
도 3은 일 실시예에 따른 동작 수행 여부의 결과를 나타내는 예시도
도 4는 다른 실시예에 따른 동작 수행 여부의 결과를 나타내는 예시도
도 5는 또 다른 실시예에 따른 동작 수행 여부의 결과를 나타내는 예시도
도 6은 일 실시예에 따른 로봇 제어 방법을 설명하기 위한 흐름도
도 7은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도
1 is a block diagram of a robot control apparatus according to an embodiment
2 is an exemplary view for explaining a process of determining whether to perform an operation according to an embodiment
3 is an exemplary view showing a result of whether to perform an operation according to an embodiment
4 is an exemplary view showing a result of whether to perform an operation according to another embodiment
5 is an exemplary view showing a result of whether to perform an operation according to another embodiment
6 is a flowchart illustrating a robot control method according to an embodiment
7 is a block diagram illustrating and illustrating a computing environment including a computing device suitable for use in example embodiments.

이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The following detailed description is provided to aid in a comprehensive understanding of the methods, devices and/or systems described herein. However, this is only an example and the present invention is not limited thereto.

본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments of the present invention, when it is determined that a detailed description of known technology related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted. In addition, terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to a user's or operator's intention or practice. Therefore, the definition should be made based on the contents throughout this specification. The terminology used in the detailed description is only for describing embodiments of the present invention and should not be limiting. Unless expressly used otherwise, a singular form includes a plural form. In this description, expressions such as “including” or “equipment” are intended to indicate certain characteristics, numbers, steps, actions, elements, parts or combinations thereof, and one or more other than described. It should not be interpreted to exclude the presence or possibility of other characteristics, numbers, steps, actions, elements, or parts or combinations thereof.

이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The following detailed description is provided to aid in a comprehensive understanding of the methods, devices and/or systems described herein. However, this is only an example and the present invention is not limited thereto.

상기 구성들은 각각 별개의 구성인 것처럼 설명 또는 도시되지만, 이는 기능적인 각각의 부분을 나누어 설명하기 위하여 별개의 구성인 것처럼 설명 또는 도시되는 것이다. 따라서, 각각의 구성들의 기능은 별개의 부분에서 수행될 수 있음은 물론, 각각의 구성들의 기능은 동일한 부분에서 수행될 수 있음은 당업자에게 자명하다. 또한, 각각의 구성은 서로 전기적인 연결을 포함한 유선 또는 무선의 형태로 연결되어 데이터를 송신 또는 수신할 수 있도록 연결될 수 있다.Each of the above components is described or illustrated as being a separate component, but it is described or illustrated as being a separate component for dividing and explaining each functional part. Accordingly, it is apparent to those skilled in the art that the functions of the respective components can be performed in separate parts, as well as the functions of the respective components can be performed in the same part. In addition, each configuration may be connected to each other in a wired or wireless form including an electrical connection to transmit or receive data.

도 1은 일 실시예에 따른 로봇 제어 장치(100)의 블록도이다. 일 실시예에 따른 로봇 제어 장치(100)는 동작 결정부(110) 및 동작 수행 여부 결정부(120)를 포함한다.1 is a block diagram of a robot control apparatus 100 according to an embodiment. The robot control apparatus 100 according to an embodiment includes an operation determination unit 110 and an operation determination unit 120.

로봇 제어 장치(100)는 로봇(미도시)에 탑재되어 로봇을 제어하는 장치일 수 있다. 본 실시예들에 있어서, 로봇은 스스로 주어진 일을 자동으로 처리하는 기계로서, 예를 들어 인공지능 기술이 적용된 로봇일 수 있다. 상기 로봇은 예를 들어, 가사 지원(청소, 정리정돈, 경비, 심부름 등), 노인 지원(보행보조, 생활지원 등), 재활 지원(간병, 장애자 보호, 재활훈련 등) 등의 용도로 사용되는 개인용 로봇, 공공 서비스(안내, 도우미 등), 빌딩 서비스(경비, 배달, 청소), 사회 인프라 작업(활선, 관로, 고소 작업용), 농림/축산 작업(농약 살포, 과실 수확 지원 등) 등을 수행하는 용도로 사용되는 전문 로봇, 자동차 제조 작업(핸들링, 용접 등), 전자제품 제조 작업(도장, 조립 등) 등을 수행하는 용도로 사용되는 제조업용 로봇 등을 모두 포함하는 넓은 의미로 사용되며, 본 실시예들에 있어서 상기 로봇의 종류가 특별히 한정되는 것은 아니다.The robot control device 100 may be mounted on a robot (not shown) to control the robot. In the present embodiments, the robot is a machine that automatically handles a given task by itself, and may be, for example, a robot to which artificial intelligence technology is applied. The robot is used for purposes such as housework support (cleaning, tidying, expenses, errands, etc.), elderly support (walking assistance, life support, etc.), rehabilitation support (caring, disabled, protection, and rehabilitation). Perform personal robots, public services (guidance, helpers, etc.), building services (expense, delivery, cleaning), social infrastructure work (for livelines, pipelines, aerial works), and agricultural/livestock work (pesticide spraying, fruit harvesting support, etc.) It is used in a broad sense to include all specialized robots used for the purpose of manufacturing, automobile manufacturing operations (handling, welding, etc.), and electronics manufacturing operations (painting, assembly, etc.). In this embodiment, the type of the robot is not particularly limited.

동작 결정부(110)는 사용자의 명령이 입력되거나 미리 설정된 이벤트가 발생된 경우, 상기 명령 또는 이벤트에 따라 로봇이 수행하여야 할 동작을 결정한다.When a user's command is input or a preset event occurs, the motion determination unit 110 determines an action to be performed by the robot according to the command or event.

사용자란 예를 들어, 홈 서비스 로봇의 경우, 사용자는 가족 구성원일 수 있으며, 경우에 따라서는 방문 손님(외부인)도 사용자가 될 수 있다. 한편, 애완 동물의 경우에도 실시예에 따라 사용자가 될 수 있다.For example, in the case of a home service robot, the user may be a family member, and in some cases, a visitor (external person) may also be a user. On the other hand, even in the case of a pet, a user may be used according to an embodiment.

사용자의 명령은 예를 들어, 로봇에게 특정 동작 또는 특정 정보 요청을 하는 메시지일 수 있다. 로봇에게 특정 동작을 요청하는 메시지에는 예를 들어, “물을 가져다 달라”, “현관문을 열어라” 등이 있을 수 있다. 로봇에게 특정 정보를 요청하는 메시지에는 예를 들어, “집안 온도가 어떻게 되니”, “냉장고에 김치 있니” 등이 있을 수 있다. 그리고, 동작 결정부(110)는 사용자의 명령을 입력받기 위해 사용자의 얼굴/표정/제스처/물체/음성/뇌파/접촉 등의 인식을 위한 각종 센서나, 사용자의 명령 입력을 위한 리모컨 등과 같은 다양한 인식 수단을 포함할 수 있다.The user's command may be, for example, a message requesting a specific action or specific information from the robot. The message requesting the robot to perform a specific action may include, for example, “Please bring water” or “Open the front door”. The message requesting the robot for specific information may include, for example, “what is the temperature in the house”, “is there kimchi in the refrigerator”, and the like. In addition, the operation determining unit 110 may use various sensors for recognition of the user's face/facial expression/gesture/object/voice/encephalograph/contact, or a remote control for inputting a user's command to receive a user's command. Recognition means may be included.

이벤트란 예를 들어, 지진/홍수/태풍/호우/폭설/황사/폭발/화재/붕괴 등 각종 재난 상황, 기절/출혈/사망 등 사용자와 관련된 상황, 고장/파손/오류 등 기타 물건과 관련된 사항을 포함할 수 있다. 나아가, 이벤트는 예를 들어, 사용자가 위험한 물건을 소지하고 있는 경우, 도시가스가 유출되고 있는 경우 등과 같이 각종 재난 상황이나 위험한 상황으로 연결될 수 있는 상황도 포함할 수 있다. 동작 결정부(110)는 각종 상황 인식 기술을 이용하여 상기 이벤트의 발생 여부를 판단할 수 있다. 상황 인식 기술이란 로봇이 다양한 센서 또는 통신 기술을 활용하여 각종 정보를 수집하고, 상기 정보 및 인공지능 기술 등을 활용하여 상황을 인식하는 기술을 말한다.Events include, for example, various disaster situations such as earthquake/flood/typhoon/heavy/snowfall/yellow/explosion/fire/collapse, user-related situations such as stun/bleeding/death, failures/damages/errors, etc. It may include. Furthermore, the event may also include a situation that may lead to various disaster situations or dangerous situations, such as, for example, when a user carries dangerous objects or when city gas is leaked. The operation determination unit 110 may determine whether the event has occurred using various situation recognition techniques. The context recognition technology refers to a technology in which a robot collects various information using various sensors or communication technologies, and recognizes the situation using the above information and artificial intelligence technology.

일 예시로, 동작 결정부(110)는 “현관문을 열어라”라는 사용자의 명령이 입력된 경우, “현관문 열기”라는 동작을 로봇이 수행하여야 할 동작으로 결정할 수 있다. 다른 예시로, 동작 결정부(110)는 “화재”라는 이벤트가 발생된 경우 “경보장치를 작동시키고 현관문을 개방시키며 사용자의 탈출을 도와준다”는 동작을 로봇이 수행하여야 할 동작으로 결정할 수 있다.As an example, when a user's command of “open the front door” is input, the motion determination unit 110 may determine an operation of “opening the front door” as a motion to be performed by the robot. As another example, when an event called “fire” occurs, the motion determination unit 110 may determine, as an action to be performed by the robot, “operating the alarm device, opening the front door, and helping the user escape”. have.

한편, 동작 결정부(110)는 미리 저장된 이벤트가 발생된 경우, 상기 미리 저장된 이벤트 별 로봇 동작 지침 정보에 기초하여 상기 로봇이 수행하여야 할 동작을 결정할 수 있다. 여기서, 이벤트 별 로봇 동작 지침 정보는 미리 이벤트 각각에 대응되어 로봇이 수행하여야 할 동작으로 이루어진 데이터베이스일 수 있다. 다만, 이에 한정되는 것은 아니며, 동작 결정부(110)는 각종 인공 지능 기술이나 통신 기술을 활용하여 주어진 상황에 대응되는 적절한 동작을 로봇이 수행하여야 할 동작으로 실시간으로 결정할 수도 있다.Meanwhile, when a pre-stored event occurs, the motion determination unit 110 may determine an action to be performed by the robot based on the pre-stored robot motion instruction information for each event. Here, the robot operation guide information for each event may be a database consisting of operations to be performed by the robot corresponding to each event in advance. However, the present invention is not limited to this, and the operation determination unit 110 may determine in real time an operation to be performed by the robot to perform an appropriate operation corresponding to a given situation by using various artificial intelligence technologies or communication technologies.

동작 수행 여부 결정부(120)는 동작 결정부(110)에 의해 결정된 동작의 수행 여부에 대응되는 값에 기초하여, 상기 동작 결정부(110)에 의해 동작의 수행 여부를 결정할 수 있다.The operation determining unit 120 may determine whether to perform the operation by the operation determining unit 110 based on a value corresponding to whether or not the operation determined by the operation determining unit 110 is performed.

각 동작마다 동작의 수행 여부에 대응되는 값이 설계자에 의해 미리 정해져 있을 수 있다. 실시예에 따라, 각 동작의 수행 여부에 대응되는 값은 상기 로봇의 관리 서버로부터 제공받아 자동 또는 수동으로 업데이트될 수 있다.For each operation, a value corresponding to whether the operation is performed may be previously determined by the designer. According to an embodiment, a value corresponding to whether or not each operation is performed may be automatically or manually updated by being provided from the management server of the robot.

동작 수행 여부 결정부(120)는 동작의 수행에 대응되는 값과 동작의 미수행에 대응되는 값의 크기를 비교하여, 동작의 수행 여부를 결정할 수 있다.The operation performance determining unit 120 may determine whether to perform the operation by comparing the size of the value corresponding to the execution of the operation with the value corresponding to the non-performance of the operation.

예를 들어, 동작 수행 여부 결정부(120)는 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 큰 것으로 판단되는 경우 상기 동작을 수행하는 것으로 결정할 수 있다. 그리고, 동작 수행 여부 결정부(120)는 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 작은 것으로 판단되는 경우 상기 동작을 수행하지 않는 것으로 결정할 수 있다.For example, the determination unit 120 may determine whether to perform the operation when it is determined that a value corresponding to the performance of the operation is greater than a value corresponding to the performance of the operation. In addition, if it is determined that the value corresponding to the performance of the operation is smaller than the value corresponding to the performance of the operation, the determination unit 120 may determine that the operation is not performed.

한편, 동작 수행 여부 결정부(120)는 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값이 동일한 경우, 상기 동작을 수행하는 것으로 결정할 수 있다. 이는 로봇 자체가 사용자의 명령에 따르기 위해 존재한다는 점을 반영한 것이다.Meanwhile, if the value corresponding to the performance of the operation and the value corresponding to the non-performance of the operation are the same, the determination unit 120 for performing the operation may determine to perform the operation. This reflects the fact that the robot itself exists to follow the user's instructions.

한편, 상술한 바와 같이, 동작의 수행 여부에 대응되는 값은 미리 정해져 있을 수도 있으나, 실시예에 따라 상기 동작의 수행 여부에 대응되는 값은 컴퓨터 연산에 의해 구해질 수도 있다.Meanwhile, as described above, a value corresponding to whether or not to perform the operation may be predetermined, but according to an embodiment, a value corresponding to whether or not to perform the operation may be obtained by a computer operation.

예를 들어, 동작 수행 여부 결정부(120)는 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값의 합에 기초하여 상기 동작의 수행 여부에 대응되는 값을 계산할 수 있다. 미리 설정된 하나 이상의 규칙이란 상기 로봇이 특정 동작을 수행하는 것이 적절한지 평가하기 위한 규칙을 말한다. 예를 들어, 미리 설정된 하나 이상의 규칙은 상기 동작에 대한 경제적 효용성을 평가하기 위한 규칙일 수도 있으며, 상기 동작이 윤리적/도덕적으로 적절한지를 평가하기 위한 규칙일 수도 있고, 이들의 혼합 형태일 수도 있다. 이하, 일 예시로서, 상기 동작이 윤리적으로 적절한지를 평가하기 위한 윤리적 판단원칙을 소개한다.For example, the operation performance determining unit 120 may calculate a value corresponding to whether the operation is performed based on a sum of values corresponding to each of one or more preset rules according to whether the operation is performed. The preset one or more rules refer to rules for evaluating whether it is appropriate for the robot to perform a specific operation. For example, one or more preset rules may be rules for evaluating the economic effectiveness of the operations, rules for evaluating whether the operations are ethically/ethically appropriate, or a mixture of these. Hereinafter, as an example, an ethical judgment principle for evaluating whether the above operation is ethically appropriate is introduced.

윤리적 판단원칙은 윤리성의 중요도에 따라 상급, 중급, 하급의 3단계로 구분될 수 있다.The ethical judgment principle can be divided into three levels: upper, intermediate, and lower depending on the importance of ethics.

상급 윤리적 판단원칙은 다음의 네 가지 규칙으로 구성된다.The higher ethical judgment principle consists of the following four rules.

제1 규칙: 로봇은 개인의 기본 권리(존엄성, 자유, 평등, 프라이버시, 지식, 행복에 관한 권리)를 침해해서는 안 된다.Rule 1: Robots should not violate the basic rights of individuals (rights of dignity, freedom, equality, privacy, knowledge, happiness).

제2 규칙: 로봇은 공공선(평화, 복지, 환경, 국가안보, 사회 안전 등)을 침해해서는 안 된다.Rule 2: Robots should not invade the public good (peace, welfare, environment, national security, social safety, etc.).

제3 규칙: 로봇은 개인별 정당한 필요(건강, 안전, 사회적 소속, 존중, 자기실현 등)를 충족시켜야 한다.Rule 3: Robots must meet their legitimate needs (health, safety, social belonging, respect, self-realization, etc.).

제4 규칙: 로봇은 현 상황에 해당되는 법과 규범을 준수해야 한다.Rule 4: Robots must comply with the laws and norms applicable to the current situation.

중급 윤리적 판단원칙은 다음의 네 가지 규칙으로 구성된다.The Intermediate Ethical Judgment Principle consists of the following four rules.

제5 규칙: 로봇은 사람에게 해를 가해서는 안 된다. Rule 5: Robots should not harm people.

제6 규칙: 로봇은 사용자의 명령을 따라야 한다. 동시에 두 가지 이상의 명령이 내려진 경우 우선순위에 따라야 한다.Rule 6: The robot must follow the user's instructions. If two or more orders are issued at the same time, they must be prioritized.

제7 규칙: 로봇은 자신을 포함해서 인간의 재산에 손해를 입혀서는 안 된다.Rule 7: Robots must not damage human property, including themselves.

제8 규칙: 로봇은 인간이나 다른 로봇을 속이거나 거짓말을 해서는 안 된다.Rule 8: Robots must not lie or lie to humans or other robots.

하급 윤리적 판단원칙은 다음의 두 가지 규칙으로 구성된다.The lower ethical judgment principle consists of the following two rules.

제9 규칙: 로봇은 사용자의 즐거움과 기쁨을 증가시키는데 기여할 필요가 있다.Rule 9: Robots need to contribute to increasing user enjoyment and joy.

제10 규칙: 로봇은 원래 사용 목적에 맞게 동작해야 한다.Rule 10: Robots must operate according to their intended use.

다만, 윤리적 판단원칙은 상기 10가지 규칙에만 한정되는 것은 아니며, 실시예에 따라 적절하게 추가/변경/삭제될 수 있다. 그리고, 상급 윤리적 원칙은 중요도가 3, 중급 윤리적 원칙은 중요도가 2, 하급 윤리적 원칙은 중요도가 1일 수 있다. 다만, 이는 하나의 예시일뿐, 이에 한정되는 것은 아니다.However, the ethical judgment principle is not limited to the above 10 rules, and may be appropriately added/modified/deleted according to the embodiment. In addition, the higher ethical principle may have a importance level of 3, the intermediate ethical principle may have importance level 2, and the lower ethical principle may have importance level 1. However, this is only an example, and is not limited thereto.

동작 수행 여부 결정부(120)는 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부 및 상기 미리 설정된 하나 이상의 규칙 각각에 대한 중요도에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산할 수 있다.The action determining unit 120 determines a value corresponding to each of the preset one or more rules based on whether each of the preset one or more rules is satisfied according to whether or not the action is performed and the importance of each of the preset one or more rules. Can be calculated.

각 동작마다 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부는 설계자에 의해 미리 정해져 있을 수 있다. 실시예에 따라 각 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부는 상기 로봇의 관리 서버로부터 제공받아 자동 또는 수동으로 업데이트될 수 있다. 이는, 로봇의 자의적 가치 판단으로 인해 어떠한 문제가 발생될 소지를 줄이거나 없애기 위해 인간인 사람이 각 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부를 정할 수 있도록 하기 위함이다. 그리고, 특정 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부는 사용자 별로 달리 정해져 있을 수 있다.For each operation, whether or not each of one or more preset rules according to whether or not to perform the operation is satisfied may be determined in advance by the designer. According to an embodiment, whether or not each of one or more preset rules according to whether or not to perform each operation is satisfied may be provided from the management server of the robot and updated automatically or manually. This is to enable a human person to determine whether or not each of one or more preset rules is satisfied according to whether or not each action is performed in order to reduce or eliminate the possibility of any problem due to the arbitrary value determination of the robot. In addition, whether or not each of one or more preset rules according to whether or not a specific operation is performed may be determined for each user.

구체적으로, 동작 수행 여부 결정부(120)는 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값 및 상기 미리 설정된 하나 이상의 규칙 각각에 대한 중요도에 대응되는 값에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산할 수 있다. 어떤 규칙이 충족되는 경우에는 그 대응되는 값이 1, 불충족되는 경우에는 그 대응되는 값이 0일 수 있다. 다만, 이는 하나의 예시일뿐, 이에 한정되는 것은 아니다.Specifically, the operation performance determination unit 120 may be based on a value corresponding to whether each of the preset one or more rules is satisfied according to whether the operation is performed and a value corresponding to the importance of each of the preset one or more rules. Values corresponding to each of the preset one or more rules may be calculated. When a certain rule is satisfied, the corresponding value may be 1, and when not satisfied, the corresponding value may be 0. However, this is only an example, and is not limited thereto.

한편, 상술한 바와 같이, 특정 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부나 특정 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값은 미리 정해져 있을 수도 있으나, 실시예에 따라 컴퓨터 연산에 의해 구해질 수도 있다.Meanwhile, as described above, a value corresponding to whether or not each of the preset one or more rules is satisfied according to whether or not a specific operation is performed or whether or not each of the preset one or more rules is satisfied according to whether or not a specific operation is performed may be determined in advance. It may be, but may be obtained by computer operation according to an embodiment.

예를 들어, 동작 수행 여부 결정부(120)는 동작의 수행 여부에 따른 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단하고, 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 결정할 수 있다. 구체적으로, 동작 수행 여부 결정부(120)는 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단할 수 있다. 예를 들어, 동작 수행 여부 결정부(120)는 상기 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 정도를 확률 값으로 출력하고, 상기 확률 값을 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값으로 결정할 수 있다. 실시예에 따라, 동작 수행 여부 결정부(120)는 상기 확률 값이 기 설정된 값을 초과하는지 여부를 기준으로, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 결정할 수 있다.For example, the operation performance determining unit 120 determines whether each of the preset one or more rules is satisfied according to whether the operation is performed, and based on whether each of the preset one or more rules is satisfied, the preset one A value corresponding to whether or not each rule is satisfied may be determined. Specifically, the operation performance determining unit 120 may determine whether each of the preset one or more rules is satisfied by using the learned prediction model. For example, the operation performance determination unit 120 outputs the degree of satisfaction of each of the preset one or more rules as a probability value using the learned prediction model, and outputs the probability value to each of the preset one or more rules It can be determined by a value corresponding to whether or not it is satisfied. According to an embodiment, the operation performance determining unit 120 may determine a value corresponding to whether or not each of the preset one or more rules is satisfied based on whether the probability value exceeds a preset value.

예를 들어, 동작 수행 여부 결정부(120)는 상기 확률 값이 기 설정된 값을 초과하는 경우, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 1로 결정하고, 상기 확률 값이 기 설정된 값을 초과하지 않는 경우, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 0으로 결정할 수 있다.For example, if the probability value exceeds the preset value, the determination unit 120 for performing an operation determines a value corresponding to whether each of the preset one or more rules is satisfied as 1, and the probability value is When not exceeding a preset value, a value corresponding to whether or not each of the preset one or more rules is satisfied may be determined as 0.

동작 수행 여부 결정부(120)는 상기 동작의 수행 여부가 결정된 이후, 상기 결정된 동작의 수행 여부에 따라 상기 로봇을 제어할 수 있다.After determining whether or not to perform the operation, the determination unit 120 for performing the operation may control the robot according to whether or not the determined operation is performed.

이와 같이, 동작 수행 여부 결정부(120)가 결정된 동작의 수행 여부에 따라 상기 로봇을 제어할 경우, 향후 로봇의 동작의 수행 여부에 의해 어떠한 문제가 발생했을 때, 로봇의 설계자는 해당 문제의 관계자에게 그 동작의 수행 여부에 기초가 되는 로그데이터를 제시함으로써, 그 책임으로부터 벗어날 수 있을 것이다. 따라서, 동작 수행 여부 결정부(120)가 어떠한 동작의 수행 여부를 결정하였을 때에는 그 동작의 수행 여부에 기초가 되는 로그데이터를 저장할 수 있고, 실시예에 따라 해당 로그데이터를 기타 저장장치가 마련된 PC 등으로 송신함으로써 로그데이터가 해당 PC 등에서 지속적으로 관리되도록 할 수 있다.As described above, when the robot determines whether the operation is performed or not, the control unit 120 controls the robot according to whether or not the determined operation is performed, when a problem occurs due to whether or not the robot is performing in the future, the designer of the robot is related to the problem. By presenting log data that is the basis for whether or not the operation is performed, it will be possible to escape the responsibility. Therefore, when the operation determination unit 120 determines whether or not to perform any operation, log data based on whether or not the operation is performed may be stored, and according to an embodiment, the log data is a PC provided with other storage device. The log data can be continuously managed on the corresponding PC by transmitting the data.

도 2는 일 실시예에 따른 동작 수행 여부를 결정하는 과정을 설명하기 위한 예시도이다.2 is an exemplary diagram for describing a process of determining whether to perform an operation according to an embodiment.

도 2에 도시된 바와 같이, 미리 설정된 하나 이상의 규칙으로는, 중요도가 3인 규칙으로는 제1 규칙과 제2 규칙, 중요도가 2인 규칙으로는 제3 규칙과 제4 규칙, 중요도가 1인 규칙으로는 제5 규칙과 제6 규칙이 있을 수 있다.As shown in FIG. 2, the first rule and the second rule as a rule of importance 3, the third rule and the fourth rule as a rule of importance 2, the importance of 1 as one or more preset rules The rule may be a fifth rule and a sixth rule.

로봇 제어 장치는 사용자의 X 명령이 입력되거나 X 이벤트가 발생된 경우, 로봇은 상기 X 명령 또는 X 이벤트에 따라 로봇이 수행하여야 할 동작을 A 동작으로 결정할 수 있다. 이때, 로봇 제어 장치는 A 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각의 충족 여부에 대응되는 값 및 상기 미리 설정된 하나 이상의 규칙 각각에 대한 중요도에 대응되는 값에 기초하여 상기 A 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산할 수 있다.When the user's X command is input or the X event occurs, the robot control device may determine the action to be performed by the robot as the A action according to the X command or the X event. At this time, the robot control device performs whether or not the A operation is performed based on a value corresponding to each of the predetermined one or more rules according to whether or not the A operation is performed and a value corresponding to the importance for each of the preset one or more rules. A value corresponding to each of the preset one or more rules according to may be calculated.

도 2에 도시된 바와 같이, 특정 규칙이 충족되는 경우에 대응되는 값이 1, 특정 규칙이 불충족되는 경우에 대응되는 값이 0일 수 있다.As illustrated in FIG. 2, a value corresponding to a case in which a specific rule is satisfied may be 1, and a value corresponding to a case in which a specific rule is not satisfied may be 0.

로봇 제어 장치는 특정 동작의 수행 여부에 따라 특정 규칙을 충족하지 못한 경우에 상기 특정 규칙의 중요도에 대응되는 값에 마이너스한 값을 상기 특정 동작의 수행 여부에 따른 상기 특정 규칙에 대응되는 값으로 결정할 수 있다. 예를 들어, A 동작 수행의 경우 제1 규칙이 충족되지 못하므로 A 동작 수행에 따른 제1 규칙에 대응되는 값은 -3일 수 있다.The robot control device determines a value minus the value corresponding to the importance of the specific rule as a value corresponding to the specific rule according to whether or not the specific operation is performed when the specific rule is not satisfied according to whether or not the specific operation is performed Can. For example, since the first rule is not satisfied when performing the A operation, the value corresponding to the first rule according to the performing the A operation may be -3.

로봇 제어 장치는 특정 동작의 수행 여부에 따라 특정 규칙을 충족하는 경우에 0을 상기 특정 동작의 수행 여부에 따른 상기 특정 규칙에 대응되는 값으로 결정할 수 있다. 예를 들어, A 동작 수행의 경우 제2 규칙이 충족되므로 A 동작 수행에 따른 제2 규칙에 대응되는 값은 0일 수 있다.The robot control apparatus may determine 0 as a value corresponding to the specific rule according to whether the specific operation is performed when a specific rule is satisfied according to whether a specific operation is performed. For example, since the second rule is satisfied when performing the A operation, the value corresponding to the second rule according to the performing the A operation may be 0.

이러한 방식으로, 로봇 제어 장치는 상기 A 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산할 수 있다.In this way, the robot control apparatus may calculate a value corresponding to each of one or more preset rules according to whether or not the A operation is performed.

그리고, 로봇 제어 장치는 A 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 합산하여 A 동작의 수행에 대응되는 값을 -5, A 동작의 미수행에 대응되는 값을 -6으로 결정할 수 있다.In addition, the robot control apparatus sums values corresponding to each of one or more preset rules according to whether or not A operation is performed, and sets a value corresponding to performance of A operation to -5 and a value corresponding to not performing A operation to -6. You can decide.

이후, 로봇 제어 장치는 A 동작의 수행에 대응되는 값과 A 동작의 미수행에 대응되는 값의 크기를 비교하여, A 동작의 수행 여부에 대해 그 대응되는 값의 크기가 더 작은 방향인, A 동작을 수행하는 것으로 결정할 수 있다.Subsequently, the robot control apparatus compares the size of the value corresponding to the execution of the A operation and the value corresponding to the non-performance of the A operation, and the direction of the smaller size of the corresponding value with respect to whether the operation A is performed, A You can decide to perform the action.

도 3은 일 실시예에 따른 동작 수행 여부의 결과를 나타내는 예시도이다.3 is an exemplary view showing a result of whether to perform an operation according to an embodiment.

구체적으로, 도 3은 사용자가 로봇에게 "건강에 좋은 음식을 가져오라"는 명령과 "건강에 나쁜 음식을 가져오라는 명령"을 내렸을 때, 동작 수행 여부의 결과를 나타내는 예시도이다.Specifically, FIG. 3 is an exemplary view showing the result of whether or not to perform an operation when a user issues a command to the robot to "bring healthy food" and "command to bring healthy food".

도 3에 도시된 바와 같이, "건강에 좋은 음식을 가져오라"는 경우, "가져다 주기"에 대응되는 값은 0이며, "거부하기"에 대응되는 값은 -5이다. 따라서, 이 경우 로봇은 사용자에게 "가져다 주기"를 상기 로봇이 수행하여야 할 동작으로 결정할 수 있다.As shown in FIG. 3, in the case of “bring healthy food”, a value corresponding to “giving cycle” is 0, and a value corresponding to “reject” is -5. Therefore, in this case, the robot may determine the "take cycle" to the user as an operation to be performed by the robot.

한편, "건강에 나쁜 음식을 가져오라"는 경우, "가져다 주기"에 대응되는 값은 -8이며, "거부하기"에 대응되는 값은 -3이다. 따라서, 이 경우 로봇은 사용자에게 "거부하기"를 상기 로봇이 수행하여야 할 동작으로 결정할 수 있다.On the other hand, in the case of "bring food that is bad for your health", the value corresponding to "Give it" is -8, and the value corresponding to "Reject" is -3. Accordingly, in this case, the robot may determine “reject” to the user as an operation to be performed by the robot.

도 4는 다른 실시예에 따른 동작 수행 여부의 결과를 나타내는 예시도이다.4 is an exemplary view showing a result of whether to perform an operation according to another embodiment.

구체적으로, 도 4는 "가족 구성원"과 "외부인"이 엄마의 핸드폰 번호를 요구한 경우, 동작 수행 여부의 결과를 나타내는 예시도이다.Specifically, FIG. 4 is an exemplary diagram showing the result of performing an operation when “family member” and “outsider” request a mother's mobile phone number.

도 4에 도시된 바와 같이, "가족 구성원"의 경우, "알려주기"에 대응되는 값은 0이며, "거부하기"에 대응되는 값은 -6이다. 따라서, 이 경우 로봇은 사용자에게 "알려주기"를 상기 로봇이 수행하여야 할 동작으로 결정할 수 있다.As shown in FIG. 4, in the case of "family member", the value corresponding to "notify" is 0, and the value corresponding to "reject" is -6. Therefore, in this case, the robot may determine “notify” the user as an operation to be performed by the robot.

한편, "외부인"의 경우, "알려주기"에 대응되는 값은 -9이며, "거부하기"에 대응되는 값은 -3이다. 따라서, 이 경우 로봇은 사용자에게 "거부하기"를 상기 로봇이 수행하여야 할 동작으로 결정할 수 있다.On the other hand, in the case of "external", the value corresponding to "notify" is -9, and the value corresponding to "reject" is -3. Accordingly, in this case, the robot may determine “reject” to the user as an operation to be performed by the robot.

도 5는 또 다른 실시예에 따른 동작 수행 여부의 결과를 나타내는 예시도이다.5 is an exemplary view showing a result of whether to perform an operation according to another embodiment.

구체적으로, 도 5는 "어린이"와 "엄마"가 채소를 썰고 있는 경우, 동작 수행 여부의 결과를 나타내는 예시도이다.Specifically, FIG. 5 is an exemplary view showing the result of whether or not to perform an operation when “child” and “mom” are slicing vegetables.

도 3에 도시된 바와 같이, "어린이"의 경우, "주의주기"에 대응되는 값은 -1이며, "무반응"에 대응되는 값은 -5이다. 따라서, 이 경우 로봇은 사용자에게 "주의주기"를 상기 로봇이 수행하여야 할 동작으로 결정할 수 있다.As shown in FIG. 3, in the case of "children", the value corresponding to "attention cycle" is -1, and the value corresponding to "no response" is -5. Therefore, in this case, the robot may determine the “attention period” to the user as an operation to be performed by the robot.

한편, "엄마"의 경우, "주의주기"에 대응되는 값은 -4이며, "무반응"에 대응되는 값은 0이다. 따라서, 이 경우 로봇은 사용자에게 "무반응"을 상기 로봇이 수행하여야 할 동작으로 결정할 수 있다.On the other hand, in the case of "mom", the value corresponding to "attention cycle" is -4, and the value corresponding to "no response" is 0. Accordingly, in this case, the robot may determine “no response” to the user as an operation to be performed by the robot.

도 6은 일 실시예에 따른 로봇 제어 방법을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a robot control method according to an embodiment.

도 6에 도시된 방법은 예를 들어, 도 1에 도시된 로봇 제어 장치(100)에 의해 수행될 수 있다.The method illustrated in FIG. 6 may be performed, for example, by the robot control apparatus 100 illustrated in FIG. 1.

도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.In the illustrated flow chart, the method is described by dividing it into a plurality of steps, but at least some of the steps are performed by reversing the order, combined with other steps, omitted together, divided into detailed steps, or not shown. One or more steps can be performed in addition.

먼저, 로봇 제어 장치(100)는 사용자의 명령이 입력되거나 미리 설정된 이벤트가 발생된 경우, 상기 명령 또는 이벤트에 따라 로봇이 수행하여야 할 동작을 결정한다(610). 예를 들어, 로봇 제어 장치(100)는 상기 미리 설정된 이벤트가 발생된 경우, 미리 저장된 이벤트 별 로봇 동작 지침 정보에 기초하여 상기 로봇이 수행하여야 할 동작을 결정할 수 있다.First, when the user's command is input or a preset event occurs, the robot control apparatus 100 determines an action to be performed by the robot according to the command or event (610). For example, when the preset event occurs, the robot control apparatus 100 may determine an action to be performed by the robot based on pre-stored robot operation instruction information for each event.

다음으로, 로봇 제어 장치(100)는 결정된 동작의 수행 여부에 대응되는 값에 기초하여, 상기 동작의 수행 여부를 결정한다(620).Next, the robot control apparatus 100 determines whether to perform the operation based on the value corresponding to whether or not the operation is performed (620).

예를 들어, 로봇 제어 장치(100)는 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값의 크기를 비교하여, 상기 동작의 수행 여부를 결정할 수 있다.For example, the robot control apparatus 100 may determine whether to perform the operation by comparing the size of a value corresponding to the execution of the operation with a value corresponding to the non-performance of the operation.

예를 들어, 로봇 제어 장치(100)는 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값이 동일한 경우, 상기 동작을 수행하는 것으로 결정할 수 있다. 또한, 로봇 제어 장치(100)는 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 큰 것으로 판단되는 경우 상기 동작을 수행하는 것으로 결정하고, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 작은 것으로 판단되는 경우 상기 동작을 수행하지 않는 것으로 결정할 수 있다.For example, when the value corresponding to the performance of the operation and the value corresponding to the non-performance of the operation are the same, the robot control apparatus 100 may determine to perform the operation. In addition, the robot control apparatus 100 determines to perform the operation when it is determined that the value corresponding to the performance of the operation is greater than the value corresponding to the non-performance of the operation, and the value corresponding to the performance of the operation If it is determined that the value is smaller than the value corresponding to the non-performance of the operation, it may be determined that the operation is not performed.

여기서, 로봇 제어 장치(100)는 상기 결정된 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값의 합에 기초하여 상기 동작의 수행 여부에 대응되는 값을 계산할 수 있다. 이때, 상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값은 상기 하나 이상의 사용자에 대응되어 기 저장되어 있을 수 있다.Here, the robot control apparatus 100 may calculate a value corresponding to whether or not to perform the operation based on a sum of values corresponding to each of one or more preset rules according to whether or not the determined operation is performed. At this time, values corresponding to each of the preset one or more rules may be pre-stored corresponding to the one or more users.

실시예에 따라, 로봇 제어 장치(100)는 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값 및 상기 미리 설정된 하나 이상의 규칙 각각에 대한 중요도에 대응되는 값에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산할 수 있다.According to an embodiment, the robot control apparatus 100 may include the preset one or more based on a value corresponding to whether or not each of the preset one or more rules is satisfied, and a value corresponding to an importance for each of the preset one or more rules. A value corresponding to each rule can be calculated.

예를 들어, 로봇 제어 장치(100)는 상기 동작의 수행 여부에 따른 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단하고, 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 결정할 수 있다.For example, the robot control apparatus 100 determines whether each of the preset one or more rules is satisfied according to whether the operation is performed, and based on whether each of the preset one or more rules is satisfied, the preset one or more rules A value corresponding to whether each rule is satisfied can be determined.

구체적으로, 로봇 제어 장치(100)는 미리 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단할 수 있다. 좀 더 구체적으로, 로봇 제어 장치(100)는 상기 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 정도를 확률 값으로 출력하고, 상기 확률 값을 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값으로 결정할 수 있다.Specifically, the robot control apparatus 100 may determine whether each of the preset one or more rules is satisfied by using a pre-trained prediction model. More specifically, the robot control apparatus 100 outputs the degree of satisfaction of each of the preset one or more rules as a probability value using the learned prediction model, and outputs the probability value for each of the preset one or more rules It can be determined by the value corresponding to the satisfaction.

실시예에 따라, 로봇 제어 장치(100)는 상기 확률 값이 기 설정된 값을 초과하는지 여부를 기준으로, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 결정할 수 있다. 예를 들어, 로봇 제어 장치(100)는 상기 확률 값이 기 설정된 값을 초과하는 경우, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 1로 결정하고, 상기 확률 값이 기 설정된 값을 초과하지 않는 경우, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 0으로 결정할 수 있다.According to an embodiment, the robot control apparatus 100 may determine a value corresponding to whether each of the preset one or more rules is satisfied based on whether the probability value exceeds a preset value. For example, when the probability value exceeds a preset value, the robot control apparatus 100 determines a value corresponding to whether each of the preset one or more rules is satisfied as 1, and the probability value is preset When the value is not exceeded, a value corresponding to whether or not each of the preset one or more rules is satisfied may be determined as 0.

실시예에 따라, 로봇 제어 장치(100)는 상기 동작의 수행 여부가 결정된 이후, 상기 결정된 동작의 수행 여부에 따라 상기 로봇을 제어할 수 있다.According to an embodiment, after determining whether to perform the operation, the robot control apparatus 100 may control the robot according to whether the determined operation is performed.

도 7은 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다.7 is a block diagram illustrating and illustrating a computing environment 10 that includes a computing device suitable for use in example embodiments.

도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술되는 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.In the illustrated embodiment, each component may have different functions and capabilities in addition to those described below, and may include additional components in addition to those described below.

도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 로봇 제어 장치(100)일 수 있다. 컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.The illustrated computing environment 10 includes a computing device 12. In one embodiment, the computing device 12 may be a robot control device 100. The computing device 12 includes at least one processor 14, a computer readable storage medium 16 and a communication bus 18. The processor 14 may cause the computing device 12 to operate in accordance with the exemplary embodiment mentioned above. For example, processor 14 may execute one or more programs stored on computer readable storage medium 16. The one or more programs can include one or more computer-executable instructions, which, when executed by processor 14, configure computing device 12 to perform operations in accordance with an exemplary embodiment. Can be.

컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.Computer readable storage medium 16 is configured to store computer executable instructions or program code, program data and/or other suitable types of information. The program 20 stored on the computer readable storage medium 16 includes a set of instructions executable by the processor 14. In one embodiment, the computer readable storage medium 16 is a memory (volatile memory such as random access memory, non-volatile memory, or a suitable combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash Memory devices, other types of storage media that can be accessed by the computing device 12 and store desired information, or suitable combinations thereof.

통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.The communication bus 18 interconnects various other components of the computing device 12, including a processor 14 and a computer readable storage medium 16.

컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.Computing device 12 may also include one or more I/O interfaces 22 and one or more network communication interfaces 26 that provide an interface for one or more I/O devices 24. The input/output interface 22 and the network communication interface 26 are connected to the communication bus 18. The input/output device 24 may be connected to other components of the computing device 12 through the input/output interface 22. Exemplary input/output devices 24 include pointing devices (such as a mouse or trackpad), keyboards, touch input devices (such as touch pads or touch screens), voice or sound input devices, various types of sensor devices, and/or imaging devices. Input devices and/or output devices such as display devices, printers, speakers and/or network cards. The exemplary input/output device 24 may be included inside the computing device 12 as a component constituting the computing device 12, and may be connected to the computing device 12 as a separate device distinct from the computing device 12. It might be.

이상의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.The above detailed description should not be construed as limiting in all respects, but should be considered illustrative. The scope of the invention should be determined by rational interpretation of the appended claims, and all changes within the equivalent scope of the invention are included in the scope of the invention.

100: 로봇 제어 장치
110: 동작 결정부
120: 동작 수행 여부 결정부
10: 컴퓨팅 환경
12: 컴퓨팅 장치
14: 프로세서
16: 컴퓨터 판독 가능 저장 매체
18: 통신 버스
20: 프로그램
22: 입출력 인터페이스
24: 입출력 장치
26: 네트워크 통신 인터페이스
100: robot control device
110: operation determining unit
120: determining whether to perform the operation
10: computing environment
12: computing device
14: processor
16: computer readable storage media
18: Communication bus
20: Program
22: I/O interface
24: I/O device
26: network communication interface

Claims (24)

사용자의 명령이 입력되거나 미리 설정된 이벤트가 발생된 경우, 상기 명령 또는 이벤트에 따라 로봇이 수행하여야 할 동작을 결정하는 동작 결정부; 및
상기 동작의 수행 여부에 대응되는 값에 기초하여, 상기 동작의 수행 여부를 결정하는 동작 수행 여부 결정부를 포함하고,
상기 동작 수행 여부 결정부는, 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값의 크기를 비교하여, 상기 동작의 수행 여부를 결정하는, 로봇 제어 장치.
When a user's command is input or a preset event occurs, an operation determining unit for determining an operation to be performed by the robot according to the command or event; And
Based on a value corresponding to whether or not to perform the operation, and includes an operation or not determining unit for determining whether or not to perform the operation,
The robot control apparatus determines whether to perform the operation by comparing the size of a value corresponding to the execution of the operation and a value corresponding to the non-performance of the operation.
청구항 1에 있어서,
상기 동작 결정부는, 상기 미리 설정된 이벤트가 발생된 경우, 미리 저장된 이벤트 별 로봇 동작 지침 정보에 기초하여 상기 로봇이 수행하여야 할 동작을 결정하는, 로봇 제어 장치.
The method according to claim 1,
The motion determining unit determines a motion to be performed by the robot based on the pre-stored robot motion instruction information for each event when the preset event occurs.
삭제delete 청구항 1에 있어서,
상기 동작 수행 여부 결정부는, 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값이 동일한 경우, 상기 동작을 수행하는 것으로 결정하는, 로봇 제어 장치.
The method according to claim 1,
The apparatus for determining whether to perform the operation, when the value corresponding to the execution of the operation and the value corresponding to the non-performance of the operation are the same, determines that the operation is to be performed.
청구항 1에 있어서,
상기 동작 수행 여부 결정부는, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 큰 경우 상기 동작을 수행하는 것으로 결정하고, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 작은 경우 상기 동작을 수행하지 않는 것으로 결정하는, 로봇 제어 장치.
The method according to claim 1,
The operation determining unit determines that the operation is performed when the value corresponding to the performance of the operation is greater than the value corresponding to the non-performance of the operation, and the value corresponding to the performance of the operation is the meaning of the operation. The robot control apparatus determines that the operation is not performed when the value is smaller than the value corresponding to the performance.
청구항 1에 있어서,
상기 동작 수행 여부 결정부는, 상기 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값의 합에 기초하여 상기 동작의 수행 여부에 대응되는 값을 계산하는, 로봇 제어 장치.
The method according to claim 1,
The apparatus for determining whether to perform the operation, calculates a value corresponding to whether or not to perform the operation based on a sum of values corresponding to each of one or more preset rules according to whether or not the operation is performed.
청구항 6에 있어서,
상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값은, 상기 하나 이상의 사용자에 대응되어 미리 저장된, 로봇 제어 장치.
The method according to claim 6,
The value corresponding to each of the preset one or more rules is stored in advance corresponding to the one or more users, the robot control device.
청구항 6에 있어서,
상기 동작 수행 여부 결정부는, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값 및 상기 미리 설정된 하나 이상의 규칙 각각에 대한 중요도에 대응되는 값에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산하는, 로봇 제어 장치.
The method according to claim 6,
The determining whether to perform the operation corresponds to each of the preset one or more rules based on a value corresponding to whether each of the preset one or more rules is satisfied and a value corresponding to the importance of each of the preset one or more rules. Robot control unit for calculating the value.
청구항 8에 있어서,
상기 동작 수행 여부 결정부는, 상기 동작의 수행 여부에 따른 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단하고, 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 결정하는, 로봇 제어 장치.
The method according to claim 8,
The operation determining unit determines whether each of the preset one or more rules is satisfied according to whether the operation is performed, and based on whether each of the preset one or more rules is satisfied, for each of the preset one or more rules. A robot control device for determining a value corresponding to whether or not it is satisfied.
청구항 9에 있어서,
상기 동작 수행 여부 결정부는, 미리 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단하는, 로봇 제어 장치.
The method according to claim 9,
The operation determining unit determines whether each of the preset one or more rules is satisfied by using a pre-trained prediction model.
청구항 10에 있어서,
상기 동작 수행 여부 결정부는, 상기 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 정도를 확률 값으로 출력하고, 상기 확률 값을 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값으로 결정하는, 로봇 제어 장치.
The method according to claim 10,
The operation determining unit outputs a degree of satisfaction of each of the preset one or more rules as a probability value using the learned prediction model, and corresponds to whether the probability value of each of the preset one or more rules is satisfied A robot control device, determined by value.
청구항 1에 있어서,
상기 동작 수행 여부 결정부는, 상기 동작의 수행 여부가 결정된 이후, 상기 결정된 동작의 수행 여부에 따라 상기 로봇을 제어하는, 로봇 제어 장치.
The method according to claim 1,
After determining whether or not to perform the operation, the robot control device controls the robot according to whether or not the determined operation is performed.
사용자의 명령이 입력되거나 미리 설정된 이벤트가 발생된 경우, 상기 명령 또는 이벤트에 따라 로봇이 수행하여야 할 동작을 결정하는 단계; 및
상기 동작의 수행 여부에 대응되는 값에 기초하여, 상기 동작의 수행 여부를 결정하는 단계를 포함하고,
상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값의 크기를 비교하여, 상기 동작의 수행 여부를 결정하는, 로봇 제어 방법.
Determining a motion to be performed by the robot according to the command or event when a user command is input or a preset event occurs; And
And determining whether to perform the operation, based on a value corresponding to whether the operation is performed,
In the determining whether to perform the operation, the robot control method determines whether to perform the operation by comparing the size of a value corresponding to the execution of the operation and a value corresponding to the non-performance of the operation.
청구항 13에 있어서,
상기 로봇이 수행하여야 할 동작을 결정하는 단계는, 상기 미리 설정된 이벤트가 발생된 경우, 미리 저장된 이벤트 별 로봇 동작 지침 정보에 기초하여 상기 로봇이 수행하여야 할 동작을 결정하는, 로봇 제어 방법.
The method according to claim 13,
The step of determining an operation to be performed by the robot determines, when the preset event occurs, determines an operation to be performed by the robot based on pre-stored robot operation instruction information for each event.
삭제delete 청구항 13에 있어서,
상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행에 대응되는 값과 상기 동작의 미수행에 대응되는 값이 동일한 경우, 상기 동작을 수행하는 것으로 결정하는, 로봇 제어 방법.
The method according to claim 13,
In the determining whether to perform the operation, when the value corresponding to the performance of the operation and the value corresponding to the non-performance of the operation are the same, the robot control method is determined to perform the operation.
청구항 13에 있어서,
상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 큰 경우 상기 동작을 수행하는 것으로 결정하고, 상기 동작의 수행에 대응되는 값이 상기 동작의 미수행에 대응되는 값보다 작은 경우 상기 동작을 수행하지 않는 것으로 결정하는, 로봇 제어 방법.
The method according to claim 13,
In the determining whether to perform the operation, when the value corresponding to the performance of the operation is greater than the value corresponding to the non-performance of the operation, it is determined to perform the operation, and the value corresponding to the performance of the operation is The robot control method determines that the operation is not performed when it is smaller than a value corresponding to the non-performance of the operation.
청구항 13에 있어서,
상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행 여부에 따른 미리 설정된 하나 이상의 규칙 각각에 대응되는 값의 합에 기초하여 상기 동작의 수행 여부에 대응되는 값을 계산하는, 로봇 제어 방법.
The method according to claim 13,
The determining whether to perform the operation may include calculating a value corresponding to whether the operation is performed based on a sum of values corresponding to each of one or more preset rules according to whether the operation is performed.
청구항 18에 있어서,
상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값은, 상기 하나 이상의 사용자에 대응되어 미리 저장된, 로봇 제어 방법.
The method according to claim 18,
The value corresponding to each of the preset one or more rules is stored in advance corresponding to the one or more users, the robot control method.
청구항 18에 있어서,
상기 동작의 수행 여부를 결정하는 단계는, 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값 및 상기 미리 설정된 하나 이상의 규칙 각각에 대한 중요도에 대응되는 값에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대응되는 값을 계산하는, 로봇 제어 방법.
The method according to claim 18,
The determining whether to perform the operation may include determining the one or more rules based on a value corresponding to whether each of the preset one or more rules is satisfied and a value corresponding to the importance of each of the preset one or more rules. A robot control method for calculating a value corresponding to each.
청구항 20에 있어서,
상기 동작의 수행 여부를 결정하는 단계는, 상기 동작의 수행 여부에 따른 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단하고, 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부에 기초하여 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값을 결정하는, 로봇 제어 방법.
The method according to claim 20,
The determining whether to perform the operation may include determining whether each of the preset one or more rules is satisfied according to whether the operation is performed, and determining whether the predetermined one or more rules are satisfied, and based on whether each of the preset one or more rules is satisfied. A robot control method for determining a value corresponding to whether each rule is satisfied.
청구항 21에 있어서,
상기 동작의 수행 여부를 결정하는 단계는, 미리 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 여부를 판단하는, 로봇 제어 방법.
The method according to claim 21,
In the determining whether to perform the operation, the robot control method determines whether each of the preset one or more rules is satisfied by using a pre-trained prediction model.
청구항 22에 있어서,
상기 동작의 수행 여부를 결정하는 단계는, 상기 학습된 예측 모델을 이용하여 상기 미리 설정된 하나 이상의 규칙 각각의 충족 정도를 확률 값으로 출력하고, 상기 확률 값을 상기 미리 설정된 하나 이상의 규칙 각각에 대한 충족 여부에 대응되는 값으로 결정하는, 로봇 제어 방법.
The method according to claim 22,
The determining whether to perform the operation may include outputting a degree of satisfaction of each of the preset one or more rules as a probability value using the learned prediction model, and satisfying the probability value for each of the preset one or more rules Robot control method to determine whether the value corresponding to whether.
청구항 13에 있어서,
상기 동작의 수행 여부가 결정된 이후, 상기 결정된 동작의 수행 여부에 따라 상기 로봇을 제어하는 단계를 더 포함하는, 로봇 제어 방법.
The method according to claim 13,
After determining whether to perform the operation, the robot control method further comprising the step of controlling the robot according to whether or not the determined operation.
KR1020180152641A 2018-11-30 2018-11-30 Module and method for controling robot KR102142582B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180152641A KR102142582B1 (en) 2018-11-30 2018-11-30 Module and method for controling robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180152641A KR102142582B1 (en) 2018-11-30 2018-11-30 Module and method for controling robot

Publications (2)

Publication Number Publication Date
KR20200071820A KR20200071820A (en) 2020-06-22
KR102142582B1 true KR102142582B1 (en) 2020-08-07

Family

ID=71142420

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180152641A KR102142582B1 (en) 2018-11-30 2018-11-30 Module and method for controling robot

Country Status (1)

Country Link
KR (1) KR102142582B1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101945185B1 (en) * 2012-01-12 2019-02-07 삼성전자주식회사 robot and method to recognize and handle exceptional situations
KR101915966B1 (en) * 2016-11-24 2018-11-07 동아대학교 산학협력단 Module for moral decision making, robot comprising the same, and method for moral decision making

Also Published As

Publication number Publication date
KR20200071820A (en) 2020-06-22

Similar Documents

Publication Publication Date Title
US11164134B2 (en) Systems and methods for improving process safety in an industrial environment
Mirahadi et al. EvacuSafe: A real-time model for building evacuation based on Dijkstra's algorithm
US11955247B2 (en) Mobile automation control of disease spread
US9633538B1 (en) System and method for wearable indication of personal risk within a workplace
US10832477B2 (en) Modifying virtual reality boundaries based on usage
US20220067547A1 (en) Smart environment mitigation of identified risk
US20170206775A1 (en) Informing first responders based on incident detection, and automatic reporting of individual location and equipment state
Mirahadi et al. EvacuSafe: building evacuation strategy selection using route risk index
Izadi Moud et al. Quantitative assessment of proximity risks associated with unmanned aerial vehicles in construction
US20200380435A1 (en) System and method to characterize risk of occupational health hazards and implement control measures to protect workers, with real time evaluations of environmental conditions and exposure concentrations
KR102142582B1 (en) Module and method for controling robot
Tsai et al. Routing algorithms as tools for integrating social distancing with emergency evacuation
Gracanin et al. Biologically inspired safety and security for smart built environments: Position paper
CN113273930A (en) Floor sweeping robot integrating intelligent rescue function and control method thereof
US20220270464A1 (en) Healthy indoor environment and air quality monitoring system and method for accessing and sharing information, publicly
US11443139B2 (en) Contextual safety assessment, recommendations, provisioning and monitoring
CN114964247A (en) Crowd sensing navigation method and system based on high-order graph convolution neural network
Lim et al. Applying multi-agent system in a context aware smart home
JP4182892B2 (en) Behavior simulation system
US20140067352A1 (en) Presenting attributes of interest in a physical system using process maps based modeling
Couceiro et al. Fostering human–robot cooperative architectures for search and rescue missions in urban fires
US20180364655A1 (en) Stable training region with online invariant learning
US10762460B2 (en) Predictive alerts for individual risk of injury with ameliorative actions
Fakhrurroja et al. Dialogue System based on Reinforcement Learning in Smart Home Application
Mirahadi EvacuSafe: A Smart Evacuation Management System for Buildings

Legal Events

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