Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

co2-scheduler

Alt text

This is a streamlit app to optimze your power consumption based on a model that predicts carbon dioxide emissions based on real time weather data. Feel free to experiment!

Here is a short video to showcase the main functionality (Depending on the browser, the link will initialize a download. In this case, simply open the downloaded video in the browser)

The app is currently deployed on co2-scheduler.streamlit.app, but might not be maintained in the future.

Feel free to experiment!

Project description

In 2023, the share of renewable electricity generation in Germany reached about 50%. Most of the renewable energy share comes from wind and solar, which are strongly varying throughout the day due to varying wind speeds and solar radiation. Therefore, the CO2 impact of electricity generation also fluctuates a lot:

Here, we show the carbon intensity of Germany electricity generation for January 2023, i.e., how many gramms of CO2 are emitted per kilo Watt hour (kWh) of generated energy. This number fluctuates a lot, it changes between about 200gCO2/kWh and 800gCO2/kWh!

Project goal:

The goal of this project was to build a web application to optimize the scheduling of electricity-heavy tasks to reduce their CO2 impact.

Streamlit app

  • First, we retrieve the weather forecast and use the model to predict the Co2 impact of electricity generation for the next five days:
  • Then, the user can add tasks from a dropdown menu and select the time and duration of each task
  • The CO2 footprint is then calculated, and an optimized schedule is proposed. The progress bar visualizes how close the selected schedule is to the optimal schedule.

Model

We trained an XGBoost model to predict the carbon intensity of electricity generation based on the forecast of regional weather data.

Data

To host the app locally:

  • Clone repository and navigate to repository folder
    • git clone git@github.com:cliedl/co2-scheduler.git
    • cd co2-scheduler```
  • Create virtual environment install dependencies (e.g., with uv):
    • uv init
    • uv pip install -r requirements
  • Run streamlit app
    • uv run streamlit run co2_scheduler.py

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages