The Social-Force Model and the Faster-Is-Slower Effect
After reading this you can explain why a crowd forced to move faster can empty a room more slowly, predict how door width sets the escape rate, and understand why a pillar placed in front of an exit can help rather than hurt.
What the simulator models
A room holds a crowd. There is one door. Everyone wants out. The simulator moves each person as a particle governed by forces: a pull toward the exit, a push away from neighbours, and a push away from walls. Watch the door and you see the surprising part. When people press harder, they wedge into load-bearing arches at the opening, the same arches that jam sand in a funnel. The arch holds, breaks, and re-forms, and the crowd leaks out in bursts instead of a steady stream.
The single hook worth carrying through the article: panic can cost you time. In one run at a calm desired speed of 1.0 m/s the room empties in about 42 seconds. Raise the desired speed to 5.0 m/s and the same crowd takes about 58 seconds. Pushing harder made the escape 38 percent slower. That is the faster-is-slower effect, and it is not a bug in the model. It is the point.
When this model helps, and when it misleads
The social-force model earns its keep when the geometry is simple and the physics of pushing dominates: a single hall, a stadium tunnel, a shop with one exit. It reproduces three effects seen in real crowds and real experiments: lane formation in counterflow, arching at bottlenecks, and the faster-is-slower slowdown. If your question is "does widening this door from 1 metre to 1.5 metres roughly double the flow", the model gives a usable answer.
It misleads when human decision-making matters more than physics. People choose exits, follow signs, help the fallen, and hesitate. None of that is in the force equations. Treat the numbers as order-of-magnitude guidance about geometry, not as a safety certificate for a specific building.
This is a toy. A real evacuation plan is a regulated engineering task with fire codes, smoke models, and human factors. Use the simulator to build intuition about bottlenecks, not to sign off on a floor plan.
The equations behind each person
Each pedestrian i has a position, a velocity \vec{v}_i, and a mass m_i. Their acceleration is the sum of three forces.
Read the three terms left to right. The first is the goal force: person i wants to travel at desired speed v_i^0 in the direction \vec{e}_i pointing at the door. The gap between that wish and their current velocity \vec{v}_i is closed over a reaction time \tau, typically 0.5 s. The second term sums repulsion from every other person j. The third sums repulsion from walls W.
The person-to-person force \vec{f}_{ij} has two parts: a soft social push that grows as people get close, plus a hard contact push and a sideways friction that switch on only when bodies actually touch.
Here d_{ij} is the distance between centres and r_{ij} is the sum of the two radii, so r_{ij} - d_{ij} is positive when they overlap. The constants A (about 2000 N) and B (about 0.08 m) set the strength and range of the always-on social repulsion. The function g(x) is x when they overlap and 0 otherwise, so the last two terms only fire on contact. The term with \kappa is friction: it resists the sideways sliding speed \Delta v_{ij}^{t}. That friction is the villain in the faster-is-slower story.
The friction term rises with contact force. Push harder and you press neighbours together, which raises the normal force, which raises the sideways friction, which locks the arch. The crowd traps itself.
A worked example with the demo settings
The demo button loads the defaults: a crowd of 200 people, a door 1.0 m wide, and a desired speed of 1.5 m/s, with no pillar. Work out the expected flow before you press play.
Estimating evacuation time from the flow rate
Bottleneck experiments give a specific flow of roughly J_s \approx 1.9 persons per second per metre of door for calm walking. Scale that by width, then divide the crowd by the flow.
- Flow through a
1.0m door: J = 1.9 \times 1.0 = 1.9 persons per second. - Time to clear 200 people at steady flow: 200 / 1.9 \approx 105 s.
- Add a start-up delay while the crowd reaches the door, about
3s, giving roughly108s. - Now double the door to
2.0m: J = 3.8, so 200 / 3.8 \approx 53 s. Widening the door roughly halved the time.
The simulator will not land on exactly 105 seconds, because arches stall the flow in bursts. Expect the measured time to run 10 to 30 percent longer than the steady-flow estimate. That gap is the clogging.
The chart below shows the faster-is-slower curve for the demo crowd. Notice the minimum near 1.5 m/s and the rise after it.
Explore the trade-off yourself
The one thing a static chart cannot show is how the door itself behaves at different speeds: smooth trickle versus stop-and-go bursts. Move the speed and watch the flow.
Reading the readouts
Three numbers matter while a run is playing.
- People remaining
- The count still inside. Its slope is the flow rate. A flat stretch means the door is clogged; a steep drop means it is flowing freely.
- Flow rate
- Persons per second through the door, averaged over a short window. For a
1.0m door expect roughly1.5to2.0when calm, and a lower, jerkier value when panicked. - Evacuation time
- Seconds until the last person leaves. This is the headline result, but the last person is noisy: one straggler caught behind an arch can add several seconds.
Compare runs, not single numbers. Change one thing (door width, speed, or the pillar), rerun, and read the difference. A single run tells you little because arch timing is random.
The pillar paradox
Turn on the pillar and drop it about half a metre in front of the door, slightly off centre. Naively this should slow things: you added an obstacle. Often it speeds the escape by 5 to 20 percent. The pillar splits the pressure that would otherwise build directly against the doorway. It staggers arrivals so people reach the opening in an alternating trickle instead of a solid wedge. The arch that would jam the door now forms against the pillar instead, where it does less harm.
The effect is fragile. Put the pillar too close and it blocks the door outright, cutting flow. Put it too far and it does nothing. In the simulator, sweep its distance and you find a narrow sweet spot. Real stadium designers use the same trick, and they tune the placement with exactly this kind of testing.
Common mistakes
The frequent errors all come from trusting a single noisy run.
- Reading one run as truth. Arch timing is random. Run each setting three to five times and compare averages.
- Confusing flow with time. A high peak flow rate does not guarantee a fast total time if the door stalls repeatedly. Watch the people-remaining slope for stalls.
- Assuming faster is always slower. Below the critical speed near
1.5m/s, more speed genuinely helps. The paradox only bites above the minimum. - Over-generalising the pillar. It helps only near its sweet spot and only for pushing crowds. It will not fix a door that is simply too narrow.
Related simulations
Crowd dynamics sits alongside other agent and flow models on this site. For jamming that arises from timing rather than force, the Traffic Jam Simulator shows phantom jams on a ring road, and the City Traffic Grid shows gridlock spreading across intersections. The Airplane Boarding Simulator is the same bottleneck idea in a narrow aisle, where random order beats structured blocks. For a paradox where adding capacity makes things worse, see Braess's Paradox. If you want spreading rather than jamming, the SIR Epidemic Simulator and the Forest Fire Model both trace how a local rule builds a global wave.
Frequently asked questions
Why does panic slow a crowd down?
Higher desired speed presses bodies together at the door. Contact force rises, and friction rises with it, so load-bearing arches lock more firmly and take longer to break. Below about 1.5 m/s the extra speed helps; above it, the added friction dominates and total time climbs.
Does the pillar always help?
No. It helps only when placed in a narrow sweet spot just upstream of the door, and only for crowds pushing hard enough to jam. Too close and it blocks the exit; too far and it has no effect. It cannot rescue a door that is simply too small.
What flow rate should I expect through a one-metre door?
Calm walking gives roughly 1.9 persons per second per metre, so about 1.9 through a 1.0 m door and 3.8 through a 2.0 m door. Panic can drag the effective average below 1.5 as the door stalls in bursts.
Can I use these numbers to plan a real building?
No. The model captures pushing physics but ignores signage, exit choice, smoke, and hesitation. Use it to understand why bottlenecks jam and why geometry matters, then leave the certified plan to a fire engineer.
Why is the last person's exit time so noisy?
The final stragglers depend on which arch breaks last, which is random. That is why you should compare averages across several runs rather than one evacuation time.