# Synchronising Bus Bunching to the Spikes in Service Demand Reduces Commuters’ Waiting Time

Authors: Luca Vismara; Vee-Liem Saw; Lock Yue Chew
Journal: Complexity
 (2022)

---

## Abstract

Bus bunching is ostensibly regarded as a detrimental phenomenon in bus systems. We study a bus loop with two bus stops, one regular bus stop and one spike bus stop, where bunched buses can outperform staggered buses. The spike bus stop models a bus stop connected to a train or metro service, where passengers arrive in groups at periodic intervals (spikes). We introduce the configuration of synchronised bunched buses, where bunched buses wait for the spike in demand. For a wide range of parameters, synchronised bunched buses outperform perfectly staggered buses in terms of minimising the waiting time of commuters. We present an analytical formulation of the average waiting time in the case of bunched buses, synchronised bunched buses, and perfectly staggered buses with the consideration of different passenger demands, number of buses, and bus capacity. We demonstrate the validity of our analytical results through an agent-based simulation of the bus loop system.


---

## Body

## 1. Introduction

Bus bunching is generally regarded as undesirable in bus systems [1–13]. As explained in References [14–16], waiting time for passengers is reduced by a staggered bus configuration when passengers arrive continuously at bus stops. A common technique used to achieve a staggered configuration is holding [2, 4, 6, 16, 17]. As the headway between two buses is diverging from the ideal staggered condition, the bus approaching holds at its current bus stop after all of the passengers board until the ideal headway is restored. Dynamically controlling buses is challenging as instructions need to be given in real-time to drivers, and specific infrastructure, such as tracking devices on buses, are needed for the system to work. It is therefore important to explore alternative nondynamical techniques that can reduce waiting time without the complications of dynamically adjusting bus behaviour. Important results are achieved in the context of route and service planning. A common strategy is stop-skipping [18–21] where buses do not board or let people alight at certain bus stops. Another solution is having a demand-responsive transit system [22–24] where passengers make a request for a transportation service from their location to their destination. Such techniques require assumptions regarding passengers’ behaviours and knowing the origin-destination pattern of commuters. A recent result by our group [25] shows a significant reduction in waiting time using a bus assignment technique that does not require any assumption regarding passenger behaviour. In this work, we want to focus instead on an alternative strategy in bus deployment that leverages the time periodicity of spikes in demand and does not require dynamic controlling nor changing the assignment of buses to bus stops. In the transportation literature, the common assumption regarding passenger arrival is that the number of passengers arriving at a bus stop grows continuously and linearly with time [12, 16, 25] or according to a Poisson process [11]. Here, we want to study the case of a system with a spike bus stop.Passengers arrive at aspike bus stop in batches of p at a time at periodic intervals of Ts unit times. A real-world example of a bus stop having this property is a bus stop connected to a rapid transit system or a train station with periodic service. Passengers waiting at the bus stop are still increasing with time, as in the cases examined by the literature, but they increase periodically in groups of p, rather than one by one or continuously. To the knowledge of the authors, this kind of bus stop has not been studied before in the literature. Allowing p to be stochastic makes the model more realistic, however, for analytical tractability and to give physical insights, we consider p as a constant in this paper.In the literature, spikes in demand have been studied in terms of seasonal variations [26, 27] in the context of network planning.In this work, we study the case of a bus loop with onespike bus stop and one regular bus stop, as defined in Section 2. The regular bus stop is analogous to the bus stops examined [2, 14, 25]. Through analytical models, we compute the average waiting time for three configurations: bunched buses, synchronised bunched buses (as defined in Section 2.2), and fully staggered buses. For the bunched configurations, we consider the steady state where buses are already bunched and we ignore the transient. The calculations are performed for the case of unlimited bus capacity in Section 2 and by explicitly considering buses with limited capacity in Section 3. We compare the three bus configurations in Section 4 and we show that bunched buses synchronising with the spike in passenger demand can outperform perfectly staggered buses in the regime of high demand in the spike bus stop and when bus capacity is limited. We also briefly generalise the results for a loop with multiple regular bus stops in Section 2.4 and for higher frequency spikes in Section 2.5. In Section 4.4, we validate the theoretical results with a simulation. In Section 5, we summarise the results obtained and draw the conclusion and final remarks.


## 2. Three Scenarios with aSpike Bus Stop

The system we set to study is a bus loop with two bus stops. At the first bus stop, passengers arrive at a constant rate ofs per unit time. The second bus stop is called spike bus stop and passengers arrive in spikes of p people every Ts unit time. We aim to build an idealised system that can be solved analytically to draw insights from the bus interactions. We do not include important factors such as traffic as we focus on understanding the underlying mechanism of the interactions between passengers and buses when a spike bus stop is present. Nonetheless, this scenario is inspired by a real bus system: the shuttle buses in Nanyang Technological University (NTU) that serve the residential part and the academic side of the campus in a loop. As classes usually finish at the hour or half an hour mark, the few bus stops at the academic buildings get very crowded at regular intervals, while the demand is more constant at the bus stops towards the residential part of the campus. Another scenario of interest is modelling a bus loop serving a town or a district connected to the rest of the transportation network via a low-frequency train service. We also briefly explore the case of high-frequency spikes in the system. The first kind of bus stop, which we call regular bus stop, is modelled in the conventional way [1, 2, 6, 7, 12, 14, 16, 25, 28–33]. Passengers arrive at a constant rate s: defining Δt as the time elapsed since that bus stop was lastly served by a bus, the number of passengers waiting is s×Δt. While it is more realistic to model passenger arrival as a stochastic process [6–8, 10, 11, 28], however, for analytical tractability, in this work, we consider deterministic passenger arrivals at a constant rate s. In reference [25], we test with simulations how the analytical results obtained under the assumption of a constant rate of arrival s also apply in the case of Poisson arrivals with the same rate s. In the analysis presented in this paper, we fix the rate at which passengers board as l passengers per unit time and we assume passengers alight instantaneously at the opposite bus stop, not affecting the dwelling time. To simplify the expressions, it is convenient to work with the quantities k=s/l and P=p/l to represent passengers arriving at bus stops. Without loss of generality, we set l as one passenger per unit time (which effectively defines the unit of time) and refer to k=s/l as the arrival constant of the regular bus stop and to P as the number of passengers at the spike bus stop. We use nondimensionalised units. In this section, the capacity of the buses is unconstrained, while Section 3 explicitly considers the implications of limited capacity. All of the buses move at the same speed and take time T to complete the loop without counting the dwelling time at bus stops. If more than a bus is at the same bus stop, such as in a case of bus bunching, the load of passengers is equally shared, effectively multiplying the boarding rate. Notation wise, we use the square symbol □ to refer to the regular bus stop and the triangle symbol Δ for the spike bus stop. We measure distances in units of time, as the speed of the buses is fixed.The following three sections explore the three configurations of buses tested in the bus loop defined above:A: Bunched busesB:Synchronised bunchingC: Perfectly staggered busesCase B, “Synchronised bunching,” is a novel approach that aims at being easier to implement compared with dynamic control techniques, exploiting the periodicity of the arrivals at thespike bus stop. The definition of this tactic is given in Section 2.2.In the following sections, we calculate analytically the average waiting time for passengers at bus stops as a function of the crowdedness of theregular bus stopk=s/l, the number of people arriving at the spike bus stopP=p/l, and their period of arrival Ts for N buses. We consider spikes with a relatively long period Ts, such that at most one spike occurs during a revolution.


### 2.1. Bunched Buses

It is well known that uncontrolled buses bunch [3, 12, 14, 33], so this is a natural baseline and an important case to consider as bus bunching is not an uncommon occurrence in real-world bus systems.The general idea to compute the average waiting time is to separate the contribution of theregular□ and spikeΔ bus stops.For theregular bus stop, using the fact that passengers board in a FIFO way (the first to arrive is the first to board), the average waiting time at the regular bus stop is half the waiting time of the passenger who waited for the longest, who is the first to arrive at the bus stop after the last platoon of buses left the bus stop in the previous revolution. Passengers arrive and board in a linear fashion, and the last passenger to board is the one who arrives just before the platoon of buses leaves, giving a waiting time of zero; hence, the average is half the longest waiting time. The same idea is also used to compute the average waiting time in reference [25]. The linear nature of passenger arrival also implies that for a longer average waiting time at a regular bus stop, more passengers will be waiting, and the range of waiting times, from the longest to the shortest, is twice the average waiting time. The waiting time at that bus stop is(1)WA□=12T¯A−τA□=T¯A21−kN.The quantityT¯A represents the effective time taken for the buses to complete the loop, including dwelling time. It is defined in equation (5). The time spent dwelling at the bus stop is τA□ and it is proportional to the total passengers arrived, hence proportional to the time it takes to complete a revolution T¯A, times the arrival constant k=s/l. Having N buses bunching, the dwelling time is reduced by a factor 1/N as passengers can board in parallel the N buses speeding up the process. To compute the waiting time for the whole bus loop, the waiting time at each bus stop has to be weighted by the passengers boarding. To keep a consistent notation with k, we use the number of passengers boarding per revolution divided by the constant boarding rate l:(2)PplA□=kT¯A.Our calculations are in the steady state. However, it is possible to compute the waiting time dynamically for uncontrolled buses before they bunch. In reference [14], we present an analytical framework that allows us to compute waiting times dynamically for regular bus stops.In the case of thespike bus stop, passengers arrive in a group of P=p/l. They all wait for the buses to arrive. At every revolution, the waiting time will be different, unless Ts and T¯A happen to be exactly in resonance (in this work, we do not cover this possibility), so it is a reasonable assumption to consider an average value. Assuming that the buses are already in a bunched state, and for analysis purpose we have the platoon of buses distributed uniformly around the bus loop when the spike happens with the arrival of the passengers at the spike bus stop, the average time until the buses reach the bus stop is δΔ=T¯A/2. On top of δΔ time to wait, passengers need to board. The first passenger to board does not need to wait any longer, but the last passenger to board has to wait P/N units of extra time, as boarding is conducted in parallel with N buses, so, on average, the extra waiting is 1/2×P/N:(3)WAΔ=δΔ+P2N=T¯A2+P2N.Considering that passengers arrive at thespike bus stop every Ts, the average number of passengers boarding from this bus stop over a revolution is(4)PplAΔ=PT¯ATs.The final equation needed is forT¯A, the average time taken to complete a revolution, which comprises of the time T needed to drive, and the time spent at the bus stops boarding passengers τA□ and τAΔ:(5)T¯A=T+τAΔ+τA□=T+PT¯ANTs+kT¯AN=T1−P/NTs−k/N.From the denominator of equation (5), we see the two conditions of maximum crowdedness at which the bunched buses get stuck at one or the other bus stop. For the regular bus stop, N buses can board N passengers per unit time, hence if passengers arrive at a rate ≥N per unit time k≥N, the buses cannot finish boarding and T¯A⟶∞. For the spike bus stop, as buses require P/N unit times to board all the passengers from the spike, if P/N≥Ts a new spike arrives before the spike bus stop is cleared, blocking the buses and causing T¯A to diverge. The average waiting time in the bus loop is computed combining equations (1)–(5):(6)WA=PplAΔ×WAΔ+PplA□×WA□PplAΔ+PplA□=P2+NT¯AP+k1−k/NTs2NP+kTs.


### 2.2. Synchronised Bunched Buses

In this section, we introduce a novel approach to bus control. As dynamic control often requires specific infrastructure, complex algorithms, and nonlocal information such as the position of other buses [1–13, 20, 32–40], we propose a much simpler yet effective technique: hold the platoon of bunched buses at the spike bus stop until the spike happens. It is well known that buses tend to bunch, but bunched buses have a distinct advantage: they can distribute the load of passengers among them, speeding up boarding and reducing dwelling time. Another advantage is that N buses can accommodate N times as many passengers, although the problem of limited bus capacity is analysed in Section 3.2. This technique, which we call synchronised bunching, synchronises the effective time taken by buses to complete a loop (including dwelling time) T¯B with the period of the spike Ts.To calculate the waiting time in this scenario, we compute the waiting time at each bus stop and weight them by the number of passengers boarded from there. With theregular bus stop, the waiting time is computed in the same way as in equation (1), with the added condition that T¯B=Ts:(7)WB□=12Ts−τB□=Ts21−kN.Following the same idea as in equation (2),(8)PplB□=kTs.The waiting time at thespike bus stop is very simple, as the passengers can start boarding immediately because the platoon of buses is waiting for the spike, so the only time to wait is the time it takes to board, which is equivalent to the second term in equation (3) as boarding happens in parallel for bunched buses.(9)WBΔ=P2N.Given that the buses effectively takeTs time to complete a revolution, the number of passengers boarding per revolution is P.(10)PplBΔ=P.Combining the equations above, the average waiting time for passengers of the loop when thesynchronised bunching technique is employed is(11)WB=PplBΔ×WBΔ+PplB□×WB□PplBΔ+PplB□=P2+kTs2N−k2NP+kTs.


