An integrated model for train rescheduling and station track assignment

Both train rescheduling and station track assignment have become hot topics in recent years. It is fundamentally important to do the rescheduling and track assignment work at the same time to avoid the feasibility risk of the re-scheduled timetable. The purpose of this paper is to design an integrated model for train rescheduling and track assignment in order to provide an integrative plan for the trains to run on the railway sections and go through stations. Based on the existing train rescheduling model, the model is designed by adding the constraints and the optimization goal of track assignment. The goal of track assignment is to maximize the equilibrium of the track usage time, and the constraint is that two trains cannot occupy a same track at the same time. An artiﬁcial bee colony algorithm is used to solve the model to get the operation plan. A computing experiment was carried out to prove the effectiveness of the model and the efﬁciency of the algorithm. The approach presented in this paper can provide a reference for the developers of a railway dispatching system.


INTRODUCTION
Today's railway system plays an important role in the transportation of passengers and freights. The capacity of the railway system depends on the railway facilities and the transportation organization plans. The most important plan is the train timetable, which decides the train operation order, the arrival time and the departure time of the trains at stations. It determines the quality of the railway system operation. Obviously, it is an essential task to design the train timetable and reschedule the trains in emergencies to keep the railway system operating smoothly. We now recognize that it is not enough to design the arrival and departure time of the trains at stations. It is possible that This is an open access article under the terms of the Creative Commons Attribution License, which permits use, distribution and reproduction in any medium, provided the original work is properly cited. © 2020 The Authors. IET Intelligent Transport Systems published by John Wiley & Sons Ltd on behalf of The Institution of Engineering and Technology a re-scheduled timetable is not feasible, since a certain train cannot enter a station if there is no unoccupied arrival and departure track when the train approaches the station. The indirect reason for this is that too many trains that will arrive at a station in a short period of time. This leads to the result that the number of arrival and departure tracks is not large enough to accommodate the trains. For instance, the arrival and departure tracks are numbered as I, II, 3, 4, 5, and 6 in Figure 1, which obeys the Chinese railway management rules. Tracks I, 3 and 5 are set to accommodate the south-going trains that are all occupied in the Figure 1. At this time, train NC cannot enter the station.
Thus, it is quite necessary to do the track assignment work when rescheduling trains in the dispatching sections. Track FIGURE 1 A sketch to describe the track assignment problem at a station assignment can reduce the risk of infeasibility for the timetable and lower the difficulty of dispatching work. In this paper, we integrate the train rescheduling and the track assignment problems, build a model to describe the problem, and present a highly individualized algorithm to solve the problem.

RELATED WORKS
Train scheduling and rescheduling problems have been hot topics for a long period of time. Caprara et al. (2006) designed a train timetabling system that took into account the manual block, the station capacities and the trains to be inserted into the prescribed timetable [1]. Tornquist and Persson (2007) presented an optimization approach to the problem of rescheduling railway traffic in an n-tracked network when a disturbance had occurred [2]. Abril et al. (2008) took railway scheduling problems as constraint satisfaction problems (CSPS) and designed a distributed and asynchronous search algorithm (DTS) to solve the problems [3]. Castillo et al. (2011) studied the timetabling problem for a mixed multiple-and single-tracked railway network [4]. Corman et al. (2012) studied the problem of coordinating several dispatchers with the objective of solving the train rescheduling problem in the related dispatching railway sections [5]. Min et al. (2011) provided a column-generationbased algorithm to resolve the train-conflict problem on a metropolitan railway network [6]. Kang et al. (2016) studied the last train rescheduling problem. They proposed a mathematical model, taking the difference between the original timetable and the rescheduled timetable as the optimization goal [7]. Wang et al. (2016) used timed coloured petri nets to model the train rescheduling problem and designed a heuristic algorithm to search for an optimal or near-optimal feasible schedule [8]. Šemrov et al. (2016) designed a reinforcement learning approach to solve the train rescheduling problem on a single-track railway [9]. Yang et al. (2015) proposed an optimization method to schedule trains for reducing the energy consumption and travel time synchronously, formulating an integer-programming model with timetable and speed control [10]. Lan and Lin (2005) presented a four-stage DEA approach to measure the railway transport technical efficiency and service effectiveness, and strategies for operating railways [11]. Yang et al. (2018) developed an energy-efficient rescheduling approach under delay perturbations for metro trains, which aimed to minimize the net energy consumption under the premise of reducing or eliminating the delay altogether [12]. Chen et al. (2019) attempted to develop a draft passenger train timetable under the constrained capacities of arrival-departure tracks and servicing tracks for the passenger train coaching stocks in a passenger railway network [13]. Caimi et al. (2012) proposed a dispatching assistant in the form of a model predictive control framework for a complex central railway station area, building a binary linear optimization model, which assigned precomputed blocking-stairways to trains while respecting resource-based clique constraints, connection constraints, platform related constraints and consistency constraints with the objective of maximizing customer satisfaction [14]. Corman (2020) merged train rescheduling problem and routing passengers' problem and solved this problem with a game theoretical approach, focusing on the solutions corresponding to Nash equilibria of a game involving passengers and infrastructure managers [15]. Zhu [21]. Katori and Izumi (2019) described how to generate automatic rescheduling methods while specifically considering the operated rolling stock types [22]. Josyula et al. (2018) presented the solution space of the train rescheduling problem as a binary tree and designed and implement two fast heuristic algorithms-a sequential, and a parallel [23]. Martinis presented a feed forward simulation-based model that performed speed profile optimization together with minor rescheduling actions with the purpose to provide railway operators and infrastructure managers with energy-efficient solutions that were tailored especially for freight trains [24]. Iswardani and Rusdiansyah studied the development of rescheduling considering predictive delay to minimize the total delay time [25]. Kato et al. (2018) presented an algorithm for extraction of unpredictable delays with original and resultant train timetable data using train operation simulation [26]. Francisco et al. (2018) constructed a model of transportation on-demand to address an incidence which happened in a railway line, forcing to reschedule the service in such transit lines [27]. Shakibayifar et al.
(2019) constructed a multi-objective simulation based optimization framework to effectively manage the train conflicts after the occurrences of a disturbance caused by a temporary line blockage [28].
Some of the papers focused on a real-time train rescheduling problem. Sato and Fukumura (2012) solved the locomotive rescheduling problem by changing the assignment of the locomotives to all trains and considering their periodic inspections [29]. Espinosa-Aranda and García-Ródenas (2013) formulated a real-time train rescheduling problem as a binary integer linear programming problem that tried to maximize consumer satisfaction by minimizing total passenger delay at destinations [30]. Zhan et al. (2015) formulated a mixed integer-programming model to solve a real-time high-speed train rescheduling problem [31].  also proposed a mixed-integer programming model to describe the real-time train rescheduling problems around bottleneck sections and designed an innovative improved algorithm to solve the problems [32].  developed a departure time domain for passenger trains under the constrained receiving and dispatching capacities of arrival-departure tracks in a railway station [33]. Dalapati et al. (2017) presented an approach to avoid the collisions in the railway traffic system, including the collisions between the trains in the railway sections and in the stations, which implied that the station tracks usage plan must be designed [34]. Bettinelli et al. (2017) studied the real-time resolution of conflicts arising in real-world train management applications, aiming at defining a set of actions which must be implemented to grant safety, e.g. to avoid potential conflicts such as train collisions or headway violations, and restore quality by reducing the delays [35]. Cavone et al. (2019) constructed a mesoscopic mixed integer linear programming model to solve the real-time train rescheduling problem, filling the gap between macroscopic and microscopic train rescheduling problem modelling [36]. Ikonen et al. (2019) proposed an approach where a neural network is trained to make online decisions on these quantities, as well as on the choice of the rescheduling method (mathematical programming or metaheuristics) [37]. Shakibayifar et al. (2018) proposed a multi-objective simulation-based optimization framework to effectively manage the train traffic after the occurrences of a disturbance caused by a partial/full blockage [38].  addressed the rescheduling problem in a transit line that had suffered a fleet size reduction and presented different modelling possibilities depending on the restriction assumptions [39]. Galapitage et al. (2018) developed a system that combined real-time driving advice calculation with real-time junction scheduling to reduce delays at junctions, and had simulated the operation of this junction scheduling system at Neasden Junction in the United Kingdom [40]. Corman et al. (2018) reviewed and evaluated the indices applied to railway traffic control, comparing optimal rescheduling approaches and clarified the benefits of automated traffic control for infrastructure managers, railway operators and passengers [41]. Yang et al.
(2019) designed a real-time timetable rescheduling method for energy optimization of metro systems, which took little time to recalculate a new schedule and gave proper solutions for all trains in the network immediately after a random disturbance happens [42]. Altazinab et al. (2020) proposed an approach combining multi-objective optimization, to select rescheduling decisions, and macroscopic simulation, to solve the real-time train rescheduling problem [43]. Huang et al. (2020) developed non-linear mixed integer programming (NMIP) models with two different recovery strategies to solve the train rescheduling problem and designed a two-stage approach to carry out the optimization process [44].
Much attention has also been paid to train routing in railway stations in recent years, which belongs at the control level. Zwaneveld et al. (1996) studied the train routing problem, analysing the problem from the strategic level, the tactical level and the operational level [45]. Kroon et al. (1997) studied the computational complexity of routing train problems at stations [46]. Billionnet (2003) used integer programming to solve the train platforming problem. The goal was to assign the trains to available tracks to make it possible to go through the stations [47]. Corman et al. (2010) addressed the problem of train conflict detection and resolution, which was dealt with every day to adapt the timetable to delays and other unpredictable events occurring in real-time [48]. Schasfoort et al. studied the real-time train assignment problem and modelled it as a mixed integer program that strove to minimize the total weighted delay of trains [49]. Königa and Schöna (2020) presented an optimization model for delay management in railway networks, taking limited capacities of tracks and stations into consideration [50]. Vansteenwegen et al. (2019) proposed a conflict prevention strategy for large and complex networks in real-time railway traffic management based on the analysis of the impact of the unexpected events such as overcrowded platforms or small mechanical defects can cause conflicts [51]. Zhang et al.
(2020) proposed a mixed integer linear programming model, which minimized the weighted sum of total train delays and the platform track assignment costs, subject to constraints defined by operational requirements [52].
Researchers have realized that it is necessary to studied train rescheduling and routing problem comprehensively. Carey and Carville (2003) integrated the train scheduling and platforming problems and constructed a comprehensive model to solve the problems [53]. Lee and Chen (2009) proposed an optimization heuristic that included both train pathing and train timetabling, which integrated the train pathing problem and the scheduling problem [54]. Meng and Zhou (2014) proposed a simultaneous approach to study the rerouting and rescheduling problems on an n-track network, decomposing the original complex rerouting and rescheduling problems into a sequence of single train optimization sub-problems [55]. Samà et al. (2017) presented a number of algorithmic improvements implemented in an optimization solver in order to improve the possibility of finding good quality solutions quickly for train scheduling and routing problems [56]. In fact, there is another control level problem-the speed control or traction plan. This problem also attracted the researchers' attention.  All these publications have given us much inspiration when studying this problem. In this paper, we present a new model to solve the problem, especially describing the model constraints in a novel way.

