Überlegungen: Energiemanager--> echter Energieoptimierer

Guten Morgen in die Community,

so kurz vorm Jahresende im Urlaub beschäftige ich mich aktuell mit der Energieoptimierung in meinem IPSymcon-System und habe mir nun endlich mal den Energiemanager angeschaut. Dieser verspricht ja eine Kostenersparnis, indem er Verbräuche und Akkuladungen so gestaltet, dass man Geld sparen könne. Soweit das Versprechen. Allerdings ist die Umsetzung eher rudimentär und noch ganz weit weg von einem System, welches den Energieverbrauch optimieren kann, denn eine Optimierung im eigentlichen mathematischen Sinne hat der Energiemanager nicht. Das führt sogar dazu, dass er unter bestimmten Bedingungen sogar richtig viel Energie und damit Geld verbrennt. Zudem versagt er in Systemen, bei denen der Akku wie bei mir zum Beispiel schon direkt über den Wechselrichter gesteuert wird. Im Nachfolgenden möchte ich auf die Probleme genauer eingehen und zunächst meine Energieerzeugung erläutern.

Ich habe eine 20 kWp PV-Anlage (Ost-West-Ausrichtung) und einen 30kWh Speicher im Keller stehen. Die PV-Anlage ist an zwei Kostal Plenticore Wechselrichtern angeschlossen. Der Speicher hängt an einem chinesischen Deye SUN12KSG04LP3EU. Der Deye hat intern schon eine Art optimierte Speichernutzung, da er am Hauptzähler über drei Stromfühler den Strom in und aus dem Netz auf allen drei Phasen in Echtzeit misst. Für den Deye habe ich ein Symcon-Modul entwickelt und kann dessen Verhalten recht gut steuern. Wenn zum Beispiel die PV-Anlage über die Plenticore WR viel Strom produziert, dann ‚saugt‘ der Deye die vom Einspeisepunkt weg und packt sie selbsttätig in den Speicher, sofern der noch nicht voll ist. Ist er voll, wird eingespeist.

1. Problem Akkuladung

Im Energiemanager kann man bekanntlich Akkus steuern. Das Ganze funktioniert auch, sofern ein variabler Stromtarif hinterlegt ist, als „Günstiger laden“. Hier sollte man vorsichtig sein, da das auch teuer werden kann. Jeder Akku hat beim Laden und entladen Verluste, teilweise je nach Hersteller sogar über 10%. Der Energiemanager verlangt die Angabe eines Preises bei dessen Unterschreitung der Akku aus dem Netz geladen wird. Die Ladeverluste werden hier aber nicht berücksichtigt, was dazu führt, dass bei nur leicht schwankenden Preisen um diese eingestellte Preisgrenze über den Tag der Akku unnötig geladen wird. Beispiel: Der Strompreis schwankt zwischen 25ct und 27ct. Eingestellte Preisgrenze ist 26ct. Geht der Preis darunter wird mit 10% Verlust in den Speicher geladen. Beim Entladen entstehen auch nochmal 10% Verlust, was die kWh dann gut 20% teurer macht, also diese dann nicht mehr 25ct sondern 30ct kostet, wenn sie am Verbraucher ankommt. Da wäre es sinnvoller auf die Akkuladung zu verzichten und lieber die 27ct direkt aus dem netz zu nehmen. Im Energiemanager müssen also auch die Lade- und Endladeverluste des Speichers berücksichtigt werden und die „Günstig Laden“ Funktion so angepasst werden, so dass der Speicher nur geladen wird, wenn die tägliche Schwankung des Strompreises größer ist als die Ladeverluste sind. Zudem sollte keine Fixe Preisgrenze vorgegeben sein, sondern es müsste intelligent geschaut werden wann laden des Speichers sinnvoll ist. Das wäre zumindest die einfachste und am schnellsten umsetzbare Variante. Besser und wirklich sinnvoll wäre aber die unter Punkt 3 genannte Variante. Dort kommen wir zu einem Grundproblem des Energiemanagers und IPSymcon allgemein.

3. Verbraucher Beispiel Wärmepumpe

Die Steuerung eines Verbrauchers wie einer Wärmepumpe erschließt sich mir überhaupt nicht, schon gar nicht das Fenster “intelligente Optimierung” mit der Beschriftung “Günstiges laden” in der Visualisierung. Eine Wärmepumpe muss dafür sorgen, dass die Bude warm wird, im Zweifel auch dann, wenn der Strom aus dem Netz teuer ist oder kein PV-Strom aus zur Verfügung steht oder der Akku leer ist. Hat man einen Warmwasserspeicher, dann kann man das Problem etwas entschärfen, aber dieser Speicher ist im Energiemanager nicht konfigurierbar. Man kann da mit den Bedingungen etwas hantieren, aber ich weiß nicht üb man damit alles wirklich optimal hin bekommt.

3. Prognosebasieter Energiemanager –> Energieoptimierer

So wie der Energiemanager derzeit umgesetzt ist, verschenkt er wertvolle potential und bares Geld. Richtig gut wird er erst durch Integration mehrerer Prognosen. Den Tibber- oder aWattar- Preis für den folgenden Tag hat man ja schon. Nun macht es aber keinen Sinn, den Speicher in der Nacht für 26ct voll zu laden, wenn am nächsten Tag die Sonne ordentlich scheint und die PV viel Strom produziert, den man dann für 8ct Einspeisevergütung an den Netzbetreiber verschenkt, weil der Speicher voll ist und nichts mehr aufnehmen kann. Hat man dann einen effektiv durch die Ladeverluste verschandelten Preis von 30ct am Verbraucher, wenn man doch den eigenen PV-Strom nutzen könnte, dann macht man mit jeder kWh gut 22ct Verlust!
Man kann über diverse Portale, zum Beispiel Solcast, eine recht gute Prognose des zu erwartenden PV-Ertrages der kommenden zwei Tage erhalten. Man könnte auch in Symcon eine Prognose über den Hausverbrauch rechnen lassen um grob abzuschätzen, was man am Folgetag an Strom verbraucht. Dazu gibt es jede Menge gute Prognosemodelle und das wird immer besser je mehr historische Daten man hat. Auch kann in die Optimierung der Ladebedarf des Elektroautos und insbesondere die möglichen Ladezeiten mit einberechnet werden. Oft ist es nämlich so, dass man eben nicht mittags laden kann, weil man da auf Arbeit ist eben nicht zu Hause an der Wallbox, obwohl man genau da den günstigen Solarstrom nutzen könnte. Stattdessen kann der derzeitige Energiemanager nur den vergleichsweise teuren Netzstrom in der Nacht benutzen. Ist die benötigte Lademenge des Autos für den Folgetag nur gering, dann kann es sich lohnen den Solarstrom in den Akku zu packen und selbst mir Verlusten dann abends und in der Nacht ins Auto zu verschieben.
Allerding bräuchte IPSymcon hierzu die Möglichkeit, in die Zukunft blicken zu können, um Prognosen abzubilden. Bis vor 10-15 Jahren war es in den meisten Leitsystemen nicht möglich zukünftige Zeitstempel in den Zeitreihen abzubilden. Ich habe damals auch Verrenkungen gemacht um Prognosen in OPC zu implementieren. Damals hat aber die OPC Foundation schon versucht, das Problem zu lösen. Leider bin ich aufgrund beruflicher Veränderung dann aus der OPC-Programmierung ausgestiegen und kenne den aktuellen Stand bei Leitsystemen nicht, so dass ich nicht weiß, wie weit IPSymcon da dem Stand der Technik hinterherhinkt bzw. welche Lösungen es da inzwischen gibt.

Ich habe mal versucht, so etwas wie das EOS vom Akkudoktor (EOS) in ein IPSModul zu packen, habe es aber aufgegeben, da der Aufwand, die für eine echte Optimierung nötigen Daten aus IPSymcon zu generieren zu kompliziert war. Vielleicht kann ja das IPSymcon Entwicklerteam sich das EOS mal anschauen und eine Lösung finden.

Ich versuche derweil wenigstens die Akkuladung im Energiemanager soweit hin zu bekommen, dass die über meinen Deye Wechselrichter, der quasi der Akku-Master im System ist, zu realisieren.

3 „Gefällt mir“

Problem Nummer 1 ist immerhin sehr einfach. Hier musst du einfach die Ladeverluste in die Preiskalkulation einbeziehen. :wink:

Die Werte sollte man auch von extern setzen können wie man alle Instanzen parametrieren kann. Somit könnte man die Schwelle auch Dynamisch setzen.

Problem 2 löse ich damit, dass ich nicht die WP/Heizung direkt Schalte sondern eher eine Sollwert-Verschiebung mache. Natürlich ist es dumm die Heizung im Winter nur ein zu schalten wenn die Sonne scheint.
Man kann es so aufbauen dass die WP den Kessel auf mind. 50 Grad hält. Bei Überschuss wird der Sollwert auf 80 Grad eingestellt. (fiktive Werte)

Problem 3 ist natürlich der heilige Gral :wink:
Natürlich wäre es sehr wünschenswert wenn die Steuerung das könne. Ich kann aber auch gut nachvollziehen, dass es gar nicht so einfach umzusetzen ist. Der Energiemanager hat mittlerweile schon eine gewaltige Komplexität. Dazu kommt dass jede Anlage anders ist und hier vermutlich sehr viel Feintuning notwendig ist. Der Energiemanager geht auf Nummer Sicher und arbeitet mit den aktuellen Werten.

Ich denke hier gibt es dennoch die Möglichkeit aufgrund der Vorhersage den Energiemanager zu übersteuern

  • verringern des max SOC
  • Verringern des max Ladestroms
  • Verschiebung der Zählerleistung (Eingang Energiemanger)

Der Speicher (Ladung/Entladung) steuert sich dabei immer noch selbst.

