KR101454151B1 - 작업 기술을 학습하는 방법 및 이에 따른 로봇 - Google Patents

작업 기술을 학습하는 방법 및 이에 따른 로봇 Download PDF

Info

Publication number
KR101454151B1
KR101454151B1 KR1020110070816A KR20110070816A KR101454151B1 KR 101454151 B1 KR101454151 B1 KR 101454151B1 KR 1020110070816 A KR1020110070816 A KR 1020110070816A KR 20110070816 A KR20110070816 A KR 20110070816A KR 101454151 B1 KR101454151 B1 KR 101454151B1
Authority
KR
South Korea
Prior art keywords
learning
information
task description
raw information
learning engine
Prior art date
Application number
KR1020110070816A
Other languages
English (en)
Other versions
KR20130010182A (ko
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 KR1020110070816A priority Critical patent/KR101454151B1/ko
Publication of KR20130010182A publication Critical patent/KR20130010182A/ko
Application granted granted Critical
Publication of KR101454151B1 publication Critical patent/KR101454151B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Abstract

본 발명은 작업 기술을 학습하는 방법 및 이에 따른 로봇에 관한 것으로, 본 발명에 따른 작업 기술을 학습하는 방법은, 학습 엔진에 의해 제어 가능한 메소드(method) 및 메소드에 따라 주위 환경으로부터 감지된 미가공 정보(raw data)를 입력받고, 계층적으로 연결된 복수 개의 분류 체계를 이용하여 메소드 및 미가공 정보로부터 복수 개의 동작 패턴들을 추출하며, 추출된 동작 패턴들 간의 연관 관계에 따라 작업 기술 그룹을 생성한다.

Description

작업 기술을 학습하는 방법 및 이에 따른 로봇{Method for learning task skill and robot using thereof}
본 발명은 작업 기술 학습에 관한 것으로, 특히 인간이 행동하는 작업 기술을 로봇과 같은 인공물이 스스로 학습하여 해당 작업을 인공물이 단독으로 수행할 수 있도록 작업 기술을 학습하는 방법, 그 방법을 기록한 기록매체 및 그 방법을 이용한 로봇에 관한 것이다.
인공 지능(artificial intelligence, AI)이라 함은, 인간의 지능으로 할 수 있는 사고, 학습, 자기계발 등을 컴퓨터가 할 수 있도록 하는 방법을 연구하는 컴퓨터 공학 및 정보기술의 한 분야로서, 컴퓨터가 인간의 지능적인 행동을 모방할 수 있도록 하는 기술을 말한다. 이러한 인공지능은 그 자체로 존재하는 것이 아니라, 컴퓨터 과학의 다른 분야와 직간접으로 많은 관련을 맺고 있다. 특히, 현대에는 정보 기술의 여러 분야에서 인공지능적 요소를 도입하여 그 분야의 문제 풀이에 활용하려는 시도가 매우 활발하게 이루어지고 있다.
이상과 같이 인간의 행동을 모방하려는 시도는 학습 로봇이라는 기술 분야의 발전을 가져왔다. 종래의 로봇 공학에서 산업용 로봇 등이 단지 잘 설계된 일련의 명령어 집합을 입력받아 이에 해당하는 명령만을 기계적으로 수행하였던 것에 반해, 현대의 학습 로봇은 주위 환경으로부터 다양한 환경 요소들을 로봇 스스로가 감지하고, 이로부터 인간에게 유용한 다양한 작업 기술(task skill)을 학습할 수 있는 수준을 지향하고 있다. 이러한 학습 로봇(비록 로봇이라고 표현하였으나, 하드웨어 로봇 이외에 가상 공간에서 활용될 수 있는 소프트웨어로 구현된 가상 생명체 내지 인공물을 포함할 수 있다.)에 있어서, 학습(learning)의 목표는 경험을 통한 일반화에 의해 인공지능 추론 시스템의 잠재적 성능을 향상시키는 것에 있다. 즉, 학습 알고리즘에 입력되는 것은 실험(experiment)이 될 것이고, 그 결과에 따라 지식 베이스(knowledge base)에 대한 수정들이 그 학습 알고리즘에서 출력될 것이다.
이러한 지식 베이스에 저장되는 지식 표현(knowledge representation)은 지식의 추출 및 저장을 표현하는 역할을 한다. 이 개념은 지식, 특징 추출 및 열거(enumeration), 객체 상태의 구성 및 정의들을 일반화하는 기술을 제공하기도 한다. 그 자체를 구현하기 위해서는 일반적으로 그래프, 벡터 및 테이블 등의 공지된 데이터 구조를 활용할 수 있다.
나아가, 학습 로봇이 주위로부터 수집한 정보를 가공하여 새로운 지식을 생성, 저장하기 위해서는 인간의 사고 패턴과 유사한 추론(reasoning)이 요구된다. 학습 로봇에서 자동화된 추론은 지식 표현 및 인지를 이용하는 알고리즘을 결합하여 새로운 결론을 이끌어내고, 질문 및 답변을 추측해 내며, 수행하고자 하는 목표를 달성하게 된다. 인공 지능 추론의 예로는 다음과 같은 개념적 프레임워크들이 있다. 즉, 규칙 베이스(rule base)(추론을 위한 인지된 상태 및 지식 베이스에 대하여 시스템 규칙들이 평가된다.), 검색 시스템(이용 가능한 지식 및 목표에 따라 지식 결론의 검색을 위해 주지의 데이터 구조를 이용한다. 예를 들어, 결정 트리, 상태 그래프, 미니맥스 결정(minimax decision) 등이 활용될 수 있다.) 및 분류기(classifier)(분류기 추론 시스템의 목적은 분류 태그(classification tag)가 없는 실험으로서 표현되는 인지 상태(perceived state)를 분류하기 위한 것이다.) 등이 있다. 미리 분류된(pre-classified) 지식베이스에 따라 분류기는 새로운 실험의 분류를 추측해낼 수 있다.
그런데 현재까지 연구자들이 제안하고 있는 이러한 작업 기술 학습 방법은 여전히 일단 학습된 작업 기술을 재사용하거나, 향상시키는데 제약이 존재한다. 특히, 종래의 작업 기술 학습 방법은 이하의 비특허문헌에서도 제시하고 있는 인간의 진화 단계에 따른 지능 및 인지 능력의 발전 단계를 충실하게 반영하고 있지 못하고, 그로 인해 인간 수준의 작업 기술 학습 지능을 구현하는 데에는 어려움이 존재하였다.
Joshua B. Tenenbaum, How to Grow a Mind: Statistics, Structure, and Abstraction. Science 331, 1279, 2011.
본 발명이 해결하고자 하는 기술적 과제는 종래의 작업 기술을 학습하는 방법에서 입력 데이터가 한정되고, 이에 따라 학습된 작업 기술을 재사용하는 것이 제한되는 한계를 극복하고, 학습 로봇 스스로가 이미 학습된 작업 기술을 향상시키고 추가할 수 없을 뿐만 아니라, 주위 환경 내에 복수 개의 작업 객체가 존재하는 경우 수행하여야 하는 작업을 정확하게 인식하지 못하는 문제점을 해소하고자 한다.
상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 작업 기술을 학습하는 방법은, 적어도 하나 이상의 프로세서(processor)를 구비한 학습 엔진(learning engine)에 의해 제어 가능한 메소드(method) 및 상기 메소드에 따라 주위 환경으로부터 감지된 미가공 정보(raw data)를 입력받는 단계; 계층적으로 연결된 복수 개의 분류 체계를 이용하여 상기 입력된 메소드 및 미가공 정보로부터 복수 개의 동작 패턴들을 추출하는 단계; 및 상기 추출된 동작 패턴들 간의 연관 관계에 따라 작업 기술 그룹을 생성하는 단계를 포함한다.
상기된 작업 기술을 학습하는 방법에서 상기 복수 개의 동작 패턴들을 추출하는 단계는, 미리 저장된 복수 개의 분류 체계 중 어느 하나에 따른 하위 계층 분류기를 이용하여 상기 입력된 메소드 및 미가공 정보로부터 동작 패턴을 추출하는 단계; 및 상기 분류 체계 내의 계층적 연결 관계에 따라 상기 하위 계층 분류기에 연결된 상위 계층 분류기를 이용하여 상기 추출된 동작 패턴으로부터 또 다른 동작 패턴을 추출하는 과정을 소정 회수만큼 반복하는 단계를 포함한다.
또한, 상기된 작업 기술을 학습하는 방법은, 상기 입력된 미가공 정보 중, 현재의 작업 기술과 연관된 정보만을 실시간으로 필터링(filtering)하는 단계를 더 포함한다.
나아가, 이하에서는 상기 기재된 작업 기술을 학습하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
한편, 상기 기술적 과제를 해결하기 위하여, 본 발명의 다른 실시예에 따른 작업 기술을 학습하는 로봇은, 미리 정의된 메소드에 따라 주위 환경을 감지하는 적어도 하나 이상의 센서; 적어도 하나 이상의 프로세서를 구비하고, 상기 메소드를 제어하여 상기 센서로부터 미가공 정보를 입력받고, 계층적으로 연결된 복수 개의 분류 체계를 이용하여 상기 메소드 및 상기 입력된 미가공 정보로부터 복수 개의 동작 패턴들을 추출하며, 상기 추출된 동작 패턴들 간의 연관 관계에 따라 작업 기술 그룹을 생성하는 학습 엔진; 및 상기 학습 엔진이 생성한 작업 기술 그룹을 참조하여 상기 센서를 통해 감지된 미가공 정보에 대응하는 작업 기술을 수행하는 구동부를 포함한다.
또한, 상기된 작업 기술을 학습하는 로봇에서 상기 학습 엔진은, 상기 입력된 미가공 정보 중, 현재의 작업 기술과 연관된 정보만을 실시간으로 필터링한다.
본 발명의 실시예들은 계층적으로 연결된 복수 개의 분류 체계를 이용하여 미가공 정보로부터 복수 개의 작업 기술을 추출하고 조직화함으로써 이미 학습된 작업 기술을 재사용할 수 있고, 학습 로봇 스스로가 이미 학습된 작업 기술을 향상시키고 추가할 수 있을 뿐만 아니라, 주위 환경 내에 복수 개의 작업 객체가 존재하는 경우에도 이미 학습된 작업 기술 그룹을 참조하여 현재의 작업 기술과 연관된 정보만을 실시간으로 필터링함으로써 수행하여야 하는 작업을 정확하게 인식할 수 있다.
도 1은 본 발명이 실시예들이 채택하고 있는 작업 기술 학습 엔진의 구조를 계층화하여 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 학습 엔진이 작업 기술을 학습하는 방법을 도시한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 도 2의 학습 방법에서 복수 개의 동작 방법을 추출하는 과정을 보다 구체적으로 도시한 흐름도이다.
도 4는 본 발명의 다른 실시예에 따른 학습 엔진이 작업 기술을 학습하는 방법을 도시한 흐름도로서, 주위 환경 내에 복수 개의 작업 객체가 존재하는 상황 하에서 수행하여야 하는 작업을 정확하게 인식하는 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 또 다른 실시예에 따른 작업 기술을 학습하는 로봇을 도시한 블록도이다.
도 6은 본 발명의 또 다른 실시예에 따른 도 5의 학습 로봇의 전체 시스템 구성도를 예시한 도면이다.
본 발명의 실시예들을 설명하기에 앞서 본 발명의 실시예들이 구현되는 환경에 대해 간략히 소개하고, 실시예들이 구현되는 환경에서 발생하고 있는 구현상의 문제점을 제시하고자 한다.
작업 기술 학습 분야에서 발견되는 종래의 연구들을 검토할 때, 이들 연구들은 작업 기술 학습을 위한 입력 데이터에 있어서 '조인트', '위치', '속도 정보' 등으로 한정되어 있고, 학습된 작업 기술을 재사용하는 것이 어렵다는 점이 한계로 지적되었다. 또한, 학습 로봇 스스로가 작업 기술을 향상시키고, 추가하는 능력이 부족하다. 예를 들어, 확률 모델(GMM, GMR 등)이나 DMP(dynammic movement primitives)와 같은 학습 모델에서 대상 데이터의 수는 1 개 내지 10 개 정도의 적은 수의 값이고, 이에 따라 학습 가능한 작업 기술 역시 1 개 내지 2 개에 지나지 않는다.
나아가, 학습 지능 아키텍처 분야에서 발견되는 연구들의 한계점과 관련하여, 계층적 베이시안 모델(Hierarchical Bayesian Models, HBMs)의 경우에는 심볼 수준(symbolic level)에서는 적용이 가능하지만, 하위 수준(low level) 데이터에 적용하는 데에는 검증되지 않았다는 점이 문제점으로 지적된다. 또한, Deep Belief Networks(DBNs)의 경우에는 복잡한 실제 이미지(real image)를 적용하여 학습에 수행한 예가 거의 없고, 하위 수준 특징(low level feature)의 차원(dimension)이 클 경우 학습이 어려우며, 학습 시 피드백 상호작용(feedback interaction)이 없다는 점이 문제점으로 지적된다.
한편, 인식 분야에서 발견되는 연구들의 한계점은 HMAX나 계층적 공간 메모리(Hierarchical Temporal Memory, HTM)의 경우에는 배경이 복잡하거나 복수의 물체가 존재할 경우 인식이 힘들다는 점이 문제점으로 지적되었다. 앞서 설명한 바와 같이 주위 환경으로부터 다수의 입력이 존재하는 경우, HTM에 따른 학습 방법에서는 현재 학습하여야 하는 대상을 정확하게 인식하지 못하는 문제점이 존재하는데, 이는 이미 학습된 작업 기술들을 실시간으로 활용하지 못하며, 이러한 작업 기술들을 참조하여 다수의 입력 중에서 불필요한 입력을 배제할 수 있는 지능이 없기 때문이다.
따라서, 이하에서 제시될 본 발명의 실시예들은 인간의 학습 기작을 모방하여 인공물(예를 들어, 가상 공간에서의 아바타 또는 로봇이 될 수 있다.) 스스로가 진화할 수 있는 학습 지능 아키텍처를 제안하고, 이를 기반으로 하여 인간과 인공물간의 작업 기술을 스스로 학습하고 사용할 수 있는 작업 기술 학습(task skill learning)에 관한 기술적 수단을 구비한다. 이를 위해, 본 발명의 실시예들은 기술 학습 엔진(Skill Learning Engine), 인식 엔진(Recognition Engine) 및 이들로부터 수집된 정보에 기초하여 자가 학습이 가능한 계층적 구조의 작업 기술 학습 엔진(Task Skill Learning Engine)을 포함할 수 있다.
특히, 작업 기술 학습 엔진은 생체를 모방하여 진화하는 학습 지능 아키텍처로써 생명체의 진화 단계를 높은 수준에서 낮은 수준까지 4 단계(Gregorian, Popperian, Skinnerian, Darwinian, 이하 GPSD로 약술하도록 한다.)로 구분하고, 각 진화 단계마다 적절한 학습 수준을 정의하였다. 또한, 각 단계의 학습 지능이 다른 단계의 학습 지능과 어떠한 연결 관계를 갖는지에 대해서 정의함으로써 이를 기술적 수단에 대응시켜 구현할 수 있도록 하였다. 이러한 GPSD 학습 엔진(계층적 구조의 작업 기술 학습 엔진을 의미한다.)은 가공되지 않고, 분류되지 않은 원시 데이터(unfiltered pattern)로부터 작업 기술에 필요한 기술의 개념 계층(concept hierarchy)을 학습하기 위한 하나의 수단으로써, 본 발명의 실시예들은 이러한 학습 엔진에 기반하여 각각 기술 학습 엔진과 인식 엔진을 결합하여 제어하게 된다.
한편, 인식 엔진은 인간의 대뇌신피질의 인지 구조를 모방한 인식 장치로써, 작업 기술을 학습하기 위해 주위 환경 및 작업 객체를 인식할 수 있는 기술적 수단을 제공한다. 또한, 기술 학습 엔진은 기술의 학습 및 재조합(recombination), 자기 수용 센서(proprioceptive sensor) 및 외부 수용 센서(exteroceptive sensor)의 효율적인 센서 융합 학습 기술을 포함한다.
나아가, 본 발명의 실시예들은 인간 수준의 작업 기술을 학습하기 위해 주위 환경에 존재하는 수 많은 감지 정보 중에서 인공물 스스로가 작업 기술 학습에 필요한 정보에만 집중할 수 있는 기능이 필요하다. 왜냐하면, 주위 환경에 존재하는 다수의 감지 정보 그대로를 수용하고 분석할 경우, 현재 인공물이 수행하여야 하는 작업 기술이 무엇인지, 현재 어떠한 동작이 요구되는지 등을 정확히 인지할 수 없기 때문이다. 따라서, 이러한 다수의 감지 정보를 적절히 필터링하여 이들 정보 중, 현재의 작업 기술에 직접적으로 연관되는 정보 및 이러한 정보를 감지하는 센서에 집중(attention)할 필요가 있다.
이하에서는 도면을 참조하여 이상에서 소개한 본 발명의 아이디어를 실체화할 수 있는 본 발명의 실시예들을 보다 구체적으로 설명한다.
도 1은 본 발명이 실시예들이 채택하고 있는 작업 기술 학습 엔진의 구조를 계층화하여 도시한 도면으로서, 특히 계층적 구조를 갖는 GPSD 학습 엔진을 예시하였다. 앞서 소개한 바와 같이 GPSD는 Gregorian, Popperian, Skinnerian 및 Darwinian을 의미한다. 이러한 GPSD는 통상적으로 진화의 관점에서 생명체를 분류하는 학술적 개념이나, 본 발명의 실시예들은 이러한 생명체의 진화 과정으로부터 인간의 인지 구조를 모방하여 학습 엔진으로서 구현하는 기술적 수단을 제안하는 바이다. 이하에서는 각각의 단계들을 하위 계층에서 상위 계층의 순서로 차례로 설명한다.
첫째, Darwinian은 일반적으로 생명체의 진화 단계 중 가장 낮은 단계로서, 곤충 수준 정도의 간단한 생명체가 이 단계에 해당한다. Darwinian 수준의 개체는 생존 기간 중의 학습 능력은 없지만, 종의 학습 능력은 있기 때문에 생존을 하기 적합한 형태로 종의 외형이 진화한다.
둘째, Skinnerian 단계의 생명체는 개나 고양이와 같이 생존 기간 중 간단한 학습 능력을 가진 생명체에 해당한다. Skinnerian 단계의 학습 능력은 각 개체의 센서를 통해 얻은 미가공 패턴(unfiltered pattern)을 필터링(filtering)하여 각 개체가 이해할 수 있는 패턴(pattern)으로 바꾸는 능력을 갖는다. 예를 들어, 개는 눈을 통해 감지한 정보를 이용하여 주인과 주인이 아닌 사람을 구별할 수 있다. 이와 같은 능력은 개의 생존 기간 초기에 학습된다. 즉, Skinnerian 단계의 생명체는 감지 수단을 통해 입력된 원시 데이터로부터 간단한 패턴을 추출하여 처리할 수 있는 수준의 학습 지능을 갖는다.
셋째, Popperian 단계의 생명체는 원숭이와 같이 단순히 패턴을 분류하는 능력 뿐만 아니라, 패턴들을 통해 이들 패턴들을 정의하는 메타-패턴(meta-pattern)을 학습하는 능력을 가진다. 예를 들어, 원숭이가 막대기를 이용해 높은 나무에 달린 열매를 따는 방법을 배우게 되었다고 가정하자. 비록, 이 원숭이가 야구 방망이를 이용해 높은 나무에 달린 열매를 따는 방법을 직접 학습하지는 않았더라도, 메타-패턴의 레벨에서는 막대기와 야구 방망이가 열매를 따기 위한 유사한 물체라는 것을 판단할 수 있다. 즉, Popperian 단계의 생명체는 개별적인 하위 레벨의 개체들로부터 상위 레벨의 개념을 도출할 수 있다.
넷째, Gregorian 단계의 대표적인 생명체는 인간이다. 인간은 메타-패턴을 학습하는 능력 뿐만 아니라, 언어를 사용하고 심볼 간의 연관 관계를 다양한 형태로 확장, 변형하여 기억할 수 있다. 따라서, Gregorian 단계의 생명체는 메타-패턴 또는 단일 패턴의 정보들로부터 상호 연관 관계를 추출하고, 이들 정보들을 구조화하여 새로운 연관 관계와 규칙을 생성할 수 있다.
이상과 같은 GPSD에 대한 개념에 근거하여 본 발명의 실시예들은 GPSD 학습 엔진을 설계하였다.
GPSD 학습 엔진 있어서 Darwinian 수준에서의 실제적 학습은 존재하지 않는다. 다만 각 인공물의 하드웨어 또는 소프트웨어의 명세(specification)이 Darwinian의 학습된 결과로 간주될 수 있다. 이러한 하드웨어 또는 소프트웨어의 명세는 학습 엔진이 제어 가능한 하드웨어 장치 또는 소프트웨어의 수행 모듈(module)을 의미하며, 이하에서는 이러한 명세를 메소드(method)라는 용어로서 명명하도록 한다. 즉, 학습 엔진은 미리 구현된 하드웨어 또는 소프트웨어를 통해 제어 가능한 수준이 정의되었으므로, 약속된 규칙에 따라 이러한 메소드들을 제어할 수 있게 된다. 예를 들어, 하드웨어 장치를 제어하기 위해서는 미리 설치된 하드웨어 드라이버를 통해 제어 명령을 전달할 수 있고, 소프트웨어 모듈을 제어하기 위해서는 미리 약속된 함수 또는 파라메터를 호출할 수 있을 것이다. 필요에 따라서는 이러한 제어를 위해 별도의 통신 인터페이스가 활용될 수도 있을 것이다.
Skinnerian 단계의 능력인 미가공 패턴(unfiltered pattern)에서 의미있는 정보에 해당하는 패턴을 찾아내기 위해서는 도 1에 예시된 바와 같이 다양한 분류(classification) 방법들이 활용될 수 있다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 이러한 분류를 위해 SVM, 신경망(Neural Network), HMM, 클러스터링(clustering, k-means) 방법 등이 활용될 수 있음을 알 수 있다. 그러나, 이러한 종래의 분류기들은 다양하고 복잡한 상황에서 패턴을 분류하는데 효과적으로 사용되고 있지 못한다. 따라서, 본 발명의 실시예들은 이러한 문제를 해결하기 위해 도 1에 제시된 바와 같은 계층적 순환적 모델(Hierarchical Recurrent Model)을 제안하는 바이다.
이러한 계층적 순환적 모델은 분류나 클러스터링 과정을 한번에 수행하는 것이 아니라, 복수 개의 분류기를 계층적으로 연결하여 하나의 분류기를 통해 생성된 결과가 그 다음 분류기의 입력으로 할당되는 계층적 연결 구조를 채택한다. 또한, 본 발명의 실시예들이 채택하고 있는 계층적 순환적 모델은 상위 분류기의 결과가 다시 하위 분류기의 분류 과정을 지원하는 피트백 연결 구조를 형성한다. 즉, 순환적 구조를 가질 수 있다. 이러한 계층적 순환적 모델을 통해 단일 분류기에 의한 학습이 아닌 다양한 분류기를 종합적으로 활용함으로써 미가공 패턴으로부터 보다 정교하고 다양한 면(aspect)을 갖는 유의미한 패턴을 추출하는 것이 가능하다.
Popperian 단계에서는 앞서 소개한 바와 같이 메타-패턴(meta-pattern)을 학습한다. 이를 위해 본 발명의 실시예들은 도 1에 도시된 같이 Skinnerian 단계에서 인식된 패턴들의 관계가 트리 형태(tree type)인지 또는 체인 형태(chain type)인지 등의 데이터 구조를 판단한다. 즉, Popperian 단계에서는 판별된 데이터 구조를 활용하여 발견된 패턴들 간의 상호 관련성에 대한 기초 정보를 제공한다.
이러한 데이터 구조에 관한 정보는 Gregorian 단계에서 개념 학습(concept learning)을 위한 중요한 정보로 사용된다. 즉, Gregorian 단계에서는 개념 학습을 통해 최초의 Darwinian 단계의 센서로부터 얻어진 미가공 패턴들로부터 관계를 발견하고, 이러한 관계들을 조직화하고 구조화하여 지식(knowledge)을 생성한다.
예를 들어, 작업 기술 학습의 경우 숙련된 요리사의 요리 과정을 통해 요리 기술들을 학습한 인공물은 본 발명의 실시예들이 제안하는 GPSD 학습 엔진을 통해 인공물 각각이 가지는 센서의 비가공 정보로부터 요리에 필요한 다양한 개념(concept) 간의 관계를 학습하게 된다. 즉, 종래의 학습 방법이 단지 요리사의 요리 과정 그 자체만을 학습하여 모방할 수 있었는데 반해, 본 발명의 실시예들이 제안하는 GPSD 학습 엔진은 작업 객체에 대한 정의, 범주화, 사용 가능한 작업 기술에 대한 학습 지능을 스스로 생성할 수 있다는 점에서 매우 큰 차이점을 갖는다. 따라서, GPSD 학습 엔진은 기호에 대한 기초적인 정의 및 분류가 존재하지 않는 상황에서 작업 객체에 대한 실질적인 대응이 어려운 심볼 그라운딩(symbol grounding) 문제를 해결하기 위한 하나의 기술적 수단을 제공한다.
도 2는 본 발명의 일 실시예에 따른 학습 엔진(learning engine)이 작업 기술을 학습하는 방법을 도시한 흐름도로서, 다음과 같은 단계들을 포함한다.
210 단계에서 학습 엔진은 학습 엔진에 의해 제어 가능한 메소드(method) 및 상기 메소드에 따라 주위 환경으로부터 감지된 미가공 정보(raw data, unfiltered pattern)를 입력받는다. 이 때, 학습 엔진은 앞서 소개한 GPSD 학습 엔진을 의미하는 것으로, 이러한 학습 엔진은 적어도 하나 이상의 프로세서(processor)를 구비함으로써 작업 기술을 학습하기 위한 일련의 연산을 수행한다. 한편, 메소드는 앞서 도 1을 통해 소개한 바와 같이 학습 엔진이 사용 가능한 하드웨어 또는 소프트웨어를 제어할 수 있는 기술적 수단을 의미한다.
220 단계에서 학습 엔진은 계층적으로 연결된 복수 개의 분류 체계를 이용하여 210 단계를 통해 입력된 메소드 및 미가공 정보로부터 복수 개의 동작 패턴들을 추출한다. 이러한 분류 체계를 형성하기 위해서 미가공 정보들을 분류하는 다양한 분류기들이 활용될 수 있으며, 이러한 분류기들은 계층적 구조로 연결되고, 상호 작용한다. 또한, 이러한 분류 체계를 통해 생성된 결과(동작 패턴)가 재차 분류 체계의 입력값으로 주어질 수 있음을 앞서 설명한 바 있다. 특히, 이러한 반복적 피드백 구조는 학습 엔진을 활용하고자 하는 해당 영역(domain)의 의미있는 개념들을 충실히 반영할 수 있도록 전문가 집단(expert group)에 의해 조직화될 수 있으며, 반복적인 학습을 통해 정제될 수 있다. 동작 패턴을 추출하는 보다 구체적인 과정은 이후 도 3을 통해 다시 설명한다.
230 단계에서 학습 엔진은 220 단계를 통해 추출된 동작 패턴들 간의 연관 관계에 따라 작업 기술 그룹을 생성한다. 여기서, 작업 기술 그룹은 시간적 순서 및 공간적 배치에 따라 분류된 단위 동작을 하나 또는 둘 이상 조합하여 저장할 수 있다. 예를 들어, 요리사가 양파를 잘게 다지는 과정은, 양파를 도마 위에 가져오고, 양파의 일측 면으로부터 반대측 면으로 칼을 조금씩 이동시키면서 써는 동작을 반복해야만 한다. 따라서, 양파를 집는 동작, 양파를 도마 위에 위치시키는 동작, 칼로 써는 동작 등은 모두 하나의 단위 동작을 이룬다. 작업 기술과 관련하여 하나의 작업 기술이 하나의 단위 동작만으로 구성될 수도 있으나, 통상적인 경우 2 개 이상의 단위 동작들이 조합되어 시간적 순서에 따라, 또한 공간적 배치에 따라 연속된 동작을 수행함으로써 목표를 달성할 수 있다. 또한, 동일한 단위 동작들을 조합하더라도 그 순서에 따라서 작업 기술은 전혀 달라질 수 있을 것이다. 따라서, 230 단계의 연관 관계에 따라 본 실시예의 학습 엔진은 주어진 상황에 적합한 작업 기술을 생성할 수 있게 된다.
도 3은 본 발명의 일 실시예에 따른 도 2의 학습 방법에서 복수 개의 동작 방법을 추출하는 과정을 보다 구체적으로 도시한 흐름도로서, 여기서는 중복을 피하기 위해 도 2와 차별화되는 미가공 정보를 입력받는 단계(210 단계) 및 작업 기술 그룹을 생성하는 단계(230 단계)에 대해서는 그 설명을 생략한다. 210 단계를 통해 입력된 메소드 및 미가공 정보로부터 복수 개의 동작 패턴들을 추출하는 단계는 다음과 같다.
221 단계에서 학습 엔진은 미리 저장된 복수 개의 분류 체계 중 어느 하나에 따른 하위 계층 분류기를 이용하여 210 단계를 통해 입력된 메소드 및 미가공 정보로부터 동작 패턴을 추출한다.
222 단계에서 학습 엔진은 분류 체계 내의 계층적 연결 관계에 따라 하위 계층 분류기에 연결된 상위 계층 분류기를 이용하여 221 단계를 통해 추출된 동작 패턴으로부터 또 다른 동작 패턴을 추출하는 과정을 일정 회수만큼 반복한다. 이 때, 일정 회수는 본 발명이 속하는 기술 분야에서 통상의 지식 가진 자에 의해 달라질 수 있는 것으로, 학습 엔진이 구현되는 환경에 따라 적절하게 설정될 수 있다.
나아가, 상기된 복수 개의 동작 패턴들을 추출하는 단계는 학습 기술의 품질을 향상시키기 위해 필요에 따라 선택적으로 순환적 피드백(recurrent feedback) 사이클을 형성할 수 있다. 즉, 223 단계에서 학습 엔진은 상위 계층 분류기를 통해 추출된 동작 패턴을 복수 개의 분류 체계 중 어느 하나에 따른 하위 계층 분류기의 입력값으로 순환적 피드백할 수 있다.
이러한 과정을 통해 학습 로봇은 학습 엔진을 활용하고자 하는 해당 영역(domain)의 의미있는 개념들(패턴을 의미한다.)을 다각도에서 추출할 수 있게 되고, 이후 230 단계의 작업 기술 그룹의 생성을 통해 조직화할 수 있다.
도 4는 본 발명의 다른 실시예에 따른 학습 엔진이 작업 기술을 학습하는 방법을 도시한 흐름도로서, 주위 환경 내에 복수 개의 작업 객체가 존재하는 상황 하에서 수행하여야 하는 작업을 정확하게 인식하는 방법을 설명하기 위한 도면이다. 앞서 간단하게 설명한 바와 같이 주위 환경에 다수의 감지 대상이 존재하는 경우, 학습 엔진은 이러한 다수의 감지 객체의 이질적인 성질로 인해 상황 인식이 어려울 뿐만 아니라, 이로 인해 현재 수행하여야 하는 작업 기술이 무엇인지 여부를 정확하게 판단할 수 없다. 따라서, 도 4에서는 이러한 환경 하에서 주된 작업 기술과는 무관한 입력 정보를 필터링을 통해 배제함으로써, 보다 정확한 상황 인식 및 작업 기술 수행을 달성할 수 있는 기술적 수단을 제안한다.
이를 위해 도 4에 제시된 본 발명의 실시예는 앞서 도 2를 통해 제시된 실시예의 각각의 구성 이외에 입력된 미가공 정보 중에서 현재의 작업 기술과 연관된 정보만을 실시간으로 필터링(filtering)하는 단계를 더 포함한다. 보다 구체적으로, 현재의 작업 기술과 연관된 정보만을 필터링하는 과정은 다음의 단계들을 포함한다.
213 단계에서 학습 엔진은 210 단계를 통해 미가공 정보를 입력받는 중, 입력되는 미가공 정보 및 이미 생성된 작업 기술 그룹을 참조하여 현재의 작업 기술을 실시간으로 판단한다. 또한, 학습 엔진은 이러한 판단 결과에 따라, 210 단계를 통해 입력되는 미가공 정보에 대해 판단된 현재의 작업 기술과의 연관도를 산출한다.
215 단계에서 학습 엔진은 213 단계를 통해 산출된 연관도가 특정 임계치(threashold) 이상인지 여부를 검사한다. 이 때, 임계치란 연관도가 일정 수준 이하인 경우 해당 정보는 현재의 작업 기술과 무관한 정보로서 결정하기 위해 설정된 일종의 기준값이다. 따라서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 실시예가 구현되는 환경 하에서 실험을 통해 이러한 임계치를 적절한 값으로 설정할 수 있다. 이제 215 단계를 통한 판단 결과, 산출된 연관도가 임계치보다 작은 경우에는 217 단계로 진행한다.
217 단계에서 학습 엔진은 동작 패턴들을 추출하는 220 단계 이전에 210 단계를 통해 입력된 미가공 정보 중에서 213 단계를 통해 산출된 연관도가 낮은 정보를 삭제한다. 즉, 이러한 217 단계를 통해 현재의 학습 기술과 관련이 없다고 판단된 입력 정보를 배제함으로써 학습 엔진으로 하여금 상대적으로 적은 수의 입력 정보에 집중할 수 있도록 하는 효과를 나타낸다.
이러한 213 단계 내지 217 단계의 일련의 연산 과정은 210 단계의 정보 입력 직후에, 또한 동작 패턴들을 추출하는 220 단계의 이전에 실시간으로 수행됨으로써 학습 로봇의 인식 성능을 향상시키고, 처리해야 할 데이터의 양과 수를 감소시킴으로써 효율적인 자원 운용을 가능하게 한다.
반면, 산출된 연관도가 임계치 이상인 경우에는 곧바로 220 단계로 진행한다. 220 단계 및 230 단계는 앞서 도 2를 통해 설명한 바와 동일하므로, 중복을 피하기 위해 여기서는 그 설명을 생략한다.
도 5는 본 발명의 또 다른 실시예에 따른 작업 기술을 학습하는 로봇(500)을 도시한 블록도로서, 여기서 로봇(500)이란, 물리적으로 현세계에 존재하는 기구 외에 가상의 공간 상에서 생성되어 운용되는 아바타와 같은 가상의 로봇이 될 수도 있다. 학습 로봇(500)은 크게 센서(10), 학습 엔진(20) 및 구동부(30)를 포함한다. 도 5의 구성에서 학습 엔진(20)은 앞서 도 2 내지 도 4를 통해 설명한 학습 방법의 구성 요소들에 대응하므로 여기서는 중복을 피하기 위해 그 개요만을 약술한다.
센서(10)는 미리 정의된 메소드에 따라 주위 환경을 감지하는 기술적 수단으로써, 본 실시예에 따른 로봇이 구현되는 환경에 따라 그 종류 및 수가 다양하게 구현되는 것이 가능하나, 적어도 하나 이상의 센서를 구비하는 것이 바람직하다. 이러한 센서(10)를 예를 들어, 카메라, 적외선 센서, 초음파 센서와 같이 주위 환경(50) 또는 작업 객체(70)를 인식하기 위한 센서와 구동 환경 내지 주위 환경(50) 또는 작업 객체(70)의 변화를 감지하여 토크(torque), 외력(force), 조인트(joint), 촉각(tactile) 등을 감지할 수 있는 움직임에 대한 센서 등이 활용될 수 있다.
학습 엔진(20)은 적어도 하나 이상의 프로세서를 구비하고, 미리 정의된 메소드를 제어하여 센서(10)로부터 미가공 정보를 입력받고, 계층적으로 연결된 복수 개의 분류 체계를 이용하여 메소드 및 센서(10)를 통해 입력된 미가공 정보로부터 복수 개의 동작 패턴들을 추출한다. 또한, 학습 엔진(20)은 추출된 동작 패턴들 간의 연관 관계에 따라 작업 기술 그룹을 생성함으로써 작업 기술을 구조화하고 조직화한다. 이 때, 이러한 작업 기술 그룹은 시간적 순서 및 공간적 배치에 따라 분류된 단위 동작을 하나 또는 둘 이상 조합하여 저장하는 것이 바람직하다. 즉, 이러한 조합된 작업 기술은 시퀀스 학습(sequence learn)에 따른 학습 결과가 된다.
구동부(30)는 학습 엔진(20)이 생성한 작업 기술 그룹을 참조하여 센서(10)를 통해 감지된 미가공 정보에 대응하는 작업 기술을 수행한다. 따라서, 본 발명의 실시예들이 속하는 기술 분야의 속성에 따라 이러한 구동부(30)는 다양한 형태의 하드웨어 장치로서 구현될 수 있다. 예를 들어, 학습 로봇(500)을 이동시키기 위한 모터가 포함될 수도 있고, 학습 로봇(500)으로 하여금 작업 객체(70)를 들거나 이동시키기 위한 로봇 암(robot arm)이 포함될 수도 있을 것이다.
한편, 이상의 학습 엔진(20)은, 센서(10)를 통해 입력된 미가공 정보 중, 현재의 작업 기술과 연관된 정보만을 실시간으로 필터링할 수 있다. 이를 위해, 학습 엔진(20)은 미가공 정보를 입력받는 중, 입력되는 미가공 정보 및 이미 생성된 작업 기술 그룹을 참조하여 현재의 작업 기술을 실시간으로 판단하고, 판단 결과에 따라, 입력되는 미가공 정보에 대해 판단된 현재의 작업 기술과의 연관도를 산출한다. 이렇게 산출된 연관도를 참조하여, 학습 엔진(20)은 동작 패턴들을 추출하는 단계 이전에 입력된 미가공 정보 중에서 산출된 연관도가 낮은 정보를 삭제함으로써 작업 기술과의 연관도가 높은 정보만에 집중할 수 있다.
도 6은 본 발명의 또 다른 실시예에 따른 도 5의 학습 로봇의 전체 시스템 구성도를 예시한 도면이다. 본 실시예는 인간-인공물(아바타 또는 로봇을 의미한다.) 간의 작업 기술을 스스로 학습하고 사용하기 위하여 필요로 하는 인간수준의 작업 기술 학습지능(Task Skill Learning)을 구현하기 위한 보다 실질적인 기술 수단을 제시하고 있다. 도 6을 통해서, 학습 로봇은 요리사가 스파게티를 만드는 과정을 여러 차례 관찰함으로써 스파게티를 만들기 위한 기본적인 단위 기술들을 학습하고, 이러한 단위 기술들을 조합하여 상황에 맞도록 스파게티를 요리하고자 하는 상황을 가정하자.
도 6에서 본 실시예에 따른 학습 로봇은 GPSD 학습 엔진, 기술 학습 엔진(계층적 구조의 GPSD 학습 엔진과는 달리, 단순 모방 학습을 수행하는 학습 엔진을 의미한다.) 및 인식 엔진의 세 부분으로 구성된다.
우선, 인식 엔진은 기술 학습을 위해 필요한 주위 환경 및 작업 객체에 대한 인식을 지원한다. 시각 기반 인식은 생명체의 발전 단계 중 Skinnerian 단계의 능력에 해당한다. 즉, 미가공 정보/패턴인 원시 영상 정보로부터 의미 있는 패턴을 구분해내는 능력이 요구된다. 앞서 설명한 바와 같이 패턴을 보다 효과적으로 구분하기 위해서 본 발명의 실시예들은 GPSD 학습 엔진이 채택하고 있는 계층적 순환적 모델을 사용하고 있다. 이 모델은 인식 엔진과 결합되어, 계층적 순환적 모델은 입식 엔진을 통해 입력된 미가공 정보를 입력받고, 이로부터 유의미한 패턴을 추출한다. 이러한 방법은 인간의 대뇌신피질의 인지 구조를 모방한 인식 기술으로써, 기존의 패턴 인식 알고리즘들이 분류하지 못했던 복잡하고 다양한 환경 하에서의 물체를 강인하게 인식할 수 있도록 한다. 이렇게 인식된 결과는 GPSD 학습 엔진의 또 다른 특징인 반복적 피드백 구조에 따라 인식 엔진에 재차 제공될 수 있다.
다음으로, 기술 학습 엔진은 기초 기술(basis skill)의 학습 및 재조합(Recombination), 자기 수용 센서(proprioceptive sensor)(예를 들어, 2D 카메라 또는 3D 입체 감지 카메라가 활용될 수 있다.) 및 외부 수용 센서(exteroceptive sensor)(예를 들어, 토크/외력, 조인트, 촉각 센서가 활용될 수 있다.)의 효율적인 센서 융합 학습 기술을 포함한다. 기초 기술을 학습하고, 이들을 재조합하는 기술은 적은 수의 기초 기술의 학습으로부터 무한히 다양한 직업 기술을 습득하기 위해 매우 유용하게 활용될 수 있다.
한편, 기존의 작업 기술 학습 방법의 경우에는 작업 도중 작업의 대상이 변형되는(deformable) 경우와 같이 복잡하고 정교한 작업은 수행하지 못했다. 그러나, 본 실시예가 채택하고 있는 센서 융합 학습 기술의 경우에는 토크나 외력 또는 카메라 감지 정보를 이용하여 작업 대상의 상태를 지속적으로 감지함으로써 그에 따라 적절한 제어를 수행하는 것이 가능하다. 앞서 설명한 인식 엔진에서 카메라 정보의 효율적 인식을 위해 GPSD 학습 엔진에서의 계층적 순환적 구조를 사용한 것과 유사하게, 토크나 외력 센서의 효율적 인식을 위해서도 계층적 순환적 구조가 사용될 수 있다. 이러한 인식 정보들은 GPSD 학습 엔진을 통해 융합되어 복잡하고 정교한 작업 기술 학습을 가능하게 한다.
나아가, 이상의 학습 로봇에서는 GPSD 학습 엔진을 통해 인공물 스스로 필요한 센서 정보를 선택할 수 있다. 이러한 학습 지능은 특히 GPSD 학습 엔진 중에서도 Gregorian 단계의 상위 지식들을 이용함으로써 구현 가능하다. 예를 들어, 요리사는 요리 중에 전화를 받을 수도 있다. 이러한 전화 통화라는 행위는 요리와는 상관없는 행위이고, 요리를 위해서는 불필요한 별개의 작업 기술이다. 인공물이 이러한 불필요한 행위, 혹은 센서 정보를 학습 과정에서 배제하기 위해서는 요리라는 개념과 연결된 관련 개념들이 무엇인지 파악하고, 연결되지 않은 행위나 센서 정보들에 대해서는 관심(attention) 대상으로부터 배제할 필요가 있다. 따라서, 본 발명의 실시예들이 채택하고 있는 GPSD 학습 엔진을 통해서 인공물은 현재 학습과 관련된 정보에 스스로 집중하여 효율적으로 학습을 할 수 있다.
이하에서는 본 발명의 실시예를 통해 실제 작업 기술 학습 과정이 어떻게 수행되는지에 대한 일례를 라면 요리를 통해 제시하고자 한다. 우선, 요리사는 인공물에게 라면을 끓이는 과정을 여러 차례 시연하였다고 가정하자. 통상적으로 이러한 시연 과정은 인공물의 로봇 암(robot arm)을 직접 잡고 학습 엔진에 입력시킴으로써 학습을 시킬 수 있다.
첫째, Darwinian 단계에서 학습 로봇은 부착된 센서(카메라, 토크/외력 센서 등이 될 수 있다.)로부터 미가공 패턴 정보들을 입력받는다. 이 때, 인식 엔진이나 기술 학습 엔진은 인식 또는 학습을 하지 않는다.
둘째, Skinnerian 단계에서 학습 로봇은 비로소 미가공 패턴 정보로부터 유의미한 패턴 정보를 추출한다. 이 때, 패턴들은 단순한 패턴(simple pattern)으로부터 복잡한(complex pattern)까지 계층 구조(hierarchy)를 형성하고, 각 레벨의 패턴들은 통상적인 클러스터링 기법이나 분류 기법을 통해 인식될 수 있다. 이러한 계층적 인식 과정은 순환적 구조를 형성하고 있으므로, 상위 계층의 복잡한 패턴을 인식한 후, 해당 정보가 다시 하위 계층의 단순한 패턴을 인식하는데 도움을 줄 수 있다. 인식되는 최상위의 복잡한 패턴들은 요리 재료(라면, 계란 및 파 등이 될 것이다.)와 작업 도구(냄비, 도마 및 젓가락 등이 될 것이다.), 그리고 토크/외력 센서로부터 인식될 수 있는 다양한 패턴들에 해당한다. 이 때, 기술 학습 엔진은 이러한 다양한 패턴 정보들과 수행된 동작(조인트 정보가 될 수 있다.)을 연결시켜 어떠한 센서 정보가 감지될 경우에 어떠한 동작을 수행해야 하는지를 학습한다. 이러한 다양한 패턴 정보들과 동작 정보의 연결은 다중 센서 통합 모듈(multisensory integration module)을 통해 구현될 수 있다. 라면을 끓이는 전 과정의 행동들은 기초 기술 단위로서 분할(segmentation)되고 기초 기술 라이브러리(basis skill library)와 같은 별도의 저장 공간에 저장될 수 있다.
셋째, Popperian 단계에서는 라면을 요리할 때 필요한 기초 기술들이 체인 형태의 연관 관계를 가지고 있다는 사실을 학습한다.
넷째, Gregorian 단계에서는 앞서 학습한 체인이라는 메타-패턴 정보와 기초 기술들의 시간적, 공간적 순서에 관한 정보를 이용하여 라면 요리에 대한 '기초 기술들'의 개념 계층 구조(concept hierarchy)를 생성한다. 또한, 앞서 생성한 분류 패턴, 메타-패턴 정보 및 라면 요리 과정에서의 인식 정보를 이용하여 라면 요리에 대한 '재료'의 개념 계층 구조 및 '도구'의 개념 계층 구조를 생성한다. 라면 요리를 포함한 다양한 요리에 대한 개념 계층 구조가 생성되면, 이후 다른 요리를 학습할 때, 요리와 관련이 적은 불필요한 동작이 감지되더라도, 학습 로봇은 이러한 불필요한 동작을 필터링하여 제거함으로써 요리에 필요한 동작 혹은 감지 정보에만 집중할 수 있다.
상기된 본 발명의 실시예들에 따르면, 계층적으로 연결된 복수 개의 분류 체계를 이용하여 미가공 정보로부터 복수 개의 작업 기술을 추출하고 조직화함으로써 이미 학습된 작업 기술을 재사용할 수 있고, 학습 로봇 스스로가 이미 학습된 작업 기술을 향상시키고 추가할 수 있을 뿐만 아니라, 주위 환경 내에 복수 개의 작업 객체가 존재하는 경우에도 이미 학습된 작업 기술 그룹을 참조하여 현재의 작업 기술과 연관된 정보만을 실시간으로 필터링함으로써 수행하여야 하는 작업을 정확하게 인식할 수 있다.
따라서, 구현 및 활용의 측면에서 요리 보조 로봇의 경우에는 가정 주부가 라면이나 스파게티 등의 요리를 할 때, 재료를 손질(양파, 파 등을 썰기)하고 면을 물에 넣어 끓이고, 스프나 소스를 면과 섞는 등의 작업을 도와줄 수 있다. 한편, 의료 활동 보조 로봇의 경우에는 간호사를 도와 환자의 기본적 건강상태를 점검(체온 또는 맥박 측정)하고, 재활 치료를 할 때 환자를 부축하는 등의 행위를 수행함으로써 재활 치료사를 도와줄 수 있다.
한편, 본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 이 때, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현하는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.
이상에서 본 발명에 대하여 그 다양한 실시예들을 중심으로 살펴보았다. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
500 : 작업 기술을 학습하는 로봇
10 : 센서 20 : 학습 엔진
30 : 구동부
50 : 주위 환경 70 : 작업 객체

Claims (8)

  1. 적어도 하나 이상의 프로세서(processor)를 구비한 학습 엔진(learning engine)이 작업 기술을 학습하는 방법에 있어서,
    상기 학습 엔진에 의해 제어 가능한 하드웨어 장치 또는 소프트웨어의 수행 모듈을 포함하는 장치 제어 수단인 메소드(method) 및 상기 메소드에 따라 주위 환경으로부터 감지된 미가공 정보(raw data)를 입력받는 단계;
    상기 입력된 미가공 정보 중, 현재의 작업 기술과 연관된 정보만을 실시간으로 필터링(filtering)하는 단계;
    계층적으로 연결된 복수 개의 분류 체계를 이용하여 상기 입력된 메소드 및 상기 필터링된 미가공 정보로부터 복수 개의 동작 패턴들을 추출하는 단계; 및
    상기 추출된 동작 패턴들 간의 연관 관계에 따라 작업 기술 그룹을 생성하는 단계를 포함하는 작업 기술의 학습 방법.
  2. 제 1 항에 있어서,
    상기 복수 개의 동작 패턴들을 추출하는 단계는,
    미리 저장된 복수 개의 분류 체계 중 어느 하나에 따른 하위 계층 분류기를 이용하여 상기 입력된 메소드 및 미가공 정보로부터 동작 패턴을 추출하는 단계; 및
    상기 분류 체계 내의 계층적 연결 관계에 따라 상기 하위 계층 분류기에 연결된 상위 계층 분류기를 이용하여 상기 추출된 동작 패턴으로부터 또 다른 동작 패턴을 추출하는 과정을 소정 회수만큼 반복하는 단계를 포함하는 작업 기술의 학습 방법.
  3. 제 2 항에 있어서,
    상기 상위 계층 분류기를 통해 추출된 동작 패턴을 상기 복수 개의 분류 체계 중 어느 하나에 따른 하위 계층 분류기의 입력값으로 순환적 피드백(recurrent feedback)하는 것을 특징으로 하는 작업 기술의 학습 방법.
  4. 삭제
  5. 제 1 항에 있어서,
    상기 현재의 작업 기술과 연관된 정보만을 필터링하는 단계는,
    상기 미가공 정보를 입력받는 중, 입력되는 미가공 정보 및 이미 생성된 작업 기술 그룹을 참조하여 현재의 작업 기술을 실시간으로 판단하는 단계;
    상기 판단 결과에 따라, 상기 입력되는 미가공 정보에 대해 상기 판단된 현재의 작업 기술과의 연관도를 산출하는 단계; 및
    상기 동작 패턴들을 추출하는 단계 이전에 상기 입력된 미가공 정보 중에서 상기 산출된 연관도가 낮은 정보를 삭제하는 단계를 포함하는 작업 기술의 학습 방법.
  6. 작업 기술을 학습하는 로봇에 있어서,
    미리 정의된 하드웨어 장치 또는 소프트웨어의 수행 모듈을 포함하는 장치 제어 수단인 메소드에 따라 주위 환경을 감지하는 적어도 하나 이상의 센서;
    적어도 하나 이상의 프로세서를 구비하고, 상기 메소드를 제어하여 상기 센서로부터 미가공 정보를 입력받고, 계층적으로 연결된 복수 개의 분류 체계를 이용하여 상기 메소드 및 상기 입력된 미가공 정보로부터 복수 개의 동작 패턴들을 추출하며, 상기 추출된 동작 패턴들 간의 연관 관계에 따라 작업 기술 그룹을 생성하는 학습 엔진; 및
    상기 학습 엔진이 생성한 작업 기술 그룹을 참조하여 상기 센서를 통해 감지된 미가공 정보에 대응하는 작업 기술을 수행하는 구동부를 포함하되,
    상기 학습 엔진은, 상기 입력된 미가공 정보 중, 현재의 작업 기술과 연관된 정보만을 실시간으로 필터링하는 것을 특징으로 하는 로봇.
  7. 삭제
  8. 제 6 항에 있어서,
    상기 작업 기술 그룹은 시간적 순서 및 공간적 배치에 따라 분류된 단위 동작을 하나 또는 둘 이상 조합하여 저장하는 것을 특징으로 하는 로봇.
KR1020110070816A 2011-07-18 2011-07-18 작업 기술을 학습하는 방법 및 이에 따른 로봇 KR101454151B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110070816A KR101454151B1 (ko) 2011-07-18 2011-07-18 작업 기술을 학습하는 방법 및 이에 따른 로봇

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110070816A KR101454151B1 (ko) 2011-07-18 2011-07-18 작업 기술을 학습하는 방법 및 이에 따른 로봇

Publications (2)

Publication Number Publication Date
KR20130010182A KR20130010182A (ko) 2013-01-28
KR101454151B1 true KR101454151B1 (ko) 2014-10-30

Family

ID=47839472

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110070816A KR101454151B1 (ko) 2011-07-18 2011-07-18 작업 기술을 학습하는 방법 및 이에 따른 로봇

Country Status (1)

Country Link
KR (1) KR101454151B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11185998B2 (en) * 2016-06-14 2021-11-30 Sony Corporation Information processing device and storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Gi-Hyun Lim et al., Recognition and Incremental Learning of Scenario-Oriented Human Behavior Patterns by Two Threshold Models, HRI'11, pp.189-190, 2011.03.06-09. *
Gi-Hyun Lim et al., Recognition and Incremental Learning of Scenario-Oriented Human Behavior Patterns by Two Threshold Models, HRI'11, pp.189-190, 2011.03.06-09.*

Also Published As

Publication number Publication date
KR20130010182A (ko) 2013-01-28

Similar Documents

Publication Publication Date Title
Kebria et al. Deep imitation learning for autonomous vehicles based on convolutional neural networks
Smith et al. Avid: Learning multi-stage tasks via pixel-level translation of human videos
Xie et al. Few-shot goal inference for visuomotor learning and planning
Mohammed et al. Review of deep reinforcement learning-based object grasping: Techniques, open challenges, and recommendations
Mouret et al. Encouraging behavioral diversity in evolutionary robotics: An empirical study
Finn et al. Deep spatial autoencoders for visuomotor learning
Lea et al. Learning convolutional action primitives for fine-grained action recognition
Finn et al. Learning visual feature spaces for robotic manipulation with deep spatial autoencoders
Bates et al. On-line simultaneous learning and recognition of everyday activities from virtual reality performances
Auerbach et al. Evolving complete robots with CPPN-NEAT: the utility of recurrent connections
Bousmalis et al. Robocat: A self-improving foundation agent for robotic manipulation
Guha et al. Minimalist plans for interpreting manipulation actions
Bütepage et al. From visual understanding to complex object manipulation
Chang et al. Learning deep parameterized skills from demonstration for re-targetable visuomotor control
KR101454151B1 (ko) 작업 기술을 학습하는 방법 및 이에 따른 로봇
Pardowitz et al. Towards life-long learning in household robots: The piagetian approach
Ferraro et al. Focus: Object-centric world models for robotics manipulation
Bousmalis et al. RoboCat: A Self-Improving Generalist Agent for Robotic Manipulation
Bhutani et al. Attentive one-shot meta-imitation learning from visual demonstration
Vyas et al. Robotic grasp synthesis using deep learning approaches: a survey
Lea et al. Learning convolutional action primitives from multimodal timeseries data
Horváth Representing Biological Aspects in Engineering Model System
Ralph et al. An integrated system for user-adaptive robotic grasping
Kertész et al. Body state recognition for a quadruped mobile robot
Gutmann et al. Real-time inferencing and training of artificial neural network for adaptive latency negation in distributed virtual environments

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
LAPS Lapse due to unpaid annual fee