Parallel Multiple Tabu Search for Multiobjective Urban Transit Scheduling Problem

Urban Transit Scheduling Problem (UTSP) is concerned with determining reliable transit schedules for buses and drivers by considering the preferences of both passengers and operators based on the demand and the set of transit routes. This paper considered a UTSP which consisted of frequency setting, timetabling, and simultaneous bus and driver scheduling. A mixed integer multiobjective model was constructed to optimize the frequency of the routes by minimizing the number of buses, passenger’s waiting times and overcrowding. The model was further extended by incorporating timeslots in determining the frequencies during peak and off-peak hours throughout the time period. The timetabling problem studied two different scenarios which reflected the preferences of passengers and operators to assign the bus departure times at the first and last stop of a route. A set covering model was then adopted to minimize the number of buses and drivers simultaneously. A parallel tabu search algorithm was proposed to solve the problem by modifying the initialization process and incorporating intensification and diversification approaches to guide the search effectively from the different feasible domain in finding optimal solutions with lesser computational effort. Computational experiments were conducted on the well-known Mandl’s and Mumford’s benchmark networks to assess the effectiveness of the proposed algorithm. Competitive results are reported based on the performance metrics, as compared to other algorithms from the literature.


Introduction
Urban public transportation is an alternative mode for travelers in major cities to commute between destinations. It is undeniable that the evolution of the public transportation system is based on its demand and current technologies. It is also an efficient approach to enhance the ridership and combat the threat posed by motor vehicles, mainly traffic congestion and air pollution. The development of public transportation service must be consistent with the requirement of both passengers and operators in order to create a sustainable system. Some of the major disadvantages of public transportation are the unavailability of the service at desirable times, inconvenience while traveling, and inaccurate transit schedules.
The study on constructing effective schedules for urban public transportation can be formulated as an optimization problem which is known as the Urban Transit Scheduling Problem (UTSP). UTSP can be divided into a few sub-problems that consist of frequency setting, timetabling, vehicle scheduling and crew scheduling since it is usually difficult to solve them simultaneously due to its numerous objectives and decision variables [1]. The determination of headways or frequency serves as tactical planning to satisfy the irregular demand that changes according to time, days and seasons. This process is important to maintain the quality of transit service, because the unexpected arrival and departure times can affect the service reliability and also cause congestion in the transit. Besides, providing higher frequency is redundant at some time periods which reduce the efficiency of the transit service. Usually, the timetables are constructed based on the frequency predetermined while considering the synchronization at transfer nodes. Meanwhile, the vehicles and crews are assigned according to the industry regulation and resources available.
Due to the complexity of the problem, metaheuristic approaches have been widely applied to find near-optimal solutions in a reasonable time. However, the parallel algorithm is seldom being implemented in urban transportation problem which may due to the complication involved in how and where to do parallelism. The parallelization of an algorithm can be done in several ways depending on the problem structure and computer hardware. It is important to consider the type of parallelism to reduce cost and avoid unnecessary communication during data transfer which might increase the execution time for some cases.
Apart from the genetic algorithm (GA), tabu search (TS) and simulated annealing (SA), multiple tabu search (MTS) is an emerging approach in solving the combinatorial optimization problem [2]. However, to the best of our knowledge, MTS has not been applied in solving multiobjective UTSP to date. In this paper, a parallel MTS (PMTS) with systematic neighborhood selection approach is developed by modifying the initialization process and incorporating intensification and diversification procedures to produce optimal solutions. The proposed algorithm is verified and validated using well-known Mandl's and Mumford's benchmark datasets. This paper extends the previous sequential methodology in V. Uvaraja [3] to study multiobjective UTSP using parallel implementation. The main contribution of this paper is the development of parallel MTS algorithm in reducing the computational time of solving the UTSP.
This paper is organized as follows. In Section 2, the review of the related work in this study is presented. The model formulations for frequency optimization as well as bus and driver scheduling are described in Section 3. In Section 4, the development of PMTS algorithm for UTSP is proposed. The computational experiments and results for benchmark datasets are reported in Section 5. Section 6 gives the conclusions and recommendations for future research.

