Skip to the main content

Experiment 06 Braess’s Paradox

The Shortcut That Made Everyone Late

Give everyone a faster road. Then watch what happens when every driver chooses a route for themselves.

5–10 minutes to explore Prototype Updated

Miniature cars crowd a central shortcut while the longer outer roads have fewer cars.
About these models Math step by step For experts Math symbol guide

Loading the interactive experiment…

Start with “Work It Out, Step by Step” below. The optional expert section explains its symbols as you go. For more examples, use the plain-language math guide.

1. Make a Prediction

A Shortcut Opens. Who Gets Home Sooner?

Everyone travels from S (start) to T (finish). Each line is a stretch of road. Two stretches always take 45 minutes. The other two get slower as more drivers use them: divide the number of drivers on that stretch by 100 to find its time in minutes. The new one-way shortcut from A to B takes zero minutes in this made-up road system.

The Two-Route Network With a One-Way Shortcut Travel begins at S, follows the arrows through A or B, and ends at T. The route flows are also listed in the caption and results table. SABT 2,000 ÷ 100 = 20 min45 min45 min2,000 ÷ 100 = 20 min0 min + 0 toll
Before drivers adjust: half start on each outer route. Arrow direction matters: A → B only.

2. Choose Your Route

Pick a route while everyone else is still split between the two outer roads. Then see your trip once the crowd responds to the same incentives.

4. Change One Assumption

Change the Demand, Road, or Toll

A value of 10 means the fee feels as costly as 10 extra minutes. Drivers add that value to the driving time when comparing routes. Paying the fee does not make the drive longer.

A setting change starts a fresh prediction. Try 1,000 drivers: adding a road does not always make traffic worse.

Work It Out, Step by Step

You only need addition, subtraction, multiplication, and division. A route is the whole trip. A road segment is one stretch of that trip.

Worked example: the starting settings, with 4,000 drivers and no toll. These example numbers stay the same when you change the controls; the results above use your current settings.

  1. Before the shortcut, split the drivers evenly. Each route gets \(4{,}000 \div 2 = 2{,}000\) drivers. Its busy road takes \(2{,}000 \div 100 = 20\) minutes. Add the other road:
    \[20 + 45 = 65 \text{ minutes.}\]
  2. At first, the shortcut looks faster. It connects the two busy roads and skips both 45-minute roads. While traffic is still split, those two busy roads take \(20 + 20 = 40\) minutes. That looks better than 65.
  3. But everyone sees the same shortcut. When all 4,000 drivers use it, each busy road takes \(4{,}000 \div 100 = 40\) minutes. The shortcut trip now takes:
    \[40 + 40 = 80 \text{ minutes.}\]
  4. Why doesn't one driver leave? Switching to an outer route would take \(40 + 45 = 85\) minutes. Staying takes 80. Nobody can get a faster trip by switching alone. This settled situation is called an equilibrium.
  5. Compare the before and after. The shortcut made everyone's trip \(80 - 65 = 15\) minutes longer. Each driver made a sensible choice for themselves, but the group ended up worse off.
How does the best shared plan get 64.69 minutes?

In this example, send 1,750 drivers along each outer route and 500 through the shortcut. That still adds up to 4,000 drivers. Each busy road then carries \(1{,}750 + 500 = 2{,}250\) drivers and takes \(2{,}250 \div 100 = 22.5\) minutes.

The 3,500 outer-route drivers each take \(22.5 + 45 = 67.5\) minutes. The 500 shortcut drivers each take \(22.5 + 22.5 = 45\) minutes.

To find the average, add up all the minutes everyone spends traveling, then divide by the number of drivers:

\[3{,}500 \times 67.5 = 236{,}250\]
\[500 \times 45 = 22{,}500\]
\[\frac{236{,}250 + 22{,}500}{4{,}000} = 64.6875.\]

Rounded to two decimal places, that is 64.69 minutes per driver. It is an average: individual trips take either 67.5 or 45 minutes. The expert section explains why this plan has the lowest average under these rules.

Reading the comparison: “1.24×” means the settled average is about 1.24 times the best-plan average, or about 24% longer. It compares two results on the current road system, rather than the before-and-after shortcut example.

