Daydreamer 1.5 (UCI), by Aaron Becker
I'm pleased to announce a new release of my chess engine, Daydreamer. The biggest improvements from version 1.0 include a simple hashed pawn evaluation, king safety evaluation, thoroughly reworked and improved move ordering, and futility pruning. I also improved the board representation and move generation, but the gains in nodes/s were far outstripped by improvements in move ordering and pruning.
I released the initial version of Daydreamer fairly recently. If I had realized how quickly I could get through the top items on my TODO list and how much strength they would add, I would have waited. Instead I'm making this 1.5 release now, which should be the only feature release for some time.
Here are the scores Daydreamer 1.5 achieved against a variety of engines in some fast testing matches I've conducted, just to give you a rough idea of the strength of the new release:
Code: Select all
Diablo 0.5.1 +30-20=0 30.0/50 Dirty ACCA 3 +32-13=5 34.5/50 Greko 6.5 +29-10=11 34.5/50 Sungorus 1.2 +24-13=13 30.5/50 Romichess P3K +17-26=7 20.5/50 Bison 9.6 +5-34=11 10.5/50
Finally, I'd like to take just a moment to thank Tord Romstad for his open source engine, Viper. The fast progress I've made was facilitated by digging into Viper's source and tinkering with it, printing out diagnostics and taking various features out to see how it was searching such a small tree compared to Daydreamer. I appreciate the time and effort you put into making Viper relatively small and accessible yet still strong. Thanks also to the authors of cutechess-cli for making a very handy testing tool and to the authors of the engines I've tested against.