KR20210049689A - 로봇을 제어하기 위한 방법 및 로봇 제어기 - Google Patents

로봇을 제어하기 위한 방법 및 로봇 제어기 Download PDF

Info

Publication number
KR20210049689A
KR20210049689A KR1020200137948A KR20200137948A KR20210049689A KR 20210049689 A KR20210049689 A KR 20210049689A KR 1020200137948 A KR1020200137948 A KR 1020200137948A KR 20200137948 A KR20200137948 A KR 20200137948A KR 20210049689 A KR20210049689 A KR 20210049689A
Authority
KR
South Korea
Prior art keywords
space
robot
candidate evaluation
parameter
search
Prior art date
Application number
KR1020200137948A
Other languages
English (en)
Inventor
레오넬 로소
노에미 야크뷔어
Original Assignee
로베르트 보쉬 게엠베하
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 로베르트 보쉬 게엠베하 filed Critical 로베르트 보쉬 게엠베하
Publication of KR20210049689A publication Critical patent/KR20210049689A/ko

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/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • 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/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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • 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/40269Naturally compliant robot arm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • Fuzzy Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Manipulator (AREA)
  • Feedback Control In General (AREA)

Abstract

다양한 실시예들에 따르면, 비-유클리드 제어 파라미터 공간으로부터의 제어 파라미터 값들을 사용하여 로봇을 제어하기 위한 방법으로서, 제어 파라미터 공간에 걸쳐 로봇의 원하는 제어 목적을 표현하는 목적 함수의 베이지안 최적화를 수행하는 단계 - 목적 함수의 평가 지점들은 반복 검색에서 취득 함수의 최적값을 검색함으로써 결정되며, 반복 검색은 각각의 반복에서, 후보 평가 지점에서의 파라미터 공간의 탄젠트 공간에서의 검색 방향을 사용하여 후보 평가 지점을 업데이트하는 단계; 업데이트된 후보 평가 지점을 탄젠트 공간으로부터 파라미터 공간으로 매핑하는 단계; 및 정지 기준이 충족될 때까지, 매핑된 업데이트된 후보 평가 지점을 다음 반복을 위한 평가 지점으로서 사용하는 단계를 포함함 - ; 및 베이지안 최적화에서 발견된 제어 파라미터 값에 따라 로봇을 제어하는 단계를 포함하는 방법이 설명된다.

Description

