Release tests
13 deterministic tests passed for SOC feasibility, information timing, block commitment, nonlinear degradation normalization, solver behavior, and oracle dominance.
Research benchmark · Research benchmark
Benchmark causal battery policies without pretending the benchmark is a live market system.
VoltRL fixes information timing, state representation, battery constraints, degradation assumptions, holdout separation, and result provenance so policy comparisons remain auditable.
Engineering question
Audit finite-state battery-arbitrage policies under explicit synthetic and historical information protocols without presenting the benchmark as live bidding.
System and evidence boundary
The benchmark compares price-only and price-plus-hour protocols while keeping perfect foresight outside the causal policy set.
Verified results
Every visual below points to its source data or retained source format and to the release- or commit-specific implementation behind it.
Copied from v1.1.0 results_revision2. Historical panels use OPSD DK1/DK2 day-ahead data; synthetic panels use 30 independently regenerated seeds.
python scripts/generate-open-engineering-figures.py --sources-root <audit-root>
The price-only and price-plus-hour comparison is separate from historical block scheduling. Perfect foresight is a diagnostic bound, never an available causal policy.
python scripts/generate-open-engineering-figures.py --sources-root <audit-root>
The released figure combines day-ahead forecast diagnostics with explicit no-cost, linear, and nonlinear degradation-model sensitivity.
python scripts/generate-open-engineering-figures.py --sources-root <audit-root>Validation and evidence
Thirteen deterministic tests passed; the release contains a manifest, CSV results, and six PNG/PDF figure pairs.
13 deterministic tests passed for SOC feasibility, information timing, block commitment, nonlinear degradation normalization, solver behavior, and oracle dominance.
v1.1.0 includes seed metrics, bootstrap comparisons, historical schedules, forecast diagnostics, sensitivities, solver checks, a manifest, and six PNG/PDF figure pairs.
The required OPSD 2020-10-06 filename, DOI, official package URL, two market columns, and SHA-256 are recorded; the 124 MB source CSV is not committed.
The full benchmark was not rerun during this site audit because the large OPSD input was absent. Release tests passed and the committed result bundle was inspected byte-for-byte.
Shortest verified path
git clone https://github.com/mohammadrezwankhan/voltrl.git
cd voltrl
git checkout v1.1.0
python -m pip install -r requirements.txt
# Download and checksum the official OPSD 2020-10-06 CSV first.
python voltrl_benchmark.py --opsd-csv data/opsd_time_series_60min_singleindex_2020-10-06.csv --output-dir results_revision2 --synthetic-seeds 30 --synthetic-hours 17520 --candidates 4,6,8,10,12,16,20,24,32,40,48
python -m unittest discover -s tests -v
Verification environment: Python 3.12.13 with the pinned v1.1.0 dependency stack on Windows 11. Commands are concise entry points; repository documentation remains authoritative for setup details.
Documentation map
Engineering boundary
Related professional context