Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Vom menschlichen Schach zur Schachprogrammierung
- - By Lothar Jung Date 2021-10-07 17:14 Edited 2021-10-07 17:42
Im Rahmen einer Einführung möchte ich die Parallelen zwischen Schach und Computerschach in fünf Schritten aufzeigen.

1. Das Schachbrett

Das wird im Schach als quadratisches 8x8 Brett mit 32 Figuren oder optisch auf einem Bildschirm angezeigt.
Im Computerschach ist es durch ein quadratisches Variablenfeld von 8x8 oder 12x12 (Bitboard) mit den Grundfigurenwerten intern festgelegt. Es wird durch Schlüsselwerte adressiert.

2. Die Schachregeln

Sind natürlich die gleichen.
Im Computerschach werden die legalen Züge durch einen Zuggenerator festgelegt.
Hier eine ausführliche Erklärung: https://peterellisjones.com/posts/generating-legal-chess-moves-efficiently/

3. Die Bewertung

a) die Figurenwerte von  3 (Bauer) bis 9 (König) wird auf dem internen Variablenfeld den jeweilen Positionen zugewiesen.

b) der Stellung wird nach der Schacherfahrung (Heuristik) bewertet, indem der Figurenwert erhöht oder vermindert wird. Diese hängt im wesentlichen vom Standort der eigenen und der gegnerischen Figuren ab. Die Bauernstruktur erfährt eine besondere Behandlung.
So wird z.B. die Figurenbewertung des Turms auf einer halboffenen Linie von 5 auf 5,5  bei einer offnen Linie von 5 auf 6 erhöht. Die Königssicherheit spielt dabei eine besondere Rolle.
Hier eine allgemeine Beschreibung: https://chessfox.com/example-of-the-complete-evaluation-process-of-chess-a-chess-position/

c) in der KI wird die Bewertung durch ein neuronal trainiertes Netz vorgenommen (NN, NNUE).

4. Die Suche

ist beim Menschen das vorwärtsgewandte Berechnen und Beurteilung der Stellung unter Berücksichtigung der gegnerischen Züge.
Berechnung und Bewertung werden durch Training und Literatur gelernt.

Beim Computerschach wird aus der aktuellen Stellung heraus ein Suchbaum generiert. Im einfachsten Fall wird jedem Knoten im Suchbaum ein Wert zugewiesen. Der Knoten mit dem höchsten Wert wird ausgewählt. Die Anzahl der Knoten steigen jedoch mit der Rechentiefe exponentiell. Deshalb muß die Suche nach bestimmten Verfahren eingeschränkt werden (Alpha/Beta-Verfahren, Zügeordnung, Ruhesuche) ohne jedoch im wesentlichen die Treffsicherheit der Suchbewertung einzuschränken.
Bewertung und Suche bilden im Programm einen wechselseitigen Kreislauf.
Hier ein ausführliche Wikipedia Beschreibung: https://de.wikipedia.org/wiki/Alpha-Beta-Suche?wprov=sfti1

5. Hilfsmittel und Datenbanken

a) stehen dem Menschen vor (Vorbereitung, Training) und nach der Partie (Analyse), jedoch nicht während der Partie zur Verfügung.

b) der Computerberechnung (Algorithmen) stehen während der Partie verschiedene Datenbanken (Eröffnungsbücher, Endspieltabellen) und Berechnungstabellen (Hash- bzw. Transformationstabellen) zur Verfügung.

Lothar
Parent - - By Benno Hartwig Date 2021-10-07 19:16 Edited 2021-10-07 19:18

> die Figurenwerte von  3 (Bauer) bis 9 (König)...


Was ist denn damit gemeint?
Man könnte dann ja glatt glauben, der König sei im Spiel lediglich so wertvoll wie drei Bauern.
Parent - By Lothar Jung Date 2021-10-07 19:55
Hier ein Beitrag zum Figurenwert in Abhängigkeit von der Stellung auf dem Brett.

https://www.stmintz.com/ccc/index.php?id=28583

Der Wert eines Königs wird dort unterschiedlich bewertet, 8 oder 9 ; die Dame mit 10 - 12.
Insoweit ist der Satz, so zu ändern „ …Figurenwerte von 1+ (Bauer), Läufer, Springer 3+, Turm 5+, bis 12 (Dame).“
Der Wert des Königs hat am Anfang der Partie keine Bedeutung.
Für eine Rochade wird ein Bonus gewährt.
Für die Bewertung der Stellung des Königs wird dessen Sicherheit verifiziert.
Im Endspiel hat der König aber eine positionell stärkere Bedeutung.
Gerade die Bauern erhalten je nach Position Zu- Abschläge (vorgerückte, verbundene ++, Doppelbauern -).
Der Wert der Figuren werden auch durch Auswertung vieler Partien statistisch ermittelt.

Lothar
Parent - - By Andreas Matthies Date 2021-10-07 20:57
"Quadratisches Variablenfeld 12x12 Bitboard" wäre mir neu. Bei Bitboards hast du je nach Implementierung 8, 12 oder 14 Variablen je 64bit für die unterschiedlichen Figuren bzw. die beiden Farben.
Parent - By Andreas Matthies Date 2021-10-07 22:26
Das hat aber nichts mit Bitboards zu tun sonern sind Varianten der Mailbox Repräsentation.
Up Topic Hauptforen / CSS-Forum / Vom menschlichen Schach zur Schachprogrammierung

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill