Open zach401 opened 5 years ago
Design will require a new subclass of ChargingNetwork (ProbabilisticNetwork?) and one of EV (ProbabilisticEV?).
New variables
New variables
waiting_queue (queue) - Queue holding EVSEs who are waiting for a spot to open. Not including those who have been notified.
notified (set) - Set of session_ids for user's who have been notified that they can exit the queue.
plugin()
unplug()
When an EV is done charging and its unplug_delay is < inf or not None, an UnplugEvent should be generated with timestamp t + unplug_delay. The original UnplugEvent should be deleted from the queue.
This design will require giving ProbabilisticNetwork access to the event_queue.
See branch stocastic_events.
Feature
In some experiments it is helpful to not assign users to spaces deterministically, but rather according to some probability distribution over the open spaces in the network.
In the case that no spaces are available, the EV should be placed into a queue and wait for the next available space (possibly with a delay to model switching time).