Ring Roads & Urban Growth

Agent-based model — Beqiri, Byci Jakupi, Pula Hamza
Panel A · Baseline

Cross roads only

No ring road · linear-growth scenario
Step 0
Density (within r)
Avg dist. from center
Panel B · With ring road

Cross roads + ring

Containment scenario · ring radius 15
Step 0
Ring radius 15
Containment effect is strongest when ring radius ≤ density-measurement radius (currently 20). Beyond that, the ring becomes a suburban attractor and pulls growth outward.
Density (within r)
vs baseline —
Avg dist. from center
vs baseline —

Density within radius

Baseline Ring road

Average distance from center

Baseline Ring road
Step 0 /
About this model — abstract, equations & honest caveats
Premise

Urban growth often follows existing road infrastructures, leading to linear expansion that challenges urban planning. An agent-based model simulates expansion in a grid city using three rules: preference for the city center, proximity to roads, and proximity to existing development. Scenarios with and without a ring road are compared to evaluate the ring's role in mitigating linear growth and encouraging a more compact urban form.

Probability

For each undeveloped cell the development probability is P = wc·fc + wr·fr + wd·fd, where fc = 1/(dcenter + 1), fr = decaydroad, and fd is the fraction of 4-neighbours already developed. Paper weights: (0.5, 0.3, 0.2).

Limit to growth (this dashboard)

The original model lets cells far from any road develop as long as the center pull is strong enough. To better reflect that infrastructure conditions where development happens, this dashboard adds a soft penalty: P ← P · ρdnearestRoad, where dnearestRoad is the distance from the cell to the nearest road (cross axis OR ring) and ρ ≈ 0.85 is tunable.

Equal-budget comparison

Both panels develop the SAME number of cells (the cell budget). The question becomes: given the same growth, where does each scenario PUT it?

What you should observe
  • Higher density-within-radius with the ring when the ring sits inside or on the density measurement zone (default: ring r = 15, density r = 20).
  • Lower average distance from center with the ring, for the same reason.
  • Push ring radius well beyond the density radius (e.g., r = 30+) and the ring becomes a suburban attractor: density at the core actually drops because the model is now putting its budget along the ring perimeter. The paper itself flags this as a real risk of poorly placed ring roads.
  • Without the ring, growth is visibly linear along the cross axes — classic sprawl.
Caveats from the paper
  • Hypothetical grid city; no varied land uses, zoning, prices, or policy.
  • Effectiveness depends strongly on the ring radius and connectivity.
  • Multiple outer rings could become polycentric and dilute compactness.

Beqiri, Rr., Byci Jakupi, A., Pula Hamza, D. Impact of ring roads on urban growth — an agent-based modeling approach. The supplied ringroadsmodel.py ships with RING_ROAD_RADIUS = 0, ROADS_WEIGHT = 0.1, and EXISTING_DEV_WEIGHT = 0; the paper specifies (0.5, 0.3, 0.2), which is what this dashboard uses by default.