A new idea for train scheduling using ant colony optimization

Similar documents
IMPLEMENTATION OF EFFECTIVE BED ALLOCATION AND JOB SCHEDULING IN HOSPITALS USING ANT COLONY OPTIMIZATION

Department of Computer Science, BITS Pilani - K. K. Birla Goa Campus, Zuarinagar, Goa, India

A Viral Systems Algorithm for the Traveling Salesman Problem

Improvement and Implementation of Best-worst Ant Colony Algorithm

An Early Exploratory Method to Avoid Local Minima in Ant Colony System

We are IntechOpen, the first native scientific publisher of Open Access books. International authors and editors. Our authors are among the TOP 1%

ISE480 Sequencing and Scheduling

INTEGRATING VEHICLE ROUTING WITH CROSS DOCK IN SUPPLY CHAIN

ANT COLONY ALGORITHM APPLIED TO FUNDAMENTAL FREQUENCY MAXIMIZATION OF LAMINATED COMPOSITE CYLINDRICAL SHELLS

Procedia - Social and Behavioral Sciences 109 ( 2014 ) Selection and peer review under responsibility of Organizing Committee of BEM 2013.

Journal of Water and Soil Vol. 26, No.5, Nov.-Dec. 2012, p BP14 BP Rotational Delivery 4- On- Demand Delivery 5- Arranged Delivery

Solving Multi-Objective Multi-Constraint Optimization Problems using Hybrid Ants System and Tabu Search

Heuristic Techniques for Solving the Vehicle Routing Problem with Time Windows Manar Hosny

Iterative train scheduling in networks with tree topologies: a case study for the Hunter Valley Coal Chain

Université Libre de Bruxelles

Modeling and optimization of ATM cash replenishment

A Particle Swarm Optimization Algorithm for Multi-depot Vehicle Routing problem with Pickup and Delivery Requests

Research Article Optimizing Schedules of Rail Train Circulations by Tabu Search Algorithm

Insertion based Ants for Vehicle Routing Problems with Backhauls and Time Windows. Marc Reimann Karl Doerner Richard F. Hartl

Ant Colony System vs ArcGIS Network Analyst: The Case of Municipal Solid Waste Collection

The Two-Echelon Capacitated Vehicle Routing. Problem

Multi-depot Vehicle Routing Problem with Pickup and Delivery Requests

Dynamic Scheduling of Trains in Densely Populated Congested Areas

High Speed Train Rescheduling Based on an Improved Triangle Differential Algorithm

Post-doc researcher, IRIDIA-CoDE, Université Libre de Bruxelles, Bruxelles, Belgium.

Performance Analysis of Stop-Skipping Scheduling Plans in Rail Transit under Time-Dependent Demand

Multi Objective Optimization of Time Cost. Quality Quantity Using Multi Colony. Ant Algorithm

Abstract Number: A Feasibility Study for Joint Services of Vehicle Routing and Patrol

Method of Optimal Scheduling of Cascade Reservoirs based on Improved Chaotic Ant Colony Algorithm

Minimizing Passenger Transfer Times in Public Transport Timetables.

Ant Colony Optimisation: From Biological Inspiration to an Algorithmic Framework

CROSS-DOCKING: SCHEDULING OF INCOMING AND OUTGOING SEMI TRAILERS

CEMENT TRANSPORTATION LIMITED-FLEET MODELING AND ASSIGNING TO RATED DEMANDS

Transactions on the Built Environment vol 33, 1998 WIT Press, ISSN

Stochastic Passenger Train Timetabling using a Branch and Bound Approach

ANT COLONY ROUTE OPTIMIZATION FOR MUNICIPAL SERVICES

Vehicle Routing with Cross Docks, Split Deliveries, and Multiple Use of Vehicles. Arun Kumar Ranganathan Jagannathan

An Exact Solution for a Class of Green Vehicle Routing Problem

1.224J/ESD.204J TRANSPORTATION OPERATIONS, PLANNING AND CONTROL: CARRIER SYSTEMS

Procedia - Social and Behavioral Sciences 189 ( 2015 ) XVIII Annual International Conference of the Society of Operations Management (SOM-14)

COMBINED-OBJECTIVE OPTIMIZATION IN IDENTICAL PARALLEL MACHINE SCHEDULING PROBLEM USING PSO

Proceedings of the 2014 Federated Conference on Computer Science and Information Systems pp

Ant Colony Optimization for Resource-Constrained Project Scheduling

Computation and evaluation of scheduled waiting time for railway networks

Timetable attractiveness parameters

AN INTELLIGENT SEARCH TECHNIQUE FOR SOLVING TRAIN SCHEDULING PROBLEMS: SIMULATED ANNEALING & CONSTRAINT SATISFACTION. Mohammad T.

Vehicle Routing with Driver Learning for Real World CEP Problems

Optimization of Scheduled Patients Transportation Routes : Amadora-Sintra Portuguese Red Cross Case Study

Joint design standard for running times, dwell times and headway times

A Mixed Integer Programming Model Formulation for Solving the Lot-Sizing Problem

ENHANCED ANT COLONY ALGORITHM FOR GRID SCHEDULING

SOLVING CAPACITY PROBLEMS AS ASYMMETRIC TRAVELLING SALESMAN PROBLEMS

Storage Allocation and Yard Trucks Scheduling in Container Terminals Using a Genetic Algorithm Approach

Parallel Ant Colony Optimization for 3D Protein Structure Prediction using the HP Lattice Model

Path Planning of Robot Based on Modified Ant Colony Algorithm

Natural Computing. Lecture 10: Ant Colony Optimisation INFR /10/2010

Evolutionary Algorithms and Simulated Annealing in the Topological Configuration of the Spanning Tree

Solving Dynamic Multi-Product Multi-Level Capacitated Lot-Sizing Problems with Modified Part Period Balancing Heuristics Method

A Study of Crossover Operators for Genetic Algorithms to Solve VRP and its Variants and New Sinusoidal Motion Crossover Operator

The Metaphor. Individuals living in that environment Individual s degree of adaptation to its surrounding environment

TASK SCHEDULING OF AGV IN FMS USING NON-TRADITIONAL OPTIMIZATION TECHNIQUES

Supporting tools for automated timetable planning

Optimization of the Logistics of a Courier Business

COMBINE: A decision support system for real time traffic control

An integrated train scheduling and infrastructure development model in railway networks

Testing schedule performance and reliability for train stations

Multi-vehicle Dispatching And Routing With Time Window Constraints And Limited Dock Capacity

A New Approach to Solve Multiple Traveling Salesmen Problem by Clonal Selection Algorithm

Effective Integration of Theory and Practice

A Space-Time Network-Based Modeling Framework for Dynamic Unmanned Aerial Vehicle Routing in Traffic Incident Monitoring Applications

An Improved Immune Genetic Algorithm for Capacitated Vehicle Routing Problem

Optimizing the Design of Water Distribution Networks Using Mathematical Optimization

Solving a Log-Truck Scheduling Problem with Constraint Programming

Metaheuristics and Cognitive Models for Autonomous Robot Navigation

Published online: 05 Jul 2013.

HCTL Open Int. J. of Technology Innovations and Research HCTL Open IJTIR, Volume 2, March 2013 e-issn: ISBN (Print):

EXAMINATION OF SCHEDULING METHODS FOR PRODUCTION SYSTEMS. 1. Relationship between logistic and production scheduling

Routing Optimization of Fourth Party Logistics with Reliability Constraints based on Messy GA

TIMETABLING EXPERIMENTS USING GENETIC ALGORITHMS. Liviu Lalescu, Costin Badica

Rolling Horizon Approach for Aircraft Scheduling in the Terminal Control Area of Busy Airports

An Optimal Delay Management Algorithm from Passengers Viewpoints considering Whole Railway Network

Metaheuristics for Identical Parallel Machines Scheduling to Minimize Mean Tardiness

GENETIC ALGORITHMS. Narra Priyanka. K.Naga Sowjanya. Vasavi College of Engineering. Ibrahimbahg,Hyderabad.

Modeling a Four-Layer Location-Routing Problem

Multi-Period Vehicle Routing with Call-In Customers

Train Scheduling and Rescheduling in the UK with a Modified Shifting Bottleneck Procedure

RECOMMENDATIONS FOR ENHANCING UIC CODE 406 METHOD TO EVALUATE RAILROAD INFRASTRUCTURE CAPACITY

Designing an Effective Scheduling Scheme Considering Multi-level BOM in Hybrid Job Shop

A Log-Truck Scheduling Model Applied to a Belgian Forest Company. Jean-Sébastien Tancrez 1

