Lab — Forecasting

The Wind Race

6 models · 744 hours · real data
◆ The PatternBetter information beats a cleverer model

Six forecasting models try to predict how much power the wind turbines of western Denmark will deliver seven hours from now. The road is the real output, hour by hour, for one month, from the Danish grid operator Energinet. A model that guesses right stays on the road. A model that guesses wrong ends up in the gravel.

Race them twice. First they only see how much it has blown so far. Then every model also gets the grid operator's weather-based forecast for the hours ahead.

What the race shows

Without forecast With forecast The forecast alone (without Thor)

Information gives the big jump. Method gives the last stretch. A cleverer model with nothing new to look at cannot see the weather coming.

When even the forecast missed

About the data

The whole race rests on two numbers for every hour: how much power the wind turbines in western Denmark actually delivered, and what Energinet had forecast the day before. The forecast does not cover the Thor offshore wind farm, which is why the dashed line runs below. Here is the whole month.

Actual output Day-ahead forecast Frozen measurement

What one row looks like

One row is one hour in Danish local time. There are 744 rows from 14 September 00:00 to 14 October 23:00, with no daylight-saving change in the period.

time
Start of the hour, Danish local time.
actual MW
The mean of twelve five-minute measurements in the hour. Onshore plus offshore wind in DK1 (Jutland and Funen).
forecast MW
Energinet's day-ahead forecast for the same hour, onshore plus offshore, without the Thor offshore wind farm. It is published at 18:00 the day before, so it was known well in advance.

Known errors and caveats

The forecast does not cover Thor
Energinet states in the description of the forecast dataset that the Thor offshore wind farm (about 1,000 MW) is not included. The actual output matches Energinet's settlement data, which include all wind farms. That is why the forecast is on average 741 MW lower, most of all when it is windy. This page therefore does not measure how good Energinet's forecast is. It measures how well the models can use it.
A frozen measurement
On 15 September from 10:00 to 23:00 the actual output is stuck at exactly 2,667 MW. Energinet's settlement data show 3,500 to 3,770 MW for those hours. The error has not been corrected, so the data are exactly as Energinet publishes them.
One missing measurement
8,927 of 8,928 five-minute measurements are present. The hour with the gap uses the mean of the eleven that are there.
One month, one area
The results hold for DK1 in autumn 2026. Other months and eastern Denmark (DK2) may tell a different story.

Sources

Energinet's open data, Energi Data Service. Actual output: the dataset ElectricityProdex5MinRealtime, columns OnshoreWindPower and OffshoreWindPower. Forecast: the dataset Forecasts_Hour, column ForecastDayAhead for Onshore Wind and Offshore Wind. Cross-check: ProductionConsumptionSettlement. Contains data used pursuant to “Conditions for use of Danish public-sector data” from Energi Data Service. This page is not made or endorsed by Energinet.

Method

Every model only sees what was known when it had to guess, seven hours before the hour it predicts. Without forecast, the models guess from the output alone: the Parrot repeats the last value, the Average takes the last twelve hours, the Ruler extends the trend, the Memory finds similar moments in the past (k-nearest neighbours), and the Neuron is a small neural network that keeps learning as the race goes on.

With forecast, those five start from the forecast and guess how far off it will be, each with its own method. The Calibrator is a linear regression on the latest measurement and the forecast, refitted every hour on what it has seen so far. It may scale the forecast, which matters here because the forecast leaves out Thor. Errors are the mean absolute difference in MW over the whole month. A car is on the road when its guess is within about 525 MW of the real output.

Report a mistake · Data: Energinet, Energi Data Service, 14 September to 14 October 2026.