Documentation
Formal and operational validation of a bus stop public transport network MICRO SIMULATION
Pau Fonseca i Casas 
Esteve Codina Sancho 
Lídia Montero Mercadé M.Paz Linares Cristina MontañolaSales 
Universitat Politècnica de Catalunya Statistics and Operations Research Department Campus Nord, B5 building, InLab FIB 
08034 Barcelona, Spain 
ABSTRACT
We present a detailed simulation model with the purpose of analyzing the congestion and interaction between bus lines and passengers at stops. Our main goal is to perform a complete validation of a simulation model formalized in a standard language in order to use it as a basis to perform more complex experiments. The basis of the model is a queuing model that leads us to perform an operational validation. Since the model is completely represented using a formal language, the specialist can perform a formal validation of the model previously to any implementation. Thanks to the modular structure of the formal language used to define the model, the model can be easily expanded to represent more complex systems. Due to a formal representation, the implementation process can be done automatically implying that analysts should only be concerned about the correct definition of the diagrams that represent the model behavior.
1
Introduction
In the planning of public transportation systems, one of the key factors is the evaluation of the performance of stations in terms of available capacity for waiting passengers and the possibility for buses queuing in order to access the boarding/alighting berths. Operations and interactions between passengers and vehicles at bus stops are very complex, especially in congested situations. In fact, there has been the object of a large number of empirical studies such as those of TCRP in (Transportation Research Board National Research Council 2011) to model operational times such as dwell times and queuing of buses for the case of conventional urban bus lines. Moreover, the need for increasing the capacity of urban public transportation systems at a moderate cost has made to emerge the socalled BusRapidTransit systems, now implemented in a number of cities. The planning of these transportation systems has demanded the study of bus stops with special configurations, such as multiple berths, or with weaving sections.
Analytical models for describing bulk service queuing of passengers at bus stops are very complex. No analytical models are known for the interactions between vehicles at multiple berth stations. Thus, the design of these systems has relied on simulators, capable of determining bus stop capacities for the complex configurations under study. Specifically designed simulators such as PASSION 5.0 by (Fernández 2007) and (Fernández 2010), used in the TransSantiago bus system, have replaced others initially developed such as the IRENE simulator, see (Gibson and Baeza 1989). These simulators are focused on a single bus stop and require inputs performance measures and characteristics of external flows.
Passenger flows and their behavior on bus stops such as the willingness to wait accordingly to a set of external parameters (for instance crowding of the bus stop and observance of passenger queues, fares, etc.) have received some attention. See, for example, (Hongfei, Yang and Tang 200). However, these aspects have not yet been included in the previous simulators.
Furthermore, because of interactions with external vehicular traffic, methods to evaluate the effects of traffic lights and the configuration of special lanes reserved for buses, have demanded the integration of specific simulation tools with existent microscopic traffic simulators. For this purpose, simulation experiments are described in (Sorratini, Liu and Sinha 2008) for a single bus line, where DRACULA, a dynamic microsimulation traffic model developed at the University of Leeds, is used. This simulator is more oriented to vehicular behavior, and it does not contemplate many of the interactions between passengers and buses at bus stops.
In this paper, we define a model that permits a detailed microsimulation of a bus station reflecting the interaction between queues of buses and queues of passengers. It captures all the relevant magnitudes that allow the evaluation of crowding at bus stops, as well as the effects of congestion and bus blocking and bunching. The model can be expanded to consider other specific passengers’ behavior aspects, such as the willingness to wait (patience). The layout of the paper is as follows. In section 2, a description of the modeled system in terms of the intervening queuing systems is presented. In section 3, we detail the variables and factors that must be considered in the model. Section 4 introduces the main magnitudes that reflect the performance of the queues are described. Section 5 describes the implementation of the model using the “Specification and Description Language Parallel Simulator” (SLDPS) system and section 6 describes the events taken into account in calculating the simulation statistics. Section 7 compares the results for the passenger queues obtained by simulation with those obtained by using the Powell’s approximation formula for bulkarrival bulkservice queues. Finally, section 8 contains conclusions and future developments.
2
THE
PHYSICAL SYSTEM
The sequence of operations carried out at a bus stop and their operational times are fully described, amongst many other references, in (Fernández 2010), (Fernández and Tayler 2005), and (Anderson and ScaliaTomba 1981). Conceptually, in terms of queuing models, at a bus stop two systems of queues interacting each other can be defined. From the point of view of passengers, one of these systems are made up by one or more queues of passengers, according to the number of lines operating on that bus stop and the policy that rules how these lines are chosen by passengers. From the point of view of the buses entering and exiting to the station, the bus stop behaves as two waiting systems in tandem with blocking. These waiting systems will be referred as L0 and L1 respectively. L0 waiting system receives input flow of buses from the external traffic flow. The servers of waiting system L0 are the berths where passengers may board and alight. Once a bus has completed the boarding/alighting operations, it leaves L0 and enters into L1, provided that there is no blocking from L1. At L1, buses may queue waiting for exiting the bus stop and entering in the external traffic flow. L1 may be considered nonexistent in many cases if, after having completed the service, buses experience very little or no delay at all in entering to the external traffic flow. The lack of delay may depend on several factors, such as the existence of reserved lanes, traffic signals right after the exit of the bus stop or simply the intensity of the external traffic flow.
The boarding/alighting operations at berths depend on the number of doors for boarding/alighting of passengers. In the simulation model, bus units may have n^{+} doors for boarding and n^{} doors for alighting and the boarding/alighting operations can be carried out in serial or parallel. The service times for bus units are mainly determined by these boarding/alighting operations, although maneuver times for parking or clearing the berths and the time for opening/closing doors are also taken into account.
3 Variables and factors to be considered In the model
Our simulation model considers the main variables and factors to allow a detailed representation of a bus stop. The table below enumerates and describes these variables. In case that these variables are random with a probability distribution that can be fixed a priori by the user, the table also lists the set of probability distributions that are considered in the implementation of the simulation model.
Table 1: Variables and factors to be considered in the model.
Parameter 
Description 
Values/probability distribution to be used 