### 2.3. Perfectly Staggered Buses

The calculations in this section are performed under the assumption of perfectly staggered buses. As uncontrolled buses inevitably bunch, active control is necessary to keep buses staggered. There are several methods described in the literature to avoid bunching and keep a staggered configuration [1, 2, 4–8, 8–13, 17, 19, 35, 41–48]. The final result in terms of the average waiting time depends on the specific dynamic control technique used, so the average waiting time determined here is an approximation. In Section 4.4, we compare the analytical calculations with a time-based simulation, employing a headway-based holding control. We see very similar results in terms of waiting times in all but the most extreme cases with very high k where this approximation is less valid. In reference [14], we show that bunching can happen within a single revolution if the value of k is high enough that n∗<1, where n∗ is the number of revolutions needed for buses to bunch, hence invalidating the assumption that buses can stay staggered. Two buses starting from a perfectly staggered position in a loop with a single regular bus stop bunch in n∗=logk/2/2log1−k revolutions, according to reference [14]. For k≥0.5, uncontrolled buses bunch within the first revolution as n∗≤1. In this regime, keeping the buses staggered is very challenging, if not impossible. In Figure 1, the mismatch between a numerical simulation with dynamic control and the analytical results for the average waiting time is very significant when kT approaches 0.5T, as buses cannot avoid bunching in the simulation.Figure 1
Comparison of the average waiting time of passengers computed with analytical formulas and with a numerical simulation. The plot on the left considers the case of unlimited capacity described in Section2, while the plot on the right considers a limited capacity of c=⌊P/3⌋ and uses the formulas from Section 3. The circles, triangles, and crosses represent the results from the simulation for the cases A, B, and C, respectively. Discrepancies are caused by simplified assumptions, discretisation of variables in the simulation, and limited running time. The percentage of mismatch in the legend is the median of the difference between the simulation and the analytical result across the range kT, rounded to the closest integer. As explained in Section 2.3, the hypothesis of perfectly staggered buses C fails at high values of k, as we see from the plot. In this example, there are two buses N=2, the period of revolution is T=1000 time units, the period of the spike is Ts=3T, and P=200.The waiting time at theregular bus stop is computed as half the longest waiting time, in the same way as it was mentioned in Sections 2.1 and 2.2, but here the buses are assumed to be staggered, hence the bus stop is served N times every revolution.(12)WC□=12T¯CN−τC□=12T¯CN1−k.While boarding passengers from a bus stop, if other buses move, the system shifts away from a staggered configuration. To compute the average waiting time, we need to decide when the buses are considered perfectly staggered: either before or after they serve a bus stop. If buses are considered perfectly staggeredbefore serving the bus stop, the expression for WC□ is the one in equation (12). However, if buses are considered staggered after serving the bus stop, the average waiting time is τC□/2 longer than equation (12). We choose the first option, as it leads to lower waiting time. Different techniques of dynamic control to keep the buses staggered could be better described by either of the two choices of buses staggered before or after serving a bus stop. This difference is significant in the regime of high τC□=kT¯C/N where the assumption that buses can be staggered also fails. Each revolution will take T¯C as defined in equation (16). The number of passengers boarding from the regular bus stop during a revolution is computed as(13)PplC□=kT¯C,similarly to cases A and B in equations (2) and (8).The average waiting time at thespike bus stop is calculated under the assumption that buses are fully staggered and uniformly distributed around the bus loop, hence the closest bus to the bus stop, when the spike arrives, is at an average distance (in units of time) δclosestΔ=T¯C/2N since each bus is separated by T¯C/N unit times.(14)WCΔ=δclosestΔ+P2=T¯C2N+P2.The last termP/2 accounts for the time it takes to board the P passengers, since the last one to board has to wait an additional P units of time. The quantity WCΔ has to be weighted by the average number of passengers boarding from the spike bus stop:(15)PplCΔ=PT¯CTs.Finally, the average total time taken to complete a loopT¯C is the sum of T and the average dwelling time at the bus stops:(16)T¯C=T+τCΔ+τC□=T+PT¯CTs+kT¯CN=T1−P/Ts−k/N.The dwelling time at thespike bus stopτCΔ is counted, even though only one of the N buses boards passengers there. The reason for including τCΔ is to account for active corrective actions by other buses, such as holding or slowing down, to maintain the perfectly staggered state. If that is not compensated for, the bus boarding at the spike bus stop would have a slower revolution as compared with the other buses, causing buses to not be staggered anymore. The average waiting time for passengers in the bus loop is computed as the weighted average of the waiting time at the two bus stops, equations (12) and (14).(17)WC=PplCΔ×WCΔ+PplC□×WC□PplCΔ+PplC□=NP2+T¯CP+k1−kTs2NP+kTs.


### 2.4. Generalisation for More Bus Stops

In Section2, so far we have considered a scenario with only two bus stops for simplicity. It is possible to study a system with multiple regular bus stops with our technique. The general formula for the average waiting time with Mregular bus stops and one spike bus stop is(18)W=PplΔ×WΔ+∑i=1MPpl□i×W□iPpl△+∑i=1MPpl□i.The quantities to compute are the average waiting time at bus stopi for all the Mregular bus stopsW□i and the people boarding from there Ppl□i. Moreover, stopping in multiple bus stops means that the total time taken to complete a loop, T¯, will need to take into account the extra time taken to board from more than one regular bus stops, except for the case of synchronised bunched buses in Section 2.2 where the total time to complete a loop is the period of the spike Ts. In the following part, we present the general expressions for the waiting time at the Mregular bus stops, each of which with demand si=ki×l for the three cases examined: bunched buses, synchronised bunching, and perfectly staggered buses.


#### 2.4.1. Bunched Buses

Using the same reasoning as in equation (1), the waiting time at each regular bus stops in the case of N bunched buses is(19)WA□i=12T¯A−τA□i=T¯A21−kiN.The passengers boarding at each bus stop are(20)PplA□i=kiT¯A.The total time taken to complete the loop is(21)T¯A=T+τAΔ+∑i=1MτA□i=T+PT¯ANTs+∑i=1MkiT¯AN.The waiting time at thespike bus stop is indirectly affected by T¯A. The average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop is computed via equation (18) by combining equations (19)–(21) along with WAΔ and PplAΔ from equations (3) and (4).


#### 2.4.2. Synchronised Bunched Buses

Following the idea used in Section2.2, the waiting time at each regular bus stop in the case of N synchronised bunched buses is(22)WB□i=Ts−τB□i2=Ts21−kiN.The passengers boarding at each bus stop are(23)PplB□i=kiTs.The total time taken to complete the loop is stillTs, provided that the extra dwelling time does not slow down the revolution of the buses below the period of the spike Ts. The waiting time at the spike bus stop is not affected by the extra bus stops. By combining the equations in this section with equations (9) and (10) and substituting them in equation (18), we can compute the average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop in the case of synchronised bunched buses, generalising the result in Section 2.2.


#### 2.4.3. Perfectly Staggered Buses

Analogously as how it is calculated in equation (12), the waiting time at regular bus stops in the case of N perfectly staggered buses is(24)WC□i=12T¯CN1−k.The passengers boarding at each bus stop are(25)PplC□i=kiT¯C.The total time taken to complete the loop is(26)T¯C=T+τCΔ+∑i=1MτC□i=T+PT¯CTs+∑i=1MkiT¯CN.The waiting time at thespike bus stop is indirectly affected by T¯C but takes the same functional form as in equation (14). Combining the equations in this section along with equation (15) and substituting them in equation (18), it is possible to compute the average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop in the case of perfectly staggered buses, generalising the result in Section 2.3.


### 2.5. Generalisation for High-Frequency Spikes

We have considered low-frequency spikesTs>T¯ where T¯ is the total time taken to complete a loop. However, there are realistic cases where spikes can occur at high frequency, such as next to a “Mass Rapid Transit” line (MRT). In this section, we briefly generalise the results for bunched buses (case A) and perfectly staggered buses (case C) for Ts<T¯. As the frequency of the spikes is higher than the frequency of the buses, the synchronised bunched buses (case B) solution does not work in this setting as buses cannot synchronise with the spikes.


#### 2.5.1. Bunched Buses

When buses are bunched, and more than one spike occurs during a loop, the resulting waiting time at thespike bus stop has to be corrected from the result in equation (3). The waiting time in equation (3) has two terms, the first, T¯A/2, is the waiting time due to the spike arriving when the buses are not at the spike bus stop, the second, P/2N, is due to the time passengers take to board the buses. Not knowing when the spikes arrive during the revolution of the platoon of buses, we cannot simply assume that the passengers arriving with the spike wait, on average, T¯A/2 in this case. A spike may occur while the buses are boarding at the spike bus stop, in which case we consider their waiting time contribution from the first term as zero as passengers only have to wait in line to board, which is accounted for by the second term of WAΔ. We split the first term of the waiting time into two parts: the contribution from the passengers arriving while the buses are on the road, hence equally likely to arrive at any time in T¯A−τAΔ, and the contribution from passengers arriving while the bus is already boarding from the previous spikes, hence with zero waiting time from the first term. We define τ˜AΔ=T¯A/Ts−1P/N as the time spent to board from all the spikes minus one (the one that may occur during boarding at the spike bus stop). It is our assumption that no more than one spike can happen while the buses are boarding. We can compute the new first term for the average waiting time at the spike bus stop by averaging the two contributions with probability proportional to the time spent in each situation:(27)WAΔfirst term=0×τ˜AΔ+T¯A−τAΔ/2×T¯A−τ˜AΔτ˜A△+T¯A−τ˜AΔ=12T¯A−τAΔT¯A−τ˜AΔT¯A.The second term ofWAΔ accounts for the time taken to board the buses. Since more than P passengers board at the same time, it has to be corrected from equation (3) with a factor T¯A/Ts. The second term of the average waiting time at the spike bus stop becomes PT¯A/Ts/2N. The overall expression for WAΔ for frequent spikes Ts<T¯A is:(28)WAΔ=12T¯A−τAΔT¯A−τ˜AΔT¯A+T¯ATsP2N.All the other formulas in Section2.1 are not affected by higher frequency spikes as the increased number of passengers is accounted for by the T¯A/Ts factor in the expressions for the waiting time and total time to complete a revolution and for the number of passengers. The overall waiting time can be computed combining equations (1), (2), (4), (5), and (28).The equations above are valid as long as a maximum of a single spike occurs while buses are boarding at thespike bus stop. It is interesting to explore the limit of infinitely many spikes T¯A/Ts⟶∞, by Ts⟶0, even though the equations are not exact in this regime. The total number of passengers arriving over a period T¯A must be finite. The quantity P^=P/Ts is the number of passengers arriving at the spike bus stop per unit time. As spikes are infinitely frequent, the number of passengers arriving with each spike must be infinitesimal P⟶0, effectively representing a continuous arrival of P^ passengers per unit time. From the terms of equation (28), we see that, in the limit Ts⟶0:(29)limTs⟶0P/Ts=P^τ˜AΔ=limTs⟶0P/Ts=P^T¯ATs−1PN=limTs⟶0P/Ts=P^T¯ATsPN=P^T¯AN=limTs⟶0P/Ts=P^τAΔ,where the last equation uses the definition of P^. We can therefore express the waiting time at the spike bus stop in this limit as(30)limTs⟶0P/Ts=P^WAΔ=limTs⟶0P/Ts=P^12T¯A−τAΔ2T¯A+T¯AP^2N=T¯A21−P^N+P^2N2.Compared with equation (1) for WA□, there is an extra term P^/N2, due to our assumption that no more than one spike can occur during boarding at the spike bus stop. The term is generally small since P^/N<1 in order for buses to board passengers, as N buses can board N passengers per unit time. By comparing the analytical result with the waiting time computed via the simulation employed in Section 4.4, we verify that the correct limit for WA□ is actually T¯A/2×1−P^/N, identical to WA□ if P^ is replaced by k, making P^ effectively an arrival constant. The number of passengers boarding, from (4), becomes PplA△=P^T¯A in this limit, analogous to PplA□ replacing P^ with k.


#### 2.5.2. Perfectly Staggered Buses

For perfectly staggered buses, caseC, the formulas for the waiting time at the regular bus stop and spike bus stop equations (12) and (14) are not directly affected. In particular, the waiting time and passengers at the regular bus stop do not directly depend on Ts or P, but they are indirectly affected through T¯C. The expression of the number of passengers at the spike bus stop already contains a term T¯C/Ts that accounts for the frequency of the spikes. The waiting time at the spike bus stop is also not affected directly, as long as the number of spikes per loop is less than the number of buses, in which case the second term of WA□, accounting for the waiting time due to boarding, P/2, has to be corrected. If T¯C/Ts>N, buses sometimes have to pick up passengers arrived from two or more different spikes; hence, the formula in equation (14) has to be modified. We do not consider this extreme case in this section. All the terms above, however, depend on T¯C. The expression for T¯C in equation (16) has to be corrected for frequent spikes. In particular, as T¯C=T+τCΔ+τC□, the time spent at the spike bus stopτCΔ changes. For low-frequency spikes, τC△=PT¯C/Ts, meaning that every T¯C/Ts revolution P passengers board. However if T¯C/Ts>1, passengers from each spike still board a single bus, as passengers arrive P at a time, so the time to board τCΔ becomes maxT¯C/Ts,1P=P time units, contributing to the total time to complete a revolution. The correct expression of T¯C in the case of frequent spikes is therefore(31)T¯C=T+τCΔ+τC□=T+P+kT¯CN=T+P1−k/N.The average waiting time for the whole systemWC is obtained following equation (17) using T¯C computed from equation (31) and the original equations (12)–(15).It is well known [1–16] that perfectly staggered buses outperform bunched buses in terms of average waiting time when passengers arrive continuously at bus stops, i.e. in the limit Ts⟶0 and P/Ts=P^ finite. In Section 4, we compare the proposed solutions in the case of low-frequency spikes: bunched buses also perform poorly as compared with perfectly staggered buses, as it is shown in Figures 1–3. For this reason, we do not consider the case of high-frequency spikes in the rest of this work, as the only configuration that can outperform perfectly staggered buses is the synchronised bunched buses setting (case B), which is not possible in the presence of high-frequency spikes.Figure 2
Average waiting time for two buses in the three configurationsA,B,C described in Sections 2 and 3. The two upper plots represent a case of low demand P from the spike bus stop while the two lower plots represent high demand P. The plots on the left assume unlimited capacity of the buses, and the plots on the right explicitly limit the capacity of buses at c=⌊P/3⌋ while boarding passengers from the spike bus stop. As discussed in Section 4, synchronised bunched buses (configuration B) outperform perfectly staggered buses (configuration C) when the demand of the spike bus stop is high as compared with the regular bus stop. Limiting capacity further increases the advantage of bunched buses. For this example, T is set to a value of 100 time units and Ts=3T.Figure 3
Comparison of the average waiting time for the three configurations as a function of the demand at thespike bus stopP and the capacity c. The orange triangles represent the set of parameters where synchronised bunched buses have the lowest average waiting time, while the green “x” symbols indicate where perfectly staggered buses have the lowest average waiting time among the three configurations. Bunched buses (case A) are never the best performers for the parameters explored. The three plots show how increasing the number of buses from 2 to 3 to 4 (from left to right) tends to favour the staggered bus configuration. Points in the region of high P and low c are missing, since in that regime more than two revolutions are needed to pick up all the passengers at the spike bus stop. This region is defined by c<P/2N. For this example, T is set to a value of 100 time units and Ts=3T while k is fixed at 0.1.


## 2.1. Bunched Buses

It is well known that uncontrolled buses bunch [3, 12, 14, 33], so this is a natural baseline and an important case to consider as bus bunching is not an uncommon occurrence in real-world bus systems.The general idea to compute the average waiting time is to separate the contribution of theregular□ and spikeΔ bus stops.For theregular bus stop, using the fact that passengers board in a FIFO way (the first to arrive is the first to board), the average waiting time at the regular bus stop is half the waiting time of the passenger who waited for the longest, who is the first to arrive at the bus stop after the last platoon of buses left the bus stop in the previous revolution. Passengers arrive and board in a linear fashion, and the last passenger to board is the one who arrives just before the platoon of buses leaves, giving a waiting time of zero; hence, the average is half the longest waiting time. The same idea is also used to compute the average waiting time in reference [25]. The linear nature of passenger arrival also implies that for a longer average waiting time at a regular bus stop, more passengers will be waiting, and the range of waiting times, from the longest to the shortest, is twice the average waiting time. The waiting time at that bus stop is(1)WA□=12T¯A−τA□=T¯A21−kN.The quantityT¯A represents the effective time taken for the buses to complete the loop, including dwelling time. It is defined in equation (5). The time spent dwelling at the bus stop is τA□ and it is proportional to the total passengers arrived, hence proportional to the time it takes to complete a revolution T¯A, times the arrival constant k=s/l. Having N buses bunching, the dwelling time is reduced by a factor 1/N as passengers can board in parallel the N buses speeding up the process. To compute the waiting time for the whole bus loop, the waiting time at each bus stop has to be weighted by the passengers boarding. To keep a consistent notation with k, we use the number of passengers boarding per revolution divided by the constant boarding rate l:(2)PplA□=kT¯A.Our calculations are in the steady state. However, it is possible to compute the waiting time dynamically for uncontrolled buses before they bunch. In reference [14], we present an analytical framework that allows us to compute waiting times dynamically for regular bus stops.In the case of thespike bus stop, passengers arrive in a group of P=p/l. They all wait for the buses to arrive. At every revolution, the waiting time will be different, unless Ts and T¯A happen to be exactly in resonance (in this work, we do not cover this possibility), so it is a reasonable assumption to consider an average value. Assuming that the buses are already in a bunched state, and for analysis purpose we have the platoon of buses distributed uniformly around the bus loop when the spike happens with the arrival of the passengers at the spike bus stop, the average time until the buses reach the bus stop is δΔ=T¯A/2. On top of δΔ time to wait, passengers need to board. The first passenger to board does not need to wait any longer, but the last passenger to board has to wait P/N units of extra time, as boarding is conducted in parallel with N buses, so, on average, the extra waiting is 1/2×P/N:(3)WAΔ=δΔ+P2N=T¯A2+P2N.Considering that passengers arrive at thespike bus stop every Ts, the average number of passengers boarding from this bus stop over a revolution is(4)PplAΔ=PT¯ATs.The final equation needed is forT¯A, the average time taken to complete a revolution, which comprises of the time T needed to drive, and the time spent at the bus stops boarding passengers τA□ and τAΔ:(5)T¯A=T+τAΔ+τA□=T+PT¯ANTs+kT¯AN=T1−P/NTs−k/N.From the denominator of equation (5), we see the two conditions of maximum crowdedness at which the bunched buses get stuck at one or the other bus stop. For the regular bus stop, N buses can board N passengers per unit time, hence if passengers arrive at a rate ≥N per unit time k≥N, the buses cannot finish boarding and T¯A⟶∞. For the spike bus stop, as buses require P/N unit times to board all the passengers from the spike, if P/N≥Ts a new spike arrives before the spike bus stop is cleared, blocking the buses and causing T¯A to diverge. The average waiting time in the bus loop is computed combining equations (1)–(5):(6)WA=PplAΔ×WAΔ+PplA□×WA□PplAΔ+PplA□=P2+NT¯AP+k1−k/NTs2NP+kTs.


## 2.2. Synchronised Bunched Buses

In this section, we introduce a novel approach to bus control. As dynamic control often requires specific infrastructure, complex algorithms, and nonlocal information such as the position of other buses [1–13, 20, 32–40], we propose a much simpler yet effective technique: hold the platoon of bunched buses at the spike bus stop until the spike happens. It is well known that buses tend to bunch, but bunched buses have a distinct advantage: they can distribute the load of passengers among them, speeding up boarding and reducing dwelling time. Another advantage is that N buses can accommodate N times as many passengers, although the problem of limited bus capacity is analysed in Section 3.2. This technique, which we call synchronised bunching, synchronises the effective time taken by buses to complete a loop (including dwelling time) T¯B with the period of the spike Ts.To calculate the waiting time in this scenario, we compute the waiting time at each bus stop and weight them by the number of passengers boarded from there. With theregular bus stop, the waiting time is computed in the same way as in equation (1), with the added condition that T¯B=Ts:(7)WB□=12Ts−τB□=Ts21−kN.Following the same idea as in equation (2),(8)PplB□=kTs.The waiting time at thespike bus stop is very simple, as the passengers can start boarding immediately because the platoon of buses is waiting for the spike, so the only time to wait is the time it takes to board, which is equivalent to the second term in equation (3) as boarding happens in parallel for bunched buses.(9)WBΔ=P2N.Given that the buses effectively takeTs time to complete a revolution, the number of passengers boarding per revolution is P.(10)PplBΔ=P.Combining the equations above, the average waiting time for passengers of the loop when thesynchronised bunching technique is employed is(11)WB=PplBΔ×WBΔ+PplB□×WB□PplBΔ+PplB□=P2+kTs2N−k2NP+kTs.


## 2.3. Perfectly Staggered Buses

The calculations in this section are performed under the assumption of perfectly staggered buses. As uncontrolled buses inevitably bunch, active control is necessary to keep buses staggered. There are several methods described in the literature to avoid bunching and keep a staggered configuration [1, 2, 4–8, 8–13, 17, 19, 35, 41–48]. The final result in terms of the average waiting time depends on the specific dynamic control technique used, so the average waiting time determined here is an approximation. In Section 4.4, we compare the analytical calculations with a time-based simulation, employing a headway-based holding control. We see very similar results in terms of waiting times in all but the most extreme cases with very high k where this approximation is less valid. In reference [14], we show that bunching can happen within a single revolution if the value of k is high enough that n∗<1, where n∗ is the number of revolutions needed for buses to bunch, hence invalidating the assumption that buses can stay staggered. Two buses starting from a perfectly staggered position in a loop with a single regular bus stop bunch in n∗=logk/2/2log1−k revolutions, according to reference [14]. For k≥0.5, uncontrolled buses bunch within the first revolution as n∗≤1. In this regime, keeping the buses staggered is very challenging, if not impossible. In Figure 1, the mismatch between a numerical simulation with dynamic control and the analytical results for the average waiting time is very significant when kT approaches 0.5T, as buses cannot avoid bunching in the simulation.Figure 1
Comparison of the average waiting time of passengers computed with analytical formulas and with a numerical simulation. The plot on the left considers the case of unlimited capacity described in Section2, while the plot on the right considers a limited capacity of c=⌊P/3⌋ and uses the formulas from Section 3. The circles, triangles, and crosses represent the results from the simulation for the cases A, B, and C, respectively. Discrepancies are caused by simplified assumptions, discretisation of variables in the simulation, and limited running time. The percentage of mismatch in the legend is the median of the difference between the simulation and the analytical result across the range kT, rounded to the closest integer. As explained in Section 2.3, the hypothesis of perfectly staggered buses C fails at high values of k, as we see from the plot. In this example, there are two buses N=2, the period of revolution is T=1000 time units, the period of the spike is Ts=3T, and P=200.The waiting time at theregular bus stop is computed as half the longest waiting time, in the same way as it was mentioned in Sections 2.1 and 2.2, but here the buses are assumed to be staggered, hence the bus stop is served N times every revolution.(12)WC□=12T¯CN−τC□=12T¯CN1−k.While boarding passengers from a bus stop, if other buses move, the system shifts away from a staggered configuration. To compute the average waiting time, we need to decide when the buses are considered perfectly staggered: either before or after they serve a bus stop. If buses are considered perfectly staggeredbefore serving the bus stop, the expression for WC□ is the one in equation (12). However, if buses are considered staggered after serving the bus stop, the average waiting time is τC□/2 longer than equation (12). We choose the first option, as it leads to lower waiting time. Different techniques of dynamic control to keep the buses staggered could be better described by either of the two choices of buses staggered before or after serving a bus stop. This difference is significant in the regime of high τC□=kT¯C/N where the assumption that buses can be staggered also fails. Each revolution will take T¯C as defined in equation (16). The number of passengers boarding from the regular bus stop during a revolution is computed as(13)PplC□=kT¯C,similarly to cases A and B in equations (2) and (8).The average waiting time at thespike bus stop is calculated under the assumption that buses are fully staggered and uniformly distributed around the bus loop, hence the closest bus to the bus stop, when the spike arrives, is at an average distance (in units of time) δclosestΔ=T¯C/2N since each bus is separated by T¯C/N unit times.(14)WCΔ=δclosestΔ+P2=T¯C2N+P2.The last termP/2 accounts for the time it takes to board the P passengers, since the last one to board has to wait an additional P units of time. The quantity WCΔ has to be weighted by the average number of passengers boarding from the spike bus stop:(15)PplCΔ=PT¯CTs.Finally, the average total time taken to complete a loopT¯C is the sum of T and the average dwelling time at the bus stops:(16)T¯C=T+τCΔ+τC□=T+PT¯CTs+kT¯CN=T1−P/Ts−k/N.The dwelling time at thespike bus stopτCΔ is counted, even though only one of the N buses boards passengers there. The reason for including τCΔ is to account for active corrective actions by other buses, such as holding or slowing down, to maintain the perfectly staggered state. If that is not compensated for, the bus boarding at the spike bus stop would have a slower revolution as compared with the other buses, causing buses to not be staggered anymore. The average waiting time for passengers in the bus loop is computed as the weighted average of the waiting time at the two bus stops, equations (12) and (14).(17)WC=PplCΔ×WCΔ+PplC□×WC□PplCΔ+PplC□=NP2+T¯CP+k1−kTs2NP+kTs.