The Stochastic Vehicle Routing Problem for Minimum Unmet Demand

Exploiting available urban transportation resources with taxi sharing and rapid transportation networks: a case study for Milan

Prospect of Technology for Public Transit Planning using Smart Card Data

An Inventory Model with Demand Dependent Replenishment Rate for Damageable Item and Shortage

AN INTEGRATED MODEL OF CROSS DOCKING. A Thesis. presented to. the Faculty of the Graduate School. at the University of Missouri-Columbia

Workload balancing in identical parallel machine scheduling using a mathematical programming method

Automobile chain maintenance parts delivery problem using an improved ant colony algorithm

Research Article Application of Multiple-Population Genetic Algorithm in Optimizing the Train-Set Circulation Plan Problem

INVESTIGATION ON THE CAPACITY CONSUMPTION AT DUTCH RAILWAYS FOR VARIOUS SIGNALLING TECHNOLOGIES AND TRAFFIC CONDITIONS

Multiobjective Optimization. Carlos A. Santos Silva

INTEGER PROGRAMMING BASED SEARCH

Transcription:

Computers in Railways X 601 A new idea for train scheduling using ant colony optimization K. Ghoseiri School of Railway Engineering, Iran University of Science and Technology, Iran Abstract This paper develops a new algorithm to the train scheduling problem using Ant Colony System (ACS) meta-heuristic. At first, a mathematical model for a kind of train scheduling problem is developed and then the algorithm based on the meta-heuristic is presented to solve the problem. The problem is considered as a traveling salesman problem (TSP) wherein cities represent the trains. ACS determines the sequence of trains dispatched on the graph of the TSP. Based on the sequence obtained and removing for collisions incurred, train scheduling is determined. Numerical examples in small and medium sizes are solved by using the algorithm. The solutions are compared to the exact optimum solutions to check for quality and accuracy. Comparison of the solutions shows that the algorithm results in good enough quality and time savings. A case study is presented to illustrate the solution. Keywords: meta-heuristic, ant colony optimization, Ant Colony System, train scheduling problem, traveling salesman problem. 1 Introduction Rail transport planning is a very complex task which is carried out based on the mutual reaction among a large number of impressed components. As it was mentioned in Ghoseiri et al [5] and Lindner [10], in respect of complexity of rail transport planning, this process is divided into several steps. These procedures include the demand analysis, line planning, train scheduling, rolling stock planning and crew management [5]. These problems are NP-hard problems and solving them with exact algorithms is very difficult and time consuming. doi:10.2495/cr060591

602 Computers in Railways X Although metaheuristic algorithms produce the solutions close to optimum, there is a little research in the rail transport planning problems. As an example, Huntley et al [8] developed a simulated annealing approach to train scheduling for CSX Transportation. Van Wezel et al [15] applied Genetic Algorithm to improve the timetable. Martinelli and Teng [11] used the Neural Network to routing in a railway. Nachtigall and Voget [12] applied the Genetic Algorithm to solve train scheduling problems. Gorman [6] used a combination of Genetic algorithm and Tabu Search for addressing the weekly routing and scheduling problem. Pacciarelli and Pranzo [14] used the Tabu Search to solve train scheduling problem. Kwan and Mistry [9] used a Co-evolutionary Algorithm to create a train timetable. Engelhardt-Funke and Kolonko [3] used an advanced evolutionary algorithm to solve train scheduling problems. Fischetti et al [4], Gutin and Punnen [7] and Noon and Bean [13] showed that the train scheduling problem can be transformed to a travel salesman problem easily. Dorigo and Gambardella [2] showed that ACS algorithm has been more successful than the other metaheuristics in solving TSP. Therefore, considering the capability of transforming train scheduling problem to a TSP problem, good responses can be expected from solving it by ACS algorithm. In solving the train scheduling problems, ACO algorithms are not used so far. In this article, by considering the good quality of ACS algorithm in solving TSP problem and also transforming capability of train scheduling problem to TSP it is decided to solve the train scheduling problem by this algorithm. 2 ACS compound model and train scheduling problem Train scheduling is a combinatorial optimization problem. In this problem the aim is to determine the arrival and departure times from stations which train passes on them. This problem is known to be NP- hard type. Because of dimension and natural complexity in mathematical models, traditional optimization techniques are not useful for solving the problem and the accurate methods are just usable with examples in small sizes and for solving the problem with real dimension, the heuristic methods should be used. In this article, for solving the train scheduling problem ACS algorithm is chosen. 2.1 Ant colony system (ACS) ACS was suggested as a new heuristic method to solve optimization problem by Dorigo and Gambardella [1]. This is the reformed form of AS algorithm and functions as follow: Each ant generates a complete solution by choosing the nodes according to a probabilistic state transition rule. β arg [ Max j N k {[ τij ][ ηij ] }] if q q 0 i s = S if q q0 (1)

