Torusworld

Im zweitem Semester hatte in meinem Studiengang jeder die Aufgabe bekommen eine Jäger-Beute Simulation in Java zu schreiben. Auf einem begrenzten Spielfeld ohne Rand (läuft man nach unten geht es oben weiter u.s.w. -> Form eines Torus) leben Hasen und Wölfe. Die Hasen vermehren sich jeden Zyklus mit einer bestimmten Wahrscheinlichkeit und haben eine einstellbare maximale Lebensdauer. Wann immer sich ein Wolf auf ein Feld mit ein oder mehreren Hasen bewegt, werden alle Hasen auf diesem Feld gefressen und der Wolf zeugt mit einer bestimmten Wahrscheinlichkeit einen neuen Wolf. Auch die Wölfe haben eine maximale Lebensdauer. Als Unterschied zu vielen vergleichbaren Programmen sollte es möglich sein, dass sich mehrere Hasen oder Wölfe auf ein und dem selben Feld befinden können.

Einstellbare Parameter

  • Größe der Welt
  • Anzahl der Hasen beim Start
  • Anzahl der Wölfe beim Start
  • Maximale Hasenzahl
  • Maximale Wölfezahl
  • Maximale Lebensdauer der Hasen in Zyklen
  • Maximale Lebensdauer der Wölfe in Zyklen
  • Vermehrungswahrscheinlichkteit der Hasen
  • Vermehrungswahrscheinlichkteit der Wölfe beim Essen ein oder mehrere Hasen
  • Auswahl zwischen unendliche Toruswelt oder endlicher Welt
Es lässt sich gut beobachten wie bei bestimmten Parametern mal ein Gleichgewicht zwischen Hasen und Wölfen auftritt oder bei ungünstigen Startparametern die Wölfe oder beide Tierarten aussterben. Bei einem Gleichgewicht sieht es so aus, als ob die Wölfe die Hasen jagen würden obwohl sich beide Tierarten nur zufällig in eine Richtung bewegen. Dies liegt daran dass nur dort wo Hasen sind neue Wölfe entstehen und bei der stark begrenzten Lebensdauer (8 Zyklen in der Standardeinstellung) somit sich die Wölfe kaum weit entfernt von der Hasengruppe aufhalten können. Grenzen Wölfe eine Gruppe Hasen von allen Seiten ein, so vernichten die Wölfe die Hasen von allen Seiten und die Wolfspopulation wächst zum Hasenzentrum hin. In diesem Fall droht ein aussterben der Hasen und somit auch der Wölfe sofern nicht noch woanders auf der Welt Hasen und Wölfe zu finden sind. Ohne Wölfe wächst die Hasenpopulation, bis die eingestellte maximale Anzahl der Hasen erreicht ist.
Auf einem ~1,5 GHz Rechner ist die Geschwindigkeit bei bis zu 100000 Tieren noch akzeptabel, darüber hinaus wird das Programm leider etwas langsam.

Screenshots

Download

Quellcode (geschrieben in Java) von Torusworld 0.3.1. Lizenz: GPL v2. torusworld_0-3-1.zip