Skip to content

AnwarDebes/PyroPredict

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyroPredict

Release Python License: MIT Tests Paper

Real-time wildfire spread forecasting + forecast-aware evacuation routing + crew deployment.


The January 2025 Eaton and Palisades fires killed 29 people and destroyed 16,000+ structures near Los Angeles. Operational cellular-automaton + Rothermel spread models underestimated the fires by ~10×. Evacuation routing systems (Waze, county VEOR feeds) didn't use spread forecasts. Fire-crew placement was decided by the Incident Commander on intuition.

PyroPredict is an end-to-end open-source pipeline that addresses all three gaps in pure NumPy on a single CPU.

The paper is at paper/pyropredict.pdf.

Quick start

pip install -e .
pytest -q tests/         # 10 unit tests, ~1.5s
make reproduce           # all 3 experiments, ~30s on CPU
make paper               # build paper/pyropredict.pdf

What it does

  1. Landscape model: fuel, terrain, roads, water, population on a 2D grid.
  2. Weather: Santa Ana / Diablo wind streams + typical-summer baselines.
  3. Rothermel CA spread: 8-neighbour propagation with wind + slope corrections.
  4. Hybrid CA + ridge residual: closed-form bias-correction multiplier.
  5. Forecast-aware evacuation router: Dijkstra on road graph with dynamically-blocked edges from the spread forecast.
  6. Forecast-aware crew placement: greedy submodular maximisation of expected population protected.

What's in the box

Path Purpose
pyropredict/landscape.py 5 fuel archetypes + synthetic landscapes
pyropredict/weather.py Santa Ana / typical summer streams
pyropredict/spread.py Rothermel + 8-neighbour CA
pyropredict/forecast.py Hybrid CA + ridge multiplier
pyropredict/evacuation.py Forecast-aware Dijkstra router
pyropredict/resources.py Greedy submodular crew placement
tests/ 10 unit tests, all green
experiments/spread_accuracy.py CA vs hybrid IoU across 3 spotting intensities
experiments/evacuation.py Naive vs forecast-aware routing
experiments/resources.py Crew placement comparison
scripts/make_figures.py Build figures from results
paper/pyropredict.tex Paper source
paper/figures/*.pdf Real figures from real data
results/*.json Raw experiment records

Headline results

Experiment Result
CA IoU under heavy spotting 0.828
Hybrid IoU under heavy spotting 0.830 (small gain; residual learner needs spatial awareness)
Naive routing residents trapped 27.2% (~3,627 people per scenario)
Forecast-aware routing residents trapped 0%
Lives saved per scenario +3,627 ± 155
Crews K=3 forecast-aware lives saved ~230
Crews K=3 forecast-blind population-greedy ~36
Crews K=10 forecast-blind catches up to K=3 forecast-aware

Honest limitations

  • Spotting model. Ridge multiplier is a global correction; the spatial pattern of ember-driven ignitions needs a CNN/graph net residual. No real fire-perimeter data to train this in v0.1.
  • Synthetic landscape. Real LANDFIRE FBFM13 + USGS DEM + Census population integration is future work.
  • Evacuation experiment uses fixed-time road threats to isolate the routing decision. Production would derive threat times from the spread forecast and inherit its bias.
  • No validation against published Palisades / Eaton 2025 perimeters. Data exists; v0.1 hasn't ingested it.
  • Walking-only evacuation. Mixed-mode (vehicle + walking under congestion) router is future work.

License

MIT.

Citing

@misc{debes2026pyropredict,
  title  = {PyroPredict: Real-Time Wildfire Spread Forecasting
            with Forecast-Aware Evacuation Routing and Resource Deployment},
  author = {Debes, Anwar},
  year   = {2026},
  note   = {Reference implementation v0.1, May 2026}
}

About

Wildfire spread forecasting that feeds the evacuation router: Rothermel cellular automata, hybrid bias correction, Dijkstra around roads predicted to burn, and submodular crew placement. Naive routing traps 27% of residents; forecast-aware traps none.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors