Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm
범용 강화학습 알고리즘의 자기대국으로 체스와 쇼기 마스터하기
David Silver, Thomas Hubert, Julian Schrittwieser, et al. (2017)
자기 대전(self-play) 강화학습과 몬테카를로 트리 탐색(MCTS)만으로 체스, 쇼기, 바둑 세 가지 보드게임 모두에서 각 분야 최강 프로그램을 능가한 범용 게임 AI 알고리즘이다.
배경
AlphaGo와 AlphaGo Zero는 바둑에서 초인적 성능을 달성했지만 바둑에 특화된 설계 요소를 포함하고 있었다. 체스에서는 Stockfish가 수십 년간 축적된 인간 도메인 지식(오프닝 북, 엔드게임 테이블, 수작업 평가 함수)을 기반으로 최강의 성능을 보이고 있었다. 단일 알고리즘으로 서로 다른 규칙과 전략적 특성을 가진 여러 게임을 마스터할 수 있는지가 핵심 질문이었다.
핵심 아이디어
AlphaZero는 게임 규칙 외에 어떠한 도메인 지식도 사용하지 않는다. 단일 뉴럴 네트워크 f_θ(s) → (p, v)가 현재 보드 상태에서 행동 확률 분포 p와 승률 예측 v를 동시에 출력한다. MCTS는 이 네트워크를 가이드로 사용하여 탐색 트리를 확장하며, 탐색 결과로 개선된 정책을 다시 네트워크 학습의 타겟으로 사용한다. 자기 대전으로 생성된 게임 데이터만으로 학습하며, 동일한 아키텍처, 하이퍼파라미터, 알고리즘으로 세 게임을 모두 학습한다. AlphaGo Zero와 달리 대칭 증강을 제거하고, 게임별 수정 없이 동작하도록 일반화했다.
방법론
ResNet 기반의 뉴럴 네트워크(19개 또는 39개 잔차 블록)를 사용하며, 5,000개의 TPU로 자기 대전을 수행하여 학습 데이터를 생성한다. 각 수(move)마다 800번의 MCTS 시뮬레이션을 실행하고, MCTS의 방문 횟수 분포를 정책 타겟으로, 게임 결과를 가치 타겟으로 사용하여 네트워크를 업데이트한다. 바둑은 약 70만 스텝, 체스는 약 30만 스텝, 쇼기는 약 11만 스텝 학습한다.
주요 결과
체스에서 Stockfish를 압도적으로 이겼으며(28승 72무 0패), 쇼기에서 elmo를, 바둑에서 AlphaGo Zero 3일차 버전을 각각 능가했다. 세 게임 모두 수 시간의 자기 대전 학습만으로 초인적 수준에 도달했으며, 체스에서는 인간 전문가가 '외계인 같은 직관적 플레이'라고 평가한 독창적인 전략을 발견했다.
임팩트
AlphaZero는 도메인 지식 없는 단일 알고리즘이 복수의 완전 정보 게임에서 최정상에 도달할 수 있음을 증명하며, 범용 AI 알고리즘의 가능성을 실증했다. 이후 MuZero(환경 모델 학습), AlphaStar(불완전 정보 게임) 등으로 확장되었으며, 체스 엔진 Leela Chess Zero 등 오픈소스 프로젝트에도 직접적 영향을 미쳤다. 과학적 발견(단백질 구조 예측, 수학 정리 증명)에 자기 대전 학습을 적용하는 연구에도 영감을 주었다.