PROBLEM STATEMENT
The problem in this paper includes two sub-problems. One sub-problem is how to determine the arrival and departure time of the trains at stations. The other sub-problem is how to decide which arrival and departure track each train will occupy. The railway system may fall into a state of disorder, especially in emergencies. When rescheduling the trains, assignment of the arrival and departure track for the trains appears particularly important; this assignment will assure the feasibility of the rescheduled timetable. For example, we need to design the arrival time and the departure time of train NC1 and train NC2 at station 1 and station 2. When train NC1 approaches station 1, we can assign track 3 to accommodate it as the usage rule in normal conditions, which assigns tracks I, 3, or 5 to receive the south-going trains. However, we find that train NC2 cannot enter station 2 when it approaches because tracks I, 3, and 5 are all occupied by trains. Therefore, in this case, we cannot only consider the arrival and departure time of the trains; we must also the usage plan of the tracks of station 2. In emergencies, the usage rule of the tracks may be changed, allowing all of the tracks to receive all of the trains from both directions. Thus, we can assign train NC2 to occupy track 4 if it needs to stop at station 2.
In some of the references, the track assignment problem was considered for the condition that the station could accommodate the trains. The fact that the track assignment plan affected the train timetable was seldom considered. As seen in Figure 2, the arrival time of train NC2 at station 2 must be changed because there are no tracks left when it approaches station 2. How can this problem be resolved? We need to change the arrival and departure time of the trains at the stations first to make it possible to platform the trains in order to allow them to arrive on time.
In this paper, we focus on the train rescheduling and track assignment problem, combine them and construct an integrated model. We will apply the artificial bee colony algorithm to solve the model to generate the train rescheduled timetable and track usage plan simultaneously. Since train rescheduling and track assignment problem is a very difficult problem, involving many interfering factors, we must define the scope of the study in this paper. We focused on the train rescheduling and track assignment problem, considering only short delays in the railway system. We only solve the problem on a single railway line, not on a railway network, with the automatic block system or movable block system. And we assume that human resources, including the dispatchers, the engineman and the crew can meet the requirements of the train rescheduled timetable.

