Swarm

Screenshot of Swarm

Swarm visualises an ant colony optimization algorithm.

Ant colony optimization algorithms on wikipedia :

"In computer science and operations research, the ant colony optimization algorithm (ACO) is a probabilistic technique for solving computational problems which can be reduced to finding good paths through graphs."

 

The program allows you to adjust various values like the pheromone emission and decay. Graphs can be generated randomly which also can be viewed as a nice landscape simulation next to an anthill.

 

There are downloads for different platforms (Windows, HMTL5 and Android).

Very small resolutions (400x300) are supported, so old devices with small displays can be used, too.

Screenshots

Controlls / Shortcuts:

Buttons Effect
F1 Show/hide explanation.
F5 Save current graph.
F6 Load graph if one was stored before.
F11 Change window size (and resolution).
Space / M Show/hide menue.
1 Change language (English, German).
A Create apple at node nearest to the cursor.
G / I Switch view of graph.
K Kill all ants.
L Delete all pheromone values (at the edges).
P Show/hide pheromon trails/values.
R Reset all values and restore default settings.
Backspace Generate new random graph.
Arrow-Key Up Increase number of ants.
Arrow-Key Down Decrease number of ants.
Mouse Wheel Up Increase Room-Speed -> framerate.
Mouse Wheel Down Decrease Room-Speed -> framerate.
Ctrl + Mouse Wheel Up Increase moving speed of ants.
Ctrl + Mouse Wheel Down Decrease moving speed of ants.
Right Mouse Button (hold) Drag ants and apples.
ESC Close info / quit program.

Downloads

Windows
Swarm
for Windows (.exe)
Swarm.zip
Komprimiertes Archiv im ZIP Format 3.8 MB
Android
Swarm
for Android (.apk) (ARM v5/v7 architecture only)
Swarm_ARM.apk
apk File 6.1 MB

HTML5
for a Browser (HTML5)
swarm_html5.zip
Komprimiertes Archiv im ZIP Format 2.3 MB

 

What do you think about Swarm?

Leave a comment (English page only).

Kommentar schreiben

Kommentare: 0

Profil von Michael Grönert auf LinkedIn anzeigen

 

Michael Grönert

 

Michael Grönerts DevBlog anzeigen

 

Michael Grönert auf GitHub anzeigen

 

Profil von Michael Grönert auf DeviantArt anzeigen