TU Wien:Selbstorganisierende Systeme VU (Rauber)
Daten[Bearbeiten | Quelltext bearbeiten]
Vortragende | Rudolf Mayer• Andreas Rauber• Abdel Aziz Taha |
---|---|
ECTS | 4,5 |
Alias | Self-Organizing Systems (en) |
Letzte Abhaltung | 2024W |
Sprache | „bei bedarf in englisch“ ist kein zulässiger Sprachcode. |
Mattermost | selbstorganisierende-systeme • Register • Mattermost-Infos |
Links | tiss:188413, eLearning |
Inhalt[Bearbeiten | Quelltext bearbeiten]
Es werden verschiedene Themen des unüberwachten Lernens wie z.B. Self-Organizing Maps, Growing Hierarchical Structures, Zellulaere Automaten, Multi-Agenten Systeme vorgestellt. Die Vorträge präsentieren von der Standardinformatik abweichende Ansätze um Probleme zu lösen.
Ablauf[Bearbeiten | Quelltext bearbeiten]
In insgesamt 5 Vorlesungseinheiten werden die oben genannten Themen vorgetragen.
Benötigte/Empfehlenswerte Vorkenntnisse[Bearbeiten | Quelltext bearbeiten]
Java, Python
Vortrag[Bearbeiten | Quelltext bearbeiten]
Die Vorträge sind recht interessant.
Prof. Mayer (Introduction, Cellular Automate, Genetic Algorithms, Ant Colonies, Agents): Good lecture and solid slides, lectures were recorded during Covid
Prof. Taha (Swarm Intelligence): Good slides, Lecture pre-recorded with horrible audio quality, but slides are pretty much sufficient.
Prof. Rauber (SOM): No lecture recordings, slides are pretty bad, if you don't attend the lecture you will need some external material to understand SOMs. Also the slides on SOM-visualization are insane. Professor Rauber has done a lot of research in this area, which is why there are something like 30 different visualizations in the 215 slides pdf. Because there are so many of them, explanations are usually very brief especially towards the end, where he explains visualizations in a few bullet points, using concepts and terminology that he never explains in the lecture. From the old exams it can be seen that these visualizations can be asked on the exam.
Übungen[Bearbeiten | Quelltext bearbeiten]
Es sind 3 Übungen zu absolvieren. Alle Aufgaben können in einer Gruppe (2 Personen) oder alleine bearbeitet werden. Die erste Übung ist relativ unkompliziert - bei den anderen sollte man anpeilen, eine Woche vor dem Abgabetermin fertig zu sein um genug Zeit zu haben eventuell auftretende Probleme zu lösen (Schwierigkeiten mit der SOM Toolbox v.a.)
Übung 1 (nur eine Aufgabe muss gewählt werden)
- Einen genetischen Algorithmus für eine Ameise bei der Futtersuche implementieren (Zeitaufwand keine Ahnung)
- Ein Multi-Agenten-System mit JADE erstellen (Zeitaufwand: 1-2 Tage)
Übung 2
- Analyse von zwei Daten-Sätzen mit Hilfe einer SOM und entsprechenden Visualisierungen. Dient zum Kennenlernen der SOM-Toolbox.
- Zeitaufwand relativ hoch - ca. 30-40h Arbeit ist realistisch
- Es ist vermutlich durchaus normal, dass man bei den meisten Datensets nicht viel erkennt. Wenn man im Bericht argumentiert woran das liegt steht einer guten Bewertung dennoch nichts im Wege.
Übung 3
- Ein ausgewähltes Beispiel im Zusammenhang mit einer SOM umsetzen. z.B. Analyse von Topology Violations, Implementieren neuer Features in die SOM Toolbox u.Ä.
- Zeitaufwand ist wohl mindestens ein Wochenende
WS18:
Übung 1
- Zwei Multi-Agenten-Systems mit JADE erstellen und analysieren
Übung 2
- Analyse eines selbst gewählten Datensatzes mit Hilfe einer SOM und entsprechenden Visualisierungen.
- hoher Zeitaufwand! Viele SOMs sind zu trainieren und zu analysieren
Übung 3
- Netlogo Framework verwenden um einen Particle Swarm zu simulieren. Ein template für den Algorithmus wurde zur Verfügung gestellt und musste fertig implementiert werden. Danach anhand von zwei auszuwählenden Funktionen die PSO analysieren
- relativ hoher Zeitaufwand, wenn auch nicht so hoch wie für Übung 2
WS19/20 Die Aufgaben wurden dieses Mal in Dreiergruppen gemacht
Übung 1
- Zwei Probleme aussuchen (z.B. TSP, Knapsack) und mit mindestens zwei der in der Vorlesung vorgestellten selbstorganisierenden Techniken (GA/Ants/Agents..) lösen. Achtung: Die Algorithmen sollten mehrmals mit verschiedenen Parametern ausgeführt werden - denkt auch daran, verschiedene random seeds zu verwenden! Es ist erlaubt, schon bestehende Implementierungen zu verwenden (acopy etc)
- Die Angabe war etwas kurz und sehr offen - wenn etwas unklar ist, am besten im Forum nachfragen
- Durch die ofte Ausführung und Analyse Aufwand zumindest ein Wochenende
Übung 2
- So wie Übung 3 im letzen Jahr, Netlogo Template vorgegeben, und einen Teil fertig implementieren. Dieses Mal mussten drei Funktionen, drei Constraints und zwei Exception Handlings verglichen werden, wobei die Penalty Method selbst implementiert werden musste.
In diesem Jahr gab es die Möglichkeit, zwischen einem 2-Übungs und einem 3-Übungs-Modus zu wählen. Im 2-Übungs-Modus musste nur eine der zwei ersten Übungen gemacht werden. Für die SOM-Übung musste dann etwas implementiert werden. Im 3-Übungs-Modus musste ein selbst gewählter Datensatz mit der hauseigenen SOMToolbox analysiert werden.
Übung 3 - 3 Übungen Modus
- Datensatz von OpenML aussuchen, beschreiben, preprocessen, und viele SOMs trainieren und Visualisierungen erstellen und anlysieren. Interessant ist, dass auch einige ``falsche" SOMs trainiert werden müssen, damit man den Unterschied erkennt, wie gute und schlechte SOMs aussehen (zumindest ist es das didaktische Ziel)
- Die SOMToolbox des Instituts hat einige Bugs - früh anfangen, rumspielen und schauen was funktioniert und was nicht. Generell auch früh anfangen, weil viele SOMs zu trainieren sind
- Es wird empfolhen, die Übung wirklich gemeinsam zu machen und nicht die SOMs auf die Gruppenmitglieder aufzuteilen. Der Hintergrund ist, dass dann die Analyse und Vergleich der SOMs einfacher ist.
Übung 3 - 2 Übungen Modus tbd
WS21: Übung 1 Gleich wie letztes Jahr ODER es gab auch spezielle Themen, bei denen man irgendwelche Themenverwandten Papers nachprogrammieren konnte. Übung 2 Gleich wie letztes Jahr Übung 3 Gleich wie letztes Jahr ODER es man konnte auch eine SOM Visualisierung selbst implementieren. Selbst Visualisierung implementieren wirkt vom Aufwand her wesentlich angenmessener.
Prüfung, Benotung[Bearbeiten | Quelltext bearbeiten]
Es wird fair benotet. Es ist ein wenig schwer auf die Prüfung zu lernen, da man nicht genau weiß was man lernen soll. Die Prüfungsfragen sind aber eher abschätzbar und umfassen größere Themenbereiche wie z.b. die Funktionweise einer SOM und den Einfluss einzelner Parameter.
Dauer der Zeugnisausstellung[Bearbeiten | Quelltext bearbeiten]
1,5 Monate
Zeitaufwand[Bearbeiten | Quelltext bearbeiten]
Die Programmierbeispiele sollten nicht unterschätzt werden. Da es drei Beispiele sind reicht es nicht eine Woche vor Abgabe erst zu beginnen. Die LVA Leitung lässt jedoch mit sich reden und so wurde der Abgabetermin im WS08 um 2 Wochen nach hinten verschoben.
Meinung WS18: angemessen - leicht erhöht für 4.5 ECTS
Unterlagen[Bearbeiten | Quelltext bearbeiten]
Tipps[Bearbeiten | Quelltext bearbeiten]
Früh genug mit den Programmieraufgaben beginnen, da diese zeitaufwändig sind.
Highlights / Lob[Bearbeiten | Quelltext bearbeiten]
noch offen
Verbesserungsvorschläge / Kritik[Bearbeiten | Quelltext bearbeiten]
The part on SOM visualization should be cut down significantly. Instead of very briefly covering 30 different visualizations, picking 5 of them that display different attributes / use different approaches and explaining those in detail might be a better approach.
Es wäre gut, die Bewertung der Übungen viel früher zu bekommen. Haben die Bewertung der ersten Übung, die Mitte Dezember abgegeben werden musste, erst nach Ende des Semesters erhalten. Nachdem aber bei allen Übungsbeispielen und der Prüfung mehr als 50% erreicht werden müssen, wäre es schön, zu wissen, ob man an den weiteren Übungsbeispielen überhaupt noch arbeiten sollte.
WS23: Not much has changed. Absolutely no feedback on the assignments although the semester is already over. The LVA team is generally not really responsive. Although the first assignment is quite fun and interesting the last two are about as fun as cleaning windows. NetLogo (assignment 2) was robust and ultimately okay to work with but it was a bit of pain and a lot of experimenting to get it up and running (if you want to automate it, which you absolutely should). Assignment 3 was a bit of a nightmare regarding the tools we had to use. It's exhausting to spend so much time to get buggy, old tooling to run and then spend a good chunk of your time working with SOMs (It is in general a bit bizarre to see how much time the course spends with SOMs) and a zillion different visualizations which is a lot less interesting than the course let's you assume. When analysing the maps you are basically left with just guessing as there are no explanations for how to interpret the different visualizations and the slides are not helpful at all. I would definitely not take this course again in its current format.