로봇을 제어하기 위한 방법 및 로봇 제어기{METHOD FOR CONTROLLING A ROBOT AND ROBOT CONTROLLER}
본 개시내용은 로봇을 제어하기 위한 방법들 및 로봇 제어기들에 관한 것이다.
최근, 베이지안 최적화(Bayesian optimization)(BO)는 그것의 데이터 효율성과 기울기없는 접근방식(gradient-free approach)으로 인해, 직접 강화 학습(direct reinforcement learning)에서 제어 파라미터들 및 파라미터 정책들을 최적화하기 위해 로봇공학에서 인기를 얻었다.
IEEE 회의록 104(1): 148-175, 2016에서 B. Shahriari 등에 의해 공개된 "Taking the humans out of the loop: A review of Bayesian optimization"은 베이지안 최적화에 대한 소개를 제공하고, 그것의 방법론적 양태들 중 일부를 강조하며, 광범위한 응용들을 보여준다.
그러나, 파라미터 공간이 고차원일 때, 로봇 제어 파라미터들을 최적화하기 위한 베이지안 최적화의 성능은 심각하게 손상될 수 있다. 또한, 로봇 제어의 파라미터 공간들은 비-유클리드(non-Euclidean)일 수 있다는 점에 유의해야 한다. 예를 들어, 강성(stiffness)은 양정치 행렬(positive definite matrix)에 의해 표현될 수 있고(즉, 파라미터 공간이 대칭 양정치 행렬의 매니폴드를 형성함), 단위 구체(unit sphere) 상의 벡터들은 방향들을 표현하기 위해 사용될 수 있다.
상술한 것을 고려하여, 비-유클리드 파라미터 공간들에 대한 베이지안 최적화를 수행하기 위한 효율적인 접근방식들이 바람직하다.
다양한 실시예들에 따르면, 비-유클리드 제어 파라미터 공간으로부터의 제어 파라미터 값들을 사용하여 로봇을 제어하기 위한 방법으로서, 제어 파라미터 공간에 걸쳐 로봇의 원하는 제어 목적을 표현하는 목적 함수의 베이지안 최적화를 수행하는 단계 - 목적 함수의 평가 지점들은 반복 검색에서 취득 함수의 최적값을 검색함으로써 결정되며, 반복 검색은, 각각의 반복에서, 후보 평가 지점에서의 파라미터 공간의 탄젠트 공간에서의 검색 방향을 사용하여 후보 평가 지점을 업데이트하는 단계; 업데이트된 후보 평가 지점을 탄젠트 공간으로부터 파라미터 공간으로 매핑하는 단계; 및 정지 기준이 충족될 때까지, 매핑된 업데이트된 후보 평가 지점을 다음 반복을 위한 평가 지점으로서 사용하는 단계를 포함함 - ; 및 베이지안 최적화에서 발견된 제어 파라미터 값에 따라 로봇을 제어하는 단계를 포함하는 방법이 제공된다. 이 방법은 제1 예를 제공한다.
다른 실시예에 따르면, 위에서 설명된 방법을 수행하도록 구성된 로봇 제어기가 제공된다.
위와 같은 로봇 제어 방법과 로봇 제어기는, 기하구조 인식(geometry-awareness)을 베이지안 최적화에 적용하는 것을 허용하여, 그것의 성능 및 확장성을 개선하고, 특히, 기하구조를 인식하지 못하는 베이지안 최적화 구현들에 비해 더 빠른 수렴, 더 나은 정확도 및 더 낮은 솔루션 분산을 제공한다. 실험에 따르면, 이러한 효과들은 매니폴드 차원이 증가함에 따라 증가한다.
따라서, 로봇 제어 방법 및 로봇 제어기는 비-유클리드 기하구조들을 디스플레이할 때, 고려되는 시스템의 파라미터들을 수정함으로써, 미출현 조건들(unseen conditions)에 대한 로봇 기술 학습 또는 적응을 위한 효율적인 접근방식을 제공한다. 베이지안 최적화 프레임워크에 도메인 지식을 도입하고, 로봇공학에서 발생하는 비-유클리드 파라미터 공간들의 기하구조(예를 들어, 방향, 강성 행렬)를 활용함으로써, 베이지안 최적화는 기하구조 인식 커널 함수들을 통해 파라미터 공간 내에서의 유사성들을 적절하게 측정할 수 있고, 매니폴드 상에서의 취득 함수를 제약없는 문제로서 최적화한다.
이하에서는 추가의 예들이 제공된다.
예 2는 켤레 기울기 방법(conjugate gradient method)에 따라 검색 방향을 결정하는 단계를 포함하는, 예 1에 따른 방법(즉, 위에서 설명된 바와 같은 제1 예)이다.
최적화를 위해 켤레 기울기를 사용함으로써, 빠른 수렴이 달성될 수 있다.
예 3은 매핑된 업데이트된 후보 평가 지점에서의 취득 함수의 기울기를, 평행 이동(parallel transport)에 의해 매핑된 업데이트된 후보 평가 지점에서의 파라미터 공간의 탄젠트 공간에 매핑된 후보 평가 지점에서의 복수의 검색 방향에 의해 수정함으로써, 매핑된 업데이트된 후보 평가 지점에 대한 검색 방향을 결정하는 단계를 포함하는, 예 2에 따른 방법이다.
예 4는 후보 평가 지점에서의 탄젠트 공간의 지수 맵을 사용하여, 업데이트된 후보 평가 지점을 탄젠트 공간으로부터 파라미터 공간으로 매핑하는 단계를 포함하는, 예 1 내지 예 3 중 어느 하나에 따른 방법이다.
예 3 및 예 4는 매니폴드를 형성하는 제어 파라미터 공간에, 켤레 기울기 방법을 효율적으로 적용하는 것을 허용한다.
예 5는 파라미터 공간은 리만 매니폴드(Riemannian manifold)이고, 베이지안 최적화는 리만 매니폴드의 유도된 메트릭(induced metric)에 의존하는 커널을 갖는 대리 모델(surrogate model)로서 가우스 프로세스를 사용하는, 예 1 내지 예 4 중 어느 하나에 따른 방법이다.
즉, 제어 파라미터들의 유사성의 적절한 측정을 허용하는 기하구조 인식 커널이 사용된다.
예 6은 커널을 커널 양정치로 하기 위해 커널의 파라미터를 설정하는 단계를 더 포함하는, 예 5에 따른 방법이다.
이것은 가우스 대리 모델을 비-유클리드 제어 파라미터 매니폴드에 유효하게 적용하는 것을 허용한다.
예 7은 파라미터 공간의 다수의 무작위로 샘플링된 지점 쌍들에 대한 커널 행렬들을 계산하고, 커널의 파라미터를 커널 행렬들이 양정치로 되는 최소값으로 설정하는 단계를 포함하는, 예 5 또는 예 6에 따른 방법이다.
이 절차를 통해, 가우스 대리 모델의 커널이 양정치임을 보장하는 커널 파라미터가 효율적으로 발견될 수 있다.
예 8은 후보 평가 지점을 업데이트하는 단계가 검색 방향을 따른 라인 검색을 포함하는, 예 1에 따른 방법이다.
후보 평가 지점을 업데이트하기 위해 라인 검색을 적용하는 것은 최적값으로의 빠른 수렴을 달성하는 것을 허용한다.
예 9는 파라미터 공간이 대칭 양정치 행렬들의 매니폴드 또는 구체인, 예 1 내지 예 8 중 어느 하나에 따른 방법이다.
이러한 파라미터 공간들은 특히 로봇 제어에 유용하다.
예 10은 목적 함수가 로봇의 부분의 원하는 위치를 표현하는, 예 1 내지 예 9 중 어느 하나에 따른 방법이다.
예 11은 파라미터 값들은 강성(stiffness), 관성, 조작성(manipulability), 방향, 또는 자세를 표현하는, 예 1 내지 예 10 중 어느 하나에 따른 방법이다.
예 12는 예 1 내지 예 11 중 어느 하나의 방법을 수행하도록 구성되는 로봇 제어기이다.
예 13은 프로세서에 의해 실행될 때, 프로세서로 하여금 예 1 내지 예 11 중 어느 하나에 따른 방법을 수행하게 하는 명령어들을 포함하는 컴퓨터 프로그램이다.
예 14는 프로세서에 의해 실행될 때, 프로세서로 하여금 예 1 내지 예 11 중 어느 하나에 따른 방법을 수행하게 하는 명령어들을 저장하는 컴퓨터 판독가능한 매체이다.
도면들에서, 유사한 참조 부호들은 일반적으로 상이한 도면들 전체에서 동일한 부분들을 참조한다. 도면들은 반드시 비례에 맞지는 않으며, 대신 일반적으로 본 발명의 원리를 설명하는 것에 강조를 둔다. 이하의 설명에서, 이하의 도면들을 참조하여 다양한 양태들이 설명된다.
도 1은 로봇 디바이스 배열을 보여준다.
도 2는 예를 들어 로봇 엔드 이펙터의 가능한 방향을 각각 표현할 수 있는 지점들을 갖는 구체 매니폴드
Figure pat00001
의 도시를 보여준다.
도 3은 예를 들어 강성 타원체를 각각 표현할 수 있는 지점들을 갖는 SPD 매니폴드
Figure pat00002
의 도시를 보여준다.
도 4는 양정치 측지 커널 행렬들의 백분율, 및 그들의 최소 고유값
Figure pat00003
의 분포를 각각
Figure pat00004
Figure pat00005
에 대한 β의 함수로서 보여주는 다이어그램들을 도시한다.
도 5는 실시예에 따른 비-유클리드 제어 파라미터 공간으로부터의 제어 파라미터 값들을 사용하여 로봇을 제어하기 위한 방법을 도시하는 흐름도를 보여준다.
이하의 상세한 설명은 본 발명이 실시될 수 있는 본 개시내용의 특정 세부 사항들 및 양태들을 예시로서 보여주는 첨부 도면들을 참조한다. 다른 양태들이 이용될 수 있고, 본 발명의 범위로부터 벗어나지 않고서 구조적, 논리적 및 전기적 변경들이 이루어질 수 있다. 본 개시내용의 일부 양태들은 새로운 양태들을 형성하기 위해 본 개시내용의 하나 이상의 다른 양태와 결합될 수 있기 때문에, 본 개시내용의 다양한 양태들은 반드시 상호배타적이지 않다.
이하에서는, 다양한 예들이 더 상세하게 설명될 것이다.
도 1은 로봇 디바이스 배열(100)을 보여준다.
로봇 디바이스 배열(100)은 로봇 디바이스(101), 예를 들어 공작물을 취급, 조립 또는 가공하기 위한 산업용 로봇을 포함한다. 로봇 디바이스(101)는 매니퓰레이터들(102, 103, 104), 및 매니퓰레이터들(102, 103, 104)을 지지하는 베이스(또는 지지체)(105)를 포함한다. 용어 "매니퓰레이터"는 로봇 디바이스(101)의 가동 부재들을 지칭하며, 그것의 작동은 예를 들어 작업을 수행하기 위한 환경과의 물리적 상호작용을 가능하게 한다. 제어를 위해, 로봇 디바이스 배열(100)은 제어 프로그램에 따라 환경과의 상호작용을 구현하도록 구성된 제어기(106)를 포함한다. 매니퓰레이터들(102, 103, 104) 중 (지지체(105)에서 볼 때의) 마지막 부재(104)는 엔드 이펙터(104)라고도 지칭되며, 용접 토치, 그립핑 기구, 페인팅 장비, 또는 그와 유사한 것과 같은 하나 이상의 도구를 포함할 수 있다.
다른 매니퓰레이터들(102, 103)(지지체(105)에 더 가까움)은 엔드 이펙터(104)와 함께, 단부에 엔드 이펙터(104)를 갖는 로봇 팔(더 일반적으로 관절식 팔이라고 지칭됨)이 제공되도록 위치결정 디바이스를 형성할 수 있다. 로봇 팔은 (가능하게는 그것의 단부에 있는 도구와 함께) 인간 팔과 유사한 기능들을 제공할 수 있는 기계식 팔이다.
로봇 디바이스(101)는 매니퓰레이터들(102, 103, 104)을 서로, 그리고 지지체(105)와 상호연결하는 관절 요소들(107, 108, 109)을 포함할 수 있다. 관절 요소(107, 108, 109)는 서로에 대한 연관된 매니퓰레이터들에 대해 회전가능한 모션(즉, 회전 모션) 및/또는 병진 모션(즉, 변위)을 각각 제공할 수 있는 하나 이상의 관절들을 가질 수 있다. 매니퓰레이터들(102, 103, 104)의 움직임은 제어기(106)에 의해 제어되는 액추에이터들에 의해 시작될 수 있다.
용어 "액추에이터"는 구동되는 것에 응답하여 메커니즘 또는 프로세스에 영향을 미치도록 적응된 컴포넌트로서 이해될 수 있다. 액추에이터는 제어기(106)에 의해 발행된 명령들(소위 활성화)을 기계적 움직임으로 구현할 수 있다. 액추에이터, 예를 들어 전기기계적 변환기는 구동에 응답하여 전기 에너지를 기계 에너지로 변환하도록 구성될 수 있다.
용어 "제어기"는 예를 들어 저장 매체, 펌웨어 또는 이들의 조합에 저장된 소프트웨어를 실행할 수 있는 회로 및/또는 프로세서를 포함할 수 있는, 그리고 예를 들어 본 예에서의 액추에이터에 명령들을 발행할 수 있는 임의의 유형의 로직 구현 엔티티로서 이해될 수 있다. 제어기는 본 예에서 로봇인 시스템의 동작을 제어하도록, 예를 들어 프로그램 코드(예를 들어, 소프트웨어)에 의해 구성될 수 있다.
본 예에서, 제어기(106)는 하나 이상의 프로세서(110), 및 프로세서(110)가 로봇 디바이스(101)를 제어하는 데에 기반이 되는 코드 및 데이터를 저장하는 메모리(111)를 포함한다. 다양한 실시예들에 따르면, 제어기(106)는 메모리(111)에 저장된 통계 모델(112)에 기초하여 로봇 디바이스(101)를 제어한다.
로봇 디바이스 배열(100)에 의해 구현되는 것과 같은 로봇은 작업을 실행하거나 인간 파트너와 협력하는 방법을 배우기 위해 데모로부터의 학습 접근방식들(learning-from-demonstration approaches)을 활용할 수 있다. 인간 데모는 로봇을 위한 작업의 명목상 계획을 표현하는 확률 모델(통계 모델이라고도 지칭됨)에 의해 인코딩될 수 있다. 후속하여, 제어기(106)는 통계 모델을 사용하여, 원하는 로봇 움직임들을 아마도 인간 파트너와 환경 둘 다의 상태의 함수로서 생성할 수 있다.
로봇(즉, 제어기(106)와 함께 있는 로봇 디바이스(101))이 새로운 기술들을 학습하거나 그것의 거동을 미출현 조건들에 적응시켜야 할 때, 그것의 학습 프로세스는 안전하고 빠르고 데이터 효율적이어야 하는데, 왜냐하면 로봇은 환경과 상호작용하는 물리적 시스템이고, 그에 의해 모든 단일 상호작용에 비용이 많이 들기 때문이다. 다양한 실시예들에 따라 적용되는 것과 같은 로봇 공학을 위한 강화 학습(RL)에서, 베이지안 최적화(BO)는 여러 도전적인 시나리오에서 파라메터 정책들을 최적화하는 데 성공했기 때문에 점점 더 많은 관심을 받아왔다. 그것의 인기는 심층 RL에서 사용되는 데이터를 많이 사용하는 방법들(data-hungry methods)과는 대조적으로, 노이즈를 갖는 복잡한 비용 함수들을 데이터 효율적인 방식으로 모델링할 수 있는 능력에 기인한다. 그러나, 베이지안 최적화 성능은 검색 공간 차원이 증가함에 따라 저하되어, 차원의 저주를 다루는 다양한 접근방식들에의 기회를 마련했다. 그것의 성능은 또한 평균 및 커널 함수들 둘 다의 정의에 강하게 영향을 받는 가우스 프로세스(GP) 모델(BO의 전형적인 대리 모델)의 일반화 능력들에 의존한다.
베이지안 최적화는 손상된 다리가 있는 로봇에 대한 거동 적응, 밸런싱을 위한 제어기 튜닝, 바이패드 로코모션(biped locomotion), 전신 제어, 물리적 인간-로봇 상호작용, 및 조작과 같은 다양한 로봇 응용들에서 널리 사용될 수 있다. 로봇 팔을 갖는 도 1에 예시된 것과 같은 실시예에서, 베이지안 최적화는 예를 들어 관절들 중 하나의 장애의 경우에서 로봇 제어를 적응시키는 데 사용될 수 있다. 그러나, 실시예들은 로봇 팔에 제한되는 것이 아니라, 특히 정기적 작업에 대한 최적의 방향 찾기, 가변 임피던스 학습 접근방식에 대해 관심이 있는 임피던스 제어 정책의 최적 강성 행렬 찾기를 포함하여, 앞서 언급된 것들과 같은 다른 형태의 로봇들 및 응용들에도 적용될 수 있다.
베이지안 최적화의 성공의 핵심적인 양태는 주로 대리 모델 또는 취득 함수에 도입된 도메인 지식의 사용에서 볼 수 있다. 이러한 사전 정보(prior information)는 문제의 복잡성을 감소시키고 베이지안 최적화의 수렴 및 정확도를 향상시킨다. 다양한 실시예들에 따르면, 파라미터 공간의 기하구조에 대한 지식이 베이지안 최적화에 도입된다.
베이지안 최적화(BO)는 미지의 목적 함수 f의 전역적 최대화기(또는 최소화기)를 찾는 것, 즉
Figure pat00006
를 찾는 것을 목표로 하는 순차적 검색 알고리즘이다.
여기서,
Figure pat00007
는 관심있는 소정의 설계 공간(즉, 파라미터 값들이 선택 될 수 있는 파라미터 공간)이고,
Figure pat00008
는 파라미터 공간의 차원이다. 블랙박스 함수 f는 단순한 닫힌 형식을 갖지 않지만, 도메인 내의 임의의 임의적 질의 지점 x에서 그것의 값을 평가함으로써 지점 별로 관찰될 수 있다. 이러한 평가는 관찰 노이즈 σ와 함께
Figure pat00009
이도록, 노이즈(104) 손상된 (확률적) 출력
Figure pat00010
을 생성한다.
이러한 세팅에서, 베이지안 최적화는 가능한 목적 함수들에 대한 사전 신뢰(prior belief)를 지정한다. 다음으로, 각각의 반복 n에서, 이 모델은 베이지안 사후 업데이트(Bayesian posterior update)를 통해, 관찰된 데이터
Figure pat00011
에 따라 개량된다. 최적값에 대한 검색을 안내하기 위해 취득 함수
Figure pat00012
가 구성된다.
이 함수는 f의 다음 평가를 위한 후보 지점들의 유용성을 평가하므로; γn을 최대화함으로써, 다음 질의 지점
Figure pat00013
이 선택되는데, 즉 다음과 같다:
Figure pat00014
N회의 질의 후, 결과는 (반복 한계 N에 대해) 최적화기의 최상의 추정치를 표현하는 최종 권고
Figure pat00015
이다.
다양한 실시예들에 따르면, 전형적으로 행해지는 바와 같이, f의 사전 및 사후는 평균 함수
Figure pat00016
및 양정치 커널(또는 공분산 함수)
Figure pat00017
을 갖는 가우스 프로세스
Figure pat00018
를 사용하여 모델링된다.
따라서, 함수 f는 가우스 사전
Figure pat00019
을 따르며, 여기서
Figure pat00020
이고, K는
Figure pat00021
인 공분산 행렬이다. 임의적 테스트 지점을 표현하는
Figure pat00022
와 함께, 관찰값들에 조건을 두는 무작위 변수
Figure pat00023
는 또한 이하의 사후 평균 및 분산 함수로 정규 분포된다.
Figure pat00024
Figure pat00025
여기서,
Figure pat00026
Figure pat00027
와 관찰값들
Figure pat00028
사이의 공분산 항들의 벡터이다. 임의의 지점
Figure pat00029
에서 평가된 사후 평균 및 분산은 각각
Figure pat00030
에서의 목적 함수의 모델 예측 및 불확실성을 표현한다. 베이지안 최적화에서, 이러한 함수들은 취득 함수에 의해 다음 질의
Figure pat00031
을 선택하기 위해 활용된다. 평균 및 커널 함수들은 GP, 및 그에 따른 함수 f의 모델을 완전히 지정한다. 평균 함수에 대한 가장 일반적인 선택은 상수 값인 한편, 커널은 전형적으로 입력 공간 내의 가까운 지점들이 먼 지점들보다 더 강한 상관관계를 갖는다는 속성을 갖는다. 인기있는 커널 중 하나는 제곱 지수(squared-exponential)(SE) 커널
Figure pat00032
이고, 여기서 d(.,.)는 두 관찰값 사이의 거리를 나타내고, 파라미터 β 및 θ는 함수의 수평 및 수직 스케일을 제어한다. 커널 파라미터들 및 관찰 노이즈는 최대 가능성 추정(maximum likelihood estimation)(MLE)을 통해 추론될 수 있다.
취득 함수는 사후 함수들에 의해 제공되는 정보를 사용하여 활용(exploitation)(예를 들어, 가장 높은 사후 평균을 갖는 지점을 선택)과 탐색(exploration)(예를 들어, 가장 높은 사후 분산을 갖는 지점을 선택)의 균형을 맞춘다. 다양한 실시예들에 따르면, 향상 기반 취득 함수, 즉 기대 향상(expected improvement)(EI)이 사용된다.
EI에 대해, 다음 질의는 직관적으로 이전의 최상의 관찰값에 비해 예상되는 개선
Figure pat00033
이 최대인 지점에 대응한다.
다양한 실시예들에 따르면, 도메인 지식은 리만 매니폴드들에 있는 파라미터들을 다루는 기하구조 인식 최적화를 활용함으로써 취득 함수에 포함된다.
기하구조 인식은 파라미터 공간이 유클리드가 아닌 경우에 특히 관련이 있고, 이는 다양한 매니폴드가 발생하는 로봇 응용에서 일반적이다. 예를 들어, 힘과 토크는 유클리드 매니폴드 RD에 속하고, 강성, 관성 및 조작성은 대칭 양정치 행렬들 S++의 매니폴드에 놓이고, 특수 직교 그룹 SO(3) 또는 단위 구체
Figure pat00034
는 방향들을 표현하기 위해 사용되며, 특수 유클리드 그룹 SE(3)는 로봇 포즈들을 설명한다.
기하구조 인식을 베이지안 최적화에 도입하기 위해, 다양한 실시예들에 따라, 리만 매니폴드 이론으로부터의 지식이 베이지안 최적화에 도입되는 것으로 볼 수 있다. 보다 구체적으로, 다양한 실시예들에 따르면, 예를 들어 제어기(106)에 의해, GP가 리만 매니폴드에 있는 파라미터들 사이의 유사성을 적절하게 측정하는 것을 허용하는 기하구조 인식 커널들이 사용된다. 추가로, 제어기(106)는 취득 함수를 최적화할 때, 예를 들어 새로운 시나리오에 적응할 때(예를 들어, 관절 장애의 경우에서의 미출현 조건들을 포함함), 검색 공간의 기하구조를 고려하기 위해 리만 매니폴드 도구들을 사용한다. 이러한 두 가지 특징들은 매끄럽고 구별가능한 매니폴드들에 있는 파라미터들의 제약들을 자연스럽게 다루는 완전 기하구조 인식 베이지안 최적화 프레임워크(fully geometry-aware Bayesian optimization framework)를 제공한다.
로봇 공학에서, 다양한 유형의 데이터는 벡터 공간에 속하지 않고, 따라서 이러한 변수들을 취급하고 분석하기 위해 고전적인 유클리드 공간 방법들을 사용하는 것은 부적절하다. 예를 들면, 방향들, 예를 들어 엔드 이펙터(104)의 방향을 표현하기 위해 제어기(106)에 의해 사용될 수 있는 단위 쿼터니언(unit quaternion)이 있다. 단위 쿼터니언은 단위 놈(unit norm)을 가지며, 따라서 3-구체의 표면 상의 지점으로서 표현될 수 있다. 대칭 양정치((SPD) 행렬들은 제어기에 의해, 예를 들어 강성 및 관성 행렬들, 또는 조작성 타원체들의 형태로 또한 사용될 수 있다. SPD 행렬들의 공간 및 구체 둘 다는 리만 메트릭을 부여받아 리만 매니폴드를 형성할 수 있다.
직관적으로, 리만 매니폴드
Figure pat00035
은 각각의 지점이 로컬로 유클리드 공간과 유사한 공간이다. 각각의 지점
Figure pat00036
에 대해, 리만 메트릭이라고 지칭되는 매끄럽게 변하는 양정치 내적(smoothly-varying positive definite inner product)을 갖춘 탄젠트 공간
Figure pat00037
이 존재한다. 이 메트릭은 매니폴드 상에서 곡선 길이를 정의하는 것을 허가한다. 리만 매니폴드 상에서의 최단 경로들을 표현하는 곡선들은 측지선들(geodesics)이라고 지칭되고, 유클리드 공간의 직선들을 리만 매니폴드로 일반화하는 것인데, 왜냐하면 그것들은
Figure pat00038
에서 2개의 지점 사이의 최소 길이 곡선들을 표현하기 때문이다.
도 2는 예를 들어 로봇 엔드 이펙터의 가능한 방향을 각각 표현할 수 있는 지점들을 갖는 구체 매니폴드
Figure pat00039
의 도시를 보여준다.
로봇 엔드 이펙터(104)의 2개의 상이한 방향을 표현하기 위해 제어기(106)에 의해 사용될 수 있는 2개의 지점 x 및 y가 구체에 표시된다.
주변 공간 내의 2개의 지점 사이의 최단 거리는 직선(201)이 되는 한편, 매니폴드 상의 최단 경로는 측지선(202)이다.
도 3은 예를 들어 강성 타원체를 각각 표현할 수 있는 지점들을 갖는 SPD 매니폴드
Figure pat00040
(원뿔 형상을 가짐)의 도시를 보여준다.
로봇 엔드 이펙터(104)의 2개의 상이한 강성 타원체를 표현하기 위해 제어기(106)에 의해 사용될 수 있는 SPD 매니폴드 상의 2개의 지점 X 및 Y가 표시된다. 각각의 지점은 매니폴드
Figure pat00041
가 매립되는 공간
Figure pat00042
의 행렬
Figure pat00043
에 대응한다.
다시 말하면, 주변 공간에서의 2개의 지점 사이의 최단 거리는 직선(301)인 한편, 매니폴드 상의 최단 경로는 측지선(302)이다.
도 2 및 도 3에서, 가장 짧은 유클리드 경로(201, 301)는 측지선(202, 302)과 다르다.
유클리드 탄젠트 공간들을 이용하기 위해, 탄젠트 공간
Figure pat00044
(도 3의
Figure pat00045
) 사이에서의 왕복 매핑들이 사용될 수 있으며, 이들은 각각 지수 맵과 로그 맵으로서 표기된다.
지수 맵
Figure pat00046
은 x의 탄젠트 공간 내의 지점 u를 매니폴드 상의 지점 y에 매핑하고, 그에 의해 그것은 x와 y(도 3의 Y) 사이의 측지 거리 dM이 x와 u 사이의 거리의 놈(norm)과 동일하도록, 방향 u(도 3의 U)에서 x(도 3의 X)에서 시작하는 측지선에 놓이게 된다. 역 연산은 로그 맵
Figure pat00047
, 즉
Figure pat00048
라고 지칭된다.
매니폴드들에 대한 다른 유용한 동작은 탄젠트 공간 내의 2개의 요소 사이의 내적이 일정하게 유지되도록 탄젠트 공간들 사이에서 요소들을 이동시키는 평행 이동(parallel transport)
Figure pat00049
이다.
예를 들어, 도 2에서,
Figure pat00050
Figure pat00051
으로부터
Figure pat00052
으로 평행 이동된 벡터들
Figure pat00053
Figure pat00054
이다. 도 3에서, 벡터들
Figure pat00055
Figure pat00056
에 대해 유사하다.
더 일반적으로, 단위 구체
Figure pat00057
Figure pat00058
에 매립된 d차원 매니폴드이다. 탄젠트 공간
Figure pat00059
은 지점 x에서 구체에 접하는 초평면(hyperplane)이다.
Figure pat00060
SPD 행렬들
Figure pat00061
의 매니폴드는
Figure pat00062
에 매립된 볼록 원뿔의 내부로서 표현될 수 있다. D=2에 대해 위에서 설명되고 도 2 및 도 3에 도시된 동작들은 표 1에 주어진다.
Figure pat00063
이하에서, 예를 들어 파라미터들
Figure pat00064
의 설계 공간이 리만 매니폴드 또는 리만 매니폴드의 부분공간인 경우, 즉
Figure pat00065
인 경우를 자연스럽게 다루기 위해 제어기(106)에 의해 사용될 수 있는 기하구조 인식 베이지안 최적화(GaBO) 프레임워크가 설명된다.
이를 위해, 제어기(106)는 매니폴드 값 데이터(manifold-valued data)에 적응된 가우스 프로세스에 의해 미지의 목적 함수 f를 모델링한다. 이것은 매니폴드 상의 파라미터들의 유사성을 측정하는 기하구조 인식 커널들을 정의함으로써 달성된다. 더욱이, 제어기(106)는 매니폴드
Figure pat00066
상의 취득 함수를 최적화함으로써 다음 질의 지점
Figure pat00067
을 선택한다.
커널 함수의 선택은 GP에 중요한 것으로 보여질 수 이는데, 왜냐하면 그것이 함수 f에 관한 사전 함수를 인코딩하기 때문이다. 파라미터 x가 리만 매니폴드에 속함에 따라, 이 사전 지식은 커널의 선택에 포함된다. 거리 기반 커널들을 리만 매니폴드들에 적응시키기 위한 간단한 접근방식은 커널의 정의에서 유클리드 거리 d를 측지 거리
Figure pat00068
로 대체하는 것이다. 따라서, SE 커널의 측지 일반화는 다음에 의해 제공된다:
Figure pat00069
매니폴드가 유클리드 공간에 대해 등방성(isometric)인 경우에만 그러한 커널이 유효하다는 것, 즉 모든 파라미터 값들에 대해 양정치(PD)라는 것이 보여질 수 있다. 이것은 측지 SE 커널이
Figure pat00070
Figure pat00071
와 같은 곡선형 매니폴드들에 대해 유효하지 않음을 의미한다. 이를 해결하기 위해, 다양한 실시예들에 따라,
Figure pat00072
에 대해, 커널이 양정치이도록, 최소 길이 스케일 파라미터
Figure pat00073
가 결정된다.
관심있는 매니폴드에 대해 커널 행렬들이 양정치인 길이 스케일들 β의 간격들은 실험적으로 결정될 수 있다. 예를 들어,
Figure pat00074
을 계산하기 위해, 매니폴드 상의 10개의 가우스 분포로부터의 500개의 지점이 무작위 평균 및 공분산 행렬 I로 샘플링된다. 다음으로,
Figure pat00075
인 β 값들의 범위에 대해 대응하는 커널 행렬
Figure pat00076
이 계산된다. 이것은 예를 들어 β의 각각의 값에 대해 10회 반복되고, 결과적인 PD 측지 커널 행렬들 K의 백분율이 계산된다. 일 실시예에 따르면, 최소 고유값 함수는 β에 대해 모노톤이고,
Figure pat00077
이므로,
Figure pat00078
은 행렬 K의 100%가 PD인 β 최소값과 동일하게 고정되어 설정된다.
도 4는 다이어그램들(401, 402)을 보여주며, PD 측지 커널 행렬들의 백분율 및 최소 고유값
Figure pat00079
의 분포를
Figure pat00080
(다이어그램(401)) 및
Figure pat00081
(다이어그램(402))에 대한 β의 함수로서 보여준다.
표 2는 예를 들어 제어기(106)에 의해 파라미터 공간들로서 사용될 수 있는 다양한 매니폴드들에 대한 값들
Figure pat00082
을 보여준다.
Figure pat00083
특정 매니폴드들에 대한 다른 유형들의 커널들도 베이지안 최적화를 위해 사용될 수 있음에 유의해야 한다. 예를 들어, 측지 라플라시안 커널(geodesic Laplacian kernel)은 구체들과 쌍곡선 공간들에서 유효하다. 특히, 특정 매니폴드(예컨대, 그라스만(Grassmannian))를 위해 특별히 설계된 커널들이 사용될 수 있다.
로봇 제어기(예를 들어, 제어기(106))가 예를 들어 새로운 시나리오에 적응하기 위해(예를 들어, 로봇 팔의 관절 장애, 또는 여러 다리로 걷는 경우에서의 사지 손상을 보상하기 위해) 베이지안 최적화를 수행할 때, 제어기는 후속하여 파라미터 세트로부터의 특정
Figure pat00084
에 대해, 즉 특정 로봇 제어 구성들에 대해 최적화되도록 미지의 함수 f를 평가한다. 미지의 함수 f는 예를 들어 물체가 원하는 위치에 얼마나 가깝게 놓여 있는지 또는 로봇이 원하는 방향에 대해 얼마나 가깝게 움직이는지 등을 반영할 수 있다. 일반적으로, f는 충족되어야 하는 특정 요건들을 정의하는 비용 함수일 수 있다. 예를 들면, 예를 들어 엔드 이펙터(104)의 원하는 방향이 있다. 이것은 태스크 실행을 향상시키기 위해 제어기의 방향 참조가 개량되어야 하는 태스크들에 유용할 수 있다.
예를 들어, 속도 제어 로봇(velocity-controlled robot)의 제어기는 비용 함수
Figure pat00085
를 최소화하는 것을 목적으로, 사용자에 의해 고정된 사전 방향
Figure pat00086
주위의 방향 참조
Figure pat00087
를 샘플링하고, 여기서
Figure pat00088
는 현재 엔드 이펙터 방향이고, cond(M)은 선형 속도 조작성 타원체(linear velocity manipulability ellipsoid)의 조건 번호이다. 이 비용 함수는 등방성 조작성 타원체 및 낮은 관절 토크들로 사전 엔드 이펙터 방향과 현재 엔드 이펙터 방향 사이의 오차를 최소화하는 것을 목표로 한다.
다른 예는 데카르트 제어 정책
Figure pat00089
을 구현하는 토크 제어 로봇 팔(torque-controlled robotic arm)의 최적의 데카르트 강성을 찾는 것이고, 여기서
Figure pat00090
Figure pat00091
는 로봇 엔드 이펙터의 선형 위치 및 속도이고,
Figure pat00092
Figure pat00093
는 강성 및 감쇠 행렬이고, f는 제어력이다(
Figure pat00094
를 통해 원하는 토크들로 변환됨). 로봇 태스크는 그것의 엔드 이펙터에 일정한 외부 힘
Figure pat00095
이 적용되는 동안 원하는 데카르트 위치
Figure pat00096
를 추적하는 것으로 이루어진다. 정책 파라미터는 강성 행렬, 즉
Figure pat00097
에 대응한다. 즉, 강성-감쇠 비율은 예를 들어 임계 감쇠(critically damped)로서 고정된다. 이 경우, 비용 함수들은 예를 들어:
Figure pat00098
Figure pat00099
이다. 비용 함수 f1은 저용량 등방성 강성 행렬을 사용하여 원하는 위치를 정확하게 추적하는 것을 목표로 하는 한편, f2는 낮은 토크로 원하는 위치를 정확하게 추적하는 것을 목표로 한다. f2에 대해, 예를 들어 원하는 위치에 도달하면, -1 보상이 추가될 수 있다.
제어기(106)가 함수 f를 평가한 때, 평가치들에 대하여 함수를 모델링하는 가우스 프로세스를 컨디셔닝할 수 있다.
이러한 방식으로 미지의 함수 f를 모델링하는 기하구조 인식 GP를 개량한 후, 제어기(106)는 취득 함수
Figure pat00100
을 최대화함으로써 다음 질의 지점
Figure pat00101
(즉, 함수 f가 평가될 파라미터 공간으로부터의 다음 지점)을 선택한다. 다양한 실시예들에 따르면, 도메인
Figure pat00102
의 기하구조를 고려하기 위해, 제어기는 매니폴드들에 대한 최적화 기술들을 사용하여
Figure pat00103
을 최적화(즉, 그것의 최적값을 검색)한다. 따라서, 취득 함수는 변경되지 않지만 그것의 검색 공간은 수정된다(전체 파라미터 공간에 대한 최적화와 비교하여)는 점에 유의해야 한다. 이러한 맥락에서, 리만 매니폴드들에 대한 최적화 알고리즘들은 제약있는 최적화에 대한 강력한 대안을 구성한다. 이러한 기하구조 인식 알고리즘들은 제약있는 문제들을 매니폴드들에 대한 제약없는 최적화로 재구성하고(reformulate), 관심 공간의 고유 구조를 고려한다. 또한, 더 낮은 계산 복잡성 및 더 양호한 수치 속성들을 갖는 경향이 있다.
다양한 실시예들에 따르면, 제어기(106)는 각각의 반복에서 취득 함수
Figure pat00104
을 최대화하기 위해(또는
Figure pat00105
를 최소화하기 위해) 리만 매니폴드들에 대한 켤레 기울기(CG) 알고리즘을 사용한다. 예는 이하의 알고리즘 1이다.
Figure pat00106
알고리즘의 단계 3에서 리만 매니폴드에 대한 라인 검색은, 각각의 후보 α에 대해 탄젠트 공간 내의 대응하는 후보 지점이 지수 맵을 통해 매니폴드에 매핑되고 취득 함수가 매니폴드 상의 지점에 대해 평가됨을 의미한다는 점에 유의해야 한다.
알고리즘 1의 재귀적 프로세스는 유클리드 CG와 동일한 단계들, 즉 (i) 검색 방향을 따른 라인 최소화(알고리즘 1의 단계 3); (ii) 검색 방향을 따른 반복 업데이트(알고리즘 1의 단계 4) 및 (iii) 새로운 반복에서의 함수의 기울기와 이전 검색 방향을 결합하는, 다음 검색 방향의 계산(알고리즘 1의 단계 5 및 단계 6)을 수반한다. 유클리드 버전과의 차이점은 다음과 같다:
● 기울기
Figure pat00107
및 그에 따른 검색 방향
Figure pat00108
Figure pat00109
의 탄젠트 공간에 속함에 따라, 검색 방향을 따라 반복을 업데이트하기 위해 지수 맵이 사용되고; (2) 매니폴드 상에서의 라인 검색으로
Figure pat00110
의 해를 구함으로써 스텝 크기가 고정된다
● 이전 검색 방향
Figure pat00111
는 새로운 반복의 기울기:
Figure pat00112
와 결합되도록
Figure pat00113
의 탄젠트 공간으로 평행 이동된다.
이 예에서는 Hastenes-Stiefel 업데이트 파라미터
Figure pat00114
를 갖는 (매니폴드 상의) CG이지만, 다른 업데이트 기술들은 또한 다양한 실시예들에 따라 사용될 리만 매니폴드로 확장될 수 있다는 점에 유의해야 한다.
일부 문제들에 대해, 제어기(106)는 예를 들어 엔드 이펙터 방향들 또는 임피던스 파라미터들을 최적화할 때 로봇 디바이스(101)의 물리적 한계 또는 안전 제약에 대처하기 위해 검색 도메인을 (파라미터 공간 매니폴드의) 부분공간에 바인딩할 수 있다는 점에 더 유의해야 한다. 그러한 경우들에서, 특히 매니폴드가 폐쇄 공간이 아닐 때, 제어기(106)는 파라미터 매니폴드 내부의 경계 조건들을 정의함으로써 GaBO의 검색 도메인을 제한할 수 있다. 이는, 그러한 경우에서 제어기가 파라미터 매니폴드
Figure pat00115
의 진정한 부분집합
Figure pat00116
에 대해 취득 함수를 최적화한다는 것을 의미한다.
이를 위해, 제어기(106)는 최적화에서 경계 조건들에 대처하기 위해 리만 매니폴드들로 확장된 경계 제한 CG 방법(bound constrained CG method)을 적용한다. 예를 들어, 이를 위해 알고리즘 1의 단계 4-6은 알고리즘 2에 설명된 대로 업데이트된다.
Figure pat00117
각각의 반복에서, 업데이트된 반복
Figure pat00118
인 경우, 그것은 실행가능한 도메인에 다시 투영되고, 검색 방향이 다시 초기화된다. 예를 들어,
Figure pat00119
에서, 설계 공간(즉, 파라미터 공간)은
Figure pat00120
의 컴포넌트들에 대한 한계들을 설정함으로써 경계가 정해진다. 컴포넌트가 한계들을 벗어난 경우, 그것은 가장 가까운 한계에 동일하게 고정되고, 나머지 컴포넌트들은 x가 여전히 매니폴드에 속하도록 재구성(예를 들어, 스케일링)된다.
Figure pat00121
에 대해, SPD 행렬의 고유값들 λ에 대한 한계들이 정의될 수 있다. 반복
Figure pat00122
인 경우, 그것은 반복의 최대/최소 고유값을 감소/증가시킴으로써 검색 도메인에 다시 투영된다.
파라미터 공간(즉, 검색 도메인)이 매니폴드의 부분공간으로 제한될 때,
Figure pat00123
이 해당 부분공간에 대해 결정될 수 있다는 점에 유의해야 한다. 따라서, 전체 파라미터 매니폴드에 대한
Figure pat00124
을 결정하는 것과 비교하여
Figure pat00125
의 더 낮은 값이 달성될 수 있다. 높은
Figure pat00126
은 함수 f의 모델링에 대한 공간적 영향을 제한하기 때문에, 더 낮은
Figure pat00127
은 더 빠른 변환으로 이어질 수 있다.
요약하면, 다양한 실시예들에 따르면, 도 5에 도시된 바와 같은 방법이 제공된다.
도 5는 실시예에 따른 비-유클리드 제어 파라미터 공간으로부터의 제어 파라미터 값들을 사용하여 로봇(또는 로봇 디바이스)을 제어하기 위한 방법을 도시하는 흐름도(500)를 보여준다.
방법은 제어 파라미터 공간에 걸쳐 로봇의 원하는 제어 목적을 표현하는 목적 함수의 베이지안 최적화를 수행하는 단계를 포함하며, 여기서 목적 함수의 평가 지점들은 반복 검색에서 취득 함수의 최적값을 검색함으로써 결정되며, 반복 검색은, 각각의 반복에서 다음을 포함한다:
블록(501)에서, 후보 평가 지점에서의 파라미터 공간의 탄젠트 공간에서의 검색 방향을 사용하여 후보 평가 지점을 업데이트함.
블록(502)에서, 업데이트된 후보 평가 지점을 탄젠트 공간으로부터 파라미터 공간으로 매핑함.
블록(503)에서, 정지 기준이 충족될 때까지, 매핑된 업데이트된 후보 평가 지점을 다음 반복을 위한 평가 지점으로서 사용함.
다음으로, 로봇은 베이지안 최적화에서 발견된 제어 파라미터 값에 따라 제어된다.
즉, 다양한 실시예들에 따르면, 기하구조 정보는 예를 들어 미지의 목적 함수를 최대화/최소화하도록 제어 파라미터들(또는 직접 강화 학습 사례들에서의 파라미터 정책)을 최적화하기 위해 베이지안 최적화를 수행할 때 취득 함수의 최적화에 포함되고, 여기서 파라미터들은 특정 기하구조(리만 매니폴드)를 갖는 검색 공간에 속한다.
구체적으로, 취득 함수의 최적화에서의 (현재) 추정치의 업데이트는 현재 추정치의 탄젠트 공간에 의존하여 이루어진다. 또한, 취득 함수의 최적값을 검색하기 위해 켤레 기울기 방법이 사용될 때, 검색 방향 업데이트는 (이전의) 추정치와 업데이트된 추정치에서의 탄젠트 공간들 사이의 관계에 의존하여 이루어진다. 추가로, 베이지안 최적화의 (예를 들어) 가우스 프로세스 대리 모델의 커널은 기하구조 의존적(또는 기하구조 인식)일 수 있으므로, 커널 함수와 취득 함수의 최적화 둘 다가 검색 공간(즉, 파라미터 공간)의 기하구조를 고려함에 따라 접근방식은 완전히 기하구조 인식이 된다.
따라서, 리만 매니폴드들 상에 있는 최적의 파라미터들을 적절하게 찾기 위해 검색 공간의 기하구조를 활용하는 기하구조 인식 베이지안 최적화(GaBO) 프레임워크가 제공된다. 이를 위해, GP가 리만 매니폴드 상에 있는 파라미터들 간의 유사성을 적절하게 측정하는 것을 허용하는 기하구조 인식 커널이 사용된다. 더욱이, 취득 함수를 최적화할 때 검색 공간의 기하구조를 고려하기 위해 리만 매니폴드 도구들이 활용된다.
목적 함수는 예를 들어 로봇 엔드 이펙터에 부착된 임의의 유형의 힘 또는 토크 센서를 포함하는 다양한 유형의 센서에 의해, 또는 로봇의 관절 토크 센서들을 사용하여 취득된 센서 신호들에 의해 베이지안 최적화 과정에서 평가될 수 있다.
방법은 임의의 유형의 로봇 디바이스의 기계 부품, 예를 들어 로봇 팔, 또는 일반적으로는 컴퓨터로 제어되는 기계, 차량, 가전 제품, 전동 공구, 제조 기계, 개인 조수(personal assistant) 또는 액세스 제어 시스템과 같은 물리적 시스템(움직임이 제어되는 기계 부품을 가짐)을 제어하기 위해 사용될 수 있다. 여기에 설명된 접근방식들에 기초하여 기계 학습 시스템이 훈련되고 적응될 수 있으며 위의 응용들을 위해 사용될 수 있다.
도 5의 방법은 하나 이상의 프로세서에 의해 수행될 수 있다. 용어 "프로세서"는 데이터 또는 신호의 처리를 허용하는 임의의 유형의 엔티티로서 이해될 수 있다. 예를 들어, 데이터 또는 신호들은 프로세서에 의해 수행되는 적어도 하나(즉, 하나 이상의) 특정 기능에 따라 처리될 수 있다. 프로세서는 아날로그 회로, 디지털 회로, 복합 신호 회로, 로직 회로, 마이크로프로세서, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 디지털 신호 프로세서(DSP), 프로그래밍가능한 게이트 어레이(FPGA) 집적 회로 또는 이들의 임의의 조합을 포함할 수 있거나 그로부터 형성될 수 있다. 이하에서 더 상세히 설명될 각각의 기능들을 구현하는 임의의 다른 방식은 또한 프로세서 또는 로직 회로로서 이해될 수 있다. 본 명세서에 상세하게 설명된 하나 이상의 방법 단계는 프로세서에 의해 수행되는 하나 이상의 특정 기능을 통해 프로세서에 의해 실행(예를 들어, 구현)될 수 있다는 것이 이해될 것이다.
일 실시예에 따르면, 방법은 미지의 목적 함수를 최대화/최소화하기 위해 매니폴드 값 파라미터(manifold-valued parameter)를 최적화하는 역할을 한다. 처음에, 일부 몇 개의 파라미터 값이 테스트되고, 대응하는 함수 값이 측정된다. 다음으로, 방법은:
(1) 대리 모델을 이용하여, 미지의 목적 함수를 모델링한다. 그것은 예를 들어 관찰된 지점들(즉, 미지의 함수의 대응하는 관찰 값들을 갖는 파라미터 값들)에서 훈련된 매니폴드 값 데이터에 대해 적응되는 가우스 프로세스에 대응한다.
(2) 파라미터의 매니폴드에서의 대리 모델의 함수에서 구성된 취득 함수를 최대화한다. 취득 함수의 최대에 대응하는 파라미터들은 다음 질의 지점이다.
(3) 계산된 다음 질의 지점에 대해 함수의 값을 측정한다.
이 절차는 결정된 반복 횟수(N)만큼 반복적으로 반복된다. N회 반복 후에, 함수의 최상의 측정 값에 대응하는 파라미터들이 선택된다.
본 명세서에서는 특정 실시예들이 도시되고 설명되었지만, 본 기술분야의 통상의 기술자들은 본 발명의 범위를 벗어나지 않고서, 도시되고 설명된 특정 실시예들에 대해 다양한 대안적 및/또는 동등한 구현이 대체될 수 있음을 이해할 것이다. 본 출원은 본 명세서에서 논의된 특정 실시예들의 임의의 적응 또는 변형을 포함하도록 의도된다. 따라서, 본 발명은 청구항들 및 그것의 균등물들에 의해서만 제한되도록 의도된다.

Claims (14)

  1. 비-유클리드 제어 파라미터 공간으로부터의 제어 파라미터 값들을 사용하여 로봇을 제어하기 위한 컴퓨터 구현 방법으로서,
    상기 제어 파라미터 공간에 걸쳐 상기 로봇의 원하는 제어 목적을 표현하는 목적 함수의 베이지안 최적화를 수행하는 단계 - 상기 목적 함수의 평가 지점들은 반복 검색에서 취득 함수의 최적값을 검색함으로써 결정되며, 상기 반복 검색은, 각각의 반복에서,
    후보 평가 지점에서의 상기 파라미터 공간의 탄젠트 공간(tangent space)에서의 검색 방향을 사용하여 상기 후보 평가 지점을 업데이트하는 단계;
    업데이트된 후보 평가 지점을 상기 탄젠트 공간으로부터 상기 파라미터 공간으로 매핑하는 단계; 및
    정지 기준이 충족될 때까지, 매핑된 업데이트된 후보 평가 지점을 다음 반복을 위한 후보 평가 지점으로서 사용하는 단계
    를 포함함 - ; 및
    상기 베이지안 최적화에서 발견된 제어 파라미터 값에 따라 상기 로봇을 제어하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서, 켤레 기울기 방법(conjugate gradient method)에 따라 상기 검색 방향을 결정하는 단계를 포함하는 방법.
  3. 제2항에 있어서, 상기 매핑된 업데이트된 후보 평가 지점에서의 상기 취득 함수의 기울기를, 평행 이동(parallel transport)에 의해 상기 매핑된 업데이트된 후보 평가 지점에서의 상기 파라미터 공간의 상기 탄젠트 공간에 매핑된 상기 후보 평가 지점에서의 복수의 검색 방향에 의해 수정함으로써, 상기 매핑된 업데이트된 후보 평가 지점에 대한 검색 방향을 결정하는 단계를 포함하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 후보 평가 지점에서의 상기 탄젠트 공간의 지수 맵을 사용하여, 상기 업데이트된 후보 평가 지점을 상기 탄젠트 공간으로부터 상기 파라미터 공간으로 매핑하는 단계를 포함하는 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 상기 파라미터 공간은 리만 매니폴드(Riemannian manifold)이고, 상기 베이지안 최적화는 상기 리만 매니폴드의 유도된 메트릭(induced metric)에 의존하는 커널을 갖는 대리 모델(surrogate model)로서 가우스 프로세스를 사용하는, 방법.
  6. 제5항에 있어서, 상기 커널을 양정치로 하기 위해 상기 커널의 파라미터를 설정하는 단계를 더 포함하는 방법.
  7. 제5항 또는 제6항에 있어서, 상기 파라미터 공간의 다수의 무작위로 샘플링된 지점 쌍들에 대한 커널 행렬들을 계산하고, 상기 커널의 파라미터를 상기 커널 행렬들이 양정치로 되는 최소값으로 설정하는 단계를 포함하는 방법.
  8. 제1항에 있어서, 상기 후보 평가 지점을 업데이트하는 단계는 상기 검색 방향을 따른 라인 검색을 포함하는, 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 파라미터 공간은 대칭인 양정치 행렬들의 매니폴드 또는 구체(sphere)인, 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서, 상기 목적 함수는 상기 로봇의 부분의 원하는 위치를 표현하는, 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서, 상기 파라미터 값들은 강성(stiffness), 관성, 조작성(manipulability), 방향, 또는 자세를 표현하는, 방법.
  12. 로봇 제어기로서,
    제1항 내지 제11항 중 어느 한 항의 방법을 수행하도록 구성되는, 로봇 제어기.
  13. 컴퓨터 프로그램으로서,
    프로세서에 의해 실행될 때, 상기 프로세서로 하여금 제1항 내지 제11항 중 어느 한 항에 따른 방법을 수행하게 하는 명령어들을 포함하는 컴퓨터 프로그램.
  14. 컴퓨터 판독가능한 매체로서,
    프로세서에 의해 실행될 때, 상기 프로세서로 하여금 제1항 내지 제11항 중 어느 한 항에 따른 방법을 수행하게 하는 명령어들을 저장하는 컴퓨터 판독가능한 매체.
KR1020200137948A 2019-10-25 2020-10-23 로봇을 제어하기 위한 방법 및 로봇 제어기 KR20210049689A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP19205385.8A EP3812972A1 (en) 2019-10-25 2019-10-25 Method for controlling a robot and robot controller
EP19205385.8 2019-10-25

Publications (1)

Publication Number Publication Date
KR20210049689A true KR20210049689A (ko) 2021-05-06

Family

ID=68344756

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200137948A KR20210049689A (ko) 2019-10-25 2020-10-23 로봇을 제어하기 위한 방법 및 로봇 제어기

Country Status (3)

Country Link
US (1) US11648664B2 (ko)
EP (1) EP3812972A1 (ko)
KR (1) KR20210049689A (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117521725A (zh) * 2016-11-04 2024-02-06 渊慧科技有限公司 加强学习系统
DE102021204961B4 (de) 2021-05-17 2023-06-07 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zur Steuerung einer Robotervorrichtung
CN113305834B (zh) * 2021-05-18 2022-06-21 广东工业大学 一种二自由度机械臂最优控制问题的全局模式搜索方法
DE102021212729A1 (de) 2021-11-11 2023-05-11 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Betreiben einer Widerstandsschweißmaschine mittels maschinellen Lernens
CN114102606B (zh) * 2021-12-22 2022-12-23 北京航空航天大学杭州创新研究院 机器人运动信息规划方法及相关装置
CN114415945A (zh) * 2021-12-28 2022-04-29 航天科工网络信息发展有限公司 一种分布式存储系统的参数调优方法、系统、设备、介质
CN115421387B (zh) * 2022-09-22 2023-04-14 中国科学院自动化研究所 一种基于逆强化学习的可变阻抗控制系统及控制方法
DE102022212638B3 (de) 2022-11-25 2024-03-14 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung und Verfahren zum Steuern eines Roboters

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10228680B2 (en) * 2013-07-22 2019-03-12 Texas State University Autonomous performance optimization in robotic assembly process
WO2018219943A1 (en) * 2017-05-29 2018-12-06 Franka Emika Gmbh System and method for controlling actuators of an articulated robot
EP3838503B1 (en) * 2019-12-16 2024-05-01 Robert Bosch GmbH Method for controlling a robot and robot controller

Also Published As

Publication number Publication date
US20210122037A1 (en) 2021-04-29
EP3812972A1 (en) 2021-04-28
US11648664B2 (en) 2023-05-16

Similar Documents

Publication Publication Date Title
KR20210049689A (ko) 로봇을 제어하기 위한 방법 및 로봇 제어기
US20210178585A1 (en) Method for controlling a robot and robot controller
Wang et al. Robot manipulator calibration using neural network and a camera-based measurement system
Schegg et al. Review on generic methods for mechanical modeling, simulation and control of soft robots
CN112045675B (zh) 机器人设备控制器、机器人设备系统及其控制方法
KR20220155921A (ko) 로봇 디바이스를 제어하기 위한 방법
CN109623814B (zh) 一种机械臂控制方法
Zhang et al. Robot grasping method optimization using improved deep deterministic policy gradient algorithm of deep reinforcement learning
Chen et al. Static modeling and analysis of soft manipulator considering environment contact based on segmented constant curvature method
Rosyid et al. Genetic and hybrid algorithms for optimization of non-singular 3PRR planar parallel kinematics mechanism for machining application
Saravanan et al. Evolutionary minimum cost trajectory planning for industrial robots
Das et al. Forward kinematics kernel for improved proxy collision checking
Mazare et al. Adaptive variable impedance control for a modular soft robot manipulator in configuration space
Yan Error recognition of robot kinematics parameters based on genetic algorithms
Oh et al. The feasible workspace analysis of a set point control for a cable-suspended robot with input constraints and disturbances
Martin‐Barrio et al. Modelling the Soft Robot Kyma Based on Real‐Time Finite Element Method
Rath et al. Using physics knowledge for learning rigid-body forward dynamics with Gaussian process force priors
Banga et al. Modeling and simulation of robotic arm movement using soft computing
US20230241772A1 (en) Method for controlling a robotic device
Semwal et al. Comparative study of inverse kinematics using data driven and fabrik approach
Bodily Design optimization and motion planning for pneumatically-actuated manipulators
Kumar et al. Implementation of artificial neural network applied for the solution of inverse kinematics of 2-link serial chain manipulator
Mustafa et al. Inverse kinematics evaluation for robotic manipulator using support vector regression and Kohonen self organizing map
Rao Synthesis of a spatial 3-RPS parallel manipulator based on physical constraints using hybrid GA simplex method
Kim et al. Active learning of the collision distance function for high-DOF multi-arm robot systems