Persistence, AR and ELM: compare forecasts on public PV data

Protocol audit: interpret this as a minimal baseline exercise

This demonstration deliberately uses only six raw-power lags. Unlike the author’s reference implementation, it omits target-time cyclic features and astronomical night masking. It can consequently predict positive PV power after sunset, especially at three hours. These results must not be used to characterize the performance of PV_ELM_pred or the associated research.

The independent audit found no target-time shift or RMSE arithmetic error. It did find that this simplified protocol is inadequate as a showcase of the full forecasting methods. The existing numbers are retained transparently, rather than replaced by models selected after examining their test errors.

At one hour, the displayed ELM-30 RMSE is 1.568 kW versus 1.895 kW for raw persistence (17.3% reduction). At three hours it is 2.698 kW, including avoidable nocturnal errors. These are whole-test errors, not errors for the plotted week. Further comparison should reproduce the reference preprocessing and report daytime/all-hours metrics separately.

Reference AR implementation · Reference cyclic features and night mask

New teaching calculation on an already-public dataset. These results are not the results of an unpublished manuscript, nor a reproduction of the full repository benchmark.

Does a larger model earn its extra complexity? Compare ordinary persistence, a six-lag linear model and two small Extreme Learning Machines on the same Palaiseau AC-power series.

Start with the evidence

Default horizon: one hour. RMSE below uses the entire held-out test period, day and night, with the same targets for every model. The chart shows only a selected week. Lower RMSE is better; model size is not an energy-consumption measurement.

One-hour test RMSE, W; seed 0 for ELM
ModelRMSE W
Persistence1895.3
AR(6)1602.7
ELM 102091.9
ELM 301568.4

Loading the interactive comparison… The static score table remains available without JavaScript.

Protocol: keep the future out

  1. Data: the public half-hour Palaiseau example in PV_ELM_pred/data.zip, with UTC timestamps and AC power in W.
  2. Chronological split: first 60% training, next 20% validation, last 20% test. Split dates and a source checksum are in the downloadable JSON.
  3. Six observations at or before forecast origin form the input. Standardization is estimated on training only. Each horizon is trained separately.
  4. AR is linear ridge regression with an intercept. ELM uses fixed Gaussian random input weights and tanh activation; only output weights are fitted. Ridge penalty is selected on validation from a fixed grid.
  5. Test targets never enter model fitting or penalty selection. Forecasts are clipped at zero. Night observations are retained; no filter uses the future observed production.

Size, variability and limits

AR stores 7 fitted coefficients. ELM-10 stores 81 coefficients (11 fitted); ELM-30 stores 241 (31 fitted), excluding scaling constants and runtime overhead. Three random ELM seeds are evaluated; the chart and table display seed 0. The downloadable report includes the three test errors. Do not select the best seed on test.

This is one site and one chronological split. Six lags and hidden sizes are fixed teaching choices. A daytime score, rolling evaluation, additional seasons and sites could change the conclusions. Persistence here means raw-power persistence; it is not smart persistence, BLEND or ARTU. Hardware energy and latency were not measured.

Reproduce and cite

Download observations, forecasts and protocol JSON · Download the calculation script (Python 3; install numpy, pandas and requests) · Public source dataset, original software and team credits.

ELM foundation: Guang-Bin Huang, Qin-Yu Zhu and Chee-Kheong Siew (2006), Extreme learning machine: Theory and applications. This page implements a small teaching model; it does not claim ELM’s invention or reproduce every PV_ELM_pred variant.

Lecture : comparez les méthodes sur les mêmes observations et le même horizon. L’erreur affichée porte sur tout le test, pas seulement sur la semaine du graphique. Un modèle plus gros n’est pas automatiquement meilleur ; ce calcul isolé ne démontre pas le classement général des méthodes.

Research guide · BLEND · ARTU · Stochastic persistence