Literature Review
Over the years, the evolution of operational research and the development of computing infrastructure have created high interest in tackling UTSP. Various optimization algorithms are proposed to search for the optimal solution effectively. Nevertheless, the ability of the algorithm to obtain optimal or near-optimal solutions in polynomial time for hard optimization problem such as UTSP is still very challenging. Review of the existing approaches in UTSP reveals the shortage of advanced optimization algorithm in handling the large and complex problems [4] [5] [6] [7]. Moreover, the deficiency of multiobjective approaches to solving UTSP is also reflected in the analysis. Due to the scope of this paper, only the study of multiobjective UTSP and the applications of parallel algorithms in public transportation design are discussed.
A multiobjective metaheuristic approach based on TS and GA is developed by [8] to solve bus driver scheduling problem and produce Pareto optimal solutions. Multi-objective set covering model is used to define the problem by including some measures of service quality needed by different companies in the objective function. GRASP has been used as a subroutine for the metaheuristic.
A TS with three types of neighborhood selection and intensification strategies for a certain number of iterations are applied to find the best solution. On the other hand, [9] studied the transit route network design using a parallel genetic algorithm (PGA). It includes the determination of a set of transit routes and the associated frequencies that minimize the sum of the operating cost and the generalized travel cost. Two PGA models are proposed which based on the global parallel virtual machine and global message passing interface.
Bus transit network is optimized by developing a model with parallel ant colony optimization [10] [11]. The objectives are to achieve minimum transfers and maximum passenger flow per unit length with line length and non-linear rate as constraints. A heuristic pheromone distribution rule is applied, by which ants' path searching activities are altered based on the objective value. A parallel auction algorithm is proposed by [12] for bus rescheduling problem (BRP) that occur when a trip is disrupted. A single-depot BRP model is built to minimize the operating and delay cost. The sequential and parallel auction algorithms are developed to solve the BRP. The combined forward and backward auction itera-Journal of Computer and Communications tions are used with the implementation of ϵ-scaling to improve the performance of the auction algorithm.
Reference [13] presented a model for optimizing bus route headways that maximize the service quality and minimize the operational cost. The relative weights between the passenger cost and operator cost are determined by an integrated approach. A PGA based on coarse-grain strategy and a local search based on TS are incorporated to improve the performance of the GA. While [14] investigated the transit network design of large urban area (City of Rome) with the objectives to minimize the sum of operator cost, user cost and penalty measuring the level of unsatisfied demand. The contributions of the paper are the introduction of flow concentration procedure in a wider route generation process and the application of transit network design methodology to a large real-life urban area. A methodology is proposed by [15] to create Pareto solutions for minimizing the number of vehicles and drivers to satisfy a given schedule. Multiple block subsets are chosen from a set of candidate vehicle blocks by improved multiobjective GA with departure-time adjustment procedure. While [16] investigated a multi-objective re-synchronizing of bus timetable problem that characterized by headway-sensitive passenger demand, uneven headways, service regularity, flexible synchronization and involvement of existing bus timetable. A multi-objective optimization model is derived to make a trade-off between the total number of passengers benefited by smooth transfers and the maximal deviation from the departure times of the existing timetable.
The problem of vehicle scheduling in urban public transport systems taking into account the vehicle-type with different capacity is studied by [17]. A heuristic-based on the multi-objective cellular evolutionary algorithm is proposed to solve the problem considering restrictions of government agencies. The objectives of minimizing the total operating cost, waiting time and congestion in the bus and maximizing the quality of service are considered to produce a set of non-dominated solutions that represent different assignments of vehicles to cover the trips of a specific route. While [18] presented an optimization-based approach to simultaneously solve the network design and the frequency setting phases on the context of railway rapid transit networks. A Lexicographic goal programming model is introduced, together with a solving strategy.
Most recently, [19] proposed a single framework that simultaneously considers the restrictions and objectives of the users and operator of a bus rapid transit system. Routes and frequencies were searched for this system by minimizing waste bus capacities (operation costs) and minimizing users' travel time (maximizing satisfaction

Problem Formulation
UTSP is formulated as a minimization problem taking into consideration of the preferences of passengers and operators. Generally, passengers would prefer to wait with a shorter time while maintaining their comfort and convenience while travelling. On the contrary, operators would be preferred to provide fewer buses and drivers to reduce the operating cost. These objectives are important to improve the overall performance of the public transportation system.

