Braess's Paradox, Explained
After reading this you will be able to compute travel times on the classic diamond road network by hand, predict when adding a road makes every commute slower, and tell the selfish equilibrium apart from the social optimum.
What the paradox says
In 1968 Dietrich Braess proved a result that still surprises traffic engineers: adding a new road to a network can increase everyone's travel time. Nobody drives worse on purpose. Each driver picks the fastest route available. Yet the collective outcome gets slower.
The setup is a diamond. Cars leave a start node, reach an end node, and choose between two routes. Each route has one link whose delay grows with traffic (a narrow bridge, a bottleneck) and one link with a fixed delay that never changes (a long but uncongested highway). The two routes are symmetric. With one unit of traffic split evenly, each route carries half.
Now cut a zero-cost shortcut between the two middle nodes. Suddenly a driver can take the congestion-sensitive link on route A, jump across, and take the congestion-sensitive link on route B. That path avoids both fixed-delay links. Every selfish driver reasons the same way, so both congestion-sensitive links get fully loaded. The result is a longer trip for all.
When this model applies, and when it does not
The diamond is a toy. It captures one mechanism cleanly: routing decisions on links whose cost rises with load. Use it to build intuition about why a road removal can help, and to reason about the difference between individual and collective optima.
Do not use it to predict a specific city street. Real networks have hundreds of links, signalized intersections, elastic demand, and time-of-day patterns. The paradox is real and documented, but proving it happens on a particular road requires measurement, not a two-route diagram.
The paradox is not a mathematical trick. Closing 42nd Street in New York and demolishing the Cheonggyecheon expressway in Seoul both improved traffic flow. Removing capacity helped because the removed link was pulling drivers into a worse equilibrium.
For jams that emerge from car-following rather than routing, see the Traffic Jam Simulator, and for routing through signals on a full grid, the City Traffic Grid.
The delay functions and the equilibrium
Label the two middle nodes A and B. Total demand is one unit of flow (think of it as one carload per unit time, normalized). The classic delays are:
Here x_A is the fraction of traffic on the start-to-A link and x_B is the fraction on the B-to-end link. The two links with delay 1 are the fixed-delay highways. The two links with delay equal to their load are the congestion-sensitive bottlenecks. Delay is measured in the same time units as the constant, so a fully loaded bottleneck (x = 1) costs the same as one fixed highway.
A state is a user equilibrium when no single driver can cut their own time by switching routes. Formally, every route actually used has the same travel time, and no unused route is faster.
Without the shortcut
Route 1 is start→A→end with time x_A + 1. Route 2 is start→B→end with time 1 + x_B. By symmetry the split is even, so x_A = x_B = 0.5. Each route costs 0.5 + 1 = 1.5. Average travel time is 1.5.
With the shortcut
Add a link A→B with delay 0. A new path appears: start→A→B→end, with time x_A + 0 + x_B. If all traffic takes it, both bottlenecks carry the full unit, so x_A = x_B = 1. That path costs 1 + 0 + 1 = 2.
Could a driver do better by peeling off to an old route? Peeling onto start→A→end still costs x_A + 1 = 1 + 1 = 2 while A stays loaded. There is no improving move. So the shortcut equilibrium has average time 2, which is worse than 1.5.
A worked example matching the demo
Reproducing the default run
The demo uses total demand 1 unit and the delays above. Follow the arithmetic in both configurations.
- Shortcut closed. Symmetry forces x_A = x_B = 0.5. Route time is
0.5 + 1 = 1.5on both routes. Nobody gains by switching, so this is the equilibrium. - Shortcut open. Test whether all traffic on start→A→B→end is stable. Load is x_A = x_B = 1. Path time is
1 + 0 + 1 = 2. - Check a deviation. A driver switching to start→A→end finds
1 + 1 = 2, no better. A driver switching to start→B→end finds1 + 1 = 2, no better. Equilibrium confirmed. - Compare. Opening the shortcut moved the average from
1.5to2, a33%increase, while adding capacity.
Now find the social optimum with the shortcut open. A benevolent planner splits traffic to minimize total time. Sending everyone through the two old routes and ignoring the shortcut restores the 1.5 outcome. So the optimum is 1.5 and the selfish equilibrium is 2. The ratio 2 / 1.5 = 1.333 equals exactly \tfrac{4}{3}, the worst case for linear delays.
Why the paradox only bites at intermediate demand
Let total demand be d instead of 1. Delays scale so a bottleneck carrying flow f costs f in the same units, and the fixed link still costs 1.
With very little traffic (d near 0), the bottlenecks are nearly free. The shortcut path costs about 0 + 0 + 0 versus about 0 + 1 on an old route, so the shortcut genuinely helps. With very heavy traffic the bottlenecks are so slow that the fixed-delay highways become attractive and drivers spread back out, so the shortcut stops mattering. The paradox lives in the middle band.
The exact crossover depends on your delay functions, but the shape is robust: help, then harm, then irrelevance.
Reading the two numbers the tool reports
- User equilibrium
- The settled state where no driver can lower their own time by switching. This is what the dots converge to as each round moves a fraction of drivers onto the currently fastest route.
- Social optimum
- The routing that minimizes total travel time, which a central dictator could enforce. It is what you should compare against, not what selfish drivers reach.
- Price of anarchy
- The ratio of equilibrium total time to optimal total time. For the diamond with the shortcut it is
2 / 1.5 = 1.333. For any network with linear delays it never exceeds \tfrac{4}{3}, a theorem of Roughgarden and Tardos.
Watch the convergence, not just the endpoint. Each round the tool moves a fraction of drivers to the fastest route. If both routes already read the same time, nobody moves and you are at equilibrium. If they differ, the gap tells you how far from settled you are.
Common mistakes
Reading the equilibrium as optimal. Selfish routing settles at a Nash equilibrium, not the minimum total time. The two coincide only when there is no congestion. Whenever a link's delay rises with load, expect a gap.
Expecting the paradox at every demand. At light traffic the shortcut helps. If you set demand near zero and see no penalty, that is correct, not a bug. Slide demand into the middle band to make the paradox appear.
Assuming more capacity is always good. The whole point is the opposite. A zero-cost link can degrade the equilibrium. Capacity helps only relative to what it does to routing incentives.
Do not read a real removal decision off this diagram. The model shows the mechanism is possible. Whether a specific road is a Braess link needs traffic counts and a calibrated model, because a badly chosen closure will make things worse.
Explore the demand dependence
Related tools
Braess's paradox is one of many cases where individually rational choices produce a collectively poor outcome. The Tragedy of the Commons shows the same tension in a shared fish stock, and the Iterated Prisoner's Dilemma Tournament studies when cooperation survives repeated play. For other equilibria that emerge from simple local rules, try Schelling's Segregation Model. If congestion itself is your interest, the Zipper Merge Simulator and the Queue Simulator both turn on how load meets capacity.
Frequently asked questions
Does closing a road really speed up traffic?
It can. Two documented cases are 42nd Street in New York and the Cheonggyecheon expressway in Seoul, where removals improved flow. It works only when the closed link was drawing drivers into a worse equilibrium, so it is not a general rule.
Why does the shortcut make things worse if it is free?
The free link lets each driver use both congestion-sensitive bottlenecks in one trip. When everyone does that, both bottlenecks carry full load. The saved fixed-delay time is smaller than the added congestion time, so the average rises from 1.5 to 2.
What is the price of anarchy?
It is the ratio of the selfish equilibrium total time to the socially optimal total time. In the diamond with the shortcut it is exactly 4/3. For any network with linear delay functions it never exceeds 4/3.
How does the simulator reach equilibrium?
Each round it measures the current time on every route, then moves a fraction of drivers onto the fastest one. Route times shift as load moves, and the process settles when all used routes are tied and no unused route is faster.
Why does the paradox vanish at high demand?
When traffic is very heavy the bottlenecks become so slow that the fixed-delay highways look attractive again, so drivers spread back across both old routes and the shortcut goes unused. The penalty curve flattens toward zero above demand 3.