:zap: Dynamic Portfolio Optimization for Virtual Power Plants

As a member of the “Dynamic Portfolio Optimization for Virtual Power Plants” project at the University of Oldenburg, I contributed to the development and implementation of POWDER (Profit Optimization With Distributed Energy Resources) from its inception. The project aimed to optimize energy trading strategies for virtual power plants that integrate distributed renewable energy resources.

Project Overview

The rise of renewable energy has made integrating decentralized energy assets into the market increasingly challenging. To address this, our project focused on developing a system that optimizes product portfolios and generation schedules for virtual power plants, ensuring regulatory compliance while maximizing profitability. Our solution utilized machine learning for market forecasting, integrating heuristic optimization methods such as simulated annealing alongside linear programming. The system context is illustrated in the following diagram:

vpp-systemcontext.png

Key Technologies and Tools

We structured the project using a hybrid development methodology called “ScrUP”, which combines elements of Scrum and the Unified Process. This approach enabled efficient task management, iterative testing, and a systematic framework for problem-solving. The key technologies and tools utilized were:

Outcome

The POWDER system successfully demonstrated the potential of automated portfolio optimization for virtual power plants, effectively tackling challenges in product selection and operational planning. Below is a screenshot of an operation plan as visualized in the GUI:

powder-screenshot-einsatzplan.png

Learnings

My role in this project significantly deepened my understanding of energy market dynamics, machine learning, and optimization algorithms, as well as collaborative software development methodologies tailored for complex, real-world applications. Additionally, this project reinforced my understanding that investing in solid software architecture and consistent testing yields substantial long-term benefits, significantly outweighing the initial costs and effort.

In future projects, I plan to follow these principles: