# A microscopic public transportation simulation framework based on machine learning

Younes Delhoum, Olivier Cardin, Maroua Nouiri, Mounira Harzallah

► To cite this version:

Younes Delhoum, Olivier Cardin, Maroua Nouiri, Mounira Harzallah. A microscopic public transportation simulation framework based on machine learning. Journal of Public Transportation, 2024, 26, pp.100103. 10.1016/j.jpubtr.2024.100103. hal-04719367v2

HAL Id: hal-04719367

https://hal.science/hal-04719367v2

Submitted on 20 Jan 2025

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>
<figure><img src="image_2.png" /></figure>

# A microscopic public transportation simulation framework based on machine learning

Younes Delhoum, Olivier Cardin*, Maroua Nouiri, Mounira Harzallah

Nantes University, École Centrale Nantes, CNRS, LS2N, UMR 6004, Nantes F-44000, France

## ARTICLE INFO

### Keywords:

- Machine learning

- Microscopic simulation

- Public transport

- Bus punctuality

- Bus travel time

- Bus holding control

## ABSTRACT

The evaluation of performance of public transportation, such as bus lines for example, is a major issue for operators. To be able to integrate specific and local behaviors, microscopic simulations of the lines, modelling each buses on a daily basis, brings an actual added value in terms of precision and quality. A scientific deadlock then appears regarding the parameterization of the simulation model. In order to be able to gather relevant performance indicators on a potential evolution of the configuration of the line, validated and modifiable simulation models need to be developed. This study aims at proposing a model development methodology based on a multi-agent simulation framework and data inputs extracted by a hybrid approach combining machine learning (ML) trained on actual bus data to predict travel times and probabilistic distributions to accurately estimate travel time variability. It also aims to propose a two-step validation framework that exhibits the performance of the obtained model on a case study based on actual data. The results of the proposed approach are validated by a real case study of three bus lines, including a number of simulation scenarios, to study the impacts of bus recovery time and bus control strategies on bus punctuality. The results obtained show that proposed hybrid approach combining ML with probabilistic distributions outperforms probabilistic distributions on average. Overall, the results show a good fit with the actual Key Performance Indicator (KPI) used by bus operators.

## 1. Introduction

Nowadays, urban cities face multiple challenges, ranging from rapidly increasing population to increasing number of motorized vehicles and traffic congestion (Jindal et al., 2018). In order to reduce traffic congestion, and therefore its negative impacts, cities around the world are trying to shift personal traffic to public transport (Reich et al., 2021). Public transportation (PT), public transit or mass transit is defined as transportation of passengers by group travel systems available for use by the general public. It is an important part of urban life, which plays a critical and essential role for mobility in the modern city. It is managed according to a predefined schedule and operated on established routes. The reliability of service can be understood as a combination of: punctuality of service provided within the scheduled times and the frequency of service of vehicles evenly spaced to accommodate passengers. In public transport, reliability is considered one of the most critical features to assess the quality of service from the perspectives of passengers and operators. Reliability is understood in PT as the certainty that passengers have about the level of service they will experience while travelling (Van

Oort, 2011). Travel time and waiting time, in addition to transfer time and comfort level, experienced during the transit trip are some of the important reliability attributes (Ceder, 2024).

Travel time variability (TTV), also known as travel time uncertainty, is the key indicator for measuring the performance of the transport system, can be divided into three distinct components: day-to-day variability, variability over the course of a day and vehicle-to-vehicle variability (Noland and Polak, 2002). Research emphasizes day-to-day (or inter-day) variability, which describes the degree of variation in travel time for a trip taking the same route over a specific period (Büchel and Corman, 2018). Probabilistic distributions are capable of describing the nature and the pattern of travel time variability. Understanding travel time distributions and their components is a prerequisite for reliability analysis. Various studies have made considerable effort in fitting travel times with different types of distributions, such as normal (Taylor, 1982), lognormal (Emam and Al-Deek, 2006; Uno et al., 2009; Kieu et al., 2015; Durán-Hormazábal and Tirachini, 2016; Dai et al., 2019), gamma (Polus, 1979; Jordan and Turnquist, 1979), Weibull (Al-Deek and Emam, 2006), Burr (Susilawati et al., 2013; Taylor, 2017),

<footnote>* Corresponding author.</footnote>

<footnote>E-mail addresses: younes.delhoum@univ-nantes.fr (Y. Delhoum), olivier.cardin@univ-nantes.fr (O. Cardin), maroua.nouiri@univ-nantes.fr (M. Nouiri), mounira.harzallah@univ-nantes.fr (M. Harzallah).</footnote>
Generalized extreme value (GEV) distribution (Harsha et al., 2020), Gaussian Mixture Model (Ma et al., 2016) were proposed. Such modeling aimed to find the best statistical distribution to describe and explain the shape and the pattern of TTV, because a distribution fitted to travel time values could illustrate a more comprehensive nature of the TTV (Low et al., 2022).

Limiting transit delays is at the core of control metrics for the public transport operators, limiting these delays will help to maintain an appropriate quality of service with reasonable certainty. Delays can be caused by multiple factors: traffic congestion, passenger boarding, road delays and certain events like traffic accidents, etc...

Historically, many researchers have adopted various methods for predicting the estimated time of arrival of buses, these methods can be divided into several groups: historical and real-time approaches, Kalman filtering approaches, statistical methods and machine learning (ML) techniques (Padmanaban et al., 2009). In practice, the performance indicators are often estimated in a purely statistical way by practitioners over several months or years of data. This method provides a relatively coherent image of the past behaviour of the bus lines with low modelling effort and computation cost, but does not allow to evaluate these indicators in different “what if?” scenarios (e.g. roadworks, new traffic priorities, etc.).

Another problem that the bus operators face is bus bunching. Bus bunching refers to the phenomenon where a group of two or more buses arrives at the same bus stop at the same time. It is a long-standing operational problem in urban public transport systems, and it is a major issue that concerns transit users and affects our perception of service reliability and efficiency (Wang and Sun, 2020). This indicator is completely impossible to compute in a purely statistical way, as it relates to single bus travels, their history (delays) and the buses ahead and behind (Morgan, 2002; Errampalli et al., 2005; Lopez et al., 2018; Kieu et al., 2019). Microscopic simulations are one of the most promising way to be able to tackle these kind of problems.

To deal with the challenges noted earlier, bus operators need efficient microscopic bus lines simulation models to evaluate the performance indicators of the current lines and forecast indicators on potential evolutions of these lines. To do so, the first requirement is to be able to model the current situation in a coherent way and validate the results it provides. In this study, we aim to validate public transport simulation framework, including simulated travel times and bus punctuality, with the available actual data. The focus is on retrieving simulation parameters that best match the actual data, particularly bus punctuality which is strongly related to bus travel time. A classical approach is to perform the simulation with scheduled travel times, for example from General Transit Feed Specification (GTFS) data. However these travel times are too theoretical and may differ greatly from observed travel times. We therefore propose to replace theoretical travel times with travel times extracted from actual data. An alternative is to use probabilistic distributions to estimate the actual travel time variability to feed PT simulation framework. We propose an effective ML technique along with probabilistic distributions, with aim of providing the simulation framework with more accurate travel times than those estimated with probabilistic distributions.

In this paper, we suggest a model development methodology based on a multi-agent simulation framework and data inputs extracted by a hybrid approach combining ML trained on actual bus data to predict travel times and probabilistic distributions to accurately estimate travel time variability. We also propose a two-step validation framework that exhibits the performance of the obtained model on a case study based on actual data provided by an operator. A first contribution of this paper is to propose effective ML techniques to predict the travel time in a real scenario, so as to bypass the computational efforts in the simulation platform to mimic congestion. A second contribution of this work is to couple ML and public transport simulation model in the same framework, which to our knowledge is rarely implemented.

The remainder of this article is structured as follows: Section 2

reviews related literature including ML models and their application for bus travel prediction, as well as simulation models with emphasis on traffic models. Section 3 provides an overview of the proposed ML-based microscopic simulation framework and then details each of the layers of the framework. Additionally, the two-step validation framework to assess the performance of the proposed ML-based simulation model will be presented in detail. A case study scenario will be given in Section 4. In Section 5, the simulation results will be analyzed and validated based on a set of performance indicators. A discussion of the analyses presented is in Section 6 and some concluding remarks in Section 7.

## 2. Literature review

Over the past decade, the problem of bus travel time prediction has received wide attention. In this section, we first review related works, which can be categorized into prediction of bus arrival time and bus travel time. Furthermore, we present a number of traffic simulation frameworks and studies that attempt coupling ML with simulation models, as well as the contributions of this work.

### 2.1. Bus arrival time prediction

Estimated Time of Arrival (ETA), also known as expected time of arrival, is the time at which a transportation system is expected to arrive at its destination. The term has long been used in aviation and maritime transport, but also increasingly in road transport. Various methods have been adopted by researchers to predict the expected arrival time of buses, these methods can be grouped as follows: 1) historical approaches predict the travel time at a given time as the average travel time for the same period on different days (Wall and Dailey, 1998; Lin and Zeng, 1999; Jeong and Rilett, 2004; Ramakrishna et al., 2008); 2) real time approach predicts that the next time interval travel time will be the same as the current travel time (Padmanaban et al., 2009); 3) regression models are classical approaches for predicting travel time and predicting a dependent variable based on a function formed by a set of independent variables (Jeong and Rilett, 2004; Ramakrishna et al., 2008; Shalaby and Farhan, 2024; Patnaik et al., 2004); 4) Kalman filter is a popular tool for the recursive estimation of variables that characterize a system, it is a model-based estimation scheme that takes into account the stochastic properties of process disturbance and the measurement noise (Shalaby and Farhan, 2024; Chien et al., 2002; Cathey and Dailey, 2003; Chu et al., 2005; Kumar et al., 2024); 5) ML techniques have been widely reported for traffic and travel time prediction (Chien et al., 2002; Altinkaya and Zontul, 2013; Mori et al., 2015; Yang et al., 2016; Abdi and Amrit, 2021).

### 2.2. ML for bus arrival and travel time prediction

In past decades, ML models have been widely applied in the transportation field, due to their ability to solve complex problems and extract patterns. However, ML approaches are data-driven techniques, requiring a large data set and high computation time. Many applications of traditional ML methods have been implemented to predict traffic data (Soysal and Schmidt, 2010; Ellis et al., 2014; Fusco et al., 2015; Nguyen et al., 2017) and traffic congestion (Thianniwet et al., 2009; Othman et al., 2017), reinforcement learning approaches have been incorporated into traffic control systems (Balaji et al., 2010; El-Tantawy et al., 2013), while the models of neural network and deep learning have been widely reported, including traffic flow prediction (Huang et al., 2014; Fouladgar et al., 2017; Polson and Sokolov, 2017; Zhao et al., 2017), travel demand forecasting (Yang et al., 2020; Cheng et al., 2024; Baek and Sohn, 2016; Ke et al., 2017; Liu and Chen, 2017), traffic signal control (Genders and Razavi, 2024; Li et al., 2016), driving behavior analysis (Dwivedi et al., 2014; Dong et al., 2024) and autonomous driving applications (Hadsell et al., 2008; Huval et al., 2024).
## 2.2.1. Bus arrival time prediction

ML models based on neural network (NN), tree-based, Support Vector Machine (SVM) and regression have been proposed for bus arrival time prediction. (Chien et al., 2002) proposed two artificial neural networks to address the dynamic bus arrival time prediction problem. Predicted travel times are then assessed with a microscopic simulation model, calibrated and validated with real-world data. (Pan et al., 2012) introduced a self-learning algorithm based on a back-propagation neural network for predicting bus arrival time based on historical data. (Li, 2017) proposed a random forest-based approach for bus arrival time prediction, using travel data from the Beijing city bus network. (Yin et al., 2017) proposed a model for prediction bus arrival time at stops with multiple routes using the Support Vector Machine algorithm. (Yu et al., 2011) has applied several ML algorithms including: SVM, NN, k-nearest neighbours algorithm (kNN) and linear regression (LR), to predict bus arrival time at bus stop with multiple routes. In another work, (Shalit et al., 2023) introduced a supervised ML method for predicting passengers' boarding stops.

Some of the above mentioned methods are used in a hybrid manner. (Yang et al., 2016) implemented an approach in which SVM with Genetic Algorithm (GA) were used to predict bus arrival time, using different features including: road length, weather conditions and travel speed. (Chen et al., 2004) presented a dynamic bus arrival time prediction model based on real-world data. The model consists of: 1) An artificial neural network (ANN) model to predict the bus travel time between two stops; 2) A Kalman filter-based dynamic algorithm to adjust the arrival time prediction using the bus location information down to the minute. In another work, (Zhang and Liu, 2019) proposed a method called CK-means (K-means Clustering) to predict the arrival time of buses using real time online bus locations. The K-means clustering method is used to aggregate historical traffic data and calibrate the operating status of the road section.

## 2.2.2. Bus travel time prediction

Many studies based on deep learning (DL), SVM and tree-based models have been devoted for predicting bus travel time. (Chen et al., 2020) applied a deep learning method with a back-propagation neural network to predict bus travel time. The proposed approach was then validated with real traffic data. In another work, (He et al., 2018) used a DL model to predict bus travel time by taking into account passenger's riding time across multiple bus trips and waiting time at transfer bus stops. To do this, the entire journey is partitioned into bus riding components and waiting components, each of the components is predicted separately and the results are merged to obtain the final bus travel time. (Junyou et al., 2018) applied the SVM algorithm for bus travel time prediction. In another work, (Yu et al., 2018) predicted bus travel time using random forests based on near neighbors (RFNN). To predict the bus travel time between adjacent bus stops, the proposed model takes as input the bus dwell time of the current stop and the current traffic conditions on the predicted route segment and next segments. Recently, (Ashwini et al., 2022) proposed a comparative study of number of linear and non-linear models including: LR, Support Vector Regression (SVR), Regression Trees (RTs) and Random Forest Regression, to identify a suitable model for travel time prediction. In another work, (Serin et al., 2022) applied and compared a number of ML methods, including tree-based regression algorithms and SVR, to predict bus travel time.

In some works, ML methods combined with Kalman filtering-based algorithm were proposed. (Bai et al., 2015) proposed a dynamic travel time prediction model for buses dealing with on-road cases with multiple bus routes, based on SVMs and Kalman filtering-based algorithm. The SVM model predicts baseline travel times from historical bus trip data. Travel times can then be adjusted using a Kalman filtering-based algorithm, based on the latest information on bus operations and baseline travel times. In another work, (Kumar et al., 2019) proposed an approach based on kNN classifier and model-based Kalman filtering for real-time bus travel time prediction.

## 2.2.3. Transit delay prediction

Many works focused on predicting transit travel delay. (Shoman et al., 2020) proposed a deep learning-based framework to predict bus delays at the network level, in which the framework is fed by large, heterogeneous bus transit data (GTFS) and vehicle probe data. (Wu et al., 2021) proposed a Random Forest based approach to forecast multi-scenario train delays.

## 2.3. Traffic simulation models

Traffic simulation can be defined as the mathematical model of transportation systems, implemented through the application of dedicated computer software. Traffic simulators can be divided according to the level of details provided into: microscopic and macroscopic approaches. Microscopic traffic simulator focuses on the movement of each individual entity in the system. It provides a detailed picture of each individual vehicle including: location, time and speed (Behrisch et al., 2011). Microscopic models are very effective in assessing heavily congested conditions. On the other hand, these traffic models are time-consuming, costly, and can be difficult to calibrate. Macroscopic traffic simulators are based on deterministic relationships of flow, speed and density of traffic flow (Hueper et al., 2009). They were originally developed to model traffic in distinct transportation sub-networks, such as freeways and rural highways.

### 2.3.1. Open-source simulation models

Over the past decades, a number of traffic simulation frameworks have been developed. TRANSIMS developed at Los Alamos National Laboratory (USA) is an integrated set of tools for performing the analysis of a regional transportation system based on a cellular automata microscopic simulation model. It models individual travelers and their multi-modal transportation based on synthetic populations and their activities. TRANSIMS represents time in a consistent and continuous way, as well as detailed persons and households (Smith et al., 1995). MIT (Massachusetts Institute of Technology) developed MITSIMLab, an open-source microscopic traffic simulator that evaluates the impacts of alternative traffic management systems, public transport operations and various Intelligent Transportation Systems (ITS) strategies at the operational level and helps in their further refinement. In order to capture the sensitivity of traffic flows to control and routing strategies, the traffic and network components are detailed in MITSIM (Yang and Koutso-poulos, 1996). MATSim (Multi-Agent Transport Simulation) developed by ETH Zurich, has in the recent years become a major open-source framework, used to implement large-scale agent-based transport simulations, in which a large number of synthetic persons (so-called "agents") are simulated. Designed as a framework for large-scale scenarios, MATSim is highly modular, allowing for a very high level of customization (Balmer et al., 2009). SUMO (Simulation of Urban Mobility) was developed at the German Aerospace Centre. It is a microscopic multimodal traffic simulator capable of simulating different types of traffic data, in which vehicles, public transport and persons are modeled explicitly. It can provide a nice visual and understandable output for future tests and analysis SUMO (Behrisch et al., 2011). Leblond et al. (2020) proposed Starling, an agent-based simulation software. It was developed as a generic framework to deal with spatial issues of territories. The simulation framework is designed to evaluate a specific mobility service.

### 2.3.2. Commercial models

In addition to open-source models, a number of commercial software have been implemented. PTV Vissim, a microscopic multi-modal traffic flow simulation software package developed by PTV (Planung Transport Verkehr AG) in Karlsruhe, Germany. VISSIM allows users to define a full range of vehicle types including passenger cars, buses, trucks, rail vehicles as well as pedestrians and cyclists. It is widely used to simulate, evaluate and validate new transport policies and control systems
(Fellendorf and Vortisch, 2001). TransModeler, a traffic simulation platform marketed by Caliper Corporation (USA), is used to model traffic planning, traffic management and emergency evacuation scenarios over a wide-area (Corporation, 2023).

## 2.4. Coupling ML and simulation models

In recent years, several studies attempt to perform ML with simulation models. (Shafizadeh-Moghadam et al., 2017) coupled ML including SVM and ANNs, tree-based models and statistical models with cellular automata to simulate urban growth in the city of Tehran. (Tongal and Booj, 2018) proposed a simulation framework to explore the effectiveness of different ML approaches in streamflow simulation for four rivers in the United States. (Yan et al., 2021) proposed a method of coupling NNs and numerical models to simulate and identify areas at high risk of urban flooding and to predict the depth of water accumulation. The outputs of the simulation models are used to feed the neural network. (Chabanet et al., 2021) proposed a method based on active learning concepts to combine a computationally costly simulator with ML classifier (kNNs), which is less computationally costly to use online but whose predictions are only approximations of the simulator. First, the framework tries to classify the unlabeled instances with kNNs classifier, otherwise, the simulator will be performed then. (Shahhoseini et al., 2021) proposed an approach to couple crop modeling, a simulation model with ML models, to improve corn yield prediction in the US Corn Belt. The integration of simulation results improved the yield prediction accuracy of ML models. (Abdelaty et al., 2021) used the simulated energy consumption scenarios to develop four different data-driven modelling techniques.

The use of framework combining ML models and public transportation simulators remains poorly implemented. An interesting work that addressed a similar problem to our work has been proposed by (Othman and Tan, 2018), in which a framework integrating NN models into a PT simulation model to improve real-time supply based on multiple demand scenarios. First, a Multi-Layer Perceptron coupled with a LR model trained on traffic data and weather information was used to predict the type of congestion, duration of congestion and hence delayed travel times. Then, the travel times will be fed into a simulator, in which several scenarios will be simulated.

From a general point of view, the framework proposed in (Othman and Tan, 2018) and our framework follow a similar pattern, in which the actual data is trained to provide public transport simulator with more accurate travel times. The main difference lies in the type of data used as ML input data, with traffic data in (Othman and Tan, 2018) and actual bus stop times extracted from AVL (Automated Vehicle Location) data in this proposed framework, respectively. In this proposed work, the impacts of traffic on the bus routes (including traffic congestion) are indeed included in the actual bus travel times.

## 2.5. Study contributions

ML is a powerful tool, but it faces certain limitations. One of the main drawbacks is that it can be biased. Algorithms implemented in ML are designed to look for patterns in data. If there is a bias in the data, ML algorithms will detect and reinforce that bias. Another disadvantage is that ML can be computationally expensive, slow and resource-intensive to train successfully, especially on large datasets. On the other hand, simulation has long been touted as a powerful tool for understanding complex systems. By building models of how systems work, we can better understand how they might behave in the future. However, simulation has its drawbacks. First, the simulation is only as good as the models built. If the built models are inaccurate, the simulation performed will be inaccurate as well. Second, simulations are only approximations. In a number of situations, simulation models are not capable of qualifying all the variables that affect the behavior of the system. In very large and complex problems, the large number of

variables and the relationships between them makes the problem very difficult to model.

In an effort to overcome the limitations of simulation and ML models, a framework for a ML-based microscopic simulation model is proposed, to provide more accurate and realistic simulations for public transport operators, which will be useful to enhance the reliability of service. Moreover, ML and simulation benefit from each other. For instance, ML models provide a public transport simulation model with predicted travel times, while, ML models can use the simulated travel times for training. Although a number of studies have addressed the problem of bus travel time and arrival time prediction, by implementing ML models. Most studies focus on prediction a single travel time value. In this study, the focus is on more accurately estimating travel time variability rather than a single value. This work contributes in the literature by: 1) using a ML model with a traffic simulator in the same framework for public transportation simulation is not widely implemented; 2) A ML model for travel time prediction, trained on actual data, combined with probabilistic distributions to estimate travel time variability, will be used to power the simulation, helping to reduce simulation complexity and providing the simulator with appropriate parameters; 3) The simulations will be more realistic, as they will be validated with performance indicators directly calculated from actual data.

In Table 1, we present a comparison of the proposed work with other works on the following aspects: whether ML models (e.g. classical model, neural networks and deep learning models) have been used; whether simulation models have been carried out; if both ML and simulation models are a part of the implemented framework; whether the focus of the work is travel metrics (e.g. arrival time, travel time and delay), as well as the nature of the data used (e.g. historical and real-time data).

# 3. Methodology

In this section, the proposed ML-based microscopic simulation framework along with the two-step validation framework will be detailed.

## 3.1. ML-based microscopic simulation framework

In this first section, the proposed ML-based framework along with its different layers will be presented in detail, including: an introduction of the used data, the building and deployment of ML models for bus travel time prediction as well as the PT simulation model and the bus control strategies implemented.

Before outlining the proposed framework for a ML-based microscopic simulation model and its different layers, an overview of the proposed approach is presented as follows. In the first stage, actual data (GPS traces) and transit schedule data (e.g. GTFS data) will be matched and then aggregated at the route segment level. In the second stage, the process of building ML model is conducted. A ML algorithm is first selected, then feature importance techniques will be applied to select relevant features, then ML will be trained for bus travel time prediction. Finally, the generated ML models, combined with probabilistic distributions to estimate bus travel time variability, will be deployed and connected to the public transport simulation model. In the third stage, the transit scenario will be implemented, and then simulated. During the simulation process, bus travel times will be requested by the simulator. On the other hand, deployed models, will process each request and provide the simulator with the predicted travel times. At last, the simulation results will be validated with actual data using a set of metrics. An overview of the ML-based microscopic simulation framework is shown in Fig. 1.

### 3.1.1. Data introduction

In this section, the spatial and temporal components of the bus line will first be presented, then the data sources and data aggregation
<table><caption>**Table 1**

Comparative table of related works.</caption><thead><tr><th>Reference</th><th>Classical ML Model</th><th>NN &amp; DL</th><th>Simulation Model</th><th>ML and Simulation</th><th>Arrival Time Prediction</th><th>Travel Time Prediction</th><th>Delay Prediction</th><th>Historical Data</th><th>Real-time Data</th><th>Description</th></tr></thead><tbody><tr><td>(Ashwini et al., 2022)</td><td>x</td><td></td><td></td><td></td><td></td><td>x</td><td></td><td>x</td><td></td><td>A study to identify a suitable ML model for bus travel time prediction</td></tr><tr><td>(Bai et al., 2015)</td><td>x</td><td></td><td></td><td></td><td></td><td>x</td><td></td><td>x</td><td>x</td><td>Dynamic bus travel time prediction models with multiple bus routes</td></tr><tr><td>(Chen et al., 2004)</td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td>Dynamic bus arrival time prediction model based on APC real-world</td></tr><tr><td>(Chen et al., 2020)</td><td></td><td>x</td><td></td><td></td><td></td><td>x</td><td></td><td></td><td>x</td><td>ML approach to predict bus travel time validated with real traffic data</td></tr><tr><td>(Chien et al., 2002)</td><td></td><td>x</td><td>x</td><td></td><td>x</td><td></td><td></td><td></td><td></td><td>Dynamic bus arrival time prediction with artificial neural networks</td></tr><tr><td>(Gal et al., 2017)</td><td>x</td><td></td><td></td><td></td><td>x</td><td>x</td><td></td><td>x</td><td>x</td><td>Traveling time prediction in scheduled transportation with trip segments</td></tr><tr><td>(He et al., 2018)</td><td></td><td>x</td><td></td><td></td><td></td><td>x</td><td></td><td>x</td><td>x</td><td>Travel-time prediction of bus journey with multiple bus trips</td></tr><tr><td>(Jeong and Rilett, 2004)</td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td>Bus arrival time prediction using artificial neural network model</td></tr><tr><td>(Junyou et al., 2018)</td><td>x</td><td></td><td></td><td></td><td></td><td>x</td><td></td><td>x</td><td></td><td>Support Vector Machine algorithm for bus travel time prediction</td></tr><tr><td>(Kumar et al., 2014)</td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td></td><td></td><td></td><td>Kalman filtering and ANNs approaches for bus arrival time prediction</td></tr><tr><td>(Kumar et al., 2019)</td><td>x</td><td></td><td></td><td></td><td></td><td>x</td><td></td><td>x</td><td></td><td>kNN and Kalman filtering model for real-time bus travel time prediction</td></tr><tr><td>(Lam et al., 2019)</td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td></td><td></td><td>x</td><td>Prediction of bus arrival time using real time online bus locations</td></tr><tr><td>(Li, 2017)</td><td>x</td><td></td><td></td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td>Bus arrival time prediction based on random forest</td></tr><tr><td>(Othman and Tan, 2018)</td><td></td><td>x</td><td>x</td><td>x</td><td></td><td>x</td><td></td><td>x</td><td></td><td>Machine learning aided simulation of public transport utilization</td></tr><tr><td>(Pan et al., 2012)</td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td>Self-learning algorithm based on a BPNN for predicting bus arrival time</td></tr><tr><td>(Panovski and Zaharia, 2020)</td><td>x</td><td>x</td><td>x</td><td></td><td>x</td><td></td><td></td><td></td><td></td><td>Bus arrival time prediction at different bus stops on a given bus route</td></tr><tr><td>(Shalit et al., 2023)</td><td>x</td><td></td><td></td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td>A supervised ML model for imputing missing boarding stops</td></tr><tr><td>(Serin et al., 2022)</td><td>x</td><td></td><td></td><td></td><td></td><td>x</td><td></td><td>x</td><td></td><td>Predicting bus travel time using machine learning methods</td></tr><tr><td>(Shoman et al., 2020)</td><td></td><td>x</td><td></td><td></td><td></td><td></td><td>x</td><td></td><td></td><td>Deep learning framework for predicting bus delays on multiple routes</td></tr><tr><td>(Wu et al., 2021)</td><td>x</td><td></td><td></td><td></td><td></td><td></td><td>x</td><td></td><td>x</td><td>The bounds of improvements toward real-time forecast of train delays</td></tr><tr><td>(Yang et al., 2016)</td><td>x</td><td></td><td></td><td></td><td>x</td><td></td><td></td><td></td><td></td><td>Bus arrival time prediction SVM with GA</td></tr><tr><td>(Yin et al., 2017)</td><td>x</td><td>x</td><td></td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td>Prediction bus arrival time at stops with multiple routes</td></tr><tr><td>(Yu et al., 2011)</td><td>x</td><td>x</td><td></td><td></td><td>x</td><td></td><td></td><td></td><td>x</td><td>Bus arrival time prediction at bus stop with multiple routes</td></tr><tr><td>(Yu et al., 2018)</td><td>x</td><td></td><td></td><td></td><td></td><td>x</td><td></td><td>x</td><td></td><td>Predicted bus travel time based on near neighbors</td></tr><tr><td>(Zhang and Liu, 2019)</td><td>x</td><td></td><td></td><td></td><td>x</td><td></td><td></td><td>x</td><td></td><td>K-means approach to predict bus arrival times based on GPS data</td></tr></tbody></table>

(continued on next page)
<table><caption>**Table 1 (continued)**</caption><thead><tr><th>Reference</th><th>Classical ML Model</th><th>NN & DL</th><th>Simulation Model</th><th>ML and Simulation</th><th>Arrival Time Prediction</th><th>Travel Time Prediction</th><th>Delay Prediction</th><th>Historical Data</th><th>Real-time Data</th><th>Description</th></tr></thead><tbody><tr><td>Proposed work</td><td>x</td><td></td><td>x</td><td>x</td><td></td><td>x</td><td></td><td>x</td><td></td><td>A microscopic simulation of public transportation based on ML</td></tr></tbody></table>

<figure><img src="image_3.png" /><figcaption>**Fig. 1.** An overview of the ML-based microscopic simulation framework. The framework consists of three layers: 1) data layer, 2) ML layer, and 3) simulation layer. 1) Transit schedules and actual data are used to generate aggregated datasets at the segment route level. 2) The ML model for segment travel time prediction takes place in two stages: A) model building and B) model deployment. A) ML model is first initialized by selecting the model features, the supervised algorithm and configuring the model parameters. Next, the segment route dataset is prepared, cleaned, fed to train and adjust the model by performing cross-validation and optimisation techniques respectively. B) Model deployment consists of storing the model locally, and indexing it in a database. 3) A simulation scenario is implemented and then simulated, in which ML models will feed the simulation model with travel times.</figcaption></figure>

process used to train the ML models will be detailed.

3.1.1.1. *Bus route components.* A transit bus travels from an origin to a destination passing through a set of stops along the way. Spatial components can be grouped into several levels: stop, section, segment and route. The link between two consecutive stops is called *section*. A more aggregate section, called *segment*, the latter is made up of several consecutive sections. All sections from an origin terminal to a destination terminal form a *route* (Büchel and Corman, 2020). Additionally, and

in order to maintain acceptable service reliability, most bus operators set up control points along the bus route. Control points are timing points, specific transit stops where the bus departure times are subject to regulation or to meet a specific buffer time (Ceder, 2024). An illustration of the spatial components of bus lines is given in Fig. 2.

The time components of bus routes can be distinguished into durations and time points. Travel time, dwell time and running time are durations, while arrival time and departure time at bus stops are points in time. The travel time is made up of dwell time and running time
<figure><img src="image_4.png" /><figcaption>Fig. 2. An illustration of the different spatial components of a transit line.</figcaption></figure>

respectively, referring to the time a bus spends stationary at a scheduled stop and the time the bus spends while not stopping at a stop. Operating times can be expressed at the level of: section, segment or route. Section travel time corresponds to the sum of the dwell time and the running time, between two successive stops. Segment travel time corresponds to the sum of the travel times of the sections constituting the considered segment. While route travel time refers to the total travel time comprised between the first stop and the last stop. An illustration of the time components of bus lines at the section level is given in Fig. 3.

3.1.1.2. Data used. The main data for the application of the proposed approach can be distinguished into GTFS transit data (General Transit Feed Specification) and actual data. Transit schedules are grouped by transit line (e.g. bus line) and formatted as GTFS tables. A GTFS feed consists of several comma-separated files that mainly contain information about transit lines, stop locations, and timetables (Google, 2023). On the other hand, actual data provides information about transit trips during a period of the year, including: date, vehicle ID, corresponding trip, and recorded stop times. From a technical point of view, actual data is structured similarly to a GTFS stop times table. Practically, actual stop times are recorded from GPS trackers on transit vehicles (e.g. buses), at each transit stop. Therefore, scheduled and actual stop times can be matched in the same data structure based on mutual attributes, such as trip id and stop id.

After matching scheduled and actual data in the same dataset. The next step is to aggregate the observations originally available at the stop-level, to a more aggregated level of details, for instance at the section and segment level. The data aggregation process aims to mitigate the impacts of imprecise stop times, since this latter is susceptible to measurement errors, which can therefore lead to a poor quality ML model. It takes place in two steps:

* As a first step, public transport observations at bus stop level will be aggregated at section level. From scheduled and actual stop times, the corresponding travel times can be simply derived at the section level.

* As a second step, certain criteria can be used to define control points, specific transit stops where the buses are subject to regulation or to meet a specific buffer time. Depending on these timing points, a set of route segments can be defined. Therefore, the observed transit stop times can be aggregated from the section level to the segment level. Arrival time, departure time and travel time will be derived.

For the actual data at hand, only bus arrival times are available. In the remainder of this paper, the bus stop time will refer to the bus arrival time. Bus route components, as well as the stop and the travel times of a transit trip, aggregated at the stop, section and segment levels, are shown in Fig. 4.

The resulting stop-level and section level datasets are illustrated in more details in Appendix A.

Transit schedules are mainly planned according to the type of the day. Since demand for public transport is strongly linked to the type of the day, the transit demand is greater on working days than on weekends or holidays. Therefore, the day type attribute will be used to implement particular scenarios, for instance the working days scenario. In addition, in order to understand the status of the transit vehicle relative to the scheduled times, delay measures can be estimated at the stop level, and therefore at the segment level. The stop-level delay formula is given in Equation (1).

$$D_{ijk} = AT_{ijk} - ST_{ijk} \quad (1)$$

Where:

* $D_{ijk}$: refers to the delay time for line i, on trip k, at bus stop j

<figure><img src="image_5.png" /><figcaption>Fig. 3. An illustration of the different components of travel time between two transit stops.</figcaption></figure>
<figure><img src="image_6.png" /><figcaption>Fig. 4. An illustration of the components of a bus route with stop and travel times.</figcaption></figure>

* $AT_{ijk}$: refers to the actual stop time for line *i*, on trip *k*, at bus stop *j*

* $ST_{ijk}$: refers to the scheduled stop time for line *i*, on trip *k*, at bus stop *j*

An illustration of derived attribute data is given in Table 2.

In the remainder of this paper, the scheduled stop time will simply be referred as stop time.

### 3.1.2. ML: building and deploying models

One of the main purposes of ML is to discover patterns, train a model on historical data, and then make prediction based on the constructed model. The ML model to build aims to predict the transit bus travel time at the segment-level. Therefore, real travel time attribute will be considered as the attribute of interest. Furthermore, feature importance techniques, in which a score is assigned to input features based on their usefulness in predicting a target variable, will be applied to build ML models with relevant features. Next, a ML algorithm will be chosen and initialized with a set of predefined parameters. For instance, a decision tree supervised learning algorithm, which was originally designed to solve classification problems, has been extended to deal with regression problems (Geurts et al., 2009). On the other hand, the developed approach aims to predict transit travel time (numerical output), regression trees (RT) are one of the suitable models to perform. The proposed scheme for initializing the ML model is illustrated in Fig. 5.

ML algorithms, for instance, regression trees designed to solve regression problems, are trained to return a single value as output. In order to capture travel time variability, we propose to combine ML algorithm with probabilistic distributions as follows. First, the ML

algorithm will be trained to predict travel times, these will then be grouped into samples according to the resulting regression rules. Then, for each sample, travel time variability will be estimated using probabilistic distributions. An illustration of a regression tree model for bus travel time prediction and sample travel times resulting from the model output, fitted to a number of probabilistic distributions, to approximate travel time variability, are given in Figs. 6 and 7, respectively.

After validating the ML model, the next step is to deploy it to feed the simulation model with bus travel times. At this stage, the model built will be registered in a specific database, in which each model is indexed by its key, as well as a set of information, including: model algorithm, transit line, route segment origin and destination stops, model input features and target attribute. In addition, the index database may contain the model parameters and its error value, such as the coefficient of determination $R^2$. This last score value is extremely important for sorting the generated models. An illustration of the index file is presented in Table 3.

In sum, a ML algorithm is initialized with predefined parameters, takes as input: a route segment dataset, features to build the model, and an attribute of interest for prediction. It will then be trained to predict transit travel time, stored locally and then deployed to feed a public transit simulation model.

### 3.1.3. Public transportation simulation model

In this section, Starling proposed by (Leblond et al., 2020) will be briefly described. Starling combines an agent-based framework and a discrete-event approach, it is a microscopic model for mobility simulation. The goal of this framework is to provide a basis for the development of computer models for the simulation of specific transport systems, consisting of generic simulation classes that can be extended to match the specifications of the simulated system. Among the mobility modules, a public transport bus simulation module is implemented. To work, it requires a set of inputs including: transit schedules feed (e.g. GTFS data) and bus operator settings that define the behaviour of the bus vehicle and the operating rules, such as: minimum bus recovery time and bus holding control strategy. Simulating buses according to schedules, with defined travel times between two successive stops, can be seen as hypothetical. The bus may be delayed due to: traffic jams, traffic accidents

<caption>**Table 2**</caption>

A sample of a segment-level aggregated dataset with focus on derived stop delays.

<table><thead><tr><th>from stop</th><th>to stop</th><th>segment index</th><th>...</th><th>from stop delay</th><th>to stop delay</th></tr></thead><tbody><tr><td>STP-1883</td><td>STP-982</td><td>1</td><td>...</td><td>00:00:22</td><td>00:01:10</td></tr><tr><td>STP-982</td><td>STP-990</td><td>2</td><td>...</td><td>00:01:10</td><td>00:02:15</td></tr><tr><td>STP-990</td><td>STP-994</td><td>3</td><td>...</td><td>00:02:15</td><td>00:01:07</td></tr><tr><td>STP-994</td><td>STP-998</td><td>4</td><td>...</td><td>00:01:07</td><td>00:01:38</td></tr><tr><td>STP-998</td><td>STP-1005</td><td>5</td><td>...</td><td>00:01:38</td><td>00:00:10</td></tr></tbody></table>
<figure><img src="image_7.png" /><figcaption>Fig. 5. An illustration of the proposed scheme for setting up ML models. The initialization of a ML model is done at three levels. 1) Model configuration by initializing ML model features and target attribute, as well as route segment information such as transit line, origin and destination stops. 2) Selection of the supervised algorithm, for instance the regression tree. 3) Configuration of the algorithm parameters.</figcaption></figure>

<figure><img src="image_8.png" /><figcaption>Fig. 6. An illustration of a regression tree for travel time prediction. The white nodes refer to the decision conditions, while the cyan nodes are the terminal leaves of the tree.</figcaption></figure>

and passenger boarding.

In order to perform a bus simulation with a more realistic behaviour, travel times can be estimated using ML models trained on historical observations. The generated travel times are then subject to operating rules, in order to maintain realistic bus behaviour. Additionally, in order to perform transit simulation, scenario data and operator parameters will be added to the simulator inputs. An overview of how deployed ML models are used with a generic framework for public transport simulation is shown in Fig. 8.

3.1.3.1. Holding control strategies. They are among the most widely

used public transport control methods, aiming to improve the regularity of service by regulating departure time from stops according to pre-defined criteria (Abkowitz and Lepofsky, 1990). Implementing bus holding strategies involves two key design decisions: selecting the set of time point stops and the holding criteria (Cats et al., 2011). Holding strategies are generally classified into two categories: schedule-based strategies and headway-based strategies. A schedule-based holding strategy defines the earliest time a bus can depart from a time point stop relatively to the schedule. This rule can be formulated as:

$$ET_{ijk} = \max(SET_{ijk} - s_{ij}, AT_{ijk} + DT_{ijk}) \qquad (2)$$
<figure><img src="image_9.png" /><figcaption>Fig. 7. A detailed view of the proposed model output for travel time prediction. Illustration of the resulting day-to-day travel time variability (Left): A regression tree terminal node, including average travel time and sample size. (Right): The sample travel time distribution, fitted to a number of probabilistic distributions, to approximate day-to-day travel time variability with emphasis on probability density functions.</figcaption></figure>

<caption>**Table 3**</caption>

A sample of the deployed models index database. Index information can be grouped into four groups. 1) key used to distinguish models with same other characteristics. 2) transit line, origin and destination stops, denoted from stop and to stop, refer to model segment route. 3) input features and target attribute are the data attributes used to build the model. 4) score refers to the evaluation measurement value.

<table><thead><tr><th>key</th><th>algorithm</th><th>transit line</th><th>from stop</th><th>to stop</th><th>input features</th><th>model target</th><th>score (R<sup>2</sup>)</th></tr></thead><tbody><tr><td>68dsfnr6</td><td>RT</td><td>A</td><td>STP-1883</td><td>STP-982</td><td>stop time</td><td>real travel time</td><td>36 %</td></tr><tr><td>chhm3moj</td><td>RT</td><td>A</td><td>STP-982</td><td>STP-990</td><td>stop time</td><td>real travel time</td><td>54 %</td></tr><tr><td>wr1w7ecg</td><td>RT</td><td>A</td><td>STP-990</td><td>STP-994</td><td>stop time</td><td>real travel time</td><td>47 %</td></tr><tr><td>z4p0biet</td><td>RT</td><td>A</td><td>STP-994</td><td>STP-998</td><td>stop time</td><td>real travel time</td><td>35 %</td></tr><tr><td>jj8gxgzf</td><td>RT</td><td>A</td><td>STP-998</td><td>STP-1005</td><td>stop time</td><td>real travel time</td><td>41 %</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>cq5x4ddu</td><td>RT</td><td>A</td><td>STP-1883</td><td>STP-982</td><td>stop time;stop delay</td><td>real travel time</td><td>36 %</td></tr><tr><td>53t58nae</td><td>RT</td><td>A</td><td>STP-982</td><td>STP-990</td><td>stop time;stop delay</td><td>real travel time</td><td>53 %</td></tr><tr><td>1y1givje</td><td>RT</td><td>A</td><td>STP-990</td><td>STP-994</td><td>stop time;stop delay</td><td>real travel time</td><td>46 %</td></tr><tr><td>qvin2kyt</td><td>RT</td><td>A</td><td>STP-994</td><td>STP-998</td><td>stop time;stop delay</td><td>real travel time</td><td>34 %</td></tr><tr><td>yiikt0c1</td><td>RT</td><td>A</td><td>STP-998</td><td>STP-1005</td><td>stop time;stop delay</td><td>real travel time</td><td>42 %</td></tr></tbody></table>

<figure><img src="image_10.png" /><figcaption>Fig. 8. An overview of using a generic framework for public transport simulation based on ML models. It consists of two blocks: the block above refers to the simulation framework; the block below gathers the scenario data and the operator parameters as well as the ML models deployed for the prediction of travel times.</figcaption></figure>
Where:

* $ET_{ijk}$: exit (departure) time for line i on trip k from stop j

* $SET_{ijk}$: scheduled exit (departure) time for line i on trip k from stop j

* $s_{ij}$: non-negative slack size defined for line i at stop j

* $AT_{ijk}$: actual arrival time for line i on trip k from stop j

* $DT_{ijk}$: dwell time for line i on trip k from stop j

Previous studies on the interaction between slack size and generalized passenger travel time have concluded that the slack size should be set to zero (Liu and Wirasinghe, 2001; Vandebona and Richardson, 1986). This implies that buses arriving early have to wait at time point stops until the scheduled departure time. Schedule-based strategies are useful for low-frequency services when passengers follow the timetable or when transfer coordination is an important issue (Strathman et al., 1999). In contrast, headway-based holding strategies use headways between consecutive vehicles as a criterion to regulate departure times from time point stops. If the headway-based strategy only takes into account the headway from the preceding vehicle, then the holding criteria is defined by a minimal headway requirement:

$$ET_{ijk} = \max(\alpha AT_{ijk-1} + \alpha \cdot H_i^{k-1,k}, AT_{ijk} + DT_{ijk}) \quad (3)$$

Where:

* $H_i^{k-1,k}$: planned headway between trips k-1 and k on line j

* $\alpha$: threshold ratio parameter

### 3.1.3.2. Stop-Skipping.
Also known as expressing is a control measure allowing a vehicle to skip one or a series of stops, if it is running behind schedule. Stop-skipping can correct service inconsistencies due to the inherent variations in travel time and passenger demand, but may result in increased waiting times for passengers waiting at the skipped stops (Chen et al., 2015). Thus, most stop-skipping approaches address the problem by considering: 1) passenger-related costs concerns, such as passenger waiting times and their in-vehicle times; and 2) operator cost concerns, such as total vehicle trip travel times (Gkiotsalitis and Cats, 2021). Stop-skipping strategies can be designed either at the tactical planning level or at the operational level (dynamic stop skipping). At the tactical planning level, the emphasis is on developing reliable, resilient or robust strategies that will maintain good performance in the event of disruptions during actual operations. On the other hand, dynamic stop-skipping strategies at the operational level are reactionary, need to be computationally efficient, and in which the skipped stops of a vehicle trip are determined just before dispatch (Gkiotsalitis and Cats, 2021; Li et al., 2024; Fu et al., 2003). Stop-skipping strategies have been proposed mainly at the planning level and formulated as optimization problems (Chen et al., 2015; Liu et al., 2013). When stop-skipping, the vehicle leaves the stop immediately after the alighting time without boarding of passengers (Rodriguez et al., 2023). The departure time can be formulated as:

$$ET_{ijk} = AT_{ijk} + DT_{ijk} \quad (4)$$

In this case, the dwell time $DT_{ijk}$ corresponds to alighting only.

## 3.2. Two-step validation framework

The second proposed framework in this study is the two-step validation framework. It aims to validate the simulation results obtained using performance indicators. The validation is twofold: first, assessing the accuracy of travel times generated by ML models; second, evaluate how well the simulation model reproduces reality using certain reliability metrics. The proposed validation process is detailed below. From a technical point of view, the validation process will be undertaken by comparing the output simulation results with actual observations, including: 1) simulated segment travel times and 2) bus delay at timing

points.

The first validation process will take place as follows. First, the theoretical and actual travel times will be extracted from the actual data, while the simulated travel times will be extracted from the simulation results. Next, the theoretical and simulated travel times will be compared to the actual observed travel times in order to: firstly, understand how well the actual and theoretical travel times are fit and secondly, validate the ML models for travel time prediction. We denote by $TT_{actual}$ and $TT_{sim}$, respectively the actual and simulated average travel times of the route segment r. In order to compare numerically the travel time measurements, a derived metric $\Delta_r$, referring to the relative difference per route segment r between $TT_{actual}$ and $TT_{sim}$, is defined in Equation (5).

$$\Delta_r = \frac{TT_{actual,r} - TT_{sim,r}}{TT_{actual,r}} \quad (5)$$

The second validation process aims to investigate how well the simulation model reproduces reality based on certain reliability metrics, by validating the simulation results against actual observations, using on-time performance measurements. In this work, the punctuality of both operated and simulated buses will be assessed according to departure delay at the bus stop at the control points of each of the bus lines. The validation process will be performed at three delay metrics, defined as follows:

* Aggregated delay metric: refers to on-time performance within the one-minute early and five-minutes-late arrival range used by several urban transit agencies across the United States (Arhin et al., 2014). In this metric, the delay of a bus can fall into three categories, in which the bus is considered 1) on-time travel if the delay is between not earlier than one minute and not later than five minutes at the timing point; 2) in Advance, if the bus is more than one minute ahead of the scheduled time; and 3) in Significant delay, if the bus is late by more than five minutes.

* Bus severity delay metric: in which, delay at control points is grouped into five categories; while the classification of in Advance and in Significant delay remains similar to the first metric, On-time travel is divided into three classes including, in addition to On-time travel, minor delay and moderate delay, in which each subclass spans a two-minute range. The last two delay values have been defined according to the classification used in the work proposed in (Chen et al., 2024).

* A third bus delay metric is defined in which stop delays are grouped in one-minute increments between more than five minutes early and more than seven minutes late.

The two first delay metrics are given in more detail in Table 4.

After defining the three sets of bus punctuality metrics, in the following, the defined on-time performance metrics will be applied at the control points on the actual observations and the simulated results. In order to compare the resulting punctuality shares, an offset and a deviation measure denoted $\delta$ and $\Delta$, defined respectively, in equations (6) and (7), can be then be calculated between two sets of shares. Therefore, the defined measure $\Delta$ aims to quantify the part of the share

<table><caption>**Table 4**
A description of the aggregate and severity delay metrics.</caption><thead><tr><th>Delay metric</th><th>Delay class</th><th>Range (seconds)</th></tr></thead><tbody><tr><td rowspan="3">Aggregate Delay Metric</td><td>In advance</td><td>delay &lt; -60</td></tr><tr><td>On-time</td><td>delay ∈ [-60; 300]</td></tr><tr><td>Significant delay</td><td>delay &gt; 300</td></tr><tr><td rowspan="6">Bus Severity Delay Metric</td><td>In advance</td><td>delay &lt; -60</td></tr><tr><td>On-time</td><td>delay ∈ [-60; 60]</td></tr><tr><td>Minor delay</td><td>delay ∈ [60; 180]</td></tr><tr><td>Moderate delay</td><td>delay ∈ [180; 300]</td></tr><tr><td>Significant delay</td><td>delay &gt; 300</td></tr></tbody></table>
poorly located between the two sets.

$$ \delta_c(S_i, S_j) = S_{i,c} - S_{j,c} \qquad (6) $$

$$ \Delta(S_i, S_j) = \sum_{c \in C} \delta_c(S_i, S_j) \cdot \alpha_{i,j,c} \qquad (7) $$

Where:

* i and j are two datasets

* C: refers to delay values according to the punctuality metric used

* c: a delay value

* Si: corresponds to the punctuality shares of the buses from the i dataset

* Si,c: refers to share of c in Si

* αi,j,c: 1 if (Si,c > Si,j,c) and 0 otherwise

A detailed illustration of the proposed two-phases validation framework is shown in Fig. 9.

In summary, the proposed ML-based microscopic simulation and validation frameworks can performed together as follows. First, ML models will be trained on actual data to predict travel times of bus route segments, then deployed to feed the public transport simulation model. Next, the simulation scenario will be implemented and then run. Subsequently, the results of the simulated scenario will then be assessed by the two-step validation framework. Finally, based on the adequacy of the simulated travel times and bus punctuality shares, the ML models selected for bus travel times and the simulation parameters such as recovery time and bus holding strategy can be updated. An overview of how the two proposed frameworks perform together is shown in Fig. 10.

The remainder of the paper is structured as follows: in Section 4, a case study scenario consisting of three bus lines of a French city will be presented. In Section 5, the simulation results will be analyzed and validated based on a set of metrics. In Section 6, a discussion of the analyses presented, as well as some concluding remarks will be given in Section 7.

## 4. Simulation scenarios

The simulation scenarios were developed for three bus lines referenced respectively by A, B and C. In this section, the chosen bus lines and the timing points will be described first. Next, the ML feature selection technique along with the trained ML models will be given. Finally, the simulation parameters including bus holding strategies as well as the implemented simulation scenarios will be detailed.

### 4.1. Bus lines: description

Line A buses run Monday to Saturday from approximately 4:45 a.m. (first departure) to 9:05 p.m. (last departure) and Sunday from approximately 5:35 a.m. to 8:05 p.m. Buses on this line serve 31 stops in one direction and 30 stops in the other direction, for approximately 8 km of distance and 30 min travel time. This bus line is highly frequented line with on average one bus every 6 min during peak-hours and one bus every 8 min during off-peak hours, for a total of 234 trips on working days. Line B operates between approximately 5:42 a.m. and 8:26 p.m. only on working days. Like line A, the buses serve 31 and 30 stops respectively, over a distance of approximately 9 and half km and 23 min of travel time. Line B operates with an average of one bus every 6 min and 8 min respectively, during peak and off-peak hours, for a total of 271 trips per working day. Line C buses operate all week from approximately 5:15 a.m. to 8:30 p.m., serving 10 stops in both directions. Compared to previous lines, line C is much shorter with approximately 3 km distance and a travel time of 10 min. This line runs on average with a bus every 6 min and 10 min respectively, during peak and off-peak hours, for a total of 198 trips per day. A summary description of the bus lines studied is presented in Table 5.

The emphasis of this first work is placed on the simulation of a public transport scenario on working days (Monday to Friday), assumed to be more representative in terms of operating days and, consequently, operational trips for the public transport operator. The available operational data for the bus lines covered 73, 146 and 41 days for lines A, B and C respectively. A workday can be divided into peak and off-peak periods, as presented in Table 6.

The shares of bus line trips, according to the time of day, are reported in Table 7.

### 4.2. Bus lines: timing points

After selecting the bus lines for the simulation scenario, the next step is to set the timing points for each transit bus route. The control points are used to split a bus route into route segments in order to: firstly, build ML segment travel time models and, subsequently, deploy them for use in simulation; second, the control points will be used by the simulator for regularization purposes by applying bus holding strategies. Based on the actual data available, timing points correspond to bus stops, in which scheduled departure times are rounded to the nearest minute (hh: mm:00). The control points, along with the derived route segments and theoretical segment travel times, for the chosen bus lines are shown in

<figure><img src="image_11.png" /><figcaption>Fig. 9. A detailed illustration of the proposed two-phase validation framework. The first phases consist of validating the bus travel times. Actual and simulated travel times can be extracted, from actual data and simulation results, respectively and then compared based on deviation measurements. The second phases consist of validating bus punctuality, a set of on-time performance metrics can be applied to estimate the actual and simulated punctuality share of the buses, then a comparison using deviation measures will take place for the assessment.</figcaption></figure>
<figure><img src="image_12.png" /><figcaption>Fig. 10. An overview of the two proposed frameworks: ML-based microscopic simulation framework and a validation framework.</figcaption></figure>

**Table 5**

A description of the bus lines studied including: transit line identifier, number of stops per direction, distance and time travel, in addition to the line's service frequency during peak and off-peak hours. $A_A$ and $A_R$ respectively designate the route in one direction *Aller*, and the route in the opposite direction *Retour* of line A.

<table><thead><tr><th>transit route ID</th><th>bus stops</th><th>travel distance (kms)</th><th>travel time (minutes)</th><th>headway on/off peaks</th></tr></thead><tbody><tr><td>A<sub>A</sub></td><td>31</td><td>7.90</td><td>30</td><td>6/8 min</td></tr><tr><td>A<sub>R</sub></td><td>30</td><td>7.87</td><td>35</td><td>6/8 min</td></tr><tr><td>B<sub>A</sub></td><td>31</td><td>9.67</td><td>23</td><td>6/8 min</td></tr><tr><td>B<sub>R</sub></td><td>30</td><td>9.65</td><td>23</td><td>6/8 min</td></tr><tr><td>C<sub>A</sub></td><td>10</td><td>3.05</td><td>12</td><td>6/10 min</td></tr><tr><td>C<sub>R</sub></td><td>10</td><td>3.17</td><td>10</td><td>6/10 min</td></tr></tbody></table>

**Table 6**

A description of the periods of the day, their abbreviations and associated time intervals.

<table><caption>Fig. 11.</caption><thead><tr><th>time period</th><th>abbreviation</th><th>time interval</th></tr></thead><tbody><tr><td>Morning off-peak hours</td><td>AM off-peak</td><td>[00h00 – 07h30]</td></tr><tr><td>Morning peak hours</td><td>AM peak</td><td>[07h30 – 09h30]</td></tr><tr><td>Inter-peak hours</td><td>–</td><td>[09h30 – 16h30]</td></tr><tr><td>Evening peak hours</td><td>PM peak</td><td>[16h30 – 19h30]</td></tr><tr><td>Evening off-peak hours</td><td>PM off-peak</td><td>[19h30 – 23h59]</td></tr></tbody></table>

## 4.3. ML: algorithm and feature selection

### 4.3.1. ML algorithm

In this study, trained ML models are used to feed public transport simulation model with travel times matching actual travel times, with

**Table 7**

Relative frequency of trips of the bus lines studied by period of the day.

<table><thead><tr><th>bus line</th><th>morning off-peak hours</th><th>morning peak hours</th><th>inter-peak hours</th><th>evening peak hours</th><th>evening off-peak hours</th></tr></thead><tbody><tr><td>A</td><td>12%</td><td>18%</td><td>41%</td><td>22%</td><td>6%</td></tr><tr><td>B</td><td>13%</td><td>13%</td><td>43%</td><td>20%</td><td>10%</td></tr><tr><td>C</td><td>9%</td><td>19%</td><td>46%</td><td>21%</td><td>6%</td></tr></tbody></table>

more emphasis on accurately estimating travel time variability rather only a single travel time prediction. Thus, ML algorithms returning a single output value are not suitable. On the other hand, ML algorithms such as RT, kNNs and K-means, in which according to IF-THEN rules, the initial dataset can be split into samples, are suitable for dealing with travel time variability. The choice of regression tree as the ML algorithm for this study is motivated by the fact that RT is a rule-based approach, in which the built tree can be easily transformed into regression rules. Furthermore, to overcome the limitations of the standard RT, in which only one output value is returned, probabilistic distributions are used to fit travel times of the corresponding samples, in order to estimate the variability of the segment travel time. In sum, RT algorithm will be used to retrieve bus travel time samples to estimate bus travel time variability using probabilistic distributions.

### 4.3.2. Feature selection

Feature importance refers to techniques that assign a score to input features based on their usefulness in predicting a target variable. Feature importance scores can provide insight into the dataset, in which relative scores can highlight which features may be most relevant to the target, and the conversely, which features are least relevant. For tree-based models, mean decrease in impurity is a measure of how each variable contributes to the homogeneity of nodes and leaves in the resulting
<figure><img src="image_13.png" /><figcaption>**Fig. 11.** A detailed illustration of the route segments of the three chosen bus lines. We count, six and three control points per direction for lines A and C respectively: for bus line B, six timing points are defined in the *Aller* direction, and eight in the *Retour* direction. The route segment is referenced by: its transit line, its transit route direction (A/R) and its index in the transit route. For instance, *A-A2* refers to the *second* segment of the *Aller* route of line A.</figcaption></figure>

trees. The higher the value of mean decrease Gini score, the higher the importance of the variable in the model. The resulting feature importance based on mean decrease in impurity, applied to three bus line datasets studied, is summarized in Table 8.

From Table 8, it can be seen that *stop time* and *stop delay*, are the most important features compared to the features *day of the week* and *season*. Moreover, an attempt to extend dataset, by including weather information was carried out. The mean decrease in Gini score applied to three studied lines is reported in Table 9.

From Table 9, *temperature* and *wind* attributes seem to have similar scores, roughly equivalent to *stop delay*, and therefore can be considered as potential features for predicting bus travel time. On the other hand, *rain* attribute has almost an almost zero score, this low score may be due to the nominal nature of *rain* attribute grouped into four values (*none*, *slight*, *moderate* and *shower*). Therefore, ML models will be built with five sets of input features, including *stop time*, *stop delay* and weather attributes such as temperature, wind and rain. The first set includes only *stop time*, the second set includes *stop time* and *stop delay*, the third set only includes *stop time*, the fourth set includes only the weather attributes, while the fifth set includes *stop time* and the weather attributes. The observed actual travel time is chosen as model target.

From Fig. 12, ML models built with *stop time* and *stop delay* as features seem to outperform. Moreover, ML models, in which *stop time* is a feature, appear to score higher compared to those built without *stop time* feature, for each of the three bus lines studied. Additionally, ML models with only *stop delay* feature score relatively higher than those built with

<table><caption>**Table 8**
Feature importance based on mean decrease in impurity.</caption><thead><tr><th>feature</th><th>line A</th><th>line B</th><th>line C</th></tr></thead><tbody><tr><td>stop time</td><td>43 %</td><td>49 %</td><td>41 %</td></tr><tr><td>stop delay</td><td>40 %</td><td>32 %</td><td>41 %</td></tr><tr><td>day of the week</td><td>11 %</td><td>11 %</td><td>12 %</td></tr><tr><td>season</td><td>6 %</td><td>8 %</td><td>6 %</td></tr></tbody></table>

<table><caption>**Table 9**
Feature importance based on mean decrease in impurity, including the weather information.</caption><thead><tr><th>feature</th><th>line A</th><th>line B</th><th>line C</th></tr></thead><tbody><tr><td>stop time</td><td>36 %</td><td>38 %</td><td>35 %</td></tr><tr><td>stop delay</td><td>21 %</td><td>19 %</td><td>23 %</td></tr><tr><td>temperature</td><td>17 %</td><td>17 %</td><td>17 %</td></tr><tr><td>wind</td><td>16 %</td><td>16 %</td><td>15 %</td></tr><tr><td>day of the week</td><td>6 %</td><td>6 %</td><td>7 %</td></tr><tr><td>season</td><td>2 %</td><td>3 %</td><td>3 %</td></tr><tr><td>rain</td><td>1 %</td><td>0 %</td><td>1 %</td></tr></tbody></table>

only weather features. From a technical point of view, integrating weather information is challenging and requires the implementation of a validated weather generator into the public transport simulation model, adding an additional layer of complexity to the simulation framework. In the remainder of this paper, we refer to ML models built with *stop time* as a feature by *f*₁, *stop time* and *stop delay* as features by *f*₂, *stop delay* as feature by *f*₃.

### 4.4. Trained models: hyperparameters tuning

In order to tune the ML model parameters, the Grid Search approach, a traditional hyperparameter optimization method was selected. It simply iterates exhaustively through a manually specified subset of a learning algorithm's hyperparameter space (Pe and Pa, 2024). To build the ML model, we opt for k-fold cross-validation (CV), a technique used in ML to evaluate the performance of a model on unseen data. In k-fold CV, the dataset is divided into k subsets (known as folds). A fold is used once in each iteration as test data, while the remaining folds are used as training data (Xiong et al., 2020). So the process is iterative until the entire dataset is evaluated. In this study, *k* = 5 is selected. In terms of parameters, regression trees are built according to the following parameter values: *tree maximum depth* varies between 2 and 14 levels,
<figure><img src="image_14.png" /><figcaption>Fig. 12. The coefficient of determination for ML models built with different feature sets, for the studied route segments.</figcaption></figure>

while *minimum samples per leaf* takes four values (25, 50, 75 and 100). In total, for each route segment, 156 regression trees are built and deployed. For lines A and C, respectively 780 and 312 trees were generated per route direction. For line B, 780 and 1092 were generated, respectively, for $B_A$ and $B_R$.

From Fig. 13 and Fig. 14, *maximum tree depth* parameter seems to

have an impact on the quality of the built ML models, with a steady increase in terms of score for models with *maximum tree depth* between 2 and 5 and the highest score recorded for models with *maximum tree depth* between 6 and 8 levels. In contrast, *minimum sample size* parameter appears to have less impact on model scores, with very small differences observed.

<figure><img src="image_15.png" /><figcaption>Fig. 13. The coefficient of determination for ML models built with different values of maximum tree depth parameters, for the studied route segments.</figcaption></figure>
<figure><img src="image_16.png" /><figcaption>Fig. 14. The coefficient of determination for ML models built with different minimum sample size parameters, for the studied route segments.</figcaption></figure>

## 4.5. Simulation: model and parameters

In order to assess and validate the quality of the proposed ML-based microscopic simulation framework, a simulation model as well as a set of its parameters need to be defined. Firstly, the simulation scenarios will be carried out using the generic framework Starling proposed in (Leblond et al., 2020) and briefly described in Section 3.1.3. Secondly, the number of runs to simulate is set to 1000 iterations. Usually, a high number of iterations is required in order to generate enough samples to validate the simulation results. In addition to validating the simulated travel times, this study aims to investigate the impacts bus recovery time strategies and bus holding strategies, on the punctuality of simulated buses.

### 4.5.1. Bus recovery time strategies

Sufficient recovery time should be built into the schedule to ensure that the delays encountered during one trip do not carry over on subsequent trips. In this study, a first simulation scenario $S_1$ will be carried out with a fixed minimum recovery time of two minutes. Based on the actual departure delays presented in Fig. 15, it appears that buses are likely departing a minute earlier and up to two minutes later than the scheduled time. Therefore, a second scenario $S_2$, in which recovery times adjusted based on actual departure delays fitted to probabilistic distributions, will be conducted.

### 4.5.2. Bus holding control strategies

In order to investigate the impacts of applying bus holding strategies on bus punctuality, two instances of scheduled-based holding strategy, respectively named $SH_0$ and $SH_3$, an instance of headway-based holding strategy named HH, and a base strategy without control NC, will be implemented. $SH_0$ and $SH_3$, are two variants of the scheduled-based holding strategy defined in Equation (2), in which s is equals to zero and three minutes, respectively. In NC, the simulation will be conducted

without applying a bus holding strategy. HH is a variant of the headway-based holding strategy defined in Equation (3), in which $\alpha = 0.8$. The strategies implemented are reported in Table 10. Note that NC can be thought of as an instance of scheduled-based holding strategy, with $s = +\infty$ ($SH_\infty$).

### 4.5.3. Bus stop-skipping strategy

In this section, we aim to investigate to what extent skipping stops impacts bus punctuality. Stop-skipping control measure used to correct service inconsistencies, particularly to eliminate bus delay, is formulated in most studies as an optimization problem. With the interest of this study on bus punctuality, the decision whatever or not to skip a stop will depend primarily on how late is the bus at the control point. The stop-skipping criteria can be defined as follows:

$$D_{ijk} - D_{max} \geq 0 \qquad (8)$$

Where:

* $D_{ijk}$: refers to the delay time for line i, on trip k, at bus stop j

* $D_{max}$: a non-negative maximum bus delay

If the stop-skipping criteria is met, the set of stops $j+1, j+2, ..., c-1$ between the current control stop j and the next control stop c will be skipped. Skipping is only permitted if the following conditions are met: 1) the stop is not a control stop and 2) the preceding bus did not skip the stop (to avoid passengers being denied twice). The departure time from a skipped stop is given in Equation (4). In this study, two scenarios $SK_3$ and $SK_5$ will be conducted, in which $D_{max}$ is set to three and five minutes, from which a bus is moderately late and significantly late, respectively according to the second punctuality measure presented in Section 3.2.
<figure><img src="image_17.png" /><figcaption>Fig. 15. Illustration of the actual departure delay of buses on three lines studied, fitted to a certain number of probabilistic distributions.</figcaption></figure>

<caption>**Table 10**</caption>

A summary of implemented bus holding strategies. *s* refers to the non negative slack size defined for a bus line, while *α* is a threshold ratio parameter.

<table><thead><tr><th>Scenario ID</th><th>Scenario Short Name</th><th>Bus Holding Strategy</th><th>Strategy Parameters</th></tr></thead><tbody><tr><td>NC</td><td>no-control</td><td>Scheduled-based</td><td>s = +∞</td></tr><tr><td>SH<sub>3</sub></td><td>3-Min</td><td>Scheduled-based</td><td>s = 3 min</td></tr><tr><td>SH<sub>0</sub></td><td>scheduled-based</td><td>Scheduled-based</td><td>s = 0 min</td></tr><tr><td>HH</td><td>headway-based</td><td>Headway-based</td><td>α = 0.8</td></tr></tbody></table>

## 4.6. Case study: challenges

In this study, we faced a number of challenges in setting up this case study, as follows. The first challenge was which bus stops to choose as control points? We first considered each bus stop as a control point. However this choice seemed to be so limited due to: 1) The segment travel times were too short, not exceeding one minute on average, which largely impacted the quality of the trained ML models which seemed to underfit due to low variance in observed travel times; 2) Scheduled stop times (from GTFS) are rounded to the nearest minute, where multiple bus stop times are set to the same rounded minute. As a result, inaccu- rate punctuality for the simulated buses. To overcome this issue, a set of stops predefined by the bus operator was used.

The second challenge was detecting and handling outliers. With actual data available prone to measurement errors, especially departure time (at first stop) and arrival time (at last stop), in which some stop times were not accurate. In order to clean the dataset, Inter Quartile Range (IQR), a detecting outliers technique was applied. On average, about 5% of observations were detected as outliers and therefore

removed.

The third challenge was the choice of a probabilistic distribution to fit the travel time distribution, in order to estimate the travel time variability. To overcome this issue, the sample travel times - constituting according to ML model output, such as regression rules - were fitted to a number of probabilistic distributions, then compared based on the R² score and the law with the best-fit score as well as its parameters, will be selected.

# 5. Experiments and results

In this section, the proposed two-step validation framework will be performed. The first phase of the proposed validation framework involves validating the simulated travel times while the second involves validating the simulated bus punctuality.

## 5.1. Validation of travel times

In this section, the validation of travel times process will be applied. First, scheduled and actual bus travel times will be compared side by side. Next, the resulting travel times of $f_1$, $f_2$ and $f_3$ will be compared over the entire day and subsequently over the morning and evening peak hours according to the relative difference metric defined in Equation (5). Furthermore, in order to evaluate the quality of ML models, a comparison with four probabilistic distributions, according to two goodness-of-fit measures MAE and RMSE will be carried out.

### 5.1.1. Validation of travel times: theoretical vs actual

Below, theoretical and actual average travel times are presented side by side for each segment of three lines studied are presented side by side
<figure><img src="image_18.png" /><figcaption>**Fig. 16.** Theoretical and actual average travel times are presented side by side for each segment of lines studied. For line A, overall, larger differences can be observed on certain segments between theoretical and actual travel times. For line B, again, the simulated travel times seem to correspond well to the actual travel times. In contrast, differences can be observed between theoretical and actual travel times, with minor to moderate differences for segments in the *Aller* direction, and more significant for segments in the *Retour* direction. For line C, the simulated travel times appear to match actual travel times very well. Furthermore, the theoretical and actual travel times match well for segments in the *Aller* direction, while moderate differences can be observed for route segments in the *Retour* direction.</figcaption></figure>

in Fig. 16.

At first glance, the average segment travel times for bus line A seem slightly longer for *Aller* than for *Retour*. Furthermore, theoretical travel times are on average a little overestimated compared to the actual travel times, particularly on A-A5 and A-R5, with differences ranging from moderate for segments A-A3, A-R1 and A-R5, to significant for segments A-A2, A-A5 and A-R3. For line B, one can notice scattered differences in travel times between B-Aller and B-Retour, appearing greater on latter route, especially on segments between B-R4 and B-R6. Overall, differences seem moderate on Aller and to a lesser extent on Retour. For line C, one can see that the differences are limited between the theoretical travel times and the actual travel times.

### 5.1.2. Validation of travel times: actual vs simulation

The resulting travel times of $f_1$, $f_2$ and $f_3$ as well as the relative differences metric $\Delta$ (see Equation (5)), for bus lines A, B and C are reported, respectively, in Tables 11–13.

For line A, the simulated *Aller* travel times estimated using $f_1$ models, are on average more precise than those estimated using $f_2$ and $f_3$. Furthermore, the simulated *Retour* travel times appear to be more accurate than those of *Aller*, with $f_1$ and $f_2$ corresponding well to the actual travel times. Overall, $f_1$ and $f_2$ seem to outperform $f_3$.

For line B, the simulated *Aller* travel times of $f_1$ and $f_2$ seem to be highly similar. Regarding the travel times of $f_3$, more significant deviations can be observed compared to the actual segment travel times, in particular for B-A3 and B-A4. Despite the large underestimate of travel times of B-A5, it only amount to around 12 s. Concerning the *Retour*

<caption>**Table 11**</caption>

Reported actual average travel times $TT_{actual}$ (in seconds) as well as the relative differences $\Delta_{f_1}$, $\Delta_{f_2}$ and $\Delta_{f_3}$, respectively, from $f_1$, $f_2$ and $f_3$, for each route segment of bus line A.

<table><thead><tr><th>segment ID</th><th>segment stops</th><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>A-A1</td><td>STP-1006 → STP-1013</td><td>429</td><td>-5%</td><td>-8%</td><td>-6%</td></tr><tr><td>A-A2</td><td>STP-1013 → STP-1017</td><td>121</td><td>1%</td><td>8%</td><td>2%</td></tr><tr><td>A-A3</td><td>STP-1017 → STP-1022</td><td>420</td><td>1%</td><td>0%</td><td>3%</td></tr><tr><td>A-A4</td><td>STP-1022 → STP-1030</td><td>603</td><td>2%</td><td>3%</td><td>5%</td></tr><tr><td>A-A5</td><td>STP-1030 → STP-1846</td><td>419</td><td>7%</td><td>12%</td><td>16%</td></tr><tr><td>A-R1</td><td>STP-1883 → STP-982</td><td>423</td><td>0%</td><td>0%</td><td>-1%</td></tr><tr><td>A-R2</td><td>STP-982 → STP-990</td><td>629</td><td>3%</td><td>1%</td><td>1%</td></tr><tr><td>A-R3</td><td>STP-990 → STP-994</td><td>253</td><td>3%</td><td>3%</td><td>9%</td></tr><tr><td>A-R4</td><td>STP-994 → STP-998</td><td>226</td><td>2%</td><td>1%</td><td>4%</td></tr><tr><td>A-R5</td><td>STP-998 → STP-1005</td><td>333</td><td>3%</td><td>4%</td><td>9%</td></tr></tbody></table>

route, $f_1$ and $f_2$, provide similar travel times, both seeming to correspond well to actual travel times. Furthermore, $f_3$ seems to match the actual data, expect for B-R5, in which travel times are greatly overestimated. In sum, the three sets of ML models predict very similar travel times, including $f_1$ and $f_2$, and to a lesser extent $f_3$.

With regard to $\Delta$ in Table 13, the differences seem negligible, averaging a few seconds per route segment.

Thus, from the results illustrated on the three bus lines studied (A, B and C), the simulated travel times provided by ML models are highly resembled and statistically similar to the actual travel times.

To test the reliability the ML models trained for bus travel time
<caption>**Table 12**</caption>

Reported actual average travel times $TT_{actual}$ as well as the relative differences $\Delta_{f1}$, $\Delta_{f2}$ and $\Delta_{f3}$, for bus line B.

<table><caption>**Table 13**</caption><thead><tr><th>segment ID</th><th>segment stops</th><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>B-A1</td><td>STP-2349 →<br>STP-1380</td><td>560</td><td>2 %</td><td>2 %</td><td>0 %</td></tr><tr><td>B-A2</td><td>STP-1380 →<br>STP-1390</td><td>568</td><td>3 %</td><td>2 %</td><td>3 %</td></tr><tr><td>B-A3</td><td>STP-1390 →<br>STP-1394</td><td>249</td><td>2 %</td><td>2 %</td><td>19 %</td></tr><tr><td>B-A4</td><td>STP-1394 →<br>STP-2408</td><td>433</td><td>5 %</td><td>5 %</td><td>12 %</td></tr><tr><td>B-A5</td><td>STP-2408 →<br>STP-2746</td><td>92</td><td>-13 %</td><td>-14 %</td><td>-13 %</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>B-R1</td><td>STP-2747 →<br>STP-2348</td><td>114</td><td>-4 %</td><td>-2 %</td><td>-3 %</td></tr><tr><td>B-R2</td><td>STP-2348 →<br>STP-1411</td><td>417</td><td>1 %</td><td>0 %</td><td>1 %</td></tr><tr><td>B-R3</td><td>STP-1411 →<br>STP-1415</td><td>231</td><td>3 %</td><td>3 %</td><td>4 %</td></tr><tr><td>B-R4</td><td>STP-1415 →<br>STP-1420</td><td>286</td><td>4 %</td><td>2 %</td><td>3 %</td></tr><tr><td>B-R5</td><td>STP-1420 →<br>STP-1424</td><td>315</td><td>4 %</td><td>6 %</td><td>16 %</td></tr><tr><td>B-R6</td><td>STP-1424 →<br>STP-1379</td><td>353</td><td>4 %</td><td>5 %</td><td>2 %</td></tr><tr><td>B-R7</td><td>STP-1379 → STP-834</td><td>169</td><td>3 %</td><td>3 %</td><td>3 %</td></tr></tbody></table>

Reported actual average travel times $TT_{actual}$ as well as the relative differences $\Delta_{f1}$, $\Delta_{f2}$ and $\Delta_{f3}$, for bus line C.

<table><thead><tr><th>segment ID</th><th>segment stops</th><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>C-A1</td><td>STP-2521 → STP-2525</td><td>282</td><td>-3 %</td><td>-2 %</td><td>-2 %</td></tr><tr><td>C-A2</td><td>STP-2525 → STP-2526</td><td>343</td><td>-3 %</td><td>-3 %</td><td>-2 %</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>C-R1</td><td>STP-2526 → STP-2527</td><td>353</td><td>-2 %</td><td>-2 %</td><td>-1 %</td></tr><tr><td>C-R2</td><td>STP-2527 → STP-2440</td><td>226</td><td>-1 %</td><td>-1 %</td><td>0 %</td></tr></tbody></table>

prediction, simulated and actual travel times will be compared over morning and evening peak hours. For line A, the results show that the actual segment travel times of *Aller* route are on average relatively longer during morning rush hours than during evening hours, and vice versa for the *Retour* segments. For line B, similar actual travel times are observed at both peak hours, while an increase in segment travel times is observed during the evening hours compared to the morning peak hours, for line C.

In sum, ML models in which features include stop time ($f_1$ and $f_2$) perform better than those built by only considering bus delay at the stop. Moreover, ML models with only the stop time as a feature ($f_1$) relatively match the best actual travel times. In the remainder of this work, the ML models are referred to the $f_1$ models. An in-depth analysis of actual

travel times together along with relative differences from three set of models ($f_1$, $f_2$ and $f_3$) over peak hours, for bus lines A, B and C can be found in B.

### 5.1.3. Validation of Travel Times: ML vs Probabilistic Distributions

To assess the accuracy of the ML models for bus travel time prediction, the simulated travel times provided by ML will be compared to four probabilistic distributions, including: normal, lognormal, gamma and generalized extreme value (GEV) distributions, with a focus on morning and evening peak hours. The actual travel times as well as the relative differences resulting from ML and probabilistic distributions over peak hours, for bus lines A, B and C are reported, respectively, in Tables 14–16.

From Table 14, one can see that the ML travel times are on average more precise compared to the travel times generated by the different probabilistic distributions, during morning and evening rush hours. Moreover, the differences between ML and distributions are more significant during morning peak hours than during evening hours.

For line B, a similar trend is observed with more precise ML travel times compared to those estimated by the probabilistic distributions, in the morning and to a lesser extent during the evening rush hours. Furthermore, while the normal, lognormal, and gamma distributions seem to correspond to the actual travel times to a lesser extent, GEV distribution appears to strongly overestimate actual travel times.

From Table 16, one can see that on average the ML travel times of line C seem to be more precise than the statistical distribution travel times, both during morning and evening peak hours. Additionally, the resulting travel times of the four probabilistic distribution are highly resembled, with on average, generalized extreme value distribution appearing to provide more accurate travel times than the normal, lognormal, and gamma distributions.

### 5.1.4. Validation of travel times: goodness of fit

In order to thoroughly evaluate the quality of the simulated travel times provided by ML and the probabilistic distributions, mean absolute error (MAE) and root mean square error (RMSE), two goodness-of-fit measures (GOF), will be estimated at morning and evening peak hours, for each route.

In essence, segment travel times will be grouped into half-minute slot. MAE and RMSE measures, are respectively formulated in Equations (9) and (10). The estimated values of MAE and RMSE, applied to the three bus lines, are reported in Tables 17 and 18, respectively.

$$MAE = \frac{1}{|S|} \sum_{s \in S} \sum_{t \in T} \left| P_{d,s}^{t} - P_{a,s}^{t} \right| \quad (9)$$

$$RMSE = \sqrt{\frac{1}{|S|} \sum_{s \in S} \sum_{t \in T} (P_{d,s}^{t} - P_{a,s}^{t})^2} \quad (10)$$

Where:

<caption>**Table 14**</caption>

Reported actual average travel times $TT_{actual}$ as well as relative differences $\Delta_{ML}$, $\Delta_{norm}$, $\Delta_{lognorm}$, $\Delta_{gamma}$ and $\Delta_{GEV}$, respectively, from ML, norm, lognorm and GEV distributions, for each route segment of bus line A, over morning and evening peak-hours.

<table><thead><tr><th rowspan="2">segment ID</th><th colspan="6">Morning peak hours</th><th colspan="6">Evening peak hours</th></tr><tr><th>TT<sub>actual</sub></th><th>Δ<sub>ML</sub></th><th>Δ<sub>norm</sub></th><th>Δ<sub>lognorm</sub></th><th>Δ<sub>gamma</sub></th><th>Δ<sub>GEV</sub></th><th>TT<sub>actual</sub></th><th>Δ<sub>ML</sub></th><th>Δ<sub>norm</sub></th><th>Δ<sub>lognorm</sub></th><th>Δ<sub>gamma</sub></th><th>Δ<sub>GEV</sub></th></tr></thead><tbody><tr><td>A-A1</td><td>513</td><td>-10 %</td><td>-16 %</td><td>-16 %</td><td>-53 %</td><td>-16 %</td><td>422</td><td>-3 %</td><td>-3 %</td><td>-3 %</td><td>-3 %</td><td>-4 %</td></tr><tr><td>A-A2</td><td>132</td><td>1 %</td><td>-1 %</td><td>-3 %</td><td>33 %</td><td>-2 %</td><td>125</td><td>1 %</td><td>1 %</td><td>0 %</td><td>1 %</td><td>0 %</td></tr><tr><td>A-A3</td><td>481</td><td>-1 %</td><td>-10 %</td><td>-9 %</td><td>-5 %</td><td>-8 %</td><td>433</td><td>-5 %</td><td>-1 %</td><td>-1 %</td><td>-1 %</td><td>-1 %</td></tr><tr><td>A-A4</td><td>653</td><td>-1 %</td><td>-4 %</td><td>-4 %</td><td>-3 %</td><td>-4 %</td><td>619</td><td>-1 %</td><td>0 %</td><td>1 %</td><td>0 %</td><td>0 %</td></tr><tr><td>A-A5</td><td>500</td><td>10 %</td><td>16 %</td><td>17 %</td><td>20 %</td><td>12 %</td><td>433</td><td>1 %</td><td>6 %</td><td>7 %</td><td>-18 %</td><td>1 %</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>A-R1</td><td>418</td><td>-3 %</td><td>-7 %</td><td>-6 %</td><td>-7 %</td><td>-7 %</td><td>472</td><td>1 %</td><td>-3 %</td><td>-3 %</td><td>-3 %</td><td>-3 %</td></tr><tr><td>A-R2</td><td>628</td><td>-2 %</td><td>-6 %</td><td>-6 %</td><td>-5 %</td><td>-5 %</td><td>706</td><td>4 %</td><td>2 %</td><td>2 %</td><td>2 %</td><td>2 %</td></tr><tr><td>A-R3</td><td>248</td><td>1 %</td><td>-3 %</td><td>-3 %</td><td>-3 %</td><td>-2 %</td><td>271</td><td>3 %</td><td>8 %</td><td>10 %</td><td>-29 %</td><td>14 %</td></tr><tr><td>A-R4</td><td>231</td><td>-1 %</td><td>-4 %</td><td>-4 %</td><td>-4 %</td><td>-5 %</td><td>253</td><td>0 %</td><td>-1 %</td><td>-1 %</td><td>0 %</td><td>-3 %</td></tr><tr><td>A-R5</td><td>349</td><td>-5 %</td><td>-4 %</td><td>-4 %</td><td>-3 %</td><td>395 %</td><td>349</td><td>2 %</td><td>7 %</td><td>8 %</td><td>12 %</td><td>13 %</td></tr></tbody></table>
<caption>**Table 15**</caption>

Reported actual average travel times as well as relative differences resulting from ML and probabilistic distributions, for each route segment of bus line B, over morning and evening peak-hours.

<table><caption>**Table 16**</caption><thead><tr><th rowspan="2">segment ID</th><th rowspan="2">TT<sub>actual</sub></th><th rowspan="2">Δ<sub>ML</sub></th><th rowspan="2">Δ<sub>norm</sub></th><th colspan="3">Morning peak hours</th><th rowspan="2">TT<sub>actual</sub></th><th rowspan="2">Δ<sub>ML</sub></th><th colspan="3">Evening peak hours</th></tr><tr><th>Δ<sub>lognorm</sub></th><th>Δ<sub>gamma</sub></th><th>Δ<sub>GEV</sub></th><th>Δ<sub>norm</sub></th><th>Δ<sub>lognorm</sub></th><th>Δ<sub>gamma</sub></th><th>Δ<sub>GEV</sub></th></tr></thead><tbody><tr><td>B-A1</td><td>573</td><td>-2%</td><td>-7%</td><td>-7%</td><td>-6%</td><td>2%</td><td>625</td><td>-2%</td><td>-4%</td><td>-5%</td><td>-4%</td><td>38%</td></tr><tr><td>B-A2</td><td>617</td><td>0%</td><td>-5%</td><td>-5%</td><td>-5%</td><td>74%</td><td>635</td><td>-1%</td><td>-2%</td><td>-2%</td><td>-2%</td><td>118%</td></tr><tr><td>B-A3</td><td>305</td><td>-9%</td><td>-16%</td><td>-16%</td><td>-56%</td><td>738%</td><td>313</td><td>-1%</td><td>-7%</td><td>-8%</td><td>-7%</td><td>123%</td></tr><tr><td>B-A4</td><td>548</td><td>2%</td><td>-3%</td><td>-4%</td><td>0%</td><td>44%</td><td>450</td><td>1%</td><td>2%</td><td>2%</td><td>2%</td><td>183%</td></tr><tr><td>B-A5</td><td>105</td><td>-14%</td><td>-15%</td><td>-16%</td><td>-16%</td><td>-19%</td><td>103</td><td>-27%</td><td>-27%</td><td>-26%</td><td>-27%</td><td>-29%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>B-R1</td><td>99</td><td>-5%</td><td>-5%</td><td>-6%</td><td>-5%</td><td>0%</td><td>131</td><td>-4%</td><td>-4%</td><td>-3%</td><td>-3%</td><td>-3%</td></tr><tr><td>B-R2</td><td>413</td><td>-1%</td><td>-4%</td><td>-4%</td><td>-4%</td><td>-1%</td><td>490</td><td>-2%</td><td>-6%</td><td>-6%</td><td>-6%</td><td>-6%</td></tr><tr><td>B-R3</td><td>284</td><td>1%</td><td>-7%</td><td>-7%</td><td>-7%</td><td>58%</td><td>260</td><td>1%</td><td>-4%</td><td>-4%</td><td>-4%</td><td>-6%</td></tr><tr><td>B-R4</td><td>310</td><td>0%</td><td>-5%</td><td>-5%</td><td>-6%</td><td>40%</td><td>312</td><td>0%</td><td>-2%</td><td>-2%</td><td>-2%</td><td>-4%</td></tr><tr><td>B-R5</td><td>342</td><td>8%</td><td>8%</td><td>8%</td><td>8%</td><td>844%</td><td>352</td><td>2%</td><td>2%</td><td>2%</td><td>2%</td><td>104%</td></tr><tr><td>B-R6</td><td>375</td><td>-2%</td><td>-8%</td><td>-7%</td><td>-7%</td><td>2%</td><td>384</td><td>-1%</td><td>-3%</td><td>-4%</td><td>-4%</td><td>-3%</td></tr><tr><td>B-R7</td><td>188</td><td>-3%</td><td>-7%</td><td>-8%</td><td>-7%</td><td>21%</td><td>179</td><td>-1%</td><td>-4%</td><td>-4%</td><td>-4%</td><td>6%</td></tr></tbody></table>

Reported actual average travel times as well as relative differences resulting from ML and probabilistic distributions, for each route segment of bus line C, over morning and evening peak-hours.

<table><caption>**Table 17**</caption><thead><tr><th rowspan="2">segment ID</th><th rowspan="2">TT<sub>actual</sub></th><th rowspan="2">Δ<sub>ML</sub></th><th rowspan="2">Δ<sub>norm</sub></th><th colspan="3">Morning peak hours</th><th rowspan="2">TT<sub>actual</sub></th><th rowspan="2">Δ<sub>ML</sub></th><th colspan="3">Evening peak hours</th></tr><tr><th>Δ<sub>lognorm</sub></th><th>Δ<sub>gamma</sub></th><th>Δ<sub>GEV</sub></th><th>Δ<sub>norm</sub></th><th>Δ<sub>lognorm</sub></th><th>Δ<sub>gamma</sub></th><th>Δ<sub>GEV</sub></th></tr></thead><tbody><tr><td>C-A1</td><td>284</td><td>-3%</td><td>-6%</td><td>-6%</td><td>-6%</td><td>-5%</td><td>300</td><td>-6%</td><td>-9%</td><td>-9%</td><td>-9%</td><td>-9%</td></tr><tr><td>C-A2</td><td>342</td><td>-3%</td><td>-9%</td><td>-10%</td><td>-9%</td><td>-8%</td><td>395</td><td>-5%</td><td>-14%</td><td>-14%</td><td>-15%</td><td>-8%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>C-R1</td><td>373</td><td>-1%</td><td>-10%</td><td>-10%</td><td>-10%</td><td>-10%</td><td>396</td><td>-4%</td><td>-10%</td><td>-10%</td><td>-10%</td><td>-3%</td></tr><tr><td>C-R2</td><td>231</td><td>-3%</td><td>-6%</td><td>-6%</td><td>-6%</td><td>-6%</td><td>233</td><td>0%</td><td>-1%</td><td>-1%</td><td>-1%</td><td>-1%</td></tr></tbody></table>

Mean Absolute Error (MAE) between actual and simulated travel times, by route, during morning and evening peak-hours.

<table><caption>**Table 18**</caption><thead><tr><th rowspan="2">Route ID</th><th rowspan="2">ML</th><th rowspan="2">norm</th><th colspan="3">Morning peak hours</th><th colspan="3">Evening peak hours</th></tr><tr><th>lognorm</th><th>gamma</th><th>GEV</th><th>ML</th><th>norm</th><th>lognorm</th><th>gamma</th><th>GEV</th></tr></thead><tbody><tr><td>A-Aller</td><td>19%</td><td>23%</td><td>24%</td><td>54%</td><td>21%</td><td>11%</td><td>15%</td><td>13%</td><td>17%</td><td>14%</td><td>14%</td></tr><tr><td>A-Retour</td><td>9%</td><td>10%</td><td>9%</td><td>9%</td><td>11%</td><td>13%</td><td>19%</td><td>15%</td><td>27%</td><td>20%</td><td>20%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>B-Aller</td><td>13%</td><td>17%</td><td>15%</td><td>29%</td><td>28%</td><td>10%</td><td>12%</td><td>11%</td><td>11%</td><td>42%</td><td>42%</td></tr><tr><td>B-Retour</td><td>10%</td><td>14%</td><td>13%</td><td>13%</td><td>27%</td><td>9%</td><td>10%</td><td>8%</td><td>8%</td><td>10%</td><td>10%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>C-Aller</td><td>5%</td><td>15%</td><td>17%</td><td>17%</td><td>14%</td><td>6%</td><td>15%</td><td>20%</td><td>20%</td><td>19%</td><td>19%</td></tr><tr><td>C-Retour</td><td>5%</td><td>20%</td><td>21%</td><td>22%</td><td>23%</td><td>5%</td><td>8%</td><td>10%</td><td>9%</td><td>9%</td><td>9%</td></tr></tbody></table>

Root Mean Square Error (RMSE) between actual and simulated travel times, by route, during morning and evening peak-hours.

<table><thead><tr><th rowspan="2">Route ID</th><th rowspan="2">ML</th><th rowspan="2">norm</th><th colspan="3">Morning peak hours</th><th colspan="3">Evening peak hours</th></tr><tr><th>lognorm</th><th>gamma</th><th>GEV</th><th>ML</th><th>norm</th><th>lognorm</th><th>gamma</th><th>GEV</th></tr></thead><tbody><tr><td>A-Aller</td><td>11%</td><td>15%</td><td>17%</td><td>40%</td><td>14%</td><td>7%</td><td>10%</td><td>9%</td><td>13%</td><td>9%</td><td>9%</td></tr><tr><td>A-Retour</td><td>8%</td><td>8%</td><td>7%</td><td>7%</td><td>8%</td><td>9%</td><td>13%</td><td>12%</td><td>23%</td><td>14%</td><td>14%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>B-Aller</td><td>9%</td><td>11%</td><td>10%</td><td>25%</td><td>18%</td><td>7%</td><td>10%</td><td>10%</td><td>9%</td><td>36%</td><td>36%</td></tr><tr><td>B-Retour</td><td>8%</td><td>11%</td><td>11%</td><td>11%</td><td>24%</td><td>8%</td><td>8%</td><td>7%</td><td>6%</td><td>8%</td><td>8%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>C-Aller</td><td>4%</td><td>12%</td><td>13%</td><td>13%</td><td>11%</td><td>4%</td><td>10%</td><td>14%</td><td>14%</td><td>13%</td><td>13%</td></tr><tr><td>C-Retour</td><td>4%</td><td>15%</td><td>17%</td><td>17%</td><td>18%</td><td>4%</td><td>6%</td><td>7%</td><td>7%</td><td>6%</td><td>6%</td></tr></tbody></table>

* s: a route segment

* S: a set of route segments

* t: a travel time increment.

* T: a set of travel time increments

* $P_{ds}^t$: refers to the actual relative frequency for segment s with $TT \in t$

* $P_{ds}^t$: refers to relative frequency of a distribution d for segment s with $TT \in t$

At first glance at Table 17, ML seems to have the lowest MAE on most bus routes. Additionally, the differences between ML and other

distributions tend to be smaller, to some extent, during evening peak hours, with the exception of line C routes, on which ML appears to significantly outperform.

From Table 18, ML models show the lowest RMSE error on most line routes. Similar to MAE, ML appears to outperform probabilistic distributions during morning peak hours and, to a lesser extent, during evening peak hours.

Furthermore, with exception to A-Retour and to a lesser extent C-Aller routes, the resulting travel times during the evening rush hours appear more accurate than those during morning hours.
## 5.2. Validation of simulation results: impacts of recovery time strategies on bus punctuality

In order to investigate the impacts of bus recovery time on simulated bus punctuality, two simulation scenarios $S_1$ using a fixed minimum recovery time of two minutes and $S_2$ using an adjusted recovery time, will be conducted. In the following, aggregated delay and bus delay severity, two of the on-time performance metrics presented in Section 3.2, will be applied at the control points on the actual observations and the two simulated scenarios ($S_1$ and $S_2$), for each of the three bus lines (A, B and C). The results obtained on each dataset will then be statistically analyzed and compared side by side.

### 5.2.1. Impacts of recovery time: aggregated delay metric

Fig. 17 provided first insights at how bus punctuality is distributed. It illustrates the resulting bus status share according to the first punctuality metric, applied to the 9 datasets. Further on, Table 19 illustrates in more detail the differences between the shares resulting from simulation scenarios and the actual shares.

At first glance, one can see some differences in the shares between the different lines, line C seems to be the most regular on-time bus line among the lines studied, followed by line B then line A. Based on in advance shares, line A buses are much further ahead than compared to lines B and C. Furthermore, line C, with its shortest bus routes, has the least late buses, in which the share of Significant delay is negligible, while lines A and B show statistically an almost identical ratio for significantly delayed buses. The analysis process will proceed as follows: the bus status shares of the actual observations will be analyzed first, followed by those from the two simulated scenarios. Secondly, the share of the actual observations will be compared to the shares resulting from the simulation.

For bus line A, the results show that about two thirds of the actual buses are on time and about one third are early at the timing points. On the other hand, the results of the simulated scenarios indicate a very similar trend for $S_1$ and $S_2$, with an identical share for on-time travel (with 62%) and minor differences (± 2%) between in advance and significantly delayed buses. Compared to the actual data, minor differences were observed with 5% for $S_1$ and 3% for $S_2$ respectively.

For bus line B, the shares indicate that approximately three thirds and one fifth of actual buses are on-time and early, respectively, while significantly late buses represent less than a tenth of the total buses.

<caption>Table 19</caption>

Illustration of the differences and gaps between the resulting simulation shares and the actual shares according to the first punctuality metric, for lines A, B and C.

<table><thead><tr><th></th><th>S<sub>1</sub> (A)</th><th>S<sub>2</sub> (A)</th><th>S<sub>1</sub> (B)</th><th>S<sub>2</sub> (B)</th><th>S<sub>1</sub> (C)</th><th>S<sub>2</sub> (C)</th></tr></thead><tbody><tr><td>Advance > 1 min</td><td>+5 %</td><td>+3 %</td><td>+5 %</td><td>+3 %</td><td>-1 %</td><td>+5 %</td></tr><tr><td>On-time travel</td><td>-1 %</td><td>-1 %</td><td>0 %</td><td>-1 %</td><td>+3 %</td><td>-5 %</td></tr><tr><td>Significant delay</td><td>-4 %</td><td>-2 %</td><td>-5 %</td><td>-2 %</td><td>-2</td><td>0 %</td></tr><tr><td>Δ(S, actual)</td><td>5 %</td><td>3 %</td><td>5 %</td><td>3 %</td><td>3 %</td><td>5 %</td></tr></tbody></table>

Furthermore, the results also show that $S_1$ and $S_2$ follow a similar trend, with minor differences (3%) for the in advance and significantly late buses. As for bus line A, the differences between the actual and simulated shares are minor and almost identical, with a difference of approximately 5% and 3%, respectively, for $S_1$ and $S_2$.

For bus line C, it can be observed that almost all actual buses travel on-time, while that a tenth are ahead. On the other hand, the share of significantly delay is very negligible. Unlike the two previous bus lines (A and B), the results of the two simulated scenarios ($S_1$ and $S_2$) show different trends. $S_2$ overestimates the share of buses in advance (+5%) compared to actual observations and to $S_1$, while on the other hand, $S_1$ completely underestimates the buses with a significant delay, estimated to be almost zero.

In total, the results showed significant similarities between $S_1$ and $S_2$, with minor differences on bus lines A and B, and to a lesser extent on line C where the differences appear more significant. Compared to the actual bus delays, the delays shares resulting from the simulation, using the adjusted recovery time in $S_2$ scenario, are more accurate than those in $S_1$, in which a fixed minimum recovery time of two minutes was implemented. The results obtained in $S_2$ slightly overestimate the ratio of buses ahead of schedule. In short, the resulting simulation distributions for the three lines studied are with a good fit to the actual reference distributions according to this studied metric.

### 5.2.2. Impacts of recovery time: bus delay severity metric

In order to investigate in more details the delay shares obtained previously according to the first metric used, the bus severity delay metric defines buses ahead of schedule and significantly delayed as in the first metric, in contrast, distinguishing the on-time travel into three subclasses with a 2 min horizon, as follows: on-time travel, minor delay and moderate delay, respectively, if the delay is between -1 and +1, +1 and

<figure><img src="image_19.png" /><figcaption>Fig. 17. Bus punctuality shares for the bus lines studied, based on the first on-time measurement. For lines A and B, a strong similarity of shares is observed between $S_1$ and $S_2$, while compared to actual shares, the differences are minors, with $S_2$ appearing to slightly outperform $S_1$. For line C, the resulting shares of $S_1$ and $S_2$ are different, compared to the referenced shares, $S_2$ seems to slightly outperform $S_1$.</figcaption></figure>
+3 and +3 and +5 min.

From Fig. 18 and Table 20, one can observe a strong resemblance between the shares of bus punctuality both for the actual observations and $S_2$, and that for the three studied bus lines. An exception to note for bus line C, part of the share (around 5 %) of *in advance* and *on-time travel* buses seems poorly located. Furthermore, the share of minor, moderate and significant delays is almost identical between $S_2$ and actual observations. In sum, $S_2$ is slightly overestimates the shares of early buses, well adjusted to the shares of *minor*, *moderate* and *significant* delays, with an approximate deviation of 4–6 % for the lines studied. In contrast, the $S_1$ shares show a significant overestimation of *in advance* and *on-time*, and therefore, an underestimation of *minor*, *moderate* and *significant* shares, with an approximate deviation of 9 % for line A, 15 % for line B and 14 % for line C.

In short, the results of the second on-time performance metric show that applying an adjusted recovery time strategy improved the quality of results compared to the fixed recovery time strategy.

### 5.3. Validation of simulation results: impacts of bus control strategies on bus punctuality

In this section, the emphasis is placed on investigating the impacts of different bus control strategies on bus punctuality. The strategies implemented are reported in Table 10. In the following, the resulting shares will be analyzed and compared to the actual shares, according to a number of one-time performance metrics.

#### 5.3.1. Impacts of bus holding: aggregated delay metric

The bus punctuality shares based on aggregate delay metric for bus lines A, B and C are shown in Fig. 19. The differences between the resulting simulation shares and the actual shares according to the first punctuality metric are reported in Table 21.

For bus line A, results obtained from actual observations show that about two thirds of buses on time and about one third are early at the timing points. On the other hand, the results indicate a very similar trend for scenarios NC and $SH_3$, with an identical share for *on-time travel* and minor differences (± 3 %) between *in advance* and *significantly delayed* buses. The results show that $SH_0$ appear to completely underestimate the share of ahead bus, and strongly overestimate the share of on-time buses, the share of *significantly delayed* buses, on the other hand, is slightly underestimated. Furthermore, the *HH* results indicate an

<caption>Table 20</caption>

Illustration of the differences and gaps between the resulting simulation shares and the actual shares according to the second on-time metric, for lines studied.

<table><thead><tr><th></th><th>S<sub>1</sub> (A)</th><th>S<sub>2</sub> (A)</th><th>S<sub>1</sub> (B)</th><th>S<sub>2</sub> (B)</th><th>S<sub>1</sub> (C)</th><th>S<sub>2</sub> (C)</th></tr></thead><tbody><tr><td>Advance > 1 min</td><td>+5 %</td><td>+3 %</td><td>+5 %</td><td>+3 %</td><td>-1 %</td><td>+5 %</td></tr><tr><td>On-time travel</td><td>+4 %</td><td>-1 %</td><td>+10 %</td><td>0 %</td><td>+14 %</td><td>-6 %</td></tr><tr><td>Minor delay</td><td>-2 %</td><td>+1 %</td><td>-4 %</td><td>+1 %</td><td>-6 %</td><td>+1 %</td></tr><tr><td>Moderate delay</td><td>-3 %</td><td>-1 %</td><td>-5 %</td><td>-2 %</td><td>-5 %</td><td>0 %</td></tr><tr><td>Significant delay</td><td>-4 %</td><td>-2 %</td><td>-5 %</td><td>-2 %</td><td>-2 %</td><td>0 %</td></tr><tr><td>δ(S, actual)</td><td>9 %</td><td>4 %</td><td>15 %</td><td>4 %</td><td>14 %</td><td>6 %</td></tr></tbody></table>

underestimation of the share of early buses, and an underestimation to a lesser extent of the share of on-time and significantly late buses. In short, for line A, the shares of NC and $SH_3$ appear more similar to the actual shares compared to the shares of HH.

For bus line B, the shares shown indicate that approximately three thirds and one fifth of actual buses are *on-time travel* and *in advance*, respectively, while the buses with a significant delay represent less than a tenth of the total buses. Furthermore, the results show that NC and $SH_3$ follow a similar trend, with minor differences for the *ahead* and *significantly late* buses. For $SH_0$, a trend similar to that of line A is observed, including a complete underestimation of the share of early buses. Moreover, the *HH* results indicate an underestimation and overestimation of the share of *in advance* and *significantly delayed* buses, respectively. Overall, for line B, the differences between the real and simulated shares are minor for NC and $SH_3$ and, to a greater extent, for HH and $SH_0$.

For bus line C, one can observe that almost all actual buses travel *on-time*, while that a tenth are *ahead*. On the other hand, the share of *significantly delay* is very negligible. The results show a similar trends for NC and $SH_3$ with a slightly overestimation and underestimation of the share of buses ahead and on-time, respectively, and match well with the actual share of significantly delayed buses. On the other hand, $SH_0$ follows a different trend by overestimating and underestimating, respectively, the share of buses early and on-time. Unlike lines A and B, the shares of *HH* appear to correspond well to the actual shares, out-performing those resulting from the scheduled-based scenarios.

In total, the analyzed results show significant similarities between NC and $SH_3$, corresponding well to the actual shares of bus punctuality. In contrast, $SH_0$ seems to strongly underestimate the share of early buses, while *HH* tends to overestimate the share of late buses.

<figure><img src="image_20.png" /><figcaption>Fig. 18. Bus punctuality shares for lines A, B and C, based on the second on-time metric with five levels of delay: *in advance*, *on-time travel*, *minor*, *moderate* and *significantly delayed*. Concerning the resulting shares, the differences between $S_1$ and $S_2$ are much more significant, particularly for the *on-time travel* share. The $S_2$ shares appear to match the actual data well for lines A and B, and to a lesser extent for line C. In contrast, $S_1$ seems to considerably overestimate the share of *on-time travel* and underestimate all the remaining shares.</figcaption></figure>
<figure><img src="image_21.png" /><figcaption>Fig. 19. Impacts of bus holding strategies - Bus punctuality shares for the bus lines studied, based on the first on-time measurement.</figcaption></figure>

<caption>**Table 21**</caption>

Impacts of bus holding - Illustration of the differences between the resulting simulation shares and the actual shares according to the first punctuality metric, for bus lines A, B and C.

<table><thead><tr><th>Δ(S, actual)</th><th>no-control NC</th><th>scheduled-based SH<sub>3</sub></th><th>scheduled-based SH<sub>0</sub></th><th>headway-based HH</th></tr></thead><tbody><tr><th>Line A</th><td>3 %</td><td>3 %</td><td>31 %</td><td>7 %</td></tr><tr><th>Line B</th><td>4 %</td><td>3 %</td><td>22 %</td><td>12 %</td></tr><tr><th>Line C</th><td>4 %</td><td>5 %</td><td>7 %</td><td>2 %</td></tr></tbody></table>

### 5.3.2. Impacts of bus holding: bus delay severity metric

The bus punctuality shares based on bus severity delay metric for bus lines A, B and C are shown in Fig. 20. The differences between the resulting simulation shares and the actual shares according to the second punctuality metric are reported in Table 22.

From Fig. 20 and Table 22, one can observe a resemblance between the shares of bus punctuality for the actual observations, NC and SH<sub>3</sub>, and that for the three studied bus lines. Exception to note for line C, part of the share (around 5 %) of *in advance* and *on-time travel* buses seems is poorly located. Furthermore, the share of minor, moderate and

<caption>**Table 22**</caption>

Impacts of bus holding - Illustration of the differences and gaps between the resulting simulation shares and the actual shares according to the second punctuality metric, for bus lines A, B and C.

<table><thead><tr><th>Δ(S, actual)</th><th>no-control NC</th><th>scheduled-based SH<sub>3</sub></th><th>scheduled-based SH<sub>0</sub></th><th>headway-based HH</th></tr></thead><tbody><tr><th>Line A</th><td>4 %</td><td>4 %</td><td>31 %</td><td>9 %</td></tr><tr><th>Line B</th><td>6 %</td><td>4 %</td><td>22 %</td><td>17 %</td></tr><tr><th>Line C</th><td>4 %</td><td>6 %</td><td>9 %</td><td>4 %</td></tr></tbody></table>

