[Review] A brief review of affordance in robotic manipulation research

2023. 11. 8. 17:32카테고리 없음

A brief review of affordance in robotic manipulation research.pdf
1.94MB

 

[초록]

이 논문은 로보틱스에서 affordance 연구를 리뷰하고, 특별히 이것의 물체 잡기와 매니퓰레이션 응용에 집중한다. affordance란 인간과 같은 발전된 매니퓰레이션 지능을 현실화하는 열쇠가 될 수 있다. 먼저, affordance의 기능을 로보틱스에서 응용과 연관시키며 논의한다. 그 후, 물체 인식, 잡기, 도구를 사용한 물체 매니퓰레이션과 같은 affordance를 로보틱스 매니퓰레이션분야에서 응용한 연구를 탐구한다. 사람에게 배우고, 시뮬레이션을 사용하고, 실제 세상에서 실행하면서 affordance를 배운다. 더군다나, 우리의 진화된 매니퓰레이션 지능을 위한 cloud database를 제시한다. 이는 매니퓰레이션 task 실행과 연관된 많은 데이터를 누적하고 다른 affordance기술에 영향을 주는 open platform이 될 것이다.

 

[introduction]

심리학자 Gibson에 따르면, affordance란 "possibility of an action on an object or environment"로 정의되었다. 이 정의는 인지심리학, 산업디자인, 로보틱스 등에서 광범위하게 사용된다. 로보틱스에서, affordance의 개념은 주로 환경의 traversability(순회성)에서의 연구에서 소개된다. 비록 affordance의 개념은 특별히 미지의 상황에서 로봇이 작업을 수행할때 꽤 중요한 역할을 하지만, 로보틱스 매니퓰레이션 분야에서 정확하게 언급되지는 않았고, 하지만 최근에 몇몇의 로보틱스 매니퓰레이션 연구는 affordance의 개념에 주의를 기울이고 있다. 물체의 잡기나 매니퓰레이션 같은 물체와 상호작용하는 것을 포함하는 로봇틱스 매니퓰레이션 분야에서는, affordance는 중요한 factor(요소) 이다, 왜냐하면 로봇은 일단 affordance정보가 확인된다면, 새로운 물체를 매니퓰레이트 할 수 있는 가능성을 얻기 때문이다.

 

예를 들어 망치로 못을 치는 작업을 살펴보자. 망치는 망치 머리와 손잡이로 이루어져 있다. 망치 머리는 물체를 때리기에 적합하게 딱딱하다. 손잡이는 손으로 잡고 망치를 스윙하기 적합하게 긴 바로 되어있다. 그러므로, 못을 칠 때, 망치 머리는 무엇인가를 가격하고, 손잡이는 잡기와 휘두르기 동작이 가능하다(afford). 도구의 주요 기능을 표현하는 부분은 main part(주요 파트)로 언급되고, 주요 기능을 돕는 부분은 subordinate part(하위 파트)라 불리운다. 망치의 경우에, 주요 파트는 망치 머리이고, 하위 바트는 손잡이이다. 만약 주변에 망치가 없다면, 망치의 주요 파트와 동일한 affordance를 제공하는, 돌과 블럭 같은 것들로 못을 내려 칠 수 있다. 대조적으로, 망치는 다른 부분으로 사용될 수 있다. 손이 닿지 않는 물체를 가지고 싶을 때, 망치의 손잡이를 사용해 물체를 끌고 올 수 있다. 이러면, 무엇인가를 당기는, 또다른 affordance를 제공한다. 다양한 affordance가 우리 주위에 존재하고, 사람은 그들을 의지에 따라 인식한다. 의지에 따라 다양한 affordance를 인식하고 적절히 상응하는 행동을 취하는 것은 intelligent autonomous robot을 개발하는 데 중요한 요소이고, 이것은 환경과 물체에 대한 정확한 설명을 기반으로 하는 전통적인 planning 방법과는 다른 방향이다. 

 

...

 

[로보틱스 매니퓰레이션에서 affordance의 사용]

 

[for grasping]

