Theory.org » software » ant » Langton's Ant Software

Langton's Ant
(english version)english
Dieses kleines Stück Software habe ich nach dem Lesen eines Artikels über Langton´s Ant an nur einem Wochenende Programmiert. Es ist ein Beispiel eines finite-state zellularen Automatens. Die Ameise (oder Ameisen) starten auf einem Gitter. Jedes Quadrat ist entweder schwarz oder weiß. Falls die Ameise auf einem schwarzen Quadrat steht, dreht sie sich um 90° nach rechts und bewegt sich in diese Richtung aufs nächste Quadrat weiter. Falls die Ameise auf einem weißen Quadrat steht, dreht sie sich um 90° nach links und bewegt sich in diese Richtung aufs nächste Quadrat weiter. Wenn die Ameise ein Feld verläßt, invertiert sie dessen Farbe.
Das Besondere an Langton´s Ant ist, daß unabhängig vom Muster des Feldes auf dem die Ameise startet, sie früher oder später immer beginnt eine "Autobahn" zu bauen, welche aus einer Serie von 117 Schritten besteht, die sich unendlich wiederholen. Nach jeder Runde der 117 Schritte befindet sich die Ameise dann um einen Pixel in vertikaler und horizontaler Richtung verschoben. Probiers doch einfach aus.

Download ant.tar.gz

Optionen:
-s [BREITE] [HÖHE]
-m [VERGRÖßERUNGS FAKTOR]
-r [NUMMER] , 1 von NUMMER Pixeln sind invertiert
-f [FILENAME.PNG] , benutze ein png-Bild um die Startkonfiguration anzugeben
-t , Ameise läuft auf einem Torus.
-k , Ameise läuft auf einer "klein bottle".
-a [ANZAHL DER AMEISEN] , mehrfache Ameisen Modus:
wenn ein png geladen wird, plaziert das Programm n Ameisen auf den ersten n gefundenen Pixeln der Farbe ff0000. Ansonsten werden die Ameisen zufällig verteilt.

Links
Forschungberichtvon Ronny Ziegler
Vants
Noch mehr Ameinsen, einschließlich des Programms Xant

Benötigt gtk und libpng. GPLed. Falls jemand weitere Links kennt, schreibt mir (matt (at) theory.org) (aber auf englisch).