Uni- and Bi-Directional Cellular Automata
Simulation of Pedestrians

Pedestrians have dynamic movement characteristics that can be captured nicely with cellular automata (CA) models (see more about CA models below).  On the grids below are versions of programs that show (1) uni-directional flow and (2) bi-directional flow.

Try playing around with the simulation of pedestrian movement on the boards below:
(a) uni-directional model
(b) bi-directional model 1 - peds exchange places or Interspersed Flow (ISP)
(c) bi-directional model 2 - peds exchange places and avoid lanes with oncomers or Dynamic Multiple Lanes (DML)
(d) bi-directional model 3 - peds exchange places and have a slight bias to move to the right. or Separated Flow

If you look closely at the lower right corner of any lattice of cells below, you see 3 small buttons.  Click the top one to randomly populate the grid.  Click the middle button to clear the grid (click twice for best results).  Click the bottom one to run and to pause the simulation of the Ped CA model. You may also add peds to or remove peds from the board by clicking on or dragging over selected cells.

Uni-directional model (pedestrians going to the right):


Your browser doesn't support Java applets. This is a screen shot of the applet

The lattice, or floor area, is randomly filled with about 25% of its cells occupied by pedestrians.  The peds move in two distinct steps.  First, lane changes are made (look for up and down moves).  Next, forward steps to the right are made.  The forward movement wraps around the lattice when peds reach the end of the walkway as they would over a circular track. Unidirectional pedestrians self-organize into patterns that improve flow in a kind of ad hoc march.  This is not intentional but arises from the efficient spatial use in the local neighborhoods.

The peds are assigned a desired maximum speed shown by the color of the occupied cell.  The desired speed can not always be reached because of blocking by other pedestrians.  In the models those going to the right are assigned maximum speeds in the following proportions:
            Going to the right                                Going to the left
    5% - 2 cells/time step (cyan),                5% - 2 cells/time step (green),
    5% - 4 cells/time step (magenta),          5% - 4 cells/time step (red),
    90% - 3 cells/time step (blue)               90% - 3 cells/time step (orange)

Bi-directional model 1 - pedestrians go to right and left & can exchange places - Interspersed Flow or ISP:


Your browser doesn't support Java applets. This is a screen shot of the applet

The bi-directional pedestrians are about equally proportioned by direction in this demonstration.  In order to avoid unrealistic and permanent jams, opposing pedestrians who find themselves nose to nose or one cell apart are allowed to exchange places with a 50% probability of success - just as in real life such maneuvers are only fairly successful on the first try. This is essentially the rules set used in the 1999 TRB paper allowing for interspersed flow.  This condition of people picking their way through a crowd without forming lanes would usually be short-lived, as at a busy crosswalk or on a subway platform.  It is an important and difficult case to model, but CA allow a rather tractable approach.

When queues begin to form, the "shock wave" or jam moves backward because people leave from the front and join at the rear of the jam.  The peds often seem to be going backwards, but by picking one cell and following it, it is clear that the cells are all moving in their respective directions.  Shock waves are an important phenomenon captured by CA models that other simulation methods find difficult to emulate.  Note also that the original random configuration of peds transforms into a self-organized configuration as the simulation progesses.  This phenomenon of self-organization is another important characteristic of CA models.  Computer experiments are ongoing to further capture ped phenomena that occur in actuality.  Further work in lane formation is being undertaken as well, as shown in the next two examples below.

Bi-directional model 2 - pedestrians go to right and left, can exchange places, & avoid lanes with oncomers - Dynamic Multiple Lanes or DML:


Your browser doesn't support Java applets. This is a screen shot of the applet

You can see after a short time that the pedestrians begin to move into a number of same-direction lanes.  Directional lane seeking is an emergent property of the model that is not directly built into it.  In this case the pedestrians are myopically looking for the best lane (left-same-right) for forward movement and are also avoiding lanes in which there is an oncoming pedestrian within 8 cells away.   An example justifying this case has been witnesed in a crowded corridor entering/exiting Grand Central Station, NYC, very similar to this case where Dynamic Multiple Lanes form.

Bi-directional model 3 - pedestrians go to right and left & have a slight bias to move toward the right or Separated Flow:


Your browser doesn't support Java applets. This is a screen shot of the applet

You can see that, from beginning in a randomized configuration, after a few minutes the pedestrians begin to drift into two opposing same-direction lanes.  Directional lane seeking is an emergent property of the model that is not directly built into it.  The pedestrians are myopically looking for the best lane (left-same-right) for forward movement.  In this walking mode, ties between left and right adjacent lanes will go to the right and this is the only directional bias.  In some cases the flows do not separate easily, but this characteristic is similar to actual pedestrians who get "trapped" in the wrong direction of flow.  When the directions truly separate, the flows function as two unidirectional flows.

More about CA models The board layout is derived from the web site by Andreas Ehrencrona that has a good explanation of  Cellular automata (CA) and the Life CA Game (with the author's permission).  I have adaptied that "Life" model CA JAVA code to my pedestrian CA model originally written in C/C++.  The ped model for uni-directional flow was presented at the Transportation Research Board Annual Meeting in 1998.  The bi-directional flow model was presented at the TRB 1999 Annual Meeting and the ISTTT Conference held in Jerusalem in July 1999.  Other bi-directional papers are in review. The 4-directional pedestrian model presented here has been submitted to the TRB 2000 Annual Meeting.  The pedestrian models Jeff Adler of RPI and I have created exhibit emerging fundamental pedestrian flows from localized pedestrian rules.

Also try Exploring Emergence and  Artificial Life Online for further explanations and examples of CA.  Check out  TRANSIMS for research ongoing with CA vehicular traffic simulations pioneered by Kai Nagel. Also, the models of Craig Reynolds and Dirk Helbing, though not CA models, may be of interest because their models deal with self-organization of individual, autonomous agents.

Click to go back to homepage, to 4-directional modeling, or to the Iterated Prisoners' Dilemma simulations.

Victor Blue (February 19, 1999).  Send email with comments to: vicblue@ulster.net