Computers in Railways X 603 k p ij β [ τ ij ][ ηij ] = β [ τ ij ][ ηij ] l k N i Where q is a random number uniformly distributed in [0.. 1], q0 is a parameter between 0 and 1 and S is a random variable selected according to the probability distribution given in Eq. (2), τ ij is the amount of pheromone in edge ij, ηij = 1 that δ δ ij is the cost of edge ij, β determine the relative importance ij of η versus τ and N k i is the remaining nodes set of ant k based on moving from node i to build an feasible solution. The state transition rule given in Eq. (1) and Eq. (2) is called pseudo-randomproportional rule. In ACS, only globally best ant which has built the best solution, deposits pheromone in the graph. When all the ants built their solutions, global updating rule of pheromone is applied. This rule is as follow: τ ij ( 1 ρ) τ ij + ρ τ ij (3) where 0 < ρ < 1 is pheromone decay parameter and τ ij equals to: 1 gb if (j) ψ τ costgb ij = (4) gb 0 if (j) ψ ψ gb is the best solution which was built and cos t gb is the cost of the best solution. While building a solution by using local updating rule of pheromone in this method, the pheromone level is reduced by each ant in visiting edges. τ ij ( 1 ξ ) τ ij + ξτ 0 (5) τ 0 is a small fixed value and 0 < ξ < 1 is the local evaporation coefficient of pheromone. 2.2 The proposed mathematical model of train scheduling This model can be used for a single track and double track without any branches. In this model it is supposed that the trains are just dispatched from the first and last station. After preparation, the trains in the beginning or end stations should be dispatched immediately. In the case that the prepared trains to dispatch are stopped in the stations with unpermitted time stop, we undergo some cost. In this model, the speed and trip times in each track section for each train are supposed as a fixed value. In this model the train can travel in two directions, but they are not permitted to overtake. 2.2.1 Notation R: the group of trains that should be dispatched from right station to left. L: the group of trains that should be dispatched from left station to right. (2)

