Сценарий: Клаудия Аманда, Келвин Сутеджа, Винсент Рибли
Энергия ветра зависит от факторов окружающей среды, таких как скорость и направление ветра. Чрезмерная зависимость энергии ветра от внешних обстоятельств вызывает возражения против принятия энергии ветра в качестве основного источника энергии. Наше общество зависит от стабильных, предсказуемых источников энергии, что выражается в ископаемом топливе, ядерной энергии и других невозобновляемых источниках энергии.
Мы пытаемся смягчить непредсказуемость поставок энергии ветра, прогнозируя прогноз энергии T+18 каждый час, принимая во внимание историческую выработку энергии, скорость и направление ветра в восьми различных регионах.
Играя роль трейдера энергии, наша цель состоит в том, чтобы максимизировать прибыль для нашего клиента, используя наш прогноз производства энергии и предоставленный торговый алгоритм.
Исследование данных и разработка функций
Мы используем следующие данные:
- Производство энергии компанией Energy-ile-de-France (до прогноза T+18)
- Данные о скорости и направлении из двух моделей для следующих регионов: guitrancourt, lieusaint, lvs-pussayparc-du-gatinais, arville, boissy-la-riviere, angerville-1, angerville-2.
Приведенные выше данные составляют 33 столбца.
В нашей попытке изучить предоставленные данные мы построили график зависимости энергии/кВтч от времени и обнаружили тенденцию к увеличению, подразумевая, что данные не являются стационарными, как показано ниже.
Мы считаем, что это может быть связано с технологическими достижениями, которые расширили возможности производства энергии ветра. Таким образом, мы решили обрезать данные и использовать последние 10 000 данных для нашей модели, чтобы решить проблему растущего тренда. Построив остатки наших данных, нам удалось получить более правильный график, как показано ниже.
Полученные данные о направлении ветра включают угловые данные, которые немного деликатны, поскольку берутся по модулю 360. Это означает, что нейронная сеть не распознает, что 359 градусов близки к 1 градусу. Поэтому мы предлагаем кодировать его как sin θ и cos θ, что дает нам представление о том, насколько близки углы на основе значений синуса и косинуса.
После этого мы создали корреляционную тепловую карту, чтобы изучить корреляцию между энергией ветра, значениями синуса углов и значениями косинуса углов. Полученную корреляционную тепловую карту можно найти ниже.
Основываясь на приведенном выше графике, мы пришли к следующим выводам:
- Энергия тесно связана со скоростью
- Скорости регионов коррелируют друг с другом
- Синусоидальные значения углов и косинусные значения углов также коррелируют друг с другом.
Учитывая выводы, мы предлагаем пространственное усреднение для уменьшения избыточности.
В дополнение к тепловой карте корреляции, приведенной выше, мы также создали другую тепловую карту корреляции, используя средние значения используемых значений. Это оставляет нам энергию, среднюю скорость, средний синус и средний косинус.
Наш следующий шаг — построить график энергии со средней скоростью (последние 40% данных для отображения более регулярного графика) в пределах тех же осей, что показывает, что они кажутся тесно связанными, как показано ниже.
Построив кривую запаздывания энергии и средней скорости, мы заметили, что энергия отстает от средней скорости на 2 часа, и это хороший показатель.
Предварительная обработка данных
Нормализация выполняется по данным, x'=(x-)/. Мы также обнаружили, что потери на постоянство составляют 0,46711, и мы будем использовать это значение в качестве ориентира, который необходимо превзойти.
Кроме того, теперь у нас есть четыре столбца — энергия, средняя скорость, средний синус и средний косинус. На основе четырех столбцов мы создадим следующие функции:
- Энергия за последние 24 часа (A:0:-24)
- Средняя скорость от 12 часов до и 12 часов после (B:12:-12)
- Текущий средний синус (C:0)
- Текущий средний косинус (D:0)
Размер ввода 52.
Нейронная сеть
Perceptron использует tanh, который работает лучше, чем relu. Архитектуру нашей нейронной сети можно найти ниже:
: сеть ( l -- l )
имя P003
${nn-size} персептрон
Выпадение ${dropout-prob}
${nn-size 2 * 3/} персептрон
Выпадение ${dropout-prob}
Персептрон ${nn-size 4 * 9 /}
1 внутренний продукт
с конечным названием
;
Есть один входной слой и три скрытых слоя, где каждый слой становится меньше по размеру. Мы также добавили функцию исключения, и обе они были сделаны для решения серьезной проблемы переобучения, которая возникла до того, как эти функции были реализованы.
Конфигурация нашей нейронной сети выглядит следующим образом:
{{ 64 128 256 512 }} := nn-размер
{{ 0,2 0,3 0,4 }} := вероятность отсева
Результаты и анализ
Результаты можно найти ниже:
Основываясь на приведенных выше результатах, мы решили выбрать лучшую конфигурацию (№ 2) с потерями при тестировании 0,283456, которая превосходит нашу потерю устойчивости 0,46711. Детали наших результатов можно найти ниже:
Таким образом, используя наш прогноз, нам удалось получить чистую прибыль в размере 419 221 685 долларов США!