significant delays is almost identical between SH<sub>3</sub>, NC and actual observations. For SH<sub>0</sub>, the resulting early and on-time bus shares are heavily neglected and overestimated for lines A and B respectively, while the slightly late bus shares are also overestimated, but to a lesser extent. On the other hand, for line C, one can observe a similar trend but to a lesser extent to that of lines A and B, with an underestimation and an overestimation, respectively for the share of buses *in advance* and *on-time*. For HH, the resulting shares of line A indicate an underestimate of the share of early and on-time buses, but also a slight overestimation of share of late buses, a similar trend is observed for line B but to a greater

<figure><img src="image_22.png" /><figcaption>Fig. 20. Impacts of bus holding strategies - Bus punctuality shares for the bus lines studied, based on the second on-time measurement.</figcaption></figure>
extent, while for line C, minor differences with the actual shares are observed, including an underestimation of the share of on-time buses.

In short, the shares obtained according to this second bus punctuality measure follow similar trend to that of the first measure. Compared to actual bus punctuality, the shares resulting from NC and SH₃, are on average more accurate than those from SH₀ and HH.

### 5.3.3. Impacts of bus holding: a third bus delay metric

After having presenting in detail the shares resulting from the application of the two bus punctuality metrics, for the bus lines studied. The simulation results showed some differences between the actually observed delays and the delays resulting from the simulation. To better understand the those resulting differences in more detail, the actual shares will be compared over intervals of one minute increments, alongside the shares resulting from the simulated scenarios.

In Fig. 21 the relative frequencies of bus punctuality at the control points of bus line A are illustrated. The shares resulting of the no-control strategy (NC) correspond well to the actual shares with a negligible difference to note. One can observe that the shares of SH₃ follow the same trend as those of NC, with the exception of the share of buses more than four minutes ahead, where the share is completely ignored. On the other hand, for buses two to three minutes ahead, the share is overestimated (+8). For SH₀, the share of early buses is completely underestimated, while HH appears to slightly underestimate the share of early buses, slightly overestimate the share of late buses, and match well with the share of on-time buses.

Fig. 22 illustrates the relative frequency of bus delays for line B. The results show that NC and to a lesser extent SH₃, ranging from good fit to slightly overestimate the share of buses ahead and on-time, respectively. Furthermore, SH₀ and SH₃ seem to strongly underestimate the share of buses in advance, with more than three minutes and one minute ahead, respectively. Moreover, the resulting shares of the scheduling-based holding scenarios follow the same pattern by slightly underestimating the share of buses with moderate to significant delay. On the other hand, HH appears to underestimate the share of early buses, to a lesser extent slightly underestimate and overestimate the share of on-time and late buses, respectively.

From Fig. 23, it can be observed that the bus line C is the most punctual line among the lines studied. The results show that the resulting shares of scheduled-based holding scenarios, correspond well to the actual share of late buses. NC and SH₃ slightly overestimate and

underestimate the share of early buses and on-time buses, respectively. In contrast, SH₀ significantly overestimates the share of buses on time and underestimates the share of buses in advance. On the other hand, HH seems to underestimate the share of on-time buses and to a lesser extent the share of buses too early, while it slightly underestimates the share of buses significantly delayed.

The differences between the resulting simulation shares and the actual shares according to the third punctuality metric are reported in Table 23.

Overall, NC seems to adequately match the actual shares of lines A and B, and on average outperform SH₃ and HH. On the other hand, HH shares correspond well to the actual shares of line C, slightly outperforming NC and SH₃. In contrast, the SH₀ corresponds the least to the actual shares, for the three studied lines.

### 5.3.4. Impacts of bus stop-skipping on bus punctuality

In this section, the focus is on studying the impacts of bus stop-skipping approach on bus punctuality. The resulting bus punctuality shares - based on the second metric - of the two scenarios (SK₃ and SK₅) in which stop-skipping is implemented, as well as the actual shares and the resulting shares of no control scenario, are shown in Fig. 24.

For bus line A and B, we can observe a slight increase in the share of early and on-time buses, and at same time a slight decrease in share of moderately and significantly late buses, for SK₃ compared to NC. In contrast, for SK₅, negligible changes were observed. For line C, the shares of NC, SK₃ and SK₅ were almost the same. Compared to the actual shares, SK₃ and SK₅ seem to diverge, with a greater overestimation of the shares of early buses compared to NC. In sum, the applied stop-skipping strategy appears to have a slight impact on bus punctuality shares, in particular by decreasing the share of late buses.

### 5.4. Simulation vs actual: off-peak and peak hours

In addition to the overall validation of bus travel times, previous analyzes using the three bus punctuality metrics have shown that the simulation results correspond well to the actual bus shares. In the following, a validation process will be conducted, in which the simulation results of no control scenario will be compared side-by-side with the actual observations, using the bus severity metric based on defined periods of the day (see Table 6). The simulation and actual bus punctuality shares, for the three bus lines, are given in Fig. 25.

<figure><img src="image_23.png" /><figcaption>Fig. 21. A comparison of actual and simulated bus punctuality shares at control points grouped in one-minute increments, for bus line A.</figcaption></figure>
<figure><img src="image_24.png" /><figcaption>Fig. 22. A comparison of actual and simulated bus punctuality shares at control points grouped in one-minute increments, for bus line B.</figcaption></figure>

<figure><img src="image_25.png" /><figcaption>Fig. 23. A comparison of actual and simulated bus punctuality shares at control points grouped in one-minute increments, for bus line C.</figcaption></figure>

<caption>**Table 23**</caption>

Illustration of the differences and gaps between the resulting simulation shares and the actual shares according to the third punctuality metric, for bus lines A, B and C.

<table><thead><tr><th>Δ(S, actual)</th><th>no-control NC</th><th>3-min SH<sub>3</sub></th><th>scheduled-based SH<sub>0</sub></th><th>headway-based HH</th></tr></thead><tbody><tr><th>Line A</th><td>4 %</td><td>11 %</td><td>35 %</td><td>8 %</td></tr><tr><th>Line B</th><td>7 %</td><td>10 %</td><td>22 %</td><td>14 %</td></tr><tr><th>Line C</th><td>6 %</td><td>6 %</td><td>11 %</td><td>5 %</td></tr></tbody></table>

For bus line A, the actual and simulation delay shares appear to follow similar pattern over a number of periods. During morning peak hours, the share of *in advance* and *on-time travel* buses is slightly overestimated. Next, a similar trend is observed during inter-peak, evening

peak and off-peak hours, which account for more than two-thirds of total trips. The biggest difference is observed during AM off-peak hours, with a significant overestimation of the share of *in advance* buses (+11 %), and consequently a slight underestimation of the shares of *on-time* and *delayed* buses.

For bus line B, moderate differences are observed compared to line A. A very similar trend is observed, between the two shares during the morning peak hours, and to a lesser extent during inter-peak and evening peak hours. Concerning the late evening shares, one can observe a significant overestimation of *in advance* buses (+8 %). On the other hand, few buses run during this late period with approximately less than a tenth of total trips.

For bus line C, the simulation and actual shares essentially follow a similar trend during evening rush hours and, to a lesser extent during inter-peak hours. Furthermore, larger differences can be observed
<figure><img src="image_26.png" /><figcaption>Fig. 24. Bus punctuality shares for the bus lines studied, based on the second on-time measurement. Expressing 3-min and Expressing 5-min refer respectively to the resulting shares of scenarios SK₃ and SK₅.</figcaption></figure>

<figure><img src="image_27.png" /><figcaption>Fig. 25. Punctuality shares of buses, per time slot of the day for the three lines studied.</figcaption></figure>

during AM peak and off-peak hours, and PM off-peak hours, with the share of buses in advance being overestimated by +5 % in evening off-peak hours, by +8 % in morning off-peak hours, and strongly underestimated in morning rush hours with around +10 %.

In short, the results presented in this section give us some insights into the extent to which the simulation is able to reproduce reality. For the two main bus lines studied (A and B), the shares obtained show a

similar trend during the two peak hours and during the inter-peak hours, which represents more than three quarters of the total trips, for the two bus lines. On the other hand, more significant differences are observed during off-peak hours in the morning for line A, and during off-peak hours in the evening for line B. Concerning bus line C, it can be observed that the differences in sharers are considerably greater compared to lines A and B, due to a certain overestimation on the share
of in advance buses, particularly during morning periods.

# 6. Discussion and perspectives

In this section, a discussion of the obtained results, including actual and simulated travel times and bus punctuality, will be discussed in depth. Next, the feature selection process along with an in-depth discussion of simulation parameters will be presented. Finally, the limitations and perspectives of the proposed work will be given.

## 6.1. Discussion: results

In this first section, the resulting travel times and bus punctuality will be analyzed. Furthermore, a discussion on the impacts of bus recovery time, holding and stop-skipping strategies will be detailed.

### 6.1.1. Analysis of travel times

From the results at hand, the theoretical travel times seem to differ slightly from the observed travel times, these differences can be explained by: on the one hand, the theoretical arrival times at control points are rounded to nearest minute (hh:mm:ss); on the other hand, on the last route segments, bus drivers will often tend to reach the terminal stop as quickly as possible. Furthermore, differences travel times between routes on the same line can be explained by a different level of demand and traffic in each direction. For line B, another explanation for the observed travel times differences is plausible, with the *Retour* route has more segments than *Aller* route. Furthermore, route segments B-A1 and B-A2, together with B-R4 to B-R7 follow the same road but in opposite directions, this latter split of the *Retour* route, resulting in a higher number of control points, generates some of the significant differences due to shorter segments and therefore shorter travel times. For line C, the differences are insignificant in both directions, can be explained by the fact that the bus routes of line C are much shorter compared to A and B.

The simulated travel times provided by ML models ($f_1, f_2$ and $f_3$), are highly resembled and statistically similar to the actual travel times. For line C, the differences across all route segments are negligible, averaging a few seconds per route segment. These similarities can be explained by the nature of travel time variability, which to some extent corresponds to probabilistic distributions regardless of the features selected to train ML models. In sum, ML models with stop time as feature ($f_1$ and $f_2$) perform better than those built by only considering bus delay at the stop ($f_3$). Moreover, ML models with only the stop time as a feature ($f_1$) relatively match the best actual travel times. As expected, bus travel times are highly dependent on the time of the day. In contrast, travel times seem less sensitive to the bus delay, whether the bus is late or not.

Overall, ML travel times are on average more accurate compared to the travel times estimated by probabilistic distributions, according to both goodness of fit metrics MAE and RMSE, during morning and evening peak hours. Furthermore, the travel times obtained during the evening rush hours appear more accurate than those during morning hours, which may be explained by a better fitting of evening travel times using probabilistic distributions compared to the morning travel times.

### 6.1.2. Analysis of bus punctuality

#### 6.1.2.1. *Impacts of bus recovery time strategies.*
The share of bus punctuality, resulting from the first two simulated scenarios ($S_1$ and $S_2$) appear to closely follow the actual shares according to the first metric, $S_2$ seems to significantly outperform $S_1$ according to the second metric, in which $S_1$, greatly overestimates the share of buses on time. This could be explained by the applied recovery time strategy, in which the latter simulation parameter was set to a minimum of two minutes in $S_1$, while it was adjusted in $S_2$. The choice of recovery time strategy will be discussed in depth below.

#### 6.1.2.2. *Impacts of bus holding strategies.*
The second set of scenarios aims to investigate the impacts of bus holding strategies on bus punctuality (see Table 10). The shares obtained according to the first and second metric, show significant similarities between NC and $SH_3$, with both on average more accurate than those from $SH_0$ and HH. In contrast, $SH_0$ seems to strongly underestimate the share of early buses, while HH tends to overestimate the share of late buses. According to third metric, NC seems to adequately match the actual shares of lines A and B, and on average outperform $SH_3$ and HH. On the other hand, HH shares correspond well to the actual shares of line C, slightly outperforming NC and $SH_3$. In contrast, the $SH_0$ corresponds the least to the actual shares, for the three studied lines. The bus holding strategies implemented, including holding criteria will be discussed in detail below.

#### 6.1.2.3. *Impacts of stop-skipping strategy.*
The third set of implemented scenarios (SK3 and SK5) aims to investigate the impacts of bus stop-skipping strategy on bus punctuality. The observed slight decrease of the shares of moderately and significantly late buses is the result of applying the stop-skipping strategy. Overall, this strategy has a negligible impact on bus punctuality shares, which can be explained by: 1) a low share of buses moderately and significantly late, and 2) the impact of the defined skipping criteria, which will be discussed in detail below.

#### 6.1.2.4. *Simulation vs actual: off-peak and peak hours.*
Besides, the simulation results fit well with the actual data, in terms of bus punctuality during the two peak hours and during the inter-peak hours, for lines A and B and, to a lesser extent, for line C, in which the differences are more significant, due to an overestimation of the share of *in advance* buses, particularly during morning periods. These larger differences may be explained by the nature of line C, with a low number of route segments (two segments per route) and by relatively short travel times with on average 10 min for line C compared to 30 min for line A and 23 min for line B.

On the other hand, the simulation model shows a certain difficulty in adjusting the shares of bus delay during off-peak hours in the morning and evening. This lack might be caused by an overestimation of the share of early buses mainly due to a low number of trips during off-peak hours, and therefore a smaller dataset to train and build more accurate ML models. An interesting observation needs to be pointed. For line A, a very high share of early buses is observed during evening off-peak hours, which can be explained by a lower traffic level, fewer passengers, which implies short dwell times and therefore shorter travel times.

## 6.2. Discussion: feature selection

The training dataset is mainly derived from actual bus AVL data, with bus vehicle and trip information such as bus stop time, bus stop delay and segment travel time, in addition to other derived information such as day of the week and season. Analyzing the resulting mean decrease in Gini score, stop time and stop delay appear to be the two most relevant features. Additionally, an in-depth analysis of the input features was then conducted, showing a higher $R^2$ score for ML models built with stop time and stop delay compared to those built with weather features. The selected features corresponding to the information of a bus during a trip, which make the ML models relatively simple to implement. On the other hand, training a ML model with few features will likely result in an underfit model. Additionally, the ML models implemented in this study are designed to predict the travel time of a bus independently on its fleet. By including information about buses ahead will potentially enhance the quality of trained models. In contrast, some features may be highly correlated with each other due to the temporal nature of the data, which can lead to multicollinearity issues.
## 6.3. Discussion: simulation parameters

In this section, the simulation parameters including bus recovery time strategies, scheduled-based, headway-based and stop-skipping holding criteria will be discussed in depth.

### 6.3.1. Bus recovery time

Another point to discuss is the choice of bus recovery time strategy. Sufficient recovery time should be built into the schedule to ensure that the delays encountered during one trip do not carry over on subsequent trips. In this study, two strategies $S_1$ and $S_2$ were implemented, with a fixed minimum recovery time up to two minutes in $S_1$ and an adjusted recovery time estimated from the observed recovery times in $S_2$.

Applying a fixed recovery time, as with $S_1$, is relatively simple to implement without requiring other corresponding data. On the other hand, the implementation of a short duration straightforward at the end of the trip will likely have an impact on the bus departure time, only if the arriving bus was very late, otherwise the next bus departure will be at the predefined time. From the departure delays observed in Figure 15, one can see that buses will likely depart one minute early and up to two minutes late than the scheduled time. $S_2$ attempted to overcome the limitations of $S_1$, by adjusting the departure delay based on those observed, which improved the quality of simulated bus punctuality. However, the application of this second approach has a major drawback, as it will require historical data, which not always available, limiting its application to other cases studies.

### 6.3.2. Holding criteria

#### 6.3.2.1. Scheduled-based holding.
In this section, the value of holding criteria $s$ will be discussed with emphasis on the three variants of the scheduled-based holding strategy. With $s = 0$ ($SH_0$), buses were held whenever were ahead of schedule. This strategy seems too theoretical and does not reflect actual bus trends, leading to near ignorance on the share of early buses. Bus drivers tend to tolerate being to some extent ahead of schedule and will therefore not systematically hold up the bus each time they are early. In fact, bus operators considered a bus up to a minute early to be on time (Arhin et al., 2014). With $s = +\infty$ ($NC$), no holding control strategy was applied. Surprisingly, the obtained bus punctuality shares seem to correspond best to the actual shares, with a slight overestimation of buses ahead. Once again, this trend may be explained by a certain tolerance of buses ahead to a certain extent on the lines studied. In order to understand to what extent the holding criteria implemented correspond to the actual criteria, in other words, how early does a bus to be to be held? A third holding strategy was implemented with $s = 3$ min ($SH_3$). The results show that even with more than three minutes ahead, some of in advance buses were not held.

#### 6.3.2.2. Headway-based holding.
The headway-based holding strategy *HH* was implemented with $\alpha = 0.8$, which implies that a bus will only be held if its headway is more than 20% shorter than the scheduled headway. For lines *A* and *B*, *HH* seems to slightly underestimate and overestimate the shares of *ahead* and *late* buses respectively. Explanations may be as follows: 1) *HH* aims to maintain the predifined headway between running buses and, with the holding control of a bus heavily dependent on the preceding bus, an early or delayed departure of the bus will have a subsequent impact on the following buses; 2) In this study, service reliability is evaluated according to punctuality measures, more suited to scheduled-based strategies than to headway-based strategies, since it evaluates one vehicle at a time, and in which maintaining the headway may not be enough to guarantee the punctuality of buses. For line *C*, *HH* presents the best fit with actual shares, which can be explained by: 1) short travel times, on average 10–12 min; 2) The holding control is carried out at a single timing point, since the first and last points correspond to the origin and destination stops respectively; 3)

Line *C* has a relatively large headway compared its route travel time (6/10 min versus 12 min), and therefore buses will mostly not be held.

### 6.3.3. Stop-skipping criteria

In this section, the value of stop-skipping criteria $D_{max}$ will be discussed. The stop-skipping will only occur if the bus delay at the control point is greater than $D_{max}$, and if not, the skipping will not performed. This can lead to additional delays, particularly if the bus continues to run slower than than expected, and subsequently further skipped stops, which likely explains the relative slight variation in the share of moderately and significantly late buses, for line *A* and *B*. For line *C*, with only one skipping stop and relatively short travel times, stop-skipping may not occur, which may explain the no change in terms of $SK_3$ and $SK_5$ shares compared to *NC*.

Another factor that we need to highlight is the performed dwell time, in which alighting is allowed, while boarding is denied. Besides, from the available data, the dwell time is considered as part of the running time, which may to some extent overestimate the simulated travel times and thus generate a slight delay for buses.

## 6.4. Limitations and perspectives

This study has potential weaknesses and limitations. First, relying on data from just three bus lines in the same city might not fully capture the complexity and variability of urban public transportation systems. Additionally, the model's effectiveness in other contexts, cities, or transportation modes may not have been thoroughly explored or validated. Although this study attempted to validate the simulation framework based on ML results, it will be interesting to extend its scope to other cities by conducting simulation scenarios with a larger number of bus lines.

The dataset for bus travel time prediction is somewhat poor, including only trip information. Therefore, it will be interesting to enrich the training dataset, with information about traffic and road characteristics such as: speed limit and traffic lights, in order to: on the one hand, to improve the accuracy of ML prediction and, on the other hand, to extend the scope of the application to other bus lines. Another limitation needs to be pointed out regarding the resilience and adaptability of the framework. The simulation scenarios were carried out with emphasis on working day, it will be interesting to carry out other scenarios with emphasis on week-ends and public holidays. In addition, incorporating more diverse dataset, including special event, will test the resilience and adaptability of the framework.

The results of this study put into perspective certain points on which it will be interesting to work. 1) Running a simulation model with ML models can be time-consuming, especially for bus lines with a large number of segments. Thus, in order to overcome this drawback, several ML-Simulation coupling strategies, can be implemented. 2) Another direction for future research concerns the findings of this study. Although previous analyzes have shown that the simulation model produces good results according to a number of bus on-time metrics, it is also interesting to investigate the extent to which operational recovery time influences bus on-time performance. 3) One further step could be the application of different strategies to eliminate delay occurrences, which can be useful to bus operators to improve service regularity.

## 7. Conclusions

This paper sheds light on the evaluation of public transportation performance, which constitutes an important issue facing operators. In this paper, we aim to propose a validation framework integrating microscopic simulation model with ML techniques. We introduced a hybrid approach combining regression trees trained with three feature sets for travel times prediction and probabilistic distributions to accurately estimate travel time variability to feed simulation model. Furthermore, a case study on three bus lines was carried out, in which
two scenarios ($S_1$ and $S_2$) and six scenarios ($SH_0$, $SH_3$, NC, HH, SK$_3$ and SK$_5$) were implemented, respectively, to study the impacts of recovery times and bus control strategies on bus punctuality. The results show that the travel times simulated using ML were very resembled, with $f_1$ adequately matching the best actual travel times with minor differences. They also show that the proposed hybrid approach combining ML with probabilistic distributions can better estimate travel time variability than probabilistic distributions on average.

A first analysis of bus punctuality was carried out, showing a good match between the actual and simulated shares resulting of $S_1$ with a fixed minimum recovery time and $S_2$ with an adjusted recovery time derived from actual data, with overall $S_2$ more precise than $S_1$. A second analysis was carried out. Surprisingly NC with no holding control seems to correspond best to actual shares, while $SH_0$ seems too theoretical and does not reflect actual bus trends, leading to high underestimation of bus shares ahead. HH with headway-based holding strategy, presented the best fit with actual shares for line C. A third analysis was carried out, showing a limited impact of the implemented bus stop-skipping strategy on the bus punctuality, due to a low share of late buses and the limitation of stop-skipping to buses very late. We also conduct an error analysis on the punctuality of simulated buses depending on the time of the day. The simulated buses follow a similar trend during inter-peak and peak hours, and to a lesser extent during the off-peak hours, in which lines A and B seem to correspond better to actual shares compared to C. The results show that bus travel times seem strongly dependent on the time of the day and, on the other hand, seem less sensitive to bus delays. Furthermore, the departure delay at the originating terminal as well as the applied holding control strategy are the two most influential factors on bus punctuality.

