Einen Schach-Engine von Grund auf bauen
(chessengines.org)- Mit Chess.js (Züge und Validierung) und Chessboard.js (Visualisierung)
- Zufällige Züge ausführen: Wenn Chess.js alle möglichen Züge als Array liefert, daraus zufällig einen auswählen
- Nur Züge auswählen, die gegnerische Figuren schlagen, und daraus wählen (falls es keine gibt, zufällig)
- Die Leistung mit dem PGN (Portable Game Notation) bewerten, das nach dem Schachspiel erzeugt wird (wird z. B. von Chess.com bereitgestellt)
- FEN (Forsyth-Edwards Notation) verstehen
- Den Minimax-Algorithmus verstehen und implementieren
- Das Horizon-Problem lösen:
quiescence search - Mit
alpha-beta pruningschneller machen iterative deepening- Eine Transpositions-/Hashing-Tabelle erstellen
1 Kommentare
Chess Programming Wiki