Gerd Isenberg wrote: ↑Sat Jan 23, 2021 10:55 pm
You should take the next step to use alpha-beta instead of pure minimax. Iterative deepening as well.
Took me a while to wrap my head around it but I'm convinced now that this would be not only the next logical step in development, but also isn't out of scope for a self-declared "minimal" engine.
My intuition that the next step in development should have been to focus on a better eval function was probably wrong, maybe even counter-productive, if the long term goal is to develop a strong engine. Instead it seems better to focus on a strong, bug-free search that can reach depths >10-12 first. Today I ran a few tournaments and reviewed games where the engine blundered against weaker engines and in each case a deeper search would have helped. The sacrifice of some simplicity seems to be a price worth paying in the face of these ugly blunders I saw!
So based on all above comments so far I've collected these requirements before Minimal Chess is tournament ready:
Code: Select all
X stable
X win with huge material plus
X correct move generator
X play from arbitrary positions (fen and 'moves')
support time controls, at least moves per session
know repetition rules
implement alpha beta pruning
implement iterative deepening
send "uci author"
support "uci stop"
send "uci info" to the GUI
Thanks for your help, everyone!