본문 바로가기

프로젝트

유니티 ML-Agents를 이용한 드론 제어 강화학습

아래는 제 Drone Github 링크입니다.

https://github.com/cs20131516/UnityDroneChallenge

개요

본 프로젝트에서는 Unity ML-Agents 툴킷을 사용하여 드론 제어를 위한 강화학습 모델을 훈련시켰습니다. 다른 참가자들과 비교하여 뛰어난 성능을 보였으며, 특히 https://github.com/chaningdev/RL-Drone-Challenge-with-Unity 프로젝트보다 에피소드가 1/2배만 필요했고, https://github.com/kjwoo31/Unity_drone 프로젝트에 비해 3번의 성공 중 1번만 가능한 결과를 크게 개선할 수 있었습니다.

학습 알고리즘 및 설정

학습 파라미터

  • batch_size: 1024
  • buffer_size: 40960
  • learning_rate: 0.0001
  • beta: 0.01
  • epsilon: 0.01
  • lambd: 0.95
  • num_epoch: 3
  • learning_rate_schedule: linear

신경망 구조

  • normalize: true
  • hidden_units: 256
  • num_layers: 5
  • vis_encode_type: nature_cnn

보상 신호

  • extrinsic
    • gamma: 0.99
    • strength: 1.0
    • network_settings:
      • normalize: True
  • rnd
    • gamma: 0.99
    • strength: 0.1
    • network_settings:
      • hidden_units: 64
      • num_layers: 3
      • normalize: True
    • learning_rate: 0.0001

https://www.youtube.com/watch?v=mFqDPVDKbPI 

위의 영상은 학습 완료된 드론 시뮬레이션입니다.