| --- |
| license: mit |
| library_name: pytorch |
| tags: |
| - chess |
| - alphazero |
| - reinforcement-learning |
| - mcts |
| - self-play |
| --- |
| |
| # Genesis-1 |
| An AlphaZero-style chess engine trained from self-play. It's a 15-block / 192-channel residual network (~10M parameters). |
|
|
| [](https://github.com/ManyGlue0/Genesis) |
| [](https://huggingface.co/ManyGlue/Genesis-1) |
| [](https://andreagrandi.dev/) |
|
|
|  |
|
|
|
|
| ## Download |
|
|
| To download the model: [genesis_1.pt](https://huggingface.co/ManyGlue/Genesis-1/resolve/main/genesis_1.pt?download=true) |
|
|
|
|
| ## How it works and how to use it |
|
|
| Genesis-1 is an AlphaZero-style network paired with PUCT Monte Carlo Tree Search. |
| - **Input**: the board encoded as 20 planes of 8x8, from the side-to-move's perspective (piece positions, castling rights, en passant, fifty-move counter, repetition). |
| - **Body**: a 15-block, 192-channel residual tower (~10M parameters). |
| - **Two heads**: |
| - *Policy* over the 4672-move AlphaZero action space (8x8x73). |
| - *Value* in [-1, 1], the expected game outcome for the side to move. |
| - **Search**: moves are chosen by MCTS guided by the network. |
|
|
| >You can download the inference script from [here](https://github.com/ManyGlue0/Genesis) |
|
|
|
|
| ## Stats |
|
|
| It's fundamentally a weak engine. Its Elo rating is estimated to be between 300 and 500. |
|
|
|
|
| ## Training |
|
|
| Genesis-1 was trained from self-play on: |
| - **Hardware**: GPU: RTX 3090 | CPU: Ryzen 9 5950X | RAM: 32GB |
| - **OS**: Windows 11 |
| - **Training time**: ~12 days |
|
|