Decision variables and parameters
The purpose of the model is to determine the arrival and departure time of the trains at stations and the track assignment plan, which determines which train will occupy which track at a station.
The decision variables are the arrival time a i, j , the departure time d i, j and the occupying sign x i, j,k . The decision variables are showed in Table 1 and the parameters used in the model of this paper are listed in Table 2.

Constraints for train rescheduling
There are numerous prerequisite rules in railway operation designed to ensure safety and determined by facilities such as the blocking systems. The most important rule is to determine the relationships between the arrival and departure time of all the trains, to separate the trains in space. The system constraints are therefore designed as follows.
The difference between a forward train (the former one of two neighbour trains) arriving time and a backward train (the latter one of two neighbouring trains) arriving time at the same stations must be longer than the technical intervals, which produces the constraint shown in Equation (1).
Likewise, the difference between a backward train departing time and a forward train departing time from the same stations must be longer than the technical intervals. The constraint can be described as: It is not allowed to receive and send trains simultaneous at some stations. The interval between two trains must satisfy the departing-arriving interval and arriving-departing interval.
Since depart−arrive is the minimum time interval between a train leaving a station and another train arriving at the same station, then the constraints are defined in Equation (3).
The running time of each train according to the rescheduled timetable must be longer than the minimum running time, which can be formulated as follows.
Again, the dwelling time of each train must be longer than the minimum dwelling time, which produces the constraint below. The passenger trains must not leave the stations before the time planned on the timetable, which is made available to the public, so there is a constraint as follows.

Constraints for track assignment
At first, we analyse the possible variations of the relationship between arrival and departure time of two neighbouring trains if they use a same track at a station. We assume that it is at track 1, station 1. Then, all the probabilities are listed in Table 3 and showed in Figure 3. In each subfigure of Figures 3 and 4, the two lines in each subgraph stand for the occupying time of train 1 and train 2. Two possible variations of the relationship between two neighbouring trains when they use the same track at a station (x 1,1,1 ⋅ a 1,1 − x 2,1,1 ⋅ d 2,1 ) < 0. But we know this situation cannot be allowed in train operation work to avoid the train conflicts. In the same analysis manner, we find that the situations described in Figure 3(b), (c) and (d) are not allowed in reality. In Figure 4(a), a 1,1 < d 1,1 < a 2,1 < d 2,1 . Then if train 1 and train 2 occupy track 1 at station 1 (in this situation This situation is allowed in the train dispatching work. For the same reason, (x 1,1,1 ⋅ d 1,1 − x 2,1,1 ⋅ a 2,1 ) × (x 1,1,1 ⋅ a 1,1 − x 2,1,1 ⋅ d 2,1 ) > 0 is right according to Figure 4(b).
Another constraint is the track assignment constraint. Just only one track must be assigned to a train when it goes through a station, no matter whether it stops or not. Then the constraint can be described as Equation (8).
According to the operating rule, a train can stop at a main track as well as at a side track. But when it goes through a station without a stop, it must occupy the main track. So the constraint can be described as follows.

Optimizing goals of the model
We still take the total delay time as the first optimizing goal. The total delay time includes the delayed arrival and the departure time of each train at all the stations. Thus, the goal can be described as follows.
Since different types of trains have different weights, we will classify the trains into different groups and set weights for them by group.
In addition, different tracks assigned to the trains affect the running distance in the station, leading to the fact that the running time of a train in a station is determined by the selection of the track. So it is necessary to balance the usage intensity of all the tracks to reduce the maintenance costs. To maximize the track usage equilibrium of a station, we take it as an optimizing goal in this paper, defined as follows.
where X l, j is a variable that records the occupied time of track l at station j. If track l at station j is occupied by a train, it will be added 1. The goal to set this variable is to count the time that each track is occupied, to guide the assignment result to balance the use of tracks. We have two optimization goals. One goal is the total delayed time of all the trains at all the stations. The other goal is the track usage equilibrium. Since the two goals do not have the same measurement unit, is introduced to unify the measurement units before we can add the two goals together to generate the comprehensive optimizing object, which can be obtained by a parameter identification algorithm based on the related data.
Then the integrated model is constructed as follows:

Classical artificial colony algorithm
The artificial bee colony algorithm (ABC) is an optimization algorithm inspired by the intelligent foraging behaviour of a bee swarm, which was put forward by Karaboga [61]. The ABC algorithm is now one of the study hotspots in evolutionary research fields and it has been used to solve many engineering optimization problems.
In the ABC algorithm, the position of the food source represents a possible solution. Whether the position of the food source is the best position or an acceptable position depends on the amount of the honey in the position. Similarly, the quality of the solution of a problem is determined by the value of the fitness function. The number of the bees is the number of possible solutions that are to be optimized.
The bees in the ABC model are divided into three groups: employed bees (EBs), onlooker bees (OBs) and scout bees (SBs). The EB will search for new positions of the honey and transit the information to the onlookers. The duty of the OB is to search for new positions of the honey source based on the information given by the employed bees, and the OB will then select the right source position. The SB will look for a new honey source position to replace the inferior honey source position. The main idea of the ABC algorithm is to simulate the process of the bees' search for the best honey source position.
Onlookers watch the dances of employed bees and choose food sources depending on dances. The main steps of the algorithm are given below [61,62].
1. Initial food sources are produced for all employed bees.

Repeat
○ Each employed bee goes to a food source in her memory and determines a neighbour source, then evaluates its nectar amount and dances in the hive. ○ Each onlooker bee watches the dance of the employed bees and chooses one of their sources depending on the dances, and then goes to that source. After choosing a neighbour around the source, she evaluates its nectar amount. ○ Abandoned food sources are determined and are replaced with the new food sources discovered by the scouts. ○ The best food source found so far is registered. 3. Until (requirements are met).
The first step of the algorithm is to generate C p solutions, which correspond to the positions of the honey sources. C p is the number of the bees. Each candidate solution l (l = 1, 2, … , C p ) is a d-dimensional vector, where d is the number of the decision variables. Then, the EB, OB and SB will iterate the calculation process for max times, where max represents the allowed maximal iteration times. In the process, the EBs are designed to generate the new candidate solution based on the collected information in order to calculate the fitness value. If the fitness value calculated with the new solution is better than the fitness value calculated with the former solution, the new solution will take place of the former solution. When all the EBs finish searching, they will share the candidate solution and fitness value with the OBs. The OBs will evaluate the fitness value of the shared candidate solutions and select the honey resource according to the probability of the amount of the honey. In this case, the OBs will update the candidate solution based on the former candidate solutions and calculate the new fitness value if the fitness value of the new candidate solution is better than that of the former candidate solution; otherwise, we keep the former candidate solution. If the quality of honey of the source is not acceptable, the SB will replace it with a new randomly generated solution.
Set l = [ (l, q)] C p ×Q to be the solution of a problem, where (l, q) is generated according to Equation (14).
(l, q) = (l, q) + lq [ (l, q) − (r, q)] (15) (l, q) can be an updated solution of EB-EB (l, q). It also can be an updated solution of OB-OB (l, q). r is a randomly generated number whose value is between 1 and C p , where r ≠ l .
To calculate the probability for the OB optimization phase, the equation is designed as showed in Equation (16).
where (l ) is the fitness of the nectar source of l. The calculation process is as follows.
Initialization: to set max and limit ; to generate the solution l = [ (l, q)] C p ×Q to be optimized according to Equation (14); Set the iteration time h = 1; While (h ≤ max ) or the fitness value has not reach the expected value Optimization phase of the EB Update the solution and calculate the fitness value according to Equation (15); Decide the new solution of this phase with a greedy algorithm based on the fitness value; Calculate the probability of the C p solution according to Equation (16); Optimization phase of the OB Decide which solution should be updated according to the calculated probability; Update the solution and calculate the fitness value according to Equation (15); Decide the new solution of this phase with a greedy algorithm based on the fitness value; Optimization phase of the SB Replace the solution which cannot be updated for limit times with a solution generated with Equation (14); Select the optimal solution up to now; Set h = h+1; End Determine the global optimal solution.

Special instructions of algorithm design for train rescheduling and track assignment model
A key step of ABC is to design the original solution vector of the model. The number of the vector elements, the code of the element and other parameters should be determined firstly.

Number of t elements of a solution vector
According to the rule of ABC algorithm and the requirements of the model presented in this paper, the number of the elements of the solution elements can be calculated out due to Equation (17).
When a train goes through a station, there are two times that should be decided-the arrival time and the departure time. If a train goes through a station without stopping, the arrival time equals to the departure time, while they may be different when rescheduling the trains. So we firstly designed 2NM elements for the solution vector. Then when a train goes through a station, it must occupy a track, no matter whether it stops. For there is F j tracks in station j, there are F j options for each train when it going through the station. So we design another N × ∑ M j =1 F j elements for the solution vector. x i jk is a binary variable. If train i occupied track k at station j, it is 1, otherwise it is 0.

Code of elements of solution vector
It is hard to describe the arrival time and departure time directly due to the time format. So we changed the time to the number of the seconds between the time and the 0 o'clock. For example, 08:10:30 can be changed to 29430. Then we can carry out the calculation process easily by turning the time into this format.
And x i, j,k is a binary variable. It is 0 or 1. When we designed the computer program to find the solution, we generated a random number and determine whether it is 0 or 1 according to the value of the generated random number. When the random number was larger than a threshold value , x i, j,k was set to be 1. Otherwise, it is set to be 0. In this paper, we set = 0.8.

Procedure for calculation
A. To set max and limit ; set the scale of the artificial bee C p . Set the weight parameters and i . B. To initialize solution, generating three kinds of decision variables, a i, j , d i, j and x i, j,k , according to Equation (17) and the coding rule analysed in Section 5. replace the solution which cannot be updated for limit times with a solution generated with Equation (14); K. Select the optimal solution due to the above computing results, comparing the fitness values;

FIGURE 5
Original operation diagram between Nanjingnan to Shanghaihongqiao from 12:00 PM to 3:00 PM in the south-going direction

COMPUTING CASE AND RESULTS ANALYSIS
We ran the data experiments on a computer with 8G memory and i5-2400 CPU and took Matlab R2014a as the computing platform. We took the train timetable data of Beijing-Shanghai as the base data of the computing case. The selected section is from the Nanjingnan station to the Shanghaihongqiao station. The train operation diagram is showed in Figure 5. The related trains are divided into two groups. Train numbers in one group start with "D", while others start with "G". The minimum run-ning time of the two types of trains in each section are listed in Table 4 and the number of tracks available in each station in this computing case is listed in Table 5.
We then assumed that G1809 was late by 20 min when it left Nanjingnan station for Shanghaihongqiao. G1, G107, and G113 were late by 10 min. G221 was late by 15 min. According to the model and the algorithm designed in this paper, we instantiated the model and calculated the results. The arrival time and the departure time, as well as the order number that the trains occupied at the stations were seen as the decision variables in the model. The arrival and departure time were transformed to the number of the seconds from 0:00 to the relative time. Then we formed a solution vector with the arrival and departure time of the trains at the stations. There were 34 trains and 8 stations in the computing case. According to Table 5, there were a total of 21 tracks in the southgoing direction for the railway section, except for the tracks in D is set to be 1 and G is set to be 2. The adjusted operation diagram is shown in Figure 6 and the rescheduled timetable is shown in Table 6. The usage plan of the arrival-departure tracks is shown in Table 7.
Comparing the data of Figure 5 and Table 6 (or Figure 6), we can see that the total delay time of all the trains at the stations is 862.5 min, which is the first part of the optimization goal in Equation (10). We can also calculate the optimization goal, Z2 = 0.5 and Z3 = 1. Thus, the total optimization goal is Z = 862.5+100(0.5+1) = 1012.5. The optimization goal is set to be a limited value that we can accept.
Among the delayed trains, only G1809 recovered the status of running due to the original operation diagram. G1 was late by 12 min when it arrived at Shanghaihongqiao. The main reason was for this was that G1 changed the overtaking station when it overtook G1809. It was planned that G1 should overtake G1809 at Danyangbei. However, it overtook G1809 at Changzhoubei, according to the computing results, because of the constraints in the model. G1809 was late by 8 min at Changzhoubei, which led to the delay of G1 at the following stations. G107 was late by 8 min and 30 s when it arrived at Shanghaihongqiao, which reduced the delayed time by more than one minute. G221 was late by 18 min when it reached Shanghaihongqiao, which only shortened the delay time by 3 min. We can see that the delay time cannot be shortened anymore because of the minimum running time in the sections. G113 was still late by 10 min as it departed from Nanjingnan. G359 was not late when it left Nanjingnan, but it was late by 1 min when it arrived at Shanghaihongqiao; the delay was affected by G113. Similarly, G113 was late at Danyangbei and Changzhoubei because it was affected by G13, although it got rid of the delay when it arrived at Wuxidong.
The computing results gave us not only the adjusted timetable, but also the track usage plan of the stations, which we can see from Tables 6 and 7.

CONCLUSION
In this paper we first constructed an integrated model for train rescheduling and track and assignment, trying to avoid the possibility that we cannot generate an available track usage plan to adapt to the rescheduled train timetable, while we reschedule the timetable and design the track assignment plan separately. The model described the train rescheduling and track assignment problem accurately. And we successfully applied the artificial bee colony algorithm to solve the model to generate the integrated train timetable and track usage plan.
It is worth mentioning that the track occupation constraint is designed exquisitely in the integrated model for train rescheduling and track assignment. We thoroughly analysed all possible time and space relationship of the neighboured trains at the stations, and derived the constraint formula. It precisely described the safety requirement when the neighboured trains ran across the stations. It assured the generated track usage plan adapt to the rescheduled timetable, which was the key point of the model.
The algorithm is designed to solve the train rescheduling and track assignment problem. We fully utilized the excellent computing performance of ABC algorithm, specifying the parameters carefully to adapt it to the model. When the computing process was carried out, the arrival and departure time of the trains at stations were changed to integers, which assure that they were easy to deal with. The algorithm was capable of handling the constraints typically encountered in realworld train rescheduling and track assignment and, can be easily adapted to accommodate possible further characteristics. Furthermore, a very general hierarchic objective function allows to optimize different aspects of the problem as the on-time rate of all the trains, the passenger satisfaction degree, the average delay and so on with respect to the nominal timetable.
The case computing has been performed by using real-world instances from Beijing-Shanghai high speed railway. The main aim of the testing was to test the availability of the model and the feasibility of the algorithm. The obtained results show that the integrated train rescheduling and track assignment model is available, and the proposed algorithm is consistently capable of resolving track usage conflicts and obtain high quality rescheduled timetable, at the same time, the generated track usage plan assured the feasibility of the train timetable. Although there are many publications on train rescheduling problem and the track assignment problem, we believe that the main contribution of our approach is to solve the train rescheduling and track assignment problem in an integrated manner.
In future works we will continue to integrated the railway operation work. Train rescheduling belongs to the management level, while track assignment and train traction planning belong to the control level. We will try to integrate the three problems, train rescheduling, track assignment and train traction planning, to make contributions to the management and control integration of railway operation.