Station-based vehicle-sharing [SB_VS]
This model describes a rental transport system in which users can pick-up a vehicle at specific locations (called stations), and realise a one-way trip: the vehicle can be dropped at any station of the system. Existing parisian Velib’ is an example of this system for bike vehicles.
Model description
Stations
Stations can store a limited number of vehicles (parking places). No more vehicle can be parked if a station is full. In order to get or leave a vehicle, users must request the station. If their request cannot be satisfied, for instance if they want to leave their vehicle but the station is full, they can wait in the station’s queue. If a change in the station’s stock allow the request to be satisfied, it is immediately realised and the user leaves the queue.
Users
Users travel from their origin to destination using the vehicle-sharing system, based on the behaviour described in the following flowchart. They may, or not, be informed of current stock of vehicles and available parking places on each station (e.g. with a mobile application). They also have a patience attribute that defines the time they spend waiting at stations before deciding a new action.
The choice of a station depends on the information available to the users. If they have a service application, they can ignore the irrelevant stations and go to the closest one fitting their needs. If they don’t have it, they simply go to the closest station.
When they are in a station’s queue, users wait until their patience is exhausted. Then, they decide if they leave the queue or if they keep waiting.
Vehicles
Vehicles don’t have an autonomous behaviour: they are only used by the clients for their rides and are idle in the stations otherwise. They allow agents to use a different part of the network and travel a different speed.
Model implementation
Simulation model
Simulation model:
starling_sim.models.SB_VS.model.Model
Agent population:
DictPopulation
Environment:
Environment
Topology:
OSMNetwork
Parameters:
SimulationParameters
Dynamic input:
starling_sim.models.SB_VS.input.Input
Output factory:
starling_sim.models.SB_VS.output.Output
Agent types and classes
This table provides the agent_type values to put in the input files for the agents of the model and their respective classes.
Agent |
agent_type |
class |
Stations |
station |
|
Users |
user |
|
Vehicles |
vehicle |