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 oder interessiert sich für einfach dargestellte Statistiken oder eine schöne Datenvisualisierung. Vorraussetzung ist, das sie simpel und so einfach wie möglich gestaltet sind damit sie leicht und schnell zu verstehen sind. Daten und Informationen werden immer wichtiger für uns und täglich wächst die Menge an Information im Internet.

Große Daten zu kleinen Daten

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. Um Datenvisualisierung richtig zu machen werden viele Informationen auf wenige einfache Bilder und Symbole heruntergebrochen.

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.

Zukunft der Datenvisualisierung

Viel damit hat auch mit ergonomischer Gestaltung und Mensch-Maschine Interaktionen zu tun. Nicht nur eingeschränkten Personen mit z.B. schlechten Augen, sonder jedem hilft es, wenn wichtige Informationen möglichst schnell und barrierefrei und vor allem verständlich zu bekommen sind.

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: