Scheduling algorithm with controllable train speeds and departure times to decrease the total train tardiness

Article history: Received July 2 2013 Received in revised format September 7 2013 Accepted November 23 2013 Available online November 17 2013 The problem of generating a train schedule for a single-track railway system is addressed in this paper. A three stage scheduling is proposed to reduce the total train tardiness. We derived an appropriate job-shop scheduling algorithm called DR-algorithm. In the first stage, by determining appropriate weights of the dispatching rules, a pre-schedule is constructed. In the second stage, on the basis of the pre-schedule, the departure times of the trains are modified to reduce the number of conflicts in using railway sections by different trains. In the third stage, a train speed control helps the scheduler to change the trains’ speeds in order to reduce the train tardiness and to reach other objectives. The factual train schedule is based on the modified train speeds and on the modified departure times of the trains. The experimental running of the DR-algorithm on the benchmark instances showed this algorithm can solve train scheduling problems in a close to optimal way. In particular, the total train tardiness was reduced about 20% due to controlling train speeds and the departure times of the trains. © 2014 Growing Science Ltd. All rights reserved


Introduction
Railway traffic has been essentially increased in the last decades (see Lusby et al., 2011 for a survey).The usage of the railroad systems grows for the passenger and freight transportation.Safety and low cost of the railway transportation attract people to use trains more, which causes railway authorities to make a maximal usage of the existing railways.The train speeds and the number of trains moving on a railway system are increasing.As a consequence, a delay of a train arises from time to time.A train delay creates a lot of problems for the railway company including dissatisfaction of passengers about the quality of services and a financial damage associated with excessive train delays.The railway companies are forced to pay penalties to passengers for their delays.To make the usage of a railway system more affective, several approaches for solving the train scheduling problems have been proposed in the last decade.Zhou and Zhong (2007) introduced a resource-constrained project scheduling used for a single-track timetabling problem.Railway segments and stations were considered as limited resources.Such a problem is solved by a branch and bound (B&B) algorithm that segment and station capacity constraints were used as a lower bound.The authors considered a lower bound for a less train delay.An upper bound was constructed via a beam search heuristic.A B&B algorithm was also used for a mixed integer non-linear mathematical programming reported by Kraay et al. (1991) with presenting the computational results for a 102 mile stretch of track interlinking 13 sidings with 22 trains in common.A train pacing problem has been considered, where a speed profile for each train has to be determined.Jovanovic and Harker (1991) proposed mixed integer programming, which is similar to a flow-shop scheduling problem.Two types of the variables were used in the proposed algorithm.The binary variables were used for ordering pairs of trains.The other variables were the continuous variables used for selecting the departure times of the trains.The proposed algorithm could solve the problem with 24 railway segments and with 100 trains.Szpigel (1973) was the first who identified the similarities between a job-shop scheduling problem and a train scheduling problem in the case of a single-track railway.The former was solved by Szpigel (1973) using a B&B algorithm, the initial linear programming excluding order constraints.Branching was required if the current solution contains trains which were in a conflict (i.e., when trains turn out to be on the same railroad section at the same time).The objective was to minimize the weighted sum of the train transit times.The computational results for 5 single-track sections and 10 trains have been reported.
The same problem was considered by Carey and Lockwood (1995) via binary mixed integer programming similarly to that considered by Jovanovic and Harker (1991).Temporal constraints were identical to those used by Szpigel (1973).The objective was to minimize the deviation from the ideal arrival times and the ideal departure times for all the trains to be scheduled.Mladenovic and Cangalovic (2007) used job-shop scheduling problem as a way to solve the train scheduling problem where a route was interpreted as follows.The route is a sequence of facilities the train must cross from the originating station to the destination.Assuming that the train trips are jobs to be scheduled, which require the elements of infrastructure as restricted resources, it was made by the mapping of the initial problem into a special case of a job-shop scheduling problem.In order to solve the job-shop scheduling problem, a constraint programming approach has been developed.A support to fast finding a good schedule was offered by an original separation and a bound-and-search heuristic.To improve the time performance, a surrogate objective function was used which had a smaller domain than the actual objective function.
There are variety of algorithms to schedule jobs in a job-shop scheduling problem like the shifting bottleneck algorithm (Adams et al., 1998) that tries to find the most bottleneck machine in each irritation.Operations on that specific machine are scheduled as a single machine problem.The procedure is continued for all remaining machines in M or it is stoped when there is no machine with lateness for operations.A tabu search algorithm is a local search one used for job-shop scheduling; Glover (1989).A tabu search algorithm adopts a local search approach with a 'memory' implemented as a 'tabu-list' of moves which have been made in the recent history of the search, and which are forbidden (tabu) for a certain number of iterations which follow.Simulated annealing is a local search meta-heuristic for the optimization problems.Simulated annealing tries to escape local optima by hillclimbing techniques.At each step, the simulated annealing algorithm changes the current solution by a random solution and used for scheduling by Van Laarhoven (1992).Shafia et al. (2010) tried to reduce the tardiness of operations (equivalent to trains latecy) by developing a robust job-shop scheduler, which has the capability of handling the perturbation that exists among almost all input parameters.The aim of developed algorithm was, by small alteration in the input parameters reduces the latency.A simulated annealing algorithm has been proposed to find near optimal solutions in a reasonable time.Ghoseiri et al. (2004) developed a multi-objective optimization model for the train scheduling problem.They considered both single and multiple track railway systems.Their objective is defined as lowering the fuel consumption cost and minimizing total passenger time.First, they solved the problem by a Pareto algorithm, then they tried to use a multi-objective optimization to tune the results.There are some other reports about multi-objective optimization like Naderi-Beni et al. (2012) that tries to reduce two objectives of weighted mean tardiness and makespan.This model can be suitable to distinguish between passenger trains that tardiness is the main critaria in scheduling and fright trains that the makespan is most important factor.Dorfman and Medanic (2004) used a discrete-event model to schedule the traffic on a railway network.They claimed that it was an efficient technique with respect to the time needed to travel criteria.Burdett and Kozan (2010) made a relationship between flexible job-shop (with parallel machines) and train scheduling.They used a disjunctive graph to model the train scheduling problem.Pacciarelli and Pranzo (2001) used an extension of the disjunctive graph model.A tabu search algorithm was used to solve multi-track railway scheduling problem.A greedy heuristic was proposed by Cai and Goh (1994) for the train scheduling in a single-track railway.There is a limitation in their algorithm because they assumed that all trains moved in the same direction must have the same speed and terminating siding.

Problem setting
The problem of a timetable generation has to be solved at a tactical level of the railway planning process; Lusby et al. (2011).In a job-shop approach to train scheduling, trains and railroad sections are synonymous with jobs and machines, respectively.So, in the following setting of the optimization problem, job-shop terms are given in parenthesis after railway terms (or vice versa).Let a set of railroad sections (machines) , , , { = be given before scheduling.For each train J i   , it is given an ordered set (a route) of the railroad sections (machines), which have to be visited by train i  .To be more precise, a sequence of the job operations on the corresponding machines is given as follows: ). , , , ( = Hereafter, an operation Tanaev et al. (1994) Let a non-negative number i r denote the earliest departure time of the train (the release time of the job)


. The main objective under consideration is to find a train (job) schedule minimizing the following sum for all trains (jobs) J i   .According to the three-field notations used for machine-scheduling problems (see Graham et al., 1979), the above scheduling problem is denoted as . The minimal expected completion time for each job (train) can be calculated as . Different jobs (trains) may need the same machine (railroad section) at the same time and so they must wait until the machine (railroad section) be free, therefore the completion (arrival) time i C of jobs (trains) may be different from (larger than) the minimal expected completion time Along with criterion (2), we consider criterion (3) and criterion max C of minimizing the makespan Note that criterion (2) is mainly used for the passenger transportation, while criteria (3) and ( 4) are more important for the freight transportation.For a railway company, all three problems are useful to be solved at a tactical level of the railway planning; see Lusby et al. (2011).We remind that a regular criterion means to minimize a real-valued function ) , , , ( can be started earlier without increasing the starting time of another operation or altering the operation sequence processed on any machine from set M .For a regular criterion, at least one optimal schedule is semi-active (see Graham et al., 1979;or Tanaev, et al., 1994).Priority dispatching rules have been studied in the literature for several decades since they are widely used for different scheduling problems like the job-shop scheduling problem arising in the real world (see Haupt, 1989;Muth & Thompson, 1963;Panwalkar & Iskander, 1977;Tanaev et al., 1994).However, the conclusion of many years of research is that no priority dispatching rule performs better than the other ones tested for a rather wide class of scheduling problems.So, several researchers developed tools to discover effective priority dispatching rules automatically (see Abdolzadeh & Rashidi, 2010;Dorndorf & Pesch, 1995;Gabel & Riedmiller, 2007;Geiger et al., 2006;Li & Shi, 1994).
In this paper, we develop a weighted mixed priority dispatching rule scheduler (we call it DRalgorithm) for solving the classical job-shop scheduling problems . The rest of the paper is organized as follows.We use a mixed graph to model the job-shop scheduling problem (Section 3).A three-stage strategy is proposed to reduce the total job tardiness (the total train delay time).In the first stage, the jobs (trains) are pre-scheduled using the DR-algorithm (Sections 4 and 5).In the next stage, the tardiness of each job (train) is measured.The algorithm tries to modify the departure time of the trains (the due date of the job completion) due to information obtained at the pre-scheduling stage in order to decrease the total train (job) tardiness (Subsection 6.1).In the third stage, a process controlling policy is used to improve the quality of scheduling and to make the final train schedule (Subsection 6.2).An illustrative example is given in Subsection 6.3.Computational results are discussed in Section 7. In Section 8, concluding remarks and perspectives are given.In what follows, we use the survey (Lusby et al., 2011) and the monographs (Tanaev et al., 1994;Thulasiraman & Swamy, 1992) for terminology on train timetabling, scheduling theory and graph theory, respectively.

A mixed graph model for the job-shop scheduling problem
We use a mixed graph under consideration.Mixed graph G allows us to present a problem data and to describe algorithms for solving the job-shop problem (Tanaev et al., 1994).In such a mixed graph  is a union of two dummy operations ( o and * ) and the set of all operations to be processed on machines M .The dummy operation o determines the starting time 0 = t of a schedule to be constructed.The dummy operation * determines the completion time of the last operation in a schedule.The positive weight ij p (the operation processing time) is prescribed to the vertex (to the operation) . Arc set A of the mixed graph G defines the precedence constraints implied by the ordered sets i Q , . Arc set A defines also the preceding of the dummy operation o to the first operation 1) ( 1 for each job of the mixed graph G defines the machine constraints.At any time, each machine , which have to be processed on the machine via orienting all edges ) or by arc has to be processed before operation ).Thus, each schedule existing for the problem A mixed graph approach for solving the problem is based on the following claims; Tanaev et al. (1994).A circuit-free directed graph for the problem and viceversa.There exists a one-to-one correspondence between the set of all the semi-active schedules and the set , the most difficult question while solving the problems that has a minimal value of the objective function (2) among those in all the circuit-free directed graphs To find an answer to this question is NP-hard problem.The with the minimal value of the corresponding objective function (2) (or the objective function (3) or (4), respectively) is called optimal directed graph for the problem ).

Evaluating of the dispatching rules
To evaluate the efficiency of the different dispatching rules, an optimal scheduler (like a B&B algorithm) for the problem are calculated and stored in the corresponding cells of the row in Table 1. is respecting to the SCT-rule.After generating Table 1, the scheduler calculates worthiness of the dispatching rules included in the database by assigning weights to them.The weight t w indicates the efficiency of the priority dispatching rule t X in optimal scheduling for the problem To be more precise, the weight i w for the dispatching rule is equal to the percentage of successful decisions made on the basis of the priority dispatching rule t X .A successful decision happens when a dispatching rule implies the same orientation of the conflict edge in the set E as the B&B algorithm made when an optimal directed graph r G was constructed for the problem Therefore, the weight t w of the priority dispatching rule t X is defined as follows: . 1 = It should be noted that there are a lot of priority dispatching rules which are used in a variety of heuristic algorithms for scheduling jobs J J i  in the job-shop; see Haupt (1989), Muth and Thompson  (1963), Panwalkar and Iskander (1977) among others.

DR-algorithm
To solve the train scheduling problem, we need an algorithm that schedule operations Q sequentially, e.g., operation must be considered after operation .
This property of the desired algorithm will allow us to control a situation for each train in each railroad section.Note that some famous scheduling algorithms like a shifting bottleneck one (Adams et al., 1998) need a lot of CPU-time in the case when number m of the machines (railroad sections) is considerably large than number n of the jobs (trains).Moreover, each time it is desirable to know: Is there any train is compared with all other operations processed on the same machine with i j > is added to the digraph r G .
After sequencing operations 1) ( 1 , and so on until operation

Train tardiness reduction via controllable scheduling
A three stage scheduling algorithm was used to reduce the total job tardiness (or delay time of the trains).In the first stage, the trains J are pre-scheduled by the DR-algorithm.In the second stage, the tardiness of each train is measured and the algorithm tries to modify the departure time of the trains to decrease the total tardiness on the basis of information obtained at the pre-scheduling stage.In the third stage, the special module is used to improve the quality of the preliminary schedule and to construct the final schedule (see Fig 1).
, one can reduce the number of conflicts between trains tending to use the same railroad section at the same time.In this stage of train scheduling, the tardiness j T (see Eq. ( 2)) for each train and set J of all the trains is divided into three subsets as follows: : If tardiness j T of the train j  is smaller than the average value ve A , it shows that the other trains of the set J wait more (in average) for the train j  than train j  waits for other trains from the set J .Therefore, if the train j  will start earlier, it may release the railroad sections earlier and this could reduce the tardiness of other trains.   ve j A T > : If tardiness j T of the train j  is larger than the average value ve A , it shows that train j  waits for other trains more than other trains wait for the train j  .In such a situation, if the train j  will departs later, it may have less conflicts with other trains for the railroad sections.
: The tardiness of the train j  belongs to the feasible range of the average tardiness ve A .No change for the departure time i r is needed.The value  shows the range of the tardiness connivance.Finding a proper value for the  value depends on the concrete train scheduling problem and so the value of  is defined by the user.
The above procedure is used to modify the start times of the trains (the release times of the jobs) J .
Maximal possible change  of the departure time ( ) must be assigned by the user.In our computational experiments, the value  was equal to 10%  of ve A .

Train speed control
In the third stage, DR-algorithm reschedules the trains J on the railroad sections M .After resolving conflict edges , a speed control module is applied.The speed control module compares completion time ij c of the operation with the minimal release times kl r of other operations . Three situations have to be considered: then there is no a competition between two trains i  and k  to use the railroad section . Therefore, the scheduling process is continued without changing the speed of hold, then increasing the speed of train i  may decrease the tardiness of train k  .Therefore, the scheduler increases the speed of train i  by %  .As a result, train i  will release the railroad section hold, then increasing the speed of the train i  is desirable, however this increasing may be no more than %  .So, the time used by train i  to cross the railroad section will be decreased by the value kl ij r c  and so This procedure allows the scheduler to increase the speed of trains with a feasible %  in order to reduce the train tardiness (if any).Of course, there is a limitation on such a speed increase depending on the train types, railway, environmental situation, etc.

Example
The following example allow us to demonstrate the main idea of the proposed scheduling algorithm.We assume that three trains have to be scheduled on three railroad sections (where 3 = m ) includes the following three subsets:

Computational results
DR-algorithm was coded in Borland Delphi.For evaluating the efficiency of the developed algorithm, we compared it with the results of the six heuristic dispatching rules, which were also coded in Borland Delphi. (Table 3), and for the total completion time criterion i C  (Table 4).
In the experiments, we used 20 benchmark job-shop instances introduced by Lawrence (1984) (i.e.instances la01 -la20) to evaluate the seven developed heuristic algorithms.The minimal possible makespans for the instances la01 -la20 are known from Internet and they are given in the last column of Table 2.In column 1 of Tables 2 -4, the names of the benchmark instances are given, in column 2 the sizes m n  of the problems, in columns 3 -7 the objective values obtained by the corresponding heuristic algorithms.In Tables 2 -4, the best objective values obtained by the seven heuristic algorithms are presented in boldface.In Table 2, the optimal makespan values obtained by DR-algorithm are underlined.Other six heuristic algorithm did not obtain the minimal makespan values.From Table 2, it follows that the DR-algorithm is more effective for the objective of minimizing the Fig. 6 presents the total tardiness of the trains obtained after the first stage, the second stage, and third stage 3 of the DR-algorithm.By an overview given in Fig 6, it is observable that the total tardiness in average has been reduced about 20% .
In Table 5, the total completion time and makespan objective function for DR-algorithm are presented after each scheduling step (columns 2 -4 for criterion i C  and columns 5 -7 for criterion max C ).
Column 8 in Table 5 presents the number of modified operations ) (ij ij o  , i.e., the number of railroad sections were a train speed was increased.Column 9 presents the total volume of changes of the processing times ij p due to increasing the speeds of some trains.

Conclusion
A three-stage strategy was used to reduce the delays in train scheduling.In the first stage, a prescheduling algorithm executed to achieve some data about trains.At the second stage, the departure time of the trains are modified in order to decrease train delays.In the third stage, a controllable processing time module tries to reduce train delays as much as possible via increasing speeds of some trains.Computational results shows that this policy can be useful to reduce total tardiness, total completion time and makespan in the train scheduling.As a future research, it is desirable to consider priorities for usual trains and non-stop type of trains.For defining the right weights for the dispatching rules, we used some optimal solutions available for the benchmark problems la01 -la20 with the makespan objective function in order to assign appropriate weights to the dispatching rules.However, these weights may not be so useful for the criteria i T  and i C  as for the makespan criterion.
Therefore, the computational results for these two objective functions (Tables 3 and 4) are not so impressive like those obtained for the makespan criterion (Table 2).Therefore, it will be useful to develop exact algorithms for the problems If such a train j  exists, one can reduce a waiting time of the train i  by increasing the speed of the train j  crossing the railroad sectionM k  .So, despite of the existence of many heuristic algorithms for the job-shop scheduling problems, we developed a new sequential algorithm named DR-algorithm to solve the problem more appropriate for the train scheduling.The DR-algorithm generates machines of the set M in the order such that they are requested for processing the jobs J

Fig
first stage, pre-scheduling was executed.The total tardiness for all three trains after pre-scheduling is equal to

Fig
Fig. 2. Mixed graph ) , , ( = E A Q G for three trains that must pass three railroads sections Fig. 3. Directed graph ) (G G r   constructed by DR-algorithm at the first stage

Fig. 4 .Fig. 5 .
Fig. 4. The modified departure (release) times for trains (jobs) calculated at the second stage Fig. 5. Directed graph s G obtained from the mixed graph G due to rescheduling based on the modified train speeds and departure times (in the third stage) by the mixed graph G via orienting edges of set E .
, then the last column in Table1was filled with number 1. On the other hand, if the

Table 2
A comparison of DR-algorithm and heuristic scheduling rules for the makespan criterion

Table 3
A comparison of DR-algorithm with six heuristic algorithms based on despatching rules for the criterion

Table 5
Running DR-algorithm with modified train speeds.