Автор: Иван Дочев, ROITI
Конкретният пример
Един от клиентите на РОИТИ доставя електричество на голямо промишлено предприятие в Германия с особена крива на електрическия товар (Фигура 1)[1]. В рамките на няколко четвърт часа, товарът варира от няколко мегавата до над 100 мегавата. Тъй като клиентът ни трябва да номинира потреблението на предприятието на пазара за ден напред (day-ahead market), той се нуждае от добра прогноза за кривата на товара. Целта е да се избегне натрупването на дисбаланс [2]. Дисбалансът е проблем не само поради разходите по коригирането му, но и защото в определени мащаби започва да създава технически проблеми на мрежовия оператор.
Поради естеството на предприятието се оказа изключително трудно да се прогнозира кривата още от предходния ден. Поради това клиентът номинира среден товар на пазара за ден напред и след това коригира дисбаланса 30 минути преди доставката (потреблението) на пазара за текущия ден (intraday market). Без тази корекция нужното количество балансираща енергия възлиза на 33% от действителното потребление, което е доста значителен процент. Корекцията се основава на прогностичен модел. Тук се включихме ние.
Нашата роля
Прогностичният модел на нашия клиент намаляваше дисбаланса с 26%. Нашият, подобрен модел, стигна до 37% (изчислено с (бек)тест за периода между май 2022 г. и май 2023 г. (Фигура 2).
Бектеста извършихме по следния начин:
Тренирахме модела ни с данни от март и април 2022 г. След това оставихме модела да прогнозира 30 минути преди доставката за всеки четвърт час през следващите три месеца – май, юни и юли. Тъй като данните са исторически, беше възможно да изчислим ефективността на модела, като сравним с реалното потребление. След това тренирахме модела отново върху всички данни до юли и прогнозирахме следващите три месеца и т.н.
Във всеки един момент моделът прогнозира данни, които не е виждал („out-of-sample“), а бектестът включва и ефекта от повторното трениране на модела.
Методология
Задачата включваше методи от областта на time series prediction. Това са традиционно статистически и, от по-скоро, machine learning методи, които имат за цел да предскажат бъдеща стойност въз основа на минали стойности. В нашия случай използваме 96 изминали четвърт часа потребление, за да предвидим третия четвърт час в бъдещето. Като допълнителни данни за прогнозиране използваме номинациите за ден напред от клиента. Въпреки че номинациите представляват най-вече среднодневни стойности и не отразяват реалните движения на товара, те все пак взимат предвид графика на смените на предприятието (клиентът ни получава тези графици от ръководството на предприятието). Също така, предоставяме на модела часа от деня, деня от седмицата и месеца от годината за всеки четвърт час. По този начин моделът научава и характеристики на потребление, свързани с тях (например, че има по-малко потребление през коледния период).
Има много съвременни статистически модели за прогнозиране на времеви редове (time series). Моделите ARIMA (Autoregressive Integrated Moving Average) са били дълго време традиционният избор. Клиентът ни първоначално използваше Random Forest модел – много по-нов вид модел, но също далеч от state of the art. След сравняване на различни модели, избраният от нас беше Temporal Fusion Transformer (TFT)[3] – един от най-новите прогностични модели, базиран на deep learning и невронни мрежи. Експериментите ни показаха, че той превъзхожда останалите, като може да намали дисбаланса с приблизително 10 процентни пункта.
Допълнителна полезна характеристика на TFT е, че той е част от семейство модели, които могат да предсказват разпределението на вероятни стойности, а не единични стойности (probabilistic time series predictors) (Фигура 3). С други думи, той може да предвиди не само консумацията за определен четвърт час, но и вероятността действителната стойност да попадне в определен диапазон. Въпреки че това не бе особено необходимо в конкретния случай, то може да е от изключителна полза в други ситуации, например при управлението на риска.
Explore more
Намаляване на разходите – или защо никога нищо не е толкова просто.
Докато дисбаланс по принцип трябва да се избягва, тъй като представлява проблем за оператора на мрежата, намаляването на възникналите разходи, свързани с него, може да не е толкова просто. Последният етап на коригиране на дисбаланса е включването на балансираща инфраструктура (генератори и потребители) от оператора на мрежата. В Германия разходите за балансиране на оператора не са глоба, а цена. Това означава, че дисбаланс не се наказва с глоба, а се закупува или продава нужното количество енергия. Положителен дисбаланс представлява консумиране на по-малко от номинираното. Ако за определен четвърт час в мрежата липсва мощност, положителен дисбаланс може всъщност да поддържа системата и да генерира приходи – операторът ще плати цената на енергията, която доставяме на мрежата.
Цената може да бъде и отрицателна. В тези ситуации отрицателният дисбаланс ще генерира приходи – потребителят ще тегли от мрежата, когато има излишък. Въпреки че това звучи като пазар, е строго забранено да се спекулира с цената на дисбаланса. Всеки участник в мрежата трябва да избягва дисбаланса по най-добрия начин и каквото остане за балансиране да бъде закупено или продадено според цените на мрежовия оператор.
Ценообразуването е чрез многокомпонентна формула, която няма да засягаме. Принципът обаче е прост – колкото по-бързо трябва да се достави или изтегли енергия от мрежата, толкова по-скъпо е това. Поради това, обикновено цената за балансираща енергия е по-висока от цената за ден напред (day-ahead) и за текущия ден (intraday) – балансиращата енергия в общия случай трябва “най-спешно”.
Когато анализирахме нашия случай, забелязахме, че с настоящия модел, след намаляване от 26%, коригираният дисбаланс се състои от повече закупуване, отколкото продаване – негативен дисбаланс. С други думи, средно, предприятието използва повече от номинираното и моделът коригира диспропорционално. Когато цените на дисбаланса са по-високи от цените в рамките на текущия ден, намаляването на дисбаланса намалява разходите, като се избягва купуването на по-високите цени на балансиращата енергия.
Ситуацията обаче се променя, ако цените на дисбаланса са по-ниски от тези в рамките на текущия ден. В този случай, парадоксално, намаляването на дисбаланса води до допълнителни разходи, тъй като, ако има повече за закупуване е по-добре да се купува на цени за балансираща енергия, отколкото на по-високите цени в рамките на текущия ден. Именно това се случваше в някои периоди през 2022 и 2023 г.
Поради забраната за спекулации с цената на дисбаланс се сблъскахме със сериозен проблем. Трябваше да намерим начин да намалим разходите, произтичащи от цената на дисбаланса, с която не трябваше да спекулираме. С други думи, без да опитваме да отгатнем кога е по-логично да купуваме на пазара за текущия ден и кога е по-добре да купуваме на цени за дисбаланс. Начинът, по който се справихме с това, беше чрез приемане на подобие на „пазарно неутрална стратегия“, която използва „симетричен“ дисбаланс. Настроихме модела си и цялостния процес по такъв начин, че покупката и продажбата при коригиране на дисбаланси бяха почти равни. Тъй като кривата на товара варира почти на всеки четвърт час, в общия случай коригирането на дисбаланса изисква покупка в даден четвърт час и продажба в следващия. Купуването и продаването толкова близо във времето обикновено означава, че цените на двете транзакции ще бъдат сходни.
По този начин, при вече симетричния дисбаланс и при сходните цени за купуване и продаване, в дългосрочен план, крайният резултат на стратегията беше нула. Без печалби и без загуби, но с намален дисбаланс. Клиентът приветства идеята за стабилна операция с нулеви загуби. Алтернативата при тези обстоятелства бе да разчитаме на пазарната динамика и да се надяваме да сме от правилната страна на сделката. Ситуация, която можеше да доведе до печалби или загуби, без да можем да кажем кога и колко. Вариантът с нулеви печалби и загуби, но известна предвидимост се оказа по-предпочитаният от нашия клиент.
[1] За целите на защитата на данните не можем да представим конкретни числа, а само относителни и стандартни стойности.
[2] Дисбаланс възниква, когато е заявено количество електроенергия за определен четвърт час, но действителното потребление се различава. Германия има специална цена за „балансираща енергия“ – енергията, която трябва да бъде добавена или взета от мрежата, за да се преодолее разликата между номинацията и действителното потребление.
[3] Интересна подробност е, че TFT заимства част от технологията зад вече известния ChatGPT – името „Transformer“ се отнася за същия “трансформър” като в ChatGPT – „Chat Generative Pretrained Transformer“.