AI 뉴스허브

Agility Robotics가 NVIDIA Isaac Lab을 통해 Sim2Real 격차를 극복하는 방법

Agility Robotics가 NVIDIA Isaac Lab을 통해 Sim2Real 격차를 극복하는 방법

Agility Robotics가 NVIDIA Isaac Lab을 통해 Sim2Real 격차를 극복하는 방법

Agility Robotics에서는 항상 능동적으로 균형을 유지하고 예상치 못한 충격으로부터 회복할 수 있으며 무거운 물건을 들어올리고 이동할 수 있는 휴머노이드 로봇 Digit을 사용하여 작업하고 있습니다. 자유도는 28도이고 센서도 꽤 많습니다. 실시간으로 결정해야 하는 복잡한 작업을 위해 수집해야 할 정보가 많고 조정해야 할 작동 장치도 많습니다.

문 손잡이를 잡는 것과 같은 모든 행동이나 환경과의 접촉은 로봇의 모든 관절에서 느껴질 수 있으며 다리가 전체의 균형을 맞추는 방법에 영향을 미칩니다.

그럼 다음과 같이 동적 로봇을 제어하는 ​​두 가지 주요 접근 방식에 대해 이야기해 보겠습니다.

  1. 사용하여 모델 기반 제어 장치
  2. 사용하여 배운 제어 장치

많은 경우에. 그만큼 회사 이 문제를 해결하기 위해 모델 기반 제어와 역동역학을 사용합니다. 이 모델은 로봇 내부의 컴퓨터에서 온라인으로 실행되는 Digit의 단순화된 물리 모델로, 온보드 관성 측정 장치와 모든 위치 센서의 측정값을 기반으로 로봇의 균형을 맞추기 위해 발을 놓을 위치 등을 계산합니다.

그런 다음 역동역학을 사용하는데, 이는 다음의 모델을 사용합니다. 휴머노이드의 링크 질량, 관성, 액츄에이터 등을 사용하여 모델 기반에서 원하는 동작을 수행하기 위해 각 관절에 필요한 토크를 계산합니다. 제어 장치 (즉, 발을 특정 위치로 이동시키는 방법). 이러한 일련의 계산은 초당 수백 또는 수천 번씩 실시간으로 안정적으로 이루어져야 합니다.

그러나 이러한 종류의 모델을 구축하고 계산을 효율적으로 만드는 것은 매우 어려울 수 있습니다. 왜냐하면 지형의 가능한 마찰 모델부터 가능한 오류 유형에 이르기까지 관련될 수 있는 물리학의 모든 세부 사항을 열거해야 하기 때문입니다. 공동 센서. 그것은 믿을 수 없을 만큼 강력하지만 우리가 세상에 대해 많은 것을 알아야 합니다.

강화 학습(RL)은 동일한 문제를 해결하는 완전히 다른 방법입니다. 우리가 원하는 물리학으로 이어질 것이라고 생각되는 모터 토크를 계산하기 위해 실시간으로 탑재된 로봇과 세계 모델을 사용하는 대신, 시뮬레이션 온보드 로봇 컴퓨터보다 훨씬 강력한 오프보드 컴퓨터에서 로봇에 대한 제어 정책을 미리 배울 수 있습니다.

우리는 예상되는 장애물과 충돌이 있는 시뮬레이션 세계에서 시뮬레이션된 로봇을 가능한 한 자세히 모델링하고 수백만 개의 모터 토크 명령 세트를 시도하고 가능한 모든 응답을 관찰합니다. 우리는 비용 함수 명령이 다소 유용한 응답을 달성하는지 여부를 판단합니다.

상당한 시뮬레이션 시간(실시간으로 단 몇 시간) 동안 우리는 땅에 예상치 못한 구덩이가 있더라도 넘어지지 않고 돌아다니는 것과 같이 우리가 원하는 목표를 달성할 제어 정책을 학습합니다. 이는 우리가 현실 세계에서 무슨 일이 일어날지 정확히 알 필요가 없다는 것을 의미합니다. 우리는 실제 세계와 충분히 유사한 다양한 세계에서 잘 작동하는 컨트롤러를 찾으면 됩니다.

계산 노력과 모델링 노력을 절충합니다. 이는 우리가 그 경계가 무엇인지 정확히 알지 못하더라도 로봇을 사용하여 물리적으로 가능한 한계를 탐색하는 컨트롤러를 배울 수 있음을 의미합니다.

로봇 공학용으로 설계된 NVIDIA 도구를 통해 시뮬레이션으로 Digit을 교육합니다. | 출처: 엔비디아

우리는 다음과 같은 분야에서 이를 입증할 수 있었습니다. 단계 회복물리학은 특히 모델링하기 어렵습니다. Digit이 기반을 잃는 상황에서는 종종 우리가 ~하지 않다 무슨 일이 일어나고 있는지에 대한 좋은 모델이 있어야 합니다. Digit을 밀거나 붙잡는 무언가가 있을 수도 있고, 예상치 못한 방식으로 발이 땅에서 미끄러질 수도 있습니다. Digit에서는 어떤 문제가 발생했는지조차 알 수 없을 수도 있습니다.

그러나 우리는 강화 학습을 통해 컨트롤러가 이러한 많은 교란에 견고하도록 훈련할 수 있으며, 여러 상황에서 잘 작동하는 컨트롤러가 나타날 때까지 로봇이 떨어질 수 있는 다양한 방법에 대해 훈련할 수 있습니다. 다음 차트에서 훈련이 얼마나 큰 차이를 가져올 수 있는지 확인할 수 있습니다.

강화 학습으로 훈련된 컨트롤러(오른쪽)와 모델 기반 컨트롤러(왼쪽)의 성능을 비교합니다. | 출처: 민첩성 로봇공학

작년 초 우리는 NVIDIA Isaac Lab을 사용하여 이러한 유형의 모델을 훈련하기 시작했습니다. 함께 일하기 엔비디아우리는 Digit이 돌아다닐 수 있도록 몇 가지 기본 정책을 만들 수 있었습니다. 하지만 솔직히 말해서 그들은 이상한 행동으로 시작했습니다.

그러나 우리가 즉시 얻은 것 중 하나는 많은 더 많은 실험을 해보겠습니다. Isaac Lab과 GPU 가속 환경으로 이전하는 것은 CPU에서 시뮬레이션을 실행하는 것보다 훨씬 빨랐습니다. 이를 통해 우리는 훨씬 더 빠르게 반복하고 개선해야 할 핵심 영역을 식별하기 시작할 수 있었습니다.

Agility Robotics의 Sim2Real 격차 파악

강화 학습에서 아마도 가장 큰 과제는 시뮬레이터에서 훈련된 정책을 실제 로봇(따라서 “Sim2Real”이라는 용어)으로 전달하는 방법을 알아내는 것입니다. 실제 세계와 시뮬레이션된 세계 사이에는 작은 차이가 많이 있으며, 다양한 변형이 있는 많은 세계를 시뮬레이션하더라도 몇 가지 중요한 구성 요소가 누락될 수 있습니다. 언제나 현실 세계에서 일어나는 일이고 절대 시뮬레이션에서도 같은 방식으로 발생합니다.

우리의 경우 발가락 충격이 그러한 영역 중 하나입니다. 모든 발자국마다 Digit은 발가락판 중 하나로 땅에 충격을 줍니다. 그리고 그 영향의 결과는 예측하기 어렵습니다.

지면에 충격을 가하는 것은 이미 매우 혼란스러운 물리적 문제입니다. (형식적인 의미에서 “혼돈”은 입력의 매우 작은 편차가 시간이 지남에 따라 출력의 무한한 변화로 이어질 수 있음을 의미합니다.)

발이 착지하는 방식에 따라 미끄러지거나 접지력이 많이 걸릴 수 있습니다. 많은 힘을 행사할 수도 있고 약간만 힘을 행사할 수도 있습니다. 그리고 그 작은 변화는 몸통의 나머지 부분이 어디에서 끝날지 예측할 때 결과에 ​​큰 변화를 가져올 수 있습니다.

이것이 바로 우리의 초기 Isaac Lab 정책 중 일부에서 일어난 일입니다. 시뮬레이션에서 로봇은 자신감 있고 튼튼하게 걸을 것입니다. 그러나 현실 세계에서는 격렬하게 미끄러지고 미끄러질 것입니다.