다양한 연구자들이  전에 마주친 적 없는 새로운 물체를 적절히 잡는 작업을 수행했다. 이러한 작업은 손에 따른 단순한 잡기 affordance를 획득했다. Saxena등은 이미지로부터 좋은 잡기 위치를 확인하는 알고리즘을 제시했다. 잡기 affordance라고도 불릴 수 있는, 잡기 지점의 가능성은 다양한 다른 물체의 종합적인 annotation 을 이용한 로지스틱 회기로 모델링되었다. 그들은 식기세척기로부터 미지의 물체를 unloading하는 작업을 설명했다. 잡기 사각형(적절한 opening 폭과 함께 그리퍼의 위치와 방향)은 새로운 물체의 RGB-D 이미지로 검출되었다. 잡기 affordance는 물체 이미지를 사용하는 SVM기반 2단계 학습 과정을 통해 획득됬다. 잡기 사각형 감지를 위해 딥 러닝 접근도 시도되었다. Detry 등은 시각적 특징을 사용해 미지의 물체를 잡기 위한 계획을 세웠고, 실제 세상 세상실행으로 계획된 결과를 정제하였다. 이 작업은 실제 세상 싱행결과로 자동적으로 계획된 잡기를 정제하는 데 사용한, 흥미로운 생각이다. 목표는 물체의 방향을 고려하지 않는 안전한 잡기를 보장하는 것이다. 획득된 잡기는 barrat hand와 일반적인 parallel gripper의 성능을 향상시키는 데 사용된다.

The BH8-series BarrettHand™ is a multi-fingered programmable grasper with the dexterity to secure target objects of different sizes, shapes, and orientations
Parallel grippers are  a type of industrial robot gripper featuring two fingers that remain parallel when they open and close

 

그들은 또다른 잡기 affordance 를 제안했는데, 그것은 원형의 물체의 부분이며 트레이닝 물체 세트에서 시연된 잡기로부터 학습한 것입니다. 새로운 물체를 위해, 잡기 후보자는 point cloud data에서 유사하게 비교하면서 예측된다. Bierbaum등은 affordance를 plan grasp에 사용했다. 다른 연구와 달리, 주요 기여는 시뮬레이팅된 촉각 센성으로 잡기 affordance 연구를 수행한 것이다. Levine등은 딥러닝을 기반으로 하는 end-to-end 방식을 사용했다. 14개의 로봇이 다양한 물체에 대해 pick-up 모션을 탐험했고, 이미지에 기반한 잡기 affordance 와 적절한 모션을 학습했다.

 

단순한 잡기 affordance 외에도, 물체에 의해 달성되는 물체의 범주나 작업에 따른 물체 잡기에 대한 연구가 진행되고 있다. Granville등은 visual perception으로 얻어진 affordance로 다양한 도구의 예비 잡기를 수행했다. 이 affordance는 Robonaut robot에 의해 도구 clustering으로 사용되었다. Sahbani와 El-Khoury는 물체의 메시 모델을 분류하고 기하학적 분석 뿐만 아니라 인간의 선택으로 인한 학습으로 인한 물체의 잡기가능한 부분을 확신했다. 물체의 특징과 물체의 기능 사이의 관계가 고려되었다. Barch등은 시뮬레이트된 계획과 추후 추론을 통해 잡기 affordance을 학습하였다. 초기의 잡기는 자동적으로 Graspit! 시뮬레이터를 통해 계획되었다. 저자들은 미리정의된 특징과 규칙을 사용해 어떤 물체에서 어떤 잡기가 가능한지 학습하였다.

A  Robonaut  is a dexterous humanoid  robot  built and designed at NASA Johnson Space Center
grapsit! 시뮬레이터

Zhu 등은 작업-기반  affordance 모델을 이용해 도구를 선택하고 사용하는 방법을 제안했다. 방법은 할당된 작업을 수행하기 위해 위치를 파악해야 함을 나타내는 어포던스 기반과 타겟에 작용할 위치를 나타내는 기능 기반의 두 가지 속성을 정의했습니다. 그들은 성공적으로 affordance를 사용해 다른 작업들을 위해 도구와 잡기 위치를 선택했다. 

 