## 2.4. Generalisation for More Bus Stops

In Section2, so far we have considered a scenario with only two bus stops for simplicity. It is possible to study a system with multiple regular bus stops with our technique. The general formula for the average waiting time with Mregular bus stops and one spike bus stop is(18)W=PplΔ×WΔ+∑i=1MPpl□i×W□iPpl△+∑i=1MPpl□i.The quantities to compute are the average waiting time at bus stopi for all the Mregular bus stopsW□i and the people boarding from there Ppl□i. Moreover, stopping in multiple bus stops means that the total time taken to complete a loop, T¯, will need to take into account the extra time taken to board from more than one regular bus stops, except for the case of synchronised bunched buses in Section 2.2 where the total time to complete a loop is the period of the spike Ts. In the following part, we present the general expressions for the waiting time at the Mregular bus stops, each of which with demand si=ki×l for the three cases examined: bunched buses, synchronised bunching, and perfectly staggered buses.


### 2.4.1. Bunched Buses

Using the same reasoning as in equation (1), the waiting time at each regular bus stops in the case of N bunched buses is(19)WA□i=12T¯A−τA□i=T¯A21−kiN.The passengers boarding at each bus stop are(20)PplA□i=kiT¯A.The total time taken to complete the loop is(21)T¯A=T+τAΔ+∑i=1MτA□i=T+PT¯ANTs+∑i=1MkiT¯AN.The waiting time at thespike bus stop is indirectly affected by T¯A. The average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop is computed via equation (18) by combining equations (19)–(21) along with WAΔ and PplAΔ from equations (3) and (4).


### 2.4.2. Synchronised Bunched Buses

Following the idea used in Section2.2, the waiting time at each regular bus stop in the case of N synchronised bunched buses is(22)WB□i=Ts−τB□i2=Ts21−kiN.The passengers boarding at each bus stop are(23)PplB□i=kiTs.The total time taken to complete the loop is stillTs, provided that the extra dwelling time does not slow down the revolution of the buses below the period of the spike Ts. The waiting time at the spike bus stop is not affected by the extra bus stops. By combining the equations in this section with equations (9) and (10) and substituting them in equation (18), we can compute the average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop in the case of synchronised bunched buses, generalising the result in Section 2.2.


### 2.4.3. Perfectly Staggered Buses

Analogously as how it is calculated in equation (12), the waiting time at regular bus stops in the case of N perfectly staggered buses is(24)WC□i=12T¯CN1−k.The passengers boarding at each bus stop are(25)PplC□i=kiT¯C.The total time taken to complete the loop is(26)T¯C=T+τCΔ+∑i=1MτC□i=T+PT¯CTs+∑i=1MkiT¯CN.The waiting time at thespike bus stop is indirectly affected by T¯C but takes the same functional form as in equation (14). Combining the equations in this section along with equation (15) and substituting them in equation (18), it is possible to compute the average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop in the case of perfectly staggered buses, generalising the result in Section 2.3.


## 2.4.1. Bunched Buses

Using the same reasoning as in equation (1), the waiting time at each regular bus stops in the case of N bunched buses is(19)WA□i=12T¯A−τA□i=T¯A21−kiN.The passengers boarding at each bus stop are(20)PplA□i=kiT¯A.The total time taken to complete the loop is(21)T¯A=T+τAΔ+∑i=1MτA□i=T+PT¯ANTs+∑i=1MkiT¯AN.The waiting time at thespike bus stop is indirectly affected by T¯A. The average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop is computed via equation (18) by combining equations (19)–(21) along with WAΔ and PplAΔ from equations (3) and (4).


## 2.4.2. Synchronised Bunched Buses

Following the idea used in Section2.2, the waiting time at each regular bus stop in the case of N synchronised bunched buses is(22)WB□i=Ts−τB□i2=Ts21−kiN.The passengers boarding at each bus stop are(23)PplB□i=kiTs.The total time taken to complete the loop is stillTs, provided that the extra dwelling time does not slow down the revolution of the buses below the period of the spike Ts. The waiting time at the spike bus stop is not affected by the extra bus stops. By combining the equations in this section with equations (9) and (10) and substituting them in equation (18), we can compute the average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop in the case of synchronised bunched buses, generalising the result in Section 2.2.


## 2.4.3. Perfectly Staggered Buses

Analogously as how it is calculated in equation (12), the waiting time at regular bus stops in the case of N perfectly staggered buses is(24)WC□i=12T¯CN1−k.The passengers boarding at each bus stop are(25)PplC□i=kiT¯C.The total time taken to complete the loop is(26)T¯C=T+τCΔ+∑i=1MτC□i=T+PT¯CTs+∑i=1MkiT¯CN.The waiting time at thespike bus stop is indirectly affected by T¯C but takes the same functional form as in equation (14). Combining the equations in this section along with equation (15) and substituting them in equation (18), it is possible to compute the average waiting time of passengers in a loop with Mregular bus stops and one spike bus stop in the case of perfectly staggered buses, generalising the result in Section 2.3.


## 2.5. Generalisation for High-Frequency Spikes

We have considered low-frequency spikesTs>T¯ where T¯ is the total time taken to complete a loop. However, there are realistic cases where spikes can occur at high frequency, such as next to a “Mass Rapid Transit” line (MRT). In this section, we briefly generalise the results for bunched buses (case A) and perfectly staggered buses (case C) for Ts<T¯. As the frequency of the spikes is higher than the frequency of the buses, the synchronised bunched buses (case B) solution does not work in this setting as buses cannot synchronise with the spikes.


### 2.5.1. Bunched Buses

When buses are bunched, and more than one spike occurs during a loop, the resulting waiting time at thespike bus stop has to be corrected from the result in equation (3). The waiting time in equation (3) has two terms, the first, T¯A/2, is the waiting time due to the spike arriving when the buses are not at the spike bus stop, the second, P/2N, is due to the time passengers take to board the buses. Not knowing when the spikes arrive during the revolution of the platoon of buses, we cannot simply assume that the passengers arriving with the spike wait, on average, T¯A/2 in this case. A spike may occur while the buses are boarding at the spike bus stop, in which case we consider their waiting time contribution from the first term as zero as passengers only have to wait in line to board, which is accounted for by the second term of WAΔ. We split the first term of the waiting time into two parts: the contribution from the passengers arriving while the buses are on the road, hence equally likely to arrive at any time in T¯A−τAΔ, and the contribution from passengers arriving while the bus is already boarding from the previous spikes, hence with zero waiting time from the first term. We define τ˜AΔ=T¯A/Ts−1P/N as the time spent to board from all the spikes minus one (the one that may occur during boarding at the spike bus stop). It is our assumption that no more than one spike can happen while the buses are boarding. We can compute the new first term for the average waiting time at the spike bus stop by averaging the two contributions with probability proportional to the time spent in each situation:(27)WAΔfirst term=0×τ˜AΔ+T¯A−τAΔ/2×T¯A−τ˜AΔτ˜A△+T¯A−τ˜AΔ=12T¯A−τAΔT¯A−τ˜AΔT¯A.The second term ofWAΔ accounts for the time taken to board the buses. Since more than P passengers board at the same time, it has to be corrected from equation (3) with a factor T¯A/Ts. The second term of the average waiting time at the spike bus stop becomes PT¯A/Ts/2N. The overall expression for WAΔ for frequent spikes Ts<T¯A is:(28)WAΔ=12T¯A−τAΔT¯A−τ˜AΔT¯A+T¯ATsP2N.All the other formulas in Section2.1 are not affected by higher frequency spikes as the increased number of passengers is accounted for by the T¯A/Ts factor in the expressions for the waiting time and total time to complete a revolution and for the number of passengers. The overall waiting time can be computed combining equations (1), (2), (4), (5), and (28).The equations above are valid as long as a maximum of a single spike occurs while buses are boarding at thespike bus stop. It is interesting to explore the limit of infinitely many spikes T¯A/Ts⟶∞, by Ts⟶0, even though the equations are not exact in this regime. The total number of passengers arriving over a period T¯A must be finite. The quantity P^=P/Ts is the number of passengers arriving at the spike bus stop per unit time. As spikes are infinitely frequent, the number of passengers arriving with each spike must be infinitesimal P⟶0, effectively representing a continuous arrival of P^ passengers per unit time. From the terms of equation (28), we see that, in the limit Ts⟶0:(29)limTs⟶0P/Ts=P^τ˜AΔ=limTs⟶0P/Ts=P^T¯ATs−1PN=limTs⟶0P/Ts=P^T¯ATsPN=P^T¯AN=limTs⟶0P/Ts=P^τAΔ,where the last equation uses the definition of P^. We can therefore express the waiting time at the spike bus stop in this limit as(30)limTs⟶0P/Ts=P^WAΔ=limTs⟶0P/Ts=P^12T¯A−τAΔ2T¯A+T¯AP^2N=T¯A21−P^N+P^2N2.Compared with equation (1) for WA□, there is an extra term P^/N2, due to our assumption that no more than one spike can occur during boarding at the spike bus stop. The term is generally small since P^/N<1 in order for buses to board passengers, as N buses can board N passengers per unit time. By comparing the analytical result with the waiting time computed via the simulation employed in Section 4.4, we verify that the correct limit for WA□ is actually T¯A/2×1−P^/N, identical to WA□ if P^ is replaced by k, making P^ effectively an arrival constant. The number of passengers boarding, from (4), becomes PplA△=P^T¯A in this limit, analogous to PplA□ replacing P^ with k.


### 2.5.2. Perfectly Staggered Buses

