3- 물리 시뮬레이션 엔진은 로봇 학습의 진짜 병목인 '경험 수집 속도'를 병렬화·시간 압축·안전성·재현성으로 풀어낸다. 실물에서 수년이 걸리는 데이터를 GPU 한 장에서 수십 분 만에 만들어낸다.
41. What — 문제는 알고리즘이 아니라 '샘플'이다
5- 강화학습(RL) 정책 하나를 수렴시키는 데 필요한 환경 상호작용 스텝 수는 보통 N \approx 10^8 \sim 10^9 규모다.
6- 사족보행이나 손 안 물체 조작처럼 접촉(contact)이 많은 과제는 이 수치가 더 커진다. OpenAI의 Dactyl은 정육면체 인-핸드 조작 하나를 위해 약 100년 분량의 경험을 소비했다(OpenAI et al., 2019).
7- 제어 주기 f [Hz], 동시에 굴리는 실물 로봇 대수 K 대일 때 필요한 순수 실행 시간은 다음과 같다.
8
T_{real} = \frac{N}{f \cdot K}
9- N = 10^9, f = 50 Hz, K = 1이면 T_{real} \approx 2 \times 10^7초 \approx 약 231일이다. 그것도 리셋·충전·정비 시간을 0으로 가정한 하한값이다.
102. Why — 실물 로봇 훈련이 실패하는 네 가지 이유
11- 시간: 위 계산대로 수개월~수년. 하이퍼파라미터 하나 바꿀 때마다 이 비용을 다시 낸다.
12- 파손과 안전: 탐색 초기의 정책은 무작위에 가깝다. 사족보행 로봇은 넘어지고, 매니퓰레이터는 자기 관절 한계를 때린다. ANYmal급 로봇은 감속기 하나 교체에도 수백만 원이 든다.
13- 리셋 비용: RL은 에피소드마다 초기 상태로 되돌려야 하는데, 실물에서는 사람이 물체를 다시 놓아주어야 한다. 이 '리셋 노동'이 실제 실험의 최대 병목이다.
14- 비재현성: 온도에 따라 모터 토크 상수가 변하고, 마찰은 마모에 따라 변한다. 어제의 실험과 오늘의 실험이 같은 환경이 아니므로 알고리즘 A와 B를 공정 비교할 수 없다.
153. How — 시뮬레이터가 제공하는 네 가지 레버
16- (1) 병렬화: 동일한 물리 스텝을 M개 환경에 대해 배치로 계산한다. 유효 처리량은 N_{steps}/s \propto M으로 스케일된다. Isaac Gym은 물리 상태와 관측·보상 텐서를 모두 GPU 메모리에 상주시켜 CPU-GPU 복사를 제거함으로써 단일 GPU에서 수천~수만 환경을 동시에 굴린다(Makoviychuk et al., 2021).
17- (2) 시간 압축: 실시간 배속(Real-Time Factor)을 RTF = t_{sim}/t_{wall}로 정의하면, 시뮬레이션 전체 처리량은 다음과 같다.
18
T_{sim} = \frac{N}{f \cdot M \cdot RTF}
19- MuJoCo는 단순 모델에서 RTF가 수백~수천에 달하고, GPU 병렬화까지 곱해지면 M \cdot RTF가 10^4를 넘는다. 앞의 231일이 20분대로 줄어드는 지점이 여기다.
20- (3) 안전성과 무료 리셋: 넘어져도 손해가 0이고, 리셋은 상태 벡터를 덮어쓰는 메모리 연산 한 번이다.
21- (4) 재현성과 특권 정보(privileged information): 같은 시드는 같은 궤적을 만든다. 또한 실물 센서로는 절대 못 얻는 값 — 접촉력, 마찰 계수, 지면 높이맵, 물체의 정확한 6D 자세 — 을 공짜로 읽을 수 있어 교사-학생 학습 같은 기법의 토대가 된다(Hwangbo et al., 2019; Lee et al., 2020).
224. 실제 사례 — 숫자로 본 효과
23- ANYmal 사족보행: 4096개 병렬 환경으로 평지 보행 정책을 단일 GPU에서 약 4분, 험지 정책을 약 20분에 학습(Rudin et al., 2021, "Learning to Walk in Minutes"). 동일 과제의 CPU 클러스터 기반 선행 연구는 수 시간~수일이 걸렸다.
24- 인-핸드 정육면체 조작: 실물 기반 접근(OpenAI et al., 2019)이 대규모 CPU 팜을 필요로 했던 과제를, GPU 시뮬레이터 기반 연구들은 워크스테이션 한 대 수준으로 재현했다(Allshire et al., 2021).
25- 공통점은 알고리즘(PPO 계열)이 바뀌어서가 아니라 초당 수집 가능한 경험량이 3~4자릿수 늘어서 생긴 변화라는 점이다.
265. 이 레슨의 범위 — 엔진 '내부'를 연다
27- 우리가 다룰 것: MuJoCo(Todorov et al., 2012)와 Isaac Sim/PhysX가 매 스텝 내부에서 무엇을 계산하는가.