Projects

Stuff I'm building outside of work and school. Mostly experiments in AI and automation. I like tinkering with things that either don't exist yet or that I think I can make better for my own use.

completed

Bachelor thesis: wind power forecasting

Prognostic Horizons in Wind Energy — A Comparative Evaluation of Equation-Driven and Deep Sequence Models

My bachelor thesis at TUM's Professorship of Regenerative Energy Systems (Campus Straubing). Submitted October 2025, graded 1.0.

The question: when forecasting wind turbine power output 24 hours ahead, how do interpretable physics-driven models stack up against black-box deep learning, and is there a way to get the best of both?

What I did: built and benchmarked nine models on real SCADA data from the Kelmarsh wind farm (six turbines, 2018–2021). Three families: grey-box seasonal models (SINDy-style sparse regression), deep sequence models (LSTM, LSTM+attention, Seq2Seq, TCN), and a hybrid I designed called SINN that fuses a 3D-CNN spatiotemporal encoder with the grey-box model through a learned gate.

What I found: no single family dominated, but the hybrid SINN came out on top in MAE and R² overall. The grey-box's diurnal structure kept the long horizons sane; the neural network learned the residual nonlinearities the equations missed. Deep models alone were unstable across turbines, with Seq2Seq cheating the metrics by predicting smooth means.

Why this topic: I wanted a thesis that lived at the intersection of mechanical engineering and the machine-learning side I picked up during my Erasmus in Milan. Wind energy was the right fit: real physical system, real data, real reason to care about the answer.

Examined by Prof. Dr.-Ing. Matthias Gaderer; supervised by M.Sc. Lingga Aksara Putra

PythonPyTorchNumPy / Pandas / scikit-learnLSTM, Seq2Seq, TCN, attentionSINDy (sparse identification of dynamics)3D-CNN + grey-box hybrid (custom)LassoCV, Random Forest feature selection
in-progress

Multi-agent CV → Portfolio Pipeline

A system that takes a CV PDF and, through a chain of Claude Code subagents, spits out a fully built static portfolio site. There are four stages (extractor, interviewer, builder, and reviewer), and each stage hands off structured files (brief.md, spec.md, review.md) to the next, with human checkpoints in between so I can course-correct. The site you're reading right now was built by it.

Claude Code subagentsAstroMarkdown handoff files