Global natural disasters are increasing in frequency and impact. When natural disasters strike there are multiple NASA data sources that can help a targeted response.
We built EvacuAID, a platform to connect communities to mitigate crisis. It's a peer to peer community network where people in high risk areas register both to say how many people they could accommodate in times of crisis and what their requirements would be if crisis struck them.
Our focus for this weekend came from the 2018 Woolsey Fire in California. We built a timeline of events to understand what happened and how NASA data, our network and smart alerts could have helped. Although we aimed to make a crisis agnostic platform that can use other NASA data sources for different disasters in the future (see future work section)
2018 Woolsey Fire in California Breakdown
- 8/11/2018 2:22pm: Fire reported
- 9/11/2018 5am: Fire spreads to Agoura Hills
- 9/11/2018 2pm: Residents told to evacuate their homes
- 9/11/2018 3pm: Huge traffic jams reported, people abandon their cars to flee on foot
- 10/11/2018: People turned away from overflowing evacuee shelters
We were struck by the response time and lack of evacuee shelters so focused on how we could connect people to shelter as quickly as possible, as well as guiding people to form collective efforts in prevention and education.
We used NASA's Fire Information for Resource Management System (FIRMS) to both analyse historic data to categorise areas with a risk score to inform people of their risk level and build a real time smart alert system to direct people to crowdsourced refuge in times of crisis.
What we built:
- A system to calculate wildfire risk for any given address based off clustering in historic FIRMS data.
- A user registration flow, asking basic location information as well as requirements around medication, transport and number of dependants.
- The idea being to register on the platform to act as helper in case there is crisis in a nearby area and to be able to receive smart alerts if crisis affects you - in a way like an AirBNB for crisis mitigation.
- A smart alert system that polls FIRMS to detect wildfires and inform helpers and evacuee's via a programmed phone call confirming if they need help and SMS of confirmation and location.
- Using a Waze link due to its effectiveness when roads are affected by a disaster event.
- A chatbot helping to inform people on fire prevention methods.
- To make this engaging and accessible it supports both text to speech & speech to text interaction.
- Although we did not complete the UI to create local 'Collectives' as local efforts to take preventative and education efforts - we did integrate with Stripe to allow collectives, once formed, to pool financial resources.
- A live chat support integration to allow users to ask queries during crises and with a backup manual fire event alerting system.
Below are 2 flows that the platform we built this weekend support.
Note, the automated phone calling, SMS, NASA data polling, score computation, Waze navigation link, Stripe integration, account creation & email verification, signup flow, chat bot and live chat are all functional in this proof of concept.
Example Scenario 1:
- Ben and Zoe are user registered on EvacuAID (Ben in the same state as Zoe)
- A fire is detected by NASA FIRMS (MODIS and VIIRS) affecting Ben's location which is then identified by our crisis detection scheduled microservice which is polling this data looking for credible crisis events near our registered users.
- Instantly Ben receives an automated phone call (using Twilio) that informs him of the crisis and allows him to use the keypad to choose 1) Please find me refuge, 2) Don't find me refuge, 3) Don't find me refuge and mark me as safe.
- Ben selects 1) Please find me refuge
- Ben will then instantly get an SMS giving him Zoe's address and a Waze link that opens his native mobile application for route guidance.
- Note Ben registered as requiring 2 dependants and when Zoe registered she stated she could support up to 3 people and confirmed this via an SMS notification when the event struck.
- No internet is required for Ben to accept and get the address.
- Ben drives to Zoe's address taking load off the state evacuee centre and distributing traffic to avoid bottlenecks as not everyone is heading to the same place.
Example Scenario 2:- Ben is registered on EvacuAID and sees he has a high score of 85% based off historic FIRMS data
- Implying he is in a high risk area for wildfires.
- Concerned Ben opens the live events tab to see what data is involved in this score.
- Ben then opens the EvacuBot and asks to learn about fire prevention using voice interaction.
- Ben learns there are several things his local area can do to help prevent/mitigate wildfire in advance.
- Ben forms a collective on the platform (*page for building and managing not complete in this weekend)
- Ben's collective decide on an action plan and pool money for this using the "Donate to your collective" which uses Stripe to collect money via major credit and debit cards.
Technologies used:
- NASA's Fire Information for Resource Management System (FIRMS)
- React JS Frontend single page application
- AWS Cognito for user authentication and email verification
- AWS Lambda & API Gateway for scalable event driven microservices in Python (for FIRMS polling and event detection) and JavaScript for application logic and phone/SMS events.
- AWS Dynamo DB as a highly scalable low latency database for event data, user data and collectives.
- AWS S3, Cloudfront and Route53 for the frontend hosting
- Twilio for programable voice interaction over phone and SMS notifications
- ZenDesk for live support centre
- Stripe to take funds for collectives
- react-simple-chatbot for the chatbot with voice interaction (an AWS Lex model was built but not integrated in time)
- Google Maps API to convert address to lat/long for the score computation with cluster data.
Future work
- Use NASA’s LANCE data to mitigate other natural disasters like floods and cyclones.
- Use AWS Lex to build a more complex chatbot to interact with people on Twitter to educate on natural disasters.
- Use AWS Kinesis with AWS Comprehend to process live Twitter data to interact with people in need and wanting to help in a crisis - driving them to EvacuAID
- Build out the "Collective" creation page to allow collective prevention and education.
https://evacuaid.me
https://github.com/williamdclt/evacuaid
https://docs.google.com/presentation/d/1KYCXsWSVCw120Gj_3y6inNdjWaKLZzVuBAzHfKjw7Cw/edit#slide=id.g623e33b9bd_0_173