The main objective of the SIMULBUS project, funding this work, was to be able to develop microscopic simulation models of bus lines in order to test the influence of different factors, such as an evolution of control policies, bus plannings, fleet size management or road setups for example. In order to enhance the validation process of such models, a first step, developed here, was to be able to simulate the historical behavior of the bus lines, based on actual data retrieved in the past few months. The coupling of ML and multi-agent simulation techniques shows good results which make the objective of the prediction models plausible. Obviously, everything here was developed for bus lines, but the real parameter of this study is constituted of the different transport modes sharing the same characteristics than the buses: several instances of vehicles running on the same paths, scheduled by predefined

timetables. Considering the variability of structure and behavior of the bus lines across the world, it seems on the other hand impossible to apply the results on one line on another one. Therefore, depending on the characteristics of each bus line or transport mode, the proposed framework described in this work can be applied or adjusted to each new line under study.

Further research should involve further testing with a larger number of lines and different sets of control points to evaluate the performance of the proposed framework. Additionally, actual data can be enriched by including information on traffic and road characteristics. This will improve the quality of the input data and improve the effectiveness and robustness of the ML model. The results of this study benefit bus operators to assist them in decision-making, by providing appropriate simulation parameters that correspond to a large extent to the actual situation, and thus realize new scenarios, in actual and similar contexts, based on validated results. We believe this paper is of interest especially for the practitioners in the field, as it provides in-depth insight into how ML and public transport simulation model can be integrated into the same framework, to improve quality simulation results.

### CRediT authorship contribution statement

Mounira Harzallah: Writing – review & editing, Funding acquisition. Maroua Nouiri: Writing – review & editing, Supervision. Olivier Cardin: Writing – review & editing, Supervision, Methodology. Younes Delhoum: Writing – original draft, Methodology, Investigation.

### Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

### Acknowledgement

The authors thank the A1 Statistiques company and its operator for making the data available. They also thank Vincent Leblond of the Tellae company and François Queyroi and Gabriel Ferrettini of DUKe, a research team of the Laboratory of Digital Sciences of Nantes (LS2N), for their help for structuring and analysing the data. They also thank the region of Pays de la Loire for SIMULBUS grant.

## Appendix A. Data Section

<table><caption>**Table A.1**
A sample of combined data, including scheduled and actual time attributes.</caption><thead><tr><th>date</th><th>vehicle id</th><th>trip id</th><th>stop id</th><th>stop sequence</th><th>scheduled arrival time</th><th>scheduled departure time</th><th>real arrival time</th><th>real departure time</th></tr></thead><tbody><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-1883</td><td>1</td><td>07:41:00</td><td>07:41:00</td><td>07:41:22</td><td>07:41:22</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-1884</td><td>2</td><td>07:42:20</td><td>07:42:20</td><td>07:43:21</td><td>07:43:21</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-982</td><td>7</td><td>07:47:00</td><td>07:47:00</td><td>07:48:10</td><td>07:48:10</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-983</td><td>8</td><td>07:47:53</td><td>07:47:53</td><td>07:49:12</td><td>07:49:12</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-990</td><td>16</td><td>07:56:00</td><td>07:56:00</td><td>07:58:15</td><td>07:58:15</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-991</td><td>17</td><td>07:57:06</td><td>07:57:06</td><td>07:58:52</td><td>07:58:52</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-994</td><td>20</td><td>08:01:00</td><td>08:01:00</td><td>08:02:07</td><td>08:02:07</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-995</td><td>21</td><td>08:01:50</td><td>08:01:50</td><td>08:02:49</td><td>08:02:49</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-998</td><td>23</td><td>08:04:00</td><td>08:04:00</td><td>08:05:38</td><td>08:05:38</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-2105</td><td>24</td><td>08:05:14</td><td>08:05:14</td><td>08:06:14</td><td>08:06:14</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-1004</td><td>30</td><td>08:10:20</td><td>08:10:20</td><td>08:10:59</td><td>08:10:59</td></tr><tr><td>20200916</td><td>VCL-255</td><td>TRP-21022</td><td>STP-1005</td><td>31</td><td>08:11:00</td><td>08:11:00</td><td>08:11:10</td><td>08:11:10</td></tr></tbody></table>
<caption>**Table A.2**</caption>

A sample dataset aggregated at section level, including: section stops and index, scheduled and real times, and derived travel times.

<table><caption>**Table A.3**</caption><thead><tr><th>from stop</th><th>to stop</th><th>section index</th><th>scheduled from stop time</th><th>scheduled to stop time</th><th>scheduled section travel time</th><th>real from stop time</th><th>real to stop time</th><th>real section travel time</th></tr></thead><tbody><tr><td>STP-1883</td><td>STP-1884</td><td>1</td><td>07:41:00</td><td>07:42:20</td><td>00:01:20</td><td>07:41:22</td><td>07:43:21</td><td>00:01:59</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>STP-982</td><td>STP-983</td><td>7</td><td>07:47:00</td><td>07:47:53</td><td>00:00:53</td><td>07:48:10</td><td>07:49:12</td><td>00:01:02</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>STP-990</td><td>STP-991</td><td>16</td><td>07:56:00</td><td>07:57:06</td><td>00:01:06</td><td>07:58:15</td><td>07:58:52</td><td>00:00:37</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>STP-994</td><td>STP-995</td><td>20</td><td>08:01:00</td><td>08:01:50</td><td>00:00:50</td><td>08:02:07</td><td>08:02:49</td><td>00:00:42</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>STP-998</td><td>STP-2105</td><td>23</td><td>08:04:00</td><td>08:05:14</td><td>00:01:14</td><td>08:05:38</td><td>08:06:14</td><td>00:00:36</td></tr><tr><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td><td>...</td></tr><tr><td>STP-1004</td><td>STP-1005</td><td>30</td><td>08:10:20</td><td>08:11:00</td><td>00:00:40</td><td>08:10:59</td><td>08:11:10</td><td>00:00:11</td></tr></tbody></table>

A sample dataset aggregated at segment level.

<table><thead><tr><th>from stop</th><th>to stop</th><th>segment index</th><th>scheduled from stop time</th><th>scheduled to stop time</th><th>scheduled segment travel time</th><th>real from stop time</th><th>real to stop time</th><th>real segment travel time</th></tr></thead><tbody><tr><td>STP-1883</td><td>STP-982</td><td>1</td><td>07:41:00</td><td>07:47:00</td><td>00:06:00</td><td>07:41:22</td><td>07:48:10</td><td>00:06:48</td></tr><tr><td>STP-982</td><td>STP-990</td><td>2</td><td>07:47:00</td><td>07:56:00</td><td>00:09:00</td><td>07:48:10</td><td>07:58:15</td><td>00:10:05</td></tr><tr><td>STP-990</td><td>STP-994</td><td>3</td><td>07:56:00</td><td>08:01:00</td><td>00:05:00</td><td>07:58:15</td><td>08:02:07</td><td>00:03:52</td></tr><tr><td>STP-994</td><td>STP-998</td><td>4</td><td>08:01:00</td><td>08:04:00</td><td>00:03:00</td><td>08:02:07</td><td>08:05:38</td><td>00:03:31</td></tr><tr><td>STP-998</td><td>STP-1005</td><td>5</td><td>08:04:00</td><td>08:11:00</td><td>00:07:00</td><td>08:05:38</td><td>08:11:10</td><td>00:05:32</td></tr></tbody></table>

## B. Validation of Travel Times

<caption>**Table B.1**</caption>

Reported average travel times (in seconds) as well as derived relative metric $\Delta$, for each route segment of bus line A.

<table><caption>**Table B.2**</caption><thead><tr><th>segment ID</th><th>segment stops</th><th>TT<sub>theo</sub></th><th>TT<sub>actual</sub></th><th>TT<sub>f1</sub></th><th>TT<sub>f2</sub></th><th>TT<sub>f3</sub></th><th>Δ<sub>t,a</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>A-A1</td><td>STP-1006 → STP-1013</td><td>434</td><td>429</td><td>408</td><td>395</td><td>402</td><td>-1%</td><td>-5%</td><td>-8%</td><td>-6%</td></tr><tr><td>A-A2</td><td>STP-1013 → STP-1017</td><td>188</td><td>121</td><td>123</td><td>131</td><td>124</td><td>-35%</td><td>1%</td><td>8%</td><td>2%</td></tr><tr><td>A-A3</td><td>STP-1017 → STP-1022</td><td>371</td><td>420</td><td>422</td><td>421</td><td>432</td><td>13%</td><td>1%</td><td>0%</td><td>3%</td></tr><tr><td>A-A4</td><td>STP-1022 → STP-1030</td><td>584</td><td>603</td><td>617</td><td>619</td><td>636</td><td>3%</td><td>2%</td><td>3%</td><td>5%</td></tr><tr><td>A-A5</td><td>STP-1030 → STP-1846</td><td>597</td><td>419</td><td>450</td><td>470</td><td>487</td><td>-30%</td><td>7%</td><td>12%</td><td>16%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>A-R1</td><td>STP-1883 → STP-982</td><td>383</td><td>423</td><td>423</td><td>421</td><td>420</td><td>10%</td><td>0%</td><td>0%</td><td>-1%</td></tr><tr><td>A-R2</td><td>STP-982 → STP-990</td><td>620</td><td>629</td><td>648</td><td>637</td><td>636</td><td>1%</td><td>3%</td><td>1%</td><td>1%</td></tr><tr><td>A-R3</td><td>STP-990 → STP-994</td><td>322</td><td>253</td><td>262</td><td>261</td><td>275</td><td>-21%</td><td>3%</td><td>3%</td><td>9%</td></tr><tr><td>A-R4</td><td>STP-994 → STP-998</td><td>247</td><td>226</td><td>230</td><td>229</td><td>235</td><td>-8%</td><td>2%</td><td>1%</td><td>4%</td></tr><tr><td>A-R5</td><td>STP-998 → STP-1005</td><td>392</td><td>333</td><td>342</td><td>346</td><td>362</td><td>-15%</td><td>3%</td><td>4%</td><td>9%</td></tr></tbody></table>

Reported average travel times (in seconds) as well as derived relative metric $\Delta$, for each route segment of bus line C.

<table><thead><tr><th>segment ID</th><th>segment stops</th><th>TT<sub>theo</sub></th><th>TT<sub>actual</sub></th><th>TT<sub>f1</sub></th><th>TT<sub>f2</sub></th><th>TT<sub>f3</sub></th><th>Δ<sub>t,a</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>C-A1</td><td>STP-2521 → STP-2525</td><td>280</td><td>282</td><td>275</td><td>276</td><td>277</td><td>1%</td><td>-3%</td><td>-2%</td><td>-2%</td></tr><tr><td>C-A2</td><td>STP-2525 → STP-2526</td><td>323</td><td>343</td><td>333</td><td>334</td><td>336</td><td>6%</td><td>-3%</td><td>-3%</td><td>-2%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>C-R1</td><td>STP-2526 → STP-2527</td><td>288</td><td>353</td><td>347</td><td>345</td><td>349</td><td>22%</td><td>-2%</td><td>-2%</td><td>-1%</td></tr><tr><td>C-R2</td><td>STP-2527 → STP-2440</td><td>297</td><td>226</td><td>223</td><td>223</td><td>225</td><td>-24%</td><td>-1%</td><td>-1%</td><td>0%</td></tr></tbody></table>
<caption>**Table B.3**</caption>

Reported average travel times (in seconds) as well as Δ values, for each route segment of bus line B.

<table><caption>**Table B.4**</caption><thead><tr><th>segment ID</th><th>segment stops</th><th>TT<sub>theo</sub></th><th>TT<sub>actual</sub></th><th>TT<sub>f1</sub></th><th>TT<sub>f2</sub></th><th>TT<sub>f3</sub></th><th>Δ<sub>t,a</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>B-A1</td><td>STP-2349 → STP-1380</td><td>530</td><td>560</td><td>569</td><td>568</td><td>560</td><td>6%</td><td>2%</td><td>2%</td><td>0%</td></tr><tr><td>B-A2</td><td>STP-1380 → STP-1390</td><td>588</td><td>568</td><td>587</td><td>578</td><td>586</td><td>-3%</td><td>3%</td><td>2%</td><td>3%</td></tr><tr><td>B-A3</td><td>STP-1390 → STP-1394</td><td>297</td><td>249</td><td>254</td><td>255</td><td>296</td><td>-16%</td><td>2%</td><td>2%</td><td>19%</td></tr><tr><td>B-A4</td><td>STP-1394 → STP-2408</td><td>480</td><td>433</td><td>454</td><td>453</td><td>486</td><td>-10%</td><td>5%</td><td>5%</td><td>12%</td></tr><tr><td>B-A5</td><td>STP-2408 → STP-2746</td><td>75</td><td>92</td><td>80</td><td>79</td><td>80</td><td>22%</td><td>-13%</td><td>-14%</td><td>-13%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>B-R1</td><td>STP-2747 → STP-2348</td><td>75</td><td>114</td><td>110</td><td>112</td><td>110</td><td>52%</td><td>-4%</td><td>-2%</td><td>-3%</td></tr><tr><td>B-R2</td><td>STP-2348 → STP-1411</td><td>449</td><td>417</td><td>422</td><td>417</td><td>420</td><td>-7%</td><td>1%</td><td>0%</td><td>1%</td></tr><tr><td>B-R3</td><td>STP-1411 → STP-1415</td><td>270</td><td>231</td><td>238</td><td>237</td><td>240</td><td>-15%</td><td>3%</td><td>3%</td><td>4%</td></tr><tr><td>B-R4</td><td>STP-1415 → STP-1420</td><td>224</td><td>286</td><td>296</td><td>291</td><td>295</td><td>28%</td><td>4%</td><td>2%</td><td>3%</td></tr><tr><td>B-R5</td><td>STP-1420 → STP-1424</td><td>444</td><td>315</td><td>327</td><td>334</td><td>365</td><td>-29%</td><td>4%</td><td>6%</td><td>16%</td></tr><tr><td>B-R6</td><td>STP-1424 → STP-1379</td><td>251</td><td>353</td><td>366</td><td>370</td><td>359</td><td>41%</td><td>4%</td><td>5%</td><td>2%</td></tr><tr><td>B-R7</td><td>STP-1379 → STP-834</td><td>206</td><td>169</td><td>174</td><td>223</td><td>174</td><td>-18%</td><td>3%</td><td>32%</td><td>3%</td></tr></tbody></table>

Reported actual average travel times *TT<sub>actual</sub>* as well as the relative differences Δ*f*₁, Δ*f*₂ and Δ*f*₃, for bus line A, over morning and evening peak-hours.

<table><caption>**Table B.5**</caption><thead><tr><th rowspan="2">segment ID</th><th colspan="4">Morning peak hours</th><th colspan="4">Evening peak hours</th></tr><tr><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>A-A1</td><td>513</td><td>-10%</td><td>-14%</td><td>-22%</td><td>422</td><td>-3%</td><td>-6%</td><td>-3%</td></tr><tr><td>A-A2</td><td>132</td><td>1%</td><td>2%</td><td>-3%</td><td>125</td><td>1%</td><td>-1%</td><td>-1%</td></tr><tr><td>A-A3</td><td>481</td><td>-1%</td><td>0%</td><td>-8%</td><td>433</td><td>-5%</td><td>-4%</td><td>1%</td></tr><tr><td>A-A4</td><td>653</td><td>-1%</td><td>0%</td><td>-3%</td><td>619</td><td>-1%</td><td>0%</td><td>4%</td></tr><tr><td>A-A5</td><td>500</td><td>10%</td><td>11%</td><td>13%</td><td>433</td><td>1%</td><td>3%</td><td>13%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>A-R1</td><td>418</td><td>-3%</td><td>-4%</td><td>0%</td><td>472</td><td>1%</td><td>1%</td><td>-10%</td></tr><tr><td>A-R2</td><td>628</td><td>-2%</td><td>-4%</td><td>0%</td><td>706</td><td>4%</td><td>4%</td><td>-7%</td></tr><tr><td>A-R3</td><td>248</td><td>1%</td><td>-3%</td><td>6%</td><td>271</td><td>3%</td><td>8%</td><td>13%</td></tr><tr><td>A-R4</td><td>231</td><td>-1%</td><td>-4%</td><td>1%</td><td>253</td><td>0%</td><td>2%</td><td>-9%</td></tr><tr><td>A-R5</td><td>349</td><td>-5%</td><td>-2%</td><td>0%</td><td>349</td><td>2%</td><td>3%</td><td>14%</td></tr></tbody></table>

Reported actual average travel times *TT<sub>actual</sub>* as well as the relative differences Δ*f*₁, Δ*f*₂ and Δ*f*₃, for bus line C, over morning and evening peak-hours.

<table><caption>**Table B.6**</caption><thead><tr><th rowspan="2">segment ID</th><th colspan="4">Morning peak hours</th><th colspan="4">Evening peak hours</th></tr><tr><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>C-A1</td><td>284</td><td>-3%</td><td>-3%</td><td>-3%</td><td>300</td><td>-6%</td><td>-6%</td><td>-7%</td></tr><tr><td>C-A2</td><td>342</td><td>-3%</td><td>-5%</td><td>-2%</td><td>395</td><td>-5%</td><td>-4%</td><td>-14%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>C-R1</td><td>373</td><td>-1%</td><td>-2%</td><td>-7%</td><td>396</td><td>-4%</td><td>-4%</td><td>-10%</td></tr><tr><td>C-R2</td><td>231</td><td>-3%</td><td>-3%</td><td>-4%</td><td>233</td><td>0%</td><td>-1%</td><td>-2%</td></tr></tbody></table>

Reported actual average travel times *TT<sub>actual</sub>* as well as the relative differences Δ*f*₁, Δ*f*₂ and Δ*f*₃, for bus line B, over morning and evening peak-hours.

<table><thead><tr><th rowspan="2">segment ID</th><th colspan="4">Morning peak hours</th><th colspan="4">Evening peak hours</th></tr><tr><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th><th>TT<sub>actual</sub></th><th>Δ<sub>f1</sub></th><th>Δ<sub>f2</sub></th><th>Δ<sub>f3</sub></th></tr></thead><tbody><tr><td>B-A1</td><td>573</td><td>-2%</td><td>-3%</td><td>-2%</td><td>625</td><td>-2%</td><td>-2%</td><td>-10%</td></tr><tr><td>B-A2</td><td>617</td><td>0%</td><td>-2%</td><td>-5%</td><td>635</td><td>-1%</td><td>-2%</td><td>-7%</td></tr><tr><td>B-A3</td><td>305</td><td>-9%</td><td>-9%</td><td>-3%</td><td>313</td><td>-1%</td><td>-1%</td><td>-4%</td></tr><tr><td>B-A4</td><td>548</td><td>2%</td><td>-3%</td><td>-6%</td><td>450</td><td>1%</td><td>1%</td><td>9%</td></tr><tr><td>B-A5</td><td>105</td><td>-14%</td><td>-15%</td><td>-24%</td><td>103</td><td>-27%</td><td>-28%</td><td>-24%</td></tr><tr><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>B-R1</td><td>99</td><td>-5%</td><td>0%</td><td>10%</td><td>131</td><td>-4%</td><td>-2%</td><td>-16%</td></tr><tr><td>B-R2</td><td>413</td><td>-1%</td><td>-3%</td><td>1%</td><td>490</td><td>-2%</td><td>-3%</td><td>-14%</td></tr><tr><td>B-R3</td><td>284</td><td>1%</td><td>0%</td><td>-14%</td><td>260</td><td>1%</td><td>1%</td><td>-4%</td></tr><tr><td>B-R4</td><td>310</td><td>0%</td><td>-2%</td><td>-5%</td><td>312</td><td>0%</td><td>-1%</td><td>-6%</td></tr><tr><td>B-R5</td><td>342</td><td>8%</td><td>9%</td><td>14%</td><td>352</td><td>2%</td><td>2%</td><td>9%</td></tr><tr><td>B-R6</td><td>375</td><td>-2%</td><td>-1%</td><td>-4%</td><td>384</td><td>-1%</td><td>-2%</td><td>-8%</td></tr><tr><td>B-R7</td><td>188</td><td>-3%</td><td>4%</td><td>-8%</td><td>179</td><td>-1%</td><td>4%</td><td>-4%</td></tr></tbody></table>
## References

Abdelaty, H., Al-Obaidi, A., Mohamed, M., Farag, H.E., 2021. Machine learning prediction models for battery-electric bus energy consumption in transit. Transp. Res. Part D: Transp. Environ. 96, 102868.

Abdi, A., Amrit, C., 2021. A review of travel and arrival-time prediction methods on road networks: classification, challenges and opportunities. PeerJ Comput. Sci. 7, e689.

Abkowitz, M.D., Lepofsky, M., 1990. Implementing headway-based reliability control on transit routes. J. Transp. Eng. 116 (1), 49-63.

Al-Deek, H., Emam, E.B., 2006. New methodology for estimating reliability in transportation networks with degraded link capacities. J. Intell. Transp. Syst. 10 (3), 117-129.

Altinkaya, M., Zontul, M., 2013. Urban bus arrival time prediction: a review of computational models. Int. J. Recent Technol. Eng. (IJRTE) 2 (4), 164-169.

Arhin, S.A., Noel, E.C., Dairo, O., 2014. Bus stop on-time arrival performance and criteria in a dense urban area. Int. J. Traffic Transp. Eng. 3 (6), 233-238.

Ashwini, B., Sumathi, R., Sudhira, H., 2022. Bus travel time prediction: a comparative study of linear and non-linear machine learning models. vol. 2161 Journal of Physics: Conference Series. IOP Publishing.

