KR20210116229A - 제어 장치, 로봇, 학습 장치, 로봇 시스템 및 방법 - Google Patents

제어 장치, 로봇, 학습 장치, 로봇 시스템 및 방법 Download PDF

Info

Publication number
KR20210116229A
KR20210116229A KR1020210021112A KR20210021112A KR20210116229A KR 20210116229 A KR20210116229 A KR 20210116229A KR 1020210021112 A KR1020210021112 A KR 1020210021112A KR 20210021112 A KR20210021112 A KR 20210021112A KR 20210116229 A KR20210116229 A KR 20210116229A
Authority
KR
South Korea
Prior art keywords
gripper
learning
robot
state
arm
Prior art date
Application number
KR1020210021112A
Other languages
English (en)
Other versions
KR102513854B1 (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 오므론 가부시키가이샤
Publication of KR20210116229A publication Critical patent/KR20210116229A/ko
Application granted granted Critical
Publication of KR102513854B1 publication Critical patent/KR102513854B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • 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
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/081Touching devices, e.g. pressure-sensitive
    • B25J13/082Grasping-force detectors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J17/00Joints
    • B25J17/02Wrist joints
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • 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
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator
    • 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
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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/1628Programme controls characterised by the control loop
    • B25J9/1635Programme controls characterised by the control loop flexible-arm 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/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39575Wrist, flexible wrist
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40032Peg and hole insertion, mating and joining, remote center compliance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40499Reinforcement learning algorithm

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Fuzzy Systems (AREA)
  • Manipulator (AREA)

Abstract

본 발명의 과제는 접촉을 수반하는 동작을 고속으로 행할 수 있는 로봇 제어를, 종래보다도 저렴하고 또한 범용적으로 실현하는 것이다.
대상물을 파지하기 위한 그리퍼와, 그리퍼를 이동시키기 위한 암을 구비하고, 그리퍼의 도중, 그리퍼와 암 사이 및 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇의 제어 장치이며, 유연부, 유연부보다도 대상물을 파지하는 측의 로봇 부위 및 파지된 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 수단과, 상태 관측 데이터가 입력되면, 대상물에 대한 소정의 작업을 행하기 위한 로봇의 행동을 출력하도록, 미리 기계 학습된 학습 모델을 포함하고, 상태 취득 수단에 의해 취득된 상태 관측 데이터를 학습 모델에 입력하여 얻어지는 출력에 기초하여, 로봇을 제어하는 제어 수단을 구비한다.

Description

제어 장치, 로봇, 학습 장치, 로봇 시스템 및 방법{CONTROL APPARATUS, ROBOT, LEARNING APPARATUS, ROBOT SYSTEMS AND METHOD}
본 발명은, 유연부를 구비하는 로봇의 제어 및 그 학습에 관한 것이다.
공장에 있어서의 제품 조립 등의 동작을 고려했을 때, 클리어런스가 적은 끼워 넣기 등의 접촉 동작은 불가결이다. 이것을, 인간이 행하는 것과 동일하거나 혹은 그 이하의 동작 시간에 실현하고 싶다는 요망이 크다. 이러한 동작의 실현을 위해, 종래는 이하의 어프로치가 검토되고 있었다.
제1은, 고정밀도의 기계와, 위치 자세의 불확정성을 삭감하기 위한 기구(지그, 전용 핸드 등)를 사용하는 방법이다. 그러나, 조립에 있어서 복수의 부품이 존재하는 경우에 대상마다의 위치 결정 방법이나 지그를 고안할 필요가 있기 때문에, 이 방법은 설계 변경에 매우 약하다.
제2는, 대상의 위치 자세를 깊이 센서 등에 의해 추정하는 방법이다. 그러나, 이 방법은 충분한 정밀도에서의 추정이 곤란하다는 문제가 있다. 예를 들어, 소형 부품의 조립에 있어서는 서브㎜의 정밀도가 필요해지지만, 현 상황에서는 충분한 정밀도가 얻어지지 않는다. 또한, 대상을 파지했을 때의 잡는 법의 불확정성이나 로봇과 카메라 사이의 캘리브레이션의 오차도 있어, 서브㎜의 인식 정밀도가 얻어졌다고 해도 반드시 조립 작업이 성공하는 것은 아니다. 또한, 시각 센서를 사용하여 인식한 로봇 또는 대상물의 위치에 기초하는 비주얼 피드백은 어느 정도의 해결책은 되지만, 고속의 피드백 사이클이 필요해짐과 함께, 끼워 넣기 개시 후에는 시각적인 인식이 어려워지므로 힘을 준 상태를 구할 수 없다.
제3은, 힘 제어를 사용하여 힘을 준 상태를 제어하는 방법이다(특허문헌 1). 이 방법에 의하면, 힘을 준 상태를 제어할 수 있는 한편, 동작 전략은 대상에 따라 만들어 넣을 필요가 있다. 또한, 고속의 제어를 하지 않으면 힘을 제어할 수 없기 때문에, 제어 주기를 단축할 필요가 있어, 비용의 증대를 초래한다.
제4는, 오차 흡수할 수 있는 수동 동작 기구를 활용하는 방법이다(특허문헌 2). 컴플라이언스 유닛과 같은 수동적인 가동 요소를 사용함으로써 미소 오차를 흡수 가능하다. 그러나, 흡수 가능한 오차 범위에 들 수 있을 정도의 높은 정밀도가 필요해진다. 예를 들어, 수동적인 가동 요소를 갖는 암을 구비한 로봇으로, 파지한 대상물을 구멍의 모따기부에 안내되어 구멍에 압입할 때에는, 모따기부에 대상물을 접촉시킬 수 있는 만큼의 정밀도를 필요로 한다. 또한, 동작은 사람이 만들어 넣을 필요가 있으므로, 설정에 시간 및 숙련자를 필요로 한다.
일본 특허 공개 제2000-042962호 공보 일본 특허 공개 제2015-083324호 공보
본 발명은 상기 실정을 감안하여 이루어진 것이며, 접촉을 수반하는 고속의 동작을 용이하게 로봇에게 행하게 할 수 있는 기술을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위해 본 발명은, 이하의 구성을 채용한다.
본 발명의 제1 양태는, 대상물을 파지하기 위한 그리퍼와, 상기 그리퍼를 이동시키기 위한 암을 구비하고, 상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇의 제어 장치이며,
상기 유연부, 상기 유연부보다도 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 상기 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 수단과,
상기 상태 관측 데이터가 입력되면, 상기 대상물에 대한 소정의 작업을 행하기 위한 상기 로봇의 행동을 출력하도록, 미리 기계 학습된 학습 모델을 포함하고, 상기 상태 취득 수단에 의해 취득된 상태 관측 데이터를 상기 학습 모델에 입력하여 얻어지는 출력에 기초하여, 상기 로봇을 제어하는 제어 수단
을 구비한다.
「물리적으로 유연한 유연부」는, 변위에 대하여 복원력이 작용하는 수동 요소에 의한 기구를 포함하는 개념이고, 전형적으로는, 스프링이나 고무와 같은 탄성체, 댐퍼, 공기압 또는 액압의 실린더가 포함된다. 힘 제어를 사용하거나 혹은 힘 제어에 의해서만 유연성을 얻는 기구는 「물리적으로 유연한 유연부」로부터 제외되어도 된다.
학습 모델은, 현재의 상태 관측 데이터를 입력으로 하고, 작업 달성을 위해 적절한 다음의 1스텝의 행동을 출력한다. 학습 모델은, 제어 모델, 제어 폴리시 등이라고도 칭해진다. 학습 모델은, 어떤 기계 학습 알고리즘에 의해 획득되어도 되고, 예를 들어 강화 학습에 의해 획득된다. 데이터 효율을 고려하면 모델 베이스 강화 학습을 채용하면 되지만, 모델 프리 강화 학습이어도 된다. 또한, 심층 학습, 지도 학습, 준지도 학습에 의해 학습 모델을 획득해도 된다.
본 형태에 있어서, 상기 소정의 작업은, 복수의 프리미티브 조작을 포함하고, 상기 제어 수단은, 상기 복수의 프리미티브 조작에 대응한, 복수의 학습 모델을 포함해도 된다. 프리미티브 조작은, 동작 구간, 모션 프리미티브, MP 등이라고도 칭해진다. 프리미티브 조작은, 각각 목표가 정해진 조작이고, 주목하는 상태 변수 및 실시하는 행동에 독자적인 제약이 부과되어 있어도 된다.
본 형태에 있어서, 상기 복수의 프리미티브 조작은, 상기 그리퍼 또는 상기 그리퍼에 파지된 상기 대상물이 환경에 접촉 또는 근접하고 있는 상태를 유지하면서 동작하도록 상기 로봇을 제어하는 구속 프리미티브 조작을 하나 또는 복수 포함해도 된다. 그리고, 상기 구속 프리미티브 조작에 대응하는 학습 모델은, 상태 공간 및 행동 공간의 차원을 삭감한 학습 처리에 의해 학습되어도 된다.
본 형태에 있어서, 상기 학습 모델은, 복수의 프리미티브 조작으로 분할되지 않는 조작의 전체 또는 하나의 프리미티브 조작에 있어서, 상기 그리퍼 또는 상기 그리퍼에 파지된 상기 대상물이 환경에 접촉 또는 근접하고 있는 구속 상태를 유지하면서 동작하는 행동을 포함하는 행동을 출력하는 것이어도 된다. 상기 학습 모델은, 상기 구속 상태를 유지하면서 상기 로봇을 제어하는 것에 관해서는, 상태 공간 및 행동 공간의 차원을 삭감한 학습 처리에 의해 학습되어도 된다.
본 형태에 있어서의 상기 유연부는, 상기 그리퍼와 상기 암 사이에 마련되고, 상기 유연 관련 관측 데이터는, 상기 그리퍼가 상기 대상물로부터 받는 힘에 관련되는 힘 관련 센싱 데이터, 상기 그리퍼의 위치, 속도, 자세 및 자세의 변화에 대한 각속도의 적어도 어느 것, 상기 그리퍼와 상기 암 사이의 상대적인 거리 및 상대적인 각도의 적어도 어느 것, 상기 유연부가 받는 힘에 관련되는 힘 관련 센싱 데이터, 상기 대상물, 상기 그리퍼 및 상기 유연부의 적어도 어느 것을 촬상한 화상에 기초하는 데이터의 적어도 어느 것을 포함해도 된다.
본 발명의 제2 양태는, 대상물을 파지하기 위한 그리퍼와, 상기 그리퍼를 이동시키기 위한 암을 구비하고, 상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇과, 제1 양태의 제어 장치를 구비하는 로봇 시스템이다.
본 발명의 제3 양태는,
대상물을 파지하기 위한 그리퍼와,
상기 그리퍼를 이동시키기 위한 암과,
상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 마련된 물리적으로 유연한 유연부와,
상기 유연부, 상기 유연부보다도 상기 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 대상물의 적어도 어느 것의 상태를 검출하는 센서
를 구비하는 로봇이다.
본 발명의 제4 양태는,
대상물을 파지하기 위한 그리퍼와, 상기 그리퍼를 이동시키기 위한 암을 구비하고, 상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇의 상기 유연부, 상기 유연부보다도 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 상기 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 수단과,
상기 상태 관측 데이터가 입력되면, 상기 대상물에 대한 소정의 작업을 행하기 위한 상기 로봇의 행동을 출력하는 학습 모델을 획득하는 학습 수단
을 포함하는, 학습 장치이다.
본 발명은, 로봇을 제어하는 제어 방법이라고 파악할 수도 있고, 로봇의 행동을 출력하는 학습 모델을 획득하는 학습 방법이라고 파악할 수도 있다. 또한, 본 발명은, 이러한 방법을 실현하기 위한 프로그램이나 그 프로그램을 비일시적으로 기록한 기록 매체로서 파악할 수도 있다. 또한, 상기 수단 및 처리의 각각은 가능한 한 서로 조합하여 본 발명을 구성할 수 있다.
본 발명에 따르면, 접촉을 수반하는 고속의 동작을 용이하게 로봇에 행하게 할 수 있다.
도 1은 본 발명을 적용한 로봇 시스템(학습 페이즈)의 개요를 설명하는 도면이다.
도 2의 (A), 도 2의 (B)는 로봇의 개략 구성을 도시하는 도면이다.
도 3은 로봇의 제어 시스템을 획득하는 학습 장치의 하드웨어 구성을 도시하는 블록도이다.
도 4는 로봇의 제어 시스템을 획득하는 학습 장치의 기능 구성을 도시하는 블록도이다.
도 5는 페그의 끼워 넣기 작업을 구성하는 조작 프리미티브(MP)를 설명하는 도면이다.
도 6은 페그의 끼워 넣기 작업을 구성하는 조작 프리미티브(MP)를 설명하는 도면이다.
도 7은 학습 처리의 흐름도이다.
도 8은 로봇을 제어하는 제어 장치의 기능 구성을 도시하는 블록도이다.
도 9의 (A) 내지 도 9의 (D)는 실시 형태의 효과를 설명하기 위한 도면이다.
도 10의 (A) 내지 도 10의 (C)는 실시 형태의 효과를 설명하기 위한 도면이다.
도 11의 (A) 내지 도 11의 (C)는 촉각 센서를 설명하기 위한 도면이다.
<적용예>
도 1을 참조하여, 본 발명에 관한 로봇 시스템(1)의 적용예를 설명한다. 로봇 시스템(1)은, 유연부를 구비하는 로봇(10)의 제어를 행하기 위한 모델을, 기계 학습(예를 들어, 모델 베이스 강화 학습)을 사용하여 획득한다. 로봇(10)은 유연부를 갖고 있기 때문에, 파지한 부품을 환경에 접촉시켜도 안전하고, 또한 제어 주기가 늦어도 끼워 넣기 작업 등을 실현 가능하다. 한편, 유연부에 의해 그리퍼 및 부품의 위치가 불확정으로 되기 때문에, 해석적인 제어 모델을 얻는 것은 곤란하다. 그래서, 본 발명에서는 기계 학습을 사용하여 제어 모델을 획득한다.
제어 모델의 기계 학습을 단순하게 행하면, 매우 많은 데이터 수집이 필요해져, 학습에 시간이 걸린다. 그래서, 로봇 시스템(1)에서는, 로봇의 유연성과 환경의 접촉에 의한 구속 조건을 고려하여, 상태 공간 및 행동 공간의 차원을 삭감한 학습을 행한다. 예를 들어, 페그를 구멍에 끼워 넣는 동작의 학습에 있어서, 전체의 동작을 복수의 구간(프리미티브 조작; Motion Primitive(MP))으로 분할하고, 접촉 상태에 있는 각 MP에서는 자유도가 있는 차원의 상태 변수에만 착안한다. 또한, 로봇이 유연부를 구비하고 있기 때문에, 접촉에 의해 자유도가 없어져 있는 차원에 대해서는, 힘 제어가 불필요하므로, 위치 및 속도만을 제어하면 되고, 또한 접촉에 의해 자유도가 없어져 있는 차원이 삭감된 행동 공간에 있어서의 행동만을 취하도록 학습을 행한다. 이렇게 상태 공간 및 행동 공간의 차원을 삭감함으로써, 신속한 학습이 가능해진다.
파지한 부품이 환경에 접촉되어 있는 상태를 유지하면서 동작하는 것 대신에, 파지한 부품이 환경에 근접하고 있는 상태를 유지하면서 동작하도록 해도 된다. 여기서 근접하고 있다는 것은, 부품과 환경 사이에 미소한 간격, 예를 들어 수㎜의 간격이 있는 것을 말한다. 이 간격의 크기는, 정전 용량이나 전자기 유도에 기초하는 근접 센서, 광학적 변위 센서, 시각 센서 등에 의해 측정 또는 추정된다. 간격의 크기를 측정하지 않고 위치 제어에 의해 근접하고 있는 상태를 유지해도 된다. 이 간격은, 외부로부터의 힘이나 로봇의 운동 등의 영향에 의해 목표값으로부터 변동되어도 된다. 근접하고 있는 상태를 유지하고 있는 동안에, 부품이 환경에 대하여 일시적으로 접촉하는 경우가 있어도 된다. 접촉한 경우에는 유연부에 의한 충격 흡수가 작용한다. 이하, 접촉하고 있는 상태를 유지하면서 동작하는 것에 대한 설명은, 기술적으로 가능한 한, 근접하고 있는 상태를 유지하면서 동작하는 경우로 치환할 수 있다.
로봇(10)의 상태 관측에는, 예를 들어 로봇(10)의 관절의 인코더, 시각 센서(카메라), 모션 캡처, 힘 관련 센서를 이용할 수 있다. 각 관절의 각도로부터 암 선단의 위치·자세를 특정할 수 있고, 시각 센서 및/또는 힘 관련 센서로부터 부품(작업 대상물)의 자세를 추정할 수 있다. 모션 캡처용의 마커가 그리퍼에 설치되어 있는 경우에는 그리퍼의 위치·자세를 특정할 수 있고, 그리퍼의 위치·자세로부터 부품(작업 대상물)의 자세를 추정할 수 있다.
힘 관련 센서란, 역각 센서 및 토크 센서의 총칭이고, 또한 센서를 부품과 접촉하는 부위에 마련하는 경우에는 촉각 센서도 포함하는 총칭이다. 힘 관련 센서는, 로봇의 그리퍼가 부품으로부터 받는 힘을 검출하도록, 그리퍼가 부품을 파지하는 부분의 표면이나, 그리퍼 내의 관절 부분에 마련해도 된다. 그리퍼와 암 사이가 유연부인 경우, 힘 관련 센서는, 그리퍼와 암 사이에 마련하여 그리퍼와 암 사이에 작용하는 힘을 검출해도 된다. 힘 관련 센서는, 예를 들어 1요소 또는 다요소의, 1축, 3축 또는 6축의 힘을 검출하는 센서이다. 힘 관련 센서를 사용함으로써, 그리퍼가 부품을 어떻게 파지하고 있는지, 즉 부품의 자세를 더 고정밀도로 파악할 수 있어, 적절한 제어가 가능해진다. 힘 관련 센서에 의해 취득되는 데이터를, 본 개시에서는 힘 관련 센싱 데이터라고 칭한다.
또한, 시각 센서에 의해서도, 그리퍼 자체나 그리퍼가 파지하고 있는 부품의 위치 및 자세를 검출할 수 있다. 그리퍼와 암 사이가 유연부인 경우, 암에 대한 그리퍼의 변위를 검출하는 변위 센서에 의해서도 암에 대한 그리퍼의 위치·자세를 특정할 수 있다.
이와 같이, 각종 센서에 의해, 유연부, 유연부보다도 대상물을 파지하는 측의 로봇의 부위 및 파지되어 있는 부품의 적어도 어느 것에 대한 상태를 검출할 수 있다. 센서의 검출 결과를 상태 관측 데이터로서 취득할 수 있다. 또한, 유연부, 유연부보다도 대상물을 파지하는 측의 로봇의 부위 및 파지되어 있는 부품에 대한 관측 데이터를, 본 개시에서는 유연 관련 관측 데이터라고도 칭한다. 상태 관측 데이터는, 유연 관련 관측 데이터만을 포함해도 되고, 유연 관련 관측 데이터에 더하여, 상기 이외의 상태에 대한 관측 데이터를 포함해도 된다.
학습 장치(20)는, 기계 학습을 사용하여 로봇(10)의 학습 모델을 획득한다. 학습 알고리즘으로서, 기계 학습, 특히 교사 데이터 없이 시행 착오에 의해 학습을 행할 수 있는 강화 학습을 사용하면 되지만, 지도 학습을 사용하여 학습 모델을 획득해도 된다. 강화 학습을 사용하는 경우에는, 특히 데이터 효율이 높은 모델 베이스 기계 학습을 사용하면 되지만, 모델 프리 강화 학습을 사용해도 된다. 또한, 강화 학습을 사용하는 경우에, 학습 초기에 있어서는, 사람이 로봇(10)의 암 및 그리퍼를 움직이게 한 결과를 사용하여 학습을 해도 된다. 학습 초기의 랜덤 제어에서는 보수 획득을 할 수 없어 학습에 시간을 필요로 하는 경우가 있지만, 수동으로 움직이게 함으로써 학습 시간을 단축할 수 있다. 학습 장치(20)는, 심층 학습에 의해 학습 모델을 획득해도 된다.
학습 장치(20)에 의해 획득된 학습 모델(학습 완료 모델)은, 로봇(10)을 제어하는 제어 장치에 탑재되어, 실제 작업에 제공된다. 이 제어 장치는, 학습 기능을 갖고 해도 되고, 그 경우에는 추가의 학습을 행해도 된다.
본 적용예에 의하면, 로봇(10)이 유연부를 갖고 있기 때문에, 복잡한 힘 제어를 행하지 않고, 그리퍼 또는 대상물을 환경에 접촉시키면서 동작하는 것이 용이하다. 또한, 그다지 감속하지 않고 그리퍼 또는 대상물을 환경에 접촉시키는 것이 가능하므로, 고속의 작업을 할 수 있다. 또한, 기계 학습에 의해 학습 모델을 획득하기 때문에, 간편하게 시스템 구축을 행할 수 있다.
또한 기계 학습 시에, 구속 조건에 기초하는 상태 공간 및 행동 공간의 차원 삭감이나, 센서 데이터의 차원 삭감을 사용함으로써, 데이터양을 삭감하여 고속의 학습(학습 모델 획득)을 실현할 수 있다. 이 경우, 작업에 따라 학습을 행하여 학습 모델을 획득하는 것을 적은 공정수로 할 수 있으므로, 특정한 작업뿐만 아니라 다종의 작업을 행하게 하는 것을 용이하게 할 수 있다.
상태 공간의 차원 삭감을 행하는 경우, 삭감 후의 차원에 대응하는 센서에 의해 검출된 상태 관측 데이터만을 사용하면 된다. 상태 관측 데이터가 복수의 차원의 성분을 포함하는 데이터로 되어 있을 경우에는, 원래의 상태 관측 데이터로부터 차원 삭감 후에 남겨지는 차원의 성분을 추출하여 이용하면 된다. 혹은, 학습의 과정에서 상태 관측 데이터의 분석 및 차원 압축을 행하여, 결과적으로 운동이 구속되어 있는 차원에 대응하는 상태 관측 데이터의 차원을 삭감해도 된다. 차원 압축을 위한 분석의 방법으로서는, 주성분 분석, 자기 부호화기, 스파스 코딩, 심층 학습 등을 이용할 수 있다. 상태 공간에 있어서 삭감한 차원에 대응하여, 행동 공간에 있어서도 차원을 삭감해도 된다.
<제1 실시 형태>
도 1은, 본 발명의 제1 실시 형태에 관한 로봇 시스템이다. 도 1은, 로봇 시스템을 제어하기 위한 학습 모델의 학습 페이즈에 사용되는 구성을 도시한다. 학습 페이즈에 있어서는, 로봇 시스템(1)은, 로봇(10)과 학습 장치(20)를 갖는다.
(로봇)
도 2의 (A), 도 2의 (B)는, 로봇(10)의 개략 구성을 도시하는 도면이다. 본 실시 형태에 있어서의 로봇(10)은, 6축 수직 다관절 로봇이고, 암(11)의 선단에 유연부(13)를 개재하여 그리퍼(핸드)(12)가 마련된다. 로봇(10)은, 그리퍼(12)에 의해 부품(예를 들어, 페그)을 파지하여 구멍에 끼워 넣는 끼워 넣기 작업을 행한다.
도 2의 (A)에 도시한 바와 같이, 로봇(10)은, 관절 J1 내지 J6을 구비한 6자유도의 암(11)을 갖는다. 각 관절 J1 내지 J6은, 도시하지 않은 모터에 의해 링크끼리를 화살표 C1 내지 C6의 방향으로 회전 가능하게 접속한다. 여기서는, 수직 다관절 로봇을 예로 들었지만, 수평 다관절 로봇(스칼라 로봇)이어도 된다. 또한, 6축 로봇을 예로 들었지만, 5축이나 7축 등 기타의 자유도의 다관절 로봇이어도 되고, 패럴렐 링크 로봇이어도 된다.
그리퍼(12)는, 1조의 끼움 지지부(12a)를 갖고, 끼움 지지부(12a)를 제어하여 부품을 끼움 지지한다. 그리퍼(12)는, 유연부(13)를 개재하여 암(11)의 선단(11a)과 접속되고, 암(11)의 이동에 수반하여 이동한다. 본 실시 형태에서는, 유연부(13)는 각 스프링의 기부가 정삼각형의 각 정점이 되는 위치 관계에 배치된 3개의 스프링(13a 내지 13c)으로 구성되지만, 스프링의 수는 몇개여도 된다. 또한, 유연부(13)는, 위치의 변동에 대하여 복원력이 발생하여, 유연성이 얻어지는 기구라면 기타의 기구여도 된다. 예를 들어, 유연부(13)는, 스프링이나 고무와 같은 탄성체, 댐퍼, 공기압 또는 액압 실린더 등이어도 된다. 유연부(13)는, 수동 요소로 구성되는 것이 바람직하고, 힘 제어에 의해 유연성을 얻는 기구는 제외한다. 유연부(13)에 의해, 암 선단(11a)과 그리퍼(12)는, 수평 방향 및 수직 방향으로, 5㎜ 이상, 바람직하게는 1㎝ 이상, 더욱 바람직하게는 2㎝ 이상, 상대 이동 가능하게 구성된다.
그리퍼(12)가 암(11)에 대하여 유연한 상태와 고정된 상태를 전환하는 기구를 마련해도 된다.
또한, 여기서는 암(11)의 선단(11a)과 그리퍼(12) 사이에 유연부(13)를 마련하는 구성을 예시했지만, 그리퍼(12)의 도중(예를 들어, 손가락 관절의 장소 또는 손가락의 주상 부분의 도중), 암의 도중(예를 들어, 관절 J1 내지 J6의 어느 장소 또는 암의 주상 부분의 도중)에 마련되어도 된다. 또한, 유연부(13)는, 이들 중 복수의 개소에 마련되어도 된다.
(학습 장치)
이어서, 학습 장치(20)에 대하여 설명한다.
도 3은, 본 실시 형태에 관한 학습 장치의 하드웨어 구성을 도시하는 블록도이다. 도 3에 도시한 바와 같이, 학습 장치(20)는, 일반적인 컴퓨터(정보 처리 장치)와 동일한 구성이고, CPU(Central Processing Unit)(31), ROM(Read Only Memory)(32), RAM(Random Access Memory)(33), 스토리지(34), 키보드(35), 마우스(36), 모니터(37) 및 통신 인터페이스(38)를 갖는다. 각 구성은, 버스(39)를 통해 서로 통신 가능하게 접속되어 있다.
본 실시 형태에서는, ROM(32) 또는 스토리지(34)에는, 학습 모델의 학습 처리를 실행하기 위한 학습 프로그램이 저장되어 있다. CPU(31)는, 중앙 연산 처리 유닛이고, 각종 프로그램을 실행하거나, 각 구성을 제어하거나 한다. 즉, CPU(31)는, ROM(32) 또는 스토리지(34)로부터 프로그램을 판독하고, RAM(33)을 작업 영역으로 하여 프로그램을 실행한다. CPU(31)는, ROM(32) 또는 스토리지(34)에 기록되어 있는 프로그램에 따라, 상기 각 구성의 제어 및 각종 연산 처리를 행한다. ROM(32)은, 각종 프로그램 및 각종 데이터를 저장한다. RAM(33)은, 작업 영역으로서 일시적으로 프로그램 또는 데이터를 기억한다. 스토리지(34)는, HDD(Hard Disk Drive), SSD(Solid State Drive), 또는 플래시 메모리로 구성되어, 오퍼레이팅 시스템을 포함하는 각종 프로그램 및 각종 데이터를 저장한다. 키보드(35) 및 마우스(36)는 입력 장치의 일례이고, 각종 입력을 행하기 위해 사용된다. 모니터(37)는, 예를 들어 액정 디스플레이이고, 유저 인터페이스를 표시한다. 모니터(37)는, 터치 패널 방식을 채용하여, 입력부로서 기능해도 된다. 통신 인터페이스(38)는, 다른 기기와 통신하기 위한 인터페이스이고, 예를 들어 이더넷(등록 상표), FDDI 또는 Wi-Fi(등록 상표) 등의 규격이 사용된다.
이어서, 학습 장치(20)의 기능 구성에 대하여 설명한다.
도 4는, 학습 장치의 기능 구성의 예를 도시하는 블록도이다. 도 4에 도시한 바와 같이, 학습 장치(20)는, 그 기능 구성으로서, 데이터 취득부(21), 성공 판정부(22), 보수 결정부(23), 학습부(24), 제어 명령 송신부(29)를 갖는다. 각 기능 구성은, CPU(31)가 ROM(32) 또는 스토리지(34)에 기억된 학습 프로그램을 판독하고, RAM(33)에 전개하여 실행함으로써 실현된다. 또한, 일부 또는 전부의 기능은 전용의 하드웨어 장치에 의해 실현되어도 상관없다.
데이터 취득부(21)는, 로봇(10)의 상태를 나타내는 데이터를 취득한다. 여기서는, 취득되는 데이터를 상태 관측 데이터라고 칭한다. 상태 관측 데이터는, 그리퍼(12) 혹은 그리퍼(12)에 의해 파지되는 부품의 위치 및 자세를 특정 가능한 데이터를 포함해도 된다. 상세는 후술하지만, 데이터 취득부(21)는, 예를 들어 관절의 인코더, 시각 센서(카메라), 모션 캡처, 힘 관련 센서(역각 센서, 토크 센서, 촉각 센서), 변위 센서로부터 상태 관측 데이터를 취득한다.
성공 판정부(22)는, 로봇(10)에 의한 동작이 소정의 성공 조건을 만족시켰는지 여부를 판정한다. 후술하는 바와 같이, 본 실시 형태에서는, 예를 들어 페그의 끼워 넣기 작업이라는 하나의 작업(스킬)을, 복수의 프리미티브 조작(MP)으로 분할하여 학습한다. 성공 판정부(22)는, 각 MP에 정해진 성공 조건을 만족시는지 여부를 판정한다. 성공 조건의 예는, 예를 들어 페그가 구멍 근방(비접촉)에 위치하고, 페그가 구멍 부근의 표면에 접촉하고, 페그의 선단이 구멍에 걸리고, 페그가 구멍에 걸리고 또한 구멍과 평행이고, 페그가 구멍에 완전히 끼워 넣어지는 것 등이다. 성공 판정부(22)는, 상태 관측 데이터에 기초하여 판정을 행해도 되고, 상태 관측 데이터와는 다른 데이터에 기초하여 판정을 행해도 된다.
보수 결정부(23)는, 상태 x(t)에서의 행동 u(t)에 대한 보수 r(t)을 결정한다. 예를 들어, 보수 결정부(23)는, 성공 판정부(22)에 의해 성공 판정되었을 때만 플러스의 보수를 부여하고, 그 이외의 보수를 제로로 한다. 성공 조건을 만족시키는 상태에 가까워지면 플러스의 보수를, 멀어지면 마이너스의 보수를 부여하도록 해도 된다.
학습부(24)는, 로봇(10)을 제어하기 위한 폴리시(28)(학습 모델)를 학습한다. 학습부(24)는, 로봇(10)의 상태 관측 데이터가 입력되면, 폴리시(28)에 기초하여 소정의 작업을 행하기 위해 적절한 다음의 1스텝의 행동을 출력한다.
본 실시 형태에서는 학습부(24)는, 모델 베이스 강화 학습을 사용하여 폴리시(28)를 획득한다. 즉, 학습부(24)의 상태 천이 모델 갱신부(25)는 로봇(10)의 상태 천이 모델을 학습하고, 학습부(24)의 폴리시 갱신부(26)는 학습된 상태 천이 모델을 사용하여 로봇(10)의 폴리시(28)를 학습한다. 상태 천이 모델은, 상태 x(t)와 그때의 행동 u(t)를 입력으로 하고, 행동 후의 상태 x(t+1)을 출력하는 모델이다. 폴리시(28)는, 상태 x(t)를 입력으로 하고, 취해야 할 행동 u(t)를 출력하는 모델이다. 폴리시 갱신부(26)는, 누적 기대 보수가 최대화되도록 폴리시(28)를 학습한다. 동작 결정부(27)(에이전트)는, 폴리시(28)를 실행하여 행동 u(t)를 출력한다.
제어 명령 송신부(29)는, 학습 중인 폴리시(28)에 따라 출력된 행동 u(t)에 기초하여, 로봇(10)에 대한 명령을 생성 및 송신한다.
(상태 관측 데이터의 종류)
여기서, 본 실시 형태에 있어서 이용될 수 있는 상태 관측 데이터에 대하여 설명한다. 상태 관측 데이터의 예는, 그리퍼(12)의 대상물에 접촉하는 부위에 있어서의 촉각 분포(예를 들어, 압력 분포)의 데이터, 그리퍼(12)의 끼움 지지부(12a)에 마련된 역각 센서에 의해 측정되는 힘, 로봇(10)의 관절의 인코더로부터 취득되는 각 관절의 각도 및 각속도, 로봇(10)의 관절에 가하는 토크, 로봇(10)의 암에 설치된 시각 센서에 의해 얻어지는 화상, 역각 센서에 의해 측정되는 로봇(10)의 유연부(13)가 받는 힘, 유연부(13)에 마련한 변위 센서에 의해 측정되는 유연부(13)를 끼우는 부위 사이의 상대적인 변위, 모션 캡처에 의해 측정되는 그리퍼(12)의 위치 및 자세를 들 수 있다.
관절 인코더로부터의 데이터로부터, 암 선단(11a)의 위치, 자세(각도), 속도, 자세의 변화에 대한 각속도가 구해진다. 또한, 각 시각의 위치 및 자세(각도)를 취득할 수 있으면 그 시간 변화(속도, 각속도)는 취득할 수 있으므로, 이하에는 시간 변화가 취득 가능한 것의 언급은 생략하는 경우도 있다. 시각 센서로부터의 데이터에 의해, 암(11)에 대한 그리퍼(12) 및 파지 대상물의 위치 및 자세가 구해진다. 힘 관련 센서로부터의 데이터에 의해서도, 암(11)에 대한 그리퍼(12)의 위치 및 자세, 또는 그리퍼(12)에 대한 파지 대상물의 위치 및 자세가 구해진다.
또한, 그리퍼(12)에 모션 캡처용의 마커가 설치되어 있는 경우에는, 모션 캡쳐 데이터에 의해서만 그리퍼(12)의 위치 및 자세를 취득할 수 있다. 암에 대한 파지 대상물의 위치 및 자세는 시각 센서나 힘 관련 센서를 사용하여 구해도 된다. 또한, 파지 대상물에도 마커가 설치되어 있으면, 파지 대상물의 위치 및 자세도 취득할 수 있다.
이하의 설명에서는 간단화를 위해, 상태 변수(상태 관측 데이터)가, 데카르트 좌표계에서의 그리퍼 또는 파지 대상물의 위치 및 속도인 것으로 하여 설명하는 경우가 있다. 그러나, 상태 변수는, 상기에서 설명한 데이터의 하나 또는 복수의 조합으로서 표현되어도 된다.
(모션 프리미티브(MP)와 차원 삭감)
모션 프리미티브에 대하여 설명한다. 본 실시 형태에서 학습하는 페그의 끼워 넣기 작업은, 복수의 동작 구간으로 분할되어, 각각의 구간마다 제어 모델의 학습이 행해진다. 이 동작 구간 각각이, 모션 프리미티브(Motion Primitive)이다. 모션 프리미티브는 MP, 프리미티브 조작이라고도 불린다.
도 5, 도 6을 참조하여, 본 실시 형태에 있어서의 페그의 끼워 넣기 작업을 구성하는 MP에 대하여 설명한다. 도 5에 있어서는, 부호 51은 암 선단, 52는 그리퍼, 53은 유연부, 54는 파지 대상물(페그), 55는 구멍을 나타낸다. 도 5의, 부호 56 및 57은 각각, 각 MP에 있어서 고려하는 상태 및 행동을 나타낸다. 도 6은, 각 MP의 내용 및 각 MP에 있어서 고려하는 상태 및 행동을 도 5보다도 구체적으로 설명한 도면이다.
페그 끼워 넣기 작업 전체의 목적은, 페그(54)를 구멍(55)에 삽입하는 것이다. 페그의 끼워 넣기 작업은, 다음의 5개의 MP로 분할되어, 각 MP에 있어서 지정된 목표값과의 오차가 역치 이하로 되면 다음의 MP로 천이된다.
n1: 어프로치
n2: 콘택트
n3: 피트
n4: 얼라인
n5: 인서트
「n1: 어프로치」는, 그리퍼(52)를 임의의 초기 위치로부터 구멍(55) 부근까지 접근시키는 동작이다. 「n2: 콘택트」는, 페그(54)를 구멍(55) 부근의 표면에 접촉시키는 동작이다. 유연부(53)를 고정 모드와 유연 모드로 전환 가능한 경우에는, 접촉 전에 유연부(53)를 유연 모드로 전환한다. 「n3: 피트」는, 페그가 표면에 접촉한 상태를 유지한 채 페그를 이동시키고, 페그의 선단이 구멍의 선단에 끼워지도록 하는 동작이다. 「n4: 얼라인」은, 페그의 선단이 구멍에 끼워져 접촉되어 있는 상태를 유지한 채, 페그의 자세가 구멍에 평행(이 예에서는 수직)이 되도록 하는 동작이다. 「n5: 인서트」는, 페그를 구멍의 바닥까지 삽입하는 동작이다.
「n1: 어프로치」 및 「n2: 콘택트」, 즉, 페그가 표면에 접촉되어 있지 않은 MP에서는 위치 제어에 의해 페그를 목표 위치까지 이동시키면 된다. 「n3: 피트」 「n4: 얼라인」 「n5: 인서트」, 즉, 페그가 환경에 접촉한 상태를 유지하는 MP(접촉 프리미티브 조작)에서는, 기계 학습에 기초하는 속도 제어에 의해 그리퍼 및 페그의 위치를 제어한다. 접촉 MP에 있어서의 기계 학습에서는, 상태 공간 및 행동 공간의 차원을 삭감한 학습 처리에 의해 폴리시(제어 모델)가 학습된다.
여기서는, 그리퍼 및 페그의 이동이 yz 평면 내에서 행해지는 것으로 하여 설명한다. 「n1: 어프로치」 MP에서는, 페그의 yz 위치를 입력으로 하고, yz면 내에서의 위치 제어를 행한다. 「n2: 콘택트」 MP에서는, 페그의 z위치를 입력으로 하고, z방향의 위치 제어를 행한다.
「n3: 피트」 MP에서는, 환경 구속과 암의 유연부(53)에 의해 z방향을 양으로 고려하지 않는 모델의 표현이 가능하다. 상태는 y방향의 위치·속도, 행동은 y방향의 속도 명령이라고 할 수 있다(도 6의 xfit 및 ufit). 페그(54)의 선단이 구멍(55)에 끼워졌을 때의 그리퍼의 위치를 목표값으로 한다.
「n4: 얼라인」 MP에서는, 상태는 그리퍼의 각도와 각속도, 행동은 y방향의 속도 명령이다(도 6의 xalign 및 ualign). 유연 손목은 6자유도(yz 2차원 평면상에서는 3자유도)의 변위가 가능하기 때문에, 페그의 선단과 구멍이 접촉한 상태 하에서는, y방향의 병진 운동만으로 페그의 회전 운동이 가능하다. 페그(54)의 자세가 수직으로 되었을 때의 그리퍼의 각도를 목표값으로 한다.
「n5: 인서트」 MP에서는, 상태는 z방향의 위치와 속도, 행동은 y방향과 z방향의 속도 명령 위치이다(도 6의 xinsertion 및 uinsertion). y방향의 속도 명령은, 페그(54)의 재밍(삽입 도중에 움직이지 않게 되는 것)을 회피하기 위해 도입되어 있다. 페그(54)가 구멍(55)의 바닥에 도달했을 때의 그리퍼의 위치를 목표 위치로 한다.
(학습 처리)
도 7은, 기계 학습을 사용하여 폴리시를 획득하는 학습 처리의 흐름을 도시하는 흐름도이다. 본 실시 형태에서는, 「피트」 「얼라인」 「인서트」의 3개의 MP에 있어서의 폴리시를 본 처리에 의해 획득한다. 도 7에 도시하는 흐름도는 하나의 MP의 폴리시에 대한 학습 처리이고, 각각의 MP에 대하여 이 학습 처리가 적용된다.
본 실시 형태에서는, 가우스 과정을 사용한 모델 베이스 강화 학습(Probabilistic Inference for Learning Control, PILCO)을 이용한다. 본 방법은, 샘플 효율(데이터 효율)이 높은 학습 방법이다.
스텝 S71에 있어서, 학습 장치(20)는, 로봇(10)의 상태 천이 모델을 획득한다. 구체적으로는, 제어 명령 송신부(29)는, 암 선단에 랜덤한 속도 제어 입력을 부여하고, 데이터 취득부(21)는, 그리퍼의 위치, 속도, 각도, 각속도의 데이터를 수집한다.
스텝 S72에 있어서, 학습 장치(20)는, 가우스 과정을 사용한 상태 천이 모델의 학습을 행한다. 구체적으로는, 상태 천이 모델 갱신부(25)는, 스텝 S71에서 취득된 데이터에 기초하여, 가우스 과정 회귀에 의한 상태 천이 모델의 갱신을 행한다. 가우스 과정 회귀는, 데이터로부터 함수의 형태를 결정하는 논파라메트릭의 회귀이고, 비선형의 표현이 가능하다. 가우스 과정 회귀는, 또한, 확률적인 예측에 의해 모델의 불확실성(노이즈나 데이터 부족에 의한 불확실성)을 표현할 수 있다. 본 방법에서는, 모델의 입력은, 어느 시각 t에 있어서의 상태(그리퍼의 위치와 속도, 각도와 각속도)와, 행동(암 선단의 목표 속도 명령)이고, 출력은 다음의 시각 t+1에 있어서의 상태이다.
스텝 S73에 있어서, 학습 장치(20)는, 학습 중인 상태 천이 모델을 사용하여, 폴리시(28)의 학습을 행한다. 폴리시란, 어느 상태 x에서 다음에 취해야 할 행동 u를 결정하는 사상 π(u|x)이다. 본 실시 형태에서는, 비선형 함수에 의한 결정적인 폴리시(가우스 과정의 예측 평균만을 사용)를 사용하고 있다. 폴리시는 폴리시 파라미터 θ(가우스 커널의 폭이나 기저)에 의해 표현된다. 폴리시 갱신부(26)는, 소정의 예측 호라이즌 t=0, …, T에 있어서 누적 기대 보수를 최대화시키는 폴리시 파라미터 θ를 결정한다. 누적 기대 보수는, 어느 초기 상태로부터 T스텝분의 상태 천이를 모델로부터 예측함으로써 계산된다. PILCO에서는 누적 기대 보수의 구배를 해석적으로 구할 수 있고, 폴리시 파라미터 θ를 일반적인 구배법(공역 구배법이나 L-BFGS)으로 구할 수 있다.
스텝 S74에 있어서, 학습 장치는 폴리시(28)의 학습이 완료되었는지 판단한다. 종료 조건은, 예를 들어 미리 지정된 반복 횟수의 종료, 폴리시 파라미터 θ의 변화가 역치 이하로 된다는 조건이다. 종료 조건을 만족시키지 않는 경우(S74-아니오)는 스텝 S75로 진행된다. 종료 조건을 만족시키는 경우(S74-예)는, 학습을 종료한다.
스텝 S75에 있어서, 동작 결정부(27)는, 학습 중인 폴리시(28)를 적용하여 다음의 동작 u(t+1)을 결정하고, 데이터 취득부(21)는 그 결과의 상태를 관측한다. 그 후에는 스텝 S72로 돌아가고, 여기서 취득된 상태 관측 데이터를 사용한 학습(상태 천이 모델의 갱신 및 폴리시의 갱신)이 반복된다.
하나의 MP에 있어서의 학습이 종료된 후에는 다음의 MP에 대한 학습이 행해진다. 또한, 폴리시 파라미터 θ는 MP마다 초기화할 필요가 있지만, 상태 천이 모델은 전회의 MP에서의 학습에 사용한 것을 초기 모델로서 이용한다.
이상의 처리에 의해, 복수의 MP에 대응한 폴리시를 획득할 수 있다.
또한, 학습 초기의 폴리시에 따라 행동하면 보수에 결부되는 행동을 선택할 수 없어, 학습이 진행되지 않는 경우가 있다. 그래서, 학습의 초기 단계에 있어서는, 인간이 로봇(10)을 수동으로 조작하여 얻어지는 상태 관측 데이터 및 행동에 기초하여, 모델의 갱신을 행해도 된다. 혹은, 로봇(10)을 모의한 모의 로봇을 인간이 수동으로 조작하여 얻어지는 상태 관측 데이터, 또는 인간이 자신의 신체로 연기하고, 그 연기를 센싱하여 얻어지는 상태 관측 데이터에 기초하여, 모델의 갱신을 행해도 된다. 이렇게 하면 보수가 얻어지는 행동이 빠른 단계에서 얻어지므로, 더 짧은 시간에서의 학습이 가능해진다.
(제어 장치)
도 8은, 로봇 시스템(1)의 운용 페이즈에 있어서의 구성을 도시한다. 운용 페이즈에서는, 로봇 시스템(1)은, 로봇(10)과 제어 장치(80)를 갖는다.
제어 장치(80)의 하드웨어 구성은 학습 장치(20)와 마찬가지이므로 반복의 설명은 생략한다. 제어 장치(80)는, 그 기능 구성으로서, 데이터 취득부(81), 성공 판정부(82), 제어부(84), 제어 명령 송신부(89)를 갖는다. 제어부(84)는, 동작 결정부(87)와 복수의 폴리시(학습 모델)(88)를 갖는다. 각 기능 구성은, CPU(31)가 ROM(32) 또는 스토리지(34)에 기억된 학습 프로그램을 판독하고, RAM(33)에 전개하여 실행함으로써 실현된다. 또한, 일부 또는 전부의 기능은 전용의 하드웨어 장치에 의해 실현되어도 상관없다.
데이터 취득부(81)는, 로봇(10)의 상태를 나타내는 데이터를 취득한다. 데이터 취득부(81)가 취득하는 데이터는, 학습 장치(20)의 경우와 마찬가지이기 때문에 반복의 설명은 생략한다. 또한, 학습 시에 센서 데이터에 대하여 차원 삭감을 행하는 경우에는, 운용 시에 있어서도 동일한 차원 삭감을 행한다.
성공 판정부(82)는, 로봇(10)에 의한 동작이 소정의 성공 조건을 만족시켰는지 여부를 판정한다. 성공 판정부(82)는, 학습 시와 마찬가지로 MP마다의 성공 조건을 판단한다.
제어부(84)는, 동작 결정부(87)와 복수의 폴리시(학습 모델)(88)를 갖는다. 동작 결정부(87)는, 데이터 취득부(81)에 의해 얻어지는 상태 관측 데이터와 폴리시(88)에 기초하여, 로봇(10)에 행하게 하는 행동을 결정한다. 또한, 「어프로치」 및 「콘택트」의 MP에 있어서는, 제어부(84)는, 그리퍼(12) 또는 페그의 위치와 구멍의 위치에 기초하는 위치 제어를 행한다. 한편, 「피트」 「얼라인」 「인서트」의 MP에 있어서는, 기계 학습에 의해 획득된 폴리시에 따라 로봇에 행하게 하는 행동을 결정한다.
제어부(84)는, 성공 판정부(82)로부터 현재의 MP의 성공 조건이 만족되었다고 판단되면, 다음 MP에 대응하는 폴리시(88)로 전환한다. 구체적으로는, 「어프로치」가 성공하면 「콘택트」에 대응하는 폴리시로 전환하고, 「콘택트」가 성공하면 「피트」에 대응하는 폴리시로 전환하고, 「피트」가 성공하면 「얼라인」에 대응하는 폴리시로 전환하고, 「얼라인」이 성공하면 「인서트」에 대응하는 폴리시로 전환한다. 「인서트」가 성공하면, 페그의 끼워 넣기 작업이 완료되었다고 판정한다.
제어 명령 송신부(89)는, 폴리시(88)에 따라 출력된 행동에 기초하여, 로봇(10)에 대한 명령을 생성 및 송신한다.
또한, 각각의 MP에 있어서 미리 정해진 타임 스텝 이내에 종료 조건을 만족시키지 않는 경우, 로봇(10)에 과잉의 힘이 가해진 경우, 지정 영역 외에 로봇이 도달한 경우에는 태스크를 중단하여 초기 상태로 복귀된다.
도 8에는 도시되어 있지 않지만, 제어 장치(80)는, 학습 장치(20)로서의 기능을 구비하여 추가의 기계 학습을 할 수 있도록 구성되어도 된다.
(효과의 검증)
먼저, 물리 연산 엔진을 사용한 시뮬레이션에 의해 본 방법의 효과를 확인했다. 시뮬레이션에서는, 2차원의 물리 연산 엔진(Box2D)을 사용했다.
도 9의 (A)는 시뮬레이션의 셋업을 설명하는 도면이다. 중앙의 사각(91)은 로봇 암 선단(11a)을 모방한 부분이고, 프레임(92)은 그리퍼(12)를 모방한 부분이고, 볼록부(94)는 페그(파지 대상물)를 모방한 부분이다. 암과 그리퍼는, 유연부(13)를 모방한 스프링(탄성체)(93)에 의해 접속되어 있다. 본 시뮬레이션에 있어서는, 페그는 그리퍼에 대하여 고정되어 있다.
이러한 조건에 있어서 「피트」 「얼라인」 「인서트」의 3개의 MP에 대한 폴리시를 상술한 모델 베이스 기계 학습에 의해 획득했다. 즉, 상태 공간 및 행동 공간의 차원 삭감(도 6 참조)을 실시하는 학습 처리를 행하였다. 비교로서, 차원 삭감을 행하지 않는 학습 처리도 행하였다. 차원 삭감을 행하지 않으면, 상태는 6차원(3자유도의 위치 및 속도), 행동은 2차원(수평 및 수직 방향의 속도)이다.
도 9의 (B) 내지 도 9의 (D)는, 「피트」 「얼라인」 「인서트」의 각 MP에 대하여, 각 시행 횟수에서의 오차를 도시하는 그래프이다. 횡축은 시행 횟수를 나타내고, 종축은 목표와의 오차를 나타낸다. 학습은 30세션 행하고, 꺾은선 그래프는 30세션의 평균값, 에러 바는 표준 편차를 나타낸다.
이 결과로부터, 차원 삭감의 유무에 관계 없이 충분한 정밀도로 각각의 동작을 학습할 수 있는 것을 파악할 수 있다. 단, 차원 삭감을 행함으로써 짧은 시행 횟수로 오차가 적은 학습이 가능해지는 것을 알 수 있다.
이어서 실제의 로봇을 사용하여 실험을 행하였다. 로봇은 도 2의 (A), 도 2의 (B)에 도시하는 구조를 갖는다. 또한, 그리퍼(12)에 모션 캡처 마커가 설치되어 있고, 그리퍼(12)의 위치 및 자세를 측정 가능하게 하고 있다. 또한, 페그는 그리퍼(12)에 고정되어 있고, 그리퍼(12)의 위치로부터 페그의 위치가 구해지도록 하고 있다. 여기서는, 차원 삭감 있음의 학습만을 행하고 있다.
도 10의 (A) 내지 도 10의 (C)는, 「피트」 「얼라인」 「인서트」의 각 MP에 대하여, 각 시행 횟수에서의 오차를 도시하는 그래프이다. 횡축은 시행 횟수를 나타내고, 종축은 목표와의 오차를 나타낸다. 학습은 10세션 행하고, 꺾은선 그래프는 10세션의 평균값, 에러 바는 표준 편차를 나타낸다. 「피트」 「얼라인」 「인서트」의 어느 MP에 있어서도, 5회 이내의 시행 횟수로 오차가 충분히 작게 할 수 있는 것을 알 수 있다.
<제2 실시 형태>
본 실시 형태는 기본적으로 제1 실시 형태와 마찬가지이지만, 상태 관측 데이터의 일부로서 힘 관련 센서의 계측값을 사용한다. 이하, 본 실시 형태에서 사용하는 힘 관련 센서 및 힘 관련 센서에 의해 얻어지는 데이터의 구체예에 대하여 설명한다.
일례로서, 그리퍼가 파지 대상물로부터 받는 힘을 측정하기 위해 촉각 센서를 사용할 수 있다.
도 11의 (A), 도 11의 (B)는, 그리퍼(12)에 마련되는 촉각 센서(12b)를 설명하는 도면이다. 그리퍼(12)의 1조의 끼움 지지부(12a)의 각각의 표면에 촉각 센서(12b)가 마련된다. 촉각 센서(12b)는, 예를 들어 마이크로 머시닝 기술에 의해 제작된 3방향의 힘 및 모멘트를 동시에 검출 가능한 6축 스트레인 게이지식의 촉각 센서이다. 이 타입의 센서는 역각 센서라고 불리는 경우도 있다. 무엇보다, 3축 혹은 1축의 촉각 센서를 사용해도 되고, 정전 용량식, 압전식, 광학식 등 기타의 검출 원리의 촉각 센서를 사용해도 된다. 촉각 센서(12b)는, 8×8화소의 다요소로 이루어지는 분포 촉각 센서이지만, 요소수는 더 많아도 되고 적어도 되고, 또한 1요소의 센서여도 된다.
촉각 센서(12b)를 사용함으로써, 그리퍼(12)가 파지 대상물(페그)을 어떻게 파지하고 있는지를 파악할 수 있다. 예를 들어, 촉각 센서(12b)의 측정값으로부터, 파지 대상물을 수직으로 파지하고 있는지 비스듬히 파지하고 있는지를 파악할 수 있다. 또한, 한 쌍의 끼움 지지부(12a)의 각각의 촉각 센서(12b)로부터 얻어지는 계측값의 차로부터, 그리퍼(12)가 수직인지 비스듬하게 되어 있는지를 파악할 수 있다. 또한, 촉각 센서(12b)의 계측값으로부터, 페그가 대상 표면에 접촉한 것, 페그가 구멍에 걸린 것, 페그의 방향을 구멍과 평행하게 할 수 있던 것, 페그를 구멍에 삽입할 때에 재밍이 발생한 것, 페그를 구멍의 바닥까지 삽입한 것 등을 파악할 수 있다.
다른 예로서, 유연부(13), 즉 그리퍼(12)와 암(11) 사이에 작용하는 힘을 측정하기 위해 변위 센서를 이용한 역각 센서를 사용할 수 있다. 도 11의 (C)는, 암 선단(11a)과 그리퍼(12) 사이의 거리(변위)를 측정하기 위한 변위 센서(15a, 15b)를 나타낸다. 변위 센서(15a, 15b)는 양자간의 거리의 변화를 측정한다. 변위 센서는, 암 선단(11a)과 그리퍼(12)에 복수조 마련되어도 된다. 변위 센서는 레이저식, 초음파식 등 임의의 타입의 것을 이용 가능하다. 암 선단(11a)과 그리퍼(12) 사이의 거리는, 스프링에 의해 접속되어 있는 암 선단(11a)과 그리퍼(12) 사이에 작용하는 힘에 상관되므로, 변위 센서(15a, 15b)는, 암 선단(11a)에 대한 그리퍼(12)의 위치 및 자세를 검출하는 것 외에, 역각 센서로서의 측면도 갖는다.
또한, 그리퍼(12)와 암(11) 사이에 작용하는 힘은, 변위 센서 이외에도, 변형 게이지 등의 역각 센서를 사용하여 측정해도 된다.
또한 다른 예로서, 유연부(13)와 그리퍼(12) 선단(파지 대상물과의 접촉 부분) 사이에 작용하는 힘을 측정하기 위해 역각 센서 또는 토크 센서를 사용할 수도 있다. 예를 들어, 그리퍼(12)의 끼움 지지부가 하나 또는 복수의 관절을 갖는 로봇 핸드인 경우에, 손가락 관절에 작용하는 힘을 역각 센서 또는 토크 센서에 의해 측정해도 된다.
이상의 설명에 있어서, 그리퍼(12)와 암(11) 사이에 작용하는 힘, 혹은 유연부(13)와 그리퍼(12) 선단 사이에 작용하는 힘에는, 힘의 측정 개소보다도 그리퍼 선단측의 로봇 자신의 질량에 의해 발생하는 힘(중력에 의한 힘, 운동 가속도에 의한 힘)의 성분이 포함되어도 된다.
로봇의 관절에 가해지는 힘은, 로봇의 관절을 움직이게 하는 모터에 흐르는 전류값에 기초하는 토크로서 측정할 수도 있지만, 변형 게이지식 등에 의한 역각 센서에 의해 측정한 쪽이 감도 혹은 고속 응답성이 우수한 경우가 많다.
학습 처리의 기본적인 알고리즘은 제1 실시 형태와 마찬가지이기 때문에 반복의 설명은 생략한다. 본 실시 형태에 따르면, 힘 관련 센서를 사용함으로써, 유연부보다도 전번의 그리퍼 및 파지 대상물의 상태를 더 정확하게 파악할 수 있으므로, 더 적절한 폴리시의 학습이 가능해진다.
<변형예>
상기 실시 형태는, 본 발명의 구성예를 예시적으로 설명하는 것에 지나지 않는다. 본 발명은 상기한 구체적인 형태에 한정되지 않고, 그 기술적 사상의 범위 내에서 다양한 변형이 가능하다.
학습 알고리즘으로서, PILCO를 이용하는 예를 설명했지만, PILCO 이외의 모델 베이스 강화 학습을 사용해도 되고, 모델 프리 강화 학습을 사용해도 된다. 또한, 강화 학습이 아니라, 지도 학습에 의해 학습 모델을 획득해도 된다. 지도 학습을 행하기 위해서는 다양한 상태에 있어서의 행동에 정답 라벨이 붙여진 교사 데이터를 준비할 필요가 있다.
상기한 예에서는, 페그의 끼워 넣기 작업을 예로 들어 설명했지만, 학습 및 제어 대상의 작업은 임의의 작업이어도 된다. 단, 본 발명은, 그리퍼 자체 혹은 그리퍼가 파지하는 부품이 환경과 접촉하는 동작을 포함하는 작업에 적합하다. 또한, 상기한 예에서는, 파지 대상물이 환경에 접촉하고 있는 동작 구간(MP)에서만 기계 학습에 의한 모델 획득을 행하고 있지만, 파지 대상물 또는 그리퍼가 환경에 접촉되어 있지 않은 동작 구간(MP)에 있어서도 기계 학습에 의한 모델 획득을 행해도 된다. 또한, 작업이 비교적 단순한 경우에는, 작업을 복수의 동작 구간으로 분할하지 않고 학습하여 모델 획득을 행해도 된다.
<부기>
1. 대상물을 파지하기 위한 그리퍼(12)와, 상기 그리퍼(12)를 이동시키기 위한 암(11)을 구비하고, 상기 그리퍼(12)의 도중, 상기 그리퍼(12)와 상기 암(11) 사이 및 상기 암(11)의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부(13)를 갖는 로봇(10)의 제어 장치(80)이며,
상기 유연부, 상기 유연부보다도 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 상기 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 수단(81)과,
상기 상태 관측 데이터가 입력되면, 상기 대상물에 대한 소정의 작업을 행하기 위한 상기 로봇의 행동을 출력하도록, 미리 기계 학습 된 학습 모델(86)을 포함하고, 상기 상태 취득 수단(81)에 의해 취득된 상태 관측 데이터를 상기 학습 모델(86)에 입력하여 얻어지는 출력에 기초하여, 상기 로봇을 제어하는 제어 수단(84)
을 구비하는, 제어 장치(80).
2. 대상물을 파지하기 위한 그리퍼(12)와,
상기 그리퍼(12)를 이동시키기 위한 암(11)과,
상기 그리퍼(12)의 도중, 상기 그리퍼(12)와 상기 암(11) 사이 및 상기 암(11)의 도중 중 적어도 어느 위치에 마련된 물리적으로 유연한 유연부(13)와,
상기 그리퍼(12)가 상기 대상물로부터 받는 힘, 또는 상기 그리퍼(12)와 상기 암(11) 사이에 작용하는 힘의 적어도 어느 것을 취득하는 역각 센서(12b, 15a, 15b)
를 구비하는 로봇(10).
3. 대상물을 파지하기 위한 그리퍼(12)와, 상기 그리퍼(12)를 이동시키기 위한 암(11)을 구비하고, 상기 그리퍼(12)의 도중, 상기 그리퍼(12)와 상기 암(11) 사이 및 상기 암(11)의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부(13)를 갖는 로봇(10)의 상기 유연부(13), 상기 유연부(13)보다도 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 상기 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 수단(21)과,
상기 상태 관측 데이터가 입력되면, 상기 대상물에 대한 소정의 작업을 행하기 위한 상기 로봇(10)의 행동을 출력하는 학습 모델을 획득하는 학습 수단(24)
을 포함하는, 학습 장치(20).
1: 로봇 시스템
10: 로봇
11: 암
12: 그리퍼
13: 유연부
20: 학습 장치
80: 제어 장치

Claims (21)

  1. 대상물을 파지하기 위한 그리퍼와, 상기 그리퍼를 이동시키기 위한 암을 구비하고, 상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇의 제어 장치이며,
    상기 유연부, 상기 유연부보다도 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 상기 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 수단과,
    상기 상태 관측 데이터가 입력되면, 상기 대상물에 대한 소정의 작업을 행하기 위한 상기 로봇의 행동을 출력하도록, 미리 기계 학습된 학습 모델을 포함하고, 상기 상태 취득 수단에 의해 취득된 상태 관측 데이터를 상기 학습 모델에 입력하여 얻어지는 출력에 기초하여, 상기 로봇을 제어하는 제어 수단을 구비하는, 제어 장치.
  2. 제1항에 있어서, 상기 소정의 작업은, 복수의 프리미티브 조작을 포함하고,
    상기 제어 수단은, 상기 복수의 프리미티브 조작에 대응한, 복수의 학습 모델을 포함하는, 제어 장치.
  3. 제2항에 있어서, 상기 복수의 프리미티브 조작은, 상기 그리퍼 또는 상기 그리퍼에 파지된 상기 대상물이 환경에 접촉 또는 근접하고 있는 구속 상태를 유지하면서 동작하도록 상기 로봇을 제어하는 구속 프리미티브 조작을 하나 또는 복수 포함하는, 제어 장치.
  4. 제3항에 있어서, 상기 구속 프리미티브 조작에 대응하는 학습 모델은, 상태 공간 및 행동 공간의 차원을 삭감한 학습 처리에 의해 학습되는, 제어 장치.
  5. 제1항에 있어서, 상기 학습 모델은, 복수의 프리미티브 조작으로 분할되지 않는 조작의 전체 또는 하나의 프리미티브 조작에 있어서, 상기 그리퍼 또는 상기 그리퍼에 파지된 상기 대상물이 환경에 접촉 또는 근접하고 있는 구속 상태를 유지하면서 동작하는 행동을 포함하는 행동을 출력하는, 제어 장치.
  6. 제5항에 있어서, 상기 학습 모델은, 상기 구속 상태를 유지하면서 상기 로봇을 제어하는 것에 관해서는, 상태 공간 및 행동 공간의 차원을 삭감한 학습 처리에 의해 학습되는, 제어 장치.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 유연부는, 상기 그리퍼와 상기 암 사이에 마련되고,
    상기 유연 관련 관측 데이터는,
    상기 그리퍼가 상기 대상물로부터 받는 힘에 관련되는 힘 관련 센싱 데이터,
    상기 그리퍼의 위치, 속도, 자세 및 자세의 변화에 대한 각속도의 적어도 어느 것,
    상기 그리퍼와 상기 암 사이의 상대적인 거리 및 상대적인 각도의 적어도 어느 것,
    상기 유연부가 받는 힘에 관련되는 힘 관련 센싱 데이터,
    상기 대상물, 상기 그리퍼 및 상기 유연부의 적어도 어느 것을 촬상한 화상에 기초하는 데이터
    의 적어도 어느 것을 포함하는, 제어 장치.
  8. 대상물을 파지하기 위한 그리퍼와, 상기 그리퍼를 이동시키기 위한 암을 구비하고, 상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇과,
    제1항 내지 제6항 중 어느 한 항에 기재된 제어 장치를 구비하는, 로봇 시스템.
  9. 대상물을 파지하기 위한 그리퍼와,
    상기 그리퍼를 이동시키기 위한 암과,
    상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 마련된 물리적으로 유연한 유연부와,
    상기 유연부, 상기 유연부보다도 상기 대상물을 파지하는 측의 부위 및 파지된 대상물의 적어도 어느 것의 상태를 검출하는 센서를 구비하는, 로봇.
  10. 대상물을 파지하기 위한 그리퍼와, 상기 그리퍼를 이동시키기 위한 암을 구비하고, 상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇의 상기 유연부, 상기 유연부보다도 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 상기 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 수단과,
    상기 상태 관측 데이터가 입력되면, 상기 대상물에 대한 소정의 작업을 행하기 위한 상기 로봇의 행동을 출력하는 학습 모델을 획득하는 학습 수단을 포함하는, 학습 장치.
  11. 제10항에 있어서, 상기 학습 수단은, 강화 학습 또는 심층 학습에 의해 상기 학습 모델을 획득하는, 학습 장치.
  12. 제11항에 있어서, 상기 학습 수단은, 모델 베이스 강화 학습 또는 모델 프리 강화 학습에 의해 상기 학습 모델을 획득하는, 학습 장치.
  13. 제10항 내지 제12항 중 어느 한 항에 있어서, 상기 소정의 작업은, 복수의 프리미티브 조작을 포함하고,
    상기 학습 수단은, 상기 복수의 프리미티브 조작에 대응한, 복수의 학습 모델을 획득하는, 학습 장치.
  14. 제13항에 있어서, 상기 학습 수단은, 상기 복수의 프리미티브 조작 중 적어도 어느 것의 프리미티브 조작에 있어서는, 상기 그리퍼 또는 상기 그리퍼에 파지된 상기 대상물이 환경에 접촉 또는 근접하고 있는 구속 상태를 유지하면서 동작하는 행동을 출력하는 상기 학습 모델을 획득하는, 학습 장치.
  15. 제14항에 있어서, 상기 학습 수단은, 상기 구속 상태를 유지하도록 상기 로봇을 제어하는 프리미티브 조작에 있어서는, 상태 공간 및 행동 공간의 차원을 삭감하여 학습을 행하는, 학습 장치.
  16. 제10항 내지 제12항 중 어느 한 항에 있어서, 상기 학습 수단은, 복수의 프리미티브 조작으로 분할되지 않는 조작의 전체 또는 하나의 프리미티브 조작에 있어서, 상기 그리퍼 또는 상기 그리퍼에 파지된 상기 대상물이 환경에 접촉 또는 근접하고 있는 구속 상태를 유지하면서 동작하는 행동을 포함하는 행동을 출력하는 상기 학습 모델을 획득하는, 학습 장치.
  17. 제16항에 있어서, 상기 학습 수단은, 상기 구속 상태를 유지하도록 상기 로봇을 제어하는 것에 관해서는, 상태 공간 및 행동 공간의 차원을 삭감하여 학습을 행하는, 학습 장치.
  18. 제10항 내지 제12항 중 어느 한 항에 있어서, 상기 학습 수단은,
    인간이 자신의 신체로 연기하거나, 또는 상기 로봇 혹은 모의 로봇을 조작하여 얻어지는 상태 관측 데이터를 사용하여 학습하는 제1 학습 수단과,
    제1 학습 수단에 의해 얻어지는 폴리시에 기초하여 행동한 결과로서 얻어지는 상태 관측 데이터를 사용하여 학습하는 제2 학습 수단을 포함하는, 학습 장치.
  19. 대상물을 파지하기 위한 그리퍼와, 상기 그리퍼를 이동시키기 위한 암을 구비하고, 상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇의 제어 방법이며,
    상기 유연부, 상기 유연부보다도 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 상기 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 스텝과,
    상기 상태 관측 데이터가 입력되면, 상기 대상물에 대한 소정의 작업을 행하기 위한 상기 로봇의 행동을 출력하도록, 미리 기계 학습된 학습 모델을 사용하여, 상기 상태 취득 스텝에 있어서 취득된 상태 관측 데이터로부터 얻어지는 출력에 기초하여, 상기 로봇을 제어하는 제어 스텝을 포함하는, 제어 방법.
  20. 대상물을 파지하기 위한 그리퍼와, 상기 그리퍼를 이동시키기 위한 암을 구비하고, 상기 그리퍼의 도중, 상기 그리퍼와 상기 암 사이 및 상기 암의 도중 중 적어도 어느 위치에 물리적으로 유연한 유연부를 갖는 로봇의 상기 유연부, 상기 유연부보다도 대상물을 파지하는 측의 상기 로봇의 부위 및 파지된 상기 대상물의 적어도 어느 상태에 대한 관측 데이터인 유연 관련 관측 데이터를 포함하는 상태 관측 데이터를 취득하는 상태 취득 스텝과,
    상기 로봇의 상태 관측 데이터가 입력되면, 상기 대상물에 대한 소정의 작업을 행하기 위한 상기 로봇의 행동을 출력하는 학습 모델을 획득하는 학습 스텝을 포함하는, 학습 방법.
  21. 제19항 또는 제20항에 기재된 방법의 각 스텝을 컴퓨터에 실행시키기 위한, 기록 매체에 저장된 컴퓨터 프로그램.
KR1020210021112A 2020-03-13 2021-02-17 제어 장치, 로봇, 학습 장치, 로봇 시스템 및 방법 KR102513854B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020044422A JP7463777B2 (ja) 2020-03-13 2020-03-13 制御装置、学習装置、ロボットシステム、および方法
JPJP-P-2020-044422 2020-03-13

Publications (2)

Publication Number Publication Date
KR20210116229A true KR20210116229A (ko) 2021-09-27
KR102513854B1 KR102513854B1 (ko) 2023-03-27

Family

ID=74591803

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210021112A KR102513854B1 (ko) 2020-03-13 2021-02-17 제어 장치, 로봇, 학습 장치, 로봇 시스템 및 방법

Country Status (6)

Country Link
US (1) US11745338B2 (ko)
EP (1) EP3900889A1 (ko)
JP (1) JP7463777B2 (ko)
KR (1) KR102513854B1 (ko)
CN (1) CN113386123A (ko)
TW (1) TWI827907B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11607816B2 (en) * 2019-10-25 2023-03-21 Dexterity, Inc. Detecting robot grasp of very thin object or feature
US11772262B2 (en) 2019-10-25 2023-10-03 Dexterity, Inc. Detecting slippage from robotic grasp
JP2022143969A (ja) * 2021-03-18 2022-10-03 株式会社東芝 データ生成装置、データ生成方法、制御装置、制御方法及びプログラム
JP2022162857A (ja) * 2021-04-13 2022-10-25 株式会社デンソーウェーブ 機械学習装置及びロボットシステム
JP2022181522A (ja) * 2021-05-26 2022-12-08 サーパス工業株式会社 液体供給装置および液体供給方法
JP2023020204A (ja) * 2021-07-30 2023-02-09 サーパス工業株式会社 液体供給装置および液体供給装置の制御方法
CN114505859B (zh) * 2022-02-23 2023-12-01 四川锋准机器人科技有限公司 一种种植牙手术机器人末端柔顺控制方法
US20230271319A1 (en) * 2022-02-28 2023-08-31 Denso Wave Incorporated Method of generating a learning model for transferring fluid from one container to another by controlling robot arm based on a machine-learned learning model, and a method and system for weighing the fluid

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000042962A (ja) 1998-07-23 2000-02-15 Seiko Seiki Co Ltd 制御系のモード切替え機能を有するロボット制御装置
JP2015083324A (ja) 2013-10-25 2015-04-30 キヤノン電子株式会社 ワーク挿入装置
KR20160124770A (ko) * 2014-02-20 2016-10-28 엠비엘 리미티드 로봇식 요리용 키친에서의 음식 준비를 위한 방법 및 시스템
KR101688867B1 (ko) * 2016-04-01 2016-12-22 한국기계연구원 변위 측정이 가능한 수동 강성 그리퍼 및 가변 수동 강성 그리퍼
KR20190102250A (ko) * 2017-02-09 2019-09-03 미쓰비시덴키 가부시키가이샤 위치 제어 장치 및 위치 제어 방법

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI464046B (zh) * 2010-01-11 2014-12-11 Hon Hai Prec Ind Co Ltd 機器人臂部件
US9384448B2 (en) * 2011-12-28 2016-07-05 General Electric Company Action-based models to identify learned tasks
US8843236B2 (en) * 2012-03-15 2014-09-23 GM Global Technology Operations LLC Method and system for training a robot using human-assisted task demonstration
CN103510149B (zh) * 2013-10-14 2015-11-18 陈功 一种带电解抛光液的湿式自动抛光方法及其设备
JP6003942B2 (ja) * 2014-04-24 2016-10-05 トヨタ自動車株式会社 動作制限装置及び動作制限方法
US10518409B2 (en) * 2014-09-02 2019-12-31 Mark Oleynik Robotic manipulation methods and systems for executing a domain-specific application in an instrumented environment with electronic minimanipulation libraries
JP6522488B2 (ja) 2015-07-31 2019-05-29 ファナック株式会社 ワークの取り出し動作を学習する機械学習装置、ロボットシステムおよび機械学習方法
WO2017171303A1 (ko) * 2016-04-01 2017-10-05 한국기계연구원 수동 강성 그리퍼
US10500726B2 (en) * 2016-04-25 2019-12-10 Kindred Systems Inc. Facilitating device control
JP2018126797A (ja) * 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
CN110662634B (zh) * 2017-05-29 2022-12-23 富兰卡爱米卡股份有限公司 用于控制关节型机器人的致动器的系统和方法
US10792809B2 (en) 2017-12-12 2020-10-06 X Development Llc Robot grip detection using non-contact sensors
JP6857332B2 (ja) * 2018-03-13 2021-04-14 オムロン株式会社 演算装置、演算方法、及びそのプログラム
JP7167141B2 (ja) 2018-05-25 2022-11-08 川崎重工業株式会社 ロボットシステム及び追加学習方法
TWI787531B (zh) * 2018-07-16 2022-12-21 開曼群島商星猿哲科技國際有限公司 用於揀選、分類及放置複數個隨機及新物件之機器人系統
CN108925231A (zh) * 2018-08-23 2018-12-04 安徽理工大学 一种柔性水果采摘车
US20200095001A1 (en) * 2018-09-26 2020-03-26 Dexterity, Inc. Robotic kitting system
US20210402598A1 (en) * 2018-10-10 2021-12-30 Sony Corporation Robot control device, robot control method, and robot control program
CN109048924A (zh) * 2018-10-22 2018-12-21 深圳控石智能系统有限公司 一种基于机器学习的智能机器人柔性作业装置及其方法
JP6904327B2 (ja) * 2018-11-30 2021-07-14 オムロン株式会社 制御装置、制御方法、及び制御プログラム
US11345030B2 (en) * 2019-05-28 2022-05-31 Intel Corporation Methods and apparatus for complex assembly via autonomous robots using reinforcement learning action primitives
CN110026987B (zh) * 2019-05-28 2022-04-19 广东工业大学 一种机械臂抓取轨迹的生成方法、装置、设备及存储介质
US11389957B2 (en) * 2019-09-30 2022-07-19 Mitsubishi Electric Research Laboratories, Inc. System and design of derivative-free model learning for robotic systems
US11458630B2 (en) * 2019-10-15 2022-10-04 X Development Llc Mitigating reality gap through simulating compliant control and/or compliant contact in robotic simulator
JP2021094677A (ja) * 2019-12-19 2021-06-24 本田技研工業株式会社 ロボット制御装置、ロボット制御方法、プログラム及び学習モデル

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000042962A (ja) 1998-07-23 2000-02-15 Seiko Seiki Co Ltd 制御系のモード切替え機能を有するロボット制御装置
JP2015083324A (ja) 2013-10-25 2015-04-30 キヤノン電子株式会社 ワーク挿入装置
KR20160124770A (ko) * 2014-02-20 2016-10-28 엠비엘 리미티드 로봇식 요리용 키친에서의 음식 준비를 위한 방법 및 시스템
KR101688867B1 (ko) * 2016-04-01 2016-12-22 한국기계연구원 변위 측정이 가능한 수동 강성 그리퍼 및 가변 수동 강성 그리퍼
KR20190102250A (ko) * 2017-02-09 2019-09-03 미쓰비시덴키 가부시키가이샤 위치 제어 장치 및 위치 제어 방법

Also Published As

Publication number Publication date
JP7463777B2 (ja) 2024-04-09
TW202134926A (zh) 2021-09-16
US20210283771A1 (en) 2021-09-16
JP2021142632A (ja) 2021-09-24
KR102513854B1 (ko) 2023-03-27
TWI827907B (zh) 2024-01-01
US11745338B2 (en) 2023-09-05
CN113386123A (zh) 2021-09-14
EP3900889A1 (en) 2021-10-27

Similar Documents

Publication Publication Date Title
KR102513854B1 (ko) 제어 장치, 로봇, 학습 장치, 로봇 시스템 및 방법
Pfrommer et al. Contactnets: Learning discontinuous contact dynamics with smooth, implicit representations
Skubic et al. Acquiring robust, force-based assembly skills from human demonstration
Gullapalli et al. Learning reactive admittance control.
Killpack et al. Model predictive control for fast reaching in clutter
Billard et al. Learning for adaptive and reactive robot control: a dynamical systems approach
Jha et al. Imitation and supervised learning of compliance for robotic assembly
Andre et al. Reliable robot assembly using haptic rendering models in combination with particle filters
Girgin et al. Associative skill memory models
WO2022044615A1 (ja) 学習装置、学習方法、学習プログラム、制御装置、制御方法、及び制御プログラム
WO2022080132A1 (ja) 軌道生成装置、軌道生成方法、及び軌道生成プログラム
CN116867620A (zh) 机器人模型的学习装置、机器人模型的机器学习方法、机器人模型的机器学习程序、机器人控制装置、机器人控制方法、以及机器人控制程序
Mao et al. Reducing uncertainty in pose estimation under complex contacts via force forecast
Yu et al. Design of a gripper system for tendon-driven telemanipulators considering semi-automatic spring mechanism and eye-in-hand camera system
Thompson et al. Cognitive Grasping and Manipulation of Unknown Object with Control Grip Force using Cyber Physical System Approach
Khalil et al. Robotic interaction with deformable objects under vision and tactile guidance-a review
JP7452257B2 (ja) 制御装置、ロボットシステム、およびロボットの制御方法
JP7278491B2 (ja) エラストマー触覚センサ
Cervera et al. Sensor-based learning for practical planning of fine motions in robotics
Fu et al. Machine Learning Based Deflection Prediction and Inverse Design for Discrete Variable Stiffness Units
Grube et al. Modeling and Advanced Control for Designing a Soft Material Robot
Tang Skill learning for industrial robot manipulators
Jayasekara Development of bio-mimetic force attentive robot head
Jaura Robotic assembly of splined shaft-hole using hybrid compliance control and machine learning based logic branching algorithm
Chen et al. Teaching by Showing for Automatic Assembly Through a Virtual Environment

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant