IT in der Energiewirtschaft

Übungskurs – Sommersemester 2026


⚑ Praxisorientierte Programmierung für die Energiebranche

Über mich

Marco Obermeier
Wissenschaftlicher Mitarbeiter – Smart Battery [1]

Ausbildung

  • Elektroniker fΓΌr Automatisierungstechnik
  • Staatlich geprΓΌfter Elektrotechniker
  • B. Sc. Technische Informatik, OTH Regensburg
  • M. Sc. Data Engineering in Energietechnik
    – Masterarbeit bei N-ERGIE [2]
    – Forschungsassistent am Energiecampus Feuchtwangen [3]

Beruflich

  • Programmierer im Sondermaschinenbau
  • Werkstudent in Forschungs- & Entwicklungsteams
  • Wiss. Mitarbeiter bei Veronika Grimm, UTN NΓΌrnberg [4]
  • Wiss. Mitarbeiter bei Sepp Hochreiter, JKU Linz [5]

Kontakt

[1] HSWT – Smart Battery Projekt   [2] N-ERGIE AG   [3] Energiecampus Feuchtwangen   [4] UTN – Prof. Grimm   [5] JKU – Prof. Hochreiter

Das Ziel: Was ihr am Ende kΓΆnnt

Batterie-Optimierung am Day-Ahead-Markt

Marktpreise einlesen β†’ Optimierungsmodell bauen β†’ Fahrplan berechnen β†’ Ergebnis visualisieren

Kursaufbau

# Datum Thema Inhalt
0 23.03. Python-Grundlagen Variablen, Funktionen, Klasse Kraftwerk
1 30.03. Git Versionskontrolle & Zusammenarbeit
2 13.04. KI-Programmierung Prompting, Copilot, KI-Agenten
3 20.04. Zeitreihen CSV, pandas, Stromkosten berechnen
4 27.04. Plotting Matplotlib, Plotly, Dashboards
5 04.05. Optimierung Linopy β†’ PyPSA β†’ Batterie-Fahrplan
6 11.05. Regression PV-Prognose, Heizlast-Vorhersage
F 18.05.-29.06. Projekt-Feedback Sprechstunde & Zwischenstand
Z 06.07. AbschlussprΓ€sentation Projektvorstellung

πŸ“ Die Übungen enthalten jeweils ein Jupyternotebook mit Beispielen und Übungen

PrΓΌfungsleistung

Abschlussprojekt β†’ 30% der Note

  • 4er Gruppen
  • Abgabe der Jupyter Notebooks in Github
  • Vorstellung des Projekts und des Notebooks
    • Codesicht (Wie?)
    • Entwicklungssicht (Womit?)
    • Energiewirtschaftliche Sicht (Was?)
  • AbschlussprΓ€sentation: [06.07./ 09.07.]

Klausur

  • EnthΓ€lt Fragen zu Übungen und Projekt
  • Code lesen & verstehen
  • Ergebnisse interpretieren
  • Keine Programmierung am PC
  • Fragen zu Git

⚠️ Die Übung zÀhlt 30% der Gesamtnote. ZusÀtzlich kommen Übungsinhalte in der Klausur dran!

Projektthemen

# Thema Beschreibung Kategorie
1 GreenGrid Compass API [1] EU-Stromdaten abrufen & visualisieren 🌐 API & Zeitreihen & Visualisierung
2 EuropÀische Analyse [2] Balkendiagramme für jÀhrlichen europÀischen Lastvergleich 🌐 API & Zeitreihen & Visualisierung
3 Open-Meteo Wetter-API [3] PV-Erzeugung mit Wetterdaten, Korrelationsanalyse 🌐 API & Zeitreihen & Visualisierung
4 Sankey-Diagramm Deutschland [4][5][6] EnergieflΓΌsse visualisieren: PrimΓ€renergie β†’ Endenergie πŸ“Š Visualisierung
5 7-Tages-Boxplot-Dashboard Lastprofil-Verteilungen, Wochentag-Vergleich πŸ“Š Zeitreihen & Visualisierung
6 Batteriespeicher-Optimierung Day-Ahead-Markt mit PyPSA, Erlâsmaximierung ⚑ Optimierung
7 WÀrmepumpen-Optimierung COP-Modellierung + Optimierung, Stromkosten minimieren ⚑ Optimierung
8 PV-Ertragsprognose Regression mit Wetterdaten, Entscheidungsbaum vs. Linear πŸ€– Prognose & ML
9 Netzanalyse Erstellung eines Netzanalyse Beispiels mit pandapower πŸ”Œ Netzanalyse
10 Eigenes Thema SelbstgewÀhlte Fragestellung mit energiewirtschaftlichem Bezug (nach Absprache) 🎯 Freie Wahl
[1] GreenGrid Compass API   [2] ENTSO-E Transparency Platform   [3] Open-Meteo Weather API   [4] Sankey Diagrams – data-to-viz.com   [5] Sankey Diagram DE   [6] Energy Charts DE 2025

Setup

git clone https://github.com/OberMarco/IT-in-Energy-pub.git
cd it-energiewirtschaft-kurs
conda env create -f environment.yml

code
--> Kernel "environment_it_energy" auswΓ€hlen

βœ… Bitte vor der ersten Übung installieren und 00_Test_Installation.ipynb ausfΓΌhren!

https://github.com/OberMarco/IT-in-Energy-pub

Übung 0 – Python-Grundlagen

🐍

Python: Die meistverwendete Programmiersprache

TIOBE Index MΓ€rz 2026 – Top 5: [1]

# Sprache Anteil
1 Python πŸ† ~23%
2 C ~11%
3 Java ~9%
4 C++ ~9%
5 C# ~7%

Python ist seit 2021 die #1 – getrieben durch Data Science, KI und Automatisierung.

In der Energiewirtschaft:

  • Stadtwerk-Skripte fΓΌr Analyse & Automatisierung
  • FΓΌhrende Open-Source-Bibliotheken wie PyPSA [2], pandapower [3] und oemof [4] bauen auf Python auf
  • Marktdaten-Analyse & Zeitreihenverarbeitung
  • Optimierung & Prognose

β†’ Notebook in 0_Wiederholung_Python

[1] TIOBE Index, MΓ€rz 2026   [2] pypsa.org   [3] pandapower.org   [4] oemof.org

Übung 1 – EinfΓΌhrung in Git

πŸ“¦

Git: Standard fΓΌr Versionskontrolle & globale Kollaboration

Linus Torvalds (*1969)

  • Erfinder von Linux [1] (1991)
  • Erfinder von Git [2][3] (2005)
  • Git entstand in 2 Wochen aus Frust ΓΌber bestehende Tools

"I'm an egotistical bastard, and I name all my projects after myself. First Linux, now Git."

("git" = brit. Slang fΓΌr Idiot) [4]

β†’ Notebook 1_Intro_Git (Praxis im Terminal)

Warum Git?

  • Industriestandard – ΓΌberall genutzt
  • Zusammenarbeit im Team
  • Nachvollziehbarkeit jeder Γ„nderung

Bekannte Git-Repos:

[1] kernel.org   [2] git-scm.com   [3] Chacon & Straub – Pro Git Book, 2014   [4] Why the 'Git' name?   [5] github.com/python/cpython   [6] github.com/mozilla/gecko-dev   [7] github.com/wikimedia/mediawiki   [8] android.googlesource.com   [9] github.com/PyPSA/pypsa

Übung 2 – KI-Programmierung

πŸ€–

Andrej Karpathy & die Zukunft des Programmierens

Andrej Karpathy (*1986)

  • Ex-Director of AI bei Tesla
  • GrΓΌndungsmitglied von OpenAI [1]
  • Stanford PhD, YouTuber [2]

"The hottest new programming language is English." [3]

"There's a new kind of coding I call 'vibe coding'..." [4]

Die Stufen der KI-Programmierung:

Stufe Beispiel
1 Copilot vervollstΓ€ndigt Zeilen
2 ChatGPT schreibt Funktionen
3 KI-Agenten bauen ganze Projekte

⚠️ Ihr müsst den Code trotzdem verstehen!

β†’ Notebook in 2_KI_unterstuetzte_Programmierung

[1] openai.com   [2] youtube.com/@AndrejKarpathy   [3] Karpathy, X/Twitter, 2023   [4] Karpathy, X/Twitter, 2025

Übung 3 – Zeitreihen

πŸ“ˆ

Energiewirtschaft = Zeitreihen

Aus Sicht der IT ist die Energiewirtschaft eine riesige Zeitreihen-Datenbank:

Zeitreihe Quelle Typische Zeitl. GranularitΓ€t
Netzfrequenz Netzfrequenzmessung.de [1] ms – sekΓΌndlich
Haushaltslast Quaschning, HTW Berlin [2] sekΓΌndlich - 15 min
PV-Erzeugung Energy-Charts [3] 15 min
Strompreis Day-Ahead & Intraday EPEX Spot [4] 15 min / stΓΌndlich
Solare Einstrahlung PVGIS [5] / renewables.ninja [6] stΓΌndlich
Temperatur & Wetter Open-Meteo [7] stΓΌndlich
COβ‚‚-Zertifikate EEX [8] tΓ€glich
FΓΌllstand Gasspeicher GIE/AGSI [9] tΓ€glich
Installierte Leistung DE Energy-Charts [3] / ENTSO-E [10] monatlich-jΓ€hrlich
Installierte Leistung global IEA [11] jΓ€hrlich

