We're Team Arson and we're using the power of predictive modeling to combat wildfires.

Overview

Logo We're Team Arson and we're using the power of predictive modeling to combat wildfires.

Arson Map

Inspiration

There’s been a lot of wildfires in California in recent years, and a lot of the most recent wildfires have been uncontained. The government does not have the capacity to deal with such a huge amount of wildfires so it has to pick and choose which fires to bring under control. This picking and choosing should be done based on wildfire and wind data in order to minimize the damage caused by wildfires We should also prioritize mitigating fires that can spread across many counties/ have a large chance of spreading further

What it does

Our project consists of a web app with an interactive map. We represent our wildfire as a MDP and determine how at risk counties are based on the fire location(s).

How we built it

We split the project into 2 main parts: web app and AI

Website

Artificial Intelligence

  • Represent the wildfire as a MDP (Markov Decision Process)
    • States: Counties
    • Actions: Traversing Counties
    • Probability distribution: generated from wind data
    • Transition Model: generated from wind data
    • Reward function: Uniform for every county burned (prone to change if scaled up)
  • Use bellman equation to iterate through counties and propagate the fire
    • Utility values ranging between 0 and 1 represent how at risk a county is
    • Screenshot
    • Run until utility values reach equilibrium or until 100 iterations are run
    • Gamma = 0.8
  • Represent the map as a graph
    • Counties are nodes
    • Wind speeds are edges
    • Assign each county with a risk (for reward function)
    • Spawn fires on specific counties

Challenges we ran into

Our project has a pretty large scope. We needed to develop a model and integrate it with a web app. This required extensive knowledge on AWS utilities and crisp communication between team members. The machine learning portion of this hackathon was difficult as we had to decide on what type of model to use for the wildfire and how to assign reward and utility values.

Accomplishments that we're proud of

We were able to integrate the web app with the model really quickly. This was surprising since usually connecting the pieces together will have a lot of bugs. It was also Austin, Raaj, and Romuz's first hackathons and this was a fairly complex project compared to a standard web app.

What we learned

This hackathon was a first for many of us. This was the first time any of us had implemented a machine learning model and connected it to a web app.

This was my first time at a hackathon and I couldn't have asked for better teammates than Jerry, Raaj, and Romuz. I learned so much over the last two days about machine learning, data science, React, and working as a team to help tackle some of California's greatest challenges. - Austin Rivard

As a first-year student, I have learned a lot of new skill sets while working with this team. I was happy to be a member of such an agile team. I learned numerous of new concepts, such as working with AWS, writing algorithms, and the graph data structures. - Romuz Abdulhamidov

What's next for Arson

  • Scale up to entire California to generate a better map during wildfire season
  • Generate more accurate Reward values for each county burned
  • Incorporate type 2 rewards based on R(state, action)
    • Wildfire gets bigger as it burns more land
    • Wildfire gets smaller in the presence of firefighters
  • Automatically train and deploy models by integrating real-time data for wind and wildfires

Demo

Screenshot

You might also like...
A Pythonic introduction to methods for scaling your data science and machine learning work to larger datasets and larger models, using the tools and APIs you know and love from the PyData stack (such as numpy, pandas, and scikit-learn).

This tutorial's purpose is to introduce Pythonistas to methods for scaling their data science and machine learning work to larger datasets and larger models, using the tools and APIs they know and love from the PyData stack (such as numpy, pandas, and scikit-learn).

 🧪 Panel-Chemistry - exploratory data analysis and build powerful data and viz tools within the domain of Chemistry using Python and HoloViz Panel.
🧪 Panel-Chemistry - exploratory data analysis and build powerful data and viz tools within the domain of Chemistry using Python and HoloViz Panel.

🧪📈 🐍. The purpose of the panel-chemistry project is to make it really easy for you to do DATA ANALYSIS and build powerful DATA AND VIZ APPLICATIONS within the domain of Chemistry using using Python and HoloViz Panel.

Created covid data pipeline using PySpark and MySQL that collected data stream from API and do some processing and store it into MYSQL database.
Created covid data pipeline using PySpark and MySQL that collected data stream from API and do some processing and store it into MYSQL database.