Frequency Optimization
The frequency optimization procedure can be best represented as a bi-level process. The first level explains the passenger assignment procedure and the second level describes the frequency optimization procedure by PMTS. Passengers' demand obtained from the first level is used to find the frequency of the route in the second level. The frequency set obtained is used to update the initial frequency and to restart the process. This process is reiterated until the convergence pattern of the frequency set is observed.
Two cases are considered to determine the optimal frequency for each route.
The first case assumed that the demand and the frequency of a route are similar throughout the time period studied whereas, for the second case, the problem is extended to change the demand and frequencies of the routes according to the peak and off-peak hours. The total demand is divided into 18 timeslots (1-hour periods) that have been categorized based on the assumed passengers' traffic.
The first case is to test the effectiveness of the proposed algorithm in comparison to other methods in the literature using a similar model. The second case is to evaluate the proposed algorithm using additional criteria such as time-dependent demands that represent a more realistic situation. Since there is no benchmark data available on time-dependent demand for transportation network studied, the demand during peak hours is assumed to be double of the off-peak hours.
Let assume the passenger demands for a route is 300 passengers. It is divided in the ratio of 1:2 that represent the demand on off-peak hours to peak hours. Note that, the second case is tested on Mandl's network only and its results are used to study the bus and driver scheduling problem in the latter section.
To begin with, all routes are initialized with similar frequency before the passenger demands are assigned based on their route choice. Two passenger assignment methods are adopted from [28] [29] as they use a realistic representation of passenger's behavior and the methods are applied in the comparative studies mentioned in Section 5.2.1. These methods allocate the passengers' demand based on the frequency share rule and multinomial logit model respectively.
Generally, the passengers are set to travel in a path with at most two transfers and the demand is considered unsatisfied if more than two transfers are needed.
Based on [28], when more than one path exists for the same number of transfers, the demands are allocated to the routes within prespecified travel times such that each route carries a proportion of the flow equals to the ratio of its frequency to the sum of frequencies of all acceptable routes. Based on [29], the demands are distributed according to the travel time utility of each path if parallel paths exist with one or two transfers.
After the passenger assignment process, the maximum load of each route is obtained from its list of link flows and used as the input for the frequency optimization procedure. In order to optimize the frequency, a mixed integer programming model is built with the objectives of minimizing the total number of buses, passengers waiting times and overcrowding in the bus. This model is adapted from the literature by considering the overcrowding as one of the objectives rather than constraints with the same formulation. Minimize subject to where, Meanwhile, k Q and , k s Q represent the passengers demand at each route that obtained from the passenger assignment procedure respectively. For further explanation on the models, refer to [3].

Bus and Driver Scheduling
The proposed technique for solving this problem is inspired by [15] who studied the vehicle scheduling problem. The solution approach is revised by incorporating the elements for bus driver scheduling. Following are the definition of terms related to this sub problem. A trip is a one-way route that begins at a specific time from the starting terminal (bus stop) to ending terminal of a route. A vehicle block is the schedule of a bus that consists of consecutive trips allocated to it. There are two types of vehicle blocks used in this study which are represented as long and short blocks. The elapsed time of a short block is the total work duration whereas, for a long block, the time is doubled to be fulfilled by two drivers. The main idea of this assumption is to simplify the representation of the bus and driver scheduling problem.
At first, a set of vehicle blocks are generated to cover all the departure times according to the total work duration, driver's break duration and maximum working duration without break, which are set approximately as 9 hours, 1 hour and 4 hours, respectively. Then, a subset of candidate blocks with minimum objective functions values is selected using the proposed algorithm. All selected candidate blocks are reconstructed to minimize further the values of the objective function. The detailed explanation of this procedure is given in Section 4.2.
A set covering model is adapted from [15] to represent the problem and calculate the objective values in order to produce the optimal blocks. The set covering model generates a set of buses that cover all the trips with minimum cost.
Moreover, it allows some of the trips to be included in more than one buses which consequently provides various combinations of trips for each bus. The set covering model for simultaneous bus and driver scheduling is formulated as follows: Minimize where, 1, if block has a trip starting from th departure time (9) and (10) minimize the number of buses and drivers respectively and Equation (11) ensures that every departure time is covered by at least one trip. The xy v is a binary matrix that records the availability of departure times in a block whereas the binary decision variable y z shows the presence of certain blocks in the chosen solution. The parameter y C defines the number of drivers for each block and y b is the yth block in a set of vehicle blocks such that q is the total.
The proposed solution approach covers all the departure times by producing extra vehicle blocks at the beginning rather than altering the existing departure times in the optimal blocks to include more departure times. This is due to the adjustment of departure times may affect the headways and layover time determined earlier which consequently have an impact on the robustness of the schedule.
It is important to note that the formulation to calculate the number of buses in this sub problem is different from the frequency optimization problem although both problems are closely related. In the frequency setting, the total buses are computed based on the round trip time of a bus and passengers demand without considering drivers work preferences. In this sub problem, several work rules such as driver's break duration have been included which can increase the round-trip times of buses. This consequently will increase the number of buses required to maintain the headways found in previous frequency setting problem.

Parallel Multiple Tabu Search
The idea of MTS is first proposed by [2] in designing the optimal fuzzy logic proportional-integral controller. The basic TS algorithm might require longer computational time to search for the expected solution if the initial solution is further away from the promising region. Thus, the adapted MTS algorithm is developed to guide the search to the optimal region in less computation time. The basic structure of MTS consists of initialization, adaptive searches, multiple searches, replacing and restarting procedure. MTS algorithm begins by generating several initial solutions to increase the possibility of reaching the optimal region quickly. Then, adaptive search mechanism is applied to alter the step size of the neighborhood during the search and multiple TS algorithms are performed sequentially based on its initial solution.
In this study, the MTS algorithm is adapted such that each of the initial solu- to record the availability of elements in an organized memory structure [3]. The proposed PMTS is derived to make use of modern technology with multiple processors for exploring the search space more effectively in less computational time. It works differently for continuous optimization (frequency setting) and discrete optimization (bus and driver scheduling) problems. However, the basic idea of PMTS that finds feasible solutions in a systematic way by dividing the search space into several domains and handling them at the same time is applied in both problems. This research focuses on exploiting the data parallelism in order to partition the data optimally to numerous processors. Each processor performs the same task at the same time but using different data sets. Specifically, the input of the problem is partitioned into a fixed number of processors such that each processor has a distinct range of domain.
The PMTS algorithm is altered according to a master-slave strategy with multiple initial points and single strategy configuration. The parallel search is controlled by a single processor called master which distributes the data equally into several processors called slaves to execute the search in parallel. The slaves will start their search in different search space with different initial points from the data range given and perform similar functions independently. There is some communication between the master and slaves at the beginning to allocate the tasks and data and also at the end of executions when the optimal solutions are gathered at the master processor. Note that the slaves do not communicate directly to each other as there is no data transfer involved between them. The selection of this approach is motivated by the natural design of the MTS algorithm which guides the search separately with specific domain.
The PMTS begins with several initial solutions such that each of them is selected from various domains. All the starting solutions run simultaneously in different processors to search for the best solution in every domain. Explicitly, the search space is divided into a number of domains and each of the domains is allocated with different range/set of values. After the initialization process in continuous optimization, the adaptive search mechanism is applied to find variable step sizes for locating the neighborhood of the current solution to move them to another feasible solution. By referring to Figure 1, the neighborhood is formed by adding and subtracting the step size from each variable in the initial solution. Let n ∆ be the step size values such that n represent the domain. x is the decision variable of element 1 in first domain.
The use of single or multiple tabu lists depends on the types of move involved during the search that directly influenced by the type of the problem. There are several moves being added or dropped at the same time to create the neighborhood of the current solution. This study applied two-dimensional tabu lists with the same tabu tenure to record the moves with their positions in the list. This approach inhibits repeated moves and enables the search to explore a variety of solutions using organized memory structure. An array, tabulist (a) (b) stores recently chosen solution to mark it as tabu for certain iterations such that a, the row represents the tabu tenure and b, the column represents the maximum number of moves that can be added or dropped. For all moves in the tabu list, the value of a is reduced by 1 at every iteration. The number of columns occupied depends on the number of moves involved in an iteration and it is different for every row.
Intensification is conducted if there is no promising solution available and diversification occurs when the intensification is not possible to be applied. This is because the normal search procedure in the proposed PMTS is good enough to analyze a portion of the whole neighborhood since it is divided earlier.