Time between passenger arrivals 
 Exponential. .  kErlang. , being the average stage time α. 

Time between bus arrivals 
 Exponential; average interarrival time  Hypoexponencial; = number of stages and average time for each stage  Hyperexponencial; = number of stages and average time for each stage ; weight of the stages. ()  Degenerate distribution; constant time T . 
t_{p} 
Time to park a bus in the berth

Normal truncated to >0. It is assumed that 

Number of passengers in the bus on arrival to the bus stop 
 Normally distributed , truncated within the interval [0, cap_bus].  Uniformly distributed on [0, cap_bus]  Hypoexponential with two stages i truncated within the interval [0, cap_bus].= ( β  cap_bus); where β may distribute as stated previously.  Degenerate: all buses arrive with a constant number of passengers. 

Number of alighting passengers. 
 uniformly distributed in the interval [0, ].  degenerate 

Bus service time. 
The service time for buses depends on other specific parameters, such as and the type of operation for boarding/alighting (see section 3.1 below) 
n^{+}, n^{} 
Bus doors 
n^{+} doors for boarding and n^{} doors for alighting. 
3.1
Modeling of
boarding and alighting operations
The amount , , (, ) of passengers boarding (alighting)
through door p are generated as multinomial distributed numbers summing
up the total number of boardings (alighting ), i.e.:
By default, and unless otherwise specified, all doors have the same probability to be chosen by the boarding (alighting) passengers.
4
PERFORMANCE EVALUATION OF THE BUS STOP
As in any queuing system, the intensity factor plays a major role in the performance. It is one of the magnitudes that must be estimated from the simulation, regardless that a prior estimation could be made from the basic inputs that set the probability distributions for the arrival processes of passengers and buses.
4.1
Intensity factor for the passenger’s queue
Let be the number of passengers that may board on the bus when it
arrives at the bus stop. It will be assumed that it is a random variable that
may take values between 0 (bus full) and c (empty bus), where c
is the bus capacity of passengers. Being be the time between arrivals
of two consecutive buses to the bus stop (or headway), and
let be the time between consecutive arrivals
of passengers to the bus stop. and are also random variables with known probability distribution. The
intensity factor for the queue of passengers at
the bus stop is defined as:
(2)
Obviously any simulation must be developed in a finite temporal interval, because a) it is previously defined, or b) the maximum number of involved agents can be fixed a priori, or c) maybe a specified terminating condition becomes true. In any of these cases let H be the simulation length.
4.2
Evaluating the intensity factor from simulation
We assume the simulation ends when the
boarding/alighting operation of the last bus finishes. In this case, the
intensity factor for the passenger queue given in (2) can be estimated by:
(3)
where is the number of passengers that have been generated in the simulation with interarrival times , to the bus stop; and are the interarrival times and available passenger capacity respectively for the buses,and is the service time of the last bus. is the mean capacity of the buses that arriving at the stop. Since the simulation covers a finite time horizon, then and it is needed to consider, from the N_{p} generated passengers, those who effectively can board in a bus, N_{B}, and those who cannot board, N_{Q}, at the end of the simulation, i.e.:
(4)
If then it must be expected that . When a lot of “residual passengers” are present at the end of the simulation, then it is very likely that . Thus, from the simulator perspective, it is needed to report: a) the absolute value of the residual queue, , and b) the ratio .
4.3
Intensity factor for the queue of buses
The queue of buses works as a simple ''single server'' queue with FIFO discipline. Its intensity factor is defined by:
(5)
If the jth bus has a service time of , then it is possible to evaluate the mean service time and estimate by:
(6)
5
IMPLEMENTATION OF THE SIMULATION model USING SLDPS
The model is represented using Specification and Description Language (SDL) to simplify the definition and the understanding of the structure and the behavior of the different components. In this paper, we follow the convention that all SDL elements are capitalized (for example a BLOCK or a PROCESS) whichsimplifies the understanding when we explain that an SDL PROCESS defines certain process of the model. In this section, the complete model is not detailed, but only some key diagrams that permit to understand why this language allows to perform a formal validation of the model by personnel that are not familiar with the theoretical queuing models or simulation models.
Figure 1. Main blocks of the structure for the bus stop simulation model
Figure 2. SDL PROCESS for the behavior of P_SEP process that models the arrivals of new passengers to the system. On the diagram is detailed the waiting state, two SIGNALS (i.e. events) can be received: NewPax and NewBus. Report procedure allows to obtain statistical information from the model. The DCL block configures the model according the hypotheses used.
Figure 1 depicts the bus stop main structure. P_SEP PROCESS defines the process of passenger arrivals to the system. P_SEB_L0 defines the process of entering a new bus to the bus stop. P_SEB_L1 defines the process of leaving the bus stop. Finally, P_EXIT PROCESS defines the process of leaving the system. In this process, we obtain all needed information for the simulation trace (see section 6).
An SDL PROCESS represents the behavior of the model. As an example, Figure 2 depicts P_SEP PROCESS that defined the arrivals to the system of new passengers.
6
The
model Output
The model implementation was performed using SDLPS (Fonseca i Casas 2008), (Fonseca i Casas and Casanovas 2011). All results showed in the diagrams were obtained using the REPORT task, an element that belongs to the SDLPS API to simplify obtaining statistical information from simulation models. The information is stored in the simulation trace and a final report. The simulation trace can identify or reconstruct the events listed below (see Table 2 and Figure 5). With this information it should be possible to give the statistics that are required for evaluating the performance of:
• Passenger queues. Average delay and average passenger queue length depending on the bus stop intensity factor in (3).
• Bus queues. Average delay and average queue length depending on the bus stop intensity factor (6).
Table 2: Model output main variables.
Event 
Attributes 
Arrival of the ith passenger 
Time instant of the arrival = number of passengers in the queue Time instant for the ith passenger’s boarding. 
Arrival of the jth bus to the bus stop

