Kleines Spielchen mit dem Slack-Messenger gefällig

Ich werde in den Beiträgen immer mal wieder Beispiele für Chat-Bots vorstellen, die im Rahmen meiner Lehr- und Forschungstätigkeit an der FH-Hagenberg entstanden sind. Heute ein kleiner Spiel-Chatbot für die Messenger-Plattform Slack (https://slack.com/). Er ist im Rahmen meiner Lehrveranstaltung „Semantic Online Services and Applikations“ im Master-Studiengang „Interactive Media“ entstanden. Wie ein Chat-Bot grundsätzlich funktioniert, habe ich in einem früheren Beitrag „Wie funktionieren Chatbots?“ beschrieben.

Der heutige Chat-Bot wurde von Elisabeth Grömer als Semesterprojekt umgesetzt. Dabei war die Plattform www.api.ai für die Realisierung vorgegeben, jedoch konnte die Anwendung, die Programmiersprache und der Messenger frei gewählt werden.  Für die Implementierung kam Node.js zum Einsatz.

Der Chat-Bot testet die Möglichkeiten von api.ai und Slack durch Implementierung des bekannten Spiels „Vier Gewinnt„. Dabei wird das Spiel, wie es sich für einen Chat-Bot gehört, mit Texteingaben (in Englisch) gesteuert.

Begrüßt man den Bot, dann lädt er zu einem Spiel ein, und fragt nach, welche Farbe man möchte, und welche Spielstärke. Die Spielstärke kann man dabei mit Worten wie „easy“ oder „hard“ umschreiben, und der Bot passt sich entsprechend an. Bei der stärksten Einstellung ist er kaum mehr zu besiegen.

Da ein Messenger eigentlich für keine graphische Ausgabe des Spielfeldes gedacht ist, verwendet das Programm einen netten Trick, indem ein zusammengesetztes Feld von emojis verwendet wird.

Um einen Spielzug auszuführen sagt man dem Bot mit einem Satz wie „take 3“ oder „throw in row 3“,  in welche Spalte der Spielstein fallen soll.  Nach Beendigung eines Spiels kann man mit Kommandos wie „play again“ oder ähnlichem sein Glück erneut versuchen.

Die Intelligenz erhält das Programm durch Implementierung des Standardverfahrens für solche Zweipersonenspiele dem MiniMax-Algorithmus mit Alpha-Beta Beschneidung. Dieser wurde in der zeitlich parallelen Lehrveranstaltung „Artificial Intelligence“ erlernt, und hier in JavaScript implementiert.

 

2 Antworten auf „Kleines Spielchen mit dem Slack-Messenger gefällig“

Schreibe einen Kommentar

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

+ 84 = 86