# From forecast to decision

> When forecasts at a large generation facility were already good, where was the value? We designed a system that explains deviations, makes uncertainty visible and supports the bidding decision.

URL: https://www.oneeyesystems.com/en/work/tahminden-karara/
Türkçe sürüm: https://www.oneeyesystems.com/tr/calismalar/tahminden-karara/index.md

- Domain: Energy · renewable generation
- Status: Project completed · phased rollout

## Problem

The facility used several forecast sources and its accuracy was already good. Yet deviations were not systematically explained, sources were not combined in a single layer, reports were compiled by hand and day-ahead bids relied on a single point forecast. The real question was not “how do we fix the forecast?” but “how do we make better decisions with a good one?”

## Approach

1. Honest measurement first. We recomputed the existing accuracy metric from raw data and verified how it was defined.
2. We built a data foundation that stores every forecast revision separately, so the forecasting process itself became measurable.
3. On top of a physics-based model, we added machine learning that learns only the systematic error, together with uncertainty bands.
4. We developed an optimisation layer that treats the bid as a decision under uncertainty and asymmetric cost.
5. We added a language-model layer that explains deviation causes and automates reporting.

## Critical decisions

### No promise of miracle accuracy

The existing forecast was already good. Claiming a large improvement would have been unrealistic and risky, so we looked for value in root-cause analysis, uncertainty and decision support.

### Data foundation first

Every improvement depended on tracking when each forecast was issued and for which target hour. That is why the data structure was built first.

### Keep the physics, let ML correct the error

The model learns from the physical baseline's error, not from raw data. Explainability is preserved and the learned part stays bounded.

### Work with the uncertainty we can control

We modelled the facility's own generation uncertainty. We did not aim to forecast market direction we cannot control, and set success criteria accordingly.

### Roll out in shadow mode

Recommendations were first recorded alongside real decisions without being applied. Rollout was designed to progress gradually as evidence built up.

### Language models for analysis, not the core

Statistical models produce the numbers. The language model turns them into explanatory narratives, reports and answers to operators' questions.

## Details

### Why this example?

It makes our approach concrete: define the problem correctly, acknowledge what the current system already does well, and look for value where it is genuinely open.

### Phases

| Phase | Focus |
| --- | --- |
| Data foundation | Forecast revisions, measurement, data validation |
| Measurement and root cause | Automated accuracy reporting, deviation causes |
| Forecast and uncertainty | Physics + machine learning, uncertainty bands |
| Decision optimisation | Bidding decision, shadow mode |
| Operator assistant | Natural-language queries, automated reporting |

Each phase began once the previous one's outputs had been measured. Organisation and facility details are withheld for client confidentiality.

---

One Eye Systems — Enterprise AI consulting and implementation · https://www.oneeyesystems.com/ · info@oneeyesystems.com · https://www.linkedin.com/company/oneeyesystems/
