Übungen Handlungsplanung und Allgemeines Spiel

Übungsblätter

Die Übungsblätter werden im zweiwöchigen Rhythmus - startend mit dem ersten Mittwoch der Vorlesung (27.10.2010) - in der Vorlesung verteilt und auch hier veröffentlicht. Besprechung ist donnerstags zwei Wochen später. Abgabe (soweit erforderlich) ist jeweils am Montag vor der Übung - bei Stefan (Raum 2.62) oder mir (Raum 2.86) oder auch im Sekretariat (Raum 1.53) in unseren Briefkasten.


Hinweise

Zum ersten Übungsblatt:
Zum einen ist auf den Seiten, auf denen die Referenzspieler zu finden sind ein Fehler in einem der Links: Eclipse Prolog ist unter eclipseclp.org zu finden.
Zum anderen ist die Installation nicht unmittelbar klar gewesen, daher hier kurz die Beschreibung für den Basic C++ Player.
Der Code des Spielers ist verlinkt. Eclipse Prolog ist unter oben genannter Adresse zu finden. Geht einfach in die Download-Sektion, wählt die aktuellste Version aus, für ein Linux-basiertes System wählt die i386_linux Variante und ladet zumindest die eclipse_basic.tgz herunter. Falls ihr ein 64-bit System habt und auch die 64-bit Version nutzen möchtet: Die scheint es bisher nur bis zur Version 6.0_162 zu geben.
Entpackt die eclipse_basic.tgz in ein Verzeichnis (das soll dann später ECLIPSE_DIR sein) und führt das RUNME-Skript aus. Dabei wird das Programm lokal in diesem Ordner installiert.
Jetzt könnt ihr auch den Spieler entpacken. Wenn ihr ein 64-bit Linux nutzt, müsst ihr in den beiden Makefiles (im Hauptverzeichnis und im BasicPlayer-Unterverzeichnis) ARCH anpassen (steht jeweils ganz oben) - bei mir ist es etwa x86_64_linux. Außerdem fehlt in der Datei BasicPlayer/GameHttpServer.cc eine Header-Datei (zumindest bei aktuellen g++-Versionen) - fügt einfach die Zeile "#include <cstring>" in den include-Block am Anfang hinzu. Um das Ganze kompilieren zu können müsst ihr noch den Pfad zum Eclipse-CLP Paket setzen. Führt dazu einfach "export ECLIPSE_DIR=/home/<name>/eclipse-clp" (oder was auch immer euer Pfad sein mag) aus. Dann könnt ihr den Spieler über "make" kompilieren.
Nach dem Kompilieren sollte im Hauptverzeichnis des Spielers die Datei myPlayer liegen. Ehe ihr den aber starten könnt müsst ihr dem Spieler noch den Pfad zur Eclipse-Prolog Library bekannt machen. Fügt dazu das Library-Verzeichnis am Besten mit in den LD_LIBRARY_PATH ein (etwa "export LD_LIBRARY_PATH=/home/<name>/eclipse-clp/lib/i386_linux:$LD_LIBRARY_PATH"). Dann lässt sich der Spieler mittels "./myPlayer <port>" starten (wobei port den Port bezeichnet, auf dem der Spieler lauschen soll - den müsst ihr entsprechend auch im GameController einstellen, wenn ihr damit spielen wollt).
Es empfiehlt sich, die Anpassung des LD_LIBRARY_PATH sowie ECLIPSE_DIR in den Start des Betriebssystems einzubinden, sonst müsst ihr das bei jedem Neustart wieder eingeben.
Den Basic Prolog Player habe ich nach der Installation des Eclipse-Prolog auch problemlos zum Laufen gebracht. Der Java-Player scheint in ein Plugin für Eclipse eingebunden zu sein. Zumindest das Plugin ließ sich (selbst unter Windows) problemlos installieren, so dass man dann innerhalb von Eclipse zufällige Spiele laufen lassen kann.

Lösungsvorschläge

Blatt 1

Zu der Aufgabe, eine Spielbeschreibung in GDL zu formulieren, hier die Abgabe von Team gaertner:
Käsekästchen (Dots and Boxes)
Und hier die vereinfachte Version:
Käsekästchen (Dots and Boxes) - vereinfacht