Platform

One loop. Five stages.

Every stage reads and recommends. None of them touches your equipment.

  1. 01Sense
  2. 02Forecast
  3. 03Optimize
  4. 04Plan
  5. 05Learn

01 / 05

Sense

Checks every file before anything is built on it.

  • Imports meter exports: public datasets, or your own CSV.
  • Units are declared, never guessed from the size of the numbers. No declared unit, no import.
  • Catches cumulative kWh counters posing as power readings.
  • Checks timezones and daylight-saving changes.
  • Quarantines a bad file and says why, without holding up the rest.
  • Bridges gaps of up to an hour with a straight line. Longer gaps are left out, never filled in.

LimitsA read-only framework for live feeds exists, but its only connector replays CSV files. No live site is connected.

02 / 05

Forecast

Predicts the next hour of load.

  • An XGBoost model forecasts one hour ahead from your load history, the calendar and, where your data has it, historical outside temperature.
  • Every forecast is scored against three simple baselines: persistence, same time yesterday and same time last week.
  • An optional day-ahead view looks 1 to 24 hours out, with a 90th-percentile high estimate for likely peaks.

LimitsOnly the 1-hour forecast is validated. The day-ahead view is not part of that result, and there is no live weather feed.

03 / 05

Optimize

Prices the load shifts that would cut the peak.

  • A rule-based peak shaver moves flexible load out of the peak to the nearest quieter interval on the same day.
  • Each recommended shift is priced against your demand charge.
  • How much of your load is flexible is an assumption, and every result states it.

LimitsIt's a greedy method, not a full optimizer. A better optimizer could only find more, so treat its savings as a floor.

04 / 05

Plan

Turns recommendations into a schedule your team can follow.

  • Each shift becomes a pair of actions: reduce load here, add it back there.
  • A lead-time check drops any action that would arrive too late to act on. If either half misses, both are dropped.

LimitsExecution is simulated. Qyvern has no write path to your equipment; your operators carry out the plan. Ramp limits and service levels are not modelled.

05 / 05

Learn

Checks whether the forecast and the plan actually worked.

  • Error budget. Is forecast error inside its limit?
  • Skill. Does the forecast still beat persistence?
  • Realization. How much of the planned shift held up when replayed against the meter?
  • Dollars delivered. How much of the projected saving landed on a billed peak?

LimitsWhen a check fails it prints RETRAIN RECOMMENDED. It never retrains itself; a person decides.

The benchmark

Walk-forward. No peeking.

01

37 public buildings

From the Building Data Genome Project 2, each with at least 95% usable data.

02

Walk-forward

Each model trains only on data from before the window it predicts, then steps forward. 17 steps per building.

03

455,869 held-out hours

Every forecast is checked against what the meter recorded, on hours the model never trained on.

04

Scored against persistence

The rule that says the next hour will look like this one. Same time yesterday and same time last week are scored too.

Result: better than persistence on 35 of 37 buildings, with a median ~25% lower 1-hour forecast error. Error is mean absolute error for each building; the headline is the median across buildings. The two buildings where persistence won are reported, not hidden. Both are very small meters.

Tested on public buildings, not on a customer's site. That's what the free backtest is for

Why you can trust the output

Built to refuse a wrong number

The failure we design against isn't a crash. It's a plausible number that is quietly wrong.

Units declared

You state kW or kWh. Units are never inferred from the size of the numbers, because the same reading can describe a closet or a whole building.

Counter detection

A cumulative kWh counter is caught before it can be read as power.

Time and DST checks

Timezones and daylight-saving changes are checked, so a doubled or missing hour can't pose as a peak.

Quarantine

A file that fails a check is set aside and announced. It never stalls the rest, and it is never quietly patched.

Confidence tiers

Every result carries a tier set by how much history there is: standard, reduced, provisional or insufficient. Only standard supports an accuracy claim. Too little history gets no accuracy number at all.

Learn's four checks

Error budget, skill, realization and dollars delivered, on every run. When one fails, the output says so.

Read-only by design

It advises. Your team acts.

Qyvern reads meter data and returns recommendations. It has no write path to your equipment, and its live-feed interface doesn't even define a write method.

When live feeds arrive, the collector runs on your premises and only reads. Qyvern never connects into your control network.

Multi-site view

Many sites. One bill. No double counting.

The multi-site view lines up sites that share a utility account, read-only. It refuses to add their dollar savings together: a shared demand charge is set by one combined peak, so per-site savings don't add up to it.

Which sites share a bill is declared, never guessed from their names. Mixed timezones or meter intervals are refused, not resampled.

Three sites feed one shared bill; adding their separate savings is refused Site A Site B Site C One bill One peak

Savings A + B + CRefused: it double counts

See it run

Watch the loop on one public building, or have us run it on a year of yours.