Methodology
How Disaster Compass decides.
Disaster Compass turns a disaster alert into a household action plan using deterministic, explainable rules — not machine learning. Every recommendation traces to a specific rule, so it's auditable and student-explainable.
Rule 1
Action decision (GO / STAY / WAIT)
decideAction(disasterType, household)Per-hazard rules: Flood → GO TO HIGHER GROUND; Earthquake → STAY / SHELTER NOW (Drop, Cover, Hold On), no evacuation route; Hurricane → GO before the deadline; Wildfire → GO away from the fire path; Extreme heat → cooling-center logic (including WAIT for cooling transport). Household factors — elderly, toddler, pets, vehicle access, medical/accessibility needs — adjust the guidance.
Rule 2
Route scoring
scoreRoute(route)Higher is safer; getBestRoute() picks the maximum. In the North Creek demo this yields Route A ≈ 48 (crosses a flooded bridge), Route B ≈ 91 (best), Route C ≈ 70 (caution).
NOTE: these weights are illustrative and demo-calibrated to make the example legible — they are not validated emergency-management coefficients.
Rule 3
Volunteer matching
matchVolunteer(household, volunteers)Matches a household needing transport to the best-fit available volunteer (vehicle capacity, distance, pet/accessibility support). A human coordinator must approve before anyone is dispatched.
Rule 4
Recovery
getRecoveryChecklist()A standard post-disaster checklist of next steps.
Data & live feeds
Shelters, routes, and road closures are seeded demo data for the fictional town of North Creek — there is no reliable free live feed for these, and stale data for life-safety routing would be unsafe. Hazard signals (earthquakes, weather, alerts) can optionally run on live public APIs behind a fallback; if a feed is unavailable, the app falls back to bundled data and labels it.
Safety
Routes are suggested/estimated — never “guaranteed safe.” Disaster Compass complements and never replaces 911, FEMA, the Red Cross, or local officials. In an emergency, call 911.
