Ameisenalgorithmus – Schwarmintelligenz in Matlab

Vogelschwarm

Hab für die Uni ein kleines objektorientiertes Skript in Matlab geschrieben welches über den Ameisenalgorithmus handelt.

Was ist der Ameisenalgorithmus?

Dieser simuliert mehrere Ameisen und deren Fähigkeit zur bildung einer kollektiven Intelligenz. Das nennt man Schwarmverhalten. Dieses Verhalten kann man auf Probleme des Menschen anwenden. Zum Beispiel in der Transportlogistik. (siehe auch Travelling Salesman Problem). Wie kann man möglichst viele Städte bzw. Ziele mit der geringsten Route abfahren? Die Lösung für diese Frage steigt mit jedem zusätzlichen Ziel stark an. Darum gibt es heuristische Verfahren wie den Ameisenalgorithmus.

Wie denkt eine Ameise?

Eigentlich ist ein einzelnes Individuum nicht sehr intelligent. Es geht in zufällige Richtungen bis es Futter findet. Dabei schüttet es einen Stoff aus der als Pheromon bezeichnet wird. Findet die Ameise dann Futter, so kehrt sie zum Nest zurück. Dadurch hinterlässt sie eine Pheromonspur welcher wiederum andere Ameisen folgen. Es bildet sich nach der Zeit ein Ameisenpfad aus und die Ameisen haben eine gute Route gemeinsam gefunden.

Hier noch das Video. Der Code wurde objektorientiert in Matlab geschrieben

Paper

Hier könnt ihr das zugehörige Paper downloaden. Es ist auf englisch.

Download Paper Ant-Algorithm

Datenvisualisierung, Infographics, Statistiken, Imformationsvisualisierung

Jeder sieht sich gerne Infografiken an und analysiert gerne Statistiken. Vorraussetzung ist, das sie schön und einfach zu verstehen sind. Daten und Informationen werden immer wichtiger für uns und täglich wächst die Menge an Information im Internet.

Wie sollen alle diese Daten überhaupt beherrscht werden, bzw. wie kommt man mit diesen riesigen Datenmengen überhaupt klar? Es entstehen neue Studiengänge an den Universitäten wie zum Beispiel Datenanlyse oder DataMining. Es sollen also aus den Unmengen an erzeugten Daten neue Erkenntnisse gewonnen werden.

Welche coolen Möglichkeiten es in der Darstellung von Daten gibt, welche Prinzipien man beachten sollte beim Visualisieren und wie man die Informationen möglichst einfach zum Betrachter kommuniziert erklärt Jörn Loviscach sehr anschaulich in dem folgenden Youtube Video:

Ich bin gespannt wie die Informationsgrafiken und Datenvisualisierungen der Zukunft aussehen. Das Potenzial für einfachere Darstellungen ist meiner Meinung nach enorm und könnte ein wichtiger Zukunftstrend werden.

Denn in Wahrheit hilft es jedem wenn man wichtige Informationen möglichst schnell und barrierefrei und vor allem verständlich bekommt.

3D Musik- und Soundvisualisierung mit Blender

Die meisten meiner Youtube Videos sind 3D Soundvisualisierungen, welche ich mit dem kostenlosen open-source Tool Blender erstellt habe. Mit Blender ist es möglich, die Musik oder den Sound im MP3 Format bequem hinein zu laden. Die Musik oder Sounds werden dann als Kurven dargestellt. Es ist sogar möglich beim laden den Frequenzbereich einzustellen. Damit kann man alle möglichen Werte eines Objektes wie z.B.: Skalierung, Rotation, Farbe usw. mit einem bestimmten Frequenzbereich animieren. Es lassen sich somit alle möglichen Eigenschaften mit den Musikdaten kombinieren.

Hier ein paar Beispiele, welche ich selbst mit Blender erstellt habe: