gui4gmns › TrafficFlowBench Visual Analytics

TrafficFlowBench Visual Analytics with GUI4GMNS

A visualization, teaching, and diagnostic interface for GMNS-compatible freeway benchmark data. Inspect the traffic network, explore a corridor-day, and read its state, queues, OD/path flows, and incident evidence — with GUI4GMNS as the visualization layer over observed detectors, recurring profiles, and (optionally) an AI solver's output.

Traffic-network insightCorridor-day exploration State · Queue · OD · Incident diagnosticsGMNS-native, self-contained exports
Submission and scoring live on Kaggle. This page is the interface for seeing and explaining the data behind a corridor-day — visualization, teaching, and diagnostics.

The data behind a corridor-day

The interface is built around a single freeway corridor observed over a day, in GMNS-compatible form. Everything below is a visual analytics use case for GUI4GMNS: the same folder that feeds the desktop NeXTA tools feeds these panels.

Network & state inputs
  • GMNS node / link network — freeway mainline, ramps, detectors as nodes/links.
  • 5-minute detector state{speed, flow, density} per link per interval.
  • Recurring historical profiles — the typical day-type curve, per link and time.
  • Abnormal-cell labels — link×interval cells flagged as departing from the profile.
Events & demand inputs
  • Incident / event records — time, location, and type of reported events.
  • Base OD & path-flow inputs — origin–destination demand and path flows.
  • Path–link incidence — which paths traverse which links (loads the bottleneck).
  • Optional solver / AI state — a submission's reconstructed state, rendered the same way.
State here always means {speed, flow, density} indexed by link and 5-minute interval — the atomic cell of every panel on this page.

ANetwork Explorer

Pick a corridor, direction, date, and time window; toggle layers to see the freeway links, detectors, reported incidents, bottleneck candidates, and the current queue-tail extent on the GMNS network.

AGMNS network map I-210 E · eastbound · 2026-06-19 · 06:00–11:00
queue tail → bottleneck ◆ incident 07:35 ↑ upstream (MP 24) downstream (MP 40) ↓
GMNS links · detectors · events — schematic mockup

Layers redraw as you change corridor/date. The bottleneck ring marks a candidate from the state field; the queue tail is the current-frame extent from the time slider in panel B.

BTraffic State Field

The space-time speed field — milepost × 5-minute interval — measured on top, the recurring profile below. Where the measured panel is redder than the profile is exactly the non-recurring event. Toggle the feed to flow or density, or overlay a solver's reconstruction.

BSpace-time field state = {speed, flow, density} · by link × 5-min
Measured — I-210 E, 2026-06-19speed (km/h)
MP 24 · 05:00peak bandMP 40 · 11:00
Recurring profile — Friday day-typesame feed, typical day
jammed
free-flow detector timeline scrubs both panels together

CQueue Object Inspector

Turn the heatmap into an operational incident picture: each red region in the state field becomes a queue object with a lifecycle and geometry you can read off directly.

CQueue episode · Q-2026-0619-03 extracted from the measured speed field
Onset T0
07:35
Peak T2
08:10
Clearance T3
09:05
Bottleneck link
L-2183 MP 31.4
Max queue length
4.8 km
Queue tail
MP 26.6
Shockwave speed
−14 km/h (upstream)
Duration
90 min
Classification: mixed — recurring + incident (recurring AM band deepened by a reported 07:35 event)
Turning a heatmap into an operational picture: the red cells give the queue's lifecycle (T0 → T2 → T3), its reach (tail at MP 26.6, 4.8 km back from the bottleneck), and its backward propagation (−14 km/h shockwave) — the vocabulary a TMC operator uses, read straight from state.

DOD and Path Attribution

Which OD/path flows actually load this bottleneck? Select the bottleneck link and see the contributing paths, their demand, and their share of the loaded link flow — a diagnostic view of "who loads this queue?", not a scoring metric.

DBottleneck L-2183 · contributing paths OD demand · path flow · path–link incidence · loaded flow
O1 · FoothillO2 · LakeO3 · Sierra Madre L-2183 loaded
OD demand (peak hr)
3,240 veh/h
Loaded link flow
1,910 veh/h
Contributing paths
3 of 11
Top path share
54%
  • P-07 O1→D2 · 1,030 veh/h · 54% of loaded flow
  • P-12 O2→D2 · 560 veh/h · 29%
  • P-19 O3→D4 · 320 veh/h · 17%
Who loads this queue? Path P-07 (Foothill → downtown) carries over half the bottleneck flow. A before/after path-flow profile shows P-07 sustaining load through the 08:10 peak while P-19 tapers — a demand-side lever, surfaced as evidence.

EIncident and Evidence Panel

Tie the incident record and abnormal-cell labels back to the observed state field. The panel grounds an interpretation in evidence and states its confidence — it does not assert causality.

EReported event & abnormal cells
Incident time
07:35
Location
MP 31.4 L-2183
Abnormal cells
37 link×5-min
Baseline deviation
−44 km/h vs profile

Abnormal cells cluster downstream-to-upstream from 07:35; measured speed dips to 12 km/h where the recurring profile stays above 56 km/h.

EEvidence & interpretation
Reported event
strong
Abnormal-cell overlap
strong
Baseline deviation
clear
Recurring overlap
partial
Likely interpretation: incident-related, on a recurring band

Evidence tier: high. Phrased as evidence-grounded explanation — recurring congestion was already present; the 07:35 event coincides with and deepens it. Alternatives (pure recurring / uncertain) are down-weighted, not excluded.

recurringnon-recurring mixed ✓uncertain

The GUI4GMNS pipeline

The panels above are the last stage of a practical pipeline — from raw detector states to a self-contained dashboard and NeXTA-compatible GMNS exports.

source
PeMS / detector states
network
OSM2GMNS / GMNS
baseline
Historical profiles
events
Event records
state
Solver / observed state
visualize
GUI4GMNS dashboard
deliver
HTML · dashboard · NeXTA GMNS
# generate the corridor-day visuals and NeXTA-ready GMNS files
cd 04_nexta_ai_gen
python make_html_viz.py 210E 2026-06-19   # space-time + network + calendar HTML
python nexta_export.py  210E 2026-06-19   # node/link/link_performance for desktop NeXTA

Swap the corridor id and date; point nexta_export.py --state my_submission.csv at a solver's output to render an AI-generated state exactly like ground truth.

Export

Take the current corridor-day out of the browser — as a self-contained dashboard, GMNS performance tables, NeXTA files, or an observed-vs-solver comparison.