← Back to Portfolio

Renewable Energy Prediction

Prediction of Solar and Wind Renewable Energy using Deep Learning

Solar Image
Solar Image

Long Short Term Memory (LSTM) model was developed to monitor short term power output predictions from 4 hour ahead to 6 hours ahead. This research paper demonstrated a unique approach of utilizing nearby publicly available meteorological data to predict renewable energy power output that could potentially be used for wind and solar farm scheduling to prevent curtailment of clean energy.

This paper was written for completion of my Masters major research project under Toronto Metropolitan University and as a result the paper cannot be shared publicly without explicit permission from the University. It was written in Python with Pandas, Numpy, Tensorflow and other supporting libraries.

Questions to be Answered:

  1. Can all of Ontario’s power demands be met with renewable energy?
  2. What are the key features for determining renewable energy?
  3. What would be the best algorithm choice to predict renewable energy?
Comparing electricity per month
Data Directory style


The dataset used was collected from the [Independent Electricity System Operator] and the [NASA Solar Satelitte dataset.]

The dataset made up of approximately 50 meteorological features total over a 4 year time period. Notable features such as wind speed, solar radiation, air temperature, dew point temperature and humidity all played a role in determining total solar and wind power generation capacity.

model_life contents
Model lifecycle utilized in this project

The data was then run through exploratory data analysis: simple correlation operations to determine the feature with the greatest correlation to wind power. The data was also cleaned and outlier values were either removed or replaced with average values.

Pearson_corr
Pearson Correlation for Wind Power



The Long Short Term Memory LSTM deep learning algorithm is trained on 3 years worth of data, with the 4th year being the validation/ testing year. This results in a 75% training, 25% testing split. The benefit of using LSTM networks over a traditional mathemetical model such as the ARIMA (Autoregression Integrated Moving Average), is that there doesnt need to be a processing step to remove trends and seasonality.

The Long Short Term Memory algorithm requires a number of timesteps, also known as an input window size. To determine how many past values of the series will be used for the current prediction. For example, if i wanted to predict 2 pm, should consider weather at 1 pm, 12 pm, and 11 am as my past values, meaning my window size is 3 hours.


Here we can see the output result for the solar farm, seperated by season. The algorithm is predicts the next 4 hours ahead with relative certainity. The wind farm is also predicted and both results are shown below.

Solar Season Forecast Example
Solar Season Forecast Example
Wind Season Forecast Example
Wind Season Forecast Example


Additional work would be to include more weather variables and try utilizing a CNN model to the algorithm before utilizing the LSTM.

Libraries:

Some of the tools required to make this project work:
Python - Python is a programming language that lets you work quickly and integrate systems more effectively.
Scikit-Learn - An open source Machine learning library in python used for data preprocessing, classification, regression, etc…
Pandas - Pandas is a fast, powerful, flexible and easy to use open source data analysis and manipulation tool, built on top of the Python programming language.
Jupyter Notebooks - web-based interactive development environment for notebooks, code, and data.