Here I show a simple model for ship evacuation.
The model is inspired by the following article:
H. Klüpfel, T. Meyer-König, J. Wahle, M. Schreckenberg: "Microscopic Simulation
of Evacuation Processes on Passenger Ships" (pp 63-71) in S. Bandini , T. Worsch (eds:
"Theoretical and Practical Issues oin Cellular Automata, Springer-verlag 2001.
This group
also has a web-page
with other models and comparison to experiments.
In this example, the two green bars are the exits. In an initial phase of 150 time steps, the direction towards the nearest exit is calculated for each point. In the second phase, randomly placed persons are running. They run in their initial direction until they encounter another person or an obstacle. In this case they adapt their direction to move according to the majority of the other people, biased by the direction of the nearest exit. One can observe some people running against the optimal direction until they have reason to stop. After a while, all persons have left the ship.
The second example shows a non-random ship floor. This simulation runs slower than the first, since it has more cells.
This simulation is part of the JCASim project
http://www.jcasim.de/ .