• 7Minuten
blank

Erweiterungen

Es gibt viele Möglichkeiten, eine Schach-KI zu erweitern. Mitunter um andere Spielmodi. Für mich ist das uninteressant, da ich fast zu 100% nur klassisches Schach spiele. Aber auch hier finden sich Gelegenheiten zur Optimierung, wie etwa das Multithreading.

Eine oft verwendete Erweiterung sind Eröffnungsbücher. Das sind kleine Datenbanken mit zahlreichen Positionen und die besten Antworten darauf. Früher war ein Eröffnungsbuch mit 20.000 Stellungen bereits eine beeindruckende Sache. Heute haben die Bücher ein paar hunderttausend, manche sogar mehr als eine Million Stellungen. Diese Dateien bieten zwei Vorteile. Die KI macht nicht schon am Anfang einen groben Fehler und sie spielt nicht immer die gleichen Züge. Um etwas Vielfalt in die Sache zu bringen, wählte meine erste Version der KI mit Weiß zwischen e4, d4 und c4 aus. Das half beim KI-Vergleich, da somit unterschiedliche Stellungen auf das Brett kamen.

Es gibt viele Tools zur Erstellung und Analyse von Eröffnungsbüchern
Es gibt viele Tools zur Erstellung und Analyse von Eröffnungsbüchern

Wer es „richtig“ machen will, setzt auf ein großes Buch. Das wird meist per PGN oder mit PolyGlot realisiert. Letzteres war für mich zugegebenermaßen eine ziemliche Herausforderung, zumal die KI mein erstes C++-Projekt ist.

Endspieltabellen sind eine ebensolche Erweiterung. Während Eröffnungsbücher nur wenige Megabyte groß sind, gehen Endspieltabellen in den Terabytebereich. Ab einer bestimmten Figurenanzahl kann man in diesen Tabellen nach der Position suchen und erhält anschließend auf jeden Zug die perfekte Antwort. Das hat für die KI u. a. den Vorteil, dass sie keine 50 oder 100 Halbzüge im Voraus denken muss.

Aktueller Stand meiner KI

PolyGlot war ein großer Sprung, auch wenn es, während ich diese Zeilen schreibe, noch nicht 100%ig mit meinen Protokollen funktioniert. Sobald das geht, starten die nächsten Turniere.

BanksiaGUI V. 0.52b
Eröffnungsbücher können über Datenbanken oder – wie hier – rein durch Engine-Berechnungen erstellt werden (BanksiaGUI V. 0.52b Oktober 2021)

Die ganz groben Patzer, vor allem im taktischen Bereich, sind behoben. Die meisten Fehler lassen sich derzeit auf positionelle Probleme zurückführen. D. h. die KI weiß nicht richtig, was zu tun ist, wenn sie keine Taktik findet und sich die Position mit den aktuellen Zahlen nicht verbessern lässt. Dann kommen dumme Züge, etwa sinnlose Turmzüge, heraus.

Wenn die KI verliert, dann meistens im Mittelspiel und das genau aus solchen Gründen. Oder weil sie eine Taktik nicht sieht, da die Suchtiefe zu gering ist.

Im KI-Vergleich liegt sie derzeit zwischen 1800 und 1900 Elo. Da ist Luft nach oben. Im Schnell- und Blitzschach besiegt sie Menschen mit circa 2000 Wertungspunkte. Auch hier ist noch Luft nach oben.

Da es die perfekte KI nie geben wird, ist es eine endlose Aufgabe. Immer wieder erwische ich mich dabei, wie ich bei den Turnieren fiebere, als wäre es mein eigenes Kind. Ich freue mich über Siege, hadere mit Patzern und an manchen Tagen sehe ich nur die vielen Zahlen vor dem geistigen Auge.

Mein Ziel ist es, irgendwann auf etwa 2400 Elo zu kommen. Dann ist Version 1.0 fertig. Und danach? Vielleicht 2.0, als neuronales Netz.

Spiele gegen die KI

Ab und zu spielt meine KI online. Hier kannst Du diese Spiele sehen, ebenso eine Vielzahl der Spiele gegen andere KIs. Irgendwann, wenn sie ausgereift genug ist, will ich einen eigenen Rechner für die KI besorgen, damit sie rund um die Uhr erreichbar ist. Mal sehen, was die Zukunft bringt.

Ach ja, die KI hat auch einen Namen: Hathor.

Das Logo meiner KI
Das Logo meiner KI

Autor

Abonnieren
Benachrichtige mich bei
guest

0 Comments
Inline Feedbacks
Alle Kommentare anzeigen