For perfectly staggered buses, caseC, the formulas for the waiting time at the regular bus stop and spike bus stop equations (12) and (14) are not directly affected. In particular, the waiting time and passengers at the regular bus stop do not directly depend on Ts or P, but they are indirectly affected through T¯C. The expression of the number of passengers at the spike bus stop already contains a term T¯C/Ts that accounts for the frequency of the spikes. The waiting time at the spike bus stop is also not affected directly, as long as the number of spikes per loop is less than the number of buses, in which case the second term of WA□, accounting for the waiting time due to boarding, P/2, has to be corrected. If T¯C/Ts>N, buses sometimes have to pick up passengers arrived from two or more different spikes; hence, the formula in equation (14) has to be modified. We do not consider this extreme case in this section. All the terms above, however, depend on T¯C. The expression for T¯C in equation (16) has to be corrected for frequent spikes. In particular, as T¯C=T+τCΔ+τC□, the time spent at the spike bus stopτCΔ changes. For low-frequency spikes, τC△=PT¯C/Ts, meaning that every T¯C/Ts revolution P passengers board. However if T¯C/Ts>1, passengers from each spike still board a single bus, as passengers arrive P at a time, so the time to board τCΔ becomes maxT¯C/Ts,1P=P time units, contributing to the total time to complete a revolution. The correct expression of T¯C in the case of frequent spikes is therefore(31)T¯C=T+τCΔ+τC□=T+P+kT¯CN=T+P1−k/N.The average waiting time for the whole systemWC is obtained following equation (17) using T¯C computed from equation (31) and the original equations (12)–(15).It is well known [1–16] that perfectly staggered buses outperform bunched buses in terms of average waiting time when passengers arrive continuously at bus stops, i.e. in the limit Ts⟶0 and P/Ts=P^ finite. In Section 4, we compare the proposed solutions in the case of low-frequency spikes: bunched buses also perform poorly as compared with perfectly staggered buses, as it is shown in Figures 1–3. For this reason, we do not consider the case of high-frequency spikes in the rest of this work, as the only configuration that can outperform perfectly staggered buses is the synchronised bunched buses setting (case B), which is not possible in the presence of high-frequency spikes.Figure 2
Average waiting time for two buses in the three configurationsA,B,C described in Sections 2 and 3. The two upper plots represent a case of low demand P from the spike bus stop while the two lower plots represent high demand P. The plots on the left assume unlimited capacity of the buses, and the plots on the right explicitly limit the capacity of buses at c=⌊P/3⌋ while boarding passengers from the spike bus stop. As discussed in Section 4, synchronised bunched buses (configuration B) outperform perfectly staggered buses (configuration C) when the demand of the spike bus stop is high as compared with the regular bus stop. Limiting capacity further increases the advantage of bunched buses. For this example, T is set to a value of 100 time units and Ts=3T.Figure 3
Comparison of the average waiting time for the three configurations as a function of the demand at thespike bus stopP and the capacity c. The orange triangles represent the set of parameters where synchronised bunched buses have the lowest average waiting time, while the green “x” symbols indicate where perfectly staggered buses have the lowest average waiting time among the three configurations. Bunched buses (case A) are never the best performers for the parameters explored. The three plots show how increasing the number of buses from 2 to 3 to 4 (from left to right) tends to favour the staggered bus configuration. Points in the region of high P and low c are missing, since in that regime more than two revolutions are needed to pick up all the passengers at the spike bus stop. This region is defined by c<P/2N. For this example, T is set to a value of 100 time units and Ts=3T while k is fixed at 0.1.


## 2.5.1. Bunched Buses

When buses are bunched, and more than one spike occurs during a loop, the resulting waiting time at thespike bus stop has to be corrected from the result in equation (3). The waiting time in equation (3) has two terms, the first, T¯A/2, is the waiting time due to the spike arriving when the buses are not at the spike bus stop, the second, P/2N, is due to the time passengers take to board the buses. Not knowing when the spikes arrive during the revolution of the platoon of buses, we cannot simply assume that the passengers arriving with the spike wait, on average, T¯A/2 in this case. A spike may occur while the buses are boarding at the spike bus stop, in which case we consider their waiting time contribution from the first term as zero as passengers only have to wait in line to board, which is accounted for by the second term of WAΔ. We split the first term of the waiting time into two parts: the contribution from the passengers arriving while the buses are on the road, hence equally likely to arrive at any time in T¯A−τAΔ, and the contribution from passengers arriving while the bus is already boarding from the previous spikes, hence with zero waiting time from the first term. We define τ˜AΔ=T¯A/Ts−1P/N as the time spent to board from all the spikes minus one (the one that may occur during boarding at the spike bus stop). It is our assumption that no more than one spike can happen while the buses are boarding. We can compute the new first term for the average waiting time at the spike bus stop by averaging the two contributions with probability proportional to the time spent in each situation:(27)WAΔfirst term=0×τ˜AΔ+T¯A−τAΔ/2×T¯A−τ˜AΔτ˜A△+T¯A−τ˜AΔ=12T¯A−τAΔT¯A−τ˜AΔT¯A.The second term ofWAΔ accounts for the time taken to board the buses. Since more than P passengers board at the same time, it has to be corrected from equation (3) with a factor T¯A/Ts. The second term of the average waiting time at the spike bus stop becomes PT¯A/Ts/2N. The overall expression for WAΔ for frequent spikes Ts<T¯A is:(28)WAΔ=12T¯A−τAΔT¯A−τ˜AΔT¯A+T¯ATsP2N.All the other formulas in Section2.1 are not affected by higher frequency spikes as the increased number of passengers is accounted for by the T¯A/Ts factor in the expressions for the waiting time and total time to complete a revolution and for the number of passengers. The overall waiting time can be computed combining equations (1), (2), (4), (5), and (28).The equations above are valid as long as a maximum of a single spike occurs while buses are boarding at thespike bus stop. It is interesting to explore the limit of infinitely many spikes T¯A/Ts⟶∞, by Ts⟶0, even though the equations are not exact in this regime. The total number of passengers arriving over a period T¯A must be finite. The quantity P^=P/Ts is the number of passengers arriving at the spike bus stop per unit time. As spikes are infinitely frequent, the number of passengers arriving with each spike must be infinitesimal P⟶0, effectively representing a continuous arrival of P^ passengers per unit time. From the terms of equation (28), we see that, in the limit Ts⟶0:(29)limTs⟶0P/Ts=P^τ˜AΔ=limTs⟶0P/Ts=P^T¯ATs−1PN=limTs⟶0P/Ts=P^T¯ATsPN=P^T¯AN=limTs⟶0P/Ts=P^τAΔ,where the last equation uses the definition of P^. We can therefore express the waiting time at the spike bus stop in this limit as(30)limTs⟶0P/Ts=P^WAΔ=limTs⟶0P/Ts=P^12T¯A−τAΔ2T¯A+T¯AP^2N=T¯A21−P^N+P^2N2.Compared with equation (1) for WA□, there is an extra term P^/N2, due to our assumption that no more than one spike can occur during boarding at the spike bus stop. The term is generally small since P^/N<1 in order for buses to board passengers, as N buses can board N passengers per unit time. By comparing the analytical result with the waiting time computed via the simulation employed in Section 4.4, we verify that the correct limit for WA□ is actually T¯A/2×1−P^/N, identical to WA□ if P^ is replaced by k, making P^ effectively an arrival constant. The number of passengers boarding, from (4), becomes PplA△=P^T¯A in this limit, analogous to PplA□ replacing P^ with k.


## 2.5.2. Perfectly Staggered Buses

For perfectly staggered buses, caseC, the formulas for the waiting time at the regular bus stop and spike bus stop equations (12) and (14) are not directly affected. In particular, the waiting time and passengers at the regular bus stop do not directly depend on Ts or P, but they are indirectly affected through T¯C. The expression of the number of passengers at the spike bus stop already contains a term T¯C/Ts that accounts for the frequency of the spikes. The waiting time at the spike bus stop is also not affected directly, as long as the number of spikes per loop is less than the number of buses, in which case the second term of WA□, accounting for the waiting time due to boarding, P/2, has to be corrected. If T¯C/Ts>N, buses sometimes have to pick up passengers arrived from two or more different spikes; hence, the formula in equation (14) has to be modified. We do not consider this extreme case in this section. All the terms above, however, depend on T¯C. The expression for T¯C in equation (16) has to be corrected for frequent spikes. In particular, as T¯C=T+τCΔ+τC□, the time spent at the spike bus stopτCΔ changes. For low-frequency spikes, τC△=PT¯C/Ts, meaning that every T¯C/Ts revolution P passengers board. However if T¯C/Ts>1, passengers from each spike still board a single bus, as passengers arrive P at a time, so the time to board τCΔ becomes maxT¯C/Ts,1P=P time units, contributing to the total time to complete a revolution. The correct expression of T¯C in the case of frequent spikes is therefore(31)T¯C=T+τCΔ+τC□=T+P+kT¯CN=T+P1−k/N.The average waiting time for the whole systemWC is obtained following equation (17) using T¯C computed from equation (31) and the original equations (12)–(15).It is well known [1–16] that perfectly staggered buses outperform bunched buses in terms of average waiting time when passengers arrive continuously at bus stops, i.e. in the limit Ts⟶0 and P/Ts=P^ finite. In Section 4, we compare the proposed solutions in the case of low-frequency spikes: bunched buses also perform poorly as compared with perfectly staggered buses, as it is shown in Figures 1–3. For this reason, we do not consider the case of high-frequency spikes in the rest of this work, as the only configuration that can outperform perfectly staggered buses is the synchronised bunched buses setting (case B), which is not possible in the presence of high-frequency spikes.Figure 2
Average waiting time for two buses in the three configurationsA,B,C described in Sections 2 and 3. The two upper plots represent a case of low demand P from the spike bus stop while the two lower plots represent high demand P. The plots on the left assume unlimited capacity of the buses, and the plots on the right explicitly limit the capacity of buses at c=⌊P/3⌋ while boarding passengers from the spike bus stop. As discussed in Section 4, synchronised bunched buses (configuration B) outperform perfectly staggered buses (configuration C) when the demand of the spike bus stop is high as compared with the regular bus stop. Limiting capacity further increases the advantage of bunched buses. For this example, T is set to a value of 100 time units and Ts=3T.Figure 3
Comparison of the average waiting time for the three configurations as a function of the demand at thespike bus stopP and the capacity c. The orange triangles represent the set of parameters where synchronised bunched buses have the lowest average waiting time, while the green “x” symbols indicate where perfectly staggered buses have the lowest average waiting time among the three configurations. Bunched buses (case A) are never the best performers for the parameters explored. The three plots show how increasing the number of buses from 2 to 3 to 4 (from left to right) tends to favour the staggered bus configuration. Points in the region of high P and low c are missing, since in that regime more than two revolutions are needed to pick up all the passengers at the spike bus stop. This region is defined by c<P/2N. For this example, T is set to a value of 100 time units and Ts=3T while k is fixed at 0.1.


## 3. The Effect of Limited Capacity for the Buses

Real-world transportation systems have limited capacity regarding the number of commuters who can board. Such limitations can alter the optimal despatch of vehicles and headway [49–52], hence staggered solutions are not necessarily optimal even in the presence of only regular bus stops. Reference [53] deals more explicitly with bunching buses in the form of a newly proposed modular vehicle system. The modular vehicles can be combined to increase capacity, which is similar to the effect of bunched buses. The system however is studied in the context of a splitting route where different modules travel to different destinations: a passenger has to board a specific module and none of the cases cited above deals with loops or spike bus stops.In this section, we only consider the capacity limit at thespike bus stop. All of the buses can board up to Q passengers at the spike bus stop. For dimensional consistency with our convention for P=p/l, we consider capacity over the fixed boarding rate l to simplify our equation with the quantity c=Q/l.Limiting capacity has a stronger effect on staggered buses, as at any given time passengers board a single bus. Performance of perfectly staggered buses is affected whenc<P while for bunched buses, having a combined capacity Nc, no effect is seen until c<P/N. Figure 3 shows how, for lower values of c, synchronised bunched buses tend to outperform perfectly staggered buses. The major effect on the bus dynamics when capacity is limited is the inability of boarding passengers at the spike bus stop within one passage.


### 3.1. Bunched Buses

One of the advantages of bunched buses is the cumulative capacity of the platoon, which grows linearly with the number of buses. Limited capacity affects this scenario only whenc<P/N, if c≥P/N the result in equation (6) applies. In this section, we present the result in the regime P/2N<c<P/N. In this case, the buses cannot board all of the passengers at the spike bus stop, so they need to complete another revolution to board passengers from there. For that to be possible, the spikes cannot be too frequent, so a necessary condition is Ts≥2T¯Alim, where T¯Alim is the total time needed to complete a revolution. If the inequality above is not satisfied, more passengers are arriving than those whom the buses can pick up, hence the number of passengers waiting will grow at every revolution, leading to a diverging waiting time.The major difference, as compared with the case with unlimited capacity in Section2.1, is the waiting time at the spike bus stop as two passages are needed to board passengers at the spike bus stop. The waiting time has to be divided between the Nc passengers boarding at the first passage and the P−Nc boarding at the second passage, approximately a revolution after the first group.(32)WAlimΔ=NcPδfirstΔ+Nc2N+P−NcPδsecondΔ+P−Nc2N==NcPT¯Alim2+Nc2N+P−NcP3T¯Alim2+P−Nc2N.Following the same idea as in Section2.1, we define δfirstΔ and δsecondΔ as the distance (in units of time) of the buses when they serve the spike bus stop for the first and second time, respectively. Being the buses bunched, the second time the buses pick up passengers in the spike bus stop is a whole revolution after the first time, therefore there is a difference of T¯Alim between δfirstΔ and δsecondΔ. The waiting time of passengers picked up by the buses between the two revolutions is weighted by the passengers boarded, Nc at the first revolution and P−Nc in the second round. The average number of passengers boarded per revolution is(33)PplAlimΔ=PT¯AlimTs,as P passengers arrive once every Ts/T¯Alim revolution.The values ofWAlim□ and PplAlim□ are the same as in equations (1) and (2), with T¯A replaced by T¯Alim: WAlim□=T¯Alim/21−k/N and PplAlim□=kT¯Alim. To compute the average time taken to complete a revolution, T¯Alim, we consider the average time spent at the spike bus stop during a revolution. Every Ts/T¯Alim revolution, a spike happens, and for every spike, the buses need to stop to pick up Nc and P−Nc passengers at the first and second revolution, respectively. Hence, the average time to complete a revolution is(34)T¯Alim=T+τAlimΔ1+τAlimΔ2+τAlim□=T+T¯AlimTsNcN+T¯AlimTsP−NcN+kT¯AlimN==T1−P/NTs−k/N.Combining equations (1), (2), and (32)–(34), the average waiting time for passengers in a scenario with bunched buses and reduced capacity P/2N<c<P/N is(35)WAlim=NT¯Alim3P−2Nc+kTs1−k/N+Nc2+P−Nc22NP+kTs.It is possible to generalise the results forc<P/2N by adding extra terms in equation (32) using δi−thΔ=T¯Alim/2×2i−1. The value of T¯Alim does not change since it does not depend on c, as seen in equation (34).


