JuPedSim App
Video-Tutorial: "Erste Schritte mit JuPedSim"
Webbasierte Oberfläche für JuPedSim — Personenstromsimulationen direkt im Browser
Eine kostenlose, browserbasierte Schnittstelle für die Forschung für Fußgängerdynamik und Evakuierungsanalysen

JuPedSim ist seit Langem ein wesentlicher Kern zur Erforschung der Fußgängerdynamik. Diese Weboberfläche wurde entwickelt, um die letzte verbleibende Hürde zum Simulieren zu beseitigen: die Konfiguration. Forschende, Ingenieure, Studierende und alle Interessierten können nun den gesamten Simulationsprozess von jedem Gerät direkt in einem Browser-Tab durchlaufen – es ist keine Installation erforderlich.
Das Tool ist für wissenschaftliche Anwendungsfälle konzipiert. Es unterstützt den Import gängiger Dateiformate (wie DXF aus CAD-Tools und IFC aus BIM-Daten) und den Export nach SQLite für eine nachgelagerte Analyse in Python.
Erstellung einer Simulation
Zeichnen der Geometrie
Das auf Canvas basierende Tool ermöglicht es, begehbare Flächen, Wände, Hindernisse, Ausgänge und Startbereiche für Agenten von Hand zu skizzieren. Für präzises Arbeiten wurden Konventionen aus Blender übernommen (axis-locking, snapping, …) , die bei detaillierten Anpassungen unterstützen. Zudem besteht die Möglichkeit ein Hintergrundbild zu laden, um mit Grundrissen oder Kartenbildern zu arbeiten.
Wenn Sie bereits ein Geometriemodell haben, können Sie DXF-Dateien aus CAD-Software oder IFC-Dateien aus BIM importieren. Dabei ist zu beachten, dass diese Dateien eine bestimmte Struktur einhalten müssen: Nur regelmäßige und geschlossene Polygone sind als Geometrieelemente zulässig. Sobald diese Bedingung erfüllt ist, können Sie die Geometriedateien direkt auf das Canvas ziehen – sie werden sofort analysiert – es ist kein separater Importdialog erforderlich.
Eine Simulationsszenario von Grund auf erstellen: Geometrie zeichnen, Routen der Agenten konfigurieren und ausführen.
Unterstützende Features wie Snapping, Festlegen von Abständen und Winkeln für eine präzise Geometrie.
Simulationsmodelle
Fünf Fußgängermodelle stehen zur Verfügung, die jeweils für unterschiedliche Forschungsfragen geeignet sind. Sie können identische Szenarien mit allen Modellen ausführen, um modellspezifisches Verhalten zu isolieren und untersuchen.
Routen und Flussregulierung
Das Verhalten der Agenten wird durch ein Routensystem (Journeys) definiert. Eine Route besteht aus verschiedenen Etappen (Stages), die zwischen Start und Ziel absolviert werden. Etappen können sein: Wegpunkte, Wartebereiche mit einstellbaren Verweilzeiten und Bereiche mit Flussregulierungen, z. B. zur Modellierung der eingeschränkten Nutzbarkeit von Türen. Etappenspezifische Parameter werden visuell auf der Canvas angezeigt, sodass die Logik eines Szenarios auf einen Blick verständlich bleibt.
Definition von Routen mittels Etappen, um den Fluss und das Warteverhalten zu steuern.
Analyse und Ergebnisse
Nach einem Simulationsdurchlauf können die Trajektorien visualisiert und die Bewegung der Agenten mit veränderbarer Wiedergabegeschwindigkeit dargestellt werden. Dichtekarten (Density maps) werden mit Hilfe der Gaußschen Kerndichteschätzung über PedPy berechnet. Geschwindigkeitsverteilungen und Evakuierungszeitkurven werden automatisch generiert. Für statistische Robustheit können mehrere Simulationsdurchläufe mit unterschiedlichen Startpositionen (seeds) ausgeführt werden.
Die Ergebnisse werden in SQLite-Dateien exportiert für die Verwendung in benutzerdefinierten Python-Pipelines oder als ZIP-Archiv mit agents.csv und trajectory.csv für die weitere Verarbeitung. Sie können auch bestehende JuPedSim-Ergebnisse direkt in die App zur Visualisierung importieren, ohne die Simulation erneut ausführen zu müssen.
Bestehende JuPedSim-Ergebnisse für die Visualisierung importieren, IFC (BIM)-Dateien parsen und Projektdateien verwalten.
Anwendungsfelder
Der häufigste Anwendungsfall ist die Evakuierungsanalyse – Szenarien werden simuliert, um Evakuierungszeiten zu berechnen und Engpässe zu identifizieren, bevor sie in der realen Welt auftreten. Da die Geometrie aus BIM-Modellen importiert werden kann, kann diese Art der Analyse früh im Designprozess erfolgen und nicht nur als nachträgliche Überprüfung.
Der Modellvergleich ist ein weiterer Bereich, in dem die Weboberfläche ihre Vorteile zeigt. Die Ausführung identischer Szenarien mit allen fünf integrierten Modellen schafft Verständnis darüber, wie Modellannahmen die Ergebnisse beeinflussen – eine Diskussion, die in der Literatur oft abstrakt bleibt, wird hier sofort sichtbar.
In der Lehre ist die App niederschwellig einsetzbar, da keine Installation erforderlich ist. Studierende können innerhalb weniger Minuten nach Erhalt eines Links mit ihrer ersten Simulation arbeiten, ohne zunächst lokale Umgebungskonfigurationen debuggen zu müssen.
Forschende, die tiefer einsteigen möchten, können SQLite-Dateien exportieren und in Python mit PedPy weiterarbeiten, der Analyse-Bibliothek, die auch zur Berechnung der Dichtekarten in der App genutzt wird.
Technische Details
Das Frontend ist mit React, einer auf Canvas basierenden Zeichenebene und Material-UI-Komponenten aufgebaut. Das Backend läuft mit FastAPI auf Python, kommuniziert mit der JuPedSim-Engine, zusammen mit einer Express/Node.js-Schicht für andere Dienste. Szenarien werden in MongoDB auf deutscher Forschungsinfrastruktur gespeichert. Die Authentifizierung erfolgt über Helmholtz AAI für institutionellen Zugriff, und ein integrierter KI-Assistent läuft auf Helmholtz Blablador mit RAG-basierter Abfrage der Dokumentation.
Geplante Funktionen
Die nächste Entwicklungsphase der JuPedSim Web Community konzentriert sich auf die Stärkung der wissenschaftlichen Zuverlässigkeit, KI-unterstützte Workflows und die Kopplung von Bränden und Evakuierungen.
Zunächst werden wir die Validierungs- und Verifizierungsfähigkeiten erweitern, indem standardisierte Benchmark-Szenarien implementiert werden. Dies umfasst die Integration von RiMEA-Testfällen und ISO-20414-Testfällen sowie die ordnungsgemäße Kennzeichnung dieser Szenarien in der Szenariendatenbank, um die Reproduzierbarkeit und die systematische Bewertung der Simulationsergebnisse zu unterstützen.
Zweitens werden wir den aktuellen KI-Assistenten in einen Simulations-Copiloten umwandeln, der das Model Context Protocol (MCP) verwendet. Der Copilot wird es den Nutzenden ermöglichen, Szenarien aus natürlicher Sprache zu entwerfen, Szenarien automatisch vor der Ausführung zu validieren und zu reparieren, Simulationsergebnisse mit Experimentdaten zu vergleichen sowie umsetzbare analytische Erkenntnisse anstelle einfacher Chat-Antworten zu generieren.
Drittens planen wir, eine Kopplung mit Fire Dynamics Simulator (FDS)-Berechnungen einzuführen, um die Brand-Evakuierungs-Analyse zu unterstützen. Diese Integration wird es JuPedSim-Agenten ermöglichen, FDS-Slicedaten zu lesen, um den Fractional Effective Dose (FED) für jeden Agenten anzunähern und die Gehgeschwindigkeit basierend auf Sichtbedingungen dynamisch anzupassen. Die Kopplung wird auf Slicedaten angewiesen sein, die FED-bezogene Verbindungen und Sichtfelder in einer standardisierten Höhe vom Boden repräsentieren, entsprechend dem Ansatz, der in FDS+Evac verwendet wird.
Einstieg
Besuchen Sie app.jupedsim.org und melden Sie sich mit Helmholtz AAI (auch über externe Konten) an, um Szenarien zu erstellen und zu speichern. Zeichnen Sie begehbare Flächen mit den Canvas-Tools oder ziehen Sie eine DXF- oder IFC-Datei direkt auf das Canvas, um sie zu importieren. Fügen Sie Startbereiche der Agenten hinzu, definieren Sie deren Routen, wählen Sie ein Fußgängermodell aus und führen Sie die Simulation aus. Die Ergebnisse erscheinen sofort in der Wiedergabeansicht. Wenn Sie tiefer einsteigen möchten, exportieren Sie die SQLite- oder CSV-Datei und führen Sie Ihre Analyse in Python mit PedPy durch.
Der webbasierte Simulator ist eine experimentelle Plattform, die auf die Open-Source-Modelle von JuPedSim zugreift. Wir freuen uns über Feedback, Ideen und Beiträge aus der Community. Wenn Sie Verbesserungsvorschläge oder Ideen für neue Funktionen haben, teilen Sie uns diese bitte mit. Die Community-Beiträge helfen uns, die Roadmap zu priorisieren und die zukünftige Entwicklung zu steuern.