Autor Beitrag
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Mo 05.05.14 23:14 
Hallo,
gestern war mein 1000.Tag in der EE. Deshalb gibt es wieder ein kleines Programm, dass aber nicht auf meinem Mist gewachsen ist.
Ich habe "LocasAnts" von Denys Almaral (piXel) aus dem Jahr 2008 etwas umgeschrieben (Originalcode im Anhang). Konkret habe ich an der Darstellung, der Verwaltung der Ameisen und der Geschwindigkeit etwas verändert.
Außerdem braucht die Exe nun keine Zusatzdateien mehr.

Ziel ist es, die Ameisen gefundenes Futter in ihren Ameisenbau transportieren zu lassen. Dazu wählt man zuerst rechts eine Aktion aus und klickt auf das Spielfeld.

Mit "Hindernis setzen" legt man einen Stein, ein Blatt oder eine Muschel in den Weg der Ameisen. "Futter festlegen" produziert eine gewisse Menge Futter, die die Ameisen allmählich wegtragen können. "Eingang bauen" konstruiert den Eingang des Ameisenbaus. Ameisen mit Futter bewegen sich dorthin, legen ihr Futter ab und gehen wieder auf Nahrungssuche.
In den Eingabezeilen können weitere Parameter eingestellt werden.

Das Verblüffende an der Simulation ist, dass die Ameisen nach einiger Zeit stets Futter und Bau finden und sich die berühmten „Ameisenstraßen“ ausbilden. Und legt man den Ameisen auf ihrer Straße ein Hindernis in den Weg, so werden sie dieses relativ schnell umgehen. Bei mehreren Ameisenbauen und Futterquellen treten auch mehrere Ameisenstraßen auf, die sich auch chaotisch ändern können.

Ich finde erstaunlich, was man alles simulieren kann, und ziehe vor Denys Almaral meinen Hut :flehan: .
Viel Spaß beim "Quälen" der Ameisen.

Beste Grüße
Mathematiker
Einloggen, um Attachments anzusehen!


Zuletzt bearbeitet von Mathematiker am Sa 13.09.14 21:44, insgesamt 1-mal bearbeitet

Für diesen Beitrag haben gedankt: Horst_H, kolibri95, ub60
ub60
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 762
Erhaltene Danke: 127



BeitragVerfasst: Di 06.05.14 00:30 
Tolles Programm!
Seit ein paar Jahren gibt es das schon hier antme.net/, leider in der "falschen Sprache" :D .

ub60
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1652
Erhaltene Danke: 243

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Di 06.05.14 23:08 
Hallo,

Das simuliert etwas merkwürdig.
Nach einer gewissen Zeit zerfällt eine Straße, als würden die beteiligten Ameisen zeitgleich die Orientierung verlieren.
In jede Ecke ein Loch und wenn alle Ameisen sich sehr gut verteilt haben dann ungefähr genau Futter in der Mitte des Rechtseckes setzen
Eine genauere Erklärung wie die Simulation abläuft wäre schön.
Im Original steht ja was.

Zitat:

Give us some food, set caves,obstacles...
then wait a bit...
the magic will happen!!!
No one really knows where the things
are, we have a very small memory.
This cruel programmer are not helping us!!!
We only know:
- A very short path we left behind
- How much time we are looking for
our objetive (food/cave), Roughly
- And we share that info with every
colleague we meet in our path.


Was bedeutet der der kurze Weg ( letzte Richtung und Strecke )
Wie werden die Informationen getauscht/ übernommen.
Wie wirkt dabei der Zufall / madness
Der Ansatz das sich die Tierchen treffen ist ja anders als bei anderen Simulationen, die die Verfolgung einer sich verflüchtigenden Duftspur die von jeder Ameise aufgefrischt wird.

Gruß Horst
Mathematiker Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Di 06.05.14 23:26 
Hallo,
user profile iconHorst_H hat folgendes geschrieben Zum zitierten Posting springen:
Eine genauere Erklärung wie die Simulation abläuft wäre schön.

Soweit ich es beim schrittweisen Durchgehen der Originalquellen verstanden habe, sorgt der eingestellte Zufallswert für ein gewisses Abdriften der Ameisen vom eigentlichen Weg. Nur dadurch können die Ameisen auch neue Eingänge und Futterquellen finden.
Warum es bei 4 Eingängen und einer Futterquelle zur ständigen(!) Änderung der Straße kommt, verstehe ich im Moment auch nicht. Obwohl ich von solchen Vorgängen wenig Ahnung habe, spekuliere ich einmal, dass hier irgendein chaotischer Prozess wirkt.

Auf der Seite von Denys Almaral www.denysalmaral.com/p/free-downloads.html findet man leider auch keine weitere Erklärung.

Beste Grüße
Mathematiker

Nachtrag: Trägst Du 5000 Ameisen ein, so läuft die Animation langsamer, da der Prozessor etwas gestresst wird, und man erkennt, dass einige vom Bau zurückkehrende Ameisen sich in Richtung der Ameisen bewegen, die Futter tragen (frische Duftspur). Damit sind nicht mehr genügend Ameisen zum Erhalt der Straße da und sie zerfällt vorerst. Einige Ameisen laufen aber den alten Weg. Bewegen sie sich mit Futter zu ihrem Bau, sind die anderen ohne Futter zur Futterquelle unterwegs und es geschieht das Gleiche. Damit wechseln sich die Straßen ständig ab.
Ob das richtig erklärt ist, weiß ich nicht, aber es könnte vielleicht der Grund sein.
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1652
Erhaltene Danke: 243

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Mi 07.05.14 17:16 
Hallo,

ich habe mal probiert, was die minimale Anzahl an Ameisen für eine Straße ist in der spezielle Ausgangsposition.
Es fehlt mir an Geduld....
100 dauert eine kleine Ewigkeit und plötzlich ist die Straße da.
Eine Mathematiker-Uhr wäre da praktisch ;-)
Ameisen

Die Geschwindigkeit spielt dabei auch ein große Rolle.Bei 2 treffen sich die Ameisen scheinbar kaum noch und irren umher.
Ob Zufall = 0 oder 0.3 spielt scheinbar keine Rolle, dauert vielleiht etwas länger.
Wenn man wenigstens spanisch ( oder ist das portugisisch ?? ) könnte.

Gruß Horst
Einloggen, um Attachments anzusehen!
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1652
Erhaltene Danke: 243

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Fr 09.05.14 16:45 
Hallo,

eine kleine Ergänzung.
Man kann die Ameisen, die scheinbar gerne an der Wand lang laufen, auch ohne Futter oder Bau einfangen.
die Anzahl 99999 stimmt nicht 9999 ist die höchste im Original-Programm.Aber der bei weitem größte Teil wandert im Kreis, wie eine gelenkte ....

AmeisenGefangen

Gruß Horst
Einloggen, um Attachments anzusehen!

Für diesen Beitrag haben gedankt: Mathematiker
freak4fun
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 604
Erhaltene Danke: 4

Win 7 Pro
VS 2013 Express, Delphi, C#, PHP, Java
BeitragVerfasst: Fr 27.06.14 02:34 
Großartig! :lupe:

_________________
"Ich werde auf GAR KEINEN Fall…!" - "Keks?" - "Okay, ich tu's."
i++; // zaehler i um 1 erhoehen