### 3.2. Synchronised Bunched Buses

Similarly to the bunched configuration in Section3.1, limiting the capacity of the buses in this synchronised bunched setting affects the dynamics and the waiting time of buses only in the regime c<P/N. In this section, we consider only the case of P/2N<c<P/N where the platoon of bunched buses waits for the spike of passengers at the spike bus stop, but the capacity is not enough to board them all, so another revolution is needed to pick up the remaining passengers. We also assume that the buses can always board all of the passengers at the regular bus stop. In the same way as the case in Section 3.1, the spikes need to have a long enough period Ts, in such a way that the buses can pick up all the passengers at the spike bus stop before a new spike happens. The formal condition is Ts≥T¯Blim1+T¯Blim2 where T¯Blim1 represents the time taken to complete the first revolution after the spike and T¯Blim2 is the time taken to complete the second revolution, just before holding HoldBlim unit times at the spike bus stop, waiting for the new spike. Those quantities are defined in equations (39) and (40) and related to Ts according to the equation Ts=T¯Blim1+T¯Blim1+HoldBlim.To compute the waiting time, we can break the dynamics into three parts: first revolution, second revolution, and holding to synchronise with the next spike. The first part starts from the arrival of passengers at thespike bus stop, where the platoon of buses is waiting to board them. The first part ends when the spike bus stop is reached a second time. In our equations, it is indicated with the (1) notation and it lasts T¯Blim1 unit times. The second part starts when the platoon of buses picks up the remaining passengers at the spike bus stop and it ends a revolution later, when the buses reach the spike bus stop again, just before starting to hold to wait for the next spike. We indicate the quantities relative to this period with the index (2) and this revolution lasts T¯Blim2 unit times. The final phase consists of the buses holding at the spike bus stop waiting for a new spike to occur.To compute the waiting time at theregular bus stop, we average the waiting time the first and the second time the buses reach this bus stop. At the first revolution (1), the bus stop has not been served for a time HoldBlim+T¯Blim1−τBlim□1=Ts−T¯Blim2−τBlim□2 and the average waiting time, under the hypothesis of constant arrival at rate s=k×l, is half the longest time waited by a passenger, hence(36)WBlim□1=12Ts−T¯Blim2−τBlim□1=Ts−T¯Blim221−kN.The passengers boarding in the first loop arePplBlim□1=kTs−T¯Blim2. The same procedure applies to the waiting time of the second period (2) where the regular bus stop has not been served for T¯Blim2−τBlim□2 units of time.(37)WBlim□2=12T¯Blim2−τBlim□2=T¯Blim221−kN,with PplBlim□2=kT¯Blim2 passengers boarded, for a total of PplBlim□=kTs passengers boarding from the regular bus stop during the two revolutions.The waiting time at thespike bus stop also needs to be calculated averaging the waiting time WBlimΔ1 of the first PplBlimΔ1=Nc passengers who can board immediately after the spike during revolution (1), so only the time taken to board is considered in the waiting time, and the waiting time WBlimΔ2 of the remaining PplBlimΔ2=P−Nc that needs to wait T¯Blim1 until the first revolution is completed. The average waiting time at the spike bus stop is computed as(38)WBlimΔ1=Nc2N,WBlimΔ2=T¯Blim1+P−Nc2N,WBlimΔ=NcPWBlimΔ1+P−NcPWBlimΔ2.The waiting time computed requires an expression for the time taken to complete the revolutions (1) and (2). The first case is expressed as(39)T¯Blim1=T+τBlimΔ1+τBlim□1=T+c+kNTs−T¯Blim2.The revolution includesT unit times on the road, τBlimΔ1, to board from the spike bus stop the first Nc passengers, and τBlim□1 to board passengers at the regular bus stop. Passengers at the regular bus stop started arriving during the previous (2) revolution, after the platoon of buses finished to board at the regular bus stop. The number of passengers arriving at the regular bus stop during the first revolution (1) (and the dwelling time τBlim□1) is proportional to the sum of the holding time waited to synchronise with the spike after revolution (2) and T¯Blim1. The quantity T¯Blim1 is defined as the time taken to board passengers at the spike bus stop, the time taken to board up to the last passengers at the regular bus stop during the first revolution (1), and the time to complete the loop itself, T: τBlim□1∝HoldBlim+T¯Blim1. As the duration of the two revolutions (1) and (2) plus the time HoldBlim waited at the spike bus stop must be Ts in order to synchronise with the spike, HoldBlim+T¯Blim1=Ts−T¯Blim2.The time taken to complete the second revolution (2) before holding is(40)T¯Blim2=T+τBlimΔ2+τBlim□2=T+P−NcN+kNT¯Blim2=T+P−Nc/N1−k/N.The dwelling time taken to board at thespike bus stop is proportional to the number of passengers left P−Nc. For the case of the regular bus stop, the number of passengers, hence the dwelling time, are proportional to T¯Blim2 itself, as there is no waiting for synchronisation in between serving the regular bus stop during the first (1) and second (2) revolution in this setting.Combining the above expressions withPplBlim□=kTs and PplBlimΔ=P, the average waiting time for synchronised bunched buses with capacity P/2N<c<P/N is found from(41)WBlim=PplBlimΔ×WBlimΔ+PplBlim□×WBlim□PplBlimΔ+PplBlim□.The average waiting time for synchronised bunched buses is equal to that of a single bus with capacityNc and boarding rate Nl. Assuming that it is possible to build and deploy such a bus, N synchronised bunched buses are still more versatile and adaptable to a change in demand. First, N buses can implement active control and move to a staggered configuration when the passengers demand at the bus stops changes. As we see from Figures 2 and 3, the more advantageous configuration can be either perfectly staggered buses or synchronised bunched buses, depending on the parameters of the bus loop. Another advantage of N bunched buses over a single bus with equivalent capacity and boarding rate is the option of adding and removing extra buses to match the passenger demand and capacity constraints as the number of commuters in the system changes, reducing operational cost when less capacity is needed.


### 3.3. Perfectly Staggered Buses

As thespike bus stop is being served by one bus at a time in this configuration of perfectly staggered buses, the limited capacity affects the system for any c<P. In the previous two cases in Sections 3.1 and 3.2, the limited capacity affects the system only for c<P/N.We consider the case wherem buses are needed to board the total number of passengers at the spike bus stopP/m<c<P/m−1. The value for m is ⌈P/c⌉. As this case requires m/N revolutions to clear the passengers at the spike bus stop, a necessary condition for the buses to serve this system is Ts>m/NT, otherwise the number of waiting commuters blows up. Following the same reasoning as in equations (14) and (32),(42)WClimΔ=cPδ1stΔ+c2+cPδ2ndΔ+c2++…+P−m−1cPδm−thΔ+P−m−1c2,where δi−thΔ=T¯Clim2i−1/2N is the distance (in units of time) of the ith bus to serve the spike bus stop. As in the case with unlimited capacity, the number of people boarding is PplClimΔ=PT¯Clim/Ts.The waiting time and people boarded from theregular bus stop are also the same as in equations (12) and (13): WClim□=T¯Clim/2N1−k and PplClim□=kT¯Clim. To express the average waiting time in the whole system, the last remaining equation is for T¯Clim. As in the case of unlimited capacity in equation (16), boarding passengers at the regular bus stop takes τClim□=kT¯Clim/N for each bus, under the assumption of perfectly staggered buses and no capacity constraints at the regular bus stop. At the spike bus stop, buses will dwell for either c or P−m−1c unit times if there are passengers there. For perfectly staggered buses, the necessary condition is for all the buses to move with the same period, hence they all have to employ dynamic control to keep themselves staggered, slowing down at the pace of the slowest buses. Since c>P−m−1c, by definition of m=⌈P/c⌉, the slowest bus waits c unit times, and that happens Ts/T¯Clim times a loop. The expression for the average time taken to complete a loop is then(43)T¯Clim=T+τClimΔ+τClim□=T+cT¯ClimTs+kT¯ClimN=T1−c/Ts−k/N.The general expression depends on the value ofm via WClimΔ. We report the average waiting time in the case of m=2, hence in the regime P/2<c<P, but the equations above allow for a general calculation via equation (18).(44)WClim=Nc2+P−c2+T¯Clim3P−2c+k1−kTs2NP+kTs.


## 3.1. Bunched Buses

One of the advantages of bunched buses is the cumulative capacity of the platoon, which grows linearly with the number of buses. Limited capacity affects this scenario only whenc<P/N, if c≥P/N the result in equation (6) applies. In this section, we present the result in the regime P/2N<c<P/N. In this case, the buses cannot board all of the passengers at the spike bus stop, so they need to complete another revolution to board passengers from there. For that to be possible, the spikes cannot be too frequent, so a necessary condition is Ts≥2T¯Alim, where T¯Alim is the total time needed to complete a revolution. If the inequality above is not satisfied, more passengers are arriving than those whom the buses can pick up, hence the number of passengers waiting will grow at every revolution, leading to a diverging waiting time.The major difference, as compared with the case with unlimited capacity in Section2.1, is the waiting time at the spike bus stop as two passages are needed to board passengers at the spike bus stop. The waiting time has to be divided between the Nc passengers boarding at the first passage and the P−Nc boarding at the second passage, approximately a revolution after the first group.(32)WAlimΔ=NcPδfirstΔ+Nc2N+P−NcPδsecondΔ+P−Nc2N==NcPT¯Alim2+Nc2N+P−NcP3T¯Alim2+P−Nc2N.Following the same idea as in Section2.1, we define δfirstΔ and δsecondΔ as the distance (in units of time) of the buses when they serve the spike bus stop for the first and second time, respectively. Being the buses bunched, the second time the buses pick up passengers in the spike bus stop is a whole revolution after the first time, therefore there is a difference of T¯Alim between δfirstΔ and δsecondΔ. The waiting time of passengers picked up by the buses between the two revolutions is weighted by the passengers boarded, Nc at the first revolution and P−Nc in the second round. The average number of passengers boarded per revolution is(33)PplAlimΔ=PT¯AlimTs,as P passengers arrive once every Ts/T¯Alim revolution.The values ofWAlim□ and PplAlim□ are the same as in equations (1) and (2), with T¯A replaced by T¯Alim: WAlim□=T¯Alim/21−k/N and PplAlim□=kT¯Alim. To compute the average time taken to complete a revolution, T¯Alim, we consider the average time spent at the spike bus stop during a revolution. Every Ts/T¯Alim revolution, a spike happens, and for every spike, the buses need to stop to pick up Nc and P−Nc passengers at the first and second revolution, respectively. Hence, the average time to complete a revolution is(34)T¯Alim=T+τAlimΔ1+τAlimΔ2+τAlim□=T+T¯AlimTsNcN+T¯AlimTsP−NcN+kT¯AlimN==T1−P/NTs−k/N.Combining equations (1), (2), and (32)–(34), the average waiting time for passengers in a scenario with bunched buses and reduced capacity P/2N<c<P/N is(35)WAlim=NT¯Alim3P−2Nc+kTs1−k/N+Nc2+P−Nc22NP+kTs.It is possible to generalise the results forc<P/2N by adding extra terms in equation (32) using δi−thΔ=T¯Alim/2×2i−1. The value of T¯Alim does not change since it does not depend on c, as seen in equation (34).


