Diese Evakuierungssimulation ist der Entwicklungsteil meiner Bachelorarbeit 'Crowd Simulation - Echtzeitsystem zur Simulation menschlichen Verhaltens in einer virtuellen 3D-Umgebung' und wurde mit Unity umgesetzt. Crowd-Simulation ist ein Vorgang, um das Verhalten einer großen Anzahl an Personen zu simulieren und in der Spielentwicklung, Architektur, Verkehrsplanung sowie in Evakuierungssimulationen verwendet wird. Wesentliche Elemente von Crowd-Simulationen sind ein überzeugendes Verhaltensmodell der einzelnen virtuellen Personen oder auch Agenten genannt, eine verständliche Darstellung der Simulation sowie eine gut definierte und semantisch modellierte Umgebung. Diese Simulation konzentrierte sich auf die Entwicklung des Verhaltensmodells der Agenten im Bereich der Evakuierungssimulation.
Das Konzept der Anwendung computergestützter Simulationen von Fußgängern im Gebäudeplanungsprozess findet in der Architektur immer mehr Zustimmung, da es kostengünstiger und effizienter ist, auf diese Weise die gewünschte Raumnutzung für Menschen zu organisieren. Dieser Ansatz wird oft als agentenbasierte Simulationen bezeichnet. Crowd-Simulationen mit Schwerpunkt auf Evakuierungssituationen sind ein Anwendungsgebiet von agentenbasierten Simulationen, die den Zeitaufwand für die Evakuierung eines Gebäudes durch Menschen im Katastrophenfall virtuell analysieren und auswerten. Sollte bei einer Evakuierungssimulation die maximal erlaubte Zeit zum Verlassen der Gefahrenumgebung nicht erreicht werden, können zusätzliche Ausgänge eingeplant werden, bevor der eigentliche Bauprozess des Gebäudes begonnen hat. Umgebungen, die mit Evakuierungssystemen getestet werden, sind in der Regel klar definierte und geschlossene Bereiche, wie z.B. Flugzeuge, U-Bahnen, Schiffe sowie die Innenbereiche von Gebäuden.
Ziel war es, eine agentenbasierte Simulation mit Schwerpunkt auf Evakuierungssituationen in einer hochmodernen 3D-Spiele-Engine zu implementieren. Um die am besten geeignete Game Engine zu bestimmen, wurden moderne und frei zugängliche Engines ausprobiert und folglich evaluiert. Mithilfe der entwickelten Simulation sollten folgende Fragen beantwortet werden:
Ein Hauptproblem bei der Entwicklung von Crowd-Simulationen ist die Computerauslastung aufgrund der hohen Anzahl an Agenten in der Szene. Der Ansatz in dieser Arbeit, die Simulation auf Geräten mit geringer Leistung nutzbar zu machen, bestand darin, framebasierte Abläufe weitgehend zu vermeiden (bei jedem Frame ausgeführt) und dadurch Rechenkosten zu reduzieren. Anstatt die Positionen aller Agenten bei jedem Frame zu überprüfen, wurde ein eigenes Trigger-Event-System implementiert, welches eine neue Aktion erst dann ausführt, sobald die vorherige Aktion erfolgreich oder fehlerhaft abgeschlossen wurde. Um dies zu erreichen, wurden alle Objekte in der Szene mit einem Collider eingekleidet, um Kollisionen zu erkennen und somit das Ereignissystem auszulösen.
Während der frühen Tests der Simulation war die Kollisionserkennung des Trigger-Event-Systems oft fehlerhaft. Daher kamen die Agenten laut Event-System nie am Zielobjekt an, obwohl alle Collider korrekt eingestellt waren. Das Problem bestand darin, dass die Agenten einige Pixel über dem Navigation Mesh schwebten und die Objekte aufgrund der versetzten Höhe nie kollidierten. Um das Schwebeverhalten der Agenten zu verhindern, wurde das Height Mesh manuell angepasst und der Fehler war somit behoben.
Die Simulation bietet eine einfache 3D-Testumgebung, die zu Beginn mit Menschen bevölkert wird, repräsentiert durch programmierte Agenten, die sich eigenständig in der Umgebung bewegen. Durch die Implementierung eines Verhaltensmodells führen die Agenten verschiedene Aktivitäten selbstständig in der Testumgebung durch und aktualisieren dadurch ihren aktuellen Zustand. Nach einer zufälligen Zeitspanne innerhalb eines definierten Bereichs wird eine Katastrophe getriggert, die zur Evakuierung des Gebäudes führt. Alle wesentlichen Ergebnisse werden am Ende der Simulation ausgewertet und präsentiert. Selbst in dieser einfachen 3D-Umgebung zeigten die Tests bereits erste wertvolle Erkenntnisse, indem verschiedene Umgebungselemente wie Eingänge und Treppenhäuser unterschiedlich positioniert wurden. Das entwickelte Simulationsmodell ist daher in der Lage durch die Anpassung der 3D-Umgebung und des Verhaltensmodells auch in anderen Gebäuden und Geländen eingesetzt zu werden