Time instant for the arrival of the jth bus to the stop. = number of buses present on the
system L0 on arrival of the jth bus. = number of present buses on the system L1 on arrival of the jth bus. 
Arrival of the jth bus to the berth 
Time instant of arrival of the bus to the
berth. = number of passengers
present on the bus (n board) when the bus arrives. = number of passengers that
leave the bus jth and effective capacity of
the jth bus = Number of passengers in
the queue at time instant Sj (variable pax_count) = number of passenger that arrive at the bus stop during the operation
of boarding/alighting (depends on the service time for the passengers). = Number of passengers boarding
the jth bus = Time of park/unpark of
the jth bus (maneuver
time). = Service time for the passengers
of the jth bus (time needed to
boar/alight). The time needed to open or close the doors, is not included
here. = Service time for the jth bus = blocking time for the bus on the platform; is defined by ( is the instant of time where the jth bus leaves the
platform; the bus enters in the instant in the system L1) = number of passengers present on the queue in time instant (when the boarding/alighting operation ends). 
Exit of the jth bus of the platform (entering in the L1 subsystem) 
Exit time of the jth
bus from the platform, entering then in the L1 subsystem. = number of buses present in system L1 when jth bus enters in system L1. 
We implemented a post process algorithm in order to display all the expected results in a convenient way.
7 Results
We compare
simulation results for the queue of passengers with the formulae of the
Powell’s approximation (Powell 1986) for bulk arrivalbulk service queues, M^{[X]}/E_{k}^{[V]}/1. Assuming bulkarrivals of
size 1, Powell’s approximation for average waiting time in system W is:
(7)
The term is the average time until the next bus arrival to
the bus station experienced by a random passenger, whereas W is the average time until boarding a
bus. Q' is the average maximum
queue length (i.e., the number of passengers waiting when a new bus arrives)
which is approximately given by:
(8)
In previous formulas (7), (8), v is the average effective bus capacity on arrival to the bus stop and C_{v}_{ }is the coefficient of variation for the effective bus capacity, 1/µ is the average value for bus interarrival times and C_{s} is its corresponding coefficient of variation. K is the maximum bus capacity and ρ=λ/(µv) is the traffic’s intensity for the passenger’s queue. The correction term must be taken into account for low values of and is given by:
(9)
where a=, b=, c= , d=, e=, f=, g= . is the third moment for the number of passengers arrived to the bus stop between bus arrivals. When applying this approximation it must be taken into account that: and thus, for . Figures 3 and 4 show values for the passenger’s delay W in minutes, the average queue length L=λW and given by Powell’s approximation.
In order to validate the simulation model, the results of simulations are compared to the values given by the Powell’s approximation. Simulations are for a bus stop with bus interarrival times following a 2Erlang distribution and an average value of 10 minutes. Maximum bus capacity is 100 passengers. We assume that buses arrive at the bus station with a random effective capacity of 75 passengers on average and standard deviation of 15 passengers. (A) simulation corresponds to a poissonian input flow of passengers with λ=4 pax/min or an expected interarrival time of =0.25min. For this flow the intensity factor is ρ=0.5.
Figure 3. Normalized delay as a function of the intensity factor calculated using Powell’s approximation
Figure 4. Average queue length (L) and average maximum queue length (Q´) as a function of the intensity factor ρ calculated using Powell’s approximation
Figure 5. SDLPS showing the number of the passengers at the bus stop obtained with the REPORT procedure. On the horizontal axis is represented the time and on the vertical axis the instantaneous number of passengers at the bus stop.
When applying Powell’s formulae for the evaluation of the queue of passengers, then arrivals to the bus berth will follow a different pattern than bus arrivals to the station due to the presence of the queue of buses. Thus, for a 2Erlang pattern of arrivals for buses, its coefficient of variation would be 0.707. Using the previous formulae and, without considering the queue of buses, W_{0} would be then 7.5 minutes. Notice that Powell’s formula does not take into account the bus service time. An example of the magnitudes provided after simulations appears in Table 3 and Table 4 below.
Table 3: Summary of the main variables considered on the model. In parenthesis, the reference values given to the simulator for the main input magnitudes.
Variable 
Mean(A) 
Dev(A) 
Cdev(A) 
= interarrival time of passengers 
0.253 (0.25) 
0.254 (0.25) 
1.003 (1.0) 
= interarrival time of buses 
9.402 (10.0) 
5.625 (7.07) 
0.598 (0.707) 
Passengers on the bus stop when a new bus arrives 
31.96 
25.076 
0.784 
Passengers that leave the bus 
21.90 
14.852 
0.678 
capacity of a bus 
72.88 (75) 
16.421 (15) 
0.225 (0.2) 
Table 4: The table shows the values obtained with simulations compared to those calculated using Powell’s formula (P).
Variable 
Value(A) 
(P) 
Number of buses 
100 
 
