Hamster Dokumentation

 

Hamstername: Killer

bighamster.gif (4244 Byte)

Version: 1.51
Hamsterdatum:  28.04.2002
Autor: Michael Sack

 

 

Allgemeines:

Der Hamster Killer ist im Rahmen des Hamsterwettbewerbes entstanden im Zeitraum zwischen dem 1. und 2. Semester.
Killer breuht auf einem System, welches sich aus zwei Strategien zusammensetzt.

1. Einer eigens für diesen Hamster erschaffenen abstrakten Datenstruktur, die die Informationen, wie die Wände und
     Wege, die sich auf einem Feld befinden und ihre Lage speichert, sowie Zusatzinformationen, wie ob sich noch  Körner darauf befinden speichert.   Zusätzlich besitzt
    sie die verschiedensten Berechnungs-Methoden, die die Anzahl der Rechtsdrehungen, etc. berechnen. Sie ist also das Herzstück des Hamsters.

2. Die Klasse Killer selbst. Sie erweitert die Klasse Hamster, die die gegebene Grundlage des Hamsters darstellt.  Das Konzept des Hamsters besteht darin, einen
    Roten Faden vom Heimatfeld durch das Labyrinth zu spannen, ähnlich einer Stassenkarte. An diesem Roten Faden kann der Hamster sich hin und er bewegen
    und ihn gegebenenfalls ändern.  Dieser Rote Faden wird durch eine Liste namens BewegungsFaden implementiert. Sie speichert Instanzen der Datenstruktur
    Feldinhalt als Objekte in sich. Dabei funktioniert der Hamster nach dem Prinzip der "Rechten Hand", d. h. dass er sich immer den Weg aussucht, der für ihn am
    weitesten rechts liegt. Dieser Weg wird von ihm dan als erstes erforscht, auf jedem Feld. Ist der Weg dann erforscht kehrt der Hamster zur letzten Verzweigung
    zurück, löscht den bekannten Weg aus seinem Gedächtnis, also aus der Liste BewegungsFaden und nimmt dann den nächsten Weg, der nun am weitesten rechts
    von ihm liegt. Dies tut er solange, bis er keine Wege mehr zur Auswahl hat auf dem StartFeld oder er mehr als eine bestimmte Anzahl an  Schritten gemacht hat,
    dann hört er auf und begibt sich in den Winterschlaf.  Um einen OrientierungsPunkt zu haben ist der Hamster so geschrieben, dass er sich egal wann er sich auf
    ein Feld begibt, immerzuerst einmal um 180 Grad, also zu dem Weg dreht von dem aus er gekommen ist. Im Anschluss erforscht er das Feld. Dazu speichert er die
    Informationen über die Lage von Wänden und Wegen in einer internene Liste der Datenstruktur Feldinhalt ab. Und dreht sich dabei jeweils um eine Kante nach
    rechts, bzw. 60 Grad. Ist er auf der urprungsstellung wieder angekommen, dann dreht er sich zu dem Weg, der vom Hamster die meisten einzelnen Rechtsdrehungen
    verlangt und geht einen Schritt nach vorn.