B.A. Kumar, L. Vanajakshi, S. Subramanian, Pattern-based bus travel time prediction under heterogeneous traffic conditions, Transportation Research Record, Transportation Research Board, National Research Council, Washington, DC 2024.

Baek, J., Sohn, K., 2016. Deep-learning architectures to forecast bus ridership at the stop and stop-to-stop levels for dense and crowded bus networks. Appl. Artif. Intell. 30 (9), 861-885.

Bai, C., Peng, Z.-R., Lu, Q.-C., Sun, J., 2015. Dynamic bus travel time prediction models on road with multiple bus routes. Comput. Intell. Neurosci. 2015, 63.

Balaji, P., German, X., Srinivasan, N., 2010. Urban traffic signal control using reinforcement learning agents. IET Intell. Transp. Syst. 4 (3), 177-188.

M. Balmer, M. Rieser, K. Meister, D. Charypar, N. Lefebvre, K. Nagel, Matsim-t: Architecture and simulation studies. In: Multi-agent systems for traffic and transportation engineering, IGI Global, 2009, 57-78.

M. Behrisch, L. Bieker, J. Erdmann, D. Krajzewicz, Sumo-simulation of urban mobility: an overview. In: Proceedings of SIMUL 2011, The Third International Conference on Advances in System Simulation, ThinkMind, 2011.

B. Büchel, F. Corman, Modelling probability distributions of public transport travel time components. In: 18th Swiss Transport Research Conference (STRC 2018), STRC, 2018.

Büchel, B., Corman, F., 2020. Review on statistical modeling of travel time variability for road-based public transport. Front. Built Environ. 6, 70.

Cathey, F., Dailey, D.J., 2003. A prescription for transit arrival/departure prediction using automatic vehicle location data. Transp. Res. Part C: Emerg. Technol. 11 (3-4), 241-264.

Cats, O., Larijani, A.N., Koutopoulos, H.N., Burghout, W., 2011. Impacts of holding control strategies on transit performance: bus simulation model analysis. Transp. Res. Rec. 2216 (1), 51-58.

Ceder, A., 2024. Public transit planning and operation: Theory, Modeling and practice. Elsevier, Oxford.

Chabanet, S., El-Haouzi, H.B., Thomas, P., 2021. Coupling digital simulation and machine learning metamodel based on an active learning approach in industry 4.0 context. Comput. Ind. 133, 103529.

Chen, X., Hellinga, B., Chang, C., Fu, L., 2015. Optimization of headways with stop-skipping control: a case study of bus rapid transit system. J. Adv. Transp. 49 (3), 385-401.

M. Chen, X. Liu, E. Bachman, Analyze bus delay severity using ordered probit model 2024.

Chen, M., Liu, X., Xia, J., Chien, S.I., 2004. A dynamic bus-arrival time prediction model based on apc data. Comput. -Aided Civ. Infrastruct. Eng. 19 (5), 364-376.

Chen, C., Wang, H., Yuan, F., Jia, H., Yao, B., 2020. Bus travel time prediction based on deep belief network with back-propagation. Neural Comput. Appl. 32, 10435-10449.

Q. Cheng, Y. Liu, W. Wei, Z. Liu, Analysis and forecasting of the day-to-day travel demand variations for large-scale transportation networks: A deep learning approach, Transportation Analytics Contest, Tech. Rep.2024.

Chien, S.I.-J., Ding, Y., Wei, C., 2002. Dynamic bus arrival time prediction with artificial neural networks. J. Transp. Eng. 128 (5), 429-438.

L. Chu, S. Oh, W. Recker, Adaptive kalman filter based freeway travel time estimation, In: 84th TRB Annual Meeting, Washington DC, 2005.

C. Corporation, TransModeler Traffic Simulation Software, (https://www.caliper.com/transmodeler/default.htm), [Online; accessed 30-August-2023](2023).

Dai, Z., Ma, X., Chen, X., 2019. Bus travel time modelling using gps probe and smart card data: a probabilistic approach considering link travel time and station dwell time. J. Intell. Transp. Syst. 23 (2), 175-190.

W. Dong, J. Li, R. Yao, C. Li, T. Yuan, L. Wang, Characterizing driving styles with deep learning, 2024.arXiv preprint arXiv:1607.03611.

Durán-Hormazábal, E., Tirachini, A., 2016. Estimation of travel time variability for cars, buses, metro and door-to-door public transport trips in santiago, chile. Res. Transp. Econ. 59, 26-39.

K. Dwivedi, K. Biswarajan, A. Sethi, Drowsy driver detection using representation learning. In: 2014 IEEE international advance computing conference (IACC), IEEE, 2014, 995-999.

Ellis, K., Godbole, S., Marshall, S., Lanckriet, G., Staudenmayer, J., Kerr, J., 2014. Identifying active travel behaviors in challenging environments using gps, accelerometers, and machine learning algorithms. Front. Public Health 2, 36.

El-Tantawy, S., Abdulhai, B., Abdelgawad, H., 2013. Multiagent reinforcement learning for integrated network of adaptive traffic signal controllers (marlin-atsc):

methodology and large-scale application on downtown toronto. IEEE Trans. Intell. Transp. Syst. 14 (3), 1140-1150.

Emam, E.B., Al-Deek, H., 2006. Using real-life dual-loop detector data to develop new methodology for estimating freeway travel time reliability. Transp. Res. Rec. 1959 (1), 140-150.

Errampalli, M., Okushima, M., Akiyama, T., 2005. Microscopic simulation model considering public transport policy. J. East. Asia Soc. Transp. Stud. 6, 2718-2733.

M. Fellendorf, P. Vortisch, Validation of the microscopic traffic flow model vissim in different real-world situations. In: transportation research board 80th annual meeting, vol. 11, 2001.

M. Fouladgar, M. Parchami, R. Elmasri, A. Ghaderi, Scalable deep traffic flow neural networks for urban traffic congestion prediction. In: 2017 International Joint Conference on Neural Networks (IJCNN), IEEE, 2017, 2251-2258.

Fu, L., Liu, Q., Calamai, P., 2003. Real-time optimization model for dynamic scheduling of transit operations. Transp. Res. Rec. 1857 (1), 48-55.

G. Fusco, C. Colombaroni, L. Comelli, N. Isaenko, Short-term traffic predictions on large urban traffic networks: Applications of network-based machine learning models and dynamic traffic assignment models. In: 2015 International Conference on Models and Technologies for Intelligent Transportation Systems (MT-ITS), IEEE, 2015, 93-101.

Gal, A., Mandelbaum, A., Schnitzler, F., Senderovich, A., Weidlich, M., 2017. Traveling time prediction in scheduled transportation with journey segments. Inf. Syst. 64, 266-280.

W. Genders, S. Razavi, Using a deep reinforcement learning agent for traffic signal control, 2024.arXiv preprint arXiv:1611.01142.

Geurts, P., Irrthum, A., Wehenkel, L., 2009. Supervised learning with decision tree-based methods in computational and systems biology. Mol. Biosyst. 5 (12), 1593-1605.

Gkotsalitis, K., Cats, O., 2021. At-stop control measures in public transport: Literature review and research agenda. Transp. Res. Part E: Logist. Transp. Rev. 145, 102176.

Google, General Transit Feed Specification, (https://gtfs.org/), [Online; accessed 31-August-2023] (2023).

R. Hadsell, A. Erkan, P. Sermanet, M. Scoffier, U. Muller, Y. LeCun, Deep belief net learning in a long-range vision system for autonomous off-road driving. In: 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, IEEE, 2008, 628-633.

Harsha, M., Mulangi, R.H., Kumar, H.D., 2020. Analysis of bus travel time variability using automatic vehicle location data. Transp. Res. Procedia 48, 3283-3298.

He, P., Jiang, G., Lam, S.-K., Tang, D., 2018. Travel-time prediction of bus journey with multiple bus trips. IEEE Trans. Intell. Transp. Syst. 20 (11), 4192-4205.

Huang, W., Song, G., Hong, H., Xie, K., 2014. Deep architecture for traffic flow prediction: Deep belief networks with multitask learning. IEEE Trans. Intell. Transp. Syst. 15 (5), 2191-2201.

Hueper, J., Dervisoglu, G., Muralidharan, A., Gomes, G., Horowitz, R., Varaiya, P., 2009. Macroscopic modeling and simulation of freeway traffic flow. IFAC Proc. Vol. 42 (15), 112-116.

B. Huval, T. Wang, S. Tandon, J. Kiske, W. Song, J. Pazhayampallil, M. Andriluka, P. Rajpurkar, T. Migimatsu, R. Cheng-Yue, et al., An empirical evaluation of deep learning on highway driving, 2024.arXiv preprint arXiv:1504.01716.

R. Jeong, R. Rilet, Bus arrival time prediction using artificial neural network model, In: Proceedings. The 7th international IEEE conference on intelligent transportation systems (IEEE Cat. No. 04TH8749), IEEE, 2004, 988-993.

Jindal, A., Aujla, G.S., Kumar, N., Chaudhary, R., Obaidat, M.S., You, I., 2018. Sedative: Sdn-enabled deep learning architecture for network traffic control in vehicular cyber-physical systems. IEEE Netw. 32 (6), 66-73.

Jordan, W.C., Turnquist, M.A., 1979. Zone scheduling of bus routes to improve service reliability. Transp. Sci. 13 (3), 242-268.

Junyouz, Z., Fanyu, W., Shufeng, W., 2018. Application of support vector machine in bus travel time prediction. Int. J. Syst. Eng. 2 (1), 21-25.

Ke, J., Zheng, H., Yang, H., Chen, X.M., 2017. Short-term forecasting of passenger demand under on-demand ride services: a spatio-temporal deep learning approach. Transp. Res. Part C: Emerg. Technol. 85, 591-608.

Kieu, L.-M., Bhaskar, A., Chung, E., 2015. Public transport travel-time variability definitions and monitoring. J. Transp. Eng. 141 (1), 04014068.

Kieu, L.-M., Ngoduy, D., Malleson, N., Chung, E., 2019. A stochastic schedule-following simulation model of bus routes. Transp. B: Transp. Dyn. 7 (1), 1588-1610.

Kumar, B.A., Jairam, R., Arkatkar, S.S., Vanajakshi, L., 2019. Real time bus travel time prediction using k-nn classifier. Transp. Lett. 11 (7), 362-372.

Kumar, V., Kumar, B.A., Vanajakshi, L.D., Subramanian, S.C., 2014. Comparison of model based and machine learning approaches for bus arrival time prediction. Tech. Rep.

C.-T. Lam, B. Ng, S.H. Leong, Prediction of bus arrival time using real-time on-line bus locations. In: 2019 IEEE 19th International Conference on Communication Technology (ICCT), IEEE, 2019, 473-478.

V. Leblond, L. Desbureaux, V. Bielecki, A new agent-based software for designing and optimizing emerging mobility services: Application to city of rennes, In: European Transport Conference 2020, 2020.

Li, J., 2017. Bus arrival time prediction based on random forest. 2017 5th International Conference on Frontiers of Manufacturing Science and Measuring Technology (FMSMT 2017). Atlantis Press, pp. 867-872.

Li, L., Lv, Y., Wang, F.-Y., 2016. Traffic signal timing via deep reinforcement learning. IEEE/CAA J. Autom. Sin. 3 (3), 247-254.

Y. Li, J.-M. Rousseau, M. Gendreau, Real-time scheduling on a transit bus route: a 0-1 stochastic programming model 2024.

Lin, W.-H., Zeng, J., 1999. Experimental study of real-time bus arrival time prediction with gps data. Transp. Res. Rec. 1666 (1), 101-109.
L. Liu, R.-C. Chen, A mrt daily passenger flow prediction model with different combinations of influential factors, In: 2017 31st International Conference on Advanced Information Networking and Applications Workshops (WAINA), IEEE, 2017, 601-605.

Liu, G., Wirasinghe, S., 2001. A simulation model of reliable schedule design for a fixed transit route. J. Adv. Transp. 35 (2), 145-174.

Liu, Z., Yan, Y., Qu, X., Zhang, Y., 2013. Bus stop-skipping scheme with random travel time. Transp. Res. Part C: Emerg. Technol. 35, 46-56.

P.A. Lopez, M. Behrisch, L. Bieker-Walz, J. Erdmann, Y.-P. Flötteröd, R. Hilbrich, L. Lücken, J. Rummel, P. Wagner, E. Wießner, Microscopic traffic simulation using sumo, In: 2018 21st international conference on intelligent transportation systems (ITSC), IEEE, 2018, 2575-2582.

Low, V.J.M., Khoo, H.L., Khoo, W.C., 2022. Quantifying bus travel time variability and identifying spatial and temporal factors using burr distribution model. Int. J. Transp. Sci. Technol. 11 (3), 563-577.

Ma, Z., Ferreira, L., Mesbah, M., Zhu, S., 2016. Modeling distributions of travel time variability for bus operations. J. Adv. Transp. 50 (1), 6-24.

D.J. Morgan, A microscopic simulation laboratory for advanced public transportation system evaluation, Ph.D. thesis, Massachusetts Institute of Technology (2002).

Mori, U., Mendiburu, A., Álvarez, M., Lozano, J.A., 2015. A review of travel time estimation and forecasting for advanced traveller information systems. Transp. A: Transp. Sci. 11 (2), 119-157.

Nguyen, H., Cai, C., Chen, F., 2017. Automatic classification of traffic incident's severity using machine learning approaches. IET Intell. Transp. Syst. 11 (10), 615-623.

Noland, R.B., Polak, J.W., 2002. Travel time variability: a review of theoretical and empirical issues. Transp. Rev. 22 (1), 39-54.

M.S.B. Othman, S.L. Keoh, G. Tan, Efficient journey planning and congestion prediction through deep learning, In: 2017 International Smart Cities Conference (ISC2), IEEE, 2017, 1-6.

M.S.B. Othman, G. Tan, Machine learning aided simulation of public transport utilization, In: 2018 IEEE/ACM 22nd International Symposium on Distributed Simulation and Real Time Applications (DS-RT), IEEE, 2018, 1-2.

R. Padmanabhan, L. Vanajakshi, S.C. Subramanian, Estimation of bus travel time incorporating dwell time for apts applications, In: 2009 IEEE Intelligent vehicles symposium, IEEE, 2009, 955-959.

J. Pan, X. Dai, X. Xu, Y. Li, A self-learning algorithm for predicting bus arrival time based on historical data model, In: 2012 IEEE 2nd International Conference on Cloud Computing and Intelligence Systems, Vol. 3, IEEE, 2012, 1112-1116.

D. Panovski, T. Zaharia, Real-time public transportation prediction with machine learning algorithms, In: 2020 IEEE International Conference on Consumer Electronics (ICCE), IEEE, 2020, 1-4.

Patnaik, J., Chien, S., Bladikas, A., 2004. Estimation of bus arrival times using apc data. J. Public Transp. 7 (1), 1-20.

Pe Liashchynskyi, Pa Liashchynskyi, Grid search, random search, genetic algorithm: a big comparison for NAS 2024.

Polson, N.G., Sokolov, V.O., 2017. Deep learning for short-term traffic flow prediction. Transp. Res. Part C: Emerg. Technol. 79, 1-17.

Polus, A., 1979. A study of travel time and reliability on arterial routes. Transportation 8 (2), 141-151.

Ramakrishna, Y., Ramakrishna, P., Lakshmanan, V., Sivanandan, R., 2008. Use of gps probe data and passenger data for prediction of bus transit travel time. Transp. Land Use, Plan., Air Qual. 124-133.

Reich, T., Budka, M., Hulbert, D., 2021. Bus journey simulation to develop public transport predictive algorithms. Soft Comput. Lett. 3, 100029.

Rodriguez, J., Koutopoulos, H.N., Wang, S., Zhao, J., 2023. Cooperative bus holding and stop-skipping: a deep reinforcement learning framework. Transp. Res. Part C: Emerg. Technol. 155, 104308.

Serin, F., Alisan, Y., Erturkler, M., 2022. Predicting bus travel time using machine learning methods with three-layer architecture. Measurement 198, 111103.

Shafizadeh-Moghadam, H., Asghari, A., Tayyebi, A., Taleai, M., 2017. Coupling machine learning, tree-based and statistical models with cellular automata to simulate urban growth. Comput., Environ. Urban Syst. 64, 297-308.

Shahhosseini, M., Hu, G., Huber, I., Archontoulis, S.V., 2021. Coupling machine learning and crop modeling improves crop yield prediction in the us corn belt. Sci. Rep. 11 (1), 1-15.

A. Shalaby, A. Farhan, Bus travel time prediction model for dynamic operations control and passenger information systems, Transportation Research Board 2024 2.

Shalit, N., Fire, M., Ben-Elia, E., 2023. A supervised machine learning model for imputing missing boarding stops in smart card data. Public Transp. 15 (2), 287-319.

Shoman, M., Aboah, A., Adu-Gyamfi, Y., 2020. Deep learning framework for predicting bus delays on multiple routes using heterogenous datasets. J. Big Data Anal. Transp. 2, 275-290.

Smith, L., Beckman, R., Baggerly, K., 1995. Transims: transportation analysis and simulation system. Tech. Rep.

Soysal, M., Schmidt, E.G., 2010. Machine learning algorithms for accurate flow-based network traffic classification: evaluation and comparison. Perform. Eval. 67 (6), 451-467.

Strathman, J.G., Dueker, K.J., Kimpel, T., Gerhart, R., Turner, K., Taylor, P., Callas, S., Griffin, D., Hopper, J., 1999. Automated bus dispatching, operations control, and service reliability: baseline analysis. Transp. Res. Rec. 1666 (1), 28-36.

Susilawati, S., Taylor, M.A., Somenahalli, S.V., 2013. Distributions of travel time variability on urban roads. J. Adv. Transp. 47 (8), 720-736.

Taylor, M., 1982. Travel time variability—the case of two public modes. Transp. Sci. 16 (4), 507-521.

Taylor, M.A., 2017. Fosgerau's travel time reliability ratio and the burr distribution. Transp. Res. Part B: Methodol. 97, 50-63.

T. Thianniwet, S. Phosaard, W. Pattara-Atikom, Classification of road traffic congestion levels from gps data using a decision tree algorithm and sliding windows, In: Proceedings of the world congress on engineering, vol. 1, 2009, 1-3.

Tongal, H., Booij, M.J., 2018. Simulation and forecasting of streamflows using machine learning models coupled with base flow separation. J. Hydrol. 564, 266-282.

Uno, N., Kurauchi, F., Tamura, H., Iida, Y., 2009. Using bus probe data for analysis of travel time variability. J. Intell. Transp. Syst. 13 (1), 2-15.

Van Oort, N., 2011. Service reliability and urban public transport design. Citeseer.

Vandebona, U., Richardson, A.J., 1986. Effect of checkpoint control strategies in a simulated transit operation. Transp. Res. Part A: Gen. 20 (6), 429-436.

Z. Wall, D. Dailey, An algorithm for predicting the arrival time of mass transit vehicles using automatic vehicle location data, Master's thesis, Citeseer (1998).

Wang, J., Sun, L., 2020. Dynamic holding control to avoid bus bunching: A multi-agent deep reinforcement learning framework. Transp. Res. Part C: Emerg. Technol. 116, 102661.

Wu, J., Wang, Y., Du, B., Wu, Q., Zhai, Y., Shen, J., Zhou, L., Cai, C., Wei, W., Zhou, Q., 2021. The bounds of improvements toward real-time forecast of multi-scenario train delays. IEEE Trans. Intell. Transp. Syst. 23 (3), 2445-2456.

Z. Xiong, Y. Cui, Z. Liu, Y. Zhao, M. Hu, J. Hu, Evaluating explorative prediction power of machine learning algorithms for materials discovery using k-fold forward cross-validation 2020.

Yan, X., Xu, K., Feng, W., Chen, J., 2021. A rapid prediction model of urban flood inundation in a high-risk area coupling machine learning and numerical simulation approaches. Int. J. Disaster Risk Sci. 12 (6), 903-918.

Yang, M., Chen, C., Wang, L., Yan, X., Zhou, L., 2016. Bus arrival time prediction using support vector machine with genetic algorithm. Neural Netw. World 26 (3), 205.

Yang, Y., Heppenstall, A., Turner, A., Comber, A., 2020. Using graph structural information about flows to enhance short-term demand prediction in bike-sharing systems. Comput., Environ. Urban Syst. 83, 101521.

Yang, Q.I., Koutopoulos, H.N., 1996. A microscopic traffic simulator for evaluation of dynamic traffic management systems. Transp. Res. Part C: Emerg. Technol. 4 (3), 113-129.

Yin, T., Zhong, G., Zhang, J., He, S., Ran, B., 2017. A prediction model of bus arrival time at stops with multi-routes. Transp. Res. Procedia 25, 4623-4636.

Yu, B., Lam, W.H., Tam, M.L., 2011. Bus arrival time prediction at bus stop with multiple routes. Transp. Res. Part C: Emerg. Technol. 19 (6), 1157-1170.

Yu, B., Wang, H., Shan, W., Yao, B., 2018. Prediction of bus travel time using random forests based on near neighbors. Comput. -Aided Civ. Infrastruct. Eng. 33 (4), 333-350.

X. Zhang, Z. Liu, Prediction of bus arrival time based on gps data: Taking no. 6 bus in huangdao district of qingdao city as an example, In: 2019 Chinese Control Conference (CCC), IEEE, 2019, 8789-8794.

Zhao, Z., Chen, W., Wu, X., Chen, P.C., Liu, J., 2017. Lstm network: a deep learning approach for short-term traffic forecast. IET Intell. Transp. Syst. 11 (2), 68-75.