12: Predicting Voltages in Substations

Prediction of Voltages in Substations for Grid Stabilisation

⛶  Fullscreen ↓  Download
Demo

For grid stabilization, operators of different voltage levels have target voltage schedules. These support grid stabilization. It is possible to influence the voltage in a substation with shunt reactors via reactive power compensation. Turning these shunt reactors on or off causes transients, which in turn cause wear and tear on the components of the substation and the shunt reactor. This means a grid operator wants to minimize the number of on/off switches of the shunt reactor while still using it to keep the voltage in the substation as close as possible to the target voltage published by the higher voltage level grid operator. We have time series measurements and target voltages for several of our substations with shunt reactors and aim to train a model that can tell us when to turn the shunt reactors on or off.

Challenge Owner: Axpo Grid AG

  • Nicolas Pelzmann
  • Tobias Schmocker
  • Sandro Renggli

edh2023

Thanks for choosing Axpo's challenge, Predicting Voltages in Substations, for the Energy Data Hackdays 2023. We're glad you're here!

Getting Started

This README will guide you through the process of setting up your environment and working on the challenge. By the end of this guide, you'll be ready to dive into the provided datasets, create your predictive model, and help us improve grid stabilization.

Prerequisites

Before you begin, please ensure you have the following prerequisites:

  1. Access to the VM with Jupyter Hub: We've provided a virtual machine with Jupyter Hub installed. This will serve as your development environment. Just go to our Jupyter Hub and sign in with a username (no special characters or spaces) and password of your choosing - just don't forget it.

You can also develop on your local machine if you prefer. Talk to us about getting the dataset onto your local machine.

Setting Up Your Environment

Follow these steps to set up your environment and start working on the challenge:

  1. Access Jupyter Hub: Open your web browser and navigate to the provided URL for Jupyter Hub. Log in using your credentials.

  2. Clone the Git Repository: Open a terminal and clone this repo console git clone https://github.com/axpogroup/edh2023.git cd edh2023

  3. Accessing Datasets: The training and validation datasets for both substations are located in the /data directory on the Jupyter Hub VM. You can copy them to the data directory with console cp /home/data/data.zip ~/edh2023/data.zip unzip data.zip

  4. Installing Dependencies: Create a virtual environment to install dependencies: console python -m venv .venv Activate the virtual environment console source .venv/bin/activate To ensure your environment has the necessary packages, run the following command: console pip install -r requirements.txt Register the virtual environment as ipykernel: console python -m ipykernel install --user --name=edh_venv It will take a few seconds for the new environment to show up as an available. You can open the sample_notebook.ipynb and select the environment as kernel once it is and get going with digging into the details.

    Understanding the Challenge

Before you start coding, it's important to grasp the problem at hand:

  • You are provided with time series of substation measurements, energy production, weather data, and target voltages for two substations with shunt reactors.

  • The goal is to create a model that can predict voltages in the substation such that, based on these predictions, one can decide when to turn the shunt reactors on or off to keep the measured voltage close to the target voltage. You should keep the average number of on-off/off-on switches below 2/day to limit wear and tear on system components. One of the main challenges herein is

Your Task

Your main task is to develop a predictive model that predicts the voltage in each substation and that can effectively recommend when to activate or deactivate shunt reactors in order to stabilize the grid voltages. Use the provided datasets to train and validate your model. They contain weather, electricity production, and grid measurement data. Take a look at the sample_notebook.ipynb to get started with analyzing the data.

Feel free to explore different machine learning algorithms, techniques, and preprocessing methods. Don't hesitate to innovate and experiment!

Evaluation

You can evaluate your model with either the root mean square error for the voltage prediction or utils.eval.alternative_strategy_reward. Both of these are relevant metrics for us.

Need Help?

If you encounter any issues during the challenge or have questions about the provided datasets, feel free to ask one of us for help.

Happy coding!

This content is a preview from an external site.
 

Edited (version 7)

1 year ago ~ gaston_energy

Research

Event finish

Joined the team

1 year ago ~ nicolas_pelzmann

Cool chart 🤩

1 year ago ~ oleg

Image caption

1 year ago ~ alison_fersch

virtual voltages calc function (@Nicolas Pelzmann)

Joined the team

1 year ago ~ nicolas_dallo

Start

Repository updated

1 year ago ~ oleg

Edited (version 1)

1 year ago ~ gaston_energy
 
All attendees, sponsors, partners, volunteers and staff at our hackathon are required to agree with the Hack Code of Conduct. Organisers will enforce this code throughout the event. We expect cooperation from all participants to ensure a safe environment for everybody.

Creative Commons LicenceThe contents of this website, unless otherwise stated, are licensed under a Creative Commons Attribution 4.0 International License.