Parallel Multiple Tabu Search for Frequency Optimization
The main idea of frequency optimization is to find the optimal frequency set for each route in a transit network based on the passengers' demand during a time period. Different frequency sets give different tradeoff between the objectives since this is a multiobjective problem. The specific steps of the PMTS algorithm are described as follows. The pseudo-code of the algorithm for solving the frequency optimization problem is given in Algorithm 1.

Parallel Multiple Tabu Search for Bus and Driver Scheduling
In this procedure, both buses and drivers are assigned simultaneously to the departure times by assuming that the drivers are assigned to the same bus throughout the working time. Besides, the vehicle blocks formed consist of long and short blocks such that the long blocks need two drivers and short blocks require only one driver which is deduced based on the duration of the blocks. Note that, the lengths of long blocks are equal to the time horizon studied in this research while the short blocks are reduced by half. The bus and driver scheduling are conducted consecutively for all the routes involved. The complete steps in this optimization process are discussed as follows. The pseudo-code of PMTS for bus and driver scheduling is given in Algorithm 2.

Benchmark Data and Experimental Design
The effectiveness of the proposed PMTS algorithm is assessed on benchmark Mandl's Swiss network ( Figure 3) and Mumford's large network (Figure 4) based on the parameters given in Table 1 using the following performance metrics as suggested by [30]: total number of buses, total waiting times, average route headways, and maximum route headways.
The proposed algorithm is verified with the respective passenger assignment methods and transfer penalties used by the previous authors. The PMTS algorithm is coded in ANSI-C language and executed on a Linux operating system using a High Performance Computer (HPC) system. It has an IBM System X3650 M4 Cluster operating on PUTRAGRID cluster distribution. The algorithm is executed for 10 runs to assess the robustness of the algorithm and each run is able to produce the results for all domains. The parameters for UTSP and PMTS used in this study are given in Table 2. Based on Tables 3-8   [<1>] 103 a n/a n/a 6.67 a 3.48 a n/a