Damit kann man immer dafür Sorgen, dass mehr Leistung „verbraten“ wird als Eigenlich aktuell zur Verfügung stehen würde.

Ich denke wenn man versucht die Funktionen alle im Energiemanager abzubilden ist er einfach nicht mehr bedienbar.
Der Energiemanager hat alleine in den letzen Monaten wieder gewaltig an Komplexität zugenommen.
Ich denke mal wer so viel Gehirnschmalz in sein System reinstecken will findet mit dem Energiemanager eine gute Basis und kann seine Funktionen drum rum bauen.

Verbrauchs und Ertragsabschätzung steht bei mir auch noch auf der Wunsch- bzw. todo-Liste :wink:

Sehr gute Zusammenfassung. Das ist halt auch ein echt komplexes Thema. Das schaffen selbst die PV Hersteller nicht wirklich gut. Glaub E3dc hat dieses Jahr erst was raus gebracht. Bei mir mit Solaredge gibt es eine Cloud Lösung die auch ganz gut den Speicher in Zusammenspiel mit Tibber lädt und auch auf historische Werte und Prognosen zurückgreift. Das ist aber leider eine Blackbox wo man nicht sieht was geplant ist und auch nicht eingreifen kann. Da bekommt man aber auch einen Knoten im Kopf wenn man anfängt die Thematik zu durchdenken. Selbst wenn man die perfekte Strategie für die nächsten 24 Stunden hat… Alleine das reagieren auf Sondersituationen ist ja schon hoch komplex. Wenns dann blöd läuft und einer unplanmäßig das Auto laden muss ist alles für den Popo und wenn das System dann nicht passend reagiert kann’s richtig teuer werden. Ich bin jetzt weg von den dynamischen Tarifen und bin beim Octopus Heat gelandet. Da gibt nur drei Preise zu festen Zeiten. Das nimmt schon einiges an Komplexität aus dem System. Die zwei Stunden wo es teuer ist lassen sich gut planen und überbrücken.

Gruß Stephan

2 „Gefällt mir“

Nun, so komplex ist das Thema gar nicht. Auf den ersten Blick mag das so aussehen, wenn man versucht, eine ECHTE Optimierung mittels irgendwelcher festverdrahteten IF-Anweisungen hin zu bekommen. Dann wird das natürlich nichts, weil sich das dahinterliegende Algorithmenkonstrukt mit jedem neuen Gerät ändert. Das geht nur, wenn man die Algorithmen auf ein minimales Logisches Niveau zusammenstreicht. Dann ist es aber keine Optimierung mehr.

Wie geht es richtig? Eigentlich ganz einfach. Man braucht alle Zeitreihen als Prognose für die Zukunft, erstellt ein Gütefunktional und jagt das Ganze durch einen Optimierer, der genetische Algorithmen benutzt. Die braucht man, weil man unstetige Funktionen nicht mittels Gradientenverfahren lösen kann. Für Python gibt es sogar etliche Bibliotheken, die GAs anbieten. bei PHP sieht es etwas dünner aus, aber auch da wird man fündig. Notfalls hilft ein Blick in die Quellen vom Akkudoktor EOS.

Man könnte prinzipiell auch das Akkudoktor-EOS nehmen, muss aber die nötigen Daten zur Optimierung aus IPSymcon extrahieren und in eine JSON Datei Packen. Nach der Optimierung kann man das Ergebnis aus einer weitern JSON Datei abholen und importiert es wieder in Symcon. Das Problem dabei sind halt die besagten Beschränkungen in IPSymcon was daten in der Zukunft anbetrifft. Das Akkudoktor EOS gibt die Ergebnisse in Zeitreihenform für jeden Verbraucher, Akku, Elektroauto usw. zurück. Die müssten dann in IPSymcon in Zeitreihen gespeichert werden und der Energiemanager arbeitet diese Zeitreihen dann einfach ab. Fertig ist die Optimierung.

2 „Gefällt mir“

Ja, auf Basis von Prognosen geschickt vorab laden etc. ist definitiv super charmant, das verstehe ich. Ich empfinde das aber entgegen deiner Aussage als extrem kompliziert. Die Prognosen sind ganz bestimmt nicht einfach zu generieren. Klar, eine Vorhersage für den Solarertrag bekommt man bestimmt gut hin, aber das persönliche Verbrauchsverhalten des Nutzers ist da schon eine ganz andere Hausnummer. Was weiß ich, wer wann die Waschmaschine anmacht oder sein Auto zum Laden anschließt. Da Muster zu erkennen wie „Ich wasche normalerweise jeden Dienstag und Donnerstag, außer in den Schulferien, da bin ich in der Woche unterwegs und wasche intensiv am Wochenende.“ ist als reine Heuristik nahezu unmöglich.

Hier ist aber tatsächlich eine der ersten Symcon-Baustellen, bei denen ich mir vorstellen könnte, dass hier eine Anbindung an eine KI Sinn ergibt. Dann müsste das Modul alle relevanten Daten zusammentragen und in die KI des Vertrauens füttern. Die zurückgegebene Prognose kann dann im Laufe des Tages genutzt bzw. auch zwischendurch aktualisiert werden (nur weil morgens ein sonniger Tag vorhergesagt wird, kann das zum Mittag ja schon ganz anders aussehen…)

