Crowd Simulation

Gruppensimulation (engl: crowd simulation) befasst sich mit der Bewegungssimulation von großen Menschenmengen.

Typische Anwendungsfälle sind die Evakuierung von großen Gebäuden und Anlagen im Notfall oder die Vermessung des Durchlaufs von Kassenanlagen, Verpflegungsständen oder Zugänge bei Großveranstaltungen. Meist sind eine oder mehrere Positionen im Raum vorgegeben, auf die zugesteuert (z.B. Ausgänge von Gebäuden) oder vor denen weggelaufen (z.B. Gefahrenpunkte) werden muss.

Die Menschen werden dabei als intelligente, autonom agierende Agenten modelliert. Die Architektur der Mellowdia Lib ermöglicht die Einplanung von individuellen Agenteneigenschaften nach statistischen Vorgaben, beispielsweise Körpergröße und Bewegungsgeschwindigkeit. Auch komplexere Eigenschaften wie etwa psychologische Faktoren können über Algoritmen der Entscheidungsfindung eingebunden werden, um das Verhalten der einzelnen Agenten beeinflusst durch Panik, Agression, etc. zu individualisieren.

Die Bewegungssimulation kann dabei in diskreten Schritten oder in einer kontinuierlichen Bewegung ablaufen. Die technischen Herausforderungen sind die performante Kollisionsvermeidung und die Pfadfindung.

Analysedaten: Häufigkeit der Überschreitung einer Zelle auf dem Weg zu den Ausgängen in den Ecken.

In Computerspielen sind solche Simulationstechniken relevant, wenn große Mengen von NPCs gesteuert werden müssen. Beispielsweise jagt eine Zombiehorde den Spieler durch die Szene oder viele Angreifer bewegen sich in einem Tower Defense Spiel auf den Turm zu.

In der folgenden Simulation versuchen 50.000 Agenten ein Messegelände über vier 1 Meter breite Türen in den Ecken des Areals zu verlassen, d.h. es passt ein Agent pro Zeitschritt durch die Türe. Die Performance der verwendeten Algorithmen lässt eine quasi Echtzeitvisualisierung (~10 PFS) unter Nutzung einer einfachen 2D Renderengine ohne GPU Unterstützung zu.