Learning Vision-based Agile Flight via Differentiable Physics 간단 리뷰

신희준·2026년 2월 9일

[Learning Vision-based Agile Flight via Differentiable Physics]([2407.10648] Back to Newton's Laws: Learning Vision-based Agile Flight via Differentiable Physics) (Yuang Zhang, Yu Hu, Yunlong Song, Danping Zou, Weiyao Lin / Nature Machine Intelligence 2025)

Problem

기존 방법 한계

  • 기존 방법 1 : Classical Methods : localization + mapping + planning + control

    • cascade structure기 때문에 latency + error 누적 → 빠른 비행 불가
    • localization + mapping 자체가 computation 높고, high speed에서 불안정
  • 기존 방법 2 : RL control : explicit mapping + planning이 없는 end-to-end policy

    • slow convergence, data-intensive → large scale parallelized env 필수적
    • 이전에는 state based control 문제만 주로 다루어짐
  • 기존 방법 3 : Imitation learning

    • expert demonstration에 너무 크게 의존
    • 특정 task만 수행 가능

Differentiable physics

  • Differentiable physical simulator를 통해 직접 backpropagation 가능
  • 기존 model-free RL은 샘플링된 rollout을 통해 policy gradient를 추정하는 식
  • 반면 differentiable simulator에서는 loss에서 시작한 gradient가 policy에 직접 반영 → sample efficiency 매우 높음

Core Idea

Task

  • Task = velocity tracking + obstacle avoidance → vision-based 이고 velocity 정보를 입력으로 활용하지 않아도 velocity tracking이 가능

Method

  1. quadrotor dynamic 자체를 simple point mass로 가정
    → 오히려 학습 효율이 좋음
    ➡️ acc만으로 state 계산 가능 → 시뮬레이션 진행 빠름
    ➡️ 미분 계산이 간결해짐 → 강체 모델 쓰면 자세와 회전을 다뤄야해서 비선형성이 추가됨
    ➡️ low-level control은 내부 FC → 드론 하드웨어 의존성 낮음
  1. 시뮬레이션 환경 자체도 simple한 환경으로 구성

    → high fidelity가 아니여도 충분히 잘 일반화 됨

  2. Backpropagation 할 때 position, velocity gradient에 exp decay 적용

    • end-to-end로 gradient descent하면 gradient 터지는 경우가 많아서.

Input - Output

  • Network Architecture = CRNN 구조
    • CNN : depth map 입력을 받아 feature 추출
    • GRU : planning + control 수행
  • 입력 : image feature에 [target velocity + attitude estimation + velocity estimation (optional)] 을 추가해서 넣어줌
  • 출력 : GRU cell은 이 feature를 받아서 GRU state hth_t를 출력하고 이를 통해 thrust acceleration 명령과 velocity estimation을 출력

✅ acceleration을 출력하고 나머지는 FC가 알아서 제어하도록 설계
→ point mass dynamics와 딱 맞음 (acc만 있으면 바로 다음 state 계산 가능)
→ FC는 acc 받아서 thrust vec → att → rate → motor control 수행
→ 기체 의존성 제거

✅ RNN을 활용하여 internal state estimate 정보를 가지고 있을 수 있도록 설계 → velocity tracking loss

✅ GRU가 속도를 예측하게 함으로써 GRU의 내부 state가 물리적인 상태 정보를 담을 수 있도록 강제하는게 자연스럽긴 한데,, 이 velocity estimation을 정확히 어떻게 활용하는지 논문에는 안 나와있는거 같음.
→ 이렇게 해서 실제로 odometry-free인 상황에서도 오히려 VIO를 쓴 agent보다 잘 비행함.

profile
공부하고 싶은 사람

0개의 댓글