Rules to keep in mind: everyone knows the travel times and values the toll the same way. One driver is too small a part of traffic to noticeably change a road's speed. Real roads also have queues, traffic lights, and other complications this model leaves out.

For experts: formal model and assumptions

How to Read the Symbols

These formulas describe the same roads as the worked example. The letters let us change the number of drivers or the toll without rewriting every step. You can use the experiment with ordinary arithmetic; the math reading guide helps translate the extra notation.

Drivers: \(D\), \(z\), and \(f\)
\(D\) is the total number of drivers. \(z\) is the number taking the shortcut. \(f\) is the number using one of the busy road segments. For example, \((D-z)/2\) says “subtract shortcut drivers from the total, then divide the remaining drivers equally between two outer routes.”
Road and toll amounts: \(a\), \(c\), and \(\tau\)
\(a=0.01\) is the added travel time per driver on a busy road; multiplying by 0.01 is the same as dividing by 100. Lowercase \(c=45\) is the fixed road time. The Greek letter \(\tau\), called “tau” (rhymes with “how”), is the toll’s value in minutes. Greek letters work just like other letter names for numbers.
Route costs: \(C_{\mathrm{outer}}(z)\) and \(C_{\mathrm{shortcut}}(z)\)
Capital \(C\) means the route’s driving time plus any toll value. The small word below it, called a subscript, names the route. The \((z)\) means “when z drivers use the shortcut.” Read \(C_{\mathrm{outer}}(z)\) as “the outer-route cost for z shortcut drivers.” This is function notation: put in a number of drivers and get out a cost.
Multiplication without a times sign
\(a(D+z)\) means \(a\times(D+z)\): add the driver counts first, then multiply by \(a\). Here \(a\) is a number, so the parentheses group an arithmetic step. The fraction bar means division. See reading operations.

Path Costs and Wardrop Equilibrium

Let \(D\) be total demand, \(z\) shortcut flow, \(a=0.01\) minutes per driver, \(c=45\) minutes, and \(\tau\) the toll expressed as a time-equivalent cost. The two outer paths each carry \((D-z)/2\); each congestible edge carries \(f=(D+z)/2\).

\[C_{\mathrm{outer}}(z)=\frac{a(D+z)}{2}+c\]
\[C_{\mathrm{shortcut}}(z)=a(D+z)+\tau.\]

Read it aloud: “An outer route uses one busy road plus a 45-minute road. The shortcut uses two busy roads plus the toll value.” If all 4,000 drivers use the shortcut, \(D+z=8{,}000\). The outer route costs \(0.01\times8{,}000/2+45=85\) minutes; the untolled shortcut costs \(0.01\times8{,}000=80\).

At Wardrop equilibrium every used path has minimum generalized cost. Equating costs for an interior solution, then enforcing feasible flow, gives:

Labels for two results: \(z_{\mathrm{NE}}\) and \(z_{\mathrm{SO}}\)
These are two possible values of the shortcut count \(z\). The lower label “NE” names the equilibrium count, where no driver gains by switching alone. “SO” names the social optimum, the count in the best shared plan. The labels are names, not numbers to multiply or divide.
Keeping a count possible: \(\min\) and \(\max\)
“Min” means pick the smallest number; “max” means pick the largest. Braces hold the numbers to compare. Read from the inside out: first compare the calculation with 0, then compare that result with \(D\). This prevents a negative driver count or a count above the total.
\[z_{\mathrm{NE}}=\min\!\left\{D,\max\!\left\{0,\frac{2(c-\tau)}{a}-D\right\}\right\}.\]

Read it aloud: “Subtract the toll value from the fixed road time, double it, divide by the busy-road rate, and subtract the total drivers. Keep the answer between zero and the total.” With 4,000 drivers and no toll, the calculation gives 5,000, so the actual shortcut count is capped at 4,000.

At a boundary, one or more paths are unused. An unused path may tie a used path. A closed shortcut forces \(z=0\).

Social Optimum and a Supporting Toll

With the shortcut open, the social objective \(L(z)\) counts driver-minutes, excluding toll transfers. Dividing \(L\) by \(D\) gives average driving time. With the shortcut closed, both calculations instead use \(z=0\), and the app offers no shortcut toll.