학습의 결과와 단순한 잡기 affordance를 사용하는 것은 제안될 것이다. 작업-기반 잡기는 인간과 같은 로봇의 작업을 위해 불가결하다. 비록 다양한 연구들이 작업-기반 잡기 위치를 제공하지만, 잡기에 의해 목표 작업을 달성하기 위해 해당 동작을 실행할 수 있는 지에 대한 여부는 고려되지 않았다. 이에 대응하기 위해, 잡기와 동작(motion)은 동시에 학습되어야 한다. 

 

[For manipulation]

수많은 연구가 다양한 형식의 매니퓰레이션 작업을 위해 다양한 방법론을 사용하여 물체 매니퓰레이션을 통해 나아가고 있다. Table3은 획득과 인식 affordance 방법에 기반을 두는 매니퓰레이션 연구들을 제시한다.

table 3

존재론-기반 방법은 affordance를 정의하는 수동적인(manually) 방법이다. 본 연구에서는 특정 로봇에 대한 적절한 어포던스를 얻기 위해 환경에 대한 인식을 의미론적으로 처리하고 사용 가능한 로봇 중 냉장고 문을 밀고 있는 것과 같은 특정 작업을 수행할 수 있는 로봇을 결정합니다. Reich 등은 affordance를 사용해 task-level 모션 시퀀스를 계획했다. 그들은 물체와 지지표면 사이의 관계와 같은 의미론을 고려하여 affordance를 획득했다. 가능하게된 행동들은 그들의 주의 물체들을 고려하여 연관되었다. 예를 들어, 로봇은 물체가 테이블 위에 있다면 물체를 밀 수 있을 것이고, 물체가 벽에 기대어 있다면 집을 수 있을 것이다. 이 획득된 affordance는 이중팔 KUKA LWR을 통해 집고 놓는 작업을 수행했다.

KUKA LWR