Time horizon length H 
992.17 
 
Number of served passengers 
3907 
 
Total capacity in passengers 
7288 
 
Intensity factor ρ 
0.54 
0.5 
Mean flow of passenger arrivals 
3.94 
4 
Average maximum number of passengers that can be alighted 
7.34 
 
Residual queue at the end of the simulation 
0 
 
Quotient N_{Q }/͞γ 
0 
 
Q’àAverage/Std Dev. maximum number of passengers in bus stop 
31.96 / 25.08 
36.54 
Pointwise (max/ min) number of passengers in bus stop during simulation 
137.0/2.0 
 
Average/Std. Dev. maximum number of passenger after bus service operation 
2.40/9.14 
 
Pointwise (max/ min) number of passengers after bus service operation 
64.0/ 0.0 
 
Mean time experienced by a random passenger until next bus arrival W0 (minutes) 
7.90 
7.50 
Ratio W/W0 
1.02 
1.22 
8
CONCLUSIONS AND FURTHER DEVELOPMENTS
The model behaves as expected and represents a detailed microsimulation of a bus stop. This model represents a good starting point to define several alternatives to perform a detailed microsimulation of a berth configuration. Since the model is represented using a graphical and modular formalism, it is easy to extend it in order to represent more complex behaviors. The use of SDL to represent the model simplifies the Validation and Verification of the simulation model. Using a formal language like SDL simplifies the use of knowledge of personnel with different formation, but specialist on the systems we analyze.
Currently, further developments are focused in the combination of several berths at a single bus stop and the combination of several bus stops in line. Due to its complexity, these models must be solved using a simulation approach. Also since the model is defined using SDL the inherent modularity of the language allows to extend the behavior of the model to include other specific passengers’ behavior aspects, such as the willingness to wait (patience) following the approach presented on (Fonseca i Casas 2014).
9
Acknowledgments
Research supported under Spanish Research R+D+i Program. Project TRA2011 27791C0302
10
References
Anderson, P.A., and G.P. ScaliaTomba. 1981. "A mathematical model of a bus route." Transp. Res. 15 (4): 249266.
Fernández, R. 2010. "Modelling public transport stops by microscopic simulation." Transportation Research C. 856868.
Fernández, R. 2007. "PASSION 5.0a model for microscopic simulation of multiple berth bus stops." Traffic Engineering and Control 324328.
Fernández, R., and N. Tayler. 2005. "Effect of passengerbustraffic interactions on bus stop operations." Transportation Planning and Technology 28 (4): 272292.
Fonseca i Casas, Pau. 2008. "SDL distributed simulator." Winter Simulation Conference 2008. Miami: INFORMS.
Fonseca i Casas, Pau. 2014. "Using Specification and Description Language to Formalize Multiagent Systems." Applied Artificial Intelligence 28 (5): 504531. doi:10.1080/08839514.2014.905820.
Fonseca i Casas, Pau, and Josep Casanovas. 2011. "Towards a SDLDEVS Simulator." The Third International Conference on Advances in System Simulation. Barcelona.
Gibson, J., and I. Baeza. 1989. "Busstops, congestion, and congested busstops." Traffic Engineering and Control 291296.
Hongfei, J., L. Yang, and M. Tang. 200. ""Modeling and Simulation of Rail Transit Pedestrian Flow." J.Transpn Sys Eng & IT 9 (5): 117123.
J., Gibson, and Baeza I. 1989. "Busstops, congestion, and congested busstops." Traffic Engineering and Control 291296.
Meignan, D., O. Simonin, and Koukam A. 2007. "Simulation and evaluation of urban bus networks using a multiagent approach." Simulation Modelling Practice and Theory 15 (6): 659671.
Powell, WB. 1986. "A stochastic model of the dynamic vehicle allocation problem." Transportation science 20 (2): 117129.
Sorratini, J.A., R. Liu, and S. Sinha. 2008. "Assessing Bus Transport Reliability Using Micro Simulation." Transportation Planning and Technology 31 (3): 303324.
Transportation Research Board National Research Council. 2011. "TCRP Report 19 (1996) Guidelines for the Location and Design of Bus Stops." Accessed 6 21, 2011. http://onlinepubs.trb.org/onlinepubs/tcrp/tcrp_rpt_19.
author biographIES
PAU FONSECA I CASAS is a Professor of the Department of Statistics and Operational research of the Technical University of Catalonia, teaching in Statistics and Simulation areas. He obtained his Ph.D. in Computer Science on 2007 from Technical University of Catalonia. He also works in the InLab FIB (http://inlab.fib.upc.edu/) as head of the Environmental Simulation area, developing Simulation projects since 1998. His research interests are discrete simulation applied to industrial, environmental and social models, and the formal representation of such models. His website is http://wwweio.upc.es/~pau/.
ESTEVE CODINA obtained in 1994 its PhD in Industrial Engineering at Universitat Politècnica de Catalunya (Spain). He is now Associate Professor at the Department of Statistics and Operations Research assigned to the Faculty of Mathematics and Statistics and at the Faculty of Computer Science of this University. His research activity is mainly focused on the application of Operations Research methods and Optimization methods to transportation problems. email: esteve.codina@upc.edu
LIDIA MONTERO obtained in 1993 its PhD in Computer Science at Universitat Politècnica de Catalunya (Spain). She is now Associate Professor at the Department of Statistics and Operations Research assigned to the Faculty of Mathematics and Statistics and to the Faculty of Computer Science of this University. Her research interests are transportation planning and demand analysis with focus on OD Matrix Estimation. email: lidia.montero@upc.edu.
MªPAZ LINARES is a researcher at the inlab FIB (Barcelona informatics school laboratory). She holds a Mathematics Degree and a Master in Logistics, Transports and Mobility from UPC. Her research interests include DTA, traffic simulation and optimization. email: mari.paz.linares@upc.edu.
CRISTINA MONTAÑOLASALES is a PhD student at the Statistics and Operations Research Department in Universitat Politècnica de Catalunya (UPCBarcelonaTech). She is currently doing her research at Barcelona Supercomputing Center (BSC). She holds an MSc in Computer Science from UPC. Her research interests include agentbased modeling, computer simulation, highperformance computing and computational social science. email: cristina.montanola@upc.edu.