## 3.2. Synchronised Bunched Buses

Similarly to the bunched configuration in Section3.1, limiting the capacity of the buses in this synchronised bunched setting affects the dynamics and the waiting time of buses only in the regime c<P/N. In this section, we consider only the case of P/2N<c<P/N where the platoon of bunched buses waits for the spike of passengers at the spike bus stop, but the capacity is not enough to board them all, so another revolution is needed to pick up the remaining passengers. We also assume that the buses can always board all of the passengers at the regular bus stop. In the same way as the case in Section 3.1, the spikes need to have a long enough period Ts, in such a way that the buses can pick up all the passengers at the spike bus stop before a new spike happens. The formal condition is Ts≥T¯Blim1+T¯Blim2 where T¯Blim1 represents the time taken to complete the first revolution after the spike and T¯Blim2 is the time taken to complete the second revolution, just before holding HoldBlim unit times at the spike bus stop, waiting for the new spike. Those quantities are defined in equations (39) and (40) and related to Ts according to the equation Ts=T¯Blim1+T¯Blim1+HoldBlim.To compute the waiting time, we can break the dynamics into three parts: first revolution, second revolution, and holding to synchronise with the next spike. The first part starts from the arrival of passengers at thespike bus stop, where the platoon of buses is waiting to board them. The first part ends when the spike bus stop is reached a second time. In our equations, it is indicated with the (1) notation and it lasts T¯Blim1 unit times. The second part starts when the platoon of buses picks up the remaining passengers at the spike bus stop and it ends a revolution later, when the buses reach the spike bus stop again, just before starting to hold to wait for the next spike. We indicate the quantities relative to this period with the index (2) and this revolution lasts T¯Blim2 unit times. The final phase consists of the buses holding at the spike bus stop waiting for a new spike to occur.To compute the waiting time at theregular bus stop, we average the waiting time the first and the second time the buses reach this bus stop. At the first revolution (1), the bus stop has not been served for a time HoldBlim+T¯Blim1−τBlim□1=Ts−T¯Blim2−τBlim□2 and the average waiting time, under the hypothesis of constant arrival at rate s=k×l, is half the longest time waited by a passenger, hence(36)WBlim□1=12Ts−T¯Blim2−τBlim□1=Ts−T¯Blim221−kN.The passengers boarding in the first loop arePplBlim□1=kTs−T¯Blim2. The same procedure applies to the waiting time of the second period (2) where the regular bus stop has not been served for T¯Blim2−τBlim□2 units of time.(37)WBlim□2=12T¯Blim2−τBlim□2=T¯Blim221−kN,with PplBlim□2=kT¯Blim2 passengers boarded, for a total of PplBlim□=kTs passengers boarding from the regular bus stop during the two revolutions.The waiting time at thespike bus stop also needs to be calculated averaging the waiting time WBlimΔ1 of the first PplBlimΔ1=Nc passengers who can board immediately after the spike during revolution (1), so only the time taken to board is considered in the waiting time, and the waiting time WBlimΔ2 of the remaining PplBlimΔ2=P−Nc that needs to wait T¯Blim1 until the first revolution is completed. The average waiting time at the spike bus stop is computed as(38)WBlimΔ1=Nc2N,WBlimΔ2=T¯Blim1+P−Nc2N,WBlimΔ=NcPWBlimΔ1+P−NcPWBlimΔ2.The waiting time computed requires an expression for the time taken to complete the revolutions (1) and (2). The first case is expressed as(39)T¯Blim1=T+τBlimΔ1+τBlim□1=T+c+kNTs−T¯Blim2.The revolution includesT unit times on the road, τBlimΔ1, to board from the spike bus stop the first Nc passengers, and τBlim□1 to board passengers at the regular bus stop. Passengers at the regular bus stop started arriving during the previous (2) revolution, after the platoon of buses finished to board at the regular bus stop. The number of passengers arriving at the regular bus stop during the first revolution (1) (and the dwelling time τBlim□1) is proportional to the sum of the holding time waited to synchronise with the spike after revolution (2) and T¯Blim1. The quantity T¯Blim1 is defined as the time taken to board passengers at the spike bus stop, the time taken to board up to the last passengers at the regular bus stop during the first revolution (1), and the time to complete the loop itself, T: τBlim□1∝HoldBlim+T¯Blim1. As the duration of the two revolutions (1) and (2) plus the time HoldBlim waited at the spike bus stop must be Ts in order to synchronise with the spike, HoldBlim+T¯Blim1=Ts−T¯Blim2.The time taken to complete the second revolution (2) before holding is(40)T¯Blim2=T+τBlimΔ2+τBlim□2=T+P−NcN+kNT¯Blim2=T+P−Nc/N1−k/N.The dwelling time taken to board at thespike bus stop is proportional to the number of passengers left P−Nc. For the case of the regular bus stop, the number of passengers, hence the dwelling time, are proportional to T¯Blim2 itself, as there is no waiting for synchronisation in between serving the regular bus stop during the first (1) and second (2) revolution in this setting.Combining the above expressions withPplBlim□=kTs and PplBlimΔ=P, the average waiting time for synchronised bunched buses with capacity P/2N<c<P/N is found from(41)WBlim=PplBlimΔ×WBlimΔ+PplBlim□×WBlim□PplBlimΔ+PplBlim□.The average waiting time for synchronised bunched buses is equal to that of a single bus with capacityNc and boarding rate Nl. Assuming that it is possible to build and deploy such a bus, N synchronised bunched buses are still more versatile and adaptable to a change in demand. First, N buses can implement active control and move to a staggered configuration when the passengers demand at the bus stops changes. As we see from Figures 2 and 3, the more advantageous configuration can be either perfectly staggered buses or synchronised bunched buses, depending on the parameters of the bus loop. Another advantage of N bunched buses over a single bus with equivalent capacity and boarding rate is the option of adding and removing extra buses to match the passenger demand and capacity constraints as the number of commuters in the system changes, reducing operational cost when less capacity is needed.


## 3.3. Perfectly Staggered Buses

As thespike bus stop is being served by one bus at a time in this configuration of perfectly staggered buses, the limited capacity affects the system for any c<P. In the previous two cases in Sections 3.1 and 3.2, the limited capacity affects the system only for c<P/N.We consider the case wherem buses are needed to board the total number of passengers at the spike bus stopP/m<c<P/m−1. The value for m is ⌈P/c⌉. As this case requires m/N revolutions to clear the passengers at the spike bus stop, a necessary condition for the buses to serve this system is Ts>m/NT, otherwise the number of waiting commuters blows up. Following the same reasoning as in equations (14) and (32),(42)WClimΔ=cPδ1stΔ+c2+cPδ2ndΔ+c2++…+P−m−1cPδm−thΔ+P−m−1c2,where δi−thΔ=T¯Clim2i−1/2N is the distance (in units of time) of the ith bus to serve the spike bus stop. As in the case with unlimited capacity, the number of people boarding is PplClimΔ=PT¯Clim/Ts.The waiting time and people boarded from theregular bus stop are also the same as in equations (12) and (13): WClim□=T¯Clim/2N1−k and PplClim□=kT¯Clim. To express the average waiting time in the whole system, the last remaining equation is for T¯Clim. As in the case of unlimited capacity in equation (16), boarding passengers at the regular bus stop takes τClim□=kT¯Clim/N for each bus, under the assumption of perfectly staggered buses and no capacity constraints at the regular bus stop. At the spike bus stop, buses will dwell for either c or P−m−1c unit times if there are passengers there. For perfectly staggered buses, the necessary condition is for all the buses to move with the same period, hence they all have to employ dynamic control to keep themselves staggered, slowing down at the pace of the slowest buses. Since c>P−m−1c, by definition of m=⌈P/c⌉, the slowest bus waits c unit times, and that happens Ts/T¯Clim times a loop. The expression for the average time taken to complete a loop is then(43)T¯Clim=T+τClimΔ+τClim□=T+cT¯ClimTs+kT¯ClimN=T1−c/Ts−k/N.The general expression depends on the value ofm via WClimΔ. We report the average waiting time in the case of m=2, hence in the regime P/2<c<P, but the equations above allow for a general calculation via equation (18).(44)WClim=Nc2+P−c2+T¯Clim3P−2c+k1−kTs2NP+kTs.


## 4. Comparison and Discussion

In a bus loop with aspike bus stop and a regular bus stop, six important variables affect the system: the crowdedness of the bus stops, through P and k, the period of the spikes Ts, the period for a revolution without dwelling T, the number of buses N, and the capacity of buses c.


### 4.1. Limit Cases ofP and k

First, as the perfectly staggered buses are the best solution in terms of waiting time for aregular bus stop [14, 15], we expect that for lower demand of the spike bus stop as compared with the regular bus stop, the staggered configuration will outperform the two bunched configurations examined in this work. Computing the average waiting time of the three cases with unrestricted capacity in the limit P=0 in equations (6), (11), and (17), we have(45)WAP=0=T¯A1−kN=T2,(46)WBP=0=Ts21−kN,(47)WCP=0=T¯C2N1−k=T21−kN−k.The waiting time for bunched buses, caseA, is fixed as T/2 since as long as passengers can be boarded faster than they arrive k<N, no passenger has to wait for more than a whole revolution T to board. The synchronised bunched buses in case B behave in the same way, except that having to wait at the spike bus stop, the time taken to complete a revolution is Ts≥T¯A, where the inequality is a necessary condition for synchronised bunched buses, so WAP=0≤WBP=0. In the last case of perfectly staggered buses, C, the waiting time is always the lowest, as expected. The quantity 1−k/N−k is always less than or equal to 1, since k<1 is a necessary condition for staggered buses, so WCP=0≤WAP=0≤WBP=0. In the case of a single bus N=1, case A and case C are equivalent. Taking the limit P=0 leads to the same result as taking the limit for Ts⟶∞ for the case of bunched buses A and perfectly staggered buses C. For synchronised bunched buses, this limit does not make sense, as the buses would have to wait indefinitely at the spike bus stop.In the opposite limit where all demand is concentrated at thespike bus stopk=0, we expect the synchronised bunched buses to outperform the other configurations as the platoon of buses waits for the spike to arrive, eliminating any delay between arrival and beginning of boarding process. From equations (6), (11), and (17), in the setting of unconstrained capacity:(48)WAk=0=P+NT¯A2N=P2N+T211−P/NTs,(49)WBk=0=P2N,(50)WCk=0=NP+T¯C2N=P2+T2N11−P/Ts.It takesP unit times to board P passengers for perfectly staggered buses C, so if another spike occurs at Ts≤P, the number of passengers waiting grows with time, either diverging or causing the buses to bunch, against the hypothesis of perfectly staggered buses, hence we consider Ts≥P. Synchronised buses B always perform the best among the three, since 1−P/NTs and 1−P/Ts are necessarily positive. For cases A and C, in the limit of small P≪T<Ts, the waiting time is dominated by the time needed for a bus to reach the bus stop, so bunched buses have the longest waiting time as, on average, buses are further away from the spike bus stopWAk=0,P≪T≈T/2>WCk=0,P≪T≈T/2N. In the opposite limit, where P⟶Ts, perfectly staggered buses cannot keep up with the demand while staying staggered, hence WCk=0,P⟶Ts⟶∞. A similar analysis can be performed in the case of constrained capacity c from the equations of the waiting time in Section 3.


### 4.2. Intermediate Values ofP and k

