AntaresSimulatorTeam / Antares_Simulator

Antares-Simulator is an Open Source power system simulator to quantify the adequacy or the economic performance of interconnected energy systems, at short or remote time horizons.
https://antares-simulator.org
Other
57 stars 23 forks source link

ST-Storage Simultaneous Injection & Withdrawal #2079

Open ThanosGkou opened 2 months ago

ThanosGkou commented 2 months ago

The case of simultaneous injection and withdrawal of st-storage objects (of type "Battery") was observed in a real-life case study. As such, I can't really provide a directly reproducible study, but I can provide some hints that I think are relevant. The below comments are what suspect is happening, but haven't verified it in practice.

I'm using Antares 8.6.6 in Windows 10.

When the phenomenon of simultaneous charge+discharge takes place, it wasn't in my case accompanied by spilled energy. BUT, the marginal price was a bit negative, e.g. -0.08 e/MWh, which means that the system is marginally not spilling energy, because the Cost of Spilled energy was set in my case to 0.1e/MWh.

So, if a 1000 MW battery has 90% efficiency, a simultaneous charge+discharge would provide "free" dissipation of 100MW. These 100MW, if they were to be spilled, they would be charged at a cost of 0.1e/MWh. So, from an optimization point of view it makes sense to take advantage of this efffect, but in my opinion there should be a constraint to forbid this behaviour.

matbossSG commented 1 month ago

Hi,

I am not associated with RTE nor with the development of Antares so I can not answer from the implementation side.

Non-simultaneous charging and discharging constraints are non-linear because you have a multiplication of two variables:

$$P{charge} \cdot P{discharge} = 0$$

hence it will not fit into the current linear problem used in Antares. You can however write the constraint as MILP using big-M reformulation, which could then be solved with a MILP solver. There's a trade-off between the solve time (number of added binary variables) and accuaracy. Since the situation where the battery volontary spills energy is only happens with positive Cost of Spilled energy or negative prices, it seems that the problem is not that recurrent at the moment (if I'm not mistaken, renewable cost cannot yet be negative in Antares). Might be interesting to follow-up in the future as the share of renewable in the system increases.

Hope it helps !

NeutrinoZeng commented 1 month ago

This phenomenon also occured in my study. If too much spilled energy exists and a big penalty factor applied, a deep negative prices will occur. The pump-storage plants will pump and generate the energy at the same time.

flomnes commented 1 week ago

Yes this phenomenon occurs to dissipate some energy for free. It allows the optimizer to avoid spillage costs, so in many cases it is in fact optimal to charge and discharge simultaneously.

As suggested by @matbossSG, if we introduced a binary variable per hour (charge OR discharge), I highly suspect that we would see charge/discharge/charge/discharge/etc. cycles in situations where spillage would normally occur.

payetvin commented 12 hours ago

Should be documented