Hi, I see that the actions correspond to the charging decision of batteries. If I understand correctly, the electricity load, battery, and PV of each building are tied together, i.e. Building A’s battery can’t be charged with building B’s solar generation or be used to supply building B. In that case, the optimal policy for individual buildings should simply be the optimal policy for the district? Then why is multi-agent coordination necessary?
I think you’re right and I’m also confused by this. The evaluation metric is also just the sum of individual buildings’ metrics.
You might be able to increase each building’s performance by incorporating information from other buildings, but that is different from agents actually learning to coordinate.
Hey, do you have any updated information about this question? I just stumbled over here and am wondering the same thing…
Basically, my question is: Can building A use the stored energy of building B’s battery?
Also confused on this problem.
The original paper states “If the RL agent takes an action that leads to a discharge of the
battery by an amount that is greater than the electricity demand of
the building, the excess electricity goes into the microgrid. Such
excess electricity can be either used by other buildings (and reduce
the amount of electricity drawn from the main feeder), or can go to
the main grid (microgrid overgeneration)” but I can’t seem to find it anywhere in the implementation.
Multi-agent coordination becomes necessary not only when the buildings are able to share resources but also when there are grid-level objectives that the district needs to meet. We introduced such objectives recently here.
@tobirohrer thanks for your question. There is no interaction nor flow between buildings’ energy systems.
Thanks for your question @mark_haoxiang. In theory yes, whatever excess is discharged by the batteries goes to the grid and can be used by other buildings and that’s what was meant in the paper but in practice i.e. the environment as implemented, there is no way to take account of how much of excess discharge is then distributed to other buildings yet since we don’t limit or specify what is available from the grid at every time step. This is why no such implementation exists anywhere in the source code.