
NIRNAY: Testing Delhi's Monsoon Pump Plans Before the Rain Falls
NIRNAY is a what-if decision tool for Delhi's monsoon waterlogging. Pick a storm, see which underpasses close and when, and find the best allocation of limited pumps and crews, with uncertainty ranges. Built for the WeMakeDevs x AWS Environmental Hacks, Heat and Water track.
Every monsoon, Delhi's PWD has to decide in advance where scarce pumps and crews go, and in real time when an underpass must be closed. Today those decisions rest on hotspot lists, nodal officers and experience. There is no tool to test a plan before the rain arrives.
We built NIRNAY (Hindi for "decision") for the Environmental Hacks hackathon by WeMakeDevs and AWS, in the Heat and Water track.
What NIRNAY does
NIRNAY is a what-if tool for control-room staff and zonal engineers. For one corridor of Delhi it:
- Simulates how fast each underpass fills under a rainfall scenario you choose (total mm and duration).
- Reports minutes to alert, minutes to closure and closure duration for each hotspot.
- Lets you test interventions: add mobile pumps, clear a drain, pre-divert traffic or close a road.
- Recommends how to allocate a limited number of pumps and crews to reduce the most disruption, compared with an equal split.
- Explains the recommendation in plain language, quoting only simulator outputs.
It is deterministic. The same rainfall and duration always give the same answer, which is what you want when someone asks why a pump went somewhere.
How it works
Hazard layer. Rainfall becomes inflow with the rational method:
Q_in = 0.278 × C × i × A where C is the runoff coefficient, i the rainfall intensity in mm/h and A the catchment area in km². Rain follows a triangular hyetograph. Each underpass is a storage balance, stepped every minute:
dh/dt = (Q_in − Q_pumps − Q_drain) / A_s An alert triggers at 0.15 m (6 in) and closure at 0.20 m (8 in), following the thresholds reported for PWD's protocol [verify the source before publishing].
Impact layer. Closures are scored with a relative impact index that combines closure time, a traffic proxy, detour penalty, hospital-route flag and nearby population. It is an index, never a count of vehicles or people.
Decisions. Every intervention acts on one layer with a stated mechanism. Pumps and drain clearing change the hazard. Pre-diverting and closing roads change exposure. For allocation we use an exact dynamic program over pumps and crews, and also run a greedy version and two baselines (equal split and history-proportional split) so the gain is measurable.
Uncertainty. Real pump and drain capacities are not known to us, so we rerun the model 200 times with runoff, pump capacity and drain capacity varied, and show P10 to P90 ranges plus how often the same top-three allocation wins.
The slider is instant because the simulator runs in the browser in TypeScript.
What we claim, and what we don't
We claim | We do not claim |
|---|---|
Scenario simulation and decision support | Flood forecasting |
A relative impact index with uncertainty ranges | Exact numbers of people or vehicles affected |
Textbook hydrology (rational method, storage balance) | A calibrated hydrodynamic model |
Optimal allocation under stated assumptions | That hotspots never interact (we assume independence) |
We would rather show a partial result honestly than overclaim.
Validation
[Fill in from Member 1's results: the rank test, and the July 2026 and May 2025 replays, including any misses. If you do not have them, delete this section and say instead: "Validation against known hotspots and two real events is documented in our repository."]
[Data status: say plainly whether the hotspot parameters in the demo are illustrative or calibrated, and from what.]
Built with AWS
[List only what is actually deployed.]
- AWS Amplify hosts the web app.
- [If live: Amazon API Gateway and AWS Lambda run the optimizer and Monte Carlo runs.]
- [If live: Amazon DynamoDB stores saved scenarios.]
- [If live: Amazon Bedrock with the Strands Agents SDK powers "Ask NIRNAY", which can only quote simulator and optimizer outputs.]
What we learned
- Satellite elevation data is a surface model that includes buildings, so it cannot see underpass dips. We seed underpasses explicitly as low points instead of trusting the terrain.
- Because pump and drain capacities are uncertain, ranges and stability are more honest than a single number.
- An AI assistant is most useful when it explains a deterministic model, not when it replaces one.
What we would need to go live
The pump inventory and discharge figures, drain and bell-mouth data, and live water-level sensors at underpasses. With those, the placeholders become real parameters and the scenario could be pre-filled from IMD forecasts.
Try it
- Code: [GitHub link]
- Demo video: [video link]
NIRNAY is decision support, not flood forecasting. This is an independent hackathon prototype, not an official PWD product.
Enjoyed reading this content? Let the author know!
Your likes, comments, shares, and saves help creators reach more builders.
Loading recommendations
Loading article