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

Owner
Jerry Lee
software engineer
Jerry Lee
Kennedy Institute of Rheumatology University of Oxford Project November 2019

TradingBot6M Kennedy Institute of Rheumatology University of Oxford Project November 2019 Run Change api.txt to binance api key: https://www.binance.c

Kannan SAR 2 Nov 16, 2021
AWS Glue ETL Code Samples

AWS Glue ETL Code Samples This repository has samples that demonstrate various aspects of the new AWS Glue service, as well as various AWS Glue utilit

AWS Samples 1.2k Jan 03, 2023
sportsdataverse python package

sportsdataverse-py See CHANGELOG.md for details. The goal of sportsdataverse-py is to provide the community with a python package for working with spo

Saiem Gilani 37 Dec 27, 2022
This tool parses log data and allows to define analysis pipelines for anomaly detection.

logdata-anomaly-miner This tool parses log data and allows to define analysis pipelines for anomaly detection. It was designed to run the analysis wit

AECID 32 Nov 27, 2022
collect training and calibration data for gaze tracking

Collect Training and Calibration Data for Gaze Tracking This tool allows collecting gaze data necessary for personal calibration or training of eye-tr

Pascal 5 Dec 17, 2022
DataPrep — The easiest way to prepare data in Python

DataPrep — The easiest way to prepare data in Python

SFU Database Group 1.5k Dec 27, 2022
Processo de ETL (extração, transformação, carregamento) realizado pela equipe no projeto final do curso da Soul Code Academy.

Processo de ETL (extração, transformação, carregamento) realizado pela equipe no projeto final do curso da Soul Code Academy.

Débora Mendes de Azevedo 1 Feb 03, 2022
peptides.py is a pure-Python package to compute common descriptors for protein sequences

peptides.py Physicochemical properties and indices for amino-acid sequences. 🗺️ Overview peptides.py is a pure-Python package to compute common descr

Martin Larralde 32 Dec 31, 2022
Hydrogen (or other pure gas phase species) depressurization calculations

HydDown Hydrogen (or other pure gas phase species) depressurization calculations This code is published under an MIT license. Install as simple as: pi

Anders Andreasen 13 Nov 26, 2022
A tool to compare differences between dataframes and create a differences report in Excel

similarpanda A module to check for differences between pandas Dataframes, and generate a report in Excel format. This is helpful in a workplace settin

Andre Pretorius 9 Sep 15, 2022
Reading streams of Twitter data, save them to Kafka, then process with Kafka Stream API and Spark Streaming

Using Streaming Twitter Data with Kafka and Spark Reading streams of Twitter data, publishing them to Kafka topic, process message using Kafka Stream

Rustam Zokirov 1 Dec 06, 2021
Snakemake workflow for converting FASTQ files to self-contained CRAM files with maximum lossless compression.

Snakemake workflow: name A Snakemake workflow for description Usage The usage of this workflow is described in the Snakemake Workflow Catalog. If

Algorithms for reproducible bioinformatics (Koesterlab) 1 Dec 16, 2021
Statistical Rethinking: A Bayesian Course Using CmdStanPy and Plotnine

Statistical Rethinking: A Bayesian Course Using CmdStanPy and Plotnine Intro This repo contains the python/stan version of the Statistical Rethinking

Andrés Suárez 3 Nov 08, 2022
PLStream: A Framework for Fast Polarity Labelling of Massive Data Streams

PLStream: A Framework for Fast Polarity Labelling of Massive Data Streams Motivation When dataset freshness is critical, the annotating of high speed

4 Aug 02, 2022
Python library for creating data pipelines with chain functional programming

PyFunctional Features PyFunctional makes creating data pipelines easy by using chained functional operators. Here are a few examples of what it can do

Pedro Rodriguez 2.1k Jan 05, 2023
Data Scientist in Simple Stock Analysis of PT Bukalapak.com Tbk for Long Term Investment

Data Scientist in Simple Stock Analysis of PT Bukalapak.com Tbk for Long Term Investment Brief explanation of PT Bukalapak.com Tbk Bukalapak was found

Najibulloh Asror 2 Feb 10, 2022
Pyspark project that able to do joins on the spark data frames.

SPARK JOINS This project is to perform inner, all outer joins and semi joins. create_df.py: load_data.py : helps to put data into Spark data frames. d

Joshua 1 Dec 14, 2021
Sensitivity Analysis Library in Python (Numpy). Contains Sobol, Morris, Fractional Factorial and FAST methods.

Sensitivity Analysis Library (SALib) Python implementations of commonly used sensitivity analysis methods. Useful in systems modeling to calculate the

SALib 663 Jan 05, 2023
Jupyter notebooks for the book "The Elements of Statistical Learning".

This repository contains Jupyter notebooks implementing the algorithms found in the book and summary of the textbook.

Madiyar 369 Dec 30, 2022
This repo contains a simple but effective tool made using python which can be used for quality control in statistical approach.

This repo contains a powerful tool made using python which is used to visualize, analyse and finally assess the quality of the product depending upon the given observations

SasiVatsal 8 Oct 18, 2022