Aber auch das ist natürlich eine sehr umfangreiche Erweiterung des Energie Managers. Dennoch: Wir haben da definitiv auch Interesse mehr Intelligenz reinzubringen, das ist aber ganz bestimmt keine einfache Baustelle.

Als bisher Unbeteiligter.
Wie wäre es denn die Möglichkeit zu schaffen eine externe Prognose einbinden und verwenden zu können ?

1 „Gefällt mir“

Ich empfinde das aber entgegen deiner Aussage als extrem kompliziert. Die Prognosen sind ganz bestimmt nicht einfach zu generieren. Klar, eine Vorhersage für den Solarertrag bekommt man bestimmt gut hin, aber das persönliche Verbrauchsverhalten des Nutzers ist da schon eine ganz andere Hausnummer.

Ja, der Stromverbrauch eines Haushalts lässt sich aus Vergangenheitsdaten prognostizieren, aber die erreichbare Güte hängt selbstverständlich stark von Datenqualität, dem Zeithorizont (Minuten vs. Tage vs. Monate) und zusätzlichen Einflussgrößen (Wetter, Bewohnerverhalten) ab. Für sehr kurzfristige Vorhersagen (Stunden/Tag) sind Fehler von etwa 5–20 % realistisch, bei längerfristigen Prognosen (Monate/Jahr) werden die Unsicherheiten deutlich größer. Man braucht ja aber eigentlich nur Prognosen von max. 48h.

Zur Herangehensweise würde ich folgendes vorschlagen.

  • Es wird eine Zeitreihe des Hausstromverbrauchs genutzt (z.B. Messwert alle 15 min oder stündlich über Monate/Jahre).​

  • Typische Einflüsse, die mit modelliert werden sollten wären Wochentag/Feiertag, Uhrzeit, Außentemperatur, optional Haushaltsgröße,Bewölkung, Regen

Als Prognoseverfahren gibt es verschiedene Möglichkeiten. Da wären zum einen die klassischen statistischen Verfahren für Zeitreihenprognose:

  • ARIMA / SARIMA: Modelliert Autokorrelation und saisonale Muster (z.B. Tages- und Wochenrhythmus), gut für relativ „glatte“ Zeitreihen mit klaren Mustern.​

  • Exponentielle Glättung & ähnliche Modelle: Eignen sich für Lastgänge mit stabilen Trends und wiederkehrender Saisonalität, etwa für jahreszeitliche Verbrauchsmuster.​

Vorteil: Transparent, relativ einfach zu implementieren;
Nachteil: begrenzte Abbildung sehr nichtlinearer Verhaltensänderungen im Haushalt.​

Die Modernere Lösung wäre dann Machine Learning

  • Neuronale Netze (ANN, RNN, LSTM, CNN, ConvLSTM) werden häufig für Haushalts‑Lastprognosen eingesetzt und schlagen klassische Modelle insbesondere bei komplexen, nichtlinearen Mustern.​

Studien mit Smart-Home- oder Mehrparteiengebäuden zeigen, dass LSTM- oder CNN‑LSTM‑Modelle bei Kurzfristprognosen (Stunden bis Tage) deutlich geringere Fehler als ARIMA/ARIMAX erreichen; mittlere prozentuale Fehler (MAPE) liegen typischerweise im Bereich grob 5–25 % je nach Datensatz und Horizont.​ Moderne Ensemble-Methoden (z.B. LightGBM/XGBoost/CatBoost‑Kombinationen) werden speziell für Wohnlastprognosen getestet und liefern teils nochmals verbesserte Genauigkeit, insbesondere bei vielen Variablen.

Bei gut aufgelösten Smart‑Meter-Daten für den Hausverbrauch, ausreichend Historie und Berücksichtigung von Wetter/Temperatur sind mittlere Fehler im Bereich um 5–15 % erreichbar; in Einzelstudien werden teilweise noch geringere Abweichungen berichtet, abhängig von Gebäude und Datensatz.​ Für einzelne, stark verhaltensabhängige Haushalte (spontane Nutzung von Herd, Waschmaschine etc.) bleiben sprunghafte Ereignisse allerdings schwer exakt zu treffen. Da bin ich mir halt auch nicht sicher, ob man das nicht einfach ignorieren kann.

Letztendlich ist eine halbwegs gute Prognose immer noch besser als gar keine.

Wow, ich merke du bist da vom Fach oder hast dich zumindest umfassend informiert :+1:

Wie gesagt, wir wollen sowas bestimmt nochmal angehen, aber das ist keine Baustelle, die man man eben „dazwischen schiebt“. Daher habe ich aktuell auch noch keinen Zeitplan dafür parat.

