Since you’re here...

We hope you will consider supporting us today. We need your support to continue to exist, because good entries are more and more work time. Every reader contribution, however big or small, is so valuable. Support "Chess Engines Diary" even a small amount– and it only takes a minute. Thank you.
============================== My email: jotes@go2.pl



PZChessBot 6.1 - new version chess engine



PZChessBot is a basic negamax engine.
Author: Kevin Lu 

v.6.1 What's Changed

PZChessBot v6.1 is here, primarily featuring bug fixes for SMP.

SMP thread limit has been changed to 512 to reflect TCEC conditions
Hash limit has been changed to 256GB to reflect TCEC conditions
Several SMP bugs have been fixed - SMP no longer experiences occasional crashes
QoL improvements - namely, scaling down printed evaluations based on PZ's internal measure of a pawn (roughly)
Some other small search improvements
Once again, the NNUE is provided for those who wish to compile, but you do not need to download it to run PZChessBot.

Estimated Elo: ~3630 CCRL Blitz, 3510 CCRL 40/15

Goals
The next version of PZChessBot will likely be v7.0. v6.1 is the last version with balanced-book progression testing; the next release will only feature UHO progression tests. Furthermore, much of the focus for v7.0 will be improvements to the NNUE, with some small search features possibly added. Our aim for v7.0 will be to enter the top 20 worldwide; that is, as of the time of writing, a rating of 3700 on the CCRL blitz list.

Look forward to v7.0, hopefully coming in May or June 2026.

Tests
main vs v6.0 LTC (balanced book):

Elo   | 35.88 +- 6.34 (95%)
Conf  | 40.0+0.40s Threads=1 Hash=128MB
Games | N: 2002 W: 319 L: 113 D: 1570
Penta | [1, 74, 654, 262, 10]
https://ob.int0x80.ca/test/238/

main vs v6.0 LTC (UHO):

Elo   | 62.90 +- 7.86 (95%)
Conf  | 40.0+0.40s Threads=1 Hash=128MB
Games | N: 2122 W: 719 L: 339 D: 1064
Penta | [5, 121, 444, 471, 20]
https://ob.int0x80.ca/test/235/

main vs v6.0 STC (UHO):

Elo   | 44.32 +- 8.66 (95%)
Conf  | 8.0+0.08s Threads=1 Hash=32MB
Games | N: 2010 W: 639 L: 384 D: 987
Penta | [10, 155, 443, 364, 33]
https://ob.int0x80.ca/test/237/

What's Changed
Add major correction history by @kevlu8 in #220
Change SEE to use quadratic formula for captures by @kevlu8 in #221
Rework TT to have clusters by @kevlu8 in #222
Add futility pruning by @kevlu8 in #223
Add minor correction history by @kevlu8 in #224
Add continuation correction history by @kevlu8 in #225
Fix illegal moves in SMP by @kevlu8 in #226
Give more time to think by @kevlu8 in #227
Reduce depth on fail-high by @kevlu8 in #228
Remove move score bonus for killers by @kevlu8 in #229
Do not search excluded move in probcut by @kevlu8 in #231
Use a dedicated MVV array instead of re-using PieceValue by @kevlu8 in #232
Fully rewrite LMR by @kevlu8 in #233
Change node count to atomic by @kevlu8 in #234
Add NMP verification search by @kevlu8 in #235
Optional TT entries by @kevlu8 in #236
Fix history malus handling by @kevlu8 in #237
Reduce less in all ttpv nodes by @kevlu8 in #238
Allow small extensions in LMR by @kevlu8 in #239
Fix tteval handling regarding entries without an eval by @kevlu8 in #240
Raise alpha on aspiration window fail by @kevlu8 in #241
Allow more RFP when in a cutnode by @kevlu8 in #242
Only enable aspiration windows after depth 3 by @kevlu8 in #243
Add thread pooling by @wdotmathree in #244
Change TT to be atomic by @kevlu8 in #245
Fix OOB access by @kevlu8 in #246
Fix TT store depth on probcut by @kevlu8 in #247
Fix more overflows by @kevlu8 in #248
Do some LMR for captures by @kevlu8 in #249
Do deeper search on fail high by @kevlu8 in #250
Add 6-ply continuation history by @kevlu8 in #251
Modify futility pruning margin based on history by @kevlu8 in #252
Add large memory support by @wdotmathree in #253
Fix SMP crashes by @wdotmathree in 7364817
Raise NMP R value and simplify improving by @kevlu8 in #254
Run second SPSA by @kevlu8 in #255
Add minimal UCI reporting by @kevlu8 in #256
Add TT aging by @kevlu8 in #257
Add multi-cut pruning by @kevlu8 in #258
Optimize NNUE inference by @wdotmathree in #259


github: https://github.com/kevlu8/PZChessBot/

Successes of the PZChessBot engine in our tournaments:



Comments