• 7Minuten
blank

Sondersituationen

Das ist der Kern. Damit kommt man relativ weit. Aber irgendwann stellt man fest, dass es nicht reicht. Also fängt man an, bestimmte Stellungstypen und Situationen einzeln zu bewerten. Hier ein paar Beispiele:

  • Zwei Läufer ergeben einen Bonus, da das Läuferpaar eine besondere Kraft ausstrahlt.
  • Turm auf einer halboffenen oder offenen Linie bekommt einen Bonus.
  • Zwei Türme auf einer solchen Linie ergeben einen weiteren Bonus.
  • Die Möglichkeit zu rochieren ergibt wieder einen Bonus.
  • Doppel- und Dreifachbauern sind schlecht.

Diese und weitere Zahlen fließen in die Berechnung mit ein und können sogar an Spielphasen gekoppelt sein. Die Kunst besteht darin, diese Werte (bei mir sind es derzeit rund 1400) so auszubalancieren, dass am Ende ein guter Zug rauskommt.

Im Endspiel verschiebt sich die Bewertung der Figuren ein wenig
Im Endspiel verschiebt sich die Bewertung der Figuren ein wenig

Kommunizieren

Warum das so viele Zahlen sind? Ein Spieler hat sechs verschiedene Figuren. Alleine für die Eröffnung brauchen wir 6 x 64 Werte. Damit sind wir bei 384. Ziehen wir die erste Reihe beim Bauern ab, bleiben 376. Bei drei Spielphasen sind wir bei 1128 Einzelwerten. Dann kommen die Figurenwerte, Sondersituationen und vielleicht noch Mobilität hinzu.

Aber wie will man das testen? Früher setzten sich gute Schachspieler dran und die haben gegen die KI gespielt. Anschließend wurden die schlimmsten Fehler analysiert, um dann zu versuchen, mit anderen Zahlen zu einem besseren Resultat zu gelangen. Wenn man mit einer KI beginnt, sollte man ebenso anfangen. Ich habe hierfür Brett und Züge im Textmodus ausgegeben, um gegen die KI zu spielen. Doch irgendwann kostet es zu viel Zeit. Oder die KI ist besser als man selbst. Die Lösung lautet „Kommunikationsprotokoll“.

Im Schach haben sich zwei Protokolle durchgesetzt. XBoard und UCI. Damit ist es möglich, dass eine KI mit einer beliebigen GUI interagiert. Das bedeutet, dass man die KI in eine grafische Oberfläche einbinden kann, ohne sich um die Grafik zu kümmern. Das alleine ist nicht die Lösung. Einige dieser Programme bieten aber die Möglichkeit, dies mit zwei KIs zu tun. Diese können sich dann gegenseitig die Köpfe einschlagen, ohne das man selbst etwas tun muss. Man kann sogar ganze Turniere austragen. Einmal alles eingestellt schaut man nur noch zu, bis der Wettbewerb vorbei ist. Die Spiele können gespeichert, exportiert und analysiert werden.

Arena Chess GUI 3.5.1
Arena Chess GUI 3.5.1

Testfeld

Viele Wege führen nach Rom. Manche sind der Meinung, man sollte eine KI nur gegen sich selbst spielen lassen. Bei neuronalen Netzwerken ist das sogar die Norm. Andere behaupten, es sei am schlausten, sie nur gegen die beste KI antreten zu lassen.

Ich habe mehrere Dinge versucht. Zunächst gegen sich selbst, weil ich dadurch die ganz groben Fehler finden konnte. Schließlich wertet man mit jeder Partie beide Farben aus. Anschließend stellte ich ein Testfeld mit KIs zusammen, die in etwa gleich gut oder etwas besser waren. Die Turniere erfolgten nur im Blitzschach, fünf Minuten pro Seite. So bekommt man schnell Resultate. Die Partien wurden auf lichess.org importiert und analysiert. Ich schrieb dann die groben Fehler in Worten auf.

„Die KI rochiert viel zu spät.“
„Der König wandert sinnlos herum.“
„Turm a2 ist ein unsinniger Zug!“

Daraufhin bewertete ich diese Probleme und schaute, welche am häufigsten vorkommen. Anschließend kam das „Warum tut die KI das?“. Manchmal sind die Fehler offensichtlich, jedoch nicht immer. Und dann passieren merkwürdige Dinge. Man ändert ein paar Werte für den Bauern ab und am Ende macht der Turm komische Züge. Das fühlt sich teilweise so an, als würde man am Kofferraum des Autos eine Schraube stärker anziehen und daraufhin eiert das rechte Vorderrad.

Um gewissen Problemen auf die Spur zu kommen, spiele ich dann auch wieder selbst gegen die KI. Mit Unterstützung von Stockfish. So kann ich explizite Stellungen hervorrufen und schauen, wie die KI reagiert, wenn ich eine oder mehrere Zahlen verändere. Das hilft, ein Gefühl für die Werte zu erhalten. Durch die Abtrennung in Spielphasen kann man sich zudem auf bestimmte Bereiche konzentrieren. Zunächst muss sie die Eröffnung gut überstehen, dann das Mittelspiel und zuletzt das Endspiel. Danach beginnt man wieder bei null.

Autor

Abonnieren
Benachrichtige mich bei
guest

0 Comments
Inline Feedbacks
Alle Kommentare anzeigen