ETH Zurich :
Computer Science :
Pervasive Computing :
Distributed Systems :
Education :
I2 HS2010 :
Reversi
| Turnier
| Arena
| Installation
| Probleme
| Literatur
|
Reversi
Reversi-Turnier
Das Reversi-Turnier fand am Mittwoch, den 02.06.2010 um 12:30 Uhr im Alumni Pavillon (MM C 78.1) statt.
Regeln
Es gibt verschiedene Varianten dieses einfachen Spiels. Wir verwenden die
folgenden Regeln: reversi-spielregeln.pdf
Einsendungen
Wer selbst mit einem Spieler teilnehmen möchte, muss dieses bis spätestens
Mittwoch, den 26.5.2009, 23:59 Uhr (Zürich Time!) per Mail an
Matthias Kovatsch
schicken. Dabei müssen Sie folgendes beachten:
- Teilnehmen können Sie entweder alleine oder im Zweierteam. Alle Teammitglieder müssen jedoch dieses Semester
die Vorlesung "Informatik II für ITET" belegt haben.
- Alle Programmteile müssen in Java geschrieben sein und als Quellcode abgegeben werden.
Einsendungen ohne vollständigen Quellcode können nicht teilnehmen!
- Alle Programmteile müssen in einem eigenen Package untergebracht sein (also nicht im Reversi-Package!)
- Das Programm muss sich mit Java 1.6 übersetzen und ausführen lassen.
- Verwenden Sie UTF-8 für Ihre Quelldateien.
- Zitieren ist erlaubt – Abschreiben nicht:
Falls Sie Teile Ihres Quellcodes von anderen Spielern kopiert haben, so müssen Sie das
im Quellcode kenntlich machen. Anderenfalls ist das ein Disqualifikationsgrund.
- Ihr Spieler muss eine eigene Leistung erkennen lassen, um am Turnier
teilnehmen zu können, d.h. Sie können also nicht einfach einen RandomPlayer abgeben!
Bitte senden Sie den Quellcode unter Angabe des Paket- und Klassennamens in einem
(zip-, tar- oder rar-) Archiv. Nennen Sie bitte in der
E-Mail den Vor- und Nachnamen der Autoren und tragen Sie als Betreff "Reversispieler" ein.
Preise
Die Autoren der drei besten Teams dürfen in der Reihenfolge ihrer Platzierung aus
folgenden Preisen wählen. Der übrige Preis wird unter allen anderen Teilnehmern verlost.
Squeezebox Radio
|
LED-Projektor
|
Khet Laserspiel und Magnetpuzzle
|
iPod Shuffle 4GB
|
Zwei mal ein Gokart-Gutschein
|
Antigravitationsauto
|
Wettkampfbedingungen
- Die Zugdauer beträgt 5 Sekunden, der für Ihren Spieler verfügbare Speicher 128 MB.
- Wird das Zeitlimit überschritten oder ein ungültiger Zug gemacht, gilt das Spiel als verloren.
- Es sind keine zusätzlichen Threads erlaubt, die Priorität des gegebenen Threads darf nicht verändert werden.
- Um einen störungsfreien Ablauf des Turnier zu gewährleisten, dürfen die Spieler
keine GUI-Elemente verwenden (wie z.B. Fenster öffnen) oder die System-Streams (System.in, System.out, System.err)
umleiten. Textausgabe auf die Konsole ist jedoch erlaubt.
- "Unfaires" Verhalten, wie z.B. Netzwerkzugriffe, exzessive
Berechnungen während des Konstruktors bzw. des initialize()-Aufrufs oder
Manipulationsversuche führen zum Ausschluss vom Turnier.
Ermittlung des Siegers
Die genauen Wettkampfmodalitäten, also das System, nach dem der
Sieger ermittelt wird, hängen von der Anzahl der Teilnehmer ab und
werden vor Beginn des Turniers angekündigt. Typischerweise gibt es 2-4
(abhängig von der Anzahl der Einsendungen) parallel durchgeführte und
zufällig ausgeloste Vorrunden. Jeweils die Gruppensieger oder die zwei
Gruppenersten kommen in die Finalrunden, in denen dann nach dem K.O.-System
gespielt wird.
Reversi-Arena
Für Reversi haben wir ein Programm namens Arena entwickelt, welches es ermöglicht, Computerspieler gegeneinander antreten zu lassen. Diese Programm befindet sich im Reversi-Framework zusammen mit dessen öffentlichen Schnittstellen und internen Implementierungen. Das Framework gibt es als Paket, welches Sie bei sich lokal installieren müssen.
Installation
- Das Reversi-Framework können Sie hier beziehen: reversi.jar
- Die Dokumentation können Sie hier beziehen: reversi-doc.zip
- Hier gibt es eine kurze Anleitung zur Integration des Reversi-Frameworks in Eclipse.
- Wichtig: Für das Reversi-Turnier benötigen Sie Java Version 1.6. Ihre Java-Version können Sie mit dem Befehl
java -version feststellen.
- Die main-Methode ist in der Klasse reversi.Arena. Die Dokumentation erklärt nähere Details.
Probleme
Bei Problemen mit der Reversi-Distribution gehen Sie bitte nach folgender Eskalationsstrategie vor:
- Konsultieren Sie die Dokumentation.
- Wenden Sie sich per Email an Ihren Betreuer.
- Wenden Sie sich per Email an Matthias Kovatsch.
Bekannte Probleme:
- Unter Ubuntu 8.10 mit Gnome wurden Probleme mit dem X-Server festgestellt, die nicht direkt vom Reversi-Framework ausgelöst werden.
Bisher ist leider keine Lösung – ausser auf ein anderes System umzusteigen – bekannt.
- Alte Eclipse-Versionen 3.2.x unterstützen die .launch-Dateien noch nicht.
Installieren Sie die aktuelle Version, die Sie unter http://www.eclipse.org/downloads/ finden (Eclipse IDE for Java Developers).
Beachten Sie, dass manche Linux-Distributionen ältere Versionen im Paketmanager anbieten.
Literatur
Der Zugriff auf die unten angegebenen Dokumente ist passwortgeschützt. Bitte fragen Sie
Ihren Übungsgruppenleiter nach Benutzernamen und Passwort. Bei Problemen können Sie sich
an Alexander Bernauer wenden.
|