48-hour simulation running live

Predict the flood.
Route around it.

CoastGuard AI runs a real hydrological model over real elevation, tide and road data — then solves the routes that are still open. One engine drives the operations dashboard and the offline field app in every responder’s pocket.

No sign-up. No backend. Works with the network down.

Water
2.41 m
Roads cut
612 / 4,659
Cut off
2 sites
Showing
Forecast +12 h
Safest route found
Jackson Memorial Hospital
3.4 km by road11 min1 road flagged
Scroll to see how it works

Built on measured data, not synthetic terrain

USGS 3DEP 1 m Bare Earth DEMNOAA CO-OPS · Virginia Key 8723214OpenStreetMap via OverpassNAVD88 vertical datumFDEM operational landmarksMiami-Dade County road classesUSGS 3DEP 1 m Bare Earth DEMNOAA CO-OPS · Virginia Key 8723214OpenStreetMap via OverpassNAVD88 vertical datumFDEM operational landmarksMiami-Dade County road classes
The platform

Six things it does that a flood map does not

Physical flood model

A connectivity-filled water surface over a 300 × 300 elevation grid at 40 m cells. Water reaches a cell only if it can actually get there from the sea, so an inland hollow below sea level stays dry until something connects it.

Routing that respects the water

A* over 4,659 real OSM road segments, re-weighted at every timestep. A shelter 300 m away across a flooded causeway is correctly reported as no distance at all.

Forecast you can scrub

193 timesteps at 15-minute resolution across a full 48 hours. Drag the timeline and the flood, the closures, the routes and every panel move with it — including the answers the assistant gives.

An assistant that cannot bluff

Questions are answered by the model and the router first; the language model only rephrases. Every reply names the source it came from, and none of them can invent a road that does not exist.

Offline by design

The engine is compiled to a single JavaScript bundle that runs entirely in the browser. No backend, no round trip, no degradation on the day the towers go down.

Community layer

Shelters with live capacity, shared resources, hazard reports and volunteer jobs — each pinned to a real road node with its elevation read from the DEM, so both surfaces agree on where it is.

How it works

Three steps, run 193 times

Nothing is precomputed into a picture. The whole chain re-runs for every position on the timeline, in your browser.

  1. 01

    Read the ground

    USGS 3DEP bare-earth elevations are sampled onto the operations grid in NAVD88, the same datum NOAA publishes tides against — so a water level and a ground height are directly comparable numbers.

    300 × 300 cells · 40 m · −7.9 m to 16.3 m

  2. 02

    Force the water

    Measured NOAA astronomical tide at Virginia Key, plus a Category 2 design-storm surge, rainfall and wind. The tide alone does not flood Miami-Dade; a design storm is how coastal risk is actually planned against.

    2.2 m surge peak · 48 mm/h rain · 165 km/h wind

  3. 03

    Solve what is left

    Every road segment is tested against the water surface at that instant, the impassable ones are cut, and A* re-solves over what remains. That is what the map, the shelter recommendation and the assistant all read from.

    4,659 segments re-weighted per timestep

Grounded assistant

Ask it anything about this town, at this hour

Most disaster chatbots answer with general safety advice, because general safety advice is all a language model has. This one reads the question, works out what is being asked, and answers from the flood model and the router — the actual distance, the actual depth, the actual shelter with capacity left.

  • Facts before phrasing. The engine produces the answer; the language model is only allowed to say it more naturally.
  • Provenance on every reply. “A* router, forecast +12 h, cautious mode” sits under the answer, so nobody mistakes it for an opinion.
  • Degrades, never breaks. Pull the key, pull the network — you get the engine’s own wording, with the same numbers in it.
Try the assistant

Disaster assistant

Model connected
Can I still reach the hospital?

Yes — Jackson Memorial Hospital is 3.4 km away, about 11 minutes by road in cautious mode. Watch out: NW 12th Ave is flagged by the forecast.

Source: A* router, forecast +12 h, cautious mode

When does it peak?

The surge peaks at hour 26 of the window. At the peak the model closes the largest share of the road network and cuts off two key locations entirely.

Source: Flood model, full 48 h window

Where should we evacuate to?Which roads are closed?
One engine, two surfaces

The coordination room and the flooded street

The dashboard answers “what is happening to the county”. The field app answers “what do I do now”. They compile from the same model, so they never disagree.

Operations dashboard

For whoever is deciding

A town safety score derived from the model rather than invented, a four-horizon flood outlook, active incidents ranked by road distance, and the shelter the router — not straight-line distance — says to send people to.

  • Overview
  • Forecast map
  • Resources
  • Volunteer dispatch
Open the dashboard
Field app

For whoever is standing in it

A single HTML file, sized for a phone. Photograph a flooded street and it estimates depth and hazards; claim a neighbour’s generator; join a debris-clearing job; flag that you need evacuation assistance. It opens straight off disk.

  • Photo hazard reports
  • Shared resources
  • Volunteer jobs
  • Priority assistance
Open the field app ↗
Questions

The things people ask first

Is the flood data real?

The elevation and the road network are. Elevations come from the USGS 3DEP 1 m bare-earth DEM via The National Map, referenced to NAVD88; the roads are OpenStreetMap geometry pulled through Overpass. The tide curve is NOAA CO-OPS astronomical prediction for Virginia Key. The surge, rainfall and wind are a stated Category 2 design storm rather than a live forecast — because the astronomical tide alone does not flood Miami-Dade, and a design storm is how coastal flood risk is actually planned against.

Does it need a server?

No. The model, the router and the whole 48-hour simulation are compiled into a JavaScript bundle that runs in the browser. There is no database and no API call in the critical path, which is deliberate: the moment a tool like this matters is the moment the network is least likely to be there.

What does the AI actually do?

It phrases. Questions are matched to what the engine can answer — a route, a water depth, a shelter recommendation — and the numbers in every reply come from that computation. When an API key is configured the language model rewrites that grounded answer into plainer prose. It is never asked for a fact, so it has nothing to hallucinate about.

Can I point it at a different county?

Yes. The data layer is five JSON files — elevation grid, forcing curve, road graph, landmarks, community fixtures — regenerated by the scripts in the repo. Swap the bounding box, re-run the generators, and the engine, the dashboard and the field app all follow.

Is the community data live?

No, and it says so. Shelters, incidents, resources and volunteer jobs are operational fixtures for exercise use, not a live feed. Their placement is real — every one sits on an actual road-network node with its elevation read from the DEM — so the router paths to them correctly.

The water is already modelled. Go and look.

Forty-eight hours of Miami-Dade, at fifteen-minute resolution, running in your browser right now. Scrub to the peak and see what is still open.

CoastGuard AI

Predictive flood modelling and dynamic safe-route pathfinding for Miami-Dade County, Florida.

Product

Respond

Data sources

  • USGS 3DEP · The National Map
  • NOAA CO-OPS · Virginia Key
  • OpenStreetMap contributors
Simulation for planning and exercise use. Not an official warning product — follow Miami-Dade Emergency Management for live orders.© 2026 CoastGuard AI