Intermediate cases ofk and P are less intuitive, and introducing the capacity limit c makes the expressions less simple. To understand and compare the behaviour of the buses in such a scenario, we visualise the effect that the aforementioned variables have on the system. First, the average waiting time as a function of k is explored in Figure 2 where the three methods (bunched buses, synchronised bunched buses, and perfectly staggered buses) are compared in a case with high and low demand from the spike bus stopP, in two conditions of unlimited and limited capacity. As expected from the analytical comparison above, synchronised bunched buses outperform perfectly staggered buses in the regime of low demand kT from the regular bus stop. The comparison is done with kT to have dimensional consistency with P. The curve for the synchronised bunched buses B from Figure 2 is particularly interesting. The average waiting time increases with k for low values of k as expected, but after reaching a peak, the waiting time decreases in the regime of high k. The downward trend can be explained from equations (7) and (9). The contribution to the average waiting time from the spike bus stop, in the case of synchronised bunched buses B, does not depend on k, nor on the number of passengers boarded from the spike bus stopP. The number of passengers boarded at the regular bus stopPplB□∞k increases with k, while P is constant, hence eventually the contribution at the regular bus stop dominates for high k, showing the downward trend ∞1−k/N since WB□∞1−k/N. An intuitive explanation is that at larger k the buses spend more time at the regular bus stop and less time waiting for the spike at the spike bus stop. In all of the cases examined in Figure 2, bunching buses A are never the best performing configuration regarding minimising the average waiting time.The impact of the limited capacity is visualised in Figure3 where the three configurations of buses are compared, changing the number of buses N from 2 to 4. In the range of parameters explored, bunched buses are always outperformed by synchronised bunched buses or perfectly staggered buses, in terms of average waiting time. While the case of two buses in the leftmost plot in Figure 3 seems to follow the intuition that low capacity c and high spike demand P favour synchronised bunched buses over perfectly staggered buses, we see that for N=3 and N=4 the situation is less intuitive for intermediate values of c. The explanation of this phenomenon has to do with the fact that lowering the capacity c in the case of perfectly staggered buses lowers the average time that buses take to complete a loop T¯C since each bus has to stop less time at the spike bus stop, according to equation (43). This reduction in T¯C is directly proportional to the reduction in waiting time at the regular bus stop via equation (12) and indirectly reduces the waiting time at the spike bus stop via equation (42) since the δi−thΔ is proportional to T¯C. This reduction of the waiting time is only effective up to a point where the reduction in waiting time due to a lower T¯C is offset by the need for more and more buses to clear the passengers at the spike bus stop, through extra terms δi−thΔ in equation (14). Fixing the maximum capacity c, synchronised bunched buses outperform perfectly staggered buses for values of P high enough.


### 4.3. Applicability

Another comparison point pertains to the applicability of the three different methods in the real world. Bunched buses are stable [3, 12], in the sense that perturbations in the system and in the initial conditions do not influence the long-term configuration as the buses will tend to bunch. Perfectly staggered buses, on the other hand, require active dynamic intervention to keep the headway between buses constant. Such intervention can be implemented through holding [1–13, 17, 19, 35, 41–48, 54], limiting boarding [28, 30, 55–58], or stop-skipping [18, 19, 21, 32, 59, 60]. Dynamic control requires specific infrastructure and it can be challenging to implement as instructions need to be provided in real-time to bus drivers, hence a technique that involves bunched buses has the advantages of being more robust to perturbations and, at the same time, easier to deploy.


### 4.4. Comparison with a Simulation

To validate our analytical results, we compare the average waiting time found with our approach in Sections2 and 3 with a time-based numerical simulation of the scenarios described. The simulation is the same time-based simulation described in reference [25] and employed to test bus bunching in reference [14]. One of the challenges of the simulation is in translating a result built on continuous variables in a discrete simulation, where the smallest unit is the unit of time. A convenient way to do so is to use small units of time, hence we define T as 1000 units of time. The comparison with the simulation is given in Figure 1. The plot on the left considers unlimited capacity c while the plot on the right compares formulas and simulation for limited c. The main discrepancies with the simulation are at very low kT, where the discretisation of time still plays a role, and at very high kT for the perfectly staggered buses. This has to do with the assumption we made in Section 2.3 about the buses being perfectly staggered. In the simulation, this is implemented by holding buses at the spike bus stop whenever the headway is not perfectly staggered, which happens after the first bus picks up passengers at the spike bus stop. There are many choices and many ways of implementing dynamic control, one of which is described in reference [2], but none of them can keep the buses perfectly staggered at all times, making our assumption valid only approximately. Nonetheless, our simulation matches the waiting time predicted by the formulas within 3% for most of the range of parameters explored in all three configurations analysed, both for limited and unlimited capacity.


## 4.1. Limit Cases ofP and k

First, as the perfectly staggered buses are the best solution in terms of waiting time for aregular bus stop [14, 15], we expect that for lower demand of the spike bus stop as compared with the regular bus stop, the staggered configuration will outperform the two bunched configurations examined in this work. Computing the average waiting time of the three cases with unrestricted capacity in the limit P=0 in equations (6), (11), and (17), we have(45)WAP=0=T¯A1−kN=T2,(46)WBP=0=Ts21−kN,(47)WCP=0=T¯C2N1−k=T21−kN−k.The waiting time for bunched buses, caseA, is fixed as T/2 since as long as passengers can be boarded faster than they arrive k<N, no passenger has to wait for more than a whole revolution T to board. The synchronised bunched buses in case B behave in the same way, except that having to wait at the spike bus stop, the time taken to complete a revolution is Ts≥T¯A, where the inequality is a necessary condition for synchronised bunched buses, so WAP=0≤WBP=0. In the last case of perfectly staggered buses, C, the waiting time is always the lowest, as expected. The quantity 1−k/N−k is always less than or equal to 1, since k<1 is a necessary condition for staggered buses, so WCP=0≤WAP=0≤WBP=0. In the case of a single bus N=1, case A and case C are equivalent. Taking the limit P=0 leads to the same result as taking the limit for Ts⟶∞ for the case of bunched buses A and perfectly staggered buses C. For synchronised bunched buses, this limit does not make sense, as the buses would have to wait indefinitely at the spike bus stop.In the opposite limit where all demand is concentrated at thespike bus stopk=0, we expect the synchronised bunched buses to outperform the other configurations as the platoon of buses waits for the spike to arrive, eliminating any delay between arrival and beginning of boarding process. From equations (6), (11), and (17), in the setting of unconstrained capacity:(48)WAk=0=P+NT¯A2N=P2N+T211−P/NTs,(49)WBk=0=P2N,(50)WCk=0=NP+T¯C2N=P2+T2N11−P/Ts.It takesP unit times to board P passengers for perfectly staggered buses C, so if another spike occurs at Ts≤P, the number of passengers waiting grows with time, either diverging or causing the buses to bunch, against the hypothesis of perfectly staggered buses, hence we consider Ts≥P. Synchronised buses B always perform the best among the three, since 1−P/NTs and 1−P/Ts are necessarily positive. For cases A and C, in the limit of small P≪T<Ts, the waiting time is dominated by the time needed for a bus to reach the bus stop, so bunched buses have the longest waiting time as, on average, buses are further away from the spike bus stopWAk=0,P≪T≈T/2>WCk=0,P≪T≈T/2N. In the opposite limit, where P⟶Ts, perfectly staggered buses cannot keep up with the demand while staying staggered, hence WCk=0,P⟶Ts⟶∞. A similar analysis can be performed in the case of constrained capacity c from the equations of the waiting time in Section 3.


## 4.2. Intermediate Values ofP and k

Intermediate cases ofk and P are less intuitive, and introducing the capacity limit c makes the expressions less simple. To understand and compare the behaviour of the buses in such a scenario, we visualise the effect that the aforementioned variables have on the system. First, the average waiting time as a function of k is explored in Figure 2 where the three methods (bunched buses, synchronised bunched buses, and perfectly staggered buses) are compared in a case with high and low demand from the spike bus stopP, in two conditions of unlimited and limited capacity. As expected from the analytical comparison above, synchronised bunched buses outperform perfectly staggered buses in the regime of low demand kT from the regular bus stop. The comparison is done with kT to have dimensional consistency with P. The curve for the synchronised bunched buses B from Figure 2 is particularly interesting. The average waiting time increases with k for low values of k as expected, but after reaching a peak, the waiting time decreases in the regime of high k. The downward trend can be explained from equations (7) and (9). The contribution to the average waiting time from the spike bus stop, in the case of synchronised bunched buses B, does not depend on k, nor on the number of passengers boarded from the spike bus stopP. The number of passengers boarded at the regular bus stopPplB□∞k increases with k, while P is constant, hence eventually the contribution at the regular bus stop dominates for high k, showing the downward trend ∞1−k/N since WB□∞1−k/N. An intuitive explanation is that at larger k the buses spend more time at the regular bus stop and less time waiting for the spike at the spike bus stop. In all of the cases examined in Figure 2, bunching buses A are never the best performing configuration regarding minimising the average waiting time.The impact of the limited capacity is visualised in Figure3 where the three configurations of buses are compared, changing the number of buses N from 2 to 4. In the range of parameters explored, bunched buses are always outperformed by synchronised bunched buses or perfectly staggered buses, in terms of average waiting time. While the case of two buses in the leftmost plot in Figure 3 seems to follow the intuition that low capacity c and high spike demand P favour synchronised bunched buses over perfectly staggered buses, we see that for N=3 and N=4 the situation is less intuitive for intermediate values of c. The explanation of this phenomenon has to do with the fact that lowering the capacity c in the case of perfectly staggered buses lowers the average time that buses take to complete a loop T¯C since each bus has to stop less time at the spike bus stop, according to equation (43). This reduction in T¯C is directly proportional to the reduction in waiting time at the regular bus stop via equation (12) and indirectly reduces the waiting time at the spike bus stop via equation (42) since the δi−thΔ is proportional to T¯C. This reduction of the waiting time is only effective up to a point where the reduction in waiting time due to a lower T¯C is offset by the need for more and more buses to clear the passengers at the spike bus stop, through extra terms δi−thΔ in equation (14). Fixing the maximum capacity c, synchronised bunched buses outperform perfectly staggered buses for values of P high enough.


## 4.3. Applicability

Another comparison point pertains to the applicability of the three different methods in the real world. Bunched buses are stable [3, 12], in the sense that perturbations in the system and in the initial conditions do not influence the long-term configuration as the buses will tend to bunch. Perfectly staggered buses, on the other hand, require active dynamic intervention to keep the headway between buses constant. Such intervention can be implemented through holding [1–13, 17, 19, 35, 41–48, 54], limiting boarding [28, 30, 55–58], or stop-skipping [18, 19, 21, 32, 59, 60]. Dynamic control requires specific infrastructure and it can be challenging to implement as instructions need to be provided in real-time to bus drivers, hence a technique that involves bunched buses has the advantages of being more robust to perturbations and, at the same time, easier to deploy.


## 4.4. Comparison with a Simulation

To validate our analytical results, we compare the average waiting time found with our approach in Sections2 and 3 with a time-based numerical simulation of the scenarios described. The simulation is the same time-based simulation described in reference [25] and employed to test bus bunching in reference [14]. One of the challenges of the simulation is in translating a result built on continuous variables in a discrete simulation, where the smallest unit is the unit of time. A convenient way to do so is to use small units of time, hence we define T as 1000 units of time. The comparison with the simulation is given in Figure 1. The plot on the left considers unlimited capacity c while the plot on the right compares formulas and simulation for limited c. The main discrepancies with the simulation are at very low kT, where the discretisation of time still plays a role, and at very high kT for the perfectly staggered buses. This has to do with the assumption we made in Section 2.3 about the buses being perfectly staggered. In the simulation, this is implemented by holding buses at the spike bus stop whenever the headway is not perfectly staggered, which happens after the first bus picks up passengers at the spike bus stop. There are many choices and many ways of implementing dynamic control, one of which is described in reference [2], but none of them can keep the buses perfectly staggered at all times, making our assumption valid only approximately. Nonetheless, our simulation matches the waiting time predicted by the formulas within 3% for most of the range of parameters explored in all three configurations analysed, both for limited and unlimited capacity.


## 5. Conclusion

A bus loop with aspike bus stop creates a situation where perfectly staggered buses may not be the configuration that minimises the average waiting time of passengers. If the passenger demand from the spike bus stop is large enough, bunched buses synchronised with the spike perform better than staggered buses. The advantage is stronger when bus capacity constraints are considered. The edges of bunched buses are faster passenger boarding and have higher effective capacity. When the bunched buses wait at the spike bus stop until the spike occurs, the waiting time of the passengers arriving at the spike bus stop is minimised, at the expense of the waiting time of passengers arriving at the regular bus stop. As discussed in Section 4, bunched configurations also have the advantage of being robust to external perturbations, as well as being easier to implement as compared with staggered buses.While our models are idealised, they take inspiration from real-world situations, such as a bus stop connected to a train station or mass rapid transit. We prove that bunched buses can outperform perfectly staggered buses in certain scenarios if the buses are synchronised with the spike in passenger demand. The analytical results of the waiting time for the three bus configurations can be generalised to more complicated bus loops, as explained in Sections2.4 and 2.5.



---

*Source: 8996439-2022-08-30.xml*