This project set out to propose a solution to the problem of bus bunching. This is a phenomenon whereby public buses that were supposed to be spread out equally across a route, end up arriving at bus stops at the same time, in bunches.
This could happen due to a variety of reasons, including disruptions along the route and passenger demand. Buses would start to fall behind schedule, leading to an accumulation of passengers waiting at the upcoming stops, causing the buses to spend more time boarding passengers, thus further deviating from their intended schedule. In turn, the ensuing buses would have less passengers to pick up, and would start catching up with those before them, causing the bunching. This gives rise to the perception of an inefficient and infrequent bus service, where the first buses would contain the majority of the passengers, while those arriving at bus stops after them would be almost empty.
Different strategies could be adopted to correct bus bunching. This study has considered the following two lines of action: a) vehicle holding, where a bus would be instructed to wait for a specified amount of time after passengers disembark or board the vehicle, and b) stop-skipping, whereby a bus would be instructed to skip the next stop. Alternatively, the bus can proceed normally along its predefined route, stopping at the following stop and leaving immediately after taking on new passengers or allowing them to disembark.
Reinforcement learning (RL) was employed in an attempt to identify a method that would maintain the necessary headway (the distance between buses) while keeping passenger waiting time to a minimum. The TRPO and PPO algorithms were applied in this respect, and the solutions were evaluated against a benchmark route used in previous studies. This route was a loop consisting of six buses servicing twelve bus stops, each with different passenger-arrival rates. The resulting models provided the information as to which of the control strategies described above should be used each time a bus would arrive at a bus stop.
The results indicated that, through the proposed algorithms, bus bunching could be prevented and that the average passenger waiting time could be kept stable, as opposed to scenarios where the buses would not be monitored adequately and, hence, accumulating. Moreover, whereas most of the previous studies tended to exclude traffic from their scenarios, this work introduces traffic in the simulation, rendering the proposed solution more realistic.
In addition to the main task, the project also investigated the possibility of RL being used to rectify scenarios where buses would be already bunched. It was noted that the proposed method proved successful in distributing the buses more efficiently, regularising the service, and restoring the average passenger waiting time to normal levels.
Figure 1. Four bunched buses visualised by the simulation
Student: Joseph Grech
Supervisor : Dr Josef Bajada