Modelling the storage fleet
Storage charges when it's cheap, and discharges when it's expensive. This smooths extreme prices.
Fleet storage is dispatched to maximize its revenue, which smooths national power prices
The fleet storage dispatch is determined by the GB price without any storage. We use a Mixed Integer Linear Programme to determine the most optimal action for storage that maximises fleet storage revenues. Various constraints are applied to ensure we don't cause price spikes (or troughs) when the fleet charges (or discharges).
Fleet storage includes Battery, Pumped and Other (such as Compressed Air and Liquid Air) storage. In each year of the forecast and for each storage type, we take power capacity (MW) and energy capacity (MWh), and efficiency, to schedule charge and discharge actions.
Below is an example of three days of this. Storage acts to flatten prices: overnight low prices increase due to the fleet's charging actions, and peak prices fall due to discharging actions.
Some of the storage fleet will provide grid services like frequency response
Check out our ancillary service forecast and storage projection
We take out the ancillary requirement from the overall storage fleet to get the 'merchant' fleet - assuming storage that does not participate in ancillary markets will instead deploy its flexibility in wholesale markets.
Optimising the storage fleet gets complicated with more than ~30GW online
If the whole fleet charges (or discharges) at the same time, new price spikes would be created. This is a particular issue later on in the forecast, when we have 10's of GW of storage online. In reality, storage acts to smooth peaks and troughs. So, we make sure that the fleet dispatch acts to decrease price spreads:
- Storage smooths demand: De-rated margin (ie demand minus renewable generation) is a good proxy for price, which we expect the storage fleet to smooth out. So, we use de-rated margin to model storage actions. When it's 10 GW below the average of the day, fleet storage can charge up to 10 GW; conversely, when it's above the median, it can discharge. This prevents fleet storage from increasing demand (and so price) above the daily average when it charges.
- Storage charges and discharges over multiple periods: In our optimization model, we include a term that increases the number of periods during which fleet storage charging and discharging can occur. This spreads charge and discharge over more periods.
- Fleet revenues are penalized if margin gets low: We add a penalty term that lowers storage fleet revenues if the available generation (excluding DSR) minus demand falls below a certain level. This prevents storage from contributing to scarcity and driving high prices.
- Cycling cost or strike price: We model the cost of cycling—requiring a minimum price spread to charge and discharge—which reflects the system's CAPex, assuming 8000 lifetime cycles. The numbers for CAPEX are from NREL and include learning rates. We assume the cost of pumped hydro will stay flat, and other storage will follow the same learning rate as battery storage.
- Iterate multiple times: We split the fleet into a handful of smaller fleets and optimize over each of these. Then, we sum these up to get an overall dispatch. This acts to smooth storage actions out even more.
Updated about 1 month ago