Skip to content

xiaoaoaoQAQ/Short-Term-Electrical-Load-Forecast

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Short-term load forecasting

Scope:

Forecast 24hr horizon electrical load at 15-min intervals.

Overview:

1) Data Preprocessing

  • Filled in missing values for temperature:

    Time-aware linear interpolation
    
  • Fixed erroneous load data:

    Replaced zero values with day-of-week / month mean for specific interval.
    
  • Dataset partitioning:

    Divided data in a) training-validation and, b) test set
    

2) Model Formulation

  • EDA:

    Explored relationship of time - temperature - load
    

alt tag

  • Model Selection:

    Random Forest -- Perform good with non-linear data, easy tuning (given time constraint) and implementation, scalable for this application.
    
    Working hypothesis about the model: Multiple independent models perform better than an aggregate since long-term exposure would introduce trend bias.
    
  • Feature creation:

    Temporal features (ie. previous day interval, morning / afternoon peak, min / max temperature)
    

3) Model tuning

  • Built methodology to cross-validate

    See notebooks/02 for details.
    

4) Test model

  • Evaluation class

    Takes forecaster class and test set as parameter for out-of-sample validation.
    
    Used Mean Absolute Percentage Error
    
  • Sample out-of-sample prediction: MAPE = 1.8 %

alt tag

5) Ongoing thoughts

  • Still high variance, cross-validate features, tree parameters, increase robustness of special days.

  • Temperature should be estimated through 2 variable interpolation of load-temperature.

  • Explain static load on weekdays.

About

Short-term load forecasting

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 99.4%
  • Python 0.6%