온보드 카메라의 raw 픽셀 입력만을 사용하여 인간 조종사처럼 드론을 레이스 트랙에서 자율 비행
Intermediate Representation이나 Explicit State Estimation 없이, dreamerv3를 이용해 pixel-to-command MBRL의 실현 가능성을 입증
Takeaways
기존의 Model-free 방법론을 이용한 raw pixel → command 학습은 거의 불가능에 가까움
⇒ 이전 논문에서 다룬 여러가지 trick이 필요
Model-based RL인 DreamerV3를 활용하여 훨씬 sample efficient 하게 학습 가능
→ world model을 학습해서 imaginary rollout으로 actor / critic 학습 가능
→ 여전히 real world에서 여러 task에 대해 world model을 잘 학습시킬 수 있을지는 의문
Limitation
실제로 학습하고 시간이 많이 든다고 함.
→ 수렴하는데 20 million steps ~ 240 시간 학습
→ RSSM world model을 학습하는데 가장 많은 시간 소요
computation이 많아 real-time operation이 어려움
→ policy만 돌리는게 아니고 world model을 같이 돌려줘야함
→ offboard가 필수적
Preliminary
MBRL (Model-Based Reinforcement Learning): Transition Dynamics을 학습하는 World Model을 사용하여 샘플 효율성을 높이는 RL 방법론
DreamerV3: MBRL의 최신 아키텍처로, 세계 모델 학습과 정책 훈련을 분리하여 효율성을 높인 알고리즘
Model-based reinforcement learning = MBRL
world model을 활용해서 환경의 동역학을 근사하는 함수를 학습하는 방법. (~transition dynamics modelling)
강화학습에서 환경은 어떤 action을 취했을 때, 어떻게 state가 변하는지를 알려줌.
model-based는 이 환경 자체를 학습
→ 실제 env rollout으로 world model 학습
→ policy 학습은 world model의 imagination rollout에서 수행
표본 효율 향상 (sample efficiency)
model-free는 실제 환경을 매번 돌려야 하지만, MBRL은 world model 안에서 시뮬레이션처럼 상상(rollout) 가능.
즉, 한 번의 경험으로 world model을 갱신해두면, 그걸로 수천 번의 가상 경험을 재활용할 수 있음.
일반화 능력 향상 (generalization)
world model이 드론의 물리 dynamics를 잘 배우면, 비슷한 구조의 다른 task에도 쉽게 적용 가능.
하지만 모델 복잡도가 증가하고, 학습시간이 증가한다는 단점이 있음.
world model을 배우면서 control policy를 동시에 학습해야하기 때문
Introduction
명시적 상태 추정 의존: 기존 자율비행 drone racing system은 explicit state estimation 사용. (IMU와 onboard 센서 이용 → 인간의 시각 기반 비행과 다름.
이전 연구에서 RL을 활용하여 state estimation 없이 곧바로 pixel → action 출력하려는 시도.
Demonstrating agile flight from pixels without state estimation, 2024
픽셀을 이진 마스크로 단순화하여 사용 (게이트 seg) → Observation space의 complexity 해소
But, 게이트 정보 외의 유용한 시각 정보(배경, 중력 방향 등)를 손실
Bootstrapping reinforcement learning with imitation for vision-based agile flight, CoRL 2024
시뮬레이션 : Flightmare + Agilcious + Habitat Simulator
장비 : Quadro RTX 8000 한대
이미지는 64x64 RGB
Results
기본적으로 PPO로 학습한 모델은 학습자체가 거의 불가능함.
➡️ 예전에 다룬 여러 논문에서도 raw pixel → control 학습은 불가능하기 때문에 imitation learning을 한다던가, intermediate representation을 활용한다던가 했음.
reconstruction된 그림을 보면 학습이 진행되면서, 실제로 제어에 필요한 정보들을 담게 된다.
그런데 reconstruction 자체가 목적은 아님. 제약의 관점에서 봐야함.
→ latent만 보아도 어느정도 observation를 설명할 수 있어야 한다 정도.
Perception-aware emergent behaviour
학습 이후에 agent는 이동할때 카메라가 gate를 향하는 방향으로 이동하는 경향을 보임
→ reward function에 perception 관련 제약을 주지 않았는데도 자연스레 학습
→ 이것은 바로 위 그림에서 reconstruction했을 때, 뒷 배경보다는 gate에 집중하고 있음
이를 검증하기 위해 racing track에 두 개의 추가적인 gate를 설치했음 (실제로는 지나지 않아도 되는 게이트. reward에 포함 안됨)
검은색 화살표가 드론 카메라의 방향을 의미하는데, 카메라 시야가 실제 가야하는 게이트 + 추가적인 가짜 게이트에 골고루 분산된다는 것을 확인할 수 있음
→ 드론 입장에서 강한 시각적 특징을 가지는 게이트를 인지하고 이를 비행 등에 활용한다고 해석할 수도 있음
Real-world Setup
beta-flight활용하였고, offboard computer에서 계산한 collective thrust + bodyrate command를 직접 fc가 받아서 제어.
드론에 RF receiver 달아서 조종 신호 받으며, 이 신호가 바로 FC로 전달되는 구조
= 인간 레이서와 동일한 observation & control input modality
real-world deploy에는 HIL setup 활용
→ observation인 이미지는 habitat simulator에서 얻어지고, 이를 통해 얻어진 command는 실제 드론에 전송.
→ real world dynamics에서 실험한 것
☑️ perception은 여전히 simulation이긴 함. end2end real-world x