Artykuły
Sprawdzamy, jak Sygnity Forecast poradzi sobie z prognozowaniem wzrostu cen energii.
Ogłoszony 14 lipca przez UE pakiet Fit for 55 znacznie przyspiesza działania mające na celu osiągnięcie 55 % redukcji emisji gazów cieplarnianych do roku 2030. Pakiet zakłada m.in. reformę obecnego systemu handlu emisjami, włączenie nowych sektorów gospodarki (jak transport morski, lądowy oraz budownictwo) do unijnego systemu handlu uprawnieniami do emisji, podatek węglowy na granicy UE. Wprowadzenie w życie tak ambitnych planów redukcji emisji będzie się wiązało ze znacznym wzrostem cen energii.
Analitycy biura maklerskiego mBanku oszacowali, z jakimi podwyżkami będziemy musieli się liczyć już w przyszłym roku[1]. Ich prognozy zostały przygotowane z uwzględnieniem decyzji KE w sprawie pakietu Fit for 55. Wynika z nich, że już w 2022 roku ceny energii wzrosną od 15 do 30 proc. w przypadku przedsiębiorstw, a także o około 19 proc. dla gospodarstw domowych.
W obliczu tak wysokich podwyżek cen energii duże przedsiębiorstwa – zwłaszcza z najbardziej energochłonnych branż – staną przed ogromnym wyzwaniem optymalizacyjnym. Z analizy mBanku wynika, że podwyżki uderzą m.in. w takie firmy jak Cognor (producent stali w technologii elektrycznej), Stalprodukt (hutnictwo cynku), PKP Cargo, JSW czy KGHM (Rysunek 1).
Wzrost kosztów związanych z zakupem energii elektrycznej sprawi, że duże przedsiębiorstwa już nie tylko będą musiały odpowiednio planować produkcję i prognozować własne zapotrzebowanie na energię elektryczną (patrz case study – Stratoslovenska Energetyka), ale także w większym stopniu monitorować ceny na rynku energii i rynkach pochodnych.
Postanowiliśmy sprawdzić, jak narzędzie Sygnity Forecast sprawdzi się w prognozowaniu cen energii oraz uprawnień do emisji CO2
Więcej o Sygnity Forecast TUTAJ.
Sprawdzamy, jak będą się kształtować ceny energii
Nasze założenia:
- Prognozujemy godzinową cenę energii elektrycznej z notowań z fixingu 1 na Rynku Dnia Następnego na Towarowej Giełdzie Energii (https://tge.pl/energia-elektryczna-rdn)
- Rano (ok godz. 7 – 8) w dniu D dostarczamy prognozy cen notowanych w dniu D (z data dostawy D+1) oraz D+1 (z datą dostawy odpowiednio na D+2), przykładowo: w dniu 01.09.2021 wyznaczamy prognozy cen na doby dostawy: 02.09 i 03.09.2021r
- Prognozy wykonujemy w dni robocze przez dwa tygodnie – w okresie 23.08-07.09
- Każda wersja prognozy jest zaprezentowana w dwóch ciągach:
- Narastająco – w kolejnych dniach dodawana jest tylko prognoza na D+2
- Nadpisująco – w kolejnych dniach prognoza na D+1 nadpisuje prognozę na D+2 z modelu z dnia wcześniejszego
- Jakość prognoz mierzona jest średnim bezwzględnym błędem procentowym MAPE
Cel: dostarczenie prognoz lepszych o co najmniej 1 p.p. niż prognoza naiwna, tj. prognoza na dzień D – jako wykonanie z dnia poprzedniego.
Do modelowania wybraliśmy 67 zmiennych, które można podzielić na 8 grup:
- Opóźnione dane z TGE
- Dane kalendarzowe
- Praca KSE – Plan koordynacyjny 5-letni – wielkości podstawowe
- Dane prognostyczne dot. rynku EE w Polsce publikowane na portalu https://transparency.entsoe.eu/
- Prognozy meteorologiczne
- Ceny i koszty na RB publikowane przez PSE (opóźnione)
- Statystyki dotyczące bieżącej pracy KSE publikowane przez PSE (opóźnione)
- Wymiana międzysystemowa – przepływy mocy KSE (opóźnione)
Dane zostały podzielona na 3 zestawy zmiennych:
- Zawierający podstawowe wielkości kalendarzowe i prognozowane (meteo, entso, plan 5 letni)
- Zawierający dane z zestawu 1 powiększone o opóźnione dane z TGE i PSE
- Zawierający dane z zestawu 2 oraz dodatkowe zmienne meteorologiczne i wymianę międzysystemową
Metodologia
Do wyznaczenia prognoz wykorzystaliśmy dane od początku czerwca 2021.
Do wyznaczenia prognoz wykorzystany został bardzo popularny ostatnimi czasy model z dziedziny uczenia maszynowego – a mianowicie algorytm wzmacniania gradientowego – XGBoost. Jest to algorytm składający się z zespołu klasyfikatorów, którymi mogą być np. modele drzew decyzyjnych trenowane przyrostowo, z których wszystkie mają wpływ na finalną prognozę.
Więcej informacji o intuicji stojącej za algorytmem Xgboost można znaleźć na stronie: https://datascience.eu/pl/programowanie-komputerowe/xgboost/
Każdy zestaw danych przepuszczaliśmy przez „maszynkę” dobierającą najlepsze na zadany okres hiperparametry do modelu i wyznaczającą 3 prognozy dla 3 typów „wzmacniaczy” (boosterów): liniowych, drzewiastych i grotowych (dart).
Weryfikacja polegała na wytrenowaniu modelu na 80% danych w zbiorze treningowym, a następnie testowane na pozostałych 20% (najświeższych danych). Model, który otrzymał najlepszy wynik na zbiorze testowym był następnie wykorzystywany do wyznaczenia prognozy na zadany okres docelowy
Codziennie weryfikowany był zestaw 232 kombinacji hiperparametrów modelu XGBoost dla 3 zestawów danych. Dziennie więc trenowaliśmy 696 modeli co zajmowało około 1,5h na cały proces. Daje to nam średni czas na poziomie 8 sec na wytrenowanie 1 modelu! Łącznie w całym okresie doświadczenia wytrenowaliśmy i zweryfikowaliśmy 10 440 modeli.
Wyniki
Finalnie otrzymaliśmy 18 ciągów prognoz odpowiadających najlepszym algorytmom dla każdego z 3 typów boosterów i każdego z 3 zestawów danych w dwóch ujęciach – narastającym i nadpisującym.
Na 18 zaprezentowanych modeli – 2/3, czyli 12 modeli, osiągnęło w całym badanym okresie wynik lepszy niż model naiwny, który ustawił poprzeczkę na poziomie błędu MAPE 8,36%.
Najlepszym modelem w zadanym okresie okazał się model oparty o drzewa decyzyjne wytrenowany na pierwszym zestawie danych osiągając błąd rzędu 6,37% (Rysunek 2), czyli niemal o 2 p.p. lepiej niż benchmark! Finalnie więc udało się zrealizować zadany cel w znacznie lepszym stopniu niż zakładany pierwotnie.
Na powyższym wykresie zaprezentowaliśmy dane godzinowe – rzeczywiste, prognozy z modelu naiwnego i prognozy z modelu z najlepszym wynikiem.
Na poniższym wykresie kołowym (Rysunek 4) widać rozkład błędów dla najlepszego z modeli.
Bonus – model łączony
Na podstawie prognoz wyznaczonych w pierwszym tygodniu można było wstępnie określić średnią trafność dla każdego z modeli. Na tej podstawie na drugi tydzień prognoz – 01-07.09.2021 utworzono model uśredniający prognozę z 4 najlepszych modeli prognostycznych – system Sygnity Forecast sam przypisał wagi dla każdej prognozy w każdej godzinie zgodnie z historyczną średnią trafnością tych prognoz.
Wyniki modelu łączonego okazały się jeszcze lepsze (o 0,1 p. p.)! niż wyniki pojedynczych najlepszych modeli (Rysunek 5). Dodatkowo model łączony pozostałe miał dużo mniejszy odsetek wysokich błędów godzinowych – co widać wyraźnie poniżej (Rysunek 6 i Rysunek 7).
Podsumowanie – poprawiamy prognozę o 2 p.p.
W naszym, trwającym nieco ponad dwa tygodnie, eksperymencie udało nam się osiągnąć prognozy cen energii elektrycznej na poziomie dwukrotnie(!) przekraczającym zakładany pierwotnie cel, czyli poprawić prognozę o 2 punkty procentowe w stosunku do prognozy naiwnej i to w tak krótkim czasie realizacji.
Udowodniliśmy też, że przy prognozowaniu tak zmiennych wartości jak ceny energii elektrycznej, warto łączyć wyniki kilku modeli. To pozwala poprawić jakość prognoz w dłuższej perspektywie przy jednoczesnym niwelowaniu odsetka dużych błędów w pojedynczej godzinie.
Prognozy cen uprawnień do emisji CO2 i zielonych certyfikatów
Zdając sobie sprawę z rosnących regulacji i zależności rynku energii również od innych aspektów, takich jak uprawnienia do emisji CO2 czy system certyfikacji energii pochodzącej ze źródeł odnawialnych, przy okazji prognoz cen energii elektrycznej podjęliśmy też próbę zaprognozowania uprawnień do emisji CO2 i zielonych certyfikatów. Te prognozy jednak były czysto eksperymentalne na bazie analogicznych danych jak dla cen energii.
CO2
Ceny uprawnień do emisji CO2 od początku czerwca 2021 do połowy sierpnia 2021 wahały się w przedziale 50-58 EUR/Mg CO2. Od połowy sierpnia ceny zaczęły mocno iść do góry – co wcześniej nie miało miejsca i było trudne do przewidzenia. W tym przypadku model naiwny okazał się ciężkim do pobicia – naszemu najlepszemu modelowi do naiwnego zabrakło 1,7 p.p.
Analizując jednak dokładniej poszczególne dni prognozy, okazało się, że w większości przypadków, bo w 9 dni z 16 dni – modele Sygnity były w stanie przedstawić prognozę lepszą niż model naiwny. Zatem jest tu duży potencjał do poprawy.
Zielone certyfikaty
Ze względu na mnogość certyfikatów oraz ich wewnętrzny podział na sesyjne oraz pozasesyjne, do eksperymentu wybraliśmy zielone certyfikaty. Zdecydowaliśmy się prognozować wartość indeksu sesyjnego – TGEOzea. I w tym przypadku prognoza naiwna okazała się niedościgniona, jednak najlepszemu z modeli brakowało do modelu naiwnego zaledwie 0,5 p.p.
Analizując jednak dokładniej poszczególne dni prognozy okazało się, że w 4 z 5 dni – modele Sygnity były w stanie przedstawić prognozę lepszą niż model naiwny. Zatem również i tu jest potencjał do poprawy
Podsumowanie
Dodatkowe zadania, czyli prognozy uprawnień do emisji CO2 i certyfikatów wykazały, że w tych przypadkach nie łatwo osiągnąć zadowalające rezultaty, lecz fakt, że w większości dni udało nam się osiągnąć rezultaty jednostkowo lepsze niż ten pochodzący z modelu naiwnego, nastraja pozytywnie i otwiera drogę do dalszej analizy problemu i szukania optymalnych rozwiązań bazujących np. na nowych czynnikach, kombinacji modeli czy zmiany wielkości próbki.
[1] https://www.money.pl/gospodarka/rachunki-za-prad-znowu-wzrosna-wszystko-przez-nowe-plany-ue-6661540354566944a.html