## Introduction
Numbfish is a simple but strong pythonic chess engine. Numbfish is based on Sunfish but with several additional features, the
most important of which is an Efficiently Updatable Neural Network (NNUE) implemented and optimized first time using numpy.
NNUE is *efficiently* implemented using incremental updates of the input layer outputs in make and unmake moves just like
Stockfish does in C++. The additional positional information entailed from NNUE makes this engine
*probably* **the strongest python engine** running on 1-thread CPU.
Because Numbfish is small and strives to be simple, the code provides a great platform for experimenting. My NNUE implementation is
a bit complex to understand and a more explanatory guide is needed of how I made it work in python. However people can fork my
project and experiment with other features as well. Make sure to drop a . If you make Numbfish stronger I will merge your
improvements!
Numbfish 1.0 64 ja
Fixed a 'divide by zero' bug causing crashes - JA
Windows & Linux native executables created with Nuitka (https://nuitka.net/)
## Introduction
Numbfish is a simple but strong pythonic chess engine. Numbfish is based on Sunfish but with several additional features, the
most important of which is an Efficiently Updatable Neural Network (NNUE) implemented and optimized first time using numpy.
NNUE is *efficiently* implemented using incremental updates of the input layer outputs in make and unmake moves just like
Stockfish does in C++. The additional positional information entailed from NNUE makes this engine
*probably* **the strongest python engine** running on 1-thread CPU.
Because Numbfish is small and strives to be simple, the code provides a great platform for experimenting. My NNUE implementation is
a bit complex to understand and a more explanatory guide is needed of how I made it work in python. However people can fork my
project and experiment with other features as well. Make sure to drop a . If you make Numbfish stronger I will merge your
improvements!
Numbfish 1.0 64 ja
Fixed a 'divide by zero' bug causing crashes - JA
Windows & Linux native executables created with Nuitka (https://nuitka.net/)
WOW !
What a surprise ! THANK YOU, Maestro! It's the ninth 100% Python engine in my tour. The single Python engine having a NN evaluation. Maybe the best. We will see. With the exception of Valiant Mk8, none have been tested by CCRL.....I'm not even talking about CEGT....I think I will also add a well-tested marker of 1500-1600 Elo (non Python) to be able to have a clearer idea about the rating of these engines.
A strong python chess engine utilizing two neural nets - one for opening/middlegame
and one for endgame.
I couldn't compile it into a single executable so I created a portable python folder
that contains only the necessary files needed to run the program straight from the folder.
It is a large download (124mb) and unpacks to 550mb.
A strong python chess engine utilizing two neural nets - one for opening/middlegame
and one for endgame.
I couldn't compile it into a single executable so I created a portable python folder
that contains only the necessary files needed to run the program straight from the folder.
It is a large download (124mb) and unpacks to 550mb.