Created covid data pipeline using PySpark and MySQL that collected data stream from API and do some processing and store it into MYSQL database.

A real-time financial data streaming pipeline and visualization platform using Apache Kafka, Cassandra, and Bokeh.
A real-time financial data streaming pipeline and visualization platform using Apache Kafka, Cassandra, and Bokeh.

Realtime Financial Market Data Visualization and Analysis Introduction This repo shows my project about real-time stock data pipeline. All the code is

DenseClus is a Python module for clustering mixed type data using UMAP and HDBSCAN

DenseClus is a Python module for clustering mixed type data using UMAP and HDBSCAN. Allowing for both categorical and numerical data, DenseClus makes it possible to incorporate all features in clustering.

Evidence enables analysts to deliver a polished business intelligence system using SQL and markdown.
Evidence enables analysts to deliver a polished business intelligence system using SQL and markdown.

Evidence enables analysts to deliver a polished business intelligence system using SQL and markdown

Using Python to scrape some basic player information from www.premierleague.com and then use Pandas to analyse said data.
Using Python to scrape some basic player information from www.premierleague.com and then use Pandas to analyse said data.

PremiershipPlayerAnalysis Using Python to scrape some basic player information from www.premierleague.com and then use Pandas to analyse said data. No

Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.
Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.

Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.

 A data analysis using python and pandas to showcase trends in school performance.
A data analysis using python and pandas to showcase trends in school performance.

A data analysis using python and pandas to showcase trends in school performance. A data analysis to showcase trends in school performance using Panda

Owner
Jerry Lee
software engineer
Jerry Lee
Performance analysis of predictive (alpha) stock factors

Alphalens Alphalens is a Python Library for performance analysis of predictive (alpha) stock factors. Alphalens works great with the Zipline open sour

Quantopian, Inc. 2.5k Jan 9, 2023
PyPSA: Python for Power System Analysis

1 Python for Power System Analysis Contents 1 Python for Power System Analysis 1.1 About 1.2 Documentation 1.3 Functionality 1.4 Example scripts as Ju

null 758 Dec 30, 2022
Probabilistic Programming in Python: Bayesian Modeling and Probabilistic Machine Learning with Theano

PyMC3 is a Python package for Bayesian statistical modeling and Probabilistic Machine Learning focusing on advanced Markov chain Monte Carlo (MCMC) an

PyMC 7.2k Dec 30, 2022
Statsmodels: statistical modeling and econometrics in Python

About statsmodels statsmodels is a Python package that provides a complement to scipy for statistical computations including descriptive statistics an

statsmodels 8k Dec 29, 2022
OpenDrift is a software for modeling the trajectories and fate of objects or substances drifting in the ocean, or even in the atmosphere.

opendrift OpenDrift is a software for modeling the trajectories and fate of objects or substances drifting in the ocean, or even in the atmosphere. Do

OpenDrift 167 Dec 13, 2022
BioMASS - A Python Framework for Modeling and Analysis of Signaling Systems

Mathematical modeling is a powerful method for the analysis of complex biological systems. Although there are many researches devoted on produ

BioMASS 22 Dec 27, 2022
A real data analysis and modeling project - restaurant inspections

A real data analysis and modeling project - restaurant inspections Jafar Pourbemany 9/27/2021 This project represents data analysis and modeling of re

Jafar Pourbemany 2 Aug 21, 2022
PyStan, a Python interface to Stan, a platform for statistical modeling. Documentation: https://pystan.readthedocs.io

PyStan PyStan is a Python interface to Stan, a package for Bayesian inference. Stan® is a state-of-the-art platform for statistical modeling and high-

Stan 229 Dec 29, 2022
A Python package for the mathematical modeling of infectious diseases via compartmental models

A Python package for the mathematical modeling of infectious diseases via compartmental models. Originally designed for epidemiologists, epispot can be adapted for almost any type of modeling scenario.

epispot 12 Dec 28, 2022
Flood modeling by 2D shallow water equation

hydraulicmodel Flood modeling by 2D shallow water equation. Refer to Hunter et al (2005), Bates et al. (2010). Diffusive wave approximation Local iner

null 6 Nov 30, 2022