Das ist bestimmt sinnvoll, um von dem Wissen derer zu profitieren, die bereits tief im Thema stecken und jahrelange Lernkurve hinter sich haben. Bitte nicht versuchen, das Rad mal eben neu zu erfinden.

1 „Gefällt mir“

Ich versuche, unsere Hausbatterie optimal zu laden und zu entladen – abhängig vom prognostizierten PV‑Ertrag, dem dynamischen Strompreis (Tibber) und dem prognostizierten Haushaltsbedarf. Da die Strompreise sich viertelstündlich ändern, läuft die Optimierung ebenfalls in einem 15‑Minuten‑Raster und wird alle 15 Minuten neu berechnet.

Aus meiner Erfahrung ist das ein ziemlich dickes Brett. Die Prognosen sind dabei noch der „einfachere“ Teil:

  • Die PV‑Prognose hole ich mir über die API von Solcast.[
  • Die Strompreise kommen über Tibber mit dynamischem Börsenpreismodell.
  • Den Haushaltsbedarf ermittle ich pragmatisch aus den zeitgleichen Verbrauchsdaten der letzten drei Tage.

Richtig komplex wird es in der eigentlichen Optimierung. Am Ende landet man bei recht umfangreichen Modellen der linearen Programmierung, die Zielkonflikte wie „möglichst günstig laden“ vs. „am Abend genug Energie im Speicher haben“ über einen Planungshorizont auflösen. Die resultierenden Modelle lassen sich in der Praxis nur noch mit externen Solvern in einer geeigneten Umgebung sauber lösen.

Ich nutze dafür AMPL als Modellierungsumgebung in Kombination mit dem Solver HiGHS, einem leistungsfähigen Open‑Source‑Solver für LP/MIP‑Probleme, der sich gut in AMPL integrieren lässt. Nach vielen Versuchen mit verschiedenen Solvern war HiGHS für mein Modell der beste Kompromiss aus Robustheit und Rechenzeit; aktuell liegt die Lösungszeit bei etwa 1–2 Minuten pro Optimierungslauf.

Als Ergebnis erhalte ich eine Matrix/Fahrplan auf 15‑Minuten‑Basis, in der für jedes Intervall z.B. SOC, PV‑Ertrag, Haushaltsbedarf, Netzbezug, Preise und der gewünschte Batteriemodus (Normal, Hold, Charge) sowie Lade‑/Entladeleistung stehen. Diese Matrix schreibe ich zurück nach Symcon und setze daraus im jeweiligen Zeitfenster den Batteriemodus bzw. die Soll‑Leistungen.

h SOC PV Bedarf Einkauf E-Preis Verkauf V-Preis Modus Laden Entladen
  kWh kWh kWh kWh €/kWh kWh €/kWh   kWh kWh
15:00 10,4 0,01 1,20 1,19 0,340 0,00 0,109Hold 0,00 0,00
15:15 10,4 0,01 1,20 1,19 0,348 0,00 0,109Hold 0,00 0,00
15:30 10,4 0,00 0,95 0,95 0,380 0,00 0,109Hold 0,00 0,00
15:45 10,4 0,00 1,15 1,15 0,368 0,00 0,109Hold 0,00 0,00
16:00 10,4 0,00 1,20 1,20 0,378 0,00 0,109Hold 0,00 0,00
16:15 10,4 0,00 0,95 0,95 0,379 0,00 0,109Hold 0,00 0,00
16:30 10,4 0,00 1,00 1,00 0,411 0,00 0,109Hold 0,00 0,00
16:45 10,4 0,00 0,65 0,00 0,418 0,00 0,109Normal 0,00 -0,65
17:00 9,7 0,00 1,20 0,05 0,417 0,00 0,109Normal 0,00 -1,15
17:15 8,4 0,00 1,05 0,00 0,429 0,00 0,109Normal 0,00 -1,05
17:30 7,3 0,00 0,85 0,00 0,472 0,00 0,109Normal 0,00 -0,85
17:45 6,4 0,00 0,90 0,00 0,471 0,00 0,109Normal 0,00 -0,90
18:00 5,4 0,00 1,00 0,00 0,443 0,00 0,109Normal 0,00 -1,00
18:15 4,3 0,00 0,85 0,00 0,439 0,00 0,109Normal 0,00 -0,85
18:30 3,4 0,00 0,85 0,00 0,440 0,00 0,109Normal 0,00 -0,85
18:45 2,5 0,00 0,90 0,00 0,421 0,00 0,109Normal 0,00 -0,90
19:00 1,6 0,00 0,85 0,00 0,446 0,00 0,109Normal 0,00 -0,85
19:15 0,6 0,00 0,95 0,36 0,430 0,00 0,109Normal 0,00 -0,59
19:30 0,0 0,00 1,00 1,00 0,374 0,00 0,109Normal 0,00 0,00
19:45 0,0 0,00 0,75 0,75 0,346 0,00 0,109Normal 0,00 0,00
20:00 0,0 0,00 1,15 1,15 0,385 0,00 0,109Normal 0,00 0,00
20:15 0,0 0,00 1,05 1,05 0,356 0,00 0,109Normal 0,00 0,00
20:30 0,0 0,00 0,90 0,90 0,346 0,00 0,109Normal 0,00 0,00
20:45 0,0 0,00 0,95 0,95 0,339 0,00 0,109Normal 0,00 0,00
21:00 0,0 0,00 0,95 0,95 0,345 0,00 0,109Normal 0,00 0,00
21:15 0,0 0,00 0,90 0,90 0,342 0,00 0,109Normal 0,00 0,00
21:30 0,0 0,00 0,95 0,95 0,331 0,00 0,109Normal 0,00 0,00
21:45 0,0 0,00 1,00 1,00 0,322 0,00 0,109Normal 0,00 0,00
22:00 0,0 0,00 0,90 0,90 0,335 0,00 0,109Normal 0,00 0,00
22:15 0,0 0,00 0,70 0,70 0,327 0,00 0,109Normal 0,00 0,00
22:30 0,0 0,00 1,00 1,00 0,329 0,00 0,109Normal 0,00 0,00
22:45 0,0 0,00 0,90 0,90 0,324 0,00 0,109Normal 0,00 0,00
23:00 0,0 0,00 1,00 1,00 0,324 0,00 0,109Normal 0,00 0,00
23:15 0,0 0,00 0,85 0,85 0,315 0,00 0,109Normal 0,00 0,00
23:30 0,0 0,00 0,75 0,75 0,309 0,00 0,109Normal 0,00 0,00
23:45 0,0 0,00 0,90 0,90 0,308 0,00 0,109Normal 0,00 0,00
00:00 0,0 0,00 0,90 0,90 0,318 0,00 0,109Normal 0,00 0,00
00:15 0,0 0,00 0,80 0,80 0,309 0,00 0,109Normal 0,00 0,00
00:30 0,0 0,00 0,90 0,90 0,302 0,00 0,109Normal 0,00 0,00
00:45 0,0 0,00 0,75 1,90 0,295 0,00 0,109Charge 1,15 0,00
01:00 1,1 0,00 0,65 0,65 0,312 0,00 0,109Hold 0,00 0,00
01:15 1,1 0,00 0,85 0,85 0,308 0,00 0,109Hold 0,00 0,00
01:30 1,1 0,00 0,85 0,85 0,303 0,00 0,109Hold 0,00 0,00
01:45 1,1 0,00 0,75 1,90 0,300 0,00 0,109Charge 1,15 0,00
02:00 2,1 0,00 0,80 0,80 0,306 0,00 0,109Hold 0,00 0,00
02:15 2,1 0,00 0,85 0,85 0,301 0,00 0,109Hold 0,00 0,00
02:30 2,1 0,00 0,60 1,75 0,301 0,00 0,109Charge 1,15 0,00
02:45 3,2 0,00 0,75 1,90 0,301 0,00 0,109Charge 1,15 0,00
03:00 4,2 0,00 0,90 0,90 0,302 0,00 0,109Hold 0,00 0,00
03:15 4,2 0,00 0,75 1,90 0,301 0,00 0,109Charge 1,15 0,00
03:30 5,3 0,00 0,85 2,00 0,300 0,00 0,109Charge 1,15 0,00
03:45 6,3 0,00 0,85 2,00 0,300 0,00 0,109Charge 1,15 0,00
04:00 7,4 0,00 0,75 1,90 0,299 0,00 0,109Charge 1,15 0,00
04:15 8,5 0,00 0,80 1,95 0,300 0,00 0,109Charge 1,15 0,00
04:30 9,5 0,00 0,85 0,85 0,305 0,00 0,109Hold 0,00 0,00
04:45 9,5 0,00 0,70 0,70 0,309 0,00 0,109Hold 0,00 0,00
05:00 9,5 0,00 0,70 1,85 0,301 0,00 0,109Charge 1,15 0,00
05:15 10,6 0,00 0,80 0,80 0,303 0,00 0,109Hold 0,00 0,00
05:30 10,6 0,00 1,00 1,00 0,313 0,00 0,109Hold 0,00 0,00
05:45 10,6 0,00 0,95 0,95 0,318 0,00 0,109Hold 0,00 0,00
06:00 10,6 0,00 0,95 0,95 0,315 0,00 0,109Hold 0,00 0,00
06:15 10,6 0,00 0,95 0,95 0,322 0,00 0,109Hold 0,00 0,00
06:30 10,6 0,00 0,85 0,85 0,326 0,00 0,109Hold 0,00 0,00
06:45 10,6 0,00 0,95 0,95 0,341 0,00 0,109Hold 0,00 0,00
07:00 10,6 0,00 0,95 0,95 0,326 0,00 0,109Hold 0,00 0,00
07:15 10,6 0,00 0,85 0,85 0,346 0,00 0,109Hold 0,00 0,00
07:30 10,6 0,00 1,10 1,10 0,357 0,00 0,109Hold 0,00 0,00
07:45 10,6 0,00 1,20 1,20 0,356 0,00 0,109Hold 0,00 0,00
08:00 10,6 0,00 1,05 1,05 0,364 0,00 0,109Hold 0,00 0,00
08:15 10,6 0,00 1,00 0,00 0,382 0,00 0,109Normal 0,00 -1,00
08:30 9,5 0,00 1,00 0,00 0,385 0,00 0,109Normal 0,00 -1,00
08:45 8,4 0,00 1,00 0,00 0,376 0,00 0,109Normal 0,00 -1,00
09:00 7,4 0,00 0,95 0,00 0,407 0,00 0,109Normal 0,00 -0,95
09:15 6,3 0,00 0,85 0,00 0,384 0,00 0,109Normal 0,00 -0,85
09:30 5,4 0,00 0,85 0,00 0,380 0,00 0,109Normal 0,00 -0,85
09:45 4,5 0,00 0,95 0,95 0,359 0,00 0,109Hold 0,00 0,00
10:00 4,5 0,00 0,95 0,00 0,392 0,00 0,109Normal 0,00 -0,95
10:15 3,5 0,00 0,95 0,95 0,360 0,00 0,109Hold 0,00 0,00
10:30 3,5 0,01 0,95 0,94 0,360 0,00 0,109Hold 0,00 0,00
10:45 3,5 0,01 1,25 1,25 0,351 0,00 0,109Hold 0,00 0,00
11:00 3,5 0,01 0,95 0,00 0,374 0,00 0,109Normal 0,00 -0,94
11:15 2,5 0,01 0,75 0,74 0,358 0,00 0,109Hold 0,00 0,00
11:30 2,5 0,01 0,70 0,69 0,352 0,00 0,109Hold 0,00 0,00
11:45 2,5 0,01 0,75 0,74 0,343 0,00 0,109Hold 0,00 0,00
12:00 2,5 0,01 0,70 0,69 0,349 0,00 0,109Hold 0,00 0,00
12:15 2,5 0,01 0,70 0,69 0,342 0,00 0,109Hold 0,00 0,00
12:30 2,5 0,01 0,75 0,74 0,338 0,00 0,109Hold 0,00 0,00
12:45 2,5 0,01 0,80 0,79 0,336 0,00 0,109Hold 0,00 0,00
13:00 2,5 0,01 0,70 0,69 0,341 0,00 0,109Hold 0,00 0,00
13:15 2,5 0,01 0,95 0,94 0,338 0,00 0,109Hold 0,00 0,00
13:30 2,5 0,01 0,95 0,94 0,334 0,00 0,109Hold 0,00 0,00
13:45 2,5 0,01 1,05 1,04 0,334 0,00 0,109Hold 0,00 0,00
14:00 2,5 0,01 1,15 1,14 0,333 0,00 0,109Hold 0,00 0,00
14:15 2,5 0,01 1,20 1,19 0,336 0,00 0,109Hold 0,00 0,00
14:30 2,5 0,01 1,10 1,09 0,336 0,00 0,109Hold 0,00 0,00
14:45 2,5 0,01 0,85 0,84 0,343 0,00 0,109Hold 0,00 0,00
15:00 2,5 0,00 1,10 1,10 0,334 0,00 0,109Hold 0,00 0,00
15:15 2,5 0,00 1,15 1,15 0,341 0,00 0,109Hold 0,00 0,00
15:30 2,5 0,00 0,95 0,95 0,345 0,00 0,109Hold 0,00 0,00
15:45 2,5 0,00 1,10 1,10 0,358 0,00 0,109Hold 0,00 0,00
16:00 2,5 0,00 1,20 1,20 0,335 0,00 0,109Hold 0,00 0,00
16:15 2,5 0,00 0,90 0,90 0,351 0,00 0,109Hold 0,00 0,00
16:30 2,5 0,00 1,00 1,00 0,358 0,00 0,109Hold 0,00 0,00
16:45 2,5 0,00 0,65 0,65 0,373 0,00 0,109Hold 0,00 0,00
17:00 2,5 0,00 1,20 1,20 0,351 0,00 0,109Hold 0,00 0,00
17:15 2,5 0,00 1,10 1,10 0,357 0,00 0,109Hold 0,00 0,00
17:30 2,5 0,00 0,90 0,00 0,374 0,00 0,109Normal 0,00 -0,90
17:45 1,5 0,00 0,95 0,00 0,373 0,00 0,109Normal 0,00 -0,95
18:00 0,5 0,00 1,00 1,00 0,372 0,00 0,109Hold 0,00 0,00
18:15 0,5 0,00 0,80 0,80 0,360 0,00 0,109Hold 0,00 0,00
18:30 0,5 0,00 0,85 0,85 0,356 0,00 0,109Hold 0,00 0,00
18:45 0,5 0,00 0,90 0,90 0,343 0,00 0,109Hold 0,00 0,00
19:00 0,5 0,00 0,85 0,85 0,366 0,00 0,109Hold 0,00 0,00
19:15 0,5 0,00 1,00 1,00 0,348 0,00 0,109Hold 0,00 0,00
19:30 0,5 0,00 1,00 1,00 0,341 0,00 0,109Hold 0,00 0,00
19:45 0,5 0,00 0,80 0,80 0,334 0,00 0,109Hold 0,00 0,00
20:00 0,5 0,00 1,25 1,25 0,341 0,00 0,109Hold 0,00 0,00
20:15 0,5 0,00 1,05 1,05 0,329 0,00 0,109Hold 0,00 0,00
20:30 0,5 0,00 0,90 0,90 0,322 0,00 0,109Hold 0,00 0,00
20:45 0,5 0,00 1,00 1,00 0,313 0,00 0,109Hold 0,00 0,00
21:00 0,5 0,00 0,95 0,95 0,325 0,00 0,109Hold 0,00 0,00
21:15 0,5 0,00 0,85 0,85 0,314 0,00 0,109Hold 0,00 0,00
21:30 0,5 0,00 1,05 2,20 0,304 0,00 0,109Charge 1,15 0,00
21:45 1,5 0,00 1,05 2,20 0,299 0,00 0,109Charge 1,15 0,00
22:00 2,6 0,00 0,85 2,00 0,310 0,00 0,109Charge 1,15 0,00
22:15 3,7 0,00 0,80 1,95 0,307 0,00 0,109Charge 1,15 0,00
22:30 4,7 0,00 1,05 2,20 0,301 0,00 0,109Charge 1,15 0,00
22:45 5,8 0,00 0,80 1,95 0,294 0,00 0,109Charge 1,15 0,00
23:00 6,8 0,00 1,00 2,15 0,304 0,00 0,109Charge 1,15 0,00
23:15 7,9 0,00 0,90 2,05 0,293 0,00 0,109Charge 1,15 0,00
23:30 9,0 0,00 0,75 1,90 0,289 0,00 0,109Charge 1,15 0,00
23:45 10,0 0,00 0,95 1,81 0,282 0,00 0,109Charge 0,86 0,00
10,8SOC (min/max) : 1,08 / 10,80 kWh, Nettoertrag: -39,92 €

Das Verfahren ist extrem aufwendig, aber dafür sehr flexibel: Man kann beliebig Nebenbedingungen ergänzen (z.B. minimale/ maximale SOC‑Grenzen, begrenzte Ladeleistung, Schonung der Batterie, Reserven für bestimmte Uhrzeiten etc.). Jede zusätzliche Bedingung erhöht allerdings die Modellkomplexität und typischerweise auch die Rechenzeit.

Aktuell sehe ich KI eher als Hilfsmittel beim Entwerfen der Modelle oder bei der Prognoseverbesserung, nicht als direkten Ersatz für einen mathematischen Optimierer. Die eigentliche Optimierungsaufgabe – ein wohldefiniertes LP/MIP auf Basis aller Nebenbedingungen – bleibt klassischer Solver‑Job.

Aus meiner Sicht ist das Thema mathematische Optimierung (LP/MIP‑Modelle, Solver‑Tuning, Rechenaufwand) zu komplex, um es direkt in Symcon abzubilden oder von Symcon selbst lösen zu lassen.

Mich würde interessieren, ob andere hier im Forum bereits ähnliche Optimierungsansätze verfolgen – also jenseits von einfachen Schwellwert‑Logiken bzw. Wochenplänen, hin zu echten kosten- oder ertragsoptimierten Fahrplänen (z.B. mit dynamischen Tarifen, PV‑ und Lastprognosen).

Das jetzige Modul finde ich für meine Zwecke mehr als ausreichend und als sehr durchdacht. Letzten Endes Ist die verfügbare Leistung vom Dach endlich und es muss dann doch wieder manuell im eigenen Kopf entschieden werden, was für mich zum gegenwärtigen Zeitpunkt Vorrang hat … Das kann weder KI noch “Optimierer” für mich entscheiden, bzw. würde ich auch gar nicht wollen. Die momentane Variante sollte also auf jeden Fall so erhalten bleiben. Und wer mit KI und Ultra-Optimierung seinen Spass hat - dem sollte ein extra Modul angeboten werden. Auf jeden Fall zu- und abschaltbar.

Also ich habe mal vor etlichen Jahren selbst Zeitreihenprognosen für Wasserversorger erstellt. Damals allerdings noch mit den klassischen Methoden. Auch da waren Sonderereignisse ein richtiges Problem. Wenn zum Beispiel zur Halbzeit eines Spiels der deutschen Nationalmannschaft während der Halbzeitpause Millionen Deutsche auf die Toilette gehen und die Klospülung betätigen, dann ist in vielen Netzen der Wasserdruck zusammengebrochen. Auch das kann man vorhersagen, wenn man die Spielpläne in die Prognose einbaut. Aber man muss es ja nicht unendlich kompliziert machen.

Die Idee von bumaas ist ja genau das wo es hin laufen sollte. Das als Modul wäre ideal.

1 „Gefällt mir“