Little Wing v0.4.0

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

Moderators: hgm, Rebel, chrisw

vincent
Posts: 33
Joined: Tue Jan 19, 2010 8:38 am
Location: Brittany, France

Little Wing v0.4.0

Post by vincent »

Hello,

The new version 0.4.0 of Little Wing, a bitboard chess engine written in Rust, is out!

It should play better chess now, going up in strength from 1650 ELO to around 2000.

There's still a lot of work to do on the evaluation side but I'm happy with the search side for now.

Added
- Add library with public API and documentation
- Add getopt to parse program options
- Add readline to user interface
- Add piece square tables to evaluation
- Add upper and lower bounds in transposition table
- Add age field in transposition table
- Add delta pruning to quiescence search
- Add transposition table to quiescence search
- Add basic UCI support
- Add very basic parallel search in threads with shared transposition table

Changed
- Improve CLI
- Improve statistics debug output
- Refactor many parts of the code
- Allow NMP, IID, and LMR at shallower depth
- Set NMP R to 3

Links
https://github.com/vinc/littlewing
https://vinc.cc/binaries/littlewing/lit ... 4.0.tar.gz
https://vinc.cc/binaries/littlewing/sha1sums.txt
https://docs.rs/littlewing/0.4.0/littlewing/
vincent
Posts: 33
Joined: Tue Jan 19, 2010 8:38 am
Location: Brittany, France

Re: Little Wing v0.4.0

Post by vincent »

SzG wrote:Vincent,

You must be joking. 350 Elo progress? That's huge!

Keep up the good work.
Thanks! I'm anxious to see how this version will do on CCRL, my own tests are always a bit optimistic.

Code: Select all

$ cutechess-cli -engine cmd=littlewing-v0.3.0-136-g22c7fed proto=xboard -engine cmd=sjaakii proto=xboard -engine cmd=sayuri proto=uci -engine cmd=cinnamon-2.0 proto=uci -engine cmd=dorpsgek proto=xboard -engine cmd=plp proto=uci -engine cmd=napoleon proto=uci -engine cmd=rattatechess proto=xboard -each tc=40/60 option.Threads=1 option.Hash=64 option.smp=1 option.memory=64 -openings file=2moves.pgn -repeat -rounds 10000 -recover -wait 10 -concurrency 7 -pgnout 40-60-games.pgn 2>/dev/null

Code: Select all

$ echo -e "prompt off\nreadpgn 40-60-games.pgn\nelo\nmm\noffset 2200 RattateChess 1.0 Nosferatu\nratings\n" | bayeselo

Code: Select all

19197 game(s) loaded, 5 game(s) with unknown result ignored.
00:00:00,00
Rank Name                              Elo    +    - games score oppo. draws 
   1 Dorpsgek Dillinger 1             2257   10   10  4800   72%  2066   12% 
   2 RattateChess 1.0 Nosferatu       2200    9    9  4799   65%  2074   13% 
   3 Sjaak II 1.4.1                   2183    9    9  4799   63%  2077   15% 
   4 Napoleon                         2115    9    9  4800   53%  2086   14% 
   5 Little Wing v0.3.0-136-g22c7fed  2054    9    9  4799   45%  2095   14% 
   6 Poor little Pinkus               2039    9    9  4799   43%  2097   11% 
   7 Cinnamon 2.0                     2027    9    9  4798   41%  2099   14% 
   8 Sayuri 2017.09.29                1844   11   11  4800   19%  2125    9%