The Pillar Paradox
2026

A pillar in front of an exit can make a panicking crowd leave faster. It can also turn an ordinary evacuation into a permanent jam. The interesting problem is not whether the paradox exists in one simulation. It is why it appears, where it stops, and whether a search can find a layout that is useful without being dangerous.
I built a social-force crowd simulator, used evolutionary search to place circular pillars, and then extended the project by treating the simulated crowd as both a fluid and a granular material. The final study contains thousands of matched simulations across door widths, crowd sizes, desired speeds, pillar gaps, and multi-pillar patterns. Every reported winner was evaluated on crowds the search had never seen.
The result is less like a design recommendation than a map of a trade-off. A tuned pillar can raise a one-metre door's capacity by about 20%, lower the pressure concentrated around the exit, and cut long stalls in half. But its useful position sits beside a sharp failure region, and the larger search did not discover a layout with a large gain for both calm and pushing crowds.
The model
The room is 12 by 12 metres with a one-metre door in its right wall. Each person is a disc with radius 0.25–0.35 m and mass 80 kg. The simulator follows the social-force model introduced by Helbing, Farkas and Vicsek: each person is driven toward the exit, repelled before contact, and compressed and dragged by friction after contact.
The desired speed is the control for how hard the crowd pushes. At low values people approach the door calmly. At 5 m/s they continue trying to accelerate even when the crowd in front has nowhere to go. Contact and tangential friction then stabilize temporary arches across the opening. This creates the classic faster-is-slower effect: after a point, increasing the desired speed makes the room empty more slowly.
The simulator is intentionally small enough to inspect. A scenario fixes the room, door, desired speed, people, pillars, and random seed. Paired comparisons use the same seed with and without a pillar, so the initial crowd is identical and only the geometry changes.
from pillar import Scenario, run_many, summarize
base = Scenario(desired_speed=5.0, seed=101)
pillar = base.with_(pillars=[(10.5, 6.0, 0.53)])
empty = run_many([base.with_(seed=s) for s in range(101, 181)])
treated = run_many([pillar.with_(seed=s) for s in range(101, 181)])
print(summarize(empty, base.max_time))
print(summarize(treated, pillar.max_time))
I measured the time at which the last person left, the flow through the middle 80% of departures, pressure from body compression, time spent above a crush threshold, and the gaps between successive exits. A run that still had people inside after 300 seconds counted as jammed rather than silently disappearing from the mean.
The first result was both promising and unsafe
The original search optimized a pillar for a pushing crowd. It found a diameter of 1.06 m, almost centred on the door, with 0.735 m between its surface and the exit wall.
On 80 unseen pushing crowds, that pillar reduced average evacuation time from 128 s to 106 s. Flow rose from 1.22 to 1.47 people per second. Peak density hardly changed, but the smoothed pressure peak fell from 3.7 to 2.6 times the model's crush threshold. The share of exit gaps longer than three seconds fell from 3.2% to 1.5%.
On calm crowds, the same pillar was disastrous: 74 of 80 runs failed to finish within 300 seconds. An average score would hide that failure, so jam counts remain separate everywhere in the analysis.
Looking at the crowd as a fluid
Individual trajectories make the simulation vivid, but they do not explain the mechanism. I therefore coarse-grained the particles into density, velocity, pressure, and granular-temperature fields. A small kernel spreads each person over nearby space:
The resulting fields obey conservation of people, . I did not solve a new continuum model; I used these definitions to measure the existing particle simulations.
The maps show a clear geometric change. Without a pillar, streamlines converge on one point and pressure concentrates on the wall beside the door. With the pillar, the approach splits, moves around both sides, and recombines at the opening. The peak density stays near 3.2 people/m², but peak contact pressure falls by 28%. The mean bulk speed through the opening rises from 0.19 to 0.34 m/s.
The pillar does not make people intrinsically better at moving through dense crowds. At the same density, the speed curves with and without it nearly overlap. It changes the force and approach geometry. Near 3.1 people/m², contact pressure is about 29% lower with the pillar.
Granular temperature—the motion of people relative to the local average—falls by roughly a factor of 51 between 0.9 and 3.6 people/m². In the densest regions, the crowd loses the small rearrangements that let an arch break. It effectively freezes.
The door behaves like an orifice
If door capacity were proportional to width, doubling the opening would double the flow. The simulator does something very different. Across door widths from 0.8 to 2.4 m, the empty-room flow is fitted extremely well by a Beverloo-type law used for grains leaving a hopper:
The fitted exponent's bootstrap interval is 1.5–1.7, close to the two-dimensional granular value of . The dead width is about 0.7 body diameters. A plain power law fits about eight times worse; a line with an offset fits about 34 times worse.
The pillar's contribution depends on that opening. It increases flow by 32% at a 0.9 m door and 26% at 1.0 m, about 10% at 1.4–1.6 m, and only 5–6% at 2.0–2.4 m. A pillar tuned for the one-metre door does not transfer: unchanged, it cuts flow by 16% at 1.4 m and 39% at 2.4 m.
Once capacity is known, the evacuation time is almost determined:
That turns the paradox into a narrower question. The pillar helps only when it raises the effective door capacity without creating a permanent clog.
What the pauses reveal
Mean flow hides the fact that people leave in bursts. I measured every gap between successive exits—about 12,000 gaps per condition. In a pushing crowd, the tuned pillar reduced the mean gap from 0.86 to 0.71 s, lowered its coefficient of variation from 2.0 to 1.3, and halved the share longer than three seconds.
This supports a modest claim: the pillar makes ordinary stalls shorter and the flow more regular. It does not justify a claim about the extreme tail. Events longer than ten seconds were too rare to estimate a power-law exponent, and the single longest pause is an anecdote, not a distribution.
The useful gap sits beside a cliff
I swept pillar-to-wall gaps from 0.4 to 2.4 m and desired speeds from 1 to 6 m/s. Any gap of 0.5 m or less jammed every run at every speed. The mean body diameter is 0.6 m, so one plausible explanation is that a single person can plug a passage of roughly one body width. I did not vary body size, so that remains a hypothesis.
At 5 m/s, the tuned 0.735 m gap gives about a 24% improvement in evacuation time. At gaps of 0.9 m and above, the measured gains are smaller and mostly within sampling noise. At 2.5 m/s and below, no tested gap between 0.4 and 1.1 m is better than an empty room.
This is the most important engineering result. The optimum is not in the middle of a forgiving plateau. It is beside a failure region. A small error in placement—or a mismatch between simulated and real body sizes—can move the design from helpful to obstructive.
A crowd is not a silo
In a grain silo, wall friction carries part of the load, pressure eventually saturates, and discharge depends little on how much grain remains above the opening. That does not happen here.
Without a pillar, flow falls from 1.74 people/s with 50 people to 1.13 with 250. Peak pressure rises from 6 to 27 crush units. Every person supplies their own drive, so adding people adds force rather than simply adding depth. The pillar's benefit persists above 50 people, but it does not make the system independent of crowd size.
Searching from one to five pillars
The single-pillar result optimized for stampedes, so I ran a second search with a stricter objective: calm, hurrying, and pushing crowds counted equally. A layout with pillars has free variables—the wall gap, sideways offset, and radius of each pillar. Overlapping pillars are repaired by pushing them apart.
For each size from one to five pillars, the evolutionary search tried 36 layouts per generation for 18 generations. Each candidate saw six search crowds. The best 30 were re-ranked on 16 different crowds, and the winner was finally tested on 40 unseen crowds. The objective was the mean ratio of evacuation time with pillars to the empty-room time across desired speeds of 1.5, 3, and 5 m/s.
The search did avoid the calm-crowd catastrophe. Its winners were roughly neutral for calm and hurrying crowds and 5–10% faster for pushing crowds. But the uncertainty for the pushing condition was ±7–9%, and the gain did not grow with the number of pillars. Only the two-pillar layout was clearly better when the three speeds were averaged: 4% ± 3%.
The layouts also became harder to interpret. One and two pillars stayed near the door. Additional pillars drifted backward and sideways and looked more like clutter than a reusable pattern. From three pillars onward, one or two of the 40 calm or hurrying crowds jammed.
Named patterns and a random baseline
To make the search legible, I tested seven named families: a row parallel to the wall, a wedge pointing toward the crowd, guide rails forming a funnel, an arc around the door, staggered rows, posts beside the door, and a spine extending outward from the wall. Across one to five pillars, this produced 488 candidate layouts. Each candidate was selected and evaluated with the same separation between search and unseen crowds.
Patterns that leave the main approach lane open are neutral or mildly useful. Funnels, arcs, and rows are generally between 5% faster and unchanged. Patterns that occupy the lane are worse. Wedges and staggered rows degrade as pillars are added. The spine jams every calm crowd at every tested size and is roughly 66–68% slower on average.
Few pillars beat many for every family that helps. Two or three are enough to express a useful arc or funnel. Beyond that, an extra obstacle is more likely to add a new failure mode than a new benefit.
I also drew 648 layouts at random for one and five pillars and passed them through the same selection stages. Random search matched the evolutionary search within noise: for one pillar, −4% ± 3% on unseen crowds versus −2% ± 3%; for five, 0% ± 3% versus −1% ± 4%.
That does not prove evolutionary search cannot work. It says this run did not extract more signal than random drawing. Six crowds per fitness evaluation are noisy, especially for stampedes. The landscape may also be broad and flat, with many nearly equivalent arrangements and a few catastrophic cliffs.
The trade-off the optimizer cannot remove
Of the 35 selected layouts in the final comparison, six improved a pushing crowd by more than 10%. Every one made a calm crowd at least 11% slower. The original tuned pillar remains the extreme case: about 18% faster for a stampede and 60% slower for a calm crowd.
So the best design depends on the objective. In this model, one or two large pillars at least 0.8 m from the wall are the cautious choice when a crowd could be calm or panicked. The expected average gain is only about 4%, with roughly 5% for a stampede. If only stampedes matter, a single tuned pillar or a row of four or five around 0.9 m from the wall can buy 15–20%, but the calm-crowd cost is severe.
What I would trust—and what I would not
I trust the internal comparisons: the seeds are paired, search and evaluation crowds are disjoint, jammed runs are counted, and the reported uncertainty describes variation across crowds. I also trust the measured mechanism inside this model: the pillar changes the approach geometry, lowers pressure near the opening, shortens ordinary clogs, and changes the effective capacity.
I would not turn those results into a recommendation for a real building. The simulator was not calibrated against evacuation experiments. Its width scaling disagrees with common pedestrian-engineering rules of thumb. It uses one room, one door, round pillars, and one social-force model. Most importantly, each simulated person actively routes around only the first pillar blocking the direct path to the door; subsequent obstacles are handled by repulsion. That rule may unfairly penalize multi-pillar layouts.
The next decisive tests are therefore not a larger search. I would first vary body size to see whether the jamming cliff moves with it, detect contact arches directly, repeat the layout study with a second crowd model and better path planning, and calibrate flow against published bottleneck experiments. Only then would it make sense to ask whether a pillar pattern transfers beyond this simulator.
The paradox survives the study, but in a narrower and more useful form: an obstacle can improve a congested exit by breaking the force geometry that sustains clogs. Whether it helps depends on the door, the gap, the crowd's drive, and the routing model. The count of pillars is almost the least important part.