연관된 affordance의 개념은 초기에 제안되었는데, 이는 여러 물체들 사이의 관계와 상호작용을 모델링하고 또한 필수적으로 의미론적인 affordance 이다. Hart등은 affordance 템플릿 ROS 패키지를 개발해 ROS 환경에서 로봇의 잡기와 목표 자세를 빠르게 계획하고 수정하였다.(https://bitbucket.org/traclabs/affordance_templates/src/master/)(ros indigo) 이는 로봇손과 목표물체 사이의 기하학적 관계, 손이 특정 작업을 수행하도록 하는 궤적을 저장했다. 이는 메뉴얼적으로 정의되었고 하지만 유사한 크기의 물체로 스케일링 될 수 있다. 이 ros package는 다양한 로봇이 물체와 도구를 매니퓰레이트하는 것을 돕기 위해 사용되었다. Romay등은 도한 물체의 물리적 특성과 affordance를 포함한 물체 템플릿을 디자인했다. 이 affordance는 과업을 달성하기 위해 생성될 수 있는 구속된 모션 경로의 위치의 모음과 같은 모션 구속조건으로서 정의된다. 이 템플릿은 Atlas robot에 적용되었고 DARPA 로보틱스 챌린지에서 몇몇 과제를 실행하는 데 사용되었다. 존재론과 의미론을 사용하면서, 넓은 범위의 물체들이 처리될 수 있지만, 하지만 이들은 수동적으로 프로그래밍되어야 하고 데이터베이스에 저장되어야 하며 결과적인 affordance 는 얼마나 정확히 인식 시스템에 의해 물체가 인지되느냐에 의존한다. 

 

대조적으로, 수동적으로 affordance를 정의하는 것 대신에, 인간은 주어진 과제를 설명하고 로봇이 물체와 연관된 affordance를 학습한다. Montesano 등은 인간 설명과 로봇-물체 상호작용을 동시에 관찰함에 따라 다른 affordance를 학습하는 것을 가능하게 하는 Bayesian 네트워크를 기반으로 하는 확률론적 모델을 개발했다 - 물체에 있어서의 행동을 예측하고 과업 해석과 계획 능력을 제공하기 위해. 그 결과는 인간의 물체 선택의 단순한 모방 게임 위에서 휴머노이드 로봇에 의해 실행되었다. Ek등은 물체 이양(handover)을 위한 affordane를 획득하기 위한 알고리즘을 개발하였다. 목표는 물체를 로봇에서 인간으로 이양하는 것이었고, 로봇은 이양 동작 동안 인간을 위한 잡을 수 있는 특징을 준비하는 것이 필요하다. 이 작업은 affordance를 학습하기 위해 시뮬레이션과 실제 세상에서 인간의 모션의 이후 관측에서 수동적으로 트레이닝 데이터를 생성하기도 했다. (motionese(모셔니즈)는 유아와 로봇을 위한 과장된 행동이다.) Ugur등은 '부모의 (scaffolding)발판'과 '모셔니즈'를 이용해 물체의 affordance를 가르친다 - 개발적인 심리학에서 보호자들의 아이들의 기술 회득을 효율적으로 돕는 것으로 보여진다. 부모(인간 교사)는 로봇을 hold하도록(scaffolding)제안되고, 짧고 긴 동작들(motionese)를 사용해 로봇이 물체를 잡고 움직이는 것을 가르친다. 로봇이 부모의 scaffolding 가르침으로부터 적절한 affordance를 획득하고 그리고 잡기-모션 계획을 융합하기 위해 획득한 affordance를 사용한다. 그들은 밀기와 pick-and-place같은 단순한 동작을 설명한다. 인간의 설명을 사용해 로봇에 어떻게 특정한 물체를 매니퓰레이트하는지 가르치는 것은 수동적으로 각각의 물체의 affordance를 정의하는 부담을 감소시키고, 하지만, 물체의 범위가 제한되었다. 

 

...

 

[Cloud database for advanced manipulation intelligence]

많은 연구자들은 affordance의 개념에 기반을 둔 인식, 잡기, 물체 매니퓰레이팅을 위한 연구를 수행했다. 그러나, 여전히 어떻게 affordance가 표현되어야하는지, 어떻게 로봇이 affordance를 학습하고 인지하는지, 그리고 검출된 affordance에 따라 어떻게 적절한 동작을 수행하는지에 대해서는 아직 명확하게 제시되지 않고 있는데, 이는 정확히 여러 연구 분야에서 진행되고 있는 작업이다. 특별히 물체 매니퓰레이션에 대해서, 몇몇의 개별 연구가 시작되었고, 객체 이미지, 3D 및 rgb-D 데이터의 여러 우수한 데이터베이스(예를 들어 [90]에 나열됨)는 객체 인식 및 파악 연구 분야를 인상적으로 발전시켰으며 제안된 각 방법론을 비교할 기회를 제공했습니다. 그러나, 매니퓰레이션을 위한 데이터베이스는 없다. Yale 데이터셋은 인간이 몇몇의 데일리 작업을 수행하거나 일을 제조할 때의 비디오만 포함한다.(https://www.eng.yale.edu/grablab/humangrasping/)(The Yale human grasping dataset: Grasp, object, and task data in household and machine shop environments)

존재하는 인간의 모션 데이터베이스는 주로 걷기 같은 몸-전체적인 모션에 집중하고, 테이블을 닦는 것 같은 매니퓰레이션 모션은 거의 없다.(https://motion-database.humanoids.kit.edu/list/datasets/)(The KIT whole-bodyhuman motion database)

물체 매니퓰레이션을 위한 affordance 연구를 가속화하기 위해서, 다양한 모션 데이터가 누적되어야 하고 첫번째 단계로 연구 커뮤니티에서 활성화되어야 한다.

 

그러므로, 일본의 국립 프로젝트의 일환으로, 저자들은 인간과 같은 advanced manipulation intelligence를 위한 cloud-database를 만들고 있다. 인간은 유연하게 다양한 작업을 수행할 수 있다. 이것은 아마도 왜냐하면 인간은 다양한 작업을 수행하는 경험을 개념화할 수 있고, 또한 새로운 작업의 경험을 통해서 기술과 지식을 누적시킬 수 있다. 즉, 어떻게 인간이 affordance와 상응하는 행동을 학습하고, affordance를 인식하고 새로운 상황을 위한 적절한 모션을 깨닫는 지에 대한 방법이다. fig1이 database의 개략도를 보여준다.

이 database는 object database, task database, motion database로 이뤄져 있다. database를 만들기 위해서, 중요한 것은 특정한 작업에 대해 다양한 정보를 축적하는 것이다. 하나의 작업은 여러 서브 작업들로 이뤄저 있고, 각각의 서브 작업은 서브 작업을 수행하는 데 필수적인 다양한 모션과 연관된 물체로 이뤄저 있다. 첫 시도에서 어떤 정보가 중요한지는 분명하지 않지만, 그러므로 우리는 가능한 한 모든 정보를 단단하게 다른 로봇이 사용할 수 있는 형식으로 남겨야 한다. 왜냐하면 물체 매니퓰레이션 작업 중에 많은 물체들이 있을 수 있기 때문에, 로봇이 잡아서 조정할 물체는 manipulated object로 정의되고, manipulated object를 사용하면서 작업된 물체는 environment object로 정의된다. 두 물체가 잡아지고 dual arm에 의해 작동될 때, 편의를 위해서, 하나는 manipulated object로 정의되며 다른 하나는 environment object로 정의된다. 우리는 도구 매니퓰레이션과 조립 작업에 집중한다. 왜냐하면 도구는 좋은 목표이기 때문에 왜나면 그들이 어떻게 사용되는지 상대적으로 분명하기 때문이다. 조립에 대해서,전통적인 모델-기반 방법은 품종과 수량이 다양한 생산 때문에 점점 어려워지기 때문에, 제조업에서 심지어 수요가 있다. 다음은 database에서 누적되는 정보들이다.

 

[Task information]

작업 절차(서브작업들의 순서, 서브작업에서 모션의 순서)

작업자의 정보(인간, 로봇 등등)

로봇의 정보(식별자, 종류, 구성하는 파트, 손 정보같은 정보)

 

[Object information]

물체 식별자(각각을 구별하는 적절한 명사)

카테고리 이름(물체의 종류)

형태 정보(3D shape file)

물리적 정보(무게, 질량중심, 재료, 강성 등)

 

[Motion information]

잡는 지점, 잡기 구성(manipulated object)

잡기 지점, 잡기/고정 구성(environmental object)

environmental object의 reference 로서의 manipulated object의 위치/방향 time sequence

힘 정보의 time sequence

모션의 제어 방법과 제어 파라미터

모션 도중 시각 정보

 

이러한 정보의 종류들은 인간 작업자 또는 로봇 티칭 데이터로부터 수집된다. 적은 구속조건으로 인간의 작업 데이터를 쉽게 모드기 위한 시스템이 건설된 것 뿐만 아니라, 로봇 티칭 정보를 효율적으로 저장하고 공유하기 위한 프레임워크가 개발되었다. 우리는 이러한 시스템들과 동일하게 yaml기반의 데이터 축적을 위한 템플릿을 만들었다. 

 

먼저 database의 사용처는 다음과 같다. 로봇에 새로운 과제가 할당되면, 관련된 정보를 얻기 위해 database로 질문이 보내질 것이다. 만약 이 특정한 직업에 대해 정보를 가지고 있다면, 직접적으로 사용될 것이다. 또한 비슷한 작업에 대해 정보로 부터 모션 디자인을 위한 가이드인을 얻을 수 있다. 작업을 실행한 후에, 모션 정보 혹은 실제로 수행된 작업의 결과는 정보를 누적하거나 업데이트 하기 위해 업로드 될 것이다. 데이터베이스의 주요 목적인 두 번째 사용 사례는 데이터베이스가 개방형 플랫폼이 되어 다양한 affordance 프레임워크를 활용하고 다양한 로봇에 대한 다양한 조작 작업을 처리하는 affordance연구를 가속화하는 지원을 제공하는 것입니다.