WeatherFLOW
Project Showcase

WeatherFLOW

Spatio-temporal graph neural networks for 48-hour weather prediction across 32 South African weather stations

By: Praise Jaravani , Zoleka Fuyana , Génevieve Chikwanha

Supervised by: Deshen Moodley , Zola Mahlaza


About

Abstract

Weather at one station depends on its own recent past and on what is happening at nearby stations. Spatio-temporal graph neural networks (STGNNs) capture both at once by treating each weather station as a node in a graph whose edges carry the strength of the dependency between sites. Two earlier UCT studies showed this works for South African station data — but both stopped forecasting at 24 hours ahead, both tested only one style of model, and neither asked how the models behave during extreme weather, which is exactly when a forecast matters most.

WeatherFLOW takes that work further. Using ten years of hourly observations from 32 South African Weather Service stations across the Free State, Gauteng, KwaZulu-Natal and the Eastern Cape, we benchmark three newer families of STGNN — continuous-time neural-ODE models, generative diffusion models, and deliberately lightweight models — against the two strongest models from the previous study. Eight architectures in total, all forecasting temperature, pressure, humidity and wind speed out to 48 hours: double the horizon of the prior work. Every model runs through one shared pipeline, so the data, the splits, the training loss and the evaluation are held constant, and the architecture is the only thing that varies.

The results were not the ones we expected. None of the new families delivered a clean win — the established baselines proved hard to beat. Model size turned out to be close to unrelated to accuracy: one model four times larger than its rival improved error by under six percent, and the most accurate model in another comparison had twelve times fewer parameters than the weakest. What consistently mattered was not which paradigm a model belonged to, but how it was conditioned on space and context — the graph it was given, and the covariates it could see.

And every model, without exception, flattened the extremes. Error rose by up to a factor of 3.5 on the most extreme hours, and the model with the best average accuracy was usually not the best when the weather turned. Average error, it turns out, is the wrong way to choose a forecaster for the events that matter.

Videos 1

Watch presentations, demos, and related content

Documents 1

Downloadable resources and documentation

Click "View Full" to open documents in a new window

Gallery 2

Explore the visual story of this exhibit