Skip to content

v0.3.0 — applied-RL hardening

Choose a tag to compare

@DenisDrobyshev DenisDrobyshev released this 17 Jul 22:30
· 27 commits to main since this release

Highlights

Honest, multi-seed proof. The applied-RL results are now mean ± std over 3 seeds against the strong classical baseline, not single-seed figures or straw men. RL wins five (e.g. non-stationary inventory 278.5 ± 2.4 vs 240.7 best fixed base-stock, +16%; energy vs a greedy price-threshold controller; queue vs the best value threshold) and honestly matches the optimum on two (stationary inventory, pricing).

Real Stable-Baselines3 comparison in the docs: PPO CartPole parity 500/500, DQN CartPole 327 ± 122 vs 96 ± 57.

Added

  • decisionrl.baselines — reusable classical baselines incl. the exact newsvendor base-stock optimum.
  • NonstationaryInventory — the "classical methods break" environment (19 envs, 7 applied).
  • decisionrl.config — YAML/JSON experiment runner + decisionrl run <config> CLI.
  • decisionrl.tracking — reproducibility manifests (git SHA, versions, seed, config, metrics).
  • render_rgb on every applied env; Applied-RL notebook; multi-seed verification script.

Changed

  • Repositioned end-to-end around operational decisions ("Beyond operations" section for the broader library); "Why RL, and not a solver?" section.
  • CI slow job parallelized with pytest-xdist.

Install: pip install -U decisionrl