Releases: op12no2/lozza
Lozza 7
This release fixes the problems when running in a web page and also has a new net trained on more data, as well as lot's of minor optimisations.
Results of a quick SPRT v Lozza 5.1 @ 160+0.6 [0,10] using 8moves_v3:-
Score of releases/lozza7dev.js vs releases/lozza51dev.js: 54 - 20 - 146 [0.577] 220
... releases/lozza7dev.js playing White: 35 - 9 - 67 [0.617] 111
... releases/lozza7dev.js playing Black: 19 - 11 - 79 [0.537] 109
... White vs Black: 46 - 28 - 146 [0.541] 220
Elo difference: 54.1 +/- 26.3, LOS: 100.0 %, DrawRatio: 66.4 %
SPRT: llr 2.91 (100.6%), lbound -2.25, ubound 2.89 - H1 was accepted
https://github.com/op12no2/lozza/wiki/Lozza's-net
https://github.com/op12no2/lozza/wiki/Loading-Lozza-into-chess-user-interfaces
PS: Use lozza7.js from lozza7.zip below (not the source archives that github automatically adds to the release).
Lozza 5.1
Lozza 5.1 is mainly a series of simplifications and optimisations. +40 locally, so perhaps more like +20 in the wild.
NB: This version is an update for chess UIs running in Node - the web config is broken - not sure why - please stick with Release 5 for web projects.
Lozza 5
Lozza 4
This is a Lozza 4 re-release.
The original Lozza 4 release caused problems for some users. For those that ran it successfully, results (e.g. CCRL Blitz) can stand because no peformative changes have been made. However, please replace with this re-release anyway; thanks.
A recent version of Node is recommended if possible as performance is always improving; the latest stable version is 22.
Play Lozza 4 online here:-
https://op12no2.github.io/lozza-ui
Changes
- Train generation 3 net from ~200M generation 2 positions.
- Use ADJACENT, not DIST to test king adjacency.
- Simplify QS and don't go into QS if in check.
- Scale eval by 1.9.
- Scale UCI cp by 1.9.
- Add second accumulator (but currently unused).
- Use the Mersene Twister from Cwtch for randoms.
- Move futility alpha test to move loop.
- Use hash move in QS.
- Optmise deferral of accumulator update a bit more.
- Fix some web stuff.
- Add improving indicator (but failed to get it to gain so far).
- Prune QS with quickSee().
- Only count nodes that iterate moves.
- Put eval in TT before search.
- Optimise castling a bit.
- Simplify search recursion.
- Allow successive NMP and beta pruning.
- Bigger 768x128x1 white-relative unquantised unclamped squared relu net.
- Make sure all UE updates (e.g. castling) are a single accumulator loops.
- Defer UE to after legal move confirmation (doh!) and don't check pre-determined legal moves (using ALIGNED).
- Minor tweaks for datagen + net command.
Lozza 3
Lozza3 replaces HCE with NNUE; a small 768x75x1 white-relative unquantised unclamped squared relu net, trained on about 114M positions.
Play Lozza 3 online here:-
https://op12no2.github.io/lozza-ui/
Please use the latest version of Nodejs for best performance:-
Lozza 2.5
Use of the latest Node is recommended when used offline in standard chess user interfaces:-
Play Lozza online here:-