Deepchess - neural network engine

Discussion of chess software programming and technical issues.

Moderator: Ras

Fafkorn
Posts: 16
Joined: Tue Apr 14, 2020 1:15 pm
Full name: Pawel Wojcik

Re: Deepchess - neural network engine

Post by Fafkorn »

Questions that came to my mind yet:
In the simulation phase random moves are played until game ends. It may take many many moves in some situations to achieve draw or win of one side. Shouldn't it take too much time?

The other one converting input to 773 bits only piece_type (6) * color (2) * square (64) + catling rights (4) + side_to_move (1), would be enough?
I don't have too high expectations to engine performance.
dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: Deepchess - neural network engine

Post by dkappe »

A0lite is a very simple nn engine written in python. The core logic is 95 lines of code. The fancy, more complicated stuff is in the branches. It comes with 3 leela style nets (though not actually leela nets). With the smallest net it can comfortably run on cpu. You can also plug in your own nets provided they give policy and value for a position.

The branch with tree reuse, pruning and batching for gpu was able to use Bad Gyal 8 and Little Ender on a 2070 to convincingly defeat Fruit 2.1 on 1 cpu. Overall it’s still much less complicated than an ab engine.

I’m writing a Julia version at the moment, which should yield about half the nps of lc0, while still being much less complicated.

I invite anyone who likes to write their own nn engine using a0lite as a jumping off point.
https://github.com/dkappe/a0lite
Fat Titz by Stockfish, the engine with the bodaciously big net. Remember: size matters. If you want to learn more about this engine just google for "Fat Titz".