Releases: Alberto-Hache/the-crown
Releases · Alberto-Hache/the-crown
Code and documentation refactored
v0.5.0 Improve doc with game rules a bit.
Fix quiesce() to report 'None' move when 'stand pat' is chosen
Fix quiesce() bug when 'stand pat' is chosen; the move reported wasn't None.
Now fixed.
Fine tuned position evaluation (mid- and end-game)
v0.4.0 Fine tuned eval. function; refine moves preeval
Restore old position_attacked()
The new version tried performed worse than the previous one.
Optimize position_attacked()
Now avoiding for loop through itemgetter() and dropwhile().
Piece moves taken from new flat moves lists in utils.py.
Killer moves for quiesce() [depth 20]
Extend killer moves till depth 20
Killer moves added to negamax()
Killer moves:
- Two quiet moves per ply.
- Tried after "good looking / neutral" captures and before normal moves.
- Only for negamax nodes (quiesce should only explore dynamic moves).
- Kept after each move for reuse during match.
Bugs fixed:
- Enable "game trace" to manage long matches by progressive extension of its list.
Pre-evaluation:
- Include killer moves (see above).
- Skip array reversion after evaluation by using negative values (lower is better).
Reuse Transposition Table from previous move(s)
v0.3.12 Reuse Transposition Table from previous move(s)
Iterative deepening (first version)
v0.3.11 Update backlog
Reuse check detections from make_pseudomove() in quiesce()
v0.3.10 Reuse check detections from make_pm() in quiesce()