Skip to main content

EnergiCast

CI Docs License: MIT Python GitHub release (latest by date)

EnergiCast is a domain‑specific Python library for energy forecasting (load, PV, wind, prices) that combines:

  • ⚡ Domain‑aware AutoML with hierarchical reconciliation and energy‑weighted cost metrics,
  • 🌞 Physics–ML hybrids (pvlib solar/wind features + ML/DL models),
  • 🔄 Synthetic gap filling with seasonal and generative imputation constrained by physics,
  • 🌦️ Weather scenarios with ensemble perturbations for uncertainty quantification,
  • 📊 Benchmarks (OpenSTEF‑like datasets) and standardized backtesting protocols.

✨ Features

  • AutoML: tailored search spaces for energy time series (ARIMA, ETS, XGB, TFT roadmap).
  • Physics priors: PV/wind features from pvlib and meteorological signals.
  • Synthetic imputation: diffusion/GAN roadmap, with ramp‑rate & non‑negativity constraints.
  • Hierarchical reconciliation: MinT‑style coherent forecasts (asset → feeder → system).
  • Metrics: pinball loss, CRPS, and energy‑weighted MAPE with price‑aware penalties.
  • Deployment: simple model export and CLI tools.

🚀 Quickstart

Install in editable mode for development:

git clone https://github.com/TyMill/energicast.git
cd energicast
pip install -e .

Run the end-to-end workflow on the bundled example data:

python -m energicast.cli train --config examples/pv_config.yaml --out runs/demo_model
python -m energicast.cli backtest --config examples/pv_config.yaml --out runs/demo_backtest
python -m energicast.cli export --model-dir runs/demo_model --fmt pickle
python -m energicast.cli report --backtest-dir runs/demo_backtest

📚 Dokumentacja

Dokumentację można zbudować lokalnie przy pomocy MkDocs:

pip install -e .[docs]
mkdocs serve

Po wdrożeniu GitHub Pages będzie dostępne pod adresem https://TyMill.github.io/energicast/.


📂 Repository Structure

energicast/
├─ pyproject.toml
├─ src/energicast/
│  ├─ data/        # loaders for entsoe, pvlib, weather
│  ├─ impute/      # synthetic gap filling
│  ├─ features/    # calendar + energy features
│  ├─ models/      # ARIMA/ETS, XGB, TFT (roadmap)
│  ├─ hier/        # reconciliation
│  ├─ automl/      # Optuna‑based AutoML
│  ├─ metrics/     # probabilistic + energy metrics
│  ├─ scenarios/   # weather ensembles
│  ├─ bench/       # benchmark datasets
│  ├─ deploy/      # export utils
│  └─ cli.py       # Typer‑based CLI
└─ examples/       # demo scripts & notebooks

👨‍💻 Authors

Created by

  • Dr Tymoteusz Miller, University of Szczecin,
  • Dr inz. Ewelina Kostecka, Maritime University of Szczecin.

📜 License

This project is licensed under the MIT License – see the LICENSE file for details.

Metadata

Release files for energicast 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for energicast 1.0.0
File Size Uploaded
energicast-1.0.0.tar.gz 28.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for energicast 1.0.0
File Interpreter ABI Platform
energicast-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 59.5 kB

Release files / energicast-1.0.0.tar.gz

Download URL energicast-1.0.0.tar.gz
Size 28.4 kB
Tags Source
SHA-256 checksum
How to use checksums
25b34e4bced24e0149e505f0d8bb9ad5f65c775aa82929fb7f8e948586572381
BLAKE2b-256 checksum
How to use checksums
bdcaffe93aa55cc13887555c0d80c65de4285c329281208face053d89c62b08a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.0 CPython/3.9.13

Release files / energicast-1.0.0-py3-none-any.whl

Download URL energicast-1.0.0-py3-none-any.whl
Size 31.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bc73e73c13301ad2d99bd0ac9fac862c919b5841f14b8a326a0fb94cdac92e51
BLAKE2b-256 checksum
How to use checksums
4ffc8bca849bbec0d91f220103b5d672960a04ad05ea5dcbf66a8002d6f54e38
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.0 CPython/3.9.13

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page