세 도구의 층 구조
세 이름은 서로 경쟁하는 제품이 아니라 아래에서 위로 쌓인 층이다. Omniverse 가 3D 장면·물리·렌더링을 다루는 토대이고 그 위에 로봇 시뮬레이터 Isaac Sim 이 올라가며 Isaac Lab 은 다시 Isaac Sim 위에서 로봇의 정책(policy)을 학습시킨다.
| 층 | 정의 | 직접 하는 일 |
|---|---|---|
| Omniverse | 3D 시뮬레이션 앱을 만드는 NVIDIA 라이브러리 모음 | 장면 기술(OpenUSD), 렌더링(RTX), 물리 계산(PhysX) |
| Isaac Sim | Omniverse 위에 만든 로봇 시뮬레이터 | 로봇 import, 센서 시뮬레이션, ROS 2 연결 |
| Isaac Lab | Isaac Sim 위의 로봇 학습 프레임워크 | 환경 수천 개 병렬 실행, 강화학습·모방학습 |
게임에 견주면 Omniverse 는 게임 엔진, Isaac Sim 은 그 엔진으로 만든 로봇 게임, Isaac Lab 은 그 게임을 수천 판씩 동시에 돌려 AI 를 훈련시키는 훈련장과 같다.
Omniverse — 3D 시뮬레이션의 토대
Omniverse 는 실제처럼 보이고 물리 법칙대로 움직이는 3D 세계를 만들 때 필요한 부품을 NVIDIA 가 라이브러리로 묶어 둔 플랫폼이다. 로봇 전용이 아니라서 공장 digital twin, 자동차 디자인 검토, 영상 제작에도 같은 부품이 쓰인다.
| 구성요소 | 역할 | 로봇 시뮬레이션 용도 |
|---|---|---|
| OpenUSD | 3D 장면을 적는 파일 포맷·API | 로봇·책상·조명·카메라를 한 장면 트리로 저장 |
| RTX 렌더러 | GPU ray tracing 렌더링 | 시뮬레이션 카메라 이미지를 실제 사진에 가깝게 생성 |
| PhysX | GPU 가속 물리 엔진 | 관절·충돌·마찰 계산 |
| Kit SDK | 위 부품을 묶어 앱을 만드는 SDK | Isaac Sim 자체가 Kit 으로 만든 앱 |
예전에는 Omniverse Launcher 로 USD Composer 같은 앱을 내려받아 설치했지만 Launcher 는 2025-10-01 에 지원이 끝났다. 지금의 Omniverse 는 설치하는 프로그램 하나라기보다 GitHub·NGC 에서 가져다 쓰는 SDK·라이브러리 모음이라서 로봇 개발자가 Omniverse 를 따로 설치할 일은 거의 없다. Isaac Sim 을 설치하면 필요한 Omniverse 부품이 그 안에 들어 있다.
이 토대에는 로봇이라는 개념이 없다. 관절을 돌리는 모터, 라이다, ROS 2 토픽 같은 로봇 쪽 기능을 얹은 것이 Isaac Sim 이다.
Isaac Sim — 로봇 시뮬레이터
Isaac Sim 은 Omniverse Kit 으로 만든 로봇 시뮬레이션 앱이다. GUI 에서 장면을 꾸미고 재생 버튼을 눌러 로봇을 움직여 볼 수 있고 같은 작업을 Python 스크립트로 자동화할 수도 있다.
| 기능 | 하는 일 |
|---|---|
| 로봇 import | URDF·MJCF·CAD 파일을 읽어 링크·관절·충돌 모양을 갖춘 USD 로봇으로 변환 |
| 센서 시뮬레이션 | RGB·depth 카메라, 라이다, IMU, 접촉 센서 값 생성 |
| ROS 2 bridge | 시뮬레이션 속 센서 값과 관절 명령을 ROS 2 토픽으로 주고받음 |
| synthetic data 생성 | 조명·텍스처·물체 배치를 무작위로 바꿔 가며 라벨 달린 이미지를 대량 생성 |
ROS 2 bridge 는 실제 로봇과 같은 토픽 이름으로 센서 값을 내보내므로, 실물에서 돌릴 Nav2 나 MoveIt 2 스택을 코드 수정 없이 시뮬레이션에 먼저 붙여 볼 수 있다. 로봇이 벽에 부딪혀도 부서지는 것이 없으니 위험한 시나리오도 마음껏 시험한다.
라이선스와 버전. 2025-08 의 5.0 부터 소스가 GitHub 에 Apache 2.0 으로 공개됐고 2026-10 기준 최신 안정판은 2026-09 에 나온 6.1 이다.
실행 환경. NVIDIA RTX GPU 가 필수이고 OS 는 Ubuntu 22.04/24.04 와 Windows 11 만 지원한다. macOS 에서는 돌지 않으므로 Mac 사용자는 Linux PC 나 클라우드 GPU 인스턴스가 필요하다. 공식 README 가 적은 로컬 최소 사양은 GeForce RTX 4080 이다.
Isaac Sim 은 로봇과 장면을 만들고 돌려 보는 데까지를 맡는다. 강화학습을 하려면 수백만 번의 시도를 돌릴 병렬 환경과 보상 계산, 학습 알고리즘 연결이 더 필요한데, 이 틀을 매번 직접 짜기는 번거롭다.
Isaac Lab — 로봇 학습 프레임워크
Isaac Lab 은 Isaac Sim 위에서 로봇 정책을 학습시키는 오픈소스 프레임워크다. 공식 문서도 Isaac Lab 을 시뮬레이터가 아니라 "시뮬레이터 위에서 로봇 학습 앱을 만드는 framework" 로 정의한다. 물리 계산과 렌더링은 Isaac Sim 이 하고 Isaac Lab 은 학습에 필요한 환경 정의·병렬 실행·학습 알고리즘 연결을 맡는다.
GPU 병렬 환경
Isaac Lab 은 같은 로봇·같은 과제를 담은 환경 수천 개를 GPU 한 장에서 동시에 돌린다. 물리 계산과 신경망 계산이 모두 GPU 메모리 안에서 끝나 CPU 와 데이터를 주고받는 병목이 없고 모든 환경이 하나의 정책을 공유하므로 수천 개 환경에서 나온 경험이 한 신경망의 학습에 한꺼번에 들어간다.
왼쪽은 환경 하나가 에피소드를 하나씩 끝낼 때마다 시도가 한 번 늘어나고 오른쪽은 같은 시간에 수천 개 환경이 동시에 시도를 쌓는다. 경험이 빨리 쌓이는 쪽의 정책이 먼저 성공하기 시작한다.
ETH Zurich 와 NVIDIA 의 2021년 연구는 4족 로봇 ANYmal 수천 대를 워크스테이션 GPU 한 장에서 병렬로 학습시켜 평지 보행 정책을 4분 미만, 험지 보행 정책을 20분 만에 얻었고 그 정책은 실제 로봇에서도 걸었다.
근거: Rudin et al., Learning to Walk in Minutes Using Massively Parallel Deep Reinforcement Learning, CoRL 2021
Isaac Lab 이 제공하는 것
- 환경 정의 틀: observation·reward·종료 조건을 부품처럼 조립하는 manager-based 방식과, 한 클래스에 직접 적는 direct 방식
- 학습 라이브러리 연결: RSL-RL, skrl, RL-Games, Stable-Baselines3 를 같은 환경 인터페이스(gymnasium)로 연결
- 모방학습 도구: 사람이 직접 보여 준 시연 몇 개를 변형해 대량의 시연 데이터로 불리는 Isaac Lab Mimic
- 준비된 로봇·과제: 매니퓰레이터·4족·휴머노이드 16종 이상과 바로 학습 가능한 환경 30개 이상
- domain randomization: 질량·마찰·외력 같은 물리 값을 환경마다 다르게 주는 기능
설치가 끝났다면 4족 로봇 ANYmal-D 의 평지 보행 학습은 명령 한 줄이다.
# 화면 없이(headless) 병렬 환경으로 보행 정책 학습
./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py \
--task Isaac-Velocity-Flat-Anymal-D-v0 --headless
# 학습된 정책을 환경 32개로 재생
./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/play.py \
--task Isaac-Velocity-Flat-Anymal-D-v0 --num_envs 32
--headless 는 렌더링 창을 띄우지 않아 GPU 를 물리 계산과 학습에만 쓴다. 학습이 끝나면 정책이 .pt 파일로 저장되고 play.py 가 그 파일을 불러 로봇이 걷는 모습을 보여 준다.
Isaac Gym 에서 Isaac Lab 까지
Isaac Lab 이전에는 Isaac Gym 이 이 역할을 했다. Isaac Gym 은 Omniverse 와 별개인 독립 프로그램이었고 앞의 ETH Zurich 연구도 Isaac Gym 위에서 나왔다. 같은 시기 Isaac Sim 쪽에는 OmniIsaacGymEnvs 와 Orbit 이 따로 있었는데 NVIDIA 가 이 셋을 Isaac Lab 하나로 합치면서 Isaac Gym 은 지원이 끝난 legacy 가 됐다. 오래된 튜토리얼에서 Isaac Gym 을 보면 지금은 Isaac Lab 이 그 자리를 이어받았다고 읽으면 된다.
2026-09 에 Early Access 로 나온 Isaac Lab 3.0 은 물리 엔진을 바꿔 끼울 수 있게 했다. 기본 PhysX 외에 NVIDIA·Google DeepMind·Disney Research 가 함께 만든 오픈소스 엔진 Newton 을 고를 수 있고 Newton 을 쓰면 Isaac Sim 을 설치하지 않고도(kit-less) 학습이 돈다. 덕분에 글 첫머리의 층 구조와 달리 Isaac Lab 이 Isaac Sim 없이도 돌 수 있게 됐다. 정식 버전(GA)은 2026-10 말 목표다.
실제 작업 흐름
4족 로봇에게 걷기를 가르친다면 세 도구는 다음 순서로 쓰인다.
- Isaac Sim 에서 제조사가 준 URDF 를 import 하고 관절 drive·질량·충돌 모양이 실물과 맞는지 GUI 로 확인한다.
- Isaac Lab 에서 보상(앞으로 걸으면 +, 넘어지면 −)과 관측값을 정의하고
--headless로 수천 개 환경을 병렬 학습해 정책 파일을 얻는다. - 학습된 정책을 다시 Isaac Sim 장면에 넣고 ROS 2 bridge 로 실제 로봇과 같은 토픽 구조에서 돌려 본다.
- 문제가 없으면 실제 로봇에 정책을 올린다.
이름이 비슷한 다른 Isaac
NVIDIA 는 로봇 관련 제품 대부분에 Isaac 을 붙여서 검색하다 보면 시뮬레이터가 아닌 Isaac 도 자주 섞여 나온다.
| 이름 | 정체 | 돌아가는 곳 |
|---|---|---|
| Isaac ROS | GPU 가속 ROS 2 패키지 모음(인식·SLAM 등) | 실제 로봇의 Jetson·GPU |
| Isaac GR00T | 휴머노이드용 robot foundation model (GR00T N1 논문 해석) | 학습 서버·로봇 |
| Isaac Gym | Isaac Lab 이전의 병렬 강화학습 시뮬레이터 | 지원 종료 |
| Newton | 오픈소스 GPU 물리 엔진(Linux Foundation 프로젝트) | Isaac Lab 3.0 의 물리 backend |
요약
- Omniverse 는 3D·물리·렌더링 토대, Isaac Sim 은 그 위의 로봇 시뮬레이터, Isaac Lab 은 그 위에서 환경 수천 개를 병렬로 돌려 정책을 학습시키는 프레임워크다.
- 로봇 모델을 확인·검증할 때는 Isaac Sim 을, 정책을 학습시킬 때는 Isaac Lab 을 연다.
- 둘 다 NVIDIA RTX GPU 와 Linux 또는 Windows 가 필요하다.
참고 자료