Integrated Optimization of Line Planning, Timetabling and Rolling Stock Allocation for Urban Railway Lines

: In order to improve train operation planning from the two perspectives of enterprise operating costs and passengers’ travel time, this paper proposes an integrated optimization model of three sub-problems, namely line planning, timetabling and rolling stock allocation for urban railway transit lines based on passengers’ travelling demands and the constraints of the urban rail line. The model features dwelling time at stations, turnaround operations at terminal stations, entering/exiting depot operations and an assignment for passengers’ travelling ﬂow. We propose a solution method based on a metaheuristic method that simulates annealing to generate an optimal solution for the overall problem using MATLAB. Finally, we use the example of Xi’an metro line one to demonstrate the performance of the model.


Introduction
Urban railway systems are safe and energy efficient types of transport, and they have an important role in the public transportation of big cities due to their advantages of having high transportation capacity and high efficiency.The International Association of Public Transport points out that urban rail infrastructures had an average of 168 million passengers per day worldwide from 2000 to 2017.Moreover, this number will keep increasing as 70% of the current infrastructure was put into service since 2017.To provide passengers with more convenience and improve the operational efficiency of urban rail, more attention must be paid to the train operational organization at present and in the future.One of the most important things regarding train operational organization is to optimize an operation plan based on the time-space distribution of passenger demands and the capacities of rail infrastructures in the plan stage.An operation plan specifies the number of trips and the operation details of each trip, such as the path, arrival and departure times at stations, as well as the servicing rolling stock.Its quality has a great effect on passengers' service level and rail enterprises' operating costs, and it is the basis for operating rolling stock in order on the rail network in the operation stage.
Generally, the train operation plan of an urban rail system is optimized through three phases in order for it to solve problems.The first of these is the line-planning phase, which aims to fix trips' travel paths, stop patterns, and the frequency of each type of trip service to satisfy passenger demand and infrastructure capacity constraints.Then, taking the output of the line planning problem as the input, the second phase, known as the timetabling problem, focuses on optimizing trip departure and arrival times at visited stations on the railway line.Once a timetable is generated, both the rolling stock scheduling and crew scheduling problems of the third phase are put on the agenda, which can then be solved respectively.Rolling stock and at least one driver are assigned separately for each operating rolling stock.
Although this can improve the solving efficiency by dividing the train operation planning problem into the above three sub-problems and optimizing them separately.These three sub-problems are related to each other, and it is therefore potentially easy to arrive at non-optimal solutions as the generation of a solution for one sub-problem restricts the potential solutions for the next one in the process of their staged optimization.Moreover, the exact calculations of both passengers' travel cost and rail enterprises' operating costs usually rely on the solutions of more than one sub-problem, rather than only one of them.Specifically, passengers' travel costs consist of waiting time at origin stations, rolling stock time and so on.The former generally depends on the operation frequency of trips obtained in the line-planning sub-problem, while the latter rests with the timetable obtained by solving the timetabling sub-problem.Similarly, rail enterprises' operating costs are related to not only the number of trips determined by the line-planning sub-problem, but also the serviced relations of rolling stock, which is decided by the rolling stock allocation sub-problem.In short, from the point of view of improving passenger service levels and reducing rail enterprises' operating costs, it is necessary to make the three sub-problems of line planning, timetabling and rolling stock allocation an inter-connected whole, and achieve their integrated optimization.
Fortunately, with the great improvement of computing power and the introduction of some integrated optimization models, simultaneous line planning, timetabling and rolling stock scheduling has become possible.Michaelis, Schöbel [1] an integrated model is proposed that includes all trip routes, lines and timetables for a bus network in a particular public transportation system.Wang, Tang, Ning, Meng [2] optimized both timetabling and rolling stock circulation plans for an urban rail corridor.Wang, D'Ariano, Yin, Meng, Tang, Ning [3] studied the integration of timetabling and rolling stock circulation planning under time-varying passenger demand by proposing three solutions to a mixed-integer nonlinear model.Shi, Zhao, Zhou, Wang, Bell [4] optimized a train operational plan for an urban rail corridor considering two sub-problems, namely trip departure profile optimization and rolling stock circulation optimization.This approach is based on maximizing the headway time without considering travel passenger demand.
Our research focuses on solving the simultaneous optimizing problem of line planning, timetabling and rolling stock scheduling for an urban rail line that has only one depot for rolling stock.To be more specific, it aims to obtain an overall solution specifying not only the number of trips operating in different operation time-periods, but also their arrival and departure times at visited stations, as well as their serviced rolling stock based on a given rail line and its time-space distribution of passenger demands.One of the greatest challenges for us is to design a succinct model integrating the three sub-problems of line planning, timetabling and rolling stock allocation from the view of improving passenger service levels and reducing rail enterprises' operating costs.A succinct model and an efficient solving algorithm will inevitably contribute to the achievement of their integrated optimization.
This research attempts to provide the following contributions to research work related to the problem of train operation planning for urban rail systems; (1) The formulation of a succinct integrated model to achieve the simultaneous optimization of line planning, timetabling and rolling stock allocation based on a prior set of candidate trips.It has the simplified decisions of selecting some candidate trips for operation, and further assigning their arrival/departure times and service rolling stock.(2) The proposal of a solution approach based on a metaheuristic-type solver namely a simulated annealing algorithm to solve the integrated model then a test of the performance of the formulated model using the data of Xian metro line 1.
The remainder of this paper is organized as follows.Section 2 focuses on literature reviews of line planning, timetabling, rolling stock allocation and their integrated optimization.The methods and materials are then presented in detail in Section 3. The three sub-problems of line planning, timetabling and rolling stock scheduling are then analyzed followed by an assignment of each trip's service passengers with a method of determining the numbers of boarding and alighting passengers, the mathematical model is then developed, and finally the solution approach is covered.In Section 4, a case study is presented for testing the performances of our proposed method from different perspectives.This is followed by a discussion of the methods carried out and the results obtained in Section 5. Finally, the conclusion is drawn with the proposition of future works in Section 6.

Literature Review
The objective of line planning is to pull optimal frequencies of service to meet passenger demand while taking into account the capacity of rolling stock and the length of the operation period.In this subject, Schöbel [5] introduced the basics of line planning models, their characteristics, mathematical approaches, and algorithms.Bussieck, Kreuzer, Zimmermann [6] focused on finding an optimal choice of rail lines with periodic schedules.The research presented a mixed integer linear programming model and proposed an optimal solution to the line optimization problem by maximizing the number of direct travelers.On the other hand, a different approach to optimize the line planning assignment can be considered by minimizing the operating cost, as Claessens, van Dijk, Zwaneveld [7] focused on allocating an optimal railway line taking into account the operating costs while meeting the requirements fixed by constraints and system capacity.This model optimizes the lines, line types, routes, frequencies and rolling stock formations.However, a more generally realistic approach for line planning is a multi-objective model minimizing both passenger travel time and operating cost.This was demonstrated in ref.Borndörfer,Grötschel,Pfetsch [8], in which is proposed a multi-objective and multi-commodity flow model for the line planning problem featuring the flexible routing of passenger paths and dynamic line generation.Shi, Deng and Huo [9] presented a bi-level programming model combining a passenger train operation plan with a passenger transfer plan while considering the flow assignment on the railway passenger transfer network as lower level.This model is multi-objective, balancing between the interests of the railway corporation and the demands of passengers.Deng, Zeng, Gao, Zhou [10] proposed a multi-objective model that featured the rolling stock formation in the optimization of the train plan for urban rail transit.The proposed model optimizes all of the rolling stock' formation length, the operational period, and trip counts together by designing a three-phase solution method.Urban transit lines can include different route modes depending on passenger demand.Each route connection type differs in its flow distribution, thus, Deng, Zeng, Gao, Bin [11] presented a model for train operation plan optimization based on passengers' general travel expenses and operators' benefits featuring passenger choice behavior under a multi-trip-routing mode.
The model we propose in this research aims to optimize the train operation plan for urban transit.Generally, the scheduling type for urban railway lines is regular scheduling, also known as periodic scheduling.Regular timetables feature fixed headway times between trip services during a single time period.For instance, a timetable has 3 min of time difference between two adjacent trip services during rush hours and 5 min of headway time during all operation periods outside rush hours.There are many papers that consider regular timetables, such as Nachtigall, Voget [12], which researched the compilation of timetables for a periodic serving railway network and modelled the calculation of timetables with minimal waiting time for passengers changing rolling stock.Kwan, Chang [13] applied multi-objective evolutionary algorithms to optimize a medium size mass rapid transit system with the objectives of minimizing operating costs and passenger dissatisfaction.Liebchen [14] presented a periodic-type scheduling model based on a periodic event scheduling problem.Albrecht [15] proposes a multilevel optimization algorithm to solve a demand-oriented automatic timetable for suburban railways.Su, Li, Tang, Gao [16] proposed an integrated timetable including speed profiles in the scheduling assignment.The approach is to determine the optimal speed with fixed trip time for each section then distribute the total trip time among different sections.Sun, Jin, Lee, Axhausen, Erath [17] put forward three demand-driven timetable design models for urban railway lines by demonstrating train operation using equivalent time.Wang, Tang, Ning, Boom, De Schutter [18] introduced an event-driven model based on three types of events: departure, arrival and transfer events.The model includes routing choice of passengers at transfer station and passenger travel behavior.
The rolling stock allocation assignment determines the connections between the trip services and the circulation of rolling stock between terminal station(s) and yard(s).In order to reduce operation costs, the number of rolling stock allocated should be minimized.This objective can be achieved by connecting trip services as much as possible.In this subject, Abbink, Berg, Kroon, Salomon [19] puts forward a model with an objective to find the most effective allocation of rolling stock types, sub types, and units of rolling stock to the train series with the main objective of transporting seated passengers.Fioole, Kroon, Maroti, Schrijver [20] addressed a rolling stock circulation problem by assigning rolling stock to the timetable problem by considering multi-objective operating costs and service quality.This model achieves this by combining and splitting rolling stock units' tasks.Alfieri, Groot, Kroon, Schrijver [21] focused on determining the appropriate number, type, and circulation of rolling stock units on a railway line taking into account the shunting possibilities at the stations and the order of rolling stock units in the trains.Withall, Hinde, Jackson, Phillips, Brown, Watson [22] covered rolling stock allocation and platform allocation problems by presenting an automated approach aiming to speed up the traditional process.The research presented a detailed description about the basics of the two assignments.
Integrated optimization models for train operation plans have been developed in some papers.In fact, a mathematical model can feature multi-phase decision variables from line planning and timetabling assignments.Blanco, Conde, Hinojosa, Puerto [23] considers a generic model for line planning and timetabling on urban rail networks, with the goal of optimizing both passenger travel costs and operating expenses while taking short-turning trips into account.A metaheuristic technique is used to solve the mixed integer linear programming model.Michaelis, Schöbel [1] proposed an integrated model including all trip routes, lines and timetables in public transportation (bus network).Their approach is based on the idea that operating costs and passenger satisfaction can be computed if trip routes and schedules are known.Zhou, Shi, Chen, Deng [24] optimized the train operation plan for a network of dedicated passenger lines; the model is multi-objective, aiming to improve the quality of passenger transfer and ensure the operational benefit of the railway enterprise.This model uses a simulated annealing-based algorithm to achieve its objectives.Zhou, Tian, Deng, Qin [25] proposed an integrated optimization model of trip planning and scheduling to minimize both passenger travel costs and enterprise operating costs using a model that employed a simulated annealing algorithm.Burggraeve, Bull, Vansteenwegen, Lusby [26] describes a heuristic technique for creating a line plan from the ground up, resulting in a realistic and reliable schedule.Their approach iterates interactively, switching between line planning and timetabling to improve the robustness of the pre-generated line plan.The optimization concept optimizes the weighted summation of passenger costs and operator costs for the line planning sub-problem, while improving minimum buffer durations between line pairs for the timetabling sub-problem.
Other integrated models featured rolling stock allocation and circulation assignment.Wang, Tang, Ning, Meng [2], [Shen,Xie,Li [27] optimize both train timetabling and rolling stock circulation plans simultaneously using the same model.Wang, Tang, Ning, Meng [2] takes into account the operations of trip services, turnaround operations, entering/exiting depot operations and the number of available rolling stock.Wang, D'Ariano, Yin, Meng, Tang, Ning [3] proposes an optimization model by considering rolling stock capacity, number of available rolling stock, and entering and exiting depot operations.The model solves an integrated model of timetabling and rolling stock circulation under time-varying passenger flow demand.Optimizing the train operation plan for an urban rail corridor; Shi, Zhao, Zhou, Wang, Bell [4] uses a different approach by splitting the train operation plan problem to two sub problems.The first model optimizes the train departure profile featuring a maximum headway time function that ensures the required service for the train operation plan.Then, based on the generated timetable, the second proposed model minimizes the number of rolling stock and their circulation to and from the yard.Petersen, Larsen, Madsen, Petersen, Ropke [28] solved the integrated model of timetabling and rolling stock allocation using a large neighborhood search metaheuristic taking into consideration the waiting time of transferring passengers and the operating costs.
In Table 1, we compared published studies that aimed at optimizing train operatingplanning for urban rail based on four criteria; the sub-problems included in the proposed models, the factors considered, the objectives targeted and the methodology used.In general, most studies solved the operating plan problem by integrating line planning and timetabling sub-problems to target an optimal solution.In addition, the studies considered rolling stock capacity constraints to increase the accuracy of the formulated model along with its complexity.Those problems often lead to mixed integer non-linear programming models that are solved either by transforming the model to mixed integer linear programming alternative models or by using direct approaches such as linear computing and iterative nonlinear programming.Nevertheless, we propose in our study to integrate line planning, timetabling and rolling stock allocation sub-problems to solve the train operating planning problem.We include a passenger flow assignment where the boarding capacity of rolling stock is not a fixed value but a variable calculated at each station, which allows us to calculate more accurately passenger waiting times at stations and rolling stock dwelling time.In addition, the assignment brings into consideration the penalty associated with those passengers who are unable to board the rolling stock as an improvement to total travel costs.Due to the complexity of the model, we introduce a metaheuristic method to the solving algorithm, which allows us to keep the computation time within an acceptable range.

Problem Description
An urban rail line with a set of stations, denoted by k = {1, 2, . . . ,K} is considered in this research.It has only one depot, connected to station 1, for rolling stock staying, checking and repairing, as shown in Figure 1.Both endpoint stations have one turn-round track for rolling stock turnaround and two main tracks for up-direction and down-direction trips respectively.However, all intermediate stations have only two main tracks, and only one rolling stock of the same direction can enter a station at a time.Note that with only one turn-round track at each terminal station, only one rolling stock can turnaround at a time.In a way, this limitation in turnaround operations leads to using more rolling stock in general, thus increasing the total enterprise's costs to operate the rail line.However, in this study we do not take into account the total number of rolling stock operated but we consider their total operating time.
The service time range of one day is delimited by the earliest time T s and the latest time T e , and is expressed by [T s , T e ].It is divided into a set of time periods, expressed by T = {t 1 , t 2 , • • • , t L }.Each time period, for example time-period t l , has start time t s l and end time t e l .Moreover, the start time of the first time period t 1 satisfies t s 1 = T s , the end time of the last time period t L satisfies t e L = T e , and the end time of one time period must be equal to the start time of the next period, namely t e l = t s l+1 .The length of a single time period |t l | can be adjusted according to passenger demand variations i.e., a more fluctuating demand requires shorter time periods.
We consider only two types of paths for operation trips.One path is from endpoint station 1 to endpoint station K, which we call the up-direction path.The other path is from endpoint station K to endpoint station 1, which is called the down-direction path.Moreover, trips of each path stop at each visited station.Many candidate trips of both paths are initially generated according to a given minimum operation headway from the earliest time T s to the latest time T e .As shown in Figure 2, the set of upstream-direction candidate trips traveling from station 1 to station K is denoted by F up = {i|i ∈ Z + }, while those of downstream-direction candidate trips travelling from station K to station 1 is denoted by F dn = {j|j ∈ Z + }.Each candidate trip has specified its travel path, stops and initial timetable, of which the last one may be rescheduled in our proposed method.Note that candidate trips in these two sets are ordered by their departure times at origin station.Thus, candidate trip i or j operates earlier than trip i + 1 or j + 1.
For every time period t l , the initial frequency of service f ini is provided by a set of candidate trips.Providing a maximum travelling capacity, the initial set of candidate trips are generated with a minimum headway time h min between two consecutive trips.Each upstream trip i or downstream trip j must stop at every station k in its path for a specific dwelling time τ i,k , allowing the boarding and alighting of passengers.
Obviously, the pre-initialized candidate trips are the maximum number of possible provided trips under the rail capacity limitation.If the passenger demand in each timeperiod is enough to operate all candidate trips with minimum headway, then all candidate trips must be chosen to operate.However, in most cases, there are some time periods that do not have enough passenger demand, and thus some candidate trips should not be chosen to operate.To summarize, our integrated problem aims to choose some candidate trips from two sets to operate according to the demands of time periods, and further reschedule them and optimize their rolling stock service.For a better understanding, in the next section we will first describe line planning, timetabling and rolling stock scheduling sub-problems based on given set of two candidate trips, and then declare our studied integrated problem considering them together.
Traditionally, the line planning sub-problem is to determine the origin, destination, itinerary and frequency of services.However, in this study we consider a layout that allows one single itinerary for each trip direction.Moreover, we only consider full-length services, therefore the origin and destination of each same-direction trip is the same as they begin from one terminal station and end at the other terminal station at the end of the service trip.Thus, we aim to solve this sub-problem by selecting some candidate trips from a generated set of candidate trips to provide sufficient frequency for each time period based on its passenger demand.For this matter, we introduce two binary variables: As we know, the number of provided trip services cannot exceed the maximum, which depends on the minimum headway in each time period.As we initialize candidate trips based on the minimum headway, even when all candidate trips of one time period are chosen to operate, this requirement is still satisfied. ∑ where |t l | is the length of time period t l , and h max is the maximum headway between two consecutive trips to maintain quality of service.
After we get the provided trip services, we also have to determine their arrival times and departure times at each visited station, which is regarded as the timetabling sub-problem.Thus, we introduce four decision variables for upstream and downstream direction trip services, respectively.d i,k : departure time of upstream trip service i from station k d j,k : departure time of downstream trip service j from station k a i,k : arrival time of upstream trip service i to station k a j,k : arrival time of downstream trip service j to station k Timetabling must make trip arrival and departure times satisfy many operation requirements, such as the minimum headway, travel time in each rail section and required dwell times at stations.
All trips must depart from stations after the earliest operation time T s , and also must arrive at stations before the latest operation time T e in one day.Thus, the departure and arrival times of trip services must fall between an operation time range [T s , T e ], namely, Equation ( 3) ensures that if an up-direction trip service is selected, i.e., θ i = 1, then its departure times and arrival times must fall between the start and end time of the operational day, namely T s ≤ d i,k ≤ T e and T s ≤ a i,k ≤ T e .Otherwise, its departure times and arrival times must be equal to 0. Similarly, Equation (4) makes sure each down-direction trip service satisfies this requirement.
The minimum travel time of a trip between two adjacent stations depend on the section's mileage, rolling stock speed and whether it stops at stations.As we assume that all trips stop at each visited station, the trip's minimum travel time in a section can be viewed as a fixed value.Thus, the time difference from entering into the section to its leaving from there cannot be lower than this minimum fixed travel time.
Note that as Equations ( 3) and ( 4) ensure that if a trip service has not been selected, then its arrival and departure times are 0, so for a non-chosen trip, Equations ( 5) and ( 6) automatically set its section travel time to 0.
For passengers having enough time boarding and alighting a rolling stock, a required minimum dwell time of a rolling stock at a given station is needed and it can be described as a function of the number of boarding and alighting passengers at a station, where t A,B is the average time required for the boarding and alighting of a passenger, t r is the average reaction time of passengers to boarding and alighting operation, A i,k and A j,k are the number of passengers alighting from trip services i and j respectively to station k, and B i,k and B j,k are the number of passengers boarding to trip services i and j respectively from station k.Thus, the trip's actual dwell time, namely, the time difference between the departure time and arrival time of all trip services at a given station should be no less than the minimum required dwell time, Equations ( 9) and ( 10) make sure the operation trips' dwell times are no less than the minimum required values and the non-chosen trips' dwell times are 0 under the action of Equations ( 7) and ( 8).
As only one same-direction trip can stay at the middle station on the rail line at most, when a trip departs from a station, only then may another same-direction trip be allowed to arrive at the station.Therefore, the following two Equations must be satisfied, The time difference between two consecutive trips is set to guarantee the safety of the operation.The departure and arrival times of two consecutive service trips must satisfy the safety conditions: where M is a sufficiently large number.Equations ( 13) and ( 14) consider upstream trip services; if two consecutive trip services are selected i.e., θ i = θ i = 1, then the headway time condition must be satisfied: a i ,k − a i,k ≥ h l .Otherwise, if one trip service is not selected then the Equation is automatically verified.For instance, if θ i = 0, then a i ,k ≥ 0. However, if none of the trip services are selected, then the Equation is obviously verified when the departure and arrival times are non-existing.
Similarly, Equations ( 15) and ( 16) make sure each down-direction trip service satisfies this requirement.
To ensure that all selected trips can be provided, we still have to assign a rolling stock to each trip.Of course, we have to consider the use-cost of rolling stock in this process.For example, assigning the same rolling stock to multiple trips.This problem is called the rolling stock allocation problem.
When an upstream direction trip i reaches terminal station K, the rolling stock must turnaround to provide the next trip j as there is no depot at this station.However, we must choose one from many upcoming trips.Thus, we introduce a binary variable for trip connections at station K: 1 a rolling stock continues to service tripj a f ter servicing i at station K 0 otherwise As for station 1, when a downstream trip service j arrives, the rolling stock can either enter into the depot or turnaround to provide an upcoming trip service i.In this case, we have to firstly decide whether it enters into depot or turnaround for servicing another trip.If the latter is chosen, we still must decide which trip should be serviced after servicing trip j.Thus, we introduce two decision variables for the circulation of rolling stock to the depot.
1 the rolling stock servicing trip j enters the depot 0 else δ j,i = 1 train services i and j provided by the same rolling stock 0 train services i and j provided bydi f f erent rolling stocks Obviously, if δ j,p = 1, then δ j,i must be 0 for any trip i; and if δ j,p = 0, then there must be one trip i satisfying δ j,i = 1.
For a rolling stock, before servicing an up-direction trip i, it can either stay at the depot or service one down-direction trip j.However, before servicing a down-direction trip j, it has only serviced one up-direction trip i as the start station K of a down-direction trip j doesn't connect to the depot.Thus, we have to introduce the following binary variable to describe whether a rolling stock comes from the depot before servicing an up-direction trip i.
1 the rolling stock servicing trip i exits the depot 0 else Note that the decision of which down-direction (upstream direction) trip is serviced by a rolling stock before it services an upstream direction (downstream direction) can be described by variables δ j,i and δ i,j .
Similarly, if δ p,i = 1, then δ j,i must be 0 for any trip i; and if δ p,i = 0, then there must be one trip i satisfying δ j,i = 1.
Figure 3 illustrates all possible operations at terminal stations.At first, the connection of trip services i and j at station terminal K with turnaround operation namely δ i,j = 1.Then, when trip j arrives to station 1, as there is no connection to up-direction trip δ j,i+1 = 0; the rolling stock goes back to the depot δ j,p = 1.This also implies that the next upstream trip i + 1 must come out from the depot δ p,i = 1.
Contrary to the previous connection at end station K, when trip i + 1 arrives to the station, it does not connect with the next downstream trip j namely δ i+1,j = 1.In this situation, the rolling stock servicing trip i + 1 stays at the station from an upcoming connection.Finally, when the downstream trip j arrives to station 1, it does connect with trip i' namely δ j ,i = 0.
For an upstream candidate trip service i, it must be serviced by a rolling stock only when it is selected for operation, thus it satisfies the following requirements, Equation ( 17) ensures that if an upstream candidate trip i is not selected, namely θ i = 0, then there is no rolling stock coming from depot to service it δ p,i = 0, and no rolling stock after servicing a downstream direction trip to service it, that is ∑ j δ j,i = 0. Otherwise, there must be a rolling stock, which either comes from depot or finishes servicing a downstream direction trip, to service trip i. Equation ( 18) further makes sure that if upstream candidate trip i is not selected, namely θ i = 0, then there is no rolling stock after servicing trip i to service trip j, that is ∑ j δ ij = 0; otherwise, there must be rolling stock which services trip i to service trip j assuring ∑ Similarly, for a downstream candidate trip j, only when it is selected for operation, then it must be serviced by rolling stock, which must service an upstream trip i before servicing trip j, and can either enter the depot or turnaround at the station to provide the next trip service i when finishing servicing trip j and arriving at terminal station 1.
As detailed in the timetabling sub-problem, at each intermediate station, it is allowed that only one rolling stock at most stays in there at a time for each direction, as generally there is only one track for rolling stock dwelling for each direction.However, at the terminal station, the rolling stock has to turnaround and we must consider the rolling stock of both directions, and make the number of upstream direction or downstream direction rolling stock no more than the two-dwell tracks for the two directions of rolling stock.For example, when a trip i arrives at station K, and then turns around to continue trip j, obviously in the time range from a i,K to d j,K , this rolling stock will stay at station K and occupy one track, and then only one more rolling stock can be allowed to arrive there in the time range, as shown in Figure 4.
Denote F up (t 1 , t 2 ) = i t 2 > a i ,K > t1 as the set of upstream direction trips arriving at station K in time range [t 1 , t 2 ], and |F up (t 1 , t 2 )| is the number of trips in set F up (t 1 , t 2 ).Specifically, for the rolling stock servicing an upstream direction trip i which means θ i = 1, the departure time of its next servicing downstream direction trip can be determined by ∑ j δ i,j •d j,K , then the number of upstream direction trips arriving at station K from a i,K to ∑ j δ i,j •d j,K is equal to 0 or 1; otherwise, if trip i has not been selected for operation, then this Equation does not work.
Similarly, at station 1, there are only two rolling stock at most dwelling there at the same time.However, compared with the station K where the rolling stock must turnaround, rolling stock at station 1 can either turnaround or enter the depot after servicing one downstream direction trip.Denote F dn (t 1 , t 2 ) = i t 2 > a i ,K > t 1 as the set of upstream direction trips arriving at station 1 in time range [t 1 , t 2 ], and F dn (t 1 , t 2 ) is the number of trips in set F dn (t 1 , t 2 ).Specifically, for each downstream direction trip j selected for operation, when the rolling stock servicing it arrives at station 1, if it continues to service an upstream direction trip, namely ∑ i δ j,i = 1, then its departure time can be determined as ∑ i δ j,i •d i,1 , and the number of trips arriving at time range a j,1 , ∑ i δ j,i •d i,1 should be 0 or 1.Thus, the following constrain should be satisfied.
When two upstream and downstream trip services i and j are connected by the same rolling stock, a minimum turnaround time is required to allow preparation of the rolling stock.The minimum value of turnaround time is based on parameters such as cleaning time, the signaling system, the characteristics of the rolling stock etc.The following Equation fixes the minimum turnaround requirement at terminal station K: where t turn min is minimum turnaround operation time at terminal stations.Similarly, the minimum turnaround requirement at terminal station 1 is covered by the following Equation: Although the above three sub-problems have different decision variables, they are all related.This research is devoted to optimizing them together to achieve a better train operation plan consisting of line planning, timetabling and rolling stock planning.As the details have been discussed above, here we simply list the decision variables of our studied integrated optimizing problem, presented in Table 2.

Table 2. Definitions of decision variables for the integrated optimizing problem.
Variables Definitions θ i 0-1 binary decision variable, it shows whether or not candidate trip i is chosen for up-direction operation, if yes, then θ i = 1, otherwise, θ i = 0.
θ j 0-1 binary decision variable, it indicates whether or not candidate trip j of down-direction is chosen to operate, if yes, then θ j = 1, otherwise, θ j = 0.
Departure time of up-direction trip i from station k a i,k Arrival time of up-direction trip i to station k d j,k Departure time of down-direction trip j from station k a j,k Arrival time of down-direction trip j to station k δ p,i 0-1 binary decision variable, it shows whether or not the rolling stock allocated for service i comes from the depot, if yes, then δ p,i = 1, otherwise, δ p,i = 0.
δ j,p 0-1 binary decision variable, it shows whether or not the rolling stock enters the depot after servicing trip j, if yes, then δ j,p = 1, otherwise, δ j,p = 0.
δ j,i 0-1 binary decision variable, it shows whether or not a rolling stock continues to service trip j after servicing trip i at station 1, if yes, then δ j,i = 1, otherwise, δ j,i = 0.
0-1 binary decision variable, it shows whether or not a rolling stock continues to service trip j after servicing i at station K, if yes, then δ i,j = 1, otherwise, δ i,j = 0.
Meanwhile, we summarize and list all parameters considered in the integrated problem in Table 3.All assumptions in our studied integrated problem are summarized as follows. 1.
Only one rolling stock can enter a station at a time, We based the first assumptions on the fact that many urban rail systems operate with the principle of first-in first-out across all stations as the platform receives one direction trip at a time.

2.
Only full-length services are taken into account i.e., each servicing trip travels from one terminal station all the way to the other terminal station, In some specific urban transit systems where the passenger flow is unbalanced between sections of the railway line, the railway line is designed accordingly with the possibility of short turning operations at intermediate stations in addition to full-length services allowing the increase of trips at busiest sections of the railway line.However, this is not the case in the majority of urban transit railway lines, as full-length servicing trips travelling from two endpoints of the railway line are sufficient to transport all passengers accordingly.

3.
Overtaking operations are not considered i.e., each service trip stops at each station on its path, In some busy urban railway lines, scheduling express service trips in the timetable allows the transportation of passengers more efficiently.This type of operation allows an express trip to overtake a normal trip stopping at a given station.However, this way of operating the railway line is implemented in the most crowded urban rail systems, but is not necessary for the majority of normal urban transit systems.

4.
There are no limits for parking rolling stock in the depot, Real-time management of the railway line includes the operation of rolling stock within the depot.Usually, it is planned once the timetable and rolling stock allocation are fixed.However, management of rolling stock inside the yard falls outside the focus of this study therefore we do not take into account the limit of rolling stock to park within the depot.

5.
The formation and capacity of rolling stock are considered fixed forming a carrying capacity C, In urban rail transit lines, the composition includes rolling stock connected to locomotives.This composition can be changed depending on passenger flow requirements allowing the reduction of operating costs.However, for most systems the composition used during the whole day is fixed for the sake of simplicity, which results in a fixed carrying capacity for all rolling stock.

The Assignment of a Trip's Service Passengers Based on Queuing Theory
The aim for this assignment is to calculate the numbers of boarding and alighting commuters from those provided trips to each station.We introduce a parameter λ k,k (t) to describe passenger demand, i.e., rate of passengers at time t arriving to station k willing to travel to station k .All parameters and variables included in this assignment are listed in Tables 4 and 5 respectively.In regards to minimizing the travel cost of passengers, the most contributing factor is the minimization of their waiting time.With the congestion of passengers in stations during peak hours, passengers will not be able to get in a rolling stock as soon they arrive to the station and thus, their waiting time may differ depending on how fast they can board the rolling stock.In addition to that, the consistency of servicing trips passing by the station is another influence on their waiting time.
When a rolling stock departs from station k, some passengers may queue at station k, and they have different destinations.As passengers of various destinations have the same priority to board the arriving rolling stock based on the first-in, first-out rule.
We define ω up i,k , ω dn j,k as the dividing time; while trip i or j departs from station k, passengers entering into station k before time ω up i,k /ω dn j,k can board the rolling stock servicing trip i or j or its previous rolling stock to travel, but those passengers arriving later than time ω up i,k cannot board them.For instance, passengers arriving at the station at a time when the rolling stock has not departed yet but already reached its maximum capacity i.e., they have arrived after ω up i,k /ω dn j,k , those passengers cannot get in the rolling stock and have to wait for the next one.
For any dwelling rolling stock at station k, its dividing time can be determined by, where t * is the end time for making passengers entering into station k reach rolling stock available capacity C k .We determine t * differently depending on the train number.
For the 1st trip, it can be decided by, ∑ For the i th trip, time t * can be decided by, ∑ C i,k and C j,k are the available capacities of rolling stock servicing trips i and j respectively when arriving at a given station k.When the rolling stock arrives to terminal stations 1 or K, the available capacities are determined as follow, Otherwise, when the rolling stock arrives to an intermediate station, its available boarding capacity is calculated based on max rolling stock capacity C and the accumulated numbers of boarding and alighting passengers at previous stations as follows, For rolling stock departing from station k, the number of passengers travelling from station k to station k is calculated as follows, where t = T s f or f irst scheduled trains Based on B k,k i and B k,k j , we calculate the numbers of passengers to enter and exit the rolling stock.As the number of passengers alighting from the rolling stock at station k can be determined based on passengers boarding before station k, Similarly, the total number of passengers boarding the rolling stock at station k is, Based on boarding and alighting passengers at station k, we determine the number of passengers inside the rolling stock travelling within section [k, k + 1] by, During the service day, some passengers are unable to travel using the rolling stock due to their late arrival at the station either after the last rolling stock reaches its max capacity or after its departure, the numbers of those passengers can be determined by where i * and j * are last scheduled trips during the day.

Model Formulation
All decision variables of the integrated model are listed in Table 1 while the variables related to the assignment for a trip's service passengers are listed in Table 3.In this section, we introduce the objective function with a list of Constraints related to decision variables.A better train operation plan can not only provide passengers with less travel cost, but also should have less operating cost from the point of view of the rail enterprise.
An improvement in passengers' service satisfaction requires reducing the overall travel time.In this study, we consider all travelling passengers and those unable to travel due to their late arrival at the end of service.For the first part, we take into account some events that commuters go through including riding time during the trip, waiting time at the station and fare cost.With these, we introduce an average time value of passengers β to estimate the total travel cost.
First, we consider the time that passengers spend during their ride in the rolling stock.This is described as the accumulated time required for rolling stock to cross those included sections in passengers' trip plus the dwell time of the rolling stock at stations.Hence, we formulate passengers' ride time as follows, Second, before commuters can board the rolling stock they wait at the platform for a given time.We determine that based on the instant at which the passenger enters the station and the departure time of the boarded rolling stock, where t = T s f or f irst trains For most urban rail transit systems, the travel fare costs are not accumulated based on the sections travelled i.e., when a passenger travels from station k to station k + 3, the fare cost is not necessarily equal to the summation of all fare costs of the travelled sections namely: (k, k + 1), (k + 1, k + 2) and (k + 2, k + 3), and they might even be equal in cost although the difference between the distances travelled are very important.In fact, the travel fare cost is logically proportional to the trip length.In this regard, introducing a passenger fare rate and based on the mileage of the trip, we formulate the accumulated fare cost of passengers as follows, where p is the fare rate per person.kmand w(k, k ) is the mileage of section originating from station k to station k .
To summarize, we include a parameter to estimate the average time value of passengers for the minimization function related to passengers' travel cost.The first function is formulated as follow, where β is average time value of passengers, W is waiting time of passengers, R is passengers riding time inside the rolling stock and P is travel fare cost.
To consider late-arriving passengers unable to travel during the service day, we introduce a penalty cost P n , Generally, we can choose to reduce the number of used rolling stock or minimize their total service time as an optimization objective.For example, Wang, Tang, Ning, Meng [2] proposes three objectives including minimizing the number of rolling stock and headway time variations.In a different way, Su, Tao, Hu [29] reduces train operational costs by considering engine time of rolling stock.This research chooses the latter as another objective, namely the cost related to travel time of service trips.
Basically, the accumulated travel time of a service trip includes the running time between stations i.e., counting the time difference between the departure time from the previous station and the arrival time to the next station, the time required to achieve turnaround operations at terminal stations in case two consecutive trips are serviced by the same rolling stock and finally the time spent by rolling stock entering and exiting the depot when circulations to and from the depot are required.Hence, to formulate the total costs of servicing time, we introduce a cost per time unit of service and two parameters to represent the time required for rolling stock to enter and exit the depot t enter , t exit : where c is the cost per time unit of service, r i,k and r j,k are the minimum running time of rolling stock servicing i and j from station k to the next station, t turn min is the minimum value of turnaround time at terminal stations, t enter and t exit are the times required for rolling stock to enter the depot and exit the depot.
Finally, the objective function includes all three objectives featuring a weight factor α to allow emphasizing on either minimizing passengers' travel costs or enterprise's operating costs according to the needs, namely: where α is a weight factor.The Constraints of the multi-objective integrated model include conditions related to: selection of servicing trips ( 1) and ( 2), headway time ( 11), (16), rolling stock running time ( 5), (6), dwell time at stations ( 7)- (10), rolling stock circulation plan ( 17)-( 20) and turnaround at terminal stations ( 21)-( 24).

Solution Approach
The multi-objective function presented in Equation ( 51) is a mixed integer nonlinear type problem.It is difficult to study the complexity of the model; however, tackling the problem from the primal side allows one to find a feasible and optimal solution quickly.To take a primal-side approach is to resort to meta-heuristic algorithms such as Tabu search, SA or genetic algorithms.
We propose to solve the model by applying a simulated annealing-inspired algorithm.Introducing an influence T and a parameter related to the difference between function values when moving from a current solution to the next one 394; Z.The algorithm approach is based on two cycles, the outer cycle is based on the value changes of parameter T, when the value of parameter T is high; the algorithm has the tendency to allow the exploration of a higher number of solutions by considering non-optimal moves as the machine explores as many solutions as possible.However, when the value of T is low; the algorithm tends to work as a hill climbing where the algorithm most likely moves to a solution that has a better function value.To decide whether the machine moves from the current solution to the next one, a probability function is introduced P = e T/∆Z .
For the initialization of the algorithm, we set an initial influence value T ini , the inner cycle iteration index is x = 1 and the optimal solution Z * = 0. To generate the first feasible solution, we mainly decide it based on a probability function for non-peak hours; the conditions set by Equations ( 1) and ( 2) must be verified each time in order to satisfy the minimum requirement for transportation service.In the following, we consider the total number of commuters to travel during the time period to decide about the selection of the next trip.In case both previous possibilities are covered and verified, we rely on random function to generate a real number, where it is compared with 0.5; if the condition rand < 0.5 is verified then the trip is provided as we set θ i = θ j = 1 otherwise θ i = θ j = 0.At the end of each time period, we calculate the headway time h l = |t l |/ ∑ i∈F up l θ i .Considering the important passenger demand during peak hours, we select all possible trips during a single time period as we set θ i = θ j = 1 for all trips and we set the headway time to be equal to its minimum requirement h l = h min .Algorithm 1 is designed as follows, Algorithm 1. Randomized solution search.
Then verify whether rand < α and set The search for the next solution search is based on the current one i.e., the initial state of provided trips for the new solution is copied from the current solution.At this point, a single change in the main variables θ i and θ j is considered a move to a neighbor solution.In this context, for a given solution two possible moves are allowed: adding a trip or reducing one.For this matter, we introduce a new move variable as binary one to decide which move to take m = {0, 1}.This decision variable is influenced by a parameter ε relying on the condition rand > ε; if the condition is verified, we set m = 0 and we add a trip for service to a specific time period, otherwise we set m = 1 and we reduce a trip from service as shown in Figure 5.A close value of ε = 1 will have higher probability to reduce trips as the algorithm emphasis is on reducing enterprise operating costs.On the contrary, a close value to ε = 0 will most likely schedule a higher number of trips in order to emphasize improving passengers' comfort.Once the moves nature is decided, the next assignment is to find the most suitable time period.Here we base this decision on the number of available empty seats in rolling stock during a single time period C max .For instance, when m = 1 the priority is to reduce a trip from the least crowded rolling stock i.e., rolling stock with highest available empty seats.On the contrary, when m = 0 the priority is to provide more transportation capacity to most crowded time periods as shown in Figure 6 which translates to the least available empty seats C min .We finalize this process by calculating the headway time h l .The Algorithm 2 for this neighbor solution search is designed as follows, Find C max and set l as the prioritized time period Find the last provided trip in the time period and set θ i = θ j = 0; Otherwise set m = 0; Find C min and set l as the prioritized time period Find the first none provided trip in the time period and set θ i = θ j = 1; Calculate h l At this point, all trips of a single time period are generated and the next steps will allow scheduling their departure and arrival times at each station.Firstly, we calculate the departure time of the trip d i,k /d j,k from a specific station based on headway time h l which must verify Equations ( 3) and (4) if not the trip is not provided in the first place which sets d i,k = 0/d j,k = 0.Then, rolling stock carrying capacity C i,k /C j,k are calculated based on Equations ( 31)/(32) if k = 1/k = K, otherwise the calculation is based on Equations (33)/(34).The time limit for passengers to board the rolling stock is a function of the carrying capacity, which is calculated based on Equations ( 29) and ( 30) at terminal stations k = 1/k = K and based on Equations ( 27) and ( 28) at intermediate stations.The process progresses in a linear form with the calculation of passengers travelling in section [k, k ] inside the rolling stock servicing trip i and j B kk i /B kk j based on Equations ( 35) and (36).Similarly, the number of boarding passengers to rolling stock servicing trips i and j at station k B i,k• /B j,k are calculated based on Equations ( 39) and (40), and the number of alighting passengers from trips i and j at station k A i,k /A j,k based on Equations (37) and (38).The numbers of commuters to travel with trips i and j from station k to k + 1/k − 1 are calculated based on Equations ( 41) and ( 42) and the dwelling time of rolling stock at stations τ i,k /τ j,k based on Equations ( 7) and ( 8).With the new values of dwelling time at stations, we readjust the values of trips departure times from stations based on Equations ( 9) and (10) which is followed by arrival time of trips to stations a i,k+1 /a j,k−1 based on Equations ( 5) and (6).Finally, Equations ( 3) and ( 4) are verified again to make sure all variables satisfy the total operating time starting from T s until T e .The Algorithm 3 for passenger flow assignment is designed as follows,  3) and ( 4) is verified:  41) and (42) Calculate τ i,k /τ j,k based on Equations ( 7) and (8) Recalculate d i,k /d j,k based on Equations ( 9) and (10) using τ i,k /τ j,k Calculate a i,k+1 /a j,k−1 based on Equations ( 5) and ( 6) Check if Equations ( 3) and ( 4) is verified: Our priority at this stage is to connect as many trips as possible at terminal stations by providing the same rolling stock to service two consecutive trips of different directions.At station 1, we initialize the variables δ j,i = 1, δ j,p = 0 amd δ p,i = 0.As we consider that the downstream trip does not enter the depot after arriving at the station and the departing upstream trip does not come out for the depot i.e., the same rolling stock is used for both the trips.Then, we proceed to verify if Equation (24) to decide whether to maintain or recalculate the departure time of upstream trip from the current station d i,k .We proceed to verify if Equation ( 22) is satisfied; if it is not verified then the departing upstream trip cannot be connected to a downstream trip and a rolling stock coming out of the depot must provide it.Therefore, we set δ j,i = 0 and δ p,i = 1.Next Equations ( 17) and ( 20) are checked; if both are satisfied, we maintain the connection of the two trips otherwise neither of the two trips can be connected thus we set δ j,i = 0, δ j,p = 1 and δ p,i = 1.
if the previous move aimed to increase a trip i.e., m = 0, we set badmove = l min and the inner cycle moves one iteration x = x + 1.At the end of the inner cycle x = X, the current degree of influence T(y) is compared with its minimum value; if T(y) > T min is verified the outer cycle moves one iteration y = y + 1 otherwise Algorithm 5 is terminated.The ending algorithm is written as follows, Algorithm 5. Calculation of the objective function and termination of inner and outer cycles.

Research Results
In this section we put forward a numerical example to validate the integrated model.In order to optimize the results, we experiment with different parameter configurations, firstly we test a different range of values for the decision parameter ε to find the optimal setting for this example.We do so by comparing the converging performance between multiple executions with different parameter values, inspecting the moves taken by the machine and analyzing their effect on the objective function.Then, we calibrate the weight factor α parameter to fix the balance point at which the objective functions are mostly optimized.Finally, we present the results of the optimal solution featuring the total waiting time, the number of trips organized, the number of circulations to the depot, numbers of connections at terminal stations and the values of the three objectives.
We run the performance tests for the integrated model based on the data of Xi'an metro line 1.Opened to service on 15th of September 2013, the railway line is 24, 806 km long and has 19 stations where upstream direction rolling stock travel from Houwei Zhai station to Fangzhi Cheng station.For this case study, the chosen urban rail line's features meet the specificities of the problem considered in this study.First, the problem considers only one depot connected to a terminal station.Thus, the rolling stock allocation subproblem must deal with the circulations and connections to only one depot.In addition, the daily travelling demand for Xi'an metro line 1 fits the train operation planning with only full-length trips travelling from one terminal station to the other and stopping at every station.Similarly for this study, all trips must travel from one terminal station to the other eliminating any possibility of short-turnings at an intermediate station.Moreover, all trips must dwell at every station without any skipping or overtaking operations.
For this case, a minimum turnaround time of 2 min is required for the connection of two consecutive trips.Meanwhile, the circulation of rolling stock to enter and exit the depot are set to a minimum of 3 min .In this numerical example, we consider a single weekday day operation starting from 5:00 until midnight.Based on passenger demand analysis, morning peak hour is from 8:00 to 9:00 and evening peak hour is from 18:00 to 19:00.Using MATLAB, the test is performed on Intel Core i5-4460 CPU @3.20 GHZ with Windows 10 operating system running with 8 GB RAM.
The algorithm starting point sets the influence parameter at T ini = 7600.With 20 influencing levels, the parameter's value decreases with 5% at each iteration of the outer cycle until reaching its minimum value T min = 9400.These values are set with the goal of providing relatively higher chances for non-optimal moves to occur at early cycles and then decrease those chances significantly at ending cycles.All code execution parameters are listed in Table 6.Aiming at finding the best setting to minimize the total function value, we look for an optimal value of parameter ε by fixing the weight factor parameter at α = 0.5 and running multiple tests with the move parameter values ranging from ε = 0.1 to ε = 0.9.Note that an average value of α = 0.5 does not emphasize either passenger comfort or enterprise operating costs.It is an average value set to provide equal importance to both objectives.The number of inner cycles is set at X = 10 which sets a maximum of 200 moves per execution.
In Figure 7, we analyze the convergence performance regarding the general objective value between different settings of parameter ε.The fastest convergence was noticed at executions with ε = 0.7, ε = 0.8 and ε = 0.9 at the 1st, 2nd and the 3rd iterations providing close values to the general function at Z = 6.662•10 5 $, Z = 6.704•10 5 $ and Z = 6.781•10 5 $ respectively.This was predictable considering the orientation of the two executions towards reducing the operating costs and thus the algorithm managed to find optimal solutions much faster.On the other hand the slowest convergence is found with a parameter value of ε = 0.3 at the 78th iteration but the algorithm obtained a better solution with a value of Z = 6.544•10 5 $.At a value of ε = 0.6, we obtain the best solution of all executions at the 14th iteration with a value of Z = 6.480•10 5 $.As opposed to parameter α, the move parameter ε directly influences the move nature from one solution to another.In Figure 8, we analyze the moves obtained by the algorithm throughout the 9 executions.Notice the linear relationship between parameter ε and the number of added trips equivalent to m = 1 and its reverse linear relationship with the number of reduced trips translated to m = 0.At ε = 0.1 we obtained the highest number of reduced trips with 180 moves and the lowest number of added trips with 19 moves, thus showing the emphasis on reducing total operating costs.On the other hand, when the algorithm is oriented towards improving passenger comfort at ε = 0.9 we obtained 177 added trips and 22 reduced trips.Notice that with values of ε = 0.6, there was a noticeable balance with 89 added and 110 reduced trips, thus providing the best solution in all executions.However, it is important to note that these measured moves also include less optimal neighbor solutions which leads the algorithm to choose whether to make the move or to preserve the current optimal solution.In Table 7, we proceed to a direct comparison between the optimal solutions obtained from the 9 executions.Notice that the optimality gap increases with extreme values of parameter ε i.e., when the algorithm focuses on one of the two objectives separately.Nonetheless, the ideal value of parameter ε depends on the priority of the enterprise and thus a relatively higher total function value can be acceptable if its objectives are met.At this point, we consider ε = 0.6 to be an optimal setting to balance both objectives.Based on which, we proceed to calibrate weight factor parameter α by running multiple executions with different values of α and fixing the move parameter at ε = 0.6.
Firstly, we compare the execution time considering the complexity of the model throughout the executions as shown in Figure 9. Considering that lower values of α lead to an emphasis on reducing operating costs i.e., minimizing the number of scheduled trips, therefore less calculations are required at each execution.At a value of α = 0.1, we get the fastest computation time with 490 s.On the other hand, higher values of α require additional calculations with each added trip and thus we obtain the higher computation time of 649 s with α = 0.9.Although the difference is not too important especially for weight factor values between α = 0.2 and α = 0.5, a high demand railway line may lead to a bigger difference between executions.The most influential variable on the travelling costs Z 1 is the waiting time at platforms W compared with riding time R and travel fare P costs.In Figure 10, we plot the accumulated wait of passengers on platforms as a function of the weight factor.We obtain the highest accumulated waiting time value of W = 7.19•10 5 min at α = 0.1 when the algorithm focuses on minimizing operating costs.Then, as the emphasis shifts towards reducing passenger travel costs by the increase of parameter α, there is a noticeable decrease of the accumulated waiting time reaching a minimum of W = 4.24•10 5 min at α = 0.9.
Similarly, choosing to prioritize the improvement of passenger comfort should lead to a reduction in the number of passengers willing to travel but who fail to do so due to over-crowdedness and arriving at the station after the end of service.In Figure 11 we plot objectives Z 2 and Z 3 as a function of the weight factor, obviously the parameter α impacts the operations costs at each different level providing a minimum of Z 3 = 5.168•10 5 $ at a value of α = 0.1 and a maximum function value of Z 3 = 8.400•10 5 $ at a value of α = 0.9.Nevertheless, the influence of the weight factor on objective Z 2 is not linear as shown in the graph.Indeed, for values ranging from α = 0.1 to α = 0.4, we obtained the same objective value of Z 2 = 2.816•10 5 $ when the priority is to reduce the operating costs.Then, we notice a significant improvement in the function value starting from α = 0.5 to α = 0.9 with a value of Z 2 = 2.816•10 5 $ when the focus shifts towards minimizing the travel costs.In Table 8, we compare the solutions obtained from the 9 values of α regarding the scheduled trips, rolling stock circulations to the depot, trip connections at terminal stations and the total objective function.Notice the ratio of trip connections to scheduled trips, at a value of α = 0.1, we obtained 341 trip connections from 382 trips.While at a value of α = 0.9, we obtained 595 trip connections to 624 total trips.Our purpose in this example analysis is to balance both objectives to obtain the minimal total objective function.In this case, the minimum function value overall is obtained Z = 6.472•10 5 $ at a weight factor value of α = 0.4 with a total of 478 scheduled trips in both directions, 441 total trip connections and 74 rolling stock circulations to and from the depot.In Figure 12, the timetable obtained from the optimal solution is plotted.Finally, in Figure 13 we present the headway time obtained from the optimal solution related to a weight factor value α = 0.4.Notice that the headway is maintained at minimum value during peak demand time periods namely from 8:00 to 9:00 and from 18:00 to 19:00.While outside peak hours, the time difference is relatively higher especially during early and late time periods where travel demand is much lower.It is clear that the complexity of a model that integrates three phases simultaneously requires the use of heuristics-solving methods considering the large time required to converge to an optimum.However, the proposed model manages to reach an optimum based on the selection of services without hindering the assignment for timetabling which is automatically optimized by the proposed formulas and maintained within a range of feasible and acceptable solutions.
In fact, the algorithm converged to the optimal solution within 490 s which is relatively fast considering the three sub-problems considered in the model in addition to the passenger travelling assignment.Indeed, the computing time is very acceptable taking into account the complexity of the model.
In addition, the connections of trips are set as priority in order to minimize the use of rolling stock as much as possible.The integration of the problem of assigning trip service passengers based on queuing theory brought an improvement in timetabling with the calculation of dwelling time at stations.Moreover, it allowed the more realistic calculation of passenger waiting time.Finally, it is important to state that the model opens the possibility to emphasize either one of the two objectives, namely minimizing enterprise operating costs or passenger satisfaction which requires calibrating both parameters α and ε in order to optimize the results.

Discussion
This study puts forward an optimization model integrating line planning, timetabling and rolling stock allocation.It proposes a bi-objective function minimizing both the travel costs for passengers, and the operating costs for the enterprise.Comparably, other integrated optimization models for urban rail transit systems such as Heidari, Hosseini-Motlagh, Nikoo [30], Yue, Han, Wang, Liu [31], Ibarra-Rojas, Giesen, Rios-Solis [32], proposing a bi-objective optimization models integrating timetabling and rolling stock allocation sub-problems simultaneously.Ibarra-Rojas, Giesen, Rios-Solis [32] aims to maximize the number of passengers who profit from well-timed transfers in the timetable problem, while it looks to minimize operational expenses in the rolling stock allocation problem.However, we approach the bi-objective optimization differently.First, we find that the two objectives are controvert each other when it comes to the timetabling sub-problem.For low values of weight factor α, the proposed algorithm provided less regular service during the day negatively impacting the travel costs of passengers, while minimizing the operating costs.On the other hand, for high values of the weight factor providing more regularity to the service, the algorithm significantly minimized the travel costs of passengers.This approach allows the operator to decide how to calibrate the weight factor to meet the requirements.Meanwhile, the goal we set when solving the rolling stock allocation is no different from the other studies such as Shen, Xie, Li [27] considering the costs of available rolling stock in service.The sub-problem is solved by setting the priority to trip connections in order to schedule as many trips as possible to the same rolling stock.Despite this, we only consider the total servicing time of rolling stock in the objective, the minimization of used rolling stock is set as priority when formulating the model.
The minimization of passenger travel costs was set as one of the two objectives to aim for when solving the problem in this research.Including the waiting time of passengers at stations, the travelling fare costs and the riding time.Although our goal by introducing all three factors is to estimate more realistically the travelling costs, it was noticed that the most impactful factor on overall travelling costs is the waiting time at platforms.In this subject, another study [Li,Yan,Li,Yang [33] aimed to estimate the walking and waiting time of passengers in urban rail transit stations judging them as significant metrics for assessing the degree of service of an urban rail station.The study concluded that the headway time and passenger volume have a strong influence on the overall waiting time at origin stations.More crucially, the findings indicated that when passenger volumes are low, the headway can have a considerable impact on waiting times.When the passenger volume crosses a particular threshold, however, it becomes a key influence in the rise in waiting time.
On the other hand, this paper does not exclusively focus on the waiting time of passengers in stations.Nonetheless, the findings of the example analysis in Section 4 suggests that when the algorithm sets the minimization of operating costs as priority, the optimal solution provided 382 trips in total compared with 624 trips with a weight factor prioritizing the minimization of travelling costs for passengers.The difference in consistency of service leading to a huge gap between the accumulated waiting time values registered for the two cases affirm the conclusion of Li, Yan, Li, Yang [33] regarding the significant impact of service consistency on the overall waiting time at boarding stations.Moreover, the reverse relationship found between the accumulated waiting time and weight factor α presented in Figure 10 hardened this finding.
In regards to the passenger flow assignment, some papers envisaged it in their optimization models.Particularly Zhang, Dong, Zhu [34] which developed a timetable model featuring a dwelling time function based on the volumes of boarding and alighting at each station.The proposed simulation claims its efficiency for meeting the passenger demands.Our proposed function for minimum dwelling time at stations is not similarly formulated but has the same concept of considering the volume of passengers getting-in and gettingout of the rolling stock.Moreover, this consideration helps develop the timetable more efficiently with the minimization of dwelling-during-low-traffic periods.
The planning process for large urban rail transit networks often operates the rolling stock of each line separately i.e., the train operation plan of each line is optimized independently.Firstly, the number of transferring passengers from one line to another is considered as transferring flow when assigning the traffic demand on all lines of the network.Then, based on travel demand, the train operation plan is optimized independently for each line.In this process, our integrated algorithm can quickly produce an optimal solution by generating an efficient timetable for an urban rail line and making the most of rolling stock usage, thus making it relevant for difficult real-world applications.When this strategy is used in the real world, it can assist urban rail operators in making quick and accurate decisions.

Conclusions
In this paper we have formulated a model aiming at the optimization of train operation planning for an urban transit railway line based on passenger travel demand by integrating three sub-problems, namely line planning, timetabling and rolling stock allocation.We introduced two binary variables to provide service trips during all time periods for a service day.We considered rolling stock circulations to the depot, turnaround operations, dwelling time of trips at stations, and time difference between service trips and we formulated a passenger flow assignment that introduced the boarding capacity of rolling stock and other variables to calculate the number of passengers that did, or did not, manage to travel in rolling stock.Then, we tested the performance and the efficiency of the integrated model by applying a simulated annealing-based algorithm to the data from Xi'an metro line 1.The algorithm was computed on MATLAB and showed good results overall for minimizing the travel costs of passengers and the operating costs of the enterprise.
The integrated model featured only full-length service trips and one depot available for parking rolling stock with no limit.However, the current model could be expanded by introducing multiple depots with limited parking capacity.Another possibility to improve the travelling costs of passengers is the consideration of short-turning services for overly demanding railway sections and overtaking operations for express service trips.Finally, we have chosen to solve the overall problem by applying meta-heuristic method which showed good convergence choices to minimize the function's value.Nonetheless, with the integrations of other factors into the problem, solving it would require more specific heuristics to optimize the results.

Figure 1 .
Figure 1.Layout of the considered urban rail line.

Figure 2 .
Figure 2. Set of candidate trips during time period.

Figure 3 .
Figure 3. Layout of turnaround operations and rolling stock circulations to/from the depot.

Figure 4 .
Figure 4. Trip i entering station K before turnaround operation between trips i and j.

Figure 6 .
Figure 6.Example of time period priority choice.

Algorithm 3 .
Passenger flow assignment and timetabling.Calculate d i,k /d j,k based on h l Check if Equations (

Figure 7 .
Figure 7. Analyzing the converging performance of the model.

Figure 8 .
Figure 8. Moves generated by the algorithm.

Figure 9 .
Figure 9. Comparing the computational time based on weight factor α.

Figure 10 .
Figure 10.The relationship between weight factor α and the accumulated waiting time W.

Figure 11 .
Figure 11.The influence of weight factor α on objectives Z 2 and Z 3 .

Table 1 .
Comparison of studies aiming at optimizing train operation planning for urban railway lines.

Table 3 .
Definitions of input and parameters for the integrated optimizing problem.
k Minimum dwell time of servicing trip i at station k τ j,k Minimum dwell time of servicing trip j at station k t A,B Average time required for the boarding and alighting of a passenger t r Reaction time of a passenger to boarding and alighting operation

Table 4 .
Definitions of variables for the assignment of a trip's service passengers.
j Number of passengers boarding the rolling stock servicing trip j travelling to station k B i,k Number of passengers boarding the rolling stock servicing up-direction trip i at station k B j,k Number of passengers boarding the rolling stock servicing down-direction trip j at station k A i,k Number of passengers alighting from the rolling stock servicing up-direction trip i at station k A j,k Number of passengers alighting from the rolling stock servicing down-direction trip j at station k

Table 5 .
Definitions of input and parameters for the assignment of a trip's service passengers.
/B j,k based on Equations (39) and (40) Calculate A i,k /A j,k based on Equations (37) and (38) Calculate G i,k /G j,k based on Equations ( Check if Z optimal > Z new : Then set Z optimal = Z new Otherwise check if e T/∆Z > rand then set Z optimal = Z new ; Otherwise check if move = 0: Then set badmove = l max Otherwise set badmove = l min Termination of inner-cycle Check if x = X: Then go to termination of outer-cycle Otherwise set x = x + 1 and go to Algorithm 2 Termination of outer-cycle Check if T(y) > T min : Then set y = y + 1; x = 1; go to Algorithm 2 Otherwise terminate algorithm and display Z optimal

Table 6 .
Values attributed to the parameters of the model.minutes, [s]: seconds, [p]: passengers, [v]: vehicle β: average time value o f passengers, c: cost per time unit o f service, C: total capacity o f the rolling stock, h max : maximum headway time value,

Table 7 .
Comparing the optimal solutions obtained.

Table 8 .
Comparing the obtained solutions.