Research Article  Open Access
J. L. Curzel, R. Lüders, K. V. O. Fonseca, M. O. Rosa, "Temporal Performance Analysis of Bus Transportation Using Link Streams", Mathematical Problems in Engineering, vol. 2019, Article ID 6139379, 18 pages, 2019. https://doi.org/10.1155/2019/6139379
Temporal Performance Analysis of Bus Transportation Using Link Streams
Abstract
Performance analysis of transport systems usually requires transfer of passengers between trains, cars, or buses, among others. This paper proposes a methodology for modeling and analysis of bus transportation using link streams. Link streams are particular cases of stream graphs whose cliques provide information about available time intervals for connecting buses. These cliques are obtained by algorithms of the literature with good scalability. They are used to quantify performance indicators as transfer time, bunching, congestion, and number of transferred passengers. The results are obtained for realworld data of a bus terminal in the city of Curitiba, Brazil. They reveal important issues regarding transfer delays and available capacity for transport. The proposed performance analysis can be used to support urban planners on planning and improving transport operation.
1. Introduction
The operation of urban transport systems has been considered in the literature using different approaches [1–6]. These works model and simulate transport systems, particularly for planning schedules to improve system efficiency. The authors of [1, 2] developed a computational framework for modeling a transport system based on planning, station design, integration, and access and evaluated their effects on system performance. In [3] a parallel operation management system has been developed to detect the number of passengers at stations as well as traffic flow and queuing length of vehicles in private lanes. This system provides information to deal with transportation management by improving and optimizing emergency situations or rescheduling vehicles based on conditions detected in videos of traffic. In [4–6] simulation and intelligent support based on artificial intelligence techniques are used to help control center operators to take strategic decisions about a fleet of buses in an urban network.
Recently, transportation companies have invested in technologies for online supervision of operations and resources [7, 8]. For instance, a twoway communication in [7] between bus drivers and operators allows solutions using negotiationbased strategies. In [8] a global positioning system (GPS) is integrated with wireless communication to track vehicles in real time. All these approaches utilize information and communication technology (ICT) to predict, simulate, and control different situations in transport system. In this sense, the available online information can be used for planning, controlling, and coordinating transit of buses in a reactive manner. However, formal methodologies are still necessary to analyze and detect issues in advance.
This paper aims to analyze multiple connections in a bus terminal. By means of an innovative performance analysis method based on link streams [9], we model a transport system of multiple bus line connections in a bus terminal (or hub). Link streams are particular cases of stream graphs which are graphs whose nodes and edges (links) have a time to live. A link stream is a stream graph in which only edges have a time to live; i.e., nodes are permanent. A detailed introduction of stream graphs and link streams can be found in [10]. Links streams have been used in many applications. For instance, nodes and edges in a graph may represent individuals connected by a phone call which persists for a given period of time. The authors of [11] use link streams to capture dynamics of contacts between individuals. They consider activities as link streams to predict the number of links that occur during a given period of time and show that a combination of structural and temporal characteristics of the link stream leads to performance improvements. In [12] a trace of realworld interactions between individuals captured with RFID sensors technology was collected in a high school in France during approximately 8 days of 2012. The study of links created and destroyed during these days has revealed new patterns of human interaction in a different time scale. Another important issue in link streams is computing cliques. A clique is a set of nodes such that any 2combination of these nodes is connected by an edge. A first algorithm to compute maximal cliques in a link stream was proposed in [9] and implemented in [13]. Recently, it was improved in [14, 15] by adapting the BronKerbosch algorithm. Moreover, the authors developed an algorithm that detects maximal time intervals during which interactions occur. This notion was initially introduced by [9] using instantaneous link streams and extended to link streams with duration by [16].
Our main contribution is to define a set of procedures to represent arrivals and departures of buses in a link stream representation whose cliques provide the necessary information to compute performance indicators as transfer times, bunching, congestion, and number of passengers transferred between buses. To the best of our knowledge, this is the first time link streams are used to model and analyze transport systems.
The paper is organized as follows. Section 2 presents the background on link streams and cliques. Section 3 shows how link streams and cliques model a bus transportation system and defines indicators for the performance analysis. Section 4 presents the case study of Curitiba’s public transportation with conclusions in Section 5.
2. Link Streams
A simple undirected graph is an ordered pair with a set of nodes and a set of links with for , and means a set of unordered pairs of nodes). In this case, nodes and are linked together in .
Stream graphs and link streams are graphs with time information. A comprehensive study on stream graphs and link streams can be found in [10]. A stream graph is a tuple such that is a time interval, is a set of temporal nodes, and is a set of links. If then and . This means that nodes and and a link exist at time . A stream graph is then a graph whose nodes and links exist at a given time . If then all nodes exist for all times in , and is a link stream.
Links streams are used to model interactions between individuals or objects over time as meetings in social networks or email exchanges [12]. In this paper, we use link streams for modeling transport systems because nodes (bus stops) do exist during the whole period of time considered for analysis. However, links between nodes only occur at given time intervals during which passengers are transferred.
In a simple undirected graph , a clique of is a set of nodes which are connected to each other; i.e., for all , there exists a link . A clique is maximal if there is no other clique such that .
A similar definition is used for a stream graph . According to [10], a clique of is a subset of such that all pairs of nodes involved in are linked in . Because nodes in stream graphs are not present all the time in general, it is necessary to distinguish compact cliques which are subsets of whose nodes are linked all together during a given time interval. This is the case for link streams which are compact stream graphs [10] as all nodes are present within . Therefore, a (compact) clique in a link stream is given by a time interval and a subset of nodes which are linked all together during this time interval. Similarly, a clique is maximal if there is no other clique such that . Figure 1 shows examples of cliques in a link stream .
An algorithm has been proposed in [17] to detect maximal cliques in link streams. It is used here to compute operational performance metrics of bus transport in a terminal as described in the following. It is also important to note that can be a continuous or discrete time interval without loss of generality [10].
3. Modeling Bus Transportation Systems with Link Streams
Based on bus timetables we identify time intervals during which buses are in the terminal for boarding and alighting of passengers. Several buses arrive at and departure from the terminal within this time interval, and a common time interval can be built to characterize the transfer time between connecting buses. This relationship between buses at the terminal is the basic information we need to build a link stream and compute maximal cliques according to Figure 2. It is important to emphasize that the relationship between buses of a terminal is established since a bus is detected at the terminal in a given time interval. Link streams capture only the relationship between buses present in the terminal at the same time. The GPS data of buses (in the case of online monitoring systems) is only used to filter the time intervals when a bus is at the terminal as explained in Section 4.
The first two steps of Figure 2 generate Tables 1 and 2. They represent an example of arrivals and departures of buses for lines 1, 2, and 3 during a time interval of 30 minutes in the terminal. The data set of arrivals and departures is shown in Table 1.


The information of Table 1 is then used to build Table 2 which contains only minutes when more than one bus is in the terminal. According to Table 2, there are buses from lines 1 and 2 in minutes 3 to 4, 16 to 18, and 26 to 30. A similar reasoning is made for lines 1 and 3. Actually, all three lines have buses in the terminal during minutes 26 and 27. This is exactly the information of link stream needed to compute cliques. The information of Table 2 is then used as input to the algorithm of computing cliques.
The corresponding link stream can be visualized in Figure 3 using a computational tool [18]. Nodes in Figure 3 correspond to buses of lines 1 to 3 (vertical axis), and edges connect two buses in the terminal at the same time (horizontal axis). The correspondence between the information of Table 2 and the visualization of Figure 3 is straightforward.
The maximal cliques shown in Table 3 are then obtained by the algorithm presented in [17]. The clique is the largest time interval having buses from lines 1, 2, and 3 all together in the terminal. There is no other maximal clique in L involving 3 nodes (lines), but there are other maximal cliques with less than three nodes as or , for instance.

It should be noted that the time interval of clique is the intersection of intervals of cliques and . It means that cliques are useful for both local analysis involving transfers between two lines and global analysis with more than two lines as detailed below.
A clique is the right structure to capture all relationships between buses in the terminal from a common structure (link stream) that contains only information about a 2combination of buses during a given time interval. A clique provides information about not only which buses are present in the terminal but also during which time interval. It is important to emphasize that computing cliques is computationally intensive, and some of the performance metrics proposed below could be obtained with less complex structures (congestion, for example) than cliques. However, cliques are computed only once for a given set of lines and time horizon. The proposed performance measures are then filtered from clique information as explained below.
3.1. Performance Metrics
The performance metrics we are interested in for evaluating a transport system are (i) time interval for transfers between two particular lines, (ii) bunching of buses of the same line, (iii) congestion of buses in the terminal, and (iv) number of passengers who are successfully transferred between local and express lines. These performance metrics can be computed using link streams and cliques as follows.
3.1.1. Time Interval for Transfers
Cliques provide the necessary information about how many and during how much time buses from different lines are in the terminal. They involve the computation of the maximal common interval during which a meeting of one or more buses occurs and allows transfer of passengers. Table 4 shows cliques for all eight lines operating in the terminal between 7:00 and 7:30 am. This is the basic information necessary for the performance analysis accomplished here.

The transfer times between lines 1 and 2, for instance, are obtained from Table 4 in a twostep procedure. The first step consists of selecting cliques of Table 4 containing only lines 1 and 2 as shown in Table 5.

The second step obtains maximal nonoverlapping time intervals containing nodes . According to Table 6, these intervals are , , and with durations of 2, 3, and 4 min, respectively. They represent the corresponding transfer times for these lines.

This procedure can also be done for lines 1 and 3, or any set of lines. In other words, transfer times for connecting buses can be obtained by filtering cliques computed for all bus lines to select lines of interest and nonoverlapping time intervals.
3.1.2. Bunching
Bunching is a phenomenon characterized by a concentration of buses in a single area. It is detected here when the headway between two consecutive buses of the same line is less than 1 minute. Usually it occurs due to delays in departures or arrivals of buses and reduces the transport efficiency. When bunching occurs, buses eventually leave the terminal almost empty or completely full of passengers. At certain times of the day (peak traffic of buses or passengers), it is observed that bunching events occur due to a large number of passengers to be transported or high frequency of buses. This effect causes performance issues as poor quality of service and excessive waiting time as pointed out by [19–22].
In this work, bunching detection is done by distinguishing buses of the same line and assuming that link streams are built using a sampling time rate of 1 min or less. This way, headways equal to or less than 1 min can be captured. A bunching event is then identified by taking cliques of the same line buses.
For instance, the link stream shown in Figure 4 considers only buses of line 1 in the terminal from 7:00 to 7:30 am with different labels assigned to different buses. Labels begin with a line number followed by two digits of the bus number. For instance, label 104 means bus 04 of line 1. Similarly, labels 107, 109, 111, 120, 121, 126, and 130 represent eight different buses of line 1.
According to Figure 4, buses 104, 120, and 126 are in the terminal at 7:08 am causing a bunching event in line 1 during 1 min. All these bunching events are detected by maximal cliques as shown in Table 7. The greatest bunching events are composed by buses 111, 120, and 126 during 4 min between 7:09 and 7:12 am (in bold).

3.1.3. Congestion Analysis
The congestion analysis is obtained by the number of buses that are in the terminal at a given time interval. This information is also given by cliques by using different labels for different buses of the same line and computing the maximum number of buses at each time. Table 8 shows the number of buses in the terminal minute by minute from 7:00 to 7:30 am by taking the cliques of Table 4 but marking buses of the same line with different labels. This information is used to monitor the terminal occupation as detailed in Section 4.

3.1.4. Number of Transferred Passengers
In order to estimate the number of passengers that are successfully transferred from local lines to the express line it is necessary to have a model for passengers’ mobility. This model should take into account the time interval necessary for transferring of passengers between bus stops (required transfer time) as well as the time interval during which buses are currently in the terminal (available transfer time).
The required transfer time of passengers is based on three components: (i) passengers’ boarding time, (ii) passengers’ alighting time, and (iii) walking time necessary for passengers moving between alighting and boarding stops inside the terminal.
The walking time is computed from the distance between dropoff and boarding areas divided by the standard walking speed of passengers. According to [23], the average reference for walking speed is 1.20 m/s for pedestrians. Boarding and alighting times per passenger depend on bus model [24] as shown in Table 9.

The transfer time tt is then given by the boarding time tb plus walking time tw and alighting time ta as shown inThe total number of passengers transferred in a given time interval is computed in four steps:
(i) Identify the time interval when the express line is in the terminal
(ii) Identify all local lines that are able to transfer passengers to the express line within this time interval
(iii) Calculate the required transfer time
(iv) Verify how many passengers have been transferred within the available transfer time
The first step is performed from maximal cliques involving all local and express lines in a given time interval as shown in Table 10 for the express line 1 (buses 101 and 110).

The goal of step 1 is to find the time interval during which the express line is at the platform and the corresponding transfer time available for each local line arriving within this time interval. According to Table 10, line 1 (101 in boldface) starts a transfer at time 6:02 and ends at time 6:07 (the first five rows of Table 10). It means that line 1 (using bus number 101) is available for transfer during a total time of 6 min (interval ). Moreover, three events representing arrivals of local lines occur at times 6:02, 6:04, and 6:05 (second column of Table 10 in boldface). They are important to compute how much time each local bus has to transfer passengers until express line departure. This is captured in step 2 according to Table 11.
