SED internal workshop

Day-ahead forecasting of net active and reactive power in the Marly low-voltage grid

Data, pipeline, resultsNovember 2026
HES-SOLSDS, Large Scale Distributed Systems
power to the customers solar power back into the grid
Contents
  1. 01Forecasting modulewhat goes in, what comes out
  2. 02The datastructure, grid, meters
  3. 03Cleaningthe meter as the unit, and what the model trains on
  4. 04The pipelinestage by stage
  5. 05Resultsthe forecasts delivered for the grid
  6. 06SED Data Explorera short tour
  7. 07Next stepsand what would help
01Forecasting module

Tomorrow, quarter hour by quarter hour, with a range

02

The data

Structure, grid, meters

    02The data

    One database, three kinds of table

    02The data

    The grid is a tree

    ★18 kV feed-in transformer switch consumer prosumer both
    0
    nodes, 195 of them customers
    0
    transformers, 18 kV to 0.4 kV
    0
    switches, all closed
    0
    hops on the deepest path (19 without switches)
    02The data

    Most nodes have one meter, a few have very many

    02The data

    Three properties that shape every decision

    > 4years
    between the first and the last meter of one node

    Meters of the same node arrive years apart, so a building's history is a staircase.

    0days
    median history of the 922 meters reporting in September 2026

    Two commissioning waves, 2024 and 2025: one to two years of history per meter.

    0
    meters at the 13 transformers

    Nothing is measured at the transformer. A station's load is the sum of the meters below it.

    03

    Cleaning

    The meter as the unit, and what the model trains on

      03Cleaning

      The meter is the unit of cleaning

      1

      One clock

      Daylight-saving fold resolved, timestamps snapped to the 15-minute grid, duplicates removed, regular index.

      2

      Live span

      Before commissioning or after a meter stops, a slot is out of span: a different fact from missing, never repaired.

      3

      Quality checks

      EN 50160 voltage bounds, frozen signals (8 identical slots or more), a −0.05 kW floor for consumers only.

      4

      Repair

      Gaps of 1 to 2 slots interpolated, across midnight too. Longer gaps from the same weekday 7 to 28 days earlier, past only, level-matched, capped at 25 % of a day (40 % for prosumers).

      03Cleaning

      What the model is trained on

      A day trains or scores only if all 96 of its quarter hours are measured or interpolated. Reference-filled values never train and are never scored.

      04

      The pipeline

      Stage by stage

        04The pipeline

        Eight stages, one station at a time

        04The pipeline

        Scope: which meters belong to a station

        1. Edge direction is unreliable. 32 of 282 edges are stored child to parent: walk the graph undirected, orient it from the feed-in.
        2. A customer node can have children. 19 of 195 do (a looped service): keep walking through them.
        3. cn_fk is the stable key, node ids are not.
        4. Declared is not reporting. In scope only with 3 months of active power; stopped for more than 14 days means history, not forecast.

        Counts measured on the release the models were trained on.

        04The pipeline

        Features: what is known on the evening of day D

        04The pipeline

        One XGBoost per class, all 19 quantiles at once

        Pooled over meters, made fair

        Each meter scaled by its own mean |P|; each meter weighs the same in total; its size goes back in as a feature.

        One model, 19 quantiles

        5 % to 95 % for 96 quarter hours, sorted so they never cross, then corrected per quarter of the day on the validation month.

        Station 220, final run
        ConsumersProsumers
        Meters3714
        Features3841
        Training rows1.09 M1.02 M
        Trees kept5971,107
        Fit on Baobab48 min76 min

        Depth 6, learning rate 0.05, at most 2,000 trees, early stopping after 50 rounds.

        04The pipeline

        Walk-forward, with a sealed final month

        Two references: same as yesterday, and same day last week, each with a range from its own errors over the previous 56 days.

        Scores: CRPS, MAE, nMAE, 90 % coverage, and Diebold-Mariano tests against both references.

        Caveat: training and evaluation use the measured weather of tomorrow, so the scores assume a perfect weather forecast.

        04The pipeline

        What the model relies on

        04The pipeline

        Running it reproducibly on Baobab

        One commit

        The code is frozen in git; nothing uncommitted can run.

        One bundle

        The commit, its file list and a checksum for every file.

        Slurm jobs

        One job per station and step on the public CPU partition.

        Results, stamped

        Forecasts, scores and logs, each traceable to the commit that made them.

        05

        Results

        The day-ahead forecasts delivered for the grid

          05Results

          What was delivered

          0
          customer nodes, the whole grid
          P & Q
          active and reactive power
          0
          quarter hours a day, median and 90 % interval
          05Results

          Against two simple references

          05Results

          A prosumer, Saturday 26 September

          Active power
          Reactive power
          05Results

          A consumer, Sunday 20 September

          Active power
          Reactive power
          06

          SED Data Explorer

          A short tour

            06SED Data Explorer
            1. NodesFilter to prosumer and mixed nodes, sort by length of history, open one.
            2. Node detailNode 241: P, Q, voltage, current; gaps and partial sums flagged; one week; its PV meter alone.
            3. NetworkThe grid as a graph, by transformer station.
            4. New NetworkThe October topology with its switches, linked to the current records.
            5. ForecastsStation 6, node 107, the sealed test month: forecast, 90 % range and measured, day by day.

            New Network shows the October release; the other views serve the August 2026 release.

            07Next steps

            Next steps

            Consistent levels

            Make station and grid forecasts agree with the node forecasts beneath them (reconciliation).

            Would help most

            One transformer measurement

            Even for a single station: today a station's load is only the sum of its meters, with nothing to check it against.

            SED internal workshop

            Thank you

            Questions
            HES-SOLSDS, Large Scale Distributed SystemsNovember 2026