Since you’re here...

We hope you will consider supporting us today. We need your support to continue to exist, because good entries are more and more work time. Every reader contribution, however big or small, is so valuable. Support "Chess Engines Diary" even a small amount– and it only takes a minute. Thank you.
============================== My email: jotes@go2.pl



Chess engine: Allie 0.8-dev

Allie - UCI chess engine
Author - Adam Treat

What is Allie?

Allie is a new and original chess engine heavily inspired by the seminal AlphaZero paper and the [Lc0](https://lczero.org "Lc0") project.

How is she related to Leela?

Like Leela, Allie is based off of the same concepts and algorithms that were introduced by Deepmind in the AlphaZero paper(s), but her code is original and contains an alternative implementation of those ideas. You can think of Allie as a young cousin of Leela that utilizes the same networks produced by the Lc0 project.

Is this like Anti-fish or Leelenstein?

Not exactly. AF and the Stein are (apparently quite successful) experiments with the training procedures that go into making a Lc0 project neural net. However, they both utilize the Lc0 binary as the actual chess engine and just load these alternative networks. Allie is different. She can be used as a complete replacement of the Lc0 binary with different search, hash, move generation, etc, etc. That means that Allie can be used with the AF or Stein networks too.

Ok, so details. How is she different?

Well, I was inspired during the original CCC to see if you could pair traditional Minimax/AlphaBeta search with an NN. This is still her main purpose and the focus going forward. However, the initial versions were using a similar pure MCTS algorithm as Lc0 and AlphaZero. The current versions of Allie use a modified hybrid search of Minimax and Monte Carlo.

Here is a non-exhaustive list of differences:
- UCI protocol code
- Input/Output
- Time managment
- Board representation
- Move generation
- Zobrist keys
- Hash implementation
- The threading model
- Search algorithm
- Tree structure
- The multi-gpu scaling code
- Fpu-reduction
- Mate distance eval
- Testing framework and tests
- Debugging code

Running Allie

- Add the network weights file in the same directory with the Allie binary. Symlink (`ln -s`) can be used
- Launch `allie`. If everything went well, you'll see "allie" in stylished ASCII art with the version information
- You should now be ready to use Allie with your favorite UCI-compatible chess GUI.

You will need an Nvidia cuda equipped graphics card to run this.


Allie 0.8-dev - download
All files (games, tables and engines) - download from page


Comments