Model updated 29th January 2024
Summary
The retraining process resulted in two new models, one for PD and one for 7day price forecast. After experimentation we retrained the price forecasting models using existing features and hyper parameter settings. The increase in accuracy (using Absolute Mean Error, AME) was between 10% and 15% (with the exception of SA which was 50%). (see validation results table below comparing the previous models with the new models).
Training period
Both PD and 7day price forecast models were trained on data between 01-11-2020 and 01-11-2023.
The market suspension period and a period after the Callide explosion were removed from the training data.
New features (input data) exceptions
The feature set is the same as the previous model. The main benefit of the new model is that more recent market data are consumed in the training process. The training does not weight the most recent market data.
A number of experiments were conducted by changing the feature list and some hyper parameters however this didn’t not achieve a significant benefit to the model tests. Hence for consistency we have not made changes to the model other than extending the training period to the most recent market data. Unlike the August model update included significant changes to both the feature set and the hyper parameters.
Validation set is from the 1st of November to the 7th of November. Oddly enough the impact of the Melbourne Cup did not have a significant impact on the performance metrics.
Predispatch model | p7day model | |
---|---|---|
Model_id | 20231108_142510_CB_2 | 20231108_140809_CB_7D_2 |
Previous model release date | 8th August 2023 | 8th August 2023 |
Latest release date (after retraining) | 9th November 2023 | 9th November 2023 |
Machine Learning Algorithm | Ensemble predictor: gradient boosting | Ensemble predictor: gradient boosting |
Training Period | 1st October 2020 to 31st October 2023 | 1st October 2020 to 31st October 2023 |
Hyper-parameter type | A | A |
Hyper-parameter notes | No weighting across time periods | No weighting across time periods |
Target | Dispatchprice (30min resolution) | Dispatchprice (30min resolution) |
Input (and training) variables | PREDISPATCHPRICE rrp DISPATCHPRICE last 3 day average actual RRP for same time PREDISPATCHREGIONSUM (intervention = 0) hours_out time_of_day day_type (weekday_or_weekend) dispatchableload netinterchage (availablegeneration - uigf) (dispatchablegeneration - scheduled_clearedmw) ss_solar_clearedmw ss_solar_uigf ss_wind_clearedmw ss_wind_uigf totaldemand totalintermittentgeneration | STPASA_REGIONSOLUTION hours_out time_of_day day_type (weekday_or_weekend) aggregatepasaavailability aggregatescheduledload netinterchangeunderscarcity aggregatecapacityavailable ss_solar_cleared ss_wind_uigf ss_wind_cleared ss_solar_uigf demand10 demand50 totalintermittentgeneration demand_and_nonschedgen |
Validation Results
These are the results of the best model generated through our experimentation process and compares the results with the previous model across our validation set (our test period).
Average error is equal to Predication minus real prices.
All error metrics are in $/MWhr.
PD Results
Metric/Region | Absolute Mean Error New Model | Absolute Mean Error Previous Model | Average Error New Model | Average Error Previous Model |
---|---|---|---|---|
NSW1 | 18.83028 | 19.57689 | 0.89392379 | 1.70619021 |
VIC1 | 23.46394 | 24.8628 | -0.865354636 | -2.249786354 |
QLD1 | 19.29253 | 19.63574 | -2.421301777 | -0.030032336 |
SA1 | 26.06217 | 27.25936 | 0.876947057 | -1.019642282 |
TAS1 | 12.37019 | 13.42848 | -1.026951774 | 2.360821585 |
7 Day Results
Metric/Region | Absolute Mean Error New Model | Absolute Mean Error Previous Model | Average Error New Model | Average Error Previous Model |
---|---|---|---|---|
NSW1 | 20.45870012 | 22.08112427 | -8.94232 | 0.67945 |
VIC1 | 28.11448622 | 29.9156995 | -3.37011 | 1.569229 |
QLD1 | 22.74275858 | 30.79893723 | -13.7703 | 15.93677 |
SA1 | 31.05123392 | 69.518694 | 5.905758 | 48.31805 |
TAS1 | 18.28810034 | 21.29027034 | -2.81489 | -2.97437 |
Variables that imply binding interconnectors (such as limits and marginal values) are currently not included as features.