River Flood Forecasting with LSTM Models from Upstream Gauges and Satellite Rainfall
Train and evaluate machine learning models that forecast river discharge one to five days ahead for a few South Asian or African river basins, using upstream gauge readings, satellite rainfall and public hydrology datasets. Compare against simple persistence and published global forecasts, and report the lead time at which a warning threshold would have been crossed in past floods. This is the forecasting model, not a sensor network or an alert app.
Advanced
Needs a team, real planning, and a supervisor who knows the area.2 semesters · 2 students
7 to ship
4 optional extrasSuggested stack
What you should ship
- A dataset for 3 to 10 basins built from public sources: discharge or water level records, satellite or reanalysis rainfall and catchment attributes
- Baselines: persistence and a simple linear model
- An LSTM model trained across basins, following the published NeuralHydrology set-up
- Forecasts at 1 to 5 day lead times with uncertainty
- Evaluation with hydrology metrics (Nash-Sutcliffe and Kling-Gupta efficiency) and event-based metrics for floods
- A replay of two or three past flood events showing when each model would have crossed the warning level
- A reproducible report and notebook others can rerun
If you have time left
- Testing on a basin the model never saw in training
- Comparing with GloFAS forecasts for the same events
- A small web map that shows forecast hydrographs
- Using upstream gauges as inputs for downstream forecasts on a large river
The problem: warnings that come too late
Floods in Pakistan in 2022, and repeated monsoon floods in Bangladesh, India and Nigeria, showed how much a few extra days of warning matter. National agencies run forecasting systems, but many smaller rivers have short records, few gauges and forecasts that arrive late or not at all. Machine learning models trained on many basins at once have recently shown they can forecast well even where local data is thin.
What already exists and the gap
- Google Flood Hub publishes riverine flood forecasts for many countries, built on machine learning hydrology models.
- GloFAS, the Copernicus Global Flood Awareness System, provides global river discharge forecasts from physical models.
- National flood forecasting divisions issue warnings for major rivers based on gauges and hydrological models.
These systems exist; the gap for a student team is a careful, reproducible study on specific regional basins that shows what open models can and cannot do, with honest event-based evaluation.
Inspiration
Frederik Kratzert and colleagues showed in Water Resources Research (2019) that LSTM networks trained across many catchments can forecast streamflow, including in basins they did not train on. Grey Nearing and colleagues published "Global prediction of extreme floods in ungauged watersheds" in Nature (2024), describing the approach behind Google's flood forecasts. The open NeuralHydrology library and the Caravan dataset make these methods reproducible.
What you build
- Hydrologists and disaster agencies get a tested model and a clear report of its lead time and errors on local rivers.
- Researchers get a reproducible pipeline for new basins.
- Students get a solid introduction to machine learning on physical time series.
The technically interesting part
- Data assembly. Gauge records may be patchy or only available for some years. Combine public discharge data with reanalysis and satellite rainfall, and document every gap.
- Training across basins. Using many basins helps the model learn general rainfall-runoff behaviour. Use static catchment attributes so it can tell basins apart.
- Evaluation that matters. Average metrics hide failures on peaks. Report peak timing and magnitude errors and warning lead time.
- Leakage. Split by time, and test on held-out basins too.
How to evaluate it
- Nash-Sutcliffe and Kling-Gupta efficiency per basin, against persistence.
- Peak error and peak timing error on the largest events.
- Warning lead time: days before a threshold crossing that each model forecasts it.
- Ungauged test: performance on basins excluded from training.
Suggested plan
- Weeks 1 to 5: read the papers, run NeuralHydrology on Caravan examples.
- Weeks 6 to 12: assemble regional basin data.
- Weeks 13 to 18: baselines and LSTM training.
- Weeks 19 to 24: event replays and ungauged tests.
- Weeks 25 to 28: report, notebook and demo.
Path to a product
Insurers, hydropower operators, NGOs running anticipatory cash programmes and local governments all need forecasts for rivers that big systems cover poorly. A team that can build and validate basin-specific models has a real service to offer. The project is also a strong machine learning portfolio piece with a public benefit.
Scope warning
Your forecasts are a research result, not an official warning. Never publish them as warnings to the public. Use only data you are allowed to use and credit every source. Keep the number of basins manageable.
Learn what you need on Sefism
- Machine learning roadmap: sequence models and evaluation.
- Data science roadmap: time series and honest validation.
- PyTorch: Learn the Basics: the framework NeuralHydrology uses.
- Python for Data Analysis: working with large time series.
- Hands-On Machine Learning with Scikit-Learn and PyTorch: background on recurrent networks.
Get help with this idea
Data assembly takes longer than anyone expects. Tauseef can help you choose basins with usable data and set up event-based evaluation early. If you are new here, create a free account first.
Ideas and guidance, not finished projects
These are project ideas and scoping guidance, published free for students to use as a starting point. I do not build, write, or sell final-year projects, and I do not complete coursework for anyone. Take an idea, make it yours, and build it.
Not sure this one fits you?
I help students pick an idea that matches their skills and their deadline, then scope it down until it is finishable. Guidance only, never done for you.
Stuck on something specific?
Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.
Follow along
New writing, resources and project ideas land here first.