Wer gewinnt?

WarGames

Wer kennt das Spiel „Drei gewinnt“ (engl. Tic-Tac-Toe) nicht? Hat doch jeder schon mal gespielt und vielleicht gemerkt, dass bei optimaler Spielweise immer ein Unentschieden resultiert. Dieser Fakt spielt im Film WarGames (Kriegsspiele) eine zentrale Rolle.

Ein seltsames Spiel

WarGames, kurze Zusammenfassung:
Der Computer-begeisterte Teenager David hackt sich zufällig in das WOPR System ein (War Operation Plan Response). Diesem Expertensystem wurde die Kontrolle über den Abschuss von Interkontinentalraketen mit Nuklearsprengköpfen übertragen. In Unkenntnis der Situation startet David die strategische Simulation „Weltweiter Thermonuklearer Krieg“. Er wird aber beim Spielen von seinen Eltern unterbrochen und trennt die Verbindung. Leider fährt WOPR frischfröhlich mit der Simulation fort und die Befehlshabenden werden immer wieder mit virtuellen sowjetischen Raketenangriffen konfrontiert. Mit der Unterstützung des KI-Forschers Stephen Falken, dem ursprünglichen WOPR-Entwickler, gelingt es David schliesslich, dem System die Sinnlosigkeit eines nuklearen Kriegs beizubringen. Dazu lässt er WOPR Tic-Tac-Toe spielen. Der Computer merkt, dass hier keiner gewinnen kann („Ein seltsames Spiel. Der einzig gewinnbringende Zug ist, nicht zu spielen.“ und spielt dann diverse Atomkriegsstrategien durch, mit dem gleichen Ergebnis. Daraufhin beendet WOPR das Spiel und damit auch die realen Abschussvorbereitungen der US-Atomraketen in letzter Sekunde. Hurra!

Tic-Tac-Toe auf dem HP-41

1982 hat Christopher Rath eine Implementierung des Tic-Tac-Toe Spiels in der PPC Technical Note #13 veröffentlicht. Das Programm speichert den Status der acht Gewinnlinien (3 vertikal, 3 horizontal und 2 diagonal), wie in der folgenden Tabelle dargestellt:

Zustand der GewinnlinieFreund/Feind KombinationWert
NullKein Freund/Feind in Linie0
Mögliche Bedrohung1 Feind in Linie-1
Mögliche Gewinnchance1 Freund in Linie1
Muss geblockt werden2 Feinde in Linie-2
Gewinnsituation2 Freunde in Linie2
Keine Bedrohung2 Freunde/1 Feind bzw. umgekehrt0

Für die acht Zustände der Gewinnlinien wird ein Speicherregister verwendet. Dazu kommt noch ein Register zum Speichern des Spielfelds. Eine guter Trade-Off zwischen Speichereffizienz und Geschwindigkeit. Christopher’s Programm benötigt das PPC Modul, aber nur, um Zufallszahlen zu erzeugen. Dieser Teil lässt sich einfach ersetzen. Zur Strategie des Programms sage ich hier nichts, die kann man mit ein paar selber Spielen ergründen.

Tic-Tac-Toe auf dem HP-85

Dieses Programm stammt aus meiner eigenen Feder. Der wesentliche Unterschied zum HP-41 Programm ist, dass das Spielfeld graphisch dargestellt wird. Auch hier wird per Zufall entschieden, wer das Spiel beginnt. Zugegeben, ich hätte hier die Chance packen und einen anderen Algorithmus implementieren können. Interessant finde ich zum Beispiel die Darstellung des Spielfelds als magisches Quadrat mit Summe 15.

Tic-Tac-Toe Spielfeld als magisches Quadrat

Man merkt sich für jeden Spieler, welche Felder er besitzt und summiert die entsprechenden Werte auf. Wenn man mit einem Zug auf die Summe 15 kommt, hat man gewonnen. Vielleicht programmiere ich irgendwann diese Variante, aber für dieses Projekt war das Ziel ein anderes, nämlich den HP-41 gegen den HP-85 spielen zu lassen.

HP-41 spielt gegen HP-85

Im Film WarGames spielt das Programm Joshua gegen sich selber und lernt eine wichtige Lektion. Meine Idee war es, zwei meiner HP Lieblinge, den HP-41 und den HP-85, gegeneinander antreten zu lassen. Die beiden Geräte können über die HP-IL-Schnittstelle miteinander verbunden werden. Da der HP-41 immer als System Controller agiert, muss das HP-IL Modul des HP-85 entsprechend konfiguriert werden. Zugegeben, das Ganze ist nicht so dramatisch wie im Film, aber das zuschauen macht trotzdem Spass. Da beide Programme nicht perfekt spielen und dem Zufall eine kleine Chance lassen, ist der Ausgang auch nicht immer ein Unentschieden.

Tic-Tac-Toe: HP-85 gegen HP-41

Die gesamte Software inklusive Barcodes und Disketten-Images habe ich auf Github zur Verfügung gestellt, siehe:
Tic-Tac-Toe for HP-85 and HP-41C

Kinoabend

Als Abschluss dieses Projekts habe ich heute Abend mit meiner Familie den Film WarGames angeschaut. Man kann ihn tatsächlich noch streamen! In Zeiten, wo viele Länder ihre Militärbudgets wieder stark erhöhen, hat er leider an Aktualität gewonnen. Hoffen wir nur, dass es bei Drohgebärden bleibt, denn Kriege haben nur Verlierer.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.