(03) Basic Usage
Environment
우선 사람들은 아래와 같이 여러가지 이유로 인해 Isaac Sim을 사용할 수 있다.
- 순수 Robotics (ex. ROS 사용, verification 용)
- AI agent 생성 및 verification 용 (Computer Vision, Reinforcement Learning)
필자는 강화학습 (Reinforcement Learning, RL)을 이용한 모바일 로봇 (Wheeled-Mobile Robot, WMR)을 학습시킬 예정이므로, WMR을 기준으로 포스팅을 작성하겠다.
Requirements
WMR을 학습시키기 위해서는 아래와 같은 절차 (process)로 학습을 진행할 것인지 중요하다.
- 학습할 환경 (ex. Indoor, Outdoor, ...)
- 학습할 로봇 (ex. Robot Arm, WMR, ...)
- 학습할 목표 (ex. navigation, collision avoidance, ...)
- 학습할 알고리즘 (ex. DQN, DDPG, ...)
위와 같이 어떠한 환경에서 학습을 진행할 것인지, 어떠한 로봇을 사용할 것인지, 어떠한 목표로 우리의 로봇을 학습시킬 것인지, 어떠한 알고리즘을 통해서 학습시킬 것인지가 중요하다. 목표가 제대로 정해지지 않은 상황에서 학습을 수행한다는 것은 꿈이 없이 공부만 계속하는 것과 같을 것이다.
이렇게 우리가 나눈 절차대로 학습을 진행하기 위해 순서대로 어떻게 이루어지는지 살펴볼 것이다.
Isaac Sim Content
Omniverse Isaac release에 따라 자체적으로 사용할 수 있는 asset들이 있다. 만약, 아래에 나열된 환경, 로봇, 센서, 소품, 주요 자산을 가져다 쓰고 싶다면 이전 포스팅에 언급된 Nucleus 서버에서 파일을 다운로드하거나 Nucleus 서버에 Isaac Mount를 생성해야한다. 자세한 설치 내용은 Isaac Sim First Run 또는 Sample Asset에서 확인가능하다.
만약 Nucleus 설치 및 세팅이 완료되었다면 아래와 같이 확인할 수 있다.
Environment Assets
우선 필자의 경우 Indoor 즉, 실내에서 움직이는 로봇을 만들 것이다. Isaac Sim내에서는 다양한 환경 asset들을 지원하며, 지원하는 대표적인 환경 asset은 아래와 같다.
Simple Grid
Simple Grid는 평평한 지면 (flat ground)와 그리드 텍스처가 있는 측면이 포함되어 있다. 단순하게, 평평한 바닥이 무한하게 있는게 아니라 벽이 있다. 아래의 첫번째, 두번째 환경은 정사각형 형태이고, 세번쨰 환경의 경우 모서리가 구부러진 (curved) 환경이다.
Asset 위치: /Isaac/Environments/Grid/
Simple Room
Simple Room은 방에 테이블이 하나 놓여있는 구조이다.
Asset 위치: /Isaac/Environments/Simple_Room/simple_room.usd
Warehouse
warehouse 환경에서는 선반 위에 objects들과 장애물들이 배치되어 있다.
Asset 위치: /Isaac/Environments/Simple_Warehouse/
Hospital
Hospital 환경에서는 병원과 같이 여러개의 방과 공간이 꾸려져 있다.
Asset 위치: /Isaac/Environments/Hospital/hospital.usd
Office
Office 환경에서는 사무실처럼 여러개의 방과 복도로 꾸며져 있다.
Asset 위치: /Isaac/Environments/Office/office.usd
Jetracer Track
Jetracer track에서는 바닥에 레이싱 트랙이 생성되어 있어, Computer vision으로 line tracking 또는 line following을 수행해보고 싶은 사람들에게는 좋은 환경이다.
Asset 위치: /Isaac/Environments/Jetracer/jetracer_track_solid.usd
Robot Assets
Isaac Sim을 사용하는 사람들에게 희소식은 로봇의 경우 major한 (jetbot, carter) 로봇들은 이미 asset으로 제공하고 있다는 점이다.
Sensor Assets
Lidar, Radar, Camera 등 센서를 사용하고 싶다면 Isaac-Sim에서 불러와서 사용할 수 있다.
Sensor Assets
사람 또는 간단한 차량 등 Prop을 사용하고 싶다면 Isaac-Sim에서 불러와서 사용할 수 있다.
Sensor Assets
Nova Carter와 같은 featured assets을 사용하고 싶다면 Isaac-Sim에서 불러와서 사용할 수 있다.