SimuVeda

Operations · Simulator 075

Traffic Signals

Cars arrive at random on two crossing roads and a signal lets each road go in turn. Change how long each road gets green and how busy each road is. Watch queues build on red and clear on green, and find timings that keep delay low without letting either queue run away.

How the model works

Each road gets an effective green time g in a cycle of length C. Every phase change also loses L = 4 s while the junction clears, so C = g₁ + g₂ + 2L. While a road has green and a queue, cars leave at the saturation flow s = 1800 cars/h (one every 2 s). So a road can serve at most

capacity = s × g / C degree of saturation x = q / capacity

where q is the arrival rate. If x ≥ 1 the queue grows every cycle and never clears. Below that, Webster's formula estimates the average delay per car:

d ≈ 0.9 × [ C(1 − g/C)² / (2(1 − x g/C)) + x² / (2q(1 − x)) ]

The first term is the wait caused by red; the second is the extra delay from random arrivals. Short cycles waste a larger share of time on changes; long cycles make cars wait through long reds. Webster's optimum cycle is roughly C₀ = (1.5 × total lost time + 5) / (1 − Σ q/s).

One lane per road, no turning, Poisson arrivals, and cars leave at a constant headway. Webster's formula is an approximation and usually reads a little below simulation. Averages need several minutes of simulated time to settle.

Guided experiments

  1. Balanced junction. 500 cars/h on each road, 25 s green each (cycle 58 s). Prediction: x ≈ 0.64 on both roads and average delay around 15–16 s per car. Queues reach 5–10 cars at the end of red and clear every green.
  2. Unequal demand, equal greens. 900 cars/h north–south, 300 cars/h east–west, still 25 s each. Prediction: north–south capacity is only about 776 cars/h, so x ≈ 1.16 and its queue grows by about 2 cars every minute without limit, while east–west sits mostly empty.
  3. Re-time the signal. Same traffic, 35 s north–south and 15 s east–west. Prediction: both roads are now under capacity (x ≈ 0.83 and 0.64). North–south delay drops to roughly 15–20 s (it is near capacity, so the average wanders); east–west rises to about 23–25 s, a fair trade for a stable junction.
  4. Long cycle. Balanced traffic with 50 s green each (cycle 108 s). Prediction: delay rises to about 22–24 s per car even though capacity barely changes. Webster's best cycle for this traffic is about 38 s.

Challenge

A junction has 700 cars/h on the main road and 350 cars/h on the side road, with s = 1800 cars/h and 4 s lost per phase. With a 60 s cycle, roughly how should the green time be split so that both roads have the same degree of saturation?

Reveal the explanation

The total green is 60 − 8 = 52 s. Equal x means green in proportion to demand: main road 52 × 700/1050 ≈ 35 s, side road ≈ 17 s. Then the main road's capacity is 1800 × 35/60 = 1050 cars/h, and the side road gets 1800 × 17/60 = 510 cars/h, so x ≈ 0.67 and 0.69. Try it: arrivals 700 and 350, greens 35 and 17.

References

  • Webster, F. V. (1958), Traffic Signal Settings, Road Research Technical Paper 39, HMSO.
  • Transportation Research Board, Highway Capacity Manual, 7th ed. (2022), signalized intersections chapter.
  • Roess, R. P., Prassas, E. S. and McShane, W. R., Traffic Engineering, 5th ed. (2019), ch. 18–19.