이와 같은 Sim2Real 격차가 발생하면 두 가지 옵션이 있습니다. 쉬운 옵션은 로봇이 하고 있는 나쁜 일은 무엇이든 하지 말라고 말하는 새로운 보상을 도입하는 것입니다. 그러나 문제는 이러한 보상이 로봇의 덕트 테이프와 비슷하다는 것입니다. 우아하지 않고 근본 원인이 누락되어 있습니다. 그것들은 쌓이고 다른 많은 용어들로 인해 정책의 원래 목적을 흐리게 합니다. 이는 작동할 수 있지만 이해할 수 없는 정책으로 이어지며, 새로운 보상으로 구성될 때 예측할 수 없게 작동합니다.

또 다른 더 어려운 옵션은 한발 물러서서 시뮬레이션의 내용이 현실과 다른 점을 파악하는 것입니다. 기업으로서의 민첩성은 항상 우리가 하는 일의 이면에 있는 물리적 직관을 이해하는 데 중점을 두었습니다. 이것이 바로 우리가 액추에이터부터 소프트웨어까지 로봇을 설계한 방식입니다.

우리의 RL 접근 방식도 다르지 않습니다. 우리는 그리고 그걸 이용해 운전을 해 어떻게. 그래서 우리는 시뮬레이션된 발가락이 실제 발가락과 동일한 기능을 수행하지 않는 이유를 알아내기 위해 6개월 간의 여정을 시작했습니다.

많은 이유가 있음이 밝혀졌습니다. 충돌 기하학의 단순화된 가정, 액추에이터와 변속기를 통해 에너지가 전파되는 방식의 부정확성, 고유한 폐쇄 사슬 운동학(발가락판과 족절에 부착된 커넥팅 로드에 의해 형성됨)의 제약 조건이 해결되는 방식의 불안정성이 있었습니다. 그리고 우리는 이러한 격차를 체계적으로 연구하고 수정하고 제거해 왔습니다.

최종 결과는 우리의 RL 소프트웨어 스택에서 큰 진전이었습니다. “발을 흔들지 마세요”부터 “더 똑바로 일어서세요”까지 모든 것에 대해 쌓인 보상 기능 대신 에너지 소비 및 대칭과 같은 더 간단할 뿐만 아니라 기본 직관을 따르는 몇 가지 보상이 있습니다. Digit이 어떻게 움직여야 하는지에 대해 알아보세요.

시뮬레이션이 왜 다른지 이해하기 위해 시간을 투자함으로써 애초에 Digit이 특정 방식으로 움직이기를 원하는 이유에 대해 더 많은 것을 배울 수 있었습니다. 그리고 가장 중요한 것은 AI 기반 로봇 테스트를 시뮬레이션하기 위해 NVIDIA Omniverse에 구축된 참조 애플리케이션인 빠른 NVIDIA Isaac Sim과 결합하여 우리가 차세대 Digit에서 원할 수 있는 다양한 물리적 특성의 영향을 탐색할 수 있게 되었다는 것입니다.

전통적인 신발 스타일 트레드(오른쪽) 대신 4개의 접촉점을 사용하는 수정된 발가락/발 개념(왼쪽)의 예입니다. | 출처: 민첩성 로봇공학

우리는 2024년 로봇 학습 컨퍼런스(CoRL) 다음 주 독일 뮌헨에서 열립니다. 하지만 이야기의 교훈은 세상과 로봇의 역동성을 이해하고, 증상을 치료하기보다는 소음과 불확실성의 원인을 이해함으로써 NVIDIA Isaac Lab을 사용할 수 있게 되었다는 것입니다. 시뮬레이션을 만들기 위해 점점 현실에 가까워지고 있는 것.

이를 통해 시뮬레이션된 로봇 동작을 로봇에 직접 전송할 수 있습니다. 이는 실제 세계에서 더욱 지능적이고 민첩하며 강력한 Digit 제어를 위한 간단하고 직관적인 정책을 만드는 데 도움이 됩니다.

편집자 주: 이 기사는 Agility Robotics의 허가를 받아 배포되었습니다. 블로그.

저자 소개

Pras Velagapudi는 Agility Robotics의 최고 기술 책임자입니다. 그의 전문 분야에는 산업 자동화, 로봇 조작, 다중 로봇 시스템, 모바일 로봇, 인간-로봇 상호 작용, 분산 계획 및 최적화가 포함됩니다. Agility에서 일하기 전에 Velagapudi는 Berkshire Grey의 모바일 로봇공학 부사장 겸 수석 설계자였습니다.

게시물 Agility Robotics가 NVIDIA Isaac Lab을 통해 Sim2Real 격차를 극복하는 방법 처음 등장한 로봇 보고서.

Exit mobile version