GithubHelp home page GithubHelp logo

timospal / nnue-bitboard-chess-engine Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 3.9 MB

Bitboard chess engine that uses an NNUE model for node evaluation inside a PVS search. Move tables and plain magic bitboards are used for move generation

C++ 97.27% CMake 2.73%
bitboards chess chess-engine nnue pvs

nnue-bitboard-chess-engine's People

Contributors

timospal avatar

Stargazers

 avatar

Watchers

 avatar  avatar

nnue-bitboard-chess-engine's Issues

Improvement - remarks and tips

Recently i discovered your NNUE engine, and i like it !
I managed to compile its source (on Linux) and downloaded the concerning NNUE file.
The engine runs fine in CuteChess (GUI), i did several test games and now i have some remarks and questions.

The engine often makes a move within one second !?
And calculation is always done upto depth 8, never deeper ..
I propose better time management, and thus (?) a stronger engine - i guess the current rating (using nn-62ef826d1a6d.nnue) is about 2500.
eg. when i let engines play a 15 minute game, your engine still moves within 1 second and ends up with more time on the clock !

It often makes a draw by 3-fold repetition !?
I attach many (35) bullet games (1m+2s bullet) against several engines : some-bullet.zip : see those repetitions.
You really should solve this issue, it's a pitty losing winning positions this way ..

Can the NNUE file be changed ? which model type is used, and can you point to (some of those) alternatives ? i guess these are the 20 Mb ones, but i have no clue ..
btw. i could change the name of the NNUE file in the code and then compile again, but having an UCI option would be preferred ..

The output (in CuteChess GUI) is minimal : we only see the eval cp value of bestmove, no best moves at each depth, no PV line, no display of the thinking time ..

The cmake & make procedure differs slightly from "Build info" in README .. here's what i did :

cmake .
make

At first i had one compile error, but i solved it by adding the line #include <string> on top of /src/miscellaneous/Timer.h .. then compiling went well, although some warnings are still shown .. i managed to solve these also (just to learn), i mainly changed [=] to [=,this] in /src/representation/Board.cpp ..

Finally, i wonder about MCTS : i see a few source files concerning this, but your README doesn't mention anything about it .. does the engine really use MCTS ? Maybe create an UCI option to en/disable ..

[ i'm on Xubuntu 22.04 ]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.