Frequency Optimization
[<2>] 99 b 18,194 b n/a n/a n/a n/a [<3>] 99 b n/a n/a n/a n/a n/a [<1>] 105 a n/a n/a 9.00 a 4.06 a n/a [<1>] 87 a n/a n/a 5.11 a 3.64 a n/a  [30] [<1>] 79 a n/a n/a 8.60 a 4.60 a n/a [<1>] 67 b 26,057 b n/a n/a n/a n/a [<3>] 67 b n/a n/a n/a n/a n/a [<5>] 95 b 24,098 b n/a n/a n/a n/a  [<1>] 75 a n/a n/a 9.56 a 5.39 a n/a [<6>] 89 b 20,920 b n/a n/a n/a n/a [<1>] 87 a n/a n/a 11.33 a 4.11 a n/a [<3>] 89 b n/a n/a n/a n/a n/a [<7>] 84 b 20,058 b n/a n/a n/a n/a [<3>] 84 b n/a n/a n/a n/a n/a [<1>] 98 a n/a n/a 8.00 a 5.06 a n/a [<4>] 66 b 31,500 b n/a n/a n/a n/a [<3>] 66 b n/a n/a n/a n/a n/a  [30] [<1>] 77 a n/a n/a 9.56 a 6.42 a n/a [<5>] 92 b 24,705 b n/a n/a n/a n/a  [<1>] 102 a n/a n/a 6.80 a 5.32 a n/a [<1>] 98 a n/a n/a 17.5 a 7.00 a n/a [<1>] 77 a n/a n/a 12.8 a 7.58 a n/a  [28] [<6>] 82 b 22,804 b n/a n/a n/a n/a [<3>] 82 b n/a n/a n/a n/a n/a  [<4>] 99 b 23,157 b n/a n/a n/a n/a [<4>] 63 b 35,481 b n/a n/a n/a n/a [<3>] 63 b n/a n/a n/a n/a n/a [<5>] 90 b 25,587 b n/a n/a n/a n/a  [<6>] 77 b 27,064 b n/a n/a n/a n/a [<1>] 78 b n/a n/a 10.67 b 4.65 b n/a [<3>] 77 b n/a n/a n/a n/a n/a [<7>] 68 b 26,455 b n/a n/a n/a n/a [<3>] 68 b n/a n/a n/a n/a n/a [<1>] 101 a n/a n/a 15.00 a 6.91 a n/a [<1>] 88 a n/a n/a 31.00 a 9.67 a n/a Continued [40] [<1>] 104 a n/a n/a 29.00 a 9.66 a n/a [<4>] 99 b 24,726 b n/a n/a n/a n/a [<4>] 63 b 34,931 b n/a n/a n/a n/a [<3>] 63 b n/a n/a n/a n/a n/a [<1>] 69 a n/a n/a 10.33 a 7.02 a n/a [<5>] 94 b 25,487 b n/a n/a n/a n/a  [<1>] 66 a n/a n/a 20.00 a 9.14 a n/a  [<1>] 78 a n/a n/a 11.33 a 7.23 a n/a [<8>] 87 b 24,951 b n/a n/a n/a n/a [<4>] 65 b 36,051 b n/a n/a n/a n/a [<5>] 88 b 25,670 b n/a n/a n/a n/a In the case of 4 routes (refer Table 3), the proposed PMTS algorithm able to minimize the number of buses, total waiting times, average route headways and maximum route headways produced by other authors for all the route sets except [31]. The total waiting times is higher as compared to [31], although the number of buses is reduced by almost half.  Table 4), PMTS algorithm improved all the performance metrics values mentioned earlier for all the previously published results. The CPU time for PMTS is reduced to more than 90 percent of the SMTS by [3] which shows the effectiveness of PMTS algorithm to compute faster. For the routes in [28], two passenger assignment methods using a multinomial logit model and frequency share rule are applied to compare with the respective solutions from the literature. Note that, all the best values of the number of buses and total waiting times are better than average solution even though there is some contradiction for average and maximum route headways.
In the case of 7 routes, Table 5 shows that the proposed PMTS algorithm outperformed the solutions from [30] for their own route sets and the routes from [40]. The PMTS algorithm improved the solution of [30] based on the performance criteria for [34]-(passenger) and [38] but not in a Pareto sense. Similarly, the results from PMTS algorithm is similar to the values from [28] and [36] with the increase in total waiting times and also [34]-(operator) with more buses. Overall, the solutions of the PMTS algorithm for all the route sets are comparable to [3] but with much shorter CPU time. Moreover, all the best values of PMTS algorithm require lesser number of buses as compared to the average values except for [36].
In the case of 8 routes (see Table 6), the solutions from the proposed PMTS algorithm are better than the previous solutions for the routes from all the previous studies except [34]-(operator) and [30]. The number of buses produced by the proposed PMTS algorithms is higher but the total waiting time, the average and maximum route headways are lower for these studies. Alternatively, the proposed PMTS algorithm performed better than [3] for [32] only while producing equivalent results for the others. The values of all performance metrics for the best result are lower compared to average results for most of the route sets.
Furthermore, the proposed PMTS algorithm generates best results as compared to [30] for 9 and 11 routes (see Table 7). For route set of size 10, the results are improved in term of average and maximum route headways although the number of buses increased. The performance of PMTS algorithm is similar to the SMTS algorithm for 9 and 10 routes with slightly longer total waiting times and for 11 routes with a higher number of buses. By considering all the performance metric, the best results of PMTS are superior to its average results for 9 and 10 routes. The total waiting times of best solution are higher for 11 routes since the number of buses is reduced.
Based on Table 8, for 12 routes, our results are preferable as compared to [33], [34]-(operator), and [30] for their respective route sets. Alternatively, the results in this study are comparable with [30] for the routes from [33] and with [34]-(passenger) and [36] for their own route sets. The PMTS algorithm can   Generally, the round trip time of a bus affects the number of buses required.
Thus, the total buses needed are high as compared to the previous model (without timeslot) since the layover time and dwell time increase the round trip time for a trip. Moreover, as the frequency for peak and off-peak hours is different, the total waiting time also increases. Based on Tables 9-13, there is no overcrowding in the solutions from domain 3 to 10 and domain 3 has the least number of buses among them. Thus, it is more preferable to be chosen for studying bus and driver scheduling problem in the next subsection. Referring to Table 9, the PMTS algorithm is compared with SMTS of [3] and it shows similar results but with much lesser CPU time. Since the previous study does not include the solutions from other route sets (6, 7, 8 and 12), the comparison between SMTS and PMTS results for the route sets are not available. Table 10 presents the values for each objective functions with respect to the domains. The first domain which carries lower frequency needs lesser buses butlonger waiting time with high overcrowding as compared to the last domain. The number of passengers exceeds the maximum load factor at some time period due to inadequate frequency.
Based on Table 11, the frequency and number of buses required increases while the total waiting time and overcrowding decreases which reflects the conflicting nature of the objectives. The total buses are up to 240 with 27,118 minutes of waiting time for the headways around 3 minutes from domain 10.
According to Table 12, around 32 buses are needed to satisfy the frequency from domain 1 with respective waiting time and overcrowding. Meanwhile, domain 10 carries the highest number of buses (258) with the least passengers waiting time without overcrowding. Table 13 displays the 10 non-dominated solutions from all the domains respectively. The highest number of buses is 325 with 23,678 minutes of waiting time. Alternatively, the lowest number of buses required for 12 routes is 39 with 191,747 minutes of total waiting time and 2886 passengers who exceed the fixed load factor of the bus.
On the other hand, the proposed algorithm is also tested for Mumford's network using the route sets from [41]. Mumford 0, Mumford 1, Mumford 2 and Mumford 3 are different in term of the number of nodes and links, route size and total demands. These parameter values are increasing according to the instances from 0 to 3 such that Mumford 3 has a more complex network and highest number of routes. The average results of 10 runs for each domain are presented in Table 14. Since there is no previous solution for Mumford's network considering the number of buses, total waiting time, overcrowding, average route headways, and maximum route headways; the comparison of the results is not possible. Therefore, the values from all the 10 domains are presented.
The computational time for Mumford's network is quite long which is around 4 days for each run. This is due to the passenger assignment procedure that has to be conducted at every iteration to calculate the total waiting times. Moreover, as the number of routes increases, the CPU time also increases. Journal of Computer and Communications

