FireGraphNet: Sub-daily wildfire spread prediction with directed graph neural networks
Authors: Aiyshwariya Paulvannan Kanmani, Miguel Esparza, Ali Mostafavi
Organizations: Urban Resilience.AI Lab, Zachry Department of Civil and Environmental Engineering, Texas A&M University, College Station, TX 77840, United States of America
Wildfire decisions are made in hours, yet most learned spread models predict daily on targets including burned area. We propose FireGraphNet which formulates 12-hour growth as node classification on directed H3 graphs, with candidates ahead of the front and wind alignment, terrain, fuel continuity and barriers on edges. On satellite perimeters it achieves average precision 1.7-1.9x the strongest distance baseline on test California fires and 1.62x out of state. We show this skill comes from message passing rather than cell features or the aggregator, is highest on young fires in state, is carried deep along the wind by its edges, and is hidden by pooling. A convolutional network matches this ranking once trained on new growth, at worse calibration, so candidate construction, target definition, and aggregation shape conclusions about model skill. Editing fuel and barrier attributes reduces predicted spread more under guided than random placement, extending FireGraphNet to operational intervention analysis.
Figures & tables
Figure 1: The FireGraphNet formulation illustrated on the Creek Fire snapshot of 6 September 2020, 12:00 UTC. (a) From perimeters to one snapshot. The perimeter at t−12 h shows the cadence and is not a model input. The perimeter at t+12 h is used only for the label, which is 1 for a candidate cell that newly burned, 0 for one that did not, and −1 for already burned cells, which are masked. At t , the graph shows the burned footprint, the active front and the candidate cells within 5 rings of the front. The 82 per-cell inputs are drawn one sheet per feature, grouped by source. The 5 per-edge inputs are shown for one candidate cell i with its 6 directed in-edges, the HRRR wind at t and the edge vector from the burning neighbor j . (b) The architecture. A message-passing layer receives, for cell i , its own embedding, the embeddings of its 6 in-neighbors and their 6 edge vectors. The five rows are the five aggregators, ordered by how much of the edge vector enters the computation (Section 4.5 ), and the MLP control skips the layers. The read-out returns one probability per candidate cell, shown for GINE.
Figure 2: Three 12-hour predictions, each the mean over 10 seeds. (a) The GINE variant on Creek 2020 (California, sealed test), 6 September 2020, 12:00 UTC. (b) The objective-matched raster CNN on the same snapshot. (c) The GINE variant on Bootleg 2021 (Oregon, sealed out-of-state set), 14 July 2021, 12:00 UTC. Top row: the burned footprint (dark), the active front (orange) and each candidate cell within 5 rings of the front colored by its uncalibrated probability of newly burning by t+12 h. Bottom row: observed growth against the model’s k highest-ranked cells, where k is the number of cells that burned. False alarms are split by whether the cell burned in the following 12 hours. The CNN field is saturated (mean 0.66, prevalence 0.31) where GINE’s is graded (0.35), which is the miscalibration reported in Section 2.3 . GINE ranks higher on this snapshot (AP 0.81 vs 0.71) but the CNN is higher over the whole Creek fire (0.1210 vs 0.1073, Supplementary Table 1 ), so (b) illustrates calibration rather than a ranking advantage. On Bootleg the probabilities are low (0.03 vs prevalence 0.16) yet the ranking still finds the eastern flank. Basemap tiles: Esri World Terrain.
Figure 3: The Creek 2020 snapshot of Figure 1 under two candidate constructions. (a) Our first protocol, which built candidates as the closest prior work does ( Rösch et al., 2024 ) , flooding outward through the cells that actually burned: 335 cells, 204 burned (61%), 21 of them beyond 5 rings of the front. (b) The prediction-time construction of this paper: the 588 unburned cells within 5 rings of the front, 183 burned (31%). (c) The share of candidates that burned at each ring depth, with candidate counts above the bars. The 50 hindsight candidates beyond ring 5 (21 burned) are not shown. At depth 1 the two sets are identical. Beyond it, the hindsight positive rate is higher at every deeper ring (0.66–0.83 on this snapshot), because deep candidates existed only where the fire went, while the prediction-time rate falls (Supplementary Note Supplementary Note 2: Our first evaluation setup and why it was replaced ). Basemap tiles: Esri World Terrain.
Model
PR-AUC
CSI@ τ
CSI max
Brier
ECE
SAGE, edge-blind (graph)
0.0624 ± 0.0064
0.0579 ± 0.0067
0.0609 ± 0.0065
0.0945 ± 0.0177
0.2204 ± 0.0335
SAGE-maxpool (graph)
0.0675 ± 0.0085
0.0660 ± 0.0080
0.0679 ± 0.0064
0.0638 ± 0.0078
0.1910 ± 0.0197
GINE (graph)
0.0710 ± 0.0056
0.0670 ± 0.0061
0.0685 ± 0.0053
0.0348 ± 0.0076
0.0925 ± 0.0164
GATv2 (graph)
0.0668 ± 0.0050
0.0624 ± 0.0064
0.0646 ± 0.0056
0.0597 ± 0.0098
0.1472 ± 0.0218
Graph Transformer (graph)
0.0638 ± 0.0078
0.0620 ± 0.0093
0.0653 ± 0.0079
0.0500 ± 0.0075
0.1634 ± 0.0238
MLP (no message passing)
0.0394 ± 0.0015
0.0354 ± 0.0025
0.0363 ± 0.0017
0.0928 ± 0.0065
0.2710 ± 0.0127
Table 1: Pooled sealed in-state test results: 12 h spread prediction on the identical candidate population (512,742 candidates, 8,455 positives, prevalence 0.0165). Mean ± std over 10 seeds; nulls are deterministic (single pass). CSI@ τ uses the validation-frozen threshold and CSI max the best threshold. Objective-matched = trained on the same candidate cells as the graph variants; full-mask = trained on every cell burned by t+12 h, including the existing footprint (Section 2.3 ). All probabilities are raw (uncalibrated).
Stratum
PR-AUC
Null
Lift
Pooled
0.0964 ± 0.0057
0.0595
1.62 ×
Pooled, MLP (no message passing)
0.0632 ± 0.0019
0.0595
1.06 ×
Santiam Complex 2020 (OR, wind)
0.1336 ± 0.0100
0.0415
3.22 ×
Holiday Farm 2020 (OR, wind)
0.1447 ± 0.0150
0.0839
1.72 ×
Cold Springs–Pearl Hill 2020 (WA, grass/wind)
0.0470 ± 0.0128
0.0337
1.39 ×
East Troublesome 2020 (CO, wind+beetle-kill)
0.1099 ± 0.0115
0.0978
1.12 ×
Table 2: Pre-registered out-of-state transfer: pooled and stratified PR-AUC of the GINE variant at its selected configuration, frozen before the run (locked), on the sealed 5-fire out-of-state set (194,796 candidates, 5,952 positives, prevalence 0.0306), evaluated exactly once. Lift is model over the ring-distance null. The MLP control (no message passing; the same untuned configuration as in Table 1 ) is shown pooled only.
Figure 4: The weather ablation read two ways. Bars: change in per-snapshot AP when the HRRR inputs are masked (Methods), for the arm that masks the node weather and the arm that also masks the wind edge channel, paired over 11 leave-one-fire-out folds and 5 seeds (Extended Data Table 2 ). Pooled over all depths, masking improves AP. Split by ring depth, the gain sits at depth 1 and the losses at depths 3 to 5, where the wind edge channel carries the deep-advance signal. Stars: p<0.05 , Holm-corrected within each arm for the depth strata.
Appendix figures & tables12 assets
Supplementary material from the paper’s appendix.
Appendix
Extended Data Fig. 1: Two days of observed spread at the half-day FEDS cadence, one perimeter per satellite overpass, against the daily frame of next-day products. (a) Creek (California), 6 September 2020, the day of the snapshot in Figures 1 to 3 : no cells burned in the first 12 hours and 204 in the second, which the daily frame places anywhere within 24 hours. (b) Caldor (California), 17 August 2021: 167 cells in the first 12 hours and 148 in the second, on different flanks, which the daily frame merges with no order of arrival. The FEDS windows follow the VIIRS overpasses, so they are about, not exactly, 12 hours apart. Basemap tiles: Esri World Terrain.
Extended Data Fig. 2: Sealed-test performance of the 5 FireGraphNet variants over 10 seeds. (a) Pooled test PR-AUC per seed, mean ± 1 sd; dashed line, no skill (prevalence 0.0165). (b) Per-fire PR-AUC, mean ± 1 sd over seeds; dashes, per-fire prevalence. (c) Per-seed paired differences against the GINE variant with Holm-corrected Wilcoxon p -values. (d, e) Pooled precision–recall and ROC curves: thin lines, seeds; thick lines, seed mean; dashed, no skill.
Extended Data Fig. 3: Operating behavior on the sealed test (10-seed pooled raw predictions, selected configurations). (a) Reliability diagrams; marker area ∝ bin population. (b) CSI against the decision threshold τ ; marker, the validation-frozen τ . The variants differ in the width of this plateau rather than in its peak height. Brier score, ECE and plateau width for each model, the CSI cost of overshooting the threshold and the development-pool replication are in Supplementary Table 2 .
Model
0–48 h
48–120 h
120–240 h
240–480 h
480 h+
ρ (age, AP)
SAGE (edge-blind)
0.434
0.195
0.154
0.044
0.033
−0.46
SAGE-maxpool
0.436
0.228
0.168
0.056
0.040
−0.47
GINE
0.481
0.206
0.181
0.049
0.038
−0.45
GATv2
0.411
0.222
0.166
0.046
0.036
−0.41
Graph Transformer
0.388
0.198
0.166
0.050
0.036
−0.43
MLP (no message passing)
0.330
0.157
0.074
0.021
0.022
−0.41
Appendix
Extended Data Table 1: Track-age-banded test AP (10-seed means) and the Spearman correlation of snapshot-level AP with track age ( ρ , computed on the 10-seed mean prediction; all p<10−13 , n=322 scoreable snapshots, i.e., those with at least one positive candidate). Bottom: the population weighting that makes pooled AP an old-fire-dominated statistic.
Stratum
Δ AP
p
n pairs
node weather masked
pooled, all depths
+0.0096
0.0139
467
depth 1
+0.0057
0.1439
467
depth 2
−0.0057
0.1439
255
depth 3
−0.0215
0.0008
131
depth 4
−0.0431
0.0140
83
Appendix
Extended Data Table 2: Weather ablation: per-snapshot AP delta of the weather-masked arm minus the full model (positive = better without weather), paired over 11 leave-one-fire-out (LOFO) folds × 5 seeds. Depths 3–5 degrade significantly when the node weather and the wind edge channel are both masked, and depths 3–4 when only the node weather is masked (Holm p<0.05 ; depth p -values are Holm-corrected within each arm, the pooled p is a single uncorrected test). The pooled gain and these losses are the pooled-metric reversal that Section 2.4 discusses.
Micro (per-snapshot)
Fire-level (macro)
Treatment
Δ AP
p
win rate
mean Δ
improved
p
Driver-label conditioning (feature)
+0.0032
0.0037
0.565
−0.0080
5/11
0.58
Driver-label conditioning (FiLM)
+0.0004
0.25
0.525
−0.0058
4/11
0.17
FRP intensity auxiliary head
−0.0020
0.71
0.507
−0.0178
3/11
0.12
24 h auxiliary head (joint training)
+0.0059
0.00056
0.561
−0.0153
4/11
0.46
Appendix
Extended Data Table 3: Pre-registered expansion experiments, all paired against the same locked-GINE control (11-fold leave-one-fire-out × 5 seeds). Micro = pooled per-snapshot paired Wilcoxon (seed-averaged AP, n=467 snapshot pairs); fire-level = mean per-fire pooled-AP delta, count of fires improved, and a one-sample Wilcoxon p over the 11 per-fire deltas. Win rate is the share of paired snapshots on which the treatment arm scores higher. FiLM, feature-wise linear modulation; FRP, fire radiative power. Driver-type strata are in Supplementary Note Supplementary Note 4: Enrichment experiments in full .
Extended Data Fig. 4: Intervention counterfactuals on held-out fires. (a) Dose–response (frozen fold models, 3 seeds; mean ± 1 sd over records): change in predicted spread mass ΔΣp against treatment budget k , for edge barriers (top) and fuel treatments (bottom), under model-guided top- k , distance-to-front and random placement. On the fuel-dominated CZU, random placement increases predicted spread for both intervention types (Supplementary Note Supplementary Note 7: Intervention counterfactuals in full ). (b, c) One barrier counterfactual on Camp Fire, 9 November 2018, 12:00 UTC, from a frozen fold model (GINE, seed 0). Panel b shows the baseline probability of burning by t+12 h with the 25 highest-ranked cells outlined, and panel c the change after marking every edge of those cells as a barrier, which sets the barrier feature to 1 and fuel continuity to 0. Supplementary Note Supplementary Note 7: Intervention counterfactuals in full gives the numbers. (d) Autoregressive rollouts (3 steps of 12 h, k=25 placement at step 0): cells saved at the final step (baseline − treated), one open marker per start time and seed, bar = mean. Headers give the baseline final burned-cell range and the maximum fraction of candidate cells that fell outside the fire’s feature universe and could not be scored (0.24 on Kincade, 0.00 on Camp). All panels show sensitivities of a learned model rather than estimates of suppression effect. Basemap tiles: Esri World Terrain.
Fire
Prev.
SAGE
SAGE-maxpool
GINE
GATv2
Transformer
CNN-M
CNN-F
Null
Creek 2020
0.0109
0.0883
0.0897
0.1073
0.0970
0.0862
0.1210
0.0145
0.0262
Bobcat 2020
0.0260
0.1231
0.1336
0.1214
0.1278
0.1167
0.0924
0.0459
0.0634
Glass 2020
0.0283
0.1895
0.2197
0.1782
0.1636
0.1607
0.2075
0.0767
0.0684
Dixie 2021
0.0180
0.0475
0.0527
0.0524
0.0539
0.0531
0.0682
0.0241
0.0379
Caldor 2021
0.0211
0.0492
0.0583
0.0584
0.0601
0.0548
0.0958
0.0415
0.0511
Appendix
Supplementary Table 1: Per-fire sealed-test PR-AUC (10-seed means, tie-aware AP). Prev. = per-fire positive prevalence. CNN-M = objective-matched Res18-U-Net; CNN-F = full-mask Res18-U-Net; Null = ring-distance (near-first). The per-fire structure is analyzed in Supplementary Note Supplementary Note 3: Architecture mechanism: why the GNNs tie, and where architecture matters .
Sealed test (selected)
Dev pool (selected)
Model
Brier
ECE
Plateau
CSI @ τ+0.05
Brier
ECE
SAGE (edge-blind)
0.094
0.220
0.157
−7%
0.071
0.158
SAGE-maxpool
0.064
0.191
0.052
−49%
0.053
0.142
GINE
0.035
0.093
0.143
−7%
0.029
0.047
GATv2
0.060
0.147
0.157
−9%
0.040
0.085
Graph Transformer
0.050
0.163
0.099
−16%
0.041
0.115
Appendix
Supplementary Table 2: Operating behavior of the six models on the sealed test and in its development-pool replication. The left block gives the sealed test (10 seeds, selected configurations, raw probabilities), namely the Brier score, ECE, the width of the τ plateau holding ≥90% of CSI max , and the CSI cost of overshooting the selected threshold τ by +0.05 . The right block gives the out-of-sample replication on the 11-fire development pool at the selected configurations (macro over held-out fires, 3 seeds).
Top- k (guided)
Distance
Random
Fire
Intervention
k=5
k=10
k=25
k=50
k=25
k=25
Camp 2018 (east wind)
edge barrier
−0.50
−0.94
−1.97
−3.09
−0.76
−0.08
Camp 2018 (east wind)
fuel treatment
−0.59
−1.06
−2.03
−3.04
−0.92
−0.05
Kincade 2019 (Diablo wind)
edge barrier
−0.40
−0.75
−1.70
−2.97
−0.93
−0.36
Kincade 2019 (Diablo wind)
fuel treatment
−0.56
−1.02
−2.37
−4.29
−1.12
−0.58
CZU 2020 (fuel)
edge barrier
−0.12
−0.24
−0.46
−0.58
+0.00
+0.40
Appendix
Supplementary Table 3: Intervention counterfactuals on fires held out of their leave-one-fire-out fold models (Camp, Kincade and CZU; 3 seeds): change in predicted spread mass ΔΣp (more negative = larger predicted suppression) for model-guided top- k placement across budgets, versus the distance-to-front heuristic and random placement at k=25 . Values are counterfactual sensitivities of a learned model rather than estimates of suppression effect. Random placement on CZU increases predicted spread for both intervention types (Supplementary Note Supplementary Note 7: Intervention counterfactuals in full ).
R
Dev coverage
Dev base rate
Test coverage
1
0.525
0.061
0.523
2
0.683
0.040
0.700
3
0.766
0.030
0.795
4
0.819
0.024
0.851
5
0.854
0.021
0.888
6
0.879
0.018
0.914
Appendix
Supplementary Table 4: Coverage of realized 12 h growth (fraction of newly burned cells within R rings of the front) and candidate base rate as a function of the ring horizon R . The development pool is the 11 non-test fires, and the test column is descriptive only.
Fire
Role
Graphs
Candidates
Positives
cov@5
Camp 2018
train
27
22,062
539
0.92
Carr–Hirz–Delta 2018
train
112
132,600
1,662
0.92
Mendocino Complex 2018
train
59
81,826
2,244
0.94
Woolsey 2018
train
11
7,049
244
0.63
Kincade 2019
train
14
6,327
286
0.80
Saddleridge 2019
train
10
1,580
12
1.00
Appendix
Supplementary Table 5: The 16-fire / 909-graph corpus. Graphs are activity-gated ∼ 12 h snapshots; the 120 retained zero-growth windows (48 in the test pool) and the pre-ignition snapshots of Bobcat 2020 and Saddleridge 2019 are described in Section 4.4 . Candidates and positives are the R=5 constructible sets summed over each fire’s snapshots, and cov@5 is the fraction of realized 12 h growth within five rings. Hennessey (LNU) 2020 is outside the in-state split but is the 11th fire of the development pool. Totals: 909 graphs, 1,184,772 candidates, 22,247 positives.
Accurate prediction of next-day wildfire spread is critical for disaster response and resource allocation. Existing deep learning approaches typically concatenate heterogeneous geospatial inputs into a single tensor, ignoring the fundamental physical distinction between static fuel/terrain properties and dynamic meteorological conditions. We propose FireSenseNet, a dual-branch convolutional neural network equipped with a novel Cross-Attentive Feature Interaction Module (CAFIM) that explicitly models the spatially varying interaction between fuel and weather modalities through learnable attention gates at multiple encoder scales. Through a systematic comparison of seven architectures -- spanning pure CNNs, Vision Transformers, and hybrid designs -- on the Google Next-Day Wildfire Spread benchmark, we demonstrate that FireSenseNet achieves an F1 of 0.4176 and AUC-PR of 0.3435, outperforming all alternatives including a SegFormer with 3.8* more parameters (F1 = 0.3502). Ablation studies confirm that CAFIM provides a 7.1% relative F1 gain over naive concatenation, and channel-wise feature importance analysis reveals that the previous-day fire mask dominates prediction while wind speed acts as noise at the dataset's coarse temporal resolution. We further incorporate Monte Carlo Dropout for pixel-level uncertainty quantification and present a critical analysis showing that common evaluation shortcuts inflate reported F1 scores by over 44%.
Jinzhen Han, JinByeong Lee, Hak Han +2
Department of Civil, Architectural & Environment Engineering, Sungkyunkwan University, Suwon, South Korea · AI Urban Disaster Prevention Research Center, Advanced Institute of Convergence Technology (AICT), Suwon 16229, Republic of Korea · Department of Fire Safety Engineering, Jeonju University, Republic of Korea
Machine learning is being increasingly used to predict where active wildfires will burn the following day, helping inform evacuation boundaries and containment lines. Most models are evaluated using Average Precision (AP), which summarizes performance across all decision thresholds, although acting on a forecast requires choosing one. We benchmarked five discriminative architectures and one generative model on WildfireSpreadTS using a shared evaluation pipeline and two input configurations. We found that model rankings varied depending on whether performance was measured by AP or by threshold-dependent metrics like F1 and IoU. At the default 0.5 threshold, the highest-AP model flagged 4 to 5 times the observed active-fire area and ranked fifth of six on F1 and IoU, and the most recall-heavy model flagged 16 to 23 times. The three models whose flagged area stayed close to the observed area had AP scores 24 to 37% lower. Across models, we identified three distinct prediction profiles: over-predicting, balanced, and under-predicting, which AP alone could not distinguish. Expanding the input from 7 to 23 channels changed AP by 0.03 on average, against a 0.21 to 0.24 spread across models. Ultimately, these results show that AP alone can favor models whose predictions are poorly suited for operational wildfire forecasting.
Wildfire spread is traditionally predicted using physics-based simulators, which are physically interpretable but whose cost increases with each additional ensemble member. We ask how well deep learning surrogates can reproduce these simulations at a fraction of this cost, training them on 10,584 fire spread simulations at 2m resolution for the Rectoret region in Catalonia, Spain. Four architectures are compared: a patch-based U-Net, a transfer-learned ResNet-50, a physics-informed network constrained by the wind-driven advection equation and a Swin-Unet transformer. Among the terrain and vegetation variables, only surface fuel load predicts burn probability with any strength (r = 0.27) and including it lowers prediction error by 21%. The remaining variables correlate weakly and are highly duplicative. Next, an experiment with saliency, occlusion and rotation demonstrates the models' learning. Convolutional models rely primarily on distance from the current fire front, while Swin-Unet assigns more weight to fuel and terrain, a finding also noted in an unrelated wildfire dataset. When applied without retraining to the second region, Pedriza, all three convolutional models still predict fire spread, losing accuracy by a small but systematic margin.
Marcin Lawenda, Aleksandra Krasicka, David Caballero +2
Poznan Supercomputing and Networking Center, Poznań, Poland · MeteoGrid, Madrid, Spain · Technical University of Czestochowa, Częstochowa, Poland