Forecast-Driven Multi-Market Optimization of Battery Energy Storage Systems
- Status
- Finished
- Type
- Master Thesis
- Announcement date
- 29 Oct 2026
- Student
- Julius Franzen
- Mentors
- Research Areas
Battery energy storage systems (BESS) are increasingly central to the profitability of renewable energy portfolios, yet existing dispatch optimizers typically operate with short planning horizons and no predictive capability beyond the current market interval. This thesis investigates whether machine-learning price and activation forecasts can extend the effective decision horizon of a BESS dispatch optimizer and, if so, by how much of the theoretical perfect-foresight revenue ceiling can be recovered in practice.
A modular simulation framework is developed in cooperation with SOLPRO GmbH, Graz, coupling a physics-based BESS model (20 MWh / 5 MW LFP, TU Graz Inffeldgasse) with a rolling LP/MILP dispatch optimizer and a walk-forward backtesting pipeline covering the full calendar year 2025. Three forecasting algorithms (SARIMA, XGBoost, and TiDE) are evaluated on Austrian day-ahead electricity prices using RMSE as the primary metric, and their forecasts are fed directly into the optimizer as planning inputs.
In the day-ahead-only scenario, XGBoost and TiDE recover 84.2% and 79.4% of the perfect-foresight revenue ceiling respectively, compared to 64.9 % for SARIMA, demonstrating that multivariate ML models substantially outperform univariate statistical baselines. The gap is concentrated in autumn and winter months, where price volatility exceeds the expressive capacity of SARIMA’s linear structure.
In the multi-market scenario (day-ahead and aFRR combined), perfect-foresight revenue reaches 2 985 801EUR, with aFRR activation accounting for 49.2% of the total. A capacity bid-placement model is introduced: the optimizer forecasts the aFRR clearing price per 4-hour procurement window and shades its bid by a margin calibrated to that model’s own forecast-error distribution, so that every scenario, including the naive baseline, is accepted in a realistic and comparable share of windows (approximately 40%, matching real-world aFRR bid-acceptance rates) rather than the near-total acceptance an unshaded bid would achieve. The naive baseline earns only 28.7% of the perfect-foresight multi-market revenue (855 735EUR). Because bid acceptance is equalized across scenarios, this gap reflects forecast quality within accepted windows rather than differential auction rejection, and the naive baseline’s aFRR activation revenue is still a factor of 3.0 lower than XGBoost’s. XGBoost, SARIMA, and TiDE recover 46.0%, 45.1%, and 45.8% of the ceiling respectively (1 373 690EUR, 1 345 360EUR, and 1 368 788EUR). Co-locating a 1 MWp PV array or a 3 MW wind turbine adds a near-uniform generation credit of 72 302EUR to 190 246EUR per year, largely independent of the forecast model.
The results confirm that forecast quality translates into dispatch revenue in a non-linear fashion: tail forecast errors are disproportionately costly because the optimizer commits to charge and discharge schedules hours in advance. The optimisation and forecasting logic, its hyperparameters, and the fitted models are documented in full to support reproducible BESS dispatch research.
