Renegade 0.11.0
Renegade 0.11.0 (May 29, 2023)
- Improved search
- Added aspiration windows
- Added static exchange evaluation (and related pruning techniques)
- More aggressive late-move reductions
- Added mate distance pruning
- Check extensions are done at any depth, instead of only at depth 0
- Removed non-gaining pruning (razoring + delta pruning)
- Small update to null-move pruning formula
- Improved speed (roughly 30% nps uplift before other features got added)
- Optimized hash calculations (no longer using 13% of the processing time!)
- No longer relying on fully calculated internal attack maps
- Reduced branching in move generation
- Improved evaluation
- Rewritten weight structure, using the
S(x, y)
notation - More nuanced threat calculation
- Bonus for pawns supported by other pawns
- Pawn phalanx evaluation
- Squares attacked by pawns no longer count towards piece mobility
- Further tuned existing weights
- Rewritten weight structure, using the
- Move ordering improvements
- Captures with a negative SEE moved after quiet moves
- Made transposition table entries more compact (16 bytes instead of 24)
- Updated tuner
- Accommodates the new weight structure
- Quality of life improvements
- Internal changes
- Templated move generation
- Added method for determining whether a square is attacked
- Generally trying to use more of the modern C++ features
- Added functions needed for SEE
- Lots of clean ups
- Updated time management for repeating time controls
- Now it should use more time in the beginning of the game
- Hopefully I can stop complaining about this in tournaments
- Pretty output (unless
uci
command is received) - Node counts are incremented on make move (similarly to most engines)
- Fixed missing
staticEval >= beta
condition for null-move pruning - Fixed search aborting if mate found when not using time constraints
- Made everything a little less bad
Regression testing: (time control: 10s+0.1)
Score of Renegade 0.11.0 vs Renegade 0.10.0: 2010 - 240 - 550 [0.816] 2800
... Renegade 0.11.0 playing White: 1144 - 60 - 196 [0.887] 1400
... Renegade 0.11.0 playing Black: 866 - 180 - 354 [0.745] 1400
... White vs Black: 1324 - 926 - 550 [0.571] 2800
Elo difference: 258.8 +/- 13.6, LOS: 100.0 %, DrawRatio: 19.6 %
General notes:
- With this release I consider most of the low-hanging fruit done
- Still no
stop
implementation, sorry LTC Banksia testers :( - Strength: ~2700 (based on not-too-accurate gauntlets at 90s+1.5)