Total travel time: \(L(z)\) and \((D+z)^2\)
Read \(L(z)\) as “total driving minutes for z shortcut drivers.” A driver-minute means one driver traveling for one minute: two drivers traveling for 10 minutes use 20 driver-minutes. The raised 2 means “square”: \((D+z)^2\) is \((D+z)\times(D+z)\).
Rates of change: \(L'(z)\) and \(L''(z)\)
Read these as “L prime of z” and “L double prime of z.” The first describes how total driving time changes as shortcut use increases a little. A negative rate means total time is falling; a positive rate means it is rising. The second describes how that rate changes. The \(>\) sign means “greater than”: \(L''(z)=a>0\) says the rate itself keeps increasing. These rate-of-change symbols help justify the best plan; you do not need to calculate them to use the experiment.
\[L(z)=\frac{a}{2}(D+z)^2+c(D-z)\]

Read it aloud: “Add the time all drivers spend on the two busy roads to the time they spend on the fixed-time roads.” To find minutes per driver, divide that total by the number of drivers.

\[L'(z)=a(D+z)-c,\qquad L''(z)=a>0.\]

Read it aloud: “The rate of change is the busy-road rate times the combined driver count, minus the fixed road time. That rate increases as more drivers take the shortcut.” Where the first rate reaches zero, the curve stops going down and starts going up. If that point falls outside the possible driver counts, the best count is at one of the ends: zero or all drivers.

\[z_{\mathrm{SO}}=\min\!\left\{D,\max\!\left\{0,\frac{c}{a}-D\right\}\right\}.\]

Read it aloud: “Divide the fixed road time by the busy-road rate, subtract the total drivers, and keep the answer between zero and the total.” The default gives \(45/0.01-4{,}000=500\) shortcut drivers.

The app chooses the following nonnegative shortcut toll to implement that flow; it reduces to \(c/2=22.5\) when the optimum is interior:

\[\tau^*=\max\!\left\{0,c-\frac{a(D+z_{\mathrm{SO}})}{2}\right\}.\]

Read it aloud: “The supporting toll is the fixed road time minus the busy-road time at the best shared plan, with a minimum of zero.” The raised star in \(\tau^*\), read “tau star,” labels this chosen toll. It is not a multiplication sign or a power. With 4,000 drivers, the toll value is \(45-22.5=22.5\) minutes. “Interior” means the best plan uses some, but not all, drivers on the shortcut.

At the default 4,000 drivers, the closed network averages 65 minutes. Opening the untolled shortcut produces 80 minutes. The best coordinated allocation uses 1,750 drivers on each outer route and 500 on the shortcut, averaging 64.6875 minutes.

The ratio shown compares equilibrium driving time with the minimum driving time on the same available network. Without a toll, this is the price of anarchy for this instance. With a toll, it is a driving-time comparison; payments are excluded from the collective objective and are not treated as lost resources.

This is a deterministic, nonatomic model: each driver is treated as negligible, all drivers value money and time identically, all know route costs, and demand is fixed. Fractional flows are allowed. Roads are directed, the shortcut has no capacity limit or travel delay, and there are no queues, junction delays, or departure-time choices. Coordination minimizes the group’s total driving time, not every person’s individual trip.

Concept and original network: Easley and Kleinberg, Networks, Crowds, and Markets, Chapter 8. The adjustable toll and coordinated allocation are calculated from the equations above.

5. Take It Somewhere Else

What If the Road Were a Shared Service?

Every application team switches to a shared service because it gives their application the shortest response time today. Can offering the service make the whole system slower?

Reveal the reasoning

It can, if each team’s choice adds congestion that other teams must bear. A usage price, capacity reservation, or routing rule can change those incentives. But the traffic result depends on this network and its costs: adding an option is not automatically harmful. Map the shared bottlenecks and compare actual allocations before drawing the analogy.

A Model Is a Place to Start

These small models make the incentives visible. Their results follow from their stated rules; they are not forecasts of how every person or organization behaves. A simulated strategy is a rule, not a personality.

Scenario links save the controls and random seed. To reproduce an interactive run, make the same choices in the same order. Changing a setting restarts the experiment.