HomeTraffiCure Research › Bottleneck detection
Research · Lepton Software

Recurrent Road Bottleneck Detection via Causal Origin-Victim Attribution

Om Jain, Umang Saraf
Lepton Software, Gurugram, India · July 2026
DOI: 10.5281/zenodo.21351937
Download the paper (PDF) Intelligent transportation systems Real-time traffic data

Abstract

Recurring road bottlenecks, locations that jam on a regular daily or weekly schedule, account for most urban congestion, yet identifying the few places that cause it is hard: on a network-wide traffic feed, most slow roads are not bottlenecks but spillback from a jam elsewhere. We present a fully automated, city-general pipeline that turns a coarse ten-minute per-segment traffic feed into a ranked list of recurring bottleneck sites. Its core step classifies every congested road as a causal origin or a bounded downstream spillback victim, applying the onset-ordering principle of congestion propagation on a road graph built from geometry alone. Per-city calibration is self-bootstrapping, requiring no external labels, so the same model transfers across cities. Deployed for Hyderabad over 30 days, the method finds that 83.6% of congested road-segments are spillback and only 16.4% are causal origins, reducing a naive slow-road map by 6.1x to 124 recurring bottleneck sites. The same pipeline runs unchanged on additional cities, and is integrated into a deployed traffic-analytics product.

Key findings

The idea in one picture

How a jam spills backward: cause versus victim Traffic flows to the right toward a junction. The junction is the cause. The segments queued upstream behind it are victims. The road ahead of the junction is clear. How one jam spills backward Traffic flows one way. The queue grows the other way. TRAFFIC FLOW VICTIMS · stuck behind the jam THE CAUSE CLEAR AHEAD room to drain QUEUE GROWS BACKWARD Cause (head of jam) Victim (spillback) Free-flowing
The head of the jam is the cause; every segment queued behind it is a victim. Fix the head, and the tail clears.

From a whole network to a short list

Congestion propagates upstream from a bottleneck, so temporal precedence orders cause before spillback. For each congested road the pipeline walks downstream, bounded by travel time, to find the jam it is backing up behind. If it finds one, the road is a victim; if it finds nothing to drain into, the road is a causal origin. Single-day origins are aggregated across a month into recurring sites with a recurrence class and a severity ranking.

The funnel: 9,856 monitored roads narrow down to about 120 real recurring causes A three-stage funnel. Top: 9,856 road segments monitored. Middle: 1,827 congested at least once. Bottom: about 120 recurring bottlenecks, the real causes. THE FUNNEL · 9,856 ROADS DOWN TO ~120 CAUSES 9,856 road segments monitored 1,827 congested at least once (~1 in 5) ~120 recurring bottlenecks
From the whole monitored network down to the short list of real causes.

Deployment results (Hyderabad, 1-30 June 2026)

StageCount
Road-graph edges (directed)9,856
Roads congested at least one day1,827
Congested road-buckets (origin + victim)2,602,865
Of which causal origins427,401 (16.4%)
Recurring bottleneck sites (final)124

Source: deployment over a 30-day window. Full method, calibration, and multi-city generality in the PDF.

Why it matters

A congestion heat-map tells a city it is congested, which it already knows. A ranked list of causes tells it where to act, in what order, for the most relief per rupee, because clearing one cause drains the whole tail of victims queued behind it. And it scales like software, not construction: the same pipeline produced every city's list with no city-specific code and no roadside hardware, using data cities already generate through Google's Roads Management Insights feed.

For the plain-language version of this work, read The Real Bottleneck on our blog.

How to cite

O. Jain and U. Saraf, "Recurrent Road Bottleneck Detection via Causal Origin-Victim Attribution," Zenodo, 2026. doi: 10.5281/zenodo.21351937. [Online]. Available: https://doi.org/10.5281/zenodo.21351937

See this on your city's roads

We can point the same pipeline at your network and hand back the ranked list of real bottlenecks.

Book a demo