benediamond / leela-chess

A chess adaption of GCP's Leela Zero
14 stars 3 forks source link

Introduction

This is a work-in-progress adaptation of GCP's Leela Zero repository to chess, using Stockfish's position representation and move generation. (No heuristics or prior knowledge are carried over from Stockfish.) When complete, it should ultimately be a faithful replication of AlphaZero, as described in Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm. The goal is to have a very fast C++ MCTS utility for chess. (See mokemokechicken/reversi-alpha-zero, Zeta36/chess-alpha-zero, and benediamond/chess-alpha-zero for existing Python analogues.)

The code is not functional yet, but it shouldn't be too far off. Please see the Issues section for remaining tasks. Collaboration is welcome!

Requirements

Like Leela Zero, Leela Chess requires boost and BLAS, among others. Please see Leela Zero's README for details.