GPU-Accelerated Dynamic Programming for Multistage Stochastic Energy Storage Arbitrage
Thomas Lee, Andy Sun
TL;DR
This work introduces a GPU-accelerated dynamic programming framework for multistage stochastic energy storage arbitrage, recasting backward induction as tensor-based operations to exploit GPU parallelism and handle general (including non-concave) payoffs via convexification. It formulates both deterministic and stochastic storage models and derives price–quantity bid curves from value-function subgradients, ensuring market-feasible bids through monotone, convexified mappings. Numerical results demonstrate near-exact profitability (0.1–0.3% gaps) relative to MILP benchmarks, with significant advantages in negative-price regimes and dramatic speedups (up to ~100x CPU and ~8,000x MILP). The approach enables rapid, large-scale scenario analysis and provides tangible gains from using stochastic DP bid curves over traditional self-scheduled or myopic strategies, highlighting practical implications for storage valuation and market participation.
Abstract
We develop a GPU-accelerated dynamic programming (DP) method for valuing, operating, and bidding energy storage under multistage stochastic electricity prices. Motivated by computational limitations in existing models, we formulate DP backward induction entirely in tensor-based algebraic operations that map naturally onto massively parallel GPU hardware. Our method accommodates general, potentially non-concave payoff structures, by combining a discretized DP formulation with a convexification procedure that produces market-feasible, monotonic price-quantity bid curves. Numerical experiments using ISO-NE real-time prices demonstrate up to a 100x speedup by the proposed GPU-based DP method relative to CPU computation, and an 8,000x speedup compared to a commercial MILP solver, while retaining sub-0.3% optimality gaps compared to exact benchmarks.
