Inspiration
The inspiration for EasyBreathe came with a will to demonstrate how novel machine learning algorithms can have practical purposes in our development of environmental technology. Furthermore, it stems from a pressing need to address air pollution’s health and environmental impacts in North Carolina, a state with complex pollution sources and varied air quality. Recognizing that advanced machine learning could offer new insights, we aimed to create a project that demonstrates that environmental health is no exception to the AI/ML revolution we're currently in.
What it does
Trained on data collected from 20 different cities in North Carolina, including 3 of those in the RTP, EasyBreathe makes accurate predictions on the AQI and it predicts the Air Quality concern levels based on the U.S. Air Quality Index (https://www.airnow.gov/aqi/aqi-basics/). Mainly geared towards bettering the health awareness of UNC Chapel Hill's students, but applicable to individuals all over North Carolina, this web app utilizes extreme gradient boosting to make intelligent predictions and it even has capabilities to contact users through email!
How we built it
We built EasyBreathe using the XGBoost machine learning algorithm for accurate air quality predictions. The frontend was developed with React.js, while Flask served as the backend web framework to seamlessly connect the different components. We used a MySQL database to handle our data storage. To enhance the data visualization, we incorporated the Google Earth API, enabling live satellite imagery for real-time environmental insights.
Challenges we ran into
Finding the data to train the model was not very difficult. However, finding predictive data to make our project functional was a huge challenge. Additionally, making sure the database was having cells and values inserted into it was challenging as we ran into issues with merging the frontend and our backend.
In terms of developing the machine learning model, although the AQI concern levels seem to be a Classifier task, we found that the Regressor class seemed to produce more accurate results. Since we're unsure of why this is, we hope to uncover the true nuances of the algorithms that worked for us in this project.
Accomplishments that we're proud of
We were able to integrate a frontend with Google Maps that was connected to a Flask framework which also had an ML model that accurately predicts AQI. This was a challenging task since AQI can seem random and is reliant on a few parameters that we found difficult to gather data for. Eventually, perseverence taught us to have grit and patience and it all worked out in the end.
Furthermore, we'd love to give a huge shoutout to our frontend developer as our desgins look great for what we had to work with!
What we learned
Our team learned that one of the biggest motivations to get a product done is for there to be an important use case. The prospect of being able to benefit others with our knowledge was very exciting and drove us to complete the project, despite the many setbacks and hurdles. Knowing that our product could help someone confidently plan their day or protect their well-being made us understand the responsibility behind each feature we built. It taught us that the product’s purpose goes beyond technical accuracy; it's about reassurance, safety, and the chance to live life a little easier. Developing technology that can give people control over something as unpredictable as air quality has shown us how powerful it is to build tools help others live better, healthier lives. Our team was often times not working on the same thing, we all had a role and were expected to complete the role by each other. We had to then take everything we did and merge it together. Through this we learned how to collaborate together, but also play our part in a bigger whole. We are all in this together, our product is a combination of all our efforts.
What's next for EasyBreathe
Next for EasyBreathe is a series of expansions aimed at broadening its impact and accuracy.
- We plan to scale the project to provide worldwide air quality predictions, addressing pollution concerns on a global scale. We hope to achieve this by contacting relevant sources of the necessary data to train more models to make predictions. Hopefully, as our technical skills progress, we can find a way to use the same model for locations with similar attributes.
- We aim to expand the model to predict a wider range of environmental factors, offering a more comprehensive view of air quality influences. We also hope to predict potential natural disasters using environmental clues to further support communities who are at high risk of earthquakes, tsunamis, tornados etc.
By incorporating more parameters, EasyBreathe will deliver increasingly accurate predictions, proving itself to be a it a valuable tool and a proof-of-concept for environmental monitoring and action.
Log in or sign up for Devpost to join the conversation.