604 Computers in Railways X T: the group of total trains. ( j R or L or T and T = R L ) B: set of track sections. ( k B ) Track section k is a section of track that connects two stations k and k + 1. Track sections and stations are indexed in numerical order from left to right. S: set of stations. ( k S ) D: the set of permitted stop time in the station. ( d ij D ) AD: the set of arrival and departure times from station. ( Xa(, Xd( AD ) 2.2.2 Parameters Trip time: the time that train i needs to pass track section k. ( t ik ) Dwell time: this time indicates the permitted dwell time of traini in station k. ( d ij ) Headway: minimum time interval between trains i and j to arrive/depart in/from track section k. ( h ijk ) Train importance weight: ( W ) i 2.2.3 Decision making variables Binary variables: 1 if train j R enter the track section after train i R a ij = 0 otherwise 1 if train j L enter the track section after train i L b ij = 0 otherwise 1 if train j L enter the track section k after train i R c ijk = 0 otherwise Continuous variables: Xa ( : the arrival time of train i to station k. Xd ( : the departure time of train i from station k. (6) (7) (8) 2.2.4 Objective function Objective function in this model is to minimize the total train delays in the stations. The delay equals time difference of train stop time in a station with the permitted dwell time in the station. Min z = Wi ( Xd( Xa( d ik ) (9) i T k S 2.2.5 Constraints Trip times constraints of dispatched trains from right station: Xa( Xd( = tik ; i R, k S (10) Trip times constraints of dispatched trains from left station: Xa( k 1) Xd( = tik ; i L, k S (11)

Computers in Railways X 605 Stop times constraints of dispatched trains from left and right stations: Xd( Xa( dik ; i T, k S (12) Sequence constraints of dispatched trains from right station: Xd( j, Xa( hijk M (1 aij ) Xd(, i Xa( j, hijk Maij (13) j R, k S Sequence constraints of dispatched trains from left station: Xd( j, Xa( hijk M (1 bij ) Xd(, i Xa( j, hijk Mbij (14) j L, k S Safety constraints that ensure no collision occur between two trains of opposite directions: Xd(, i Xa( j, hijk Mcijk Xd( j, k + 1) Xa( k + 1) hijk M (1 cijk ) (15) i R, j L, k S 2.3 The solution method of the proposed model using ACS In the proposed algorithm, it is supposed that the trains play the role of cities (nodes) in TSP. The dispatched trains from left to right and also dispatched trains from right to left form two independent sub-networks in TSP. According to the definition, selected path of each ant in the trains network indicates the sequence of train dispatching. For instance, in figure 1 which includes 7 trains (3 dispatching trains from right to left and 4 dispatching trains from left to right), if an ant chooses the path of Start node, train 1, train 3 and train 2 it mean the dispatching sequence of trains 1,3,2. Train 1 Train 2 Train 3 Dispatched Trains from Right Station Start Node Train 4 Dispatched Trains from Left Station Train 5 Train 6 Train 7 Figure 1: Problem s graph for the example of seven trains.

606 Computers in Railways X In this algorithm, a colony induces 2 n ants. Each group includes 2 ants that one of them is allocated to build the sequence in set of dispatched trains from right to left station and another one is allocated to build sequence in dispatched trains from left to right station. At first both ants are placed in figurative node of zero (the start node). Then one of the ants is chosen from the first group randomly. The first chosen ant chooses a train in its train group by using pseudo-random-proportional rule. The arrival and departure times of this train from start station to the final station is calculated. Then another ant chooses its train. The arrival departure of this train from each station is identified in regard to collision with the opposite train. If the chosen train is the dispatched train from the left station, in the case that the obtained times are true in equation (16), the collision occurs: Xa( + headway > Xd( j, & (16) Xd( K 1) headway < Xd( j, In this equation j is the selected train, i indicates chosen trains from the group of dispatched trains from right station and k is a track section in which the collision occurred. In this case for collision resolution between two trains, the departure time of chosen train from the related station is changed as follows: Xd ( j, = Xa( + headway (17) The arrival and departure times of this train to its last station is calculated based on this time. If the chosen train is the dispatched train from right station, in this case the obtained times are true in equation (18), therefore, the collision is occurred. Xa( + headway > Xd( j, & (18) Xd( headway < Xd( j, In this equation, j is the chosen train, i indicates the chosen trains from the group of dispatched trains from left station and k is a track section in which the collision is occurred. In this case for resolution of collision between two trains, departure time of above chosen train from related station changes as follows: Xd ( j. k 1) = Xa( + headway (19) The chosen trains are omitted from the set of trains. Then randomly an ant is selected again. This ant chooses a train from its group. The arrival and departure times of this train is identified with its chosen sequence in its group. When the arrival and departure time from a section was identified, the collision condition of chosen train with dispatched chosen train in opposite direction is checked. In the case of collision, it is removed. This operation continues in the same way so that all the arrival and departure times from all stations are identified and there are not any collisions in the sections. Then the next train is chosen by other ants. This procedure continues until ants choose the all trains of their own group.

Computers in Railways X 607 3 The result analysis of the model To analysis the solution results obtained from ACS-TS are compared with those of exact optimization method of the train scheduling model. For this purpose, computations are carried out for 28 problems. Figure 2 shows the run times of solving the problems using LINGO software in comparison with the proposed ACS algorithm. It was considerable that in 28 solved problems the overall delay amount in dispatching trains from both methods was almost equal. Although proposed ACS time solving method has shown considerable time saving in comparison to the exact solving method. Figure 2: Run times of solving the train scheduling problems. 4 The case study In this section to clarify the proposed algorithm much more, a problem with 30 trains and 4 sections is solved. At first, according to Dorigo and Gambardella [1] the primary values for parameters are set to the following values: ρ = 0.1, ξ = 0. 1, Pheromone primary amount in edges = 0.000005, and q 0 = 0.9. Also according to definition of problem, the number of ants in this colony is considered as equal to 30 and the fix primary amount τ 0 = 0. 012 that is obtained by τ 1 0 = where n is the number of trains and L ( n. L nn ) nn is the solution cost

608 Computers in Railways X produced by a heuristic method (For further study refer to Dorigo and Gambardella [1]. Furthermore by considering this fact that in proposed algorithm, the length (cost) of arcs doesn t have a meaning therefore by supposing β = 0, the length effect of edges is omitted in ACS. Then the parameters best values were experimentally determined. For this purpose the parameter values changed and then algorithm was run ten times. After this step the best value was chosen and then the problem was solved with these parameters. q 0 = 0.9, ρ = 0. 35, ξ = 0. 2, τ 0 = 0. After determining parameters, the proposed algorithm for a problem with 30 trains was run. At the end, the amount of delay in this state was equal to 2492.1. Figure 3 is the indicator of convergence in improving the solutions in each cycle of running the algorithm. Figure 3: Convergence indicator in improving the solutions. 5 Conclusion In this article, an algorithm was introduced for train scheduling problem by using ant colony optimization. At first a mathematical model was developed for a type of train scheduling problem and then for solving this model an algorithm was suggested based on ACS algorithm. According to the algorithm, the model transferred into a constructive graph in which each train was considered as a city in TSP graph. ACS algorithm identified the sequence of trains traveling in each direction on this graph and then based on this sequence the collision of the trains is removed and at the end the time-distance graph of trains movement was identified (either arrival or departure times). To check for quality of the solutions, numerical examples in small and average sizes were solved. The obtained results were compared with their exact optimum solutions. By comparing the results of exact solving of problems and solving them by the proposed algorithm, the time saving and good solution quality were concluded. At the end, a case study was presented for describing the computation manner. References [1] Dorigo, M., & Gambardella, L.M., Ant Colony System: A Cooperative Learning Approach to the Traveling Salesman Problem. IEEE Transactions on Evolutionary Computation, 1(1), pp. 53 66, 1997.

Computers in Railways X 609 [2] Dorigo, M., & Gambardella, L.M., Ant colonies for the traveling salesman problem. BioSystems, 43, pp. 73 81, 1997. [3] Engelhardt-Funke, O., & Kolonko, M., Analysing stability and investments in railway networks using advanced evolutionary algorithms. International Transactions in Operational Research, 11, pp. 381 394, 2004. [4] Fischett M., Salazar-Gonzales, J., & Toth, P, The Generalized Traveling Salesman Problem and Orienteering Problem. Traveling Salesman Problem and its Variations, ed. G. Gutin and A. P. Punnen, Kluwer Academic Publishers, pp. 609-663, 2002. [5] Ghoseir K., Szidarovszky, F., & Asgharpour, M.J., A Multi-Objective Train Scheduling: Model and Solution. Transportation Research part B, 38, pp. 927-952, 2004. [6] Gorman, M.F., An Application of Genetic and Tabu Searches to the Freight Railroad Operating Plan Problem. Annals of Operations Research, 78, pp. 51-69, 1998. [7] Gutin, G., & Punnen A. P., The Traveling Salesman Problem and its Variations, Kluwer Academic Publishers, 2003. [8] Huntley, C.L., Brown, D.E., Sappington, D.E., & Markowicz, B.P., Freight Routing and Scheduling at CSX. Transportation Interfaces, 25(3), pp. 58-71, 1995. [9] Kwan, R.S.K., & Mistry, P., A Co-evolutionary Algorithm for Train Timetabling, Research Report Series No. 2003.13, University of Leeds, School of Computing, 2003. [10] Lindner, T., Train Schedule Optimization in Public Rail Transport, Ph.D. Thesis, Techische Universitat Braunschweig, 2000. [11] Martinell R.D., & Teng, H., Optimization of Railway Operations Using Neural Networks. Transportation Research part C, 4, pp. 33-49, 1996. [12] Nachtigall, K., & Voget, S., A Genetic Algorithm Approach to Periodic Railway. Synchronization Computers and Operations Research, 23, pp. 453-463, 1996. [13] Noon, C., & Bean, J., A Lagrangian Based Approach for The Asymmetric Generalized Traveling Salesman Problem. Operations Research, 39, pp. 623-632, 1991. [14] Pacciarell D., & Pranzo, M., A Tabu Search algorithm for the railway scheduling problem. Proc. of the 4th Metaheuristic International Conference, Porto (Portugal), pp. 16-20, 2001. [15] Van Wezel, M.C., Kok, J.N., Van den Berg, J., & Van Kampen, W., Genetic improvement of railway timetables. Computer Science, 866, pp. 566-574, 1994.