In this paper, we explain a crowd simulation technique that allows real-time simulation of crowds, mainly for evacuation scenarios. Crowd disasters with deadly accidents often happen in places with high people density, sometimes in combination with additional factors like fire or terrorist attacks. Having an interactive simulator for these phenomena offers the possibility to create a planning tool and to create an educational simulation that explains the essential dynamics of crowd disasters.
The approach is based on the simulation of crowd density and gets modeled by a partial differential equation. In contrast to an agent and particle-based simulations, this approach works with a minimal set of assumptions and is easy to parallelize on the graphics card in CUDA.
We base the simulation model on three assumptions. The first assumption is that everybody tries to get to the next exit in minimal time. This decision is made purely on the current situation, and no prediction about the future is involved. This assumption is modeled with the Eikonal equation. The second assumption is a relation between people density and magnitude walking velocity of people in crowd situations. This relation has been published. The third assumption is that the amount of people except for intentional spawning and despawning stays constant. The continuity equation expresses the third assumption.
To validate the model, we demonstrate its capability to replicate several known effects, which include density clogging in corner situations, shockwave propagation effect once the density has reached 5-6 persons per square meter, and the effect of abruptly narrowing corridors.
The simulation core is open source under the MIT license and available on GitHub on https://github.com/Carbonfreezer/PanicSimulator. Several screenshots and videos are available on the attached wiki.