Bus and Driver Scheduling
As mentioned earlier in Section 3.2, two different scenarios favoring passengers (Scenario 1, S1) and operators (Scenario 2, S2) are studied regarding the allocation of the departure times at the origin and destination of a route. Each scenario is performed for 10 runs and the average and best solution (marked with "*") are recorded. The solution with a lower number of buses compared to the average value is marked as best although the number of drivers is higher. This is because fewer buses indicate more long blocks are produced which consequently need more drivers. The performance of the proposed PMTS algorithm is compared with SMTS by [3]. The input data such as frequency and one-away travel time of the routes are obtained using the solutions of domain 3 in Tables 9-13.
Based on Table 15 and Table 16, the total buses and drivers are greater for S1 as compared to S2 since the departure times to be covered are higher for the former. Both scenarios are equivalent to each other by considering different perspectives of passengers and operators respectively. It provides more choices for the decision makers to implement in a real system. The solution from S1 is presented as an example to show the ability of reconstruction procedure to allocate more departure times for buses and drivers. On the other hand, there is no significant difference between the effectiveness of SMTS and PMTS algorithms except the CPU times is reduced to more than 50 percent by the parallel implementation.
The bus and driver schedule of S1 for 4 routes from [36] are presented in Appendix A (Tables A1-A4). It shows the bus number and drivers that cover the

Conclusions
In this paper, a procedure for solving UTSP which consists of frequency optimization, timetabling, and bus and driver scheduling is proposed. A mixed integer multiobjective model is constructed to optimize the frequency of the routes by minimizing the number of buses, passenger's waiting times and overcrowding by considering the preferences of passengers and operators to find the optimal solution. The model is further extended by including timeslots to find the frequencies during peak and off-peak hours throughout the time period.
The main contribution of this paper is the development of PMTS algorithm by modifying the initialization process and incorporating intensification and diver-