β†’ Notebook in 3_Zeitreihen

[1] netzfrequenzmessung.de   [2] Lastprofile Quaschning, HTW Berlin   [3] energy-charts.info – Fraunhofer ISE   [4] epexspot.com   [5] PVGIS – EU JRC   [6] renewables.ninja   [7] open-meteo.com   [8] eex.com   [9] agsi.gie.eu – GIE   [10] transparency.entsoe.eu   [11] iea.org – International Energy Agency, 2025

Übung 4 – Plotting

πŸ“Š

Visualisierung in der Energiewirtschaft

Plots sind ΓΌberall:

  • Lastprofile & PreisverlΓ€ufe
  • MonatsverbrΓ€uche (Balken)
  • Jahresdauerlinien
  • Heatmaps (365 Γ— 24)

Gute Visualisierung = gute Entscheidung –
von der BetriebsfΓΌhrung bis zur Netzplanung.

"Above all else, show the data."
– Edward Tufte [5]

Inspiration & Tools:

β†’ Notebook in 4_Plots_in_Python

[1] python-graph-gallery.com   [2] plotly.com/python   [3] data-to-viz.com   [4] informationisbeautifulawards.com   [5] Five Laws of Data-Ink   [6] Tufte – The Visual Display of Quantitative Information, 1983

Plotly – Interaktive Diagramme

[1] Plotly Technologies Inc. – Collaborative data science, MontrΓ©al, QC, 2015   [2] ai-energy-consumption.plotly.app, abgerufen 2026

Übung 5 – Optimierung

βš‘πŸ”‹

Frameworks fΓΌr Energiesystem-Optimierung

In der Energiewirtschaft gibt es zahlreiche Open-Source-Frameworks:

Framework Fokus Entwickler
PyPSA [1] Strom- & Sektorenkopplung TU Berlin / KIT
oemof.solph [2] Flexibles Energiesystem-Modell Uni Bremen / DLR / RLI / Uni Flensburg
Linopy [3] Generischer LP/MILP-Wrapper TU Berlin
Pyomo [4] Allgemeines Optimierungsframework Sandia National Labs / IDAES
pandapower [5] Lastfluss & Netzanalyse Uni Kassel / Fraunhofer IEE

Wir nutzen Linopy [3] (einfaches Einstiegsbeispiel) und PyPSA [1] (Batterie-Optimierung) – beide basieren auf Python und nutzen den HiGHS-Solver [6].

β†’ Notebook in 5_Optimierung

[1] T. Brown et al., "PyPSA," J. Open Res. Softw., 2018   [2] U. Krien et al., "oemof.solph," Software Impacts, vol. 6, 2020   [3] F. Hofmann et al., "Linopy," J. Open Source Softw., 2023   [4] W. Hart et al., "Pyomo," Springer, 2017   [5] L. Thurner et al., "pandapower," IEEE Trans. Power Syst., vol. 33, no. 6, 2018   [6] Q. Huangfu & J. Hall, "HiGHS," INFORMS J. Comput., 2018

Übung 6 – Regression

πŸ“‰

Regression = das einfachste ML-Modell

Die lineare Regression ist der Einstieg in Machine Learning [1]:

KomplexitΓ€t
        β–²                                   Foundation Models / LLMs 
hoch    β”‚                              Deep Learning 
        β”‚                        Neural Networks
mittel  β”‚              Random Forest / Boosting
        β”‚        Polynomiale Regression
niedrig β”‚  Lineare Regression ◄── Übung
        └─────────────────────────────────────────────► VerstΓ€ndlichkeit
            hoch           mittel              niedrig

βœ… Wer lineare Regression versteht, hat das Fundament fΓΌr Machine Learning gelegt – mathematisch, konzeptionell und im Code (scikit-learn) [2].

β†’ Notebook in 6_Regression

[1] Fig. 2 aus: GridFM – Overview of ML methods in energy systems, Joule, 2024, doi: 10.1016/j.joule.2024.11.002   [2] F. Pedregosa et al., "scikit-learn," JMLR, vol. 12, 2011 – Linear Models Docs

TODO: Bild einfΓΌgen

![w:300](foto.jpg)

![w:280](linus_torvalds.jpg)

TODO: Bild einfΓΌgen

![w:280](andrej_karpathy.jpg)

TODO: Bild einfΓΌgen

Plotly HTML-Export einbinden: 1. In Python erzeugen: import plotly.graph_objects as go fig = go.Figure(...) fig.write_html("assets/chart_strompreise.html", include_plotlyjs="cdn", full_html=False) 2. Dann hier einbetten: