[논문 리뷰] TLeague: A Framework for Competitive Self-Play based Distributed Multi-Agent Reinforcement Learning
TLeague는 복합적 경쟁적 자기학습 다중에이전트 강화학습을 위한 확장성 있고 클라우드 네이티브인 프레임워크로, 모듈러한 액터-러닝어-인퍼런스서버 아키텍처를 사용하여 하이브리드 CPU-GPU 클러스터에서 고처리량 훈련을 가능하게 한다. 스타크래프트 II와 비즈도움과 같은 벤치마크에서 최대 280만 프레임/초의 높은 처리량과 합리적인 확장성을 달성하며, PPO, V-trace, PBT 기반의 상대방 샘플링을 포함한 주류 알고리즘을 지원한다.
Competitive Self-Play (CSP) based Multi-Agent Reinforcement Learning (MARL) has shown phenomenal breakthroughs recently. Strong AIs are achieved for several benchmarks, including Dota 2, Glory of Kings, Quake III, StarCraft II, to name a few. Despite the success, the MARL training is extremely data thirsty, requiring typically billions of (if not trillions of) frames be seen from the environment during training in order for learning a high performance agent. This poses non-trivial difficulties for researchers or engineers and prevents the application of MARL to a broader range of real-world problems. To address this issue, in this manuscript we describe a framework, referred to as TLeague, that aims at large-scale training and implements several main-stream CSP-MARL algorithms. The training can be deployed in either a single machine or a cluster of hybrid machines (CPUs and GPUs), where the standard Kubernetes is supported in a cloud native manner. TLeague achieves a high throughput and a reasonable scale-up when performing distributed training. Thanks to the modular design, it is also easy to extend for solving other multi-agent problems or implementing and verifying MARL algorithms. We present experiments over StarCraft II, ViZDoom and Pommerman to show the efficiency and effectiveness of TLeague. The code is open-sourced and available at https://github.com/tencent-ailab/tleague_projpage
연구 동기 및 목표
- 경쟁적 자기학습 다중에이전트 강화학습(CSP-MARL)의 극도로 높은 데이터 효율성 요구사항을 해결하며, 수십억 프레임이 필요로 하는 수렴을 위한 요구사항을 충족한다.
- 이질적인 클러스터(_CPU와 GPU 포함)에서 다중에이전트 강화학습 에이전트의 대규모 분산 훈련을 가능하게 하여 학습을 가속화하고 훈련 시간을 단축한다.
- 표준 컨테이너 오케스트레이션 도구인 쿠버네티스를 지원하는 모듈러하고 확장 가능한 프레임워크를 제공하여 새로운 환경, 알고리즘 또는 상대방 샘플링 전략에 쉽게 적응할 수 있도록 한다.
- 분산 환경에서 높은 훈련 처리량과 합리적인 확장성을 달성하여 CSP-MARL을 연구 및 실세계 적용에 더 쉽게 접근 가능하게 한다.
제안 방법
- 환경 상호작용(데이터 수집)과 학습(기울기 업데이트)을 분리하기 위해 액터-러닝어-인퍼런스서버 아키텍처를 채택하여 효율적인 병렬 처리를 가능하게 한다.
- 중앙집중식 상대방 풀과 파라미터 서버를 사용하여 다양한 상대방 정책과 모델 가중치를 관리하며, PBT, 에이전트-익스플로이터, 또는 허구적 자기학습을 통한 동적 상대방 샘플링을 지원한다.
- PPO와 V-trace와 같은 정책 기반 강화학습 방법을 사용하여 가치 함수와 정책 학습을 수행하며, TCP 기반 Horovod allreduce를 통한 동기화 기울기 업데이트를 구현한다.
- 단순한 피드포워드에서 복잡한 DAG에 이르기까지 다양한 신경망 아키텍처를 지원하며, 새로운 모델을 쉽게 통합할 수 있도록 모듈러한 설계를 구현한다.
- 표준 쿠버네티스를 활용하여 오케스트레이션을 수행하며, 공개 또는 사설 클라우드 인프라에서 동적 확장을 지원하는 클라우드 네이티브 배포를 가능하게 한다.
- 블로킹 큐를 사용하여 데이터 흐름을 최적화하여 액터와 러닝어의 처리량을 균형 잡고, 데이터 지연을 최소화하며 온정책 학습의 정확성을 확보한다.
실험 결과
연구 질문
- RQ1모듈러하고 분산된 프레임워크가 경쟁적 자기학습 다중에이전트 강화학습 환경에서 고성능 에이전트를 훈련하는 데 소요되는 월드클록 시간을 크게 줄일 수 있는가?
- RQ2이질적인 CPU-GPU 클러스터가 다중에이전트 강화학습에서 훈련 처리량을 확장하는 데 얼마나 효과적으로 활용될 수 있는가?
- RQ3새로운 환경, 강화학습 알고리즘, 상대방 샘플링 전략에 대한 확장성은 어느 정도 수준까지 지원되는가?
- RQ4표준 클라우드 인프라를 사용할 때 스타크래프트 II와 비즈도움과 같은 실제 벤치마크에서 어떤 수준의 처리량과 확장성을 달성할 수 있는가?
- RQ5고처리량과 분산 훈련에도 불구하고, 프레임워크는 온정책 학습 품질을 어떻게 유지하는가?
주요 결과
- TLeague는 192개의 GPU와 60,000개의 CPU 코어를 사용하여 도타2 1v1 환경에서 최대 280만 프레임/초(rfps)의 처리량과 560만 프레임/초(cfps)의 처리량을 기록했다.
- 스타크래프트 II TStarBot-X 설정에서는 96개의 GPU와 4,200개의 CPU 코어를 사용해 4,200 cfps를 유지하며 단일 제르그 레이스 게임에서 강력한 확장성을 입증했다.
- 비즈도움 환경에서는 32개의 GPU와 1,152개의 CPU 코어를 사용해 8,200 cfps를 달성했으며, 프레임 스킵=2일 때 17.5개의 게임 내 프레임을 처리했다.
- 수백 개의 GPU와 수천 개의 CPU 코어에서의 확장성은 합리적이었으며, cfps/rfps 비율이 약 1.0에 가까워 데이터 지연이 최소화되고 온정책 학습의 정밀도가 높게 유지됨을 보였다.
- TLeague는 스타크래프트 II(zvz 전체 게임), 비즈도움(CIG 2016 트랙 1), 폰머맨(NeurIPS 2018 2vs2 경연)에서 강력한 성능을 달성한 에이전트를 성공적으로 훈련시켜 그 효과성을 입증했다.
- 오픈소스 프레임워크는 프로덕션 환경에서 사용 가능하며, 텐센트 클라우드를 포함한 주요 클라우드 제공업체와의 통합을 지원한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.