Research Question

Can GPS probe vehicle data passively detect distribution-level power outages by identifying anomalous driver behavior at traffic signals that have lost power?

Mechanism

Power outages → traffic signals go dark → drivers exhibit measurably different kinematic behavior (longer dwell times, altered deceleration profiles, changed speed nadirs) → these signatures are passively encoded in commercial probe data already collected at 15-minute resolution.

Traffic signals are the physical coupling point between the power grid and road network. All analysis is intersection-anchored, not link-anchored.

Methodology

Phase 1 — Spatial Setup (complete)

  • Pull signalized intersection locations from OpenStreetMap via OSMnx for target counties
  • Spatially join intersections to road links via nearest-link join (R-tree)
  • Classify intersections by road hierarchy (arterial, collector, local)
  • Store outputs as GeoParquet with caching

Result: 26,865 Harris County intersections joined to nearest road links (mean distance <0.01m).

Phase 2 — Outage Event Selection

  • Load EAGLE-I outage records (ORNL/DOE) at 15-minute resolution
  • Filter to non-weather-concurrent events — equipment failures, grid faults, rolling blackouts
  • Select events with sharp onset (≥10% customers_out change within ≤30 min)
  • Define treatment windows: 2hr pre-outage (baseline), during, 2hr post-restoration

Phase 3 — Traffic Signature Extraction

  • Engineer intersection-level features per 15-min bin: speed nadir, dwell time, deceleration onset distance, speed ratio
  • Construct matched control intersections (same road class, no nearby outage)

Phase 4 — Classification Model

  • Binary classifier (Random Forest → XGBoost) on engineered features
  • Labels from EAGLE-I: outage = 1, no outage = 0
  • Covariates: time-of-day, day-of-week (weather excluded by event selection design)
  • Spatial validation: do flagged intersections cluster within known outage footprints?

Tech Stack

Python, GeoPandas, OSMnx, Shapely, PyArrow, DuckDB, Scikit-learn, XGBoost. Build tooling via uv + pyproject.toml. Docker for reproducible execution.

Case Study Sites

Primary: Harris County, TX (highest probe density, high outage frequency) and Travis County, TX. Extension: Mecklenburg County, NC and Hamilton County, OH.

Current Status

Phase 1 (spatial setup) complete for Harris County. Phase 2+ code written, awaiting NPMRDS/INRIX traffic data access. The research is novel — no prior literature uses road probe data to infer power outage state.

Institutional affiliation: CUNY Hunter College / Oak Ridge National Laboratory.