I’m currently writing a Master Thesis which deals with the optimization of power flows in virtual power plants.
I’m now trying to use oemof to create a dispatch timetable for a given virtual power plant in a distribution grid. I’d like to have this timetable express when to charge or discharge a battery, when to run the CHP and when to buy/sell electricity through direct marketing to gain maximum profit. Is this actually possible with this framework?
If yes, how can I model direct marketing with it? I tried defining it as a Sink for selling while using price-timelines as variable costs, but this is not working as intended.
Thank you
I don’t know how to properly set the parameters of this. What should I set for nominal value for example? Same thing is for bought electricity from the grid - I want the system to yield maximum profit in a certain timeframe. I have the loadshapes of all components (baseload_el, baseload_th, PV, wind) and try to find the optimal operating strategy for CHP, heatpump and batteries.
Is there a way I can get this from the model?
I already replied to your mail. To get everyone informed, I post our mail conversation
Hallo Herr Pleßmann,
mein Name ist Steven Kaimonoff und ich schreibe grade meine Masterarbeit zur Optimierung von Lastflüssen in einem virtuellen Kraftwerk.
Nun bin ich bei meinen Recherchen auf das Framework oemof gestoßen welches Sie ja mitbetreuen.
Im Rahmen meiner Arbeit soll ich für ein virtuelles Kraftwerk, in dem sich PV-Anlagen, Windräder, BHKWs, Wärmepumpen, Batteriespeicher etc. befinden, einen optimalen Fahrplan ermitteln.
D.h. zum Beispiel: wann wird der Energiespeicher geladen? Wann wird Energie in die Batteriespeicher eingespeichtert und wann ausgespeichert?
Das alles soll unter dem Gesichtspunkt von maximalem Erlös durch direktvermarktetem Strom erfolgen.
Ist solch eine Fahrplanerstellung mit oemof in diesem Rahmen überhaupt möglich? Können solche binären Zustände wie Einspeichern/Ausspeichern überhaupt berechnet und dargestellt werden? Wenn ja, wie kann ich die Direktvermarktung im Modell darstellen? Ich möchte Strompreiszeitreihen der Bundesnetzagentur verwenden.
Viele Fragen auf einmal ich weiß, aber ich hoffe, Sie können mir weiterhelfen!
Vielen Dank im Voraus und viele Grüße,
Steven Kaimonoff
Hallo Herr Kaimonoff,
freut mich zu hören, das Sie oemof für ihre Arbeit verwenden wollen!
Dort sollten Sie ausreichend Inspiration bekommen, so dass sie ihr Modell erstellen können.
Bezüglich der Modellierung der Direktvermarktung muss man dann wohl ein MILP Modell formulieren. Geht aber auch mit oemof.solph. Man sollte sich nur über die wesentlicher höhere Komplexität eines MI(L)P Modells im Klaren sein.
Bei solchen Cross-Postings, geben Sie bitte jeweils die Links an. Dann wird der Gesamtaufwand für uns oemof developer geringer. Ich sehe, Sie sind mit Uwe Krien im Austausch. Da haben Sie einen kompetenten Ansprechpartner!
Besten Grüße
Guido Pleßmann
You should, we are short on time. Often we provide help to oemof newbies in our free time. So, if you make it as easy as possible to answer your questions, chances of getting help are more likely. Therefore, please
Provide a mathematical formulation of your modelling approach
Thank you for your reply!
I already checked the examples but couldn’t find anything which resembles a direct marketing approach or let alone a MILP problem, that’s why I had to ask! Maybe someone has a code example or some literature?
True, an example of direct marketing is not included in the examples. Maybe it was never with oemof.solph. I’d suggest to abstract your problem a bit and ask yourself “what does direct marketing by responding to a market price signal mean more generalized”. Quick answer: the virtual power plant should sell electricity if the electricity price reaches a certain limit.
Then, start reading how MI(L)P modelling works and write down the equations/inequations in plain math (you’ll need it for your thesis anyway!).