Tinkering with MCTS & NNUE

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
maksimKorzh
Posts: 775
Joined: Sat Sep 08, 2018 5:37 pm
Location: Ukraine
Full name: Maksim Korzh

Tinkering with MCTS & NNUE

Post by maksimKorzh »

Hey what's up guys, Code Monkey King's here.
I've been tinkering with MCTS + NNUE combination (please don't hate for using sf nnue again - it's just an evaluation placeholder that I will get rid of as soon as MCST works better) for the last couple of weeks and was really wondering like how the engine that combines these technique would play.

Here's a LIVE CODEING STREAM of 2 parts that I've recorder today:


WHAT YOU'LL SEE IN THIS STREAM:
We'll start with the blank file at the very beginning and end up with UCI... I don't really want to call it a "chess engine"... with UCI compliant wrapper of stockfish's NNUE (Just as a placeholder!) that is capable of playing chess. SPOILER: there would be a couple of games played by our "engine" versus a0lite by Dietrich Kappe!

TOOLCHAIN:
- python chess library for move generation & getting terminal states of game
- NNUE probe library by Daniel Shawul
- MCTS from pypi (that we'll alter for our needs)
- UCI protocol from a0lite chess engine to communicate with GUI

SOURCE CODE (for tinkering only! It blunders pieces from time to time and needs LOTS of work!):
https://github.com/maksimKorzh/mcts_nnue_chess

SUMMARY:
I'm trying this new format of pure live coding and it seems like it flows even better compared to my regular tutorials.
The process shown in the stream is more valuable IMO compared to the resulting code.
It's intended to motivate people for discovering these new chess programming trends.
Daniel Shawul
Posts: 4186
Joined: Tue Mar 14, 2006 11:34 am
Location: Ethiopia

Re: Tinkering with MCTS & NNUE

Post by Daniel Shawul »

Keep up the good work!
User avatar
maksimKorzh
Posts: 775
Joined: Sat Sep 08, 2018 5:37 pm
Location: Ukraine
Full name: Maksim Korzh

Re: Tinkering with MCTS & NNUE

Post by maksimKorzh »

Daniel Shawul wrote: Wed Nov 11, 2020 1:21 am Keep up the good work!
Oh, Daniel, it's such a great honor for me to get your feedback!
Without your NNUE probe library this project would never be possible!

Btw I have a couple if questions regarding your code to probe Leela's nets:
1. Can I probe from python?
2. Can I use FEN string as input? If not - are there any docs for inputs to NN?