UNIVERSIDAD DE CASTILLALA MANCHA ESCUELA SUPERIOR DE INFORMÁTICA GRADO EN INGENIERÍA INFORMÁTICA TRABAJO FIN DE GRADO


 Toby Lambert
 1 years ago
 Views:
Transcription
1 UNIVERSIDAD DE CASTILLALA MANCHA ESCUELA SUPERIOR DE INFORMÁTICA GRADO EN INGENIERÍA INFORMÁTICA TRABAJO FIN DE GRADO dhave: High speed railway networks timetable planning by means of mathematical modelling María del Carmen Ramírez Flores Febrero, 2014
2
3 UNIVERSIDAD DE CASTILLALA MANCHA ESCUELA SUPERIOR DE INFORMÁTICA (Departamento de matemáticas) TECNOLOGÍAS DE LA INFORMACIÓN TRABAJO FIN DE GRADO dhave: High speed railway networks timetable planning by means of mathematical programming Autora: María del Carmen Ramírez Flores Directores: José Luis Espinosa Aranda y Ricardo García Ródenas Febrero, 2014
4
5 TRIBUNAL Presidente: Vocal: Secretario: FECHA DE DEFENSA: CALIFICACIÓN: PRESIDENTE VOCAL SECRETARIO Fdo.: Fdo.: Fdo.:
6
7 To my parents and David.
8
9 Acknowledgements I am very grateful for the opportunity of working in this project that the MAT research group has given to me. Moreover, I am glad for having concluded this project with Ministerio de Educación grant during my whole university education and the Collaboration With University Departments Grant in course 2012/2013. Also thanks to Ministerio de Economia y Competitividad of Spain for participating in the TRA C0303 research project. I want to thank José Luis Espinosa Aranda, one of my directors, for helping me in the correct development of this project and for the great friendship we have since I started my degree. I want also to thank Ricardo García Ródenas, my other director, because he has made possible José Luis work and mine. Thanks to MªLuz, Tere, Eusebio, Abril, Sonia and Beatriz for the daily break coffee and all the conversations that I have take into account to achieve my goals and dreams. Thanks to my coworkers, in particular to Quality Assurance work group, for bringing me a smile every day these past two months. Thanks to my family, of course, for their love and encouragement.
10 I am also very grateful for all the support and love David has given to me during difficult situations. Thanks to my classmates, for all these years studying, in particular to Cristina because of her friendship from the first moment. Finally, thanks to my flatmates and friends because of being part of my life in this period of time. iv
11 Abstract In this Final Degree Project, hereinafter called FDP, an assistance tool, the socalled dhave, for the simulation and optimization of timetables in railway systems has been developed. An initial timetable is needed which the tool is able to optimize focusing on the departure time of each train and taking into account different parameters based on user s satisfaction. The simulation model allows to generate freeconflicts timetables. The optimization model calculates an optimal timetable taking into account the operative costs of the railway system. For this reason, user s decisions are included using a discrete choice model. Specifically, a novel nested restricted logit model based on dynamic utilities is used. dhave is based on the theoretical studies of MAT (Models and Algorithms for Transportation systems) research group. The railway timetable model is composed by three parts: 1. A discrete events simulation model which represents the supply of the network. 2. A method for computing the dynamic utilities of each train based on the Reproduding Kernel Hilber Spaces. 3. A constrained nested logit model which represents the demand behaviour. (dhave) is useful for optimizing timetables under the point of view of the companies, increasing its profits and reducing the operative costs.
12
13 Resumen En este Trabajo Fin de Grado (en adelante TFG) se desarrolla una herramienta denominada dhave (Diseño de horarios de redes ferroviarias de Alta VElocidad) para la ayuda al cálculo, simulación y optimización de horarios de redes ferroviarias. El módulo de simulación permite calcular los conflictos ferroviarios de un horario dado, mientras que el módulo de optimización calcula un horario que es óptimo bajo el punto de vista de los costes operativos del operador del sistema. Para ello se incorporan las elecciones de los usuarios mediante modelos de elección discreta. En concreto se usa un novedoso modelo logit anidado restringido con utilidades dinámicas. dhave se basa en los desarrollos teóricos llevados a cabo en el grupo de investigación MAT (Modelos y Algoritmos para sistemas de Transporte). Este modelo de cálculo de horarios está compuesto por tres submodelos: 1. Un modelo de simulación de eventos discretos que representa la oferta para la red tratada. 2. Un método para el cálculo de las utilidades de cada tren basado en la teoría de espacios de Hilbert con núcleos reproductivos. 3. Un modelo logit anidado restringido que representa el comportamiento de la demanda en la red ferroviaria. Esta herramienta es útil para el cálculo de horarios y sería capaz de aumentar los beneficios de las compañías ferroviarias. vii
14
15 Contents 1 INTRODUCCIÓN Motivación del presente Trabajo Fin de Grado (TFG) Problema de la planificación de horarios ferroviarios Planificación Robusta Planificación Nominal Estructura del documento INTRODUCTION Motivation of the current Final Degree Project (FDP) Train Timetabling Problem Robust planning Nominal planning Document structure OBJECTIVES Mathematical modelling of the problem Numerical resolution of the model Software application implementation Reducing computational cost STATE OF THE ART Railway network simulation models Microscopic Simulators Examples ix
16 CONTENTS PTV VISSIM OpenTrack Macroscopic Simulators Examples POSITREN Messoscopic simulators examples Railsys and NEMO model NEXTA FRISO Demand models WORK PHASES AND DEVELOPMENT METHOD Work phases Development method A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Supply model Restrictions The overtaking problem Compute dynamic utilities Utility formulation Demand model OPTIMIZATION ALGORITHMS NelderMead method Particle Swarm Optimization PSO + NelderMead hybridization dhave SOFTWARE Initial requirements Code and user interface development Release Release x
17 CONTENTS Release Release Software structure COMPUTATIONAL EXPERIMENTS Case study Simulation with demand Timetable optimization Enhanced tool development CONCLUSIONS CONCLUSIONES 87 REFERENCES 88 APPENDIX 95 A COSTS ESTIMATION 95 A.1 Development costs A.2 Implantation costs B INSTALLATION MANUAL 97 C USER MANUAL 103 C.1 Import data from your computer C.2 Export data C.3 Including stations C.4 Deleting a station C.5 Including demand and distances data C.6 Including trains C.7 Deleting trains C.8 Including services C.9 Deleting services xi
18 CONTENTS C.10 Demand behaviour C.11 Deleting demand behaviour information C.12 Operational railway net C.13 Deleting routes C.14 Including demand prices C.15 Simulation mode C.16 Simulation with demand mode C.17 Optimization mode D CD CONTENT 129 xii
19 List of Figures 1.1 Número de viajeros y número de viajeros/km Number of travelers and number of travelers/km Vision Traffic capture Timetable capture Inputs and outputs of the simulation Olten station railway detail. It is taken from OpenTrack web Positren simulator Nemo model structure Combination of RailSys and NEMO NEXTA simulation FRISO simulator Work Phases of this FDP DSDM stages Railway timetable model based on user behaviour Dwell time restriction Routes for each train. Multiple overtaking example Timestation diagram. Multiple overtaking example Timestation diagram. Multiple overtaking detail example Routes for each train. Several tracks overtaking example Timestation diagram. Several tracks overtaking example xiii
20 LIST OF FIGURES 6.8 Routes for each train. Mixing types example Timestation diagram. Mixing types example Timestation diagram. Mixing types second example Hierarchical MNL demand for railway service choice PSO+NM scheme Layer based design User interface first scheme Gantt diagram: Release The complete network idea First release Gantt diagram: Release Second release Gantt diagram: Release Third release Gantt diagram: Release Fourth release Index of the code structure Function detail MadridSevilla corridor Map simulation Timestation graph obtained by simulation Performance of algorithms Sequential SPSO Parallel SPSO Speed up ratio for SPSO and SPSO+NM algorithms A.1 PC Server invoice B.1 Instalation window B.2 Instalation window xiv
21 LIST OF FIGURES B.3 Installation window B.4 Installation window B.5 Instalation window B.6 Instalation window B.7 Instalation window B.8 Instalation window B.9 Instalation window B.10 Windows path C.1 Import the data C.2 File format C.3 Data successfully read C.4 Save the data C.5 Left menu C.6 Stations Window C.7 Adding stations C.8 Station Information C.9 Station Information C.10 Distances and Demands window C.11 Warning Distances and Demands Window C.12 Including trains C.13 Trains Information C.14 Deleting Train C.15 Left menu C.16 Including services C.17 Warning services window C.18 Services information window C.19 Deleting selected Service C.20 Demand behaviour window C.21 Operational railway net window C.22 Adding services to a route xv
22 LIST OF FIGURES C.23 Adding a complete route C.24 Initial time warning window C.25 See services information C.26 Deleting selected route C.27 Including demand prices window C.28 Simulation and optimization top buttons C.29 Simulation completed information window C.30 Table View C.31 Graphic View C.32 Map View C.33 Simulation with demand table view C.34 Select an algorithm window C.35 Select NelderMead properties C.36 Select PSO properties C.37 Select PSO + NM properties C.38 Select PSO + NM properties D.1 CD Content xvi
23 List of Tables 6.1 Complete notation used Discrete event algorithm Examples of kernel functions Pseudocode PSO Types of railway services on MadridSeville corridor Characteristics of each service on MadridSeville corridor Potential total trips AVE trips AVANT trips Distances between connected stations (km) Timetable of planned services (part 1) Timetable of planned services (part 2) Timetable of planned services (part 3) Timetable of planned services (part 4) Solutions obtained by sequential algorithms Computational comparison between parallel algorithms xvii
24 LIST OF TABLES xviii
25 CHAPTER 1 INTRODUCCIÓN La alta velocidad ferroviaria ha supuesto una revolución en los sistemas de transporte interurbano provocando un aumento de la complejidad de los mismos. Estos sistemas tienen un impacto visible en los patrones de movilidad de los pasajeros, ya que aumentan las alternativas de viajes disponibles y reducen drásticamente los tiempos de viaje, permitiendo nuevos viajes originados por motivos laborales u otros propósitos. Para realizar estos tipos de viajes se hace imprescindible la existencia de trenes cuyos horarios se ajusten a las necesidades especificas de los usuarios. La elección de los usuarios del horario y modo de transporte dependerá de la oferta de transporte disponible. Para visualizar la importancia de la alta velocidad en el transporte ferroviario se muestra la Figura 1.1. Los datos han sido tomados de la web del Instituto Nacional de Estadística. [INE10] En el gráfico izquierdo de la Figura 1.1 se recoge la cantidad de viajeros que han utilizado transporte ferroviario para desplazarse entre distintas ciudades en En ella se puede distinguir que, el mayor número de viajes, es el realizado por los trenes regionales seguido por los AVE. Por otro lado en el gráfico derecho de la Figura 1.1 se considera la suma de los kilómetros recorridos por todos los viajeros transportados. Se observa que el sector predominante es precisamente el relacionado con los trenes de alta velocidad, a los que prestaremos especial atención en este TFG. 1
26 CHAPTER 1. INTRODUCCIÓN Figura 1.1: Número de viajeros y número de viajeros/km 1.1 Motivación del presente Trabajo Fin de Grado (TFG) Debido a las cuestiones anteriormente expuestas, en la planificación de horarios es muy importante tener en cuenta a los usuarios. La decisión que estos tomen se verá afectada por el precio del servicio, la hora de partida, el tiempo de viaje, la capacidad del tren, etc. Por estas razones es necesario implementar herramientas que ayuden a la optimización del sistema ferroviario y así poder incrementar los beneficios de la compañía al adecuar la oferta de servicios a la demanda. El principal objetivo de este TFG es el de desarrollar una aplicación capaz de resolver este problema. Esta herramienta debe ser útil para el controlador ferroviario y capaz de optimizar los horarios de la red teniendo en cuenta las decisiones de los usuarios y los costes operativos del sistema ferroviario. 1.2 Problema de la planificación de horarios ferroviarios El problema de la planificación de horarios ferroviarios consiste en la generación de horarios desde cero, especificando las horas de salida y llegada de cada tren a cada estación y teniendo en cuenta diferentes restricciones técnicas y de seguridad. Existen dos modos de abordar este problema de planificación: la planificación nominal que intenta lidiar con el problema en un escenario y la planificación robusta que se anticipa a la aparición de disrupciones, intentando ser un horario satisfactorio en un conjunto variado de escenarios que representan el conjunto de situaciones. 2
27 CHAPTER 1. INTRODUCCIÓN Planificación Robusta En este caso los horarios se construyen de tal forma que puedan absorber los retrasos y así evitar su propagación en el sistema ferroviario. Esto se puede conseguir incluyendo pequeños tiempos adicionales, denominados buffers temporales, en la fase de planificación de tal forma que los trenes retrasados emplean estos intervalos temporales en caso de aparición de alguna incidencia. Esto evita la aparición de nuevos conflictos ferroviarios y su propagación Planificación Nominal La planificación nominal calcula horarios para un número dado de trenes teniendo en cuenta las restricciones definidas por los controladores ferroviarios y minimizando la función objetivo para alcanzar una buena solución en un escenario prefijado de antemano. La planificación nominal se clasifica de acuerdo a los siguientes factores: Horarios cíclicos y acíclicos: los primeros son aquellos que contienen un ciclo que normalmente suele ser de una hora o dos que se repiten a lo largo del día. El mayor problema de este enfoque es el escaso beneficio que produce a una compañía en un mercado competitivo. En los segundos el ciclo es de un día. Red ferroviaria o corredor: se puede considerar toda la red ferroviaria o un corredor que conecta dos estaciones. Mercancía o pasajeros: Estos dos tipos de trenes coexisten en los sistemas ferroviarios y deben estudiarse sus particularidades específicas cuando se quiera optimizar la infraestructura ferroviaria. Funciones objetivo diferentes: ya que es posible minimizar el tiempo total de viaje, los costes operativos o maximizar los beneficios de la empresa, entre otros criterios de optimización. Este TFG se centra en este tipo de planificafión en el que los horarios son acíclicos, en la posibilidad de resolver una red completa o un corredor, en el transporte de pasajeros y en una función objetivo enfocada a maximizar los beneficios de la compañía. 3
28 CHAPTER 1. INTRODUCCIÓN 1.3 Estructura del documento Este documento estará compuesto por los siguientes capítulos y anexos: Capítulo 1 y Capítulo 2. Introducción. En este capítulo se comentan las inquietudes que han motivado la realización del presente TFG, así como una breve introducción de la problemática a tratar. Capítulo 3. Objetivos. En él se presentan los requisitos iniciales recogidos y se tratan los principales hitos que deben ser alcanzados y/o solucionados. Capítulo 4. Antecedentes y estado de la cuestión. Este capítulo englobará distintas herramientas e investigaciones anteriores acerca de la planificación de horarios ferroviarios. Capítulo 5. Fases de trabajo y método de desarrollo. Se plasmará la metodología utilizada y cada una de las fases de trabajo que han permitido crear la herramienta dhave. Capítulo 6. Modelo para el cálculo de horarios basado en el comportamiento del usuario. Se explicarán cuáles son los tres submodelos contenidos en la herramienta que se utilizan y complementan para el cálculo de un buen horario. Capítulo 7. Algoritmos de optimización. Los algoritmos utilizados, tales como PSO y Nelder Mead, serán explicados en este capítulo. Capítulo 8. Herramienta dhave. Este capítulo contendrá todo lo relacionado con la planificación y desarrollo de la herramienta. Capítulo 9. Experimentos computacionales. Los resultados de las pruebas realizadas para testar la consistencia de los modelos y para evaluar los costes computacionales son analizados en este capítulo. Capítulo 10 y Capítulo 11. Conclusiones. En esta sección se sintetizan los hitos alcanzados en este TFG. ANEXO 1. Estimación de costes. En este anexo se evalúan los costes de creación e implantación de la herramienta dhave. ANEXO 2. Manual de instalación. En este anexo se detalla la instalación que requiere la herrmienta. 4
29 CHAPTER 1. INTRODUCCIÓN ANEXO 3. Manual de usuario. Tendrá una explicación detallada del uso de la herramienta dhave. ANEXO 4. Contenido del CD. 5
30 CHAPTER 1. INTRODUCCIÓN 6
31 CHAPTER 2 INTRODUCTION High speed railways have supposed a revolution in interurban transport systems causing the increase of their complexity. This transport systems are causing a very important impact on passengers mobility patterns due to the increasing number of trips and different types of services demanded. High speed railway systems are capable of reducing travel times drastically. In order to fulfil passengers needs, it is necessary to implement appropriate railway schedules. The selection by a user of the mode of transport depends on the services offered. 2.1 To understand the importance of this mobility patterns, two graphs are shown in Figure Figure 2.1: Number of travelers and number of travelers/km 7
32 CHAPTER 2. INTRODUCTION Data obtained from Instituto Nacional de Estadística. [INE10] On the left graph the quantity of travellers that have used railway systems to travel between different cities in 2010 can be seen. It is shown that the highest number of passengers is related to regional trains, followed by AVE trains. The right graph considers all the kilometres covered by all travellers. It is shown that the largest sector is the related to high speed trains. This FPD is focused mainly in this type of trains. 2.1 Motivation of the current Final Degree Project (FDP) Due to all the above listed reasons, in the planning of schedules is very important to take into account the choice of the user. This decision is affected by the price of the service, the departure time, travel time, trains capacity etc. For this reason it is necessary to implement software tools that help to optimize the system adapting the services offered to the demand in order to increase the company benefits. The aim of this FDP has been the development of an application capable of solving this issue. This tool must be useful to the controller and capable of optimize the railway schedules taking into account the user decisions and the operative costs of the railway system. 2.2 Train Timetabling Problem The Train Timetabling Problem (TTP) is a scheduling problem that tries to generate a timetable from scratch specifying the arrival and departure time of each train taking into account the imposed operative and safety constraints. The way to solve TTP could be addressed following two different approaches: nominal planning that solve the problem for an odd situation or robust planning that takes into account a set of scenarios in order to avoid future disruptions. 8
33 CHAPTER 2. INTRODUCTION Robust planning In this case timetables are built to be able to absorb delays. This approach is focused on avoiding delay propagation. It could be addressed including buffer times in the planning phase that insert empty periods of time between trains, denominated as buffer times, in timetables used to absorb a delay that might appear in the future. This kind of planning may solve delays for the problem in a nominal solution to obtain another timetable that could be feasible in some disruptions Nominal planning This type of planning tries to calculate timetables for a given number of trains taking into account the constraints defined by the controllers minimizing an objective function which represents the goodness of the solution. This method is focused on a specific problem. Moreover, if there was a disruption, it should be solved in real time. The Nominal approach is classified in: Cyclic timetables or NonCyclic timetables: The first contains a cyclic time. It uses to be one or two hours. The main problem of this approach is the difficulty of dealing with cyclic timetables in a competitive market due to its fewer profits. The second ones has a cycle time of one day. Railway network or Corridor: the problem may be over a railway network or a corridor, i.e. a piece of this network that connects two stations. Freight and passenger transportation: this two features should be dealt handinhand, when the objective function is being optimized. Different objective functions: it is possible to minimize the total travel time, minimize the costs of the company or maximize the profits obtained by the company among other optimization criteria. This FDP is focused on this planning approach and centred on noncyclic timetables, the possibility of being applied to a complete railway network, passenger transportation and an objective function based on the benefit of the company. 9
34 CHAPTER 2. INTRODUCTION 2.3 Document structure This document is organized as follows: Chapter 1 and Chapter 2. Introduction. In this part, the concerns and ideas that are the motivation of this work are exposed. Moreover a brief introduction about the timetabling problem with is presented. Chapter 3. Objectives. All the initial requirements of the application and the main objectives prosecuted are explained. Chapter 4. State of the art. This chapter comprises a study of previous tools and researches related to the TTP. Chapter 5. Work phases and development method. The methodology followed and work phases that have allowed the creation of dhave are explained. Chapter 6. A railway timetable model based on user satisfaction. The complete model is explained in this section. Chapter 7. Optimization algorithms. In this chapter the different algorithms used are explained. Chapter 8. dhave software. This part of the FDP contains all the planning stages related to the tool and its deployment. Chapter 9. Computational experiments. This chapter contains the results and tests used for assessing the behaviour of the models presented. Moreover the approach followed for reducing the computational costs are addressed and studied. Chapter 10 and Chapter 11. Conclusions. This section resumes the achievements of this FDP. APPENDIX 1. Costs estimation. Costs of creation and deployment of the software are studied. APPENDIX 2. Installation Manual. The process of installing the tool is explained step by step. APPENDIX 3. User Manual. APPENDIX 4. Content of the CD. 10
35 CHAPTER 3 OBJECTIVES The main objectives of this FDP are: 1. The mathematical modelling of the problem. 2. The numerical resolution of the model. 3. The development of a software application based on the proposed methodology, which takes into account the mathematical model and the proposed resolution algorithms. 4. The design of strategies to reduce the computational burden of the tool. 3.1 Mathematical modelling of the problem The subobjectives followed are: The development of a discrete events simulation model capable of describing the railway operations and calculate the planned timetable. Moreover, rolling stock an other operational restrictions like the number of trains that are on the station platforms, the minimal time between each train (dwell times), the restrictions in the tracks inherent to safety in the the railway infrastructure and the current state of the railway system will be considered. 11
36 CHAPTER 3. OBJECTIVES The development of a demand model based on the utility theory that allows to represent passengers behaviour, focusing on the timetable planning for maximizing the company profits [CT12] [DPP08]. The development of an objective function which could be implemented in an optimization model focused on the maximization of the company profits, that is, the incomes of all the tickets sold minus the operative costs. The estimation of the operative costs will be done on basis of the timetable obtained. The decision variables are the timetable, the demand prediction and the departure times of the trains at the initial station. This objective is achieved in Chapter 6 of this FDP. 3.2 Numerical resolution of the model Due to the high complexity of this kind of bilevel optimization models, in which an inner optimization model describes the demand and takes into account the predefined restrictions described by a simulation model, its exact resolution is infeasible. For this reason different artificial intelligent techniques have been studied. This FDP is focused on heuristic algorithms, which are capable of obtaining good results and solutions in reduced computational times like Particle Swarm Optimization (PSO), NelderMead (NM) method and PSO+NM hybridization. This objective is achieved in Chapter 7 of this FDP. 3.3 Software application implementation In this FDP, the appropriate requirements of RENFE are imposed in the design of the tool. The main goal is to create an Intelligent Transportation System (ITS) [EAGR12]. For this reason and due to the problem nature, it has been decided to follow an iterative and growing methodology based on agile methodologies, the Dynamic Systems Development Method (DSDM) [Sta97]. Moreover, it is going to be slightly adapted due to the kind of problem dealt with. This objective is achieved in Chapter 8 of this FDP. 12
37 CHAPTER 3. OBJECTIVES 3.4 Reducing computational cost Due to the high computational cost of the evaluation of the objective function it is important to reduce to the minimum the computational burden of the algorithms. An approach used in literature is to take advantage of high performance architectures. Focusing on software, it is important to know there are parts into PSO algorithms that could be modified from sequential to parallel processing. This objective is achieved in Chapter 9 of this FDP. 13
38 CHAPTER 3. OBJECTIVES 14
39 CHAPTER 4 STATE OF THE ART 4.1 Railway network simulation models Several different types of simulators exist to deal with train timetables data. For the last few years many simulators have been created and used. These railway simulators have the purpose of helping controllers in their decisionmaking processes. To deal with the prediction problem with a railway system, three types of simulation are used: microscopic simulation, macroscopic simulation and messoscopic simulation. Microscopic simulation (based on a microscopic model) focus on solving the problem in detail. The railway networks are studied more deeply. Microscopic simulations are used to estimate the behaviour of the trains in different transportation areas and are not very used in the creation of timetables due to their high computational cost. This models contains information like signals, limit speed of the lines, possible next stations or which are the different track segment reached. For example, this simulations could be applied in a part of a railway line that contains several block segments to compute energy consumption. Macroscopic simulation (based on a macroscopic model) is when the point of view taken covers a general idea of the problem and doesn t focus on the detail. This type of models deal with the problem at a high level of abstraction. 15
40 CHAPTER 4. STATE OF THE ART As a rule, the macroscopic models contains less connections than the microscopic ones. Moreover they are not used to detect and deal with situations in which there are many rail conflicts. In a macroscopic model, a complex station with many platforms would be represented as a simple node. A Messoscopic simulation combines features of the microscopic and macroscopic models. In it two different railway systems are communicated. This way is feasible to obtain better solutions or results according to the potential of each model. These models try to join the objectives of the proper and specific behaviour of the trains (microscopic model) and the development of a good timetable (macroscopic model). The approach of this FDP is a messoscopic simulation sensitive to demand patterns and it is explained in Section Microscopic Simulators Examples PTV VISSIM It is a software solution which supports controllers and helps them with rail traffic control in an intelligent way and in a microscopic view (Figure 4.1). It is a part of the full software package offered by Vision Traffic Suite which belongs to PTV Group [VIS]. Figure 4.1: Vision Traffic capture 16
41 CHAPTER 4. STATE OF THE ART Vissim covers many aspects: Comparison of junction geometry. Development planning. Capacity analyses. Traffic control systems. Signal Systems Operations and ReTiming Studies. Public Transit Simulation. Its principal features are: Allow the operator to build the railway over a real image, creating links and connectors. Offer adjusting traffic controls. Offer the possibility of including vehicle characteristics like speed, weight, traffic volume, etc. Allow signal control OpenTrack OpenTrack [NH04] addresses ObjectOriented Modeling in Railways graphing a railway network in socalled double vertex graphs. This is an example of the microscopic view. The tasks supported by OpenTrack are: Establishing the railway infrastructure requirements. Lines capacity and stations can be analyzed. Rolling Stock restrictions are supported: it takes into account speed, load, length, adhesion and other technical features. Deal with timetables. 17
42 CHAPTER 4. STATE OF THE ART Figure 4.2: Timetable capture Deal with system failures. Operations to obtain train energy consumption and train power are taking into account. Simulations: the aim is to running trains based on a fixed timetable. The trains should obey the restrictions and store all the necessary features like speed, position, acceleration, power consumption etc. Figure 4.3 image represents all the modules needed to do a simulation, from input to output ones. Figure 4.4 shows part of topology of Olten station (Switzerland). This software is very useful if the aim is to know statistics about the railway system and to simulate lines based on a fixed timetable. 18
43 CHAPTER 4. STATE OF THE ART Figure 4.3: Inputs and outputs of the simulation Macroscopic Simulators Examples POSITREN Positren [POS] is web application which represents a map that includes a simulation of Spain and Portugal railways. It is possible to see the position of several trains in real time (Figure 4.5). This tool calculates the theoretical positions of the trains from the schedule provided by RENFE Operator public information pages. Moreover, this web application informs about the train delays in real time if that information is available. Positren adapts its behaviour if the web is been seeing on movile devices. 19
44 CHAPTER 4. STATE OF THE ART Project Olten 2005 FR10000 RE IC Olten 569 Olten.opentrack Figure 4.4: Olten station railway detail. It is taken from OpenTrack web Messoscopic simulators examples Railsys and NEMO model The NEMO model [NEMa] is a macroscopic simulation model. This tool, developed by the Institute of Transport Railway Construction and Operation (IVE) [IVE], University of Hannover in collaboration with the Austrian Federal Railways, is used for the evaluation of operational measures and the simulation of railway systems. NEMO deals with freight and passenger railway systems using an objective function based on demand, an approach also followed in this FDP. This tool is composed of various conected modules [NEMb]. Figure 4.6 shows the main structure of the model. Moreover, this tool can be linked with the microscopic timetable construction and simulation tool RailSys. 20
45 CHAPTER 4. STATE OF THE ART Figure 4.5: Positren simulator Figure 4.6: Nemo model structure RailSys [RAI] is a microscopic approach for simulation, timetable construction, infrastructure data management and track occupation planning. The integration of both tools is shown in Figure 4.7 [RAN] NEXTA The opensource Network Explorer for Traffic Analysis (NEXTA) [NEX] aims to facilitate the simulation and scheduling among other functionalities. NEXTA achieves it using DTALite, a fast dynamic traffic engine for the analysis of transportation networks. A simulation example can be seen in Figure
46 CHAPTER 4. STATE OF THE ART Figure 4.7: Combination of RailSys and NEMO The interface allows to manage different features like: link based comparison, path travel time comparison, simulations results comparison, summary plot, statistics etc FRISO Flexible Rail Infra Simulation of Operations (FRISO) is an editing and simulation tool for the Dutch railway. This tool has a microscopic part in which it is possible to perform single and multiple stochastic simulation experiments. Moreover has a macroscopic part in which it is possible to create railway simulations getting an existing external traffic management information (Figure 4.9). 4.2 Demand models Discrete choice models have long been recognized for their ability to capture a wide transportrelated choice phenomena. However, certain applications require simultaneously tackle explicitly an specific set of constraints and timeofday modelling into the choice process. Taking this fact into account, this FDP follows a random utility framework to model both issues. Discrete choice random utility models assume a compensatory mechanism in which the consumer s strategy impose a tradeoff between attributes. A more realistic approach requires to relax the compensatory assumption and to cope with constraints related to individual s behaviour. 22
47 CHAPTER 4. STATE OF THE ART Figure 4.8: NEXTA simulation Theoretical frameworks have been proposed to relax this assumption. A roughly taxonomy classifies the approaches followed in the literature in hard or soft imposed cutoffs to choice makers. Hard approaches, in the sense that they cannot be violated for a valid choice to be made. (a) A twostage approach to model the choice set generation process. The decisions may often be made in two stages: in the first stage, the alternatives are screened by some noncompensatory process and in the second stage, a compensatory model calculates the choice probability conditioned by remaining alternatives. [Man77], [SBA87], [BAB95], [CO05], among others follow this approach. (b) [Swa01] This paper defines an extension of the standard deterministic utility maximization problem by including constraints on the values as the attributes and prices. 23
48 CHAPTER 4. STATE OF THE ART Figure 4.9: FRISO simulator Soft approaches (a) Implicit availability/perception model (IAP), [CP01] The choiceset of alternatives is a fuzzy set where each element has a degree of membership to the choice set. (b) Constrained multinomial logit (CMNL). [MAH09],[CMM13] This model implement cutoffs as a binomial logit function embedded in multinomial logit models. MNL model allows the choice domain to be constrained by as many cutfoffs as required, limiting both an upper and a lower levels of variables. Another novel approach is presented in [EAGRLGAH14]. This approach focus on developing a constrained logittype choice model in which, using a maximization of the entropy framework, a cut off approach is considered. Moreover Reproducing Kernel Hilbert Spaces are used for considering non linear utilities such as the dynamic aspect of the election process. This is the approach followed in this FDP. Also, the usual approach ([Ana83], [DdG10], and [DGGVM13] among others) is that general utilities have linear attributes. Non linear utilities are essential to the departure time modelling. 24
49 CHAPTER 5 WORK PHASES AND DEVELOPMENT METHOD 5.1 Work phases For the achievement of the proposed objectives, the phases followed to develop dhave tool are presented in Figure 5.1. It is important to have a specific development methodology that allows us an exhaustive analysis about the tool requirements and a structured design for the achievement of the proposed objectives. The sequence of phases are the initial formation, mathematical modelling, numerical resolution, computational implementation, enhanced tool development and real case application, doing the documentation at the same time as the previous phases cited. 25
50 CHAPTER 5. WORK PHASES AND DEVELOPMENT METHOD Figure 5.1: Work Phases of this FDP Phase 1. Initial formation. Several published works related to TTP have been studied for obtaining a better comprehension of the transport planning. Phase 2. Mathematical Modelling. An optimization model for scheduling railway timetables has been formulated. The main contribution of the model is that the departure times are chosen taking into account the users and passengers decisions. A nested continuous logit models has been used [JKP10]. This model includes the operational restrictions of the problem using a discrete events simulation model [EAGR12] [EA09]. Phase 3. Numerical resolution. The proposed problem has been solved using optimization algorithms like Particle Swarm Optimization (PSO) [KE95] variation called Standard PSO (SPSO) [BK07a], Nelder Mead method [JR65] and a hybridization of free derivative algorithms, the so called PSO + NelderMead method. [EAGRA13]. Phase 4. Computational Implementation. A tool has been implemented using Matlab GUI platform. The selected methodology allows to achieve the objectives in a fast, efficient, and effective form. 26
51 CHAPTER 5. WORK PHASES AND DEVELOPMENT METHOD Dynamic Systems Development Method (DSDM) has been the guide to achieve this. The methodology is explained in Section 5.2. Phase 5. Enhanced tool development. The initial implementation has been modified to adapt it to high performance architectures using parallel programming techniques. Phase 6. Real case application. The developed application was tested in a real case, the AVE SevillaMadrid corridor. The model consistency and the algorithms robustness has been tested. Simultaneous phase. Documentation creation. All the documentation associated with this FDP has been generated during all the previous phases, obtaining the current version of this essay. 5.2 Development method The software developed in this FDP is based on the agile method DSDM. This method is iterative and incremental and makes the costumer to be involved in the process. DSDM is considered a Rapid application development (RAD) and is appropriate to be used in Information Systems development. DSDM takes into account its Agile Manifesto: Individuals and interactions over processes and tools. Working software over comprehensive documentation. Customer collaboration over contract negotiation. Responding to change over following a plan. DSDM has been mainly chosen in this FDP due to its flexibility around possible changes and the continuous costumer collaboration. 27
52 CHAPTER 5. WORK PHASES AND DEVELOPMENT METHOD Moreover, it is relevant to have a prioritized requirements list that follows the MoSCoW rules: Must have. Should have. Could have. Want to have but will not have this time round. The functional model iteration concerns the revision and prioritization of the requirements, the development of working software to show to the costumer having feedback, and the implementation plan to develop operational software. The iterations allow to present different releases to show the costumers all the progress completed and involve them in the project. Finally, Figure 5.2 shows the four stages of DSDM development method. Figure 5.2: DSDM stages 28
53 CHAPTER 5. WORK PHASES AND DEVELOPMENT METHOD Stage 1: The feasibility study. The feasibility of the project is examined and prerequisites are addressed. This includes a business study about the costumer needs and wishes that are examined and combined into the requirements list, following the MoSCoW rules. Stage 2: Functional model iteration. It helps in costumers involvement throughout the project developing a functional model. To achieve this, it is necessary to identify the functionalities that would be implemented in the current iteration, agree on how and when to develop these functionalities, develop the prototype and combine it with the previous iterations checking the functionality. Stage 3: System design and build iteration. Integrate the functional components from the previous phase into a system that satisfies user specifications, testing and reviewing its current working. Create and review the prototype design. Stage 4: Implementation. Include user documentation mainly for training users in the use of the system, like the manual of the application. 29
54 CHAPTER 5. WORK PHASES AND DEVELOPMENT METHOD 30
55 CHAPTER 6 A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR In this section a TTP model focused on user satisfaction is presented. This model calculates the profit of a given schedule depending on the behaviour of the passengers. This approach comprises three submodels. Figure 6.1 shows the whole structure: 1. Supply model. This model represents the movements of trains on the railway network. 2. A model for computing dynamic utilities. 3. Demand model. This model defines the choices of the users on the railway network. 6.1 Supply model The supply model receives the train departure times and simulate their behaviour taking into account several constraints (security, stop times, priority, etc). Finally the complete timetable free of conflicts is calculated. First, the complete variables, sets and indices used are defined in Table
56 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Figure 6.1: Railway timetable model based on user behaviour The main objective is to determine the complete timetable of the high speed railway network. Because of this, it is considered that: 1. A train can stop only the time necessary for passenger alighting/boarding, without considering the possibility of connections between trains. 2. There is no priority between trains at the stations, following a First Come First Served (FCFS) policy. Therefore if the start time T s of all services s S are known the timetable is determined based on above rules. Each train k is constrained to a feasible number of services in a determined period. Denote T = (T 1,, T n ) as the vector which contains the initial departure times of planned services, and n as the cardinal of set S. To describe the model, denote s = S(k, m) as a function capable of obtaining the m th service, that is s, of train k Restrictions The set of restrictions defined in this section models the railway operations constraints and the overtaking between trains. A discrete event model is formulated for obtaining the complete schedule assuming that initial times, speed and stop times in stations are known. Considering the main characteristics of the problem, some assumptions are made: 32
57 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Sets and indices s: Railway service. It is the route of a train between two end stations. S: Set of services of the railway network. j: Station. J : Set of stations of the railway network. k: Train. K: Set of trains on the railway network. Variables T s : Departure time of service s at the initial station. T sj : Instant in which a service s arrives to a station j. Table 6.1: Complete notation used 1. Doubletracked line. Each section is separated by nodes (stations) and all the trains in the same section must travel in same direction. 2. The route of each service is fixed and defined by a sequence of stations. It isn t necessary to stop in all stations. A function j = J(s, m) which indicates the m th station visited by service s is assumed. Also a dummy station j F, which represents the end of the service, is defined. 3. The speed of each train is fixed while there isn t any type of conflict with another train. In case of conflict, the precedence train must reduce its speed maintaining the minimum dwell time defined by controllers. 4. A train which does not stop in a station could overtake a train stopped in this station. as: An event e represents the instant in which a train t leaves a station s and it is defined e = (k, s k, j k ) 33
58 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR i k2 k1 j Dwell time Figure 6.2: Dwell time restriction where s k and j k are respectively the ordinal number of the service and the position of the station in which train k stops. The respective station and service are obtained as follows: s = S(k, s k ) (6.1) j = J(s, j k ) (6.2) For each event is necessary to consider the two main restrictions of the system, the dwell time and the rolling stock. Dwell time. This restriction is related to a section of the track and models the movement of a train in a track segment. Consider Figure 6.2. It shows track segment i j and two trains k 1 and k 2. Let s 1, s 2 be the services of trains k 1 and k 2 respectively. Denote T si with s {s 1, s 2 } as the initial instant of service s from station i. Denote T sj with s {s 1, s 2 } as the instant in which service s leaves station j. The system must fulfill: T s2 j δ + d ij (6.3) T s2 j T s2 i + c k 2 ij (6.4) where d ij is the dwell time of section i j, δ is the instant when train k 1 reaches station j and c k 2 ij is the travel time of the service k 2 in the track segment i j. Equation (6.3) imposes a restriction which could mean an speed reduction with the objective of conserving the minimum security distance between trains. Equation (6.4) indicates the minimum instant in which train k 2 may reach station j. Therefore: T s2 j = max{t s2 i + c k 2 ij, δ + d ij} + p s2 j (6.5) where k 1 is the train which precedes train k 2 in section i j and p s2 j is the stop time of service s 2 in station j. It is worth noting that a value p s2 j = 0 indicates that there is no stop in this station. 34
59 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Rolling stock. This restriction considers that a service planned for a train can not start until the predecessor service of this same train has ended, with a minimum security time and set up time between them. Suppose a train which realizes consecutively the services s y s, then: T s = max{t s, δ s + r ss } (6.6) where T s real instant when s starts, T s is the planned initial time, δ s is the ending time of service s and r ss is the rolling stock time for preparing the train until it can start service s. The complete discrete event algorithm can be seen in Table The overtaking problem To address this problem in our model, we need dealing with three significant ideas: 1. Multiple overtaking. 2. Several tracks overtaking. 3. Mixing types. 1. Multiple overtaking. This situation exists when two or more trains, on the same track, can overtake another train which is stopped at a station. Figure 6.3 shows an example with three train routes across the stations. It is noted that every train is going through station number 2. Those trains are ordered. For this reason the first train is the number 1 and the last is the number 3. The train stops are:  T1 stops at station 2.  T2 does not stop at station 2.  T3 does not stop at station 2. 35
60 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Figure 6.3: Routes for each train. Multiple overtaking example Figure 6.4: Timestation diagram. Multiple overtaking example In the Figure 6.4 are represented more than three trains but we are going to focus on these three (zoom at Figure 6.5). As the Figure 6.4 shows, train number 1 has stopped at station 2. Later, trains number 2 and 3 start their travel but, because both trains do not stop at station 2, they overtake train 1. It is noted that train 3 does not overtake its previous train (number 2) due to the restriction in which both stay on the same track. The detail of the Figure 6.5 represents the idea. 36
61 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Figure 6.5: Timestation diagram. Multiple overtaking detail example 2. Several tracks overtaking. This situation exists when a train which comes from a track wishes to overtake another train that comes from a different track and both of them are going to the same station. Figure 6.6 shows an example with four train routes across the stations. Figure 6.6: Routes for each train. Several tracks overtaking example It is noted that every train is going through station number 3. 37
62 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR The train stops are:  T1 stops at station 3 (from station 2).  T2 stops at station 3 (from station 2).  T3 does not stop at station 3 (from station 1).  T4 does not stop at station 3 (from station 1). Figure 6.7 shows that trains. Figure 6.7: Timestation diagram. Several tracks overtaking example Train 1 and train 2 come from the same station (station 2) and stops at station 3, for this reason train 2 waits for the departure of train 1 to get in station 3 and stop. Moreover, trains 3 and 4 come from a different station but both of them are going to station 3 too. It is noted that there aren t problems between those trains and the two previously mentioned. Trains 3 and 4 get in station 3 overtaking the stopped train Mixing types. In this case there are different types of stops and tracks. This example will only show the first service of each train as Figure 6.8 represents. 38
63 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Figure 6.8: Routes for each train. Mixing types example The train stops are:  T1 stops at station 2 and station 3.  T2 does not stop at station 2.  T3 does not stop at station 2.  T4 stops at station 3.  T5 stops at station 3.  T6 does not stop at station 3.  T7 stops at station 3. 39
64 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR  T8 does not stop at station 3.  T9 does not stop at station 3. In Figure 6.9, on one hand, is visible a simple overtaking that concerns trains 1, 2 and 3. On the other hand the rest of these trains are showing different problems. Trains 4, 5 and 7 stop at station 3, for this reason each train is following its previous one, and doing the corresponding stop. Another relevant behaviour is about train 6 which is going to overtake its previous train (train 5). This is the only restriction it should fulfil. Furthermore, trains 8 and 9 look similar to this last behaviour, but they came from other track and are overtaking respecting train 7 only because of their speed. If they were faster, they could overtake the following train 6. The Figure 6.10 shows that fact. Figure 6.9: Timestation diagram. Mixing types example 6.2 Compute dynamic utilities In this section, the utility function is formulated in the context of continuous choice, such as departure time choice, travel time and cost, data received from the Supply Model. It is assumed that the systematic utility function V : X lr p lr belong to a given Reproducing Kernel Hilbert Space (RKHS). In this case the model is aggregated, only the 40
65 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Figure 6.10: Timestation diagram. Mixing types second example attributes x m of some alternatives can be observed, knowing utilities V m. In this case the objective is to estimate the function V (x) with the better values V (x m ) V m Utility formulation We begin with a brief revision of Reproducing Kernel Hilbert Spaces and the Tikhonov Regularization Theory in RKHS. The General Theory of The Tikhonov Regularization is explained in the book of [TA97] and the General Theory of RKHS is defined in [Aro50]. Definition 1 (Reproducing Kernel). Let H be a real Hilbert space of functions defined in X lr p with inner product, H. A function K : X X lr is called a Reproducing Kernel of H if: 1. K(, x) H for all x X. 2. f(x) = f, K(.x) H for all f H and for all x X. We define the norm by f H = f, f 1/2 H A Hilbert space of functions that admits a Reproducing Kernel is called a Reproducing Kernel Hilbert Space (RKHS). The reproducing Kernel of a RKHS is uniquely determined. Conversely, if K is a positive definite and symmetric kernel (Mercer kernel), then it generates a unique RKHS in which the given kernel acts like a Reproducing Kernel. 41
66 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Now we briefly describe Tikhonov discrete regularization theory by RKHS for the problem at hand. Let K be a Mercer kernel and H K its associated RKHS. Consider a compact subset X lr p and let ν be a Borel probability measure in X lr. Let the Regression function V (x) = yd ν (y x) (6.15) lr where d ν (y x) is the conditional probability measured on lr. Both ν and V (x) are unknown and what we want is to reconstruct this function. Let X n := {x 1,, x n } X and let V n be a random sample independently drawn from ν and V (x) on X. That is: W n := {(x j, U j ) X lr} n j=1. Tikhonov Regularization Theory considers the function space V n := span {K(, x) : x X n } (6.16) where span is the linear hull and projects V (x) onto this space by using the sample W n. Tikhonov Regularization Theory makes a stable reconstruction of V (x) by solving the following optimization problem: where γ > 0 and V HK V 1 := arg min V V n n n (V (x j ) U j ) 2 + γ V 2 H K (6.17) j=1 represents the norm of V in H K. The solution V of (6.17) is called the Regularized γ Projection of V (x) onto H K associated to the sample V n. The representation theorem gives a closed form of the solution V (x) for the optimization problem (6.17). This theorem was introduced by [KW70] in a spline smoothing context and has been extended and generalized to the problem of minimizing risk of functions in RKHS, see [SHS01] and [CO90] Theorem 1 (Representation). Let V n be a sample of V (x), let K be a (Mercer) kernel and let γ > 0. Then there is a unique solution V of (6.17) that admits a representation by V (x) = n α i K(x, x j ), for all x X, (6.18) j=1 42
67 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR where α = (α 1,, α n ) T is a solution to the linear equation systems: (γni n + K x )α = U, (6.19) where I n is the identity matrix n n, U = (U 1,, U n ) T and the matrix K x is given by (K x ) j j = K(x j, x j). The expression (6.18) leads to the estimate of V (x) in X n V = K x α (6.20) In short, considering a set of alternatives with attributes x j known and their estimated utilities U j, this methodology allows to estimate a function V (x) for calculating any utility of other alternatives. 6.3 Demand model This section define the constrained hierarchical multinomial logit applied for representing the railway service choice by users used in this FDP. This model represents the demand behaviour. Suppose there are various types of users denoted by l, depending on travel purpose, and economic or social characteristics of the traveller. Denote the set of user types as L. Assume that users want to make a trip ω = (i, j) from station i to station j. Assume a potential demand {ḡ l ω} ω W for an origindestination demand pair ω for users type l L. Assume the total demand disaggregated in two alternatives: (a) High speed train trips. (b) Another transport mode. Assume a logit model which divides the potential demand between alternatives (a) and (b): g ml ω = exp(λ l 1Vω ml ) m {a,b} exp(λl 1Vω ml ) ḡl ω m {a, b}, l L (6.21) where V ml ω is the utility of alternative m for user type l and demand type ω. The model considers a nested logit model for disaggregating the demand considering the feasible timetable for a trip type ω. Denote as S ω the feasible set of services for make a trip type ω. The second level of the nested logit model disaggregates the demand between the different services: 43
68 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Type of user L OD pair "! L 1 Mode choice Railway service choice! L 2 High speed train (a) s1 s2 s3... s" Other modes (b) Figure 6.11: Hierarchical MNL demand for railway service choice g al ω,s = exp(λ l 2Vω,s) al s S ω exp(λ l 2Vω,s al ) gal ω s S ω, l L (6.22) Nested logit models calculate the utility of alternative Vω al as the logsum of the utilities of each service: ( ) Vω al = 1 ln exp(λ l λ 2Vω,s) al (6.23) l 2 s S ω The above nested logit model (which is graphically represented in figure 6.11) is combined with the capacity restrictions of the services. When a train reach station j the vehicle has picked up passengers from precedent stations. The number of passengers that can board the train is then restricted by the residual capacity of the vehicle. Denote as W + sj the set of pairs which users use service s, take the train before station j and leave the vehicle after station j. Also denote as W sj the pairs ω which origin is station j and use service s. The capacity constraints of a service s in a station j is formulated as: gω,s a + gω,s a K s para todo s S, j J s, ; (6.24) ω W sj ω W + sj where K s is the capacity of train s, S is the set of services and J s represents the set of stations in which service s stop. Equation (6.24) can be reformulated disaggregated by type of users: ω,s + gω,s al K s for each s S, j J s ; (6.25) g al l L ω W sj ω W + sj 44
69 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Finally, using a maximization of the entropy framework the model is defined as: minimize subject to: ω W l L [ m {a,b} ηml gω ml (ln gω ml 1) + η cl s S w gω,s(ln al gω,s al 1) V bl ω g bl ω s S w V al ω,sg al ω,s], g al ω where η al = 1 λ l 1 + g bl ω gω al l L = ḡ l ω; con ω W, l L = s S ω gω,s al con ω W, l L [ ω Wsj gal ω,s + ] ω W + gω,s al sj 1, η bl = 1, η cl = 1. λ l 2 λ l 1 λ l 2 K s for each s S, j J s ; [Demand model] When all the calculations have been made, the total benefit of the proposed schedule can be calculated considering the operative cost of each train and the incomes of each ticket sold to passengers. In short, the timetable model change the attributes of services. Concretely it changes the departure time of each train, and depending on the conflicts, it also modifies the travel times. The new utilities can be calculated considering the new vector of attributes x new using the estimated utility function of previous section: V new = V (x new ) (6.26) The demand g al ω,s for each planned service can be calculated considering these utilities and solving the proposed demand model. 45
70 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Table 6.2: Discrete event algorithm 1. (Parameters initialization). E = { } and τ j = for each j J. 2. (Events initialization). For each k K, s k = 1 and j k = 1. Add to set E the events e = (k, 1, 1) for all k. Consider T sj = T s (6.7) δ e = T s (6.8) 3. (Simulation). While E = { } (a) Calculate next event. Consider δ e = min e E {δ e} (6.9) e = Arg min{δ e } (6.10) e E (b) Consider e = (k, s k, j k ), compute next event for train k. Define i = J(k, j k ) and j k = j k + 1. Calculate j = J(k, j k ), there are three possibilities: i. (The service has more stops). If j k j F then: T sj = max{τ j + d ij, δ e + c k ij} (6.11) τ j = T sj (6.12) T sj = T sj + p sj (6.13) Compute new event e = (k, s k, j k ) and δe = T sj. ii. (Actual service has ended, but there are more services of the train). If j k = j F and S(k, s k +1) s F, then: j k = 1, s = S(k, s k ), s = S(k, s k + 1), s k = s k + 1, and j = J(s, 1). Taking into account Rolling stock: T s j = max{t s, δ e + r ss } (6.14) Compute new event e = (k, s k, 1) y δ e = T s j iii. (There are not more events for train k). Delete event e, E = E {e }. 46
71 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR Table 6.3: Examples of kernel functions Name Form of K(x i, x j ) Gaussian e a x i x j 2 where is the euclidean norm a lr + Laplacian e a x i x j 1 where 1 is the norm 1 and a lr + Polynomial ( ) 1 + ax T b i x j, a > 0 and b ln Sigmoidal tanh(a(x T i x j ) + b), a lr +, b lr Multiquadratic xi x j + a 2, a lr + 1 Inverse multiquadratic, a xi x j +a lr+ 2 47
72 CHAPTER 6. A RAILWAY TIMETABLE MODEL BASED ON USER BEHAVIOUR 48
73 CHAPTER 7 OPTIMIZATION ALGORITHMS In this section, the algorithms used for the schedule optimization in this FDP are presented. 7.1 NelderMead method NelderMead (NM) [Pow73] [McK73] is a method for the minimization of a function very commonly used in nonlinear problems that can not be derivable. Is a heuristic search method that uses a special polytope of N+1 vertices in N dimensions, for example a triangle in a plane or a tetrahedron in threedimensional space. This method approximates a local optimum of a problem when the objective funcion is unimodal. This method is a direct search method that does not use numerical or analytic gradients and has local convergence. Therefore is useful for the optimization of a known schedule in the proposed problem due to its exploitation capacity. The NelderMead pseudocode is as follows: 1. Order according to the values at the vertices: f(x 1 ) f(x 2 ) f(x n+1 ) 2. Calculate x o, the center of gravity of all points except x n+1. 49
74 CHAPTER 7. OPTIMIZATION ALGORITHMS 3. Reflection Compute reflected point x r = x o + α(x o x n+1 ) If the reflected point is better than the second worst, but not better than the best, i.e.: f(x 1 ) f(x r ) < f(x n ), then obtain a new simplex by replacing the worst point x n+1 with the reflected point x r, and go to step Expansion If the reflected point is the best point so far, f(x r ) < f(x 1 ), then compute the expanded point x e = x o + γ(x o x n+1 ) If the expanded point is better than the reflected point, f(x e ) < f(x r ) then obtain a new simplex by replacing the worst point x n+1 with the expanded point x e, and go to step 1. Else obtain a new simplex by replacing the worst point x n+1 with the reflected point x r, and go to step 1. Else (i.e. reflected point is not better than second worst) continue at step Contraction Here, it is certain that f(x r ) f(x n ) Compute contracted point x c = x o + ρ(x o x n+1 ) If the contracted point is better than the worst point, i.e. f(x c ) < f(x n+1 ) then obtain a new simplex by replacing the worst point x n+1 with the contracted point x c, and go to step 1. Else go to step Reduction For all i {2,..., n + 1} replace the point with x i = x 1 + σ(x i x 1 ) and go to step 1. Note: α, γ, ρ and σ are respectively the reflection, the expansion, the contraction and the shrink coefficient. Standard values are α = 1, γ = 2, ρ = 1/2 and σ = 1/2. 50
75 CHAPTER 7. OPTIMIZATION ALGORITHMS 7.2 Particle Swarm Optimization PSO [KE95] is a population based optimization technique inspired by birds social behaviour. This heuristic algorithm allows to optimize a problem having a population of (named particles) and moving it through the solution space following mathematical rules that changes particles velocity and position, to achieve the current optimum particles. After finding the two best values, the particle updates its velocity and positions. The Table 7.1 shows the pseudo code of the procedure. PSO is initialized with a group of random particles (solutions) and then searches for optima by updating the initial population. In every iteration, each particle is updated by following two "best" values. The first one is the best solution (fitness) it has achieved so far. (The fitness value is also stored. This value is called pbest. Another "best" value that is tracked by the particle swarm optimizer is the best value, obtained so far by any particle in the population. This best value is a global best and called gbest. When a particle takes part of the population as its topological neighbors, the best value is a local best and is called lbest. An improvement of the original PSO, consists of replacing the whole population to compute gbest by an neighbourhood of the particle. In this FDP, Standard Particle Swarm Optimization (SPSO) [BK07b] is used because it eliminates the problem of defining parameters manually according to the problem. 51
76 CHAPTER 7. OPTIMIZATION ALGORITHMS For each particle Randomes of the position and velocity of the initial particles End Do For each particle Calculate fitness value If the fitness value is better than the best fitness value (pbest) in history set current value as the new pbest End Choose the particle with the best fitness value of all the particles as the gbest For each particle Calculate particle velocity Update particle position End Table 7.1: Pseudocode PSO 7.3 PSO + NelderMead hybridization The algorithms presented below shows some drawbacks related to their nature. PSO is centred in exploration and NM is centred in exploitation. Exploration is related to global search as well as exploitation is related to local search in these algorithms. The intention of the first one is to explore the search space looking for good solutions, whereas the second one tries to refine the solution and avoid big jumps on the search space. A hybridizafion of both algorithms is proposed in order to combine their features.this area is interesting due to its versatility in optimization problems. The resulting method is a derivative free algorithm. 52
77 CHAPTER 7. OPTIMIZATION ALGORITHMS To find a better solution SPSO is used in a exploration phase until nc improvements are obtained. Then NM is used in a exploitation phase, coming out nr iterations and finally updating the best particle of the population with the solution of NM stage. Figure 7.1 shows how it works. This process is repeated until a given number of functional evaluations is achieved. P1 P1 Best Ranked Population P1 NM P1 Updated Population P1 PSO Apply nr Iterations of NM algorithm P2 PS Initialized Population PS Worst Obtain nc improvements of gbest by applying PSO algorithm PS Main Iteration PS Figure 7.1: PSO+NM scheme. This method is classified as a derivative free algorithms [EAGRA13]. These authors propose a framework for the hybridization of metaheuristics based on column generation algorithms used in large scale optimization. 53
78 CHAPTER 7. OPTIMIZATION ALGORITHMS 54
79 CHAPTER 8 dhave SOFTWARE This chapter is focused on the development of the dhave software following the DSDM process. 8.1 Initial requirements The initial requirements were completed following the MoSCoW rules previously mentioned. Must list (M): Simple graphical user interface. Stations, trains, services, prices and management. Complete railway definition. Behaviour information. Timetable calculation. Timetable optimization. Save file option to store data. Open file option to import data. 55
80 CHAPTER 8. DHAVE SOFTWARE Should list (S): Table to show the calculated timetable. Map to show the routes. Graph to show the routes. Deal with simulation data, profits calculation and schedule optimization. The possibility to add all data manually. The possibility to delete some information. User feedback. Could list (C): Button to play the simulation in map. Button to stop the simulation in map. Zoom buttons. Pan button. Design a logo for this tool. Want to have but will not have this time round (W): RENFE database connection. 8.2 Code and user interface development As previously described this tool has been implemented following DSDM development methodology. Moreover a layerbased design has been used for the tool development. This design consists of three layers: presentation, business and persistence. 56
81 CHAPTER 8. DHAVE SOFTWARE Presentation layer: this layer includes user interaction, the part the user see, the graphical user interface. To implement this layer a main draft was designed (Figure 8.2) then several versions were developed and enhanced at the same time as the releases were completed. Business layer: this is the logical layer, it contains the rules the business wants. Persistence layer: it is specified how the data is stored and managed. In this case.xml files has been used. One of those files contains the characteristics of the stations, trains, distances between stations, demands, services, and the complete net. The other one contains prices and optimization data. The layer based design idea in this FDP can be seen in Figure 8.1. Figure 8.1: Layer based design A prioritisation of DSDM MoSCoW rules has been followed as said previously in Section 5.2. Taking this into account, a list of the different iterations to develop the software is shown. Moreover, the different releases are set. Release 1: Simulation without restrictions. Release 2: Complete simulation. Release 3: GUI improvements and include demands. Release 4: Optimization. 57
82 CHAPTER 8. DHAVE SOFTWARE Release 1 1. First interface draft, see Figure 8.2. Figure 8.2: User interface first scheme 58
83 CHAPTER 8. DHAVE SOFTWARE In this section the tasks realised for developing Release 1 are indicated. Also Figure 8.3 shows the Gantt diagram defined for this release. Figure 8.3: Gantt diagram: Release 1 2. Developing user interface. It is important to understand the complete railway composition, Figure 8.4 is a clear schema of it. Figure 8.4: The complete network idea 3. Developing simulation. Doesn t take into account Dwell Time and Rolling Stock restrictions. It works with a small test (3 stations, 5 trains). 59
84 CHAPTER 8. DHAVE SOFTWARE 4. Developing simulation. Includes Dwell Time and Rolling Stock restrictions. It works with a small test (3 stations, 5 trains). 5. Developing simulation. Includes overtake possibility taking into account one track. 6. Developing simulation. Includes overtake possibility (one single train). Figure 8.5 shows this first release. Figure 8.5: First release Release 2 In this section the tasks realised for developing Release 2 are indicated. Also Figure 8.6 shows the Gantt diagram defined for this release. 1. Compare results within schedule with restrictions and schedule without restrictions. 2. Developing simulation. Includes multiple overtake possibility (several trains). 3. Developing simulation. Includes multiple overtake and several tracks possibility. 60
85 CHAPTER 8. DHAVE SOFTWARE Figure 8.6: Gantt diagram: Release 2 4. Developing simulation. Use the real test SevillaMadrid corridor (5 stations, 28 trains). 5. Developing simulation. Generate timetable. All the departure times at each station. 6. Developing simulation. Generate graphic table. Departure and arrival time are both neccesary. 7. Developing simulation. Generate map view. Use Google Maps, coordinates and different colours for each train shown. Takes into account the interface appearance and usability. 61
86 CHAPTER 8. DHAVE SOFTWARE Separate different ideas (map view, graph view, table view). Cover different requirements. Take into account user feedback. Figure 8.7 shows this second release. Figure 8.7: Second release Release 3 In this section the tasks realised for developing Release 3 are indicated. Also Figure 8.8 shows the Gantt diagram defined for this release. 1. Developing user interface. Designing and implementing all the main windows using Matlab GUI. Main window. Three principal views map, graphic and table. Stations (Fig. C.6) and New Stations window (Fig. C.7). Stations Information window (Fig. C.8). Demand and Distances window (Fig. C.10). New Train Type window (Fig. C.12). Train Information window (Fig. C.13). Services window (Fig. C.16). Services Information window (Fig. C.18). 62
87 CHAPTER 8. DHAVE SOFTWARE Figure 8.8: Gantt diagram: Release 3 Demand properties window (Fig. C.20). Complete railway window (Fig. C.22). Complete railway Information window (Fig. C.25). Prices window (Fig. C.27). 2. Allow to add data and store it internally. Stations and New Stations windows, create the stations list, allow to add new stations and allow stations to be deleted. Stations Information, allow data to be shown. Demand and Distances, allow to add data in different tables then allow to show distances or demands. New Train Type window, create the trains list, allow trains to be deleted and show it. Services window, create the all services list, allow services to be deleted and show it. Demand Properties window, allow demand data insertion, allow betas insertion and deletion of the correct row according to user needs. 63
88 CHAPTER 8. DHAVE SOFTWARE Complete railway window, allow to add the services of a route, delete it, allow to insert the complete route, see the list of routes and allow to show the routes information. Prices window, allow to add all prices to the below list. 3. Developing user interface. Design and implementation all the question and error windows using Matlab GUI. Data read window (Fig. C.3) (for principal). Question delete station window (Fig. C.9). Station itself window (Fig. C.11) to prevent wrong information storage. Question delete train window (Fig. C.14). Warning stops window at Services window, necessary minutes (Fig. C.17). Question delete services window at Services window (Fig. C.19). Warning time format window at Complete railway window (Fig. C.24). Question delete route window at Complete railway window (Fig. C.26). 4. Developing user interface. Include import.xml file (in main window) for stations, trains, services and complete railway. 5. Developing user interface. Include export.xml file (in main window) for stations, trains, services and complete railway. 6. Developing user interface. Include import.xml file (in demand behaviour window) for demand behaviour. 7. Developing user interface. Include export.xml file (in demand behaviour window) for demand behaviour. Include main window buttons, zoom in, zoom out and pan. Figure 8.9 shows this third release. 64
89 CHAPTER 8. DHAVE SOFTWARE Figure 8.9: Third release Release 4 In this section the tasks realised for developing Release 4 are indicated. Also Figure 8.10 shows the Gantt diagram defined for this release. Figure 8.10: Gantt diagram: Release 4 1. Developing user interface Design and implement all the main windows using Matlab GUI. Demand Behaviour adding the demand properties and betas (Fig. C.20). 65
90 CHAPTER 8. DHAVE SOFTWARE 2. Allow to add data and store it internally Demand Behaviour window, allow to add the demand properties and betas to its tables (Fig. C.20). 3. Developing user interface (Optimization) Design and implementation all the question and error windows using Matlab GUI. Question delete demand behaviour window (Fig. C.20). Includes optimization mode. Select algorithm window. Select algorithm characteristics window. Select cores window, for parallel mode. 4. Design and include this tool logo. Figure 8.11 shows this third release. Figure 8.11: Fourth release 66
91 CHAPTER 8. DHAVE SOFTWARE 8.3 Software structure dhave code structure documentation has been generated using m2html tool. This library generates a.html document and contains the complete structure of all.m files of the project. The documentation format is shown in Figure Two lists show the work space folders and the existing.m files respectively. Figure 8.12: Index of the code structure Moreover, clicking on links, the information related to that file is shown. Figure 8.13 depict the documentation of alea normal function. That detail shows the purpose of the function, the input and output parameters, the description, the functions called and the invoking function. 67
92 CHAPTER 8. DHAVE SOFTWARE Figure 8.13: Function detail 68
93 CHAPTER 9 COMPUTATIONAL EXPERIMENTS The objective of this section is to test the viability, functionality and quality of the software application and the proposed model based on free derivative methods. 9.1 Case study For testing the model, a case study has been generated. This numerical example is focused on the MadridSeville corridor of the High Speed Railway network of Spain. This corridor is formed by 5 stations (Madrid(MAD), Ciudad Real(CR), Puertollano(PU), Cordoba(COR), Seville(SEV)) which produces 20 origindestination demand pairs (10 per direction of the travel) formed by passengers/day. Currently this demand is completely covered by 100 services. Figure 9.1 depicts the corridor used by these services, Table 9.1 indicates the route of each type of service and Table 9.2 shows the characteristics of each type of train. The origindestination matrices (different potential trips between stations) in a labour day are shown in Table 9.3, Table 9.4 and Table 9.5. Therefore is considered that 322 passengers travel between COR and SEV in both directions in MD trains. Table 9.6 shows the distance between stations in km. The software application has been implemented and run in MATLAB 2013, while 69
94 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Table 9.1: Types of railway services on MadridSeville corridor Type of Service Route Amount Type of train 1 MAD CR PU 11 AVANT 2 MAD CR PU COR 3 AVE 3 MAD CR PU COR SEV 5 AVE 4 MAD COR 4 AVE 5 MAD COR SEV 9 AVE 6 MAD SEV 3 AVE 7 COR SEV 6 MD 8 COR SEV 9 AVANT 9 SEV COR 6 MD 10 SEV COR 9 AVANT 11 SEV COR PU CR MAD 5 AVE 12 SEV COR MAD 8 AVE 13 SEV MAD 3 AVE 14 COR PU CR MAD 3 AVE 15 COR MAD 5 AVE 16 PU MAD CR 11 AVANT Table 9.2: Characteristics of each service on MadridSeville corridor Type Med. Speed(km/h) Max. Passengers (K s ) Operative Cost/Km (euros) AVE ,5 AVANT ,4 MD ,2 70
95 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Zaragoza Segovia Delicias Guiomar MadridChamartín MadridPuerta de Atocha Toledo GuadalajaraYebes CuencaFernándo Z Va Requena Utiel Ciudad Real AlbaceteLos Llanos Puertollano SevillaSanta Justa Córdoba Puente GenilHerrera AntequeraSanta Ana MálagaMaría Zambrano Figure 9.1: MadridSevilla corridor TOTAL MA CR PU COR SEV MA CR PU COR SEV Table 9.3: Potential total trips the demand model has been developed and run in Cplex The computer used to perform the computational experiments has the following characteristics: Windows 7 64 bits, processor: 2 x AMD Opteron 4226, 12 cores 2,7GHz, RAM: 12GiB 1600MHz. 71
96 CHAPTER 9. COMPUTATIONAL EXPERIMENTS AVE MA CR PU COR SEV MA CR PU COR SEV Table 9.4: AVE trips AVANT MA CR PU COR SEV MA CR PU COR SEV Table 9.5: AVANT trips 9.2 Simulation with demand This section represents the simulation results of the current schedule used by RENFE using dhave application. After doing the simulation the complete schedule is obtained. The result is shown in Tables 9.7, 9.8, 9.9, 9.10 which contains the timetable of the 100 services previously mentioned. 72
97 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Station 1 Station 2 Distance MA CR 190 CR PU 44 PU COR 166 COR SEV 138 Table 9.6: Distances between connected stations (km) The simulation output map is shown in Figure 9.2 and the simulation output graph is shown in Figure 9.3. Figure 9.2: Map simulation After the simulation dhave computes the utility for each train and each possible demand. In this example only one type of user l = 1 is considered attending to economic characteristics, but taking into account the trip of each traveller (origindestination pair ω), there will be 20 types of users. Each user type ω can travel using a set of services s. Considering the planned schedule, the set of alternatives (ω, s) D consists of 298 alternatives. 73
98 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Service name CORDOBAMADRID np 8:56:06 9:42:25 9:54:42 10:47:49. MADRIDCORDOBA np 11:35:06 12:28:07 12:40:24 13:26:49. CORDOBAMADRID np 11:56:06 12:42:25 12:54:42 13:47:49. MADRIDCORDOBA np 14:35:06 15:28:07 15:40:24 16:26:49. CORDOBAMADRID np 16:56:06 17:42:25 17:54:42 18:47:49. MADRIDCORDOBA np 10:35:06 11:28:07 11:40:24 12:26:49. CORDOBAMADRID np 12:56:06 13:42:25 13:54:42 14:47:49. MADRIDCORDOBA np 16:35:06 17:28:07 17:40:24 18:26:49. CORDOBAMADRID np 20:01:06 20:47:25 20:59:42 21:52:49. MADRIDSEVILLA np 7:30:06 8:23:07 8:35:24 9:21:43 10:28:30 SEVILLAMADRID np 13:45:06 14:48:18 15:34:38 15:46:55 16:40:02 MADRIDSEVILLA np 19:30:06 20:23:07 20:35:24 21:21:43 22:10:49 SEVILLAMADRID np 7:45:06 8:58:18 9:44:38 9:56:55 10:50:02 MADRIDSEVILLA np 15:00:06 15:53:07 16:05:24 16:51:43 17:38:30 SEVILLAMADRID np 19:15:06 19:53:36 20:39:56 20:52:12 21:45:20 MADRIDCORDOBA p 9:35:06 10:29:07 10:42:24 11:28:49. CORDOBAMADRID p 15:06:06 15:53:25 16:06:42 16:59:49. MADRIDCORDOBA p 18:25:06 19:19:07 19:32:24 20:18:49. CORDOBAMADRID p 9:59:06 10:46:25 10:59:42 11:52:49. MADRIDCORDOBA p 12:35:06 13:29:07 13:42:24 14:28:49. CORDOBAMADRID p 21:30:06 22:17:25 22:30:42 23:23:49. CORDOBASEVILLA 6:50:06 7:33:06... SEVILLACORDOBA 8:00:06 8:58:30... CORDOBASEVILLA 21:30:06 22:13:06... SEVILLACORDOBA 22:17:12 23:00:12... CORDOBASEVILLA 23:04:18 23:47:18... Table 9.7: Timetable of planned services (part 1) 74
99 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Service name SEVILLACORDOBA 6:50:06 7:33:06... CORDOBASEVILLA 7:55:06 8:38:06... SEVILLACORDOBA 9:20:06 10:03:06... CORDOBASEVILLA 12:55:06 13:38:06... SEVILLACORDOBA 21:35:06 22:18:06... CORDOBASEVILLA 8:53:06 9:36:06... SEVILLACORDOBA 15:40:06 16:23:06... CORDOBASEVILLA 17:25:06 18:08:06... SEVILLACORDOBA 19:35:06 20:48:30... CORDOBASEVILLA 15:25:06 16:08:06... SEVILLACORDOBA 17:55:06 18:38:06... CORDOBASEVILLA 19:30:06 20:13:06... SEVILLACORDOBA 20:18:06 21:01:06... CORDOBASEVILLA 7:15:06 8:33:18... SEVILLACORDOBA 8:37:24 9:55:37... CORDOBASEVILLA 14:05:06 15:23:18... SEVILLACORDOBA 19:30:06 20:48:18... CORDOBASEVILLA 20:52:24 22:10:37... SEVILLACORDOBA 7:40:06 8:58:18... CORDOBASEVILLA 9:10:06 10:28:18... SEVILLACORDOBA 15:00:06 16:18:18... CORDOBASEVILLA 18:15:06 19:33:18... SEVILLACORDOBA 13:30:06 14:48:18... CORDOBASEVILLA 16:20:06 17:38:18... SEVILLACORDOBA 20:30:06 21:48:18... MADRIDSEVILLA p 6:30:06 7:24:07 7:37:24 8:24:43 9:03:20 Table 9.8: Timetable of planned services (part 2) 75
100 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Service name SEVILLAMADRID p 9:45:06 10:24:36 11:11:56 11:25:12 12:18:20 MADRIDSEVILLA p 17:00:06 17:54:07 18:07:24 18:54:43 19:33:30 SEVILLAMADRID p 21:00:06 21:49:24 22:36:44 22:50:01 23:43:08 SEVILLAMADRID p 6:15:06 6:54:36 7:41:56 7:55:12 8:48:20 MADRIDSEVILLA p 9:00:06 9:54:07 10:07:24 10:54:43 11:33:20 SEVILLAMADRID p 12:45:06 13:24:36 14:11:56 14:25:12 15:18:20 MADRIDSEVILLA p 21:30:06 22:24:07 22:37:24 23:24:43 0:03:20 SEVILLAMADRID p 7:15:06 7:54:36 8:41:56 8:55:12 9:48:20 MADRIDSEVILLA p 13:00:06 13:54:07 14:07:24 14:54:43 15:33:20 MADRIDSEVILLA p Cordoba 7:00:06 7:53:07 8:05:24 8:52:43 9:31:20 SEVILLAMADRID p Cordoba 10:45:06 11:24:36 12:10:56 12:23:12 13:16:20 MADRIDSEVILLA p Cordoba 14:00:06 14:53:07 15:05:24 15:52:43 16:31:20 SEVILLAMADRID p Cordoba 16:35:26 17:14:57 18:01:16 18:13:33 19:06:40 MADRIDSEVILLA p Cordoba 20:00:06 20:53:07 21:05:24 21:52:43 22:31:20 SEVILLAMADRID p Cordoba 6:45:06 7:24:36 8:10:56 8:23:12 9:16:20 MADRIDSEVILLA p Cordoba 11:00:06 11:53:07 12:05:24 12:52:43 13:31:20 MADRIDSEVILLA p Cordoba 16:00:06 16:53:07 17:05:24 17:52:43 18:31:20 SEVILLAMADRID p Cordoba 19:45:06 20:49:36 21:35:56 21:48:13 22:41:20 SEVILLAMADRID p Cordoba 8:45:06 9:56:43 10:43:03 10:55:19 11:48:27 MADRIDSEVILLA p Cordoba 12:00:06 12:53:07 13:05:24 13:52:43 14:31:20 MADRIDSEVILLA p Cordoba 8:00:06 8:53:07 9:05:24 9:52:43 10:31:20 SEVILLAMADRID p Cordoba 17:45:06 18:24:36 19:10:56 19:23:12 20:16:20 SEVILLAMADRID p Cordoba 11:45:06 12:24:36 13:10:56 13:23:12 14:16:20 MADRIDSEVILLA p Cordoba 18:00:06 18:53:07 19:05:24 19:52:43 20:31:20 MADRIDSEVILLA p Cordoba 10:15:06 11:08:07 11:20:24 12:07:43 12:46:20 SEVILLAMADRID p Cordoba 15:45:06 16:24:36 17:10:56 17:23:12 18:16:20 Table 9.9: Timetable of planned services (part 3) 76
101 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Service name MADRIDPUERTOLLANO p 6:40:06 7:40:10 7:53:56.. PUERTOLLANOMADRID p 8:15:06 8:29:46 9:28:56.. MADRIDPUERTOLLANO p 10:15:18 11:15:22 11:29:08.. PUERTOLLANOMADRID p 12:15:06 12:29:46 13:28:56.. MADRIDPUERTOLLANO p 17:15:06 18:15:10 18:28:56.. PUERTOLLANOMADRID p 19:15:06 19:29:46 20:28:56.. MADRIDPUERTOLLANO p 22:15:06 23:15:10 23:28:56.. PUERTOLLANOMADRID p 6:25:06 6:39:46 7:38:56.. MADRIDPUERTOLLANO p 8:05:06 9:05:10 9:18:56.. PUERTOLLANOMADRID p 10:15:06 10:29:46 11:28:56.. MADRIDPUERTOLLANO p 15:45:06 16:45:10 16:58:56.. PUERTOLLANOMADRID p 17:15:06 17:29:46 18:28:56.. MADRIDPUERTOLLANO p 20:15:06 21:15:10 21:28:56.. PUERTOLLANOMADRID p 7:00:06 7:14:46 8:13:56.. MADRIDPUERTOLLANO p 13:15:06 14:15:10 14:28:56.. PUERTOLLANOMADRID p 15:15:06 15:29:46 16:28:56.. MADRIDPUERTOLLANO p 18:15:06 19:15:10 19:28:56.. PUERTOLLANOMADRID p 21:15:06 21:29:46 22:28:56.. PUERTOLLANOMADRID p 7:50:06 8:04:46 9:03:56.. MADRIDPUERTOLLANO p 14:15:06 15:15:10 15:28:56.. PUERTOLLANOMADRID p 16:15:06 16:29:46 17:28:56.. MADRIDPUERTOLLANO p 19:15:06 20:15:10 20:28:56.. Table 9.10: Timetable of planned services (part 4) The attributes considered for each possible alternative (ω, s) are: i) the price x ω,s 1, ii) the departure time x ω,s 2 and iii) the timetable x ω,s 3. The vector of attributes is denoted as x ωs = (x ω,s 1, x ω,s 2, x ω,s 3 ). 77
102 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Figure 9.3: Timestation graph obtained by simulation The utility function used is: V (x) = α ω,s K(x, x ωs ), for all x X, (9.1) (ω,s) D 1 where a Gaussian kernel K(x, y) = e a x y 2 is used in which is the euclidean norm a lr +. In this case a = 5. The regularization parameter γ has been set to The calibrated utilities used are the presented in [EAGRLGAH14], which calibrates the model using 25 of the services of the same schedule. day. The final value calculated using the proposed model is a benefit of euros per 9.3 Timetable optimization This section shows a set of 11 experiments using the optimization algorithms presented in this FDP. Each algorithm has been run for 1e4 objective function evaluations. NM algorithm starts from the planned schedule to obtain its proposed solution. SPSO and 78
103 CHAPTER 9. COMPUTATIONAL EXPERIMENTS SPSO+NM methods start with an initial swarm of 40 particles calculated randomly on an interval [0 : 00, 23 : 59] hours. The parameters w, c1 and c2 for updating velocity are defined as w = 1/(2 ln(2)), c1 = ln(2) and c2 = c1. SPSO+NM values n c and n r are defined as 1, 5, 25 evaluations and 1, 5, 10 percent of the total iterations respectively, combining all the possibilities. The obtained results are shown in Table First column indicates the algorithm used and their configuration. Also the solution found and the CPU time of the algorithm can be shown. The last column contains the improvement obtained with respect to the current RENFE schedule using the following equation: Improvement = Planned timetable benefit  Optimized timetable benefit Planned timetable benefit 100 (9.2) Moreover, Figure 9.4 shows the evolution of each algorithm solution per each iteration. As can be seen, the computational time of the optimization algorithms is between 6.1 and 7.5 hours producing an improvement of 1 percent in NM case and more than 2 percent in SPSO related algorithms. It is worth noting that SPSO+NM approach obtain in all cases a better solution than NM and SPSO algorithms alone. 9.4 Enhanced tool development This section analyses the possibility of reducing the computational time of some of the optimization algorithms proposed. SPSO and SPSO+NM algorithms can be improved due to several of its parts could be parallelized. There are software parts that could be changed from sequential (see Figure 9.5) to parallel mode (see Figure 9.6). This parts change its behaviour and several particles evaluations of the objective function could be done at the same time. Using this idea, the algorithm speed up is obtained using the following equation: speed up ratio n = Sequential runtime Parallel runtime with n cores (9.3) 79
104 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Algorithm Solution found (C) CPU time (hours) Improvement(%) NM SPSO SPSO+NM (n c = 1, n r = 1) SPSO+NM (n c = 1, n r = 5) SPSO+NM (nc = 1, n r = 10) SPSO+NM (n c = 5, n r = 1) SPSO+NM (n c = 5, n r = 5) SPSO+NM (n c = 5, n r = 10) SPSO+NM (n c = 25, n r = 1) SPSO+NM (n c = 25, n r = 5) SPSO+NM (n c = 25, n r = 10) Table 9.11: Solutions obtained by sequential algorithms This experiment has been realized running the SPSO and SPSO+NM (n c = 25, n r = 10) algorithms in parallel mode with 2, 4, 8 and 12 parallel threads. The results of the computational cost and speed up ratio of the algorithms can be seen in Table 9.12 and Figure 9.7. The results show the improvement of each algorithm depending on the number of parallel threads. However is worth noting that the speed up ratio in SPSO+NM algorithm do not increase with the number of parallel threads. This occurs because of the random 80
105 CHAPTER 9. COMPUTATIONAL EXPERIMENTS 3.68 xn105 ObjectiveNfunctionNvalue SPSO SPSO+NMN(nc=1Nnr=1) SPSO+NMN(nc=1Nnr=5) SPSO+NMN(nc=1Nnr=10) SPSO+NMN(nc=5Nnr=1) SPSO+NMN(nc=5Nnr=5) SPSO+NMN(nc=5Nnr=10) SPSO+NMN(nc=25Nnr=1) SPSO+NMN(nc=25Nnr=5) SPSO+NMN(nc=25Nnr=10) ObjectiveNfunctionNevaluations Figure 9.4: Performance of algorithms nature of the algorithm, in which the NM algorithm, which is non parallelizable, is ran an undetermined number of times depending on the solutions found by the SPSO stage. The case with 2 and 4 parallel threads only run the NM algorithm one time doing 1000 function evaluations, while with 8 and 12 cores the NM algorithm is run two times doing 2000 function evaluations. 81
106 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Figure 9.5: Sequential SPSO 82
107 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Figure 9.6: Parallel SPSO 6.5 SPSO method 6.5 SPSO+NM method Speed up ratio Speed up ratio Cores Cores Figure 9.7: Speed up ratio for SPSO and SPSO+NM algorithms 83
108 CHAPTER 9. COMPUTATIONAL EXPERIMENTS Algorithm CPU time (hours) Speed up ratio SPSO 2 cores SPSO 4 cores SPSO 8 cores SPSO 12 cores SPSO+NM (nc=25, nr=10) 2 cores SPSO+NM (nc=25, nr=10) 4 cores SPSO+NM (nc=25, nr=10) 8 cores SPSO+NM (nc=25, nr=10) 12 cores Table 9.12: Computational comparison between parallel algorithms 84
109 CHAPTER 10 CONCLUSIONS In this section the contributions achieved in this FDP are summarized: The TTP has been studied in detail, proposing a novel model capable of estimating the behaviour of the passengers depending on the schedule defined. Various derivative free algorithms have been studied and implemented for solving the above model. A simple and intuitive software tool (dhave) has been developed to help controllers in decisionmaking processes. Furthermore, the tool is capable of representing accurately the initial schedule of a railway system and can propose optimal scheduling solutions which would improve the benefits of the railway company. Moreover the computational time is acceptable for the planning horizon. Parallel computation strategies have been studied for improving the speed of the proposed algorithms. A complete case study with real data has been realized for validating the implemented model and algorithms. I wish to conclude with a thought. The way started in this FDP does not only end with the obtained achievements, but it leads to other new objectives. A number of improvements could be studied later on: 85
110 CHAPTER 10. CONCLUSIONS Try to use another free derivative algorithms for testing the quality of the solutions obtained. Prepare more computational experiments with different and more complex real case studies, with the objective of evaluating the model and challenging the algorithms capacity. Integrate DHAVE in the complete system of RENFE, connecting to their databases. The main conclusion after the realization of this FDP and the implementation of dhave, considering the fact that some improvements could be made, is that the necessary competences have been acquired during the career. María del Carmen Ramírez Flores 86
111 CHAPTER 11 CONCLUSIONES En esta sección se resumen las contribuciones alcanzadas en este TFG: El problema planificación de horarios en sistemas ferroviarios ha sido estudiado detalladamente, proponiendo un nuevo modelo capaz de estimar el comportamiento de los pasajeros dependiendo de la planificación inicial. Se han estudiado e implementado varios algoritmos libres de derivadas para resolver el modelo anterior. Se ha desarrollado una herramienta software simple e intuitiva (dhave) para ayudar a los controladores en la toma de decisiones. Además la herramienta es capaz de representar con exactitud la planificación inicial de un sistema ferroviario, pudiendo proponer un horario óptimo que mejoraría los beneficios de la compañía ferroviaria. Además el tiempo computacional de los algoritmos es aceptable con respecto al horizonte de planificación. Se han estudiado estrategias de computación paralela para aumentar la velocidad de los algoritmos propuestos. Se ha realizado un caso de estudio con datos reales para la validación del modelo implementado y de los algoritmos. Deseo finalizar con una reflexión. El camino iniciado por este TFG no finaliza con un punto y final, sino más bien con un punto y seguido. Existen diversas mejoras susceptibles de ser realizadas más adelante, por ejemplo: 87
112 CHAPTER 11. CONCLUSIONES Probar otros algoritmos libres de derivadas para testear la calidad de las soluciones obtenidas. Realizar más experimentos computacionales en casos de estudio mayores y más complejos, con el objetivo de evaluar el modelo y desafiar a los algoritmos. Integrar dhave en el sistema informático de RENFE, conectándose con sus bases de datos. Con este TFG y la herramienta dhave lo más importante ha sido mostrar que, aunque siempre existen mejoras a realizar, se han adquirido las competencias necesarias para llevarlo a cabo. María del Carmen Ramírez Flores 88
113 REFERENCES [Ana83] [Aro50] A. Anas. Discrete choice theory, information theory and the multinomial logit and gravity models. Transportation Research Part B, 17(1):13 23, N. Aroszajn. Theory of reproducing kernels. Transactions of the American Mathematical Society, 68(3): , [BAB95] M. BenAkiva and B. Boccara. Discrete choice models with latent choice sets. International Journal of Research in Marketing, 12(1):9 24, [BK07a] [BK07b] D. Bratton and J. Kennedy. Defining a standard for particle swarm optimization. In Proceedings of the 2007 IEEE Swarm Intelligence Symposium, SIS 2007, pages , Cited By (since 1996):251. D. Bratton and J. Kennedy. Defining a standard for particle swarm optimization. In Swarm Intelligence Symposium, SIS IEEE, pages , [CMM13] L. Cadarso, T. Marín, and G. Maróti. Recovery of disruptions in rapid transit networks. Transportation Research Part E: Logistics and Transportation Review, 53(1):15 33, [CO90] [CO05] D. Cox and F. O Sullivan. Asymptotic analysis of penalized likelihood and related estimators. Annals of Statistics, 18: , V. Cantillo and J.d.D. Ortúzar. A semicompensatory discrete choice model with explicit attribute thresholds of perception. Transportation Research Part B: Methodological, 39(7): ,
114 REFERENCES [CP01] [CT12] [DdG10] [DGGVM13] [DPP08] E. Cascetta and A. Papola. Random utility models with implicit availability/perception of choice alternatives for the simulation of travel demand. Transportation Research Part C: Emerging Technologies, 9(4): , V. Cacchiani and P. Toth. Nominal and robust train timetabling problems. European Journal of Operational Research, 219(3): , P. Donoso and L. de Grange. A microeconomic interpretation of the maximum entropy estimator of multinomial logit models and its equivalence to the maximum likelihood estimator. Entropy, 12(10): , L. De Grange, F. González, I. Vargas, and J.C. Muñoz. A polarized logit model. Transportation Research Part A: Policy and Practice, 53:1 9, A. D Ariano, D. Pacciarelli, and M. Pranzo. Assessment of flexible timetables in realtime traffic management of a railway bottleneck. Transportation Research Part C: Emerging Technologies, 16(2): , [EA09] Jose Luis EspinosaAranda. Simeifer: Simulador y editor de infraestructuras ferroviarias. Master s Thesis, Escuela Superior de Informática de Ciudad Real, [EAGR12] [EAGRA13] Jose Luis EspinosaAranda and Ricardo GarcíaRódenas. A discrete eventbased simulation model for realtime traffic management in railways. Journal of Intelligent Transportation Systems, 16(2):94 107, Jose Luis EspinosaAranda, Ricardo GarciaRodenas, and Eusebio Angulo. A framework for derivative free algorithm hybridization. In Adaptive and Natural Computing Algorithms, pages Springer, [EAGRLGAH14] J. L. EspinosaAranda, R. GarciaRodenas, M. L. LopezGarcia, and E. AnguloHerrera. Constrained logit model: Formulation and calibration. Technical Report,
115 REFERENCES [INE10] Instituto nacional de estadística. tabla.do?path=/t10/a106/2000/10/&file=tf px&type=pcaxis&l=0, [IVE] IVE. Institute of transport railway construction and operation. https://www.tubraunschweig.de/ive/index.html. [JKP10] J.D.Lemp, K.M.Kockelman, and P.Damien. The continuous corssnested logit model: Formulation and application for departure time choice. Transportation Research Part B: Methodological, 44(5): , [JR65] [KE95] [KW70] [MAH09] J.Nelder and R.Mead. A simplex method for function minimizarion. Computer Journal, 7: , J. Kennedy and R. Eberhart. Particle swarm optimization. IEEE International Conference on Neural Networks  Conference Proceedings, 4: , G.S. Kimeldorf and G. Wahba. A correspondence between bayesian estimation on stochastic processes and smoothing splines. The Annals of Mathematical Statistics, 41(2): , F. Martínez, F. Aguila, and R. Hurtubia. The constrained multinomial logit: A semicompensatory choice model. Transportation Research Part B: Methodological, 43(3): , [Man77] C.F. Manski. The structure of random utility models. Theory and Decision, 8(3): , [McK73] K.I.M McKinnon. Convergence of the nelder mead simplex method to a nonstationary point. SIAM J Optimization, 4: , [NEMa] Nemo model. en.htm. [NEMb] Nemo model information. download/ive_abstract_nemo.pdf. [NEX] Nexta simulator. 91
116 REFERENCES [NH04] A. Nash and D. Huerlimann. Railroad simulation using opentrack. Computers in Railways IX, pages 45 54, [POS] Positren simulator. info.htm. [Pow73] Michael J. D Powell. On search directions for minimization algorithms. Mathematical Programming, 9: , [RAI] Railsys information. railsysproductfamily/railsysenterprise. html. [RAN] Railsys and nemo model. de/en/products/railsysproductfamily/ railsysenterprise/netevaluationwithnemo. html. [SBA87] [SHS01] [Sta97] J. Swait and M. BenAkiva. Incorporating random constraints in discrete models of choice set generation. Transportation Research Part B, 21(2):91 102, Bernhard Schölkopf, Ralf Herbrich, and Alex J. Smola. A generalized representer theorem. In In Proceedings of the Annual Conference on Computational Learning Theory, pages , Jennifer Stapleton. DSDM Dynamic Systems Development Method: the method in practice. Cambridge University Press, [Swa01] J. Swait. A noncompensatory choice model incorporating attribute cutoffs. Transportation Research Part B: Methodological, 35(10): , [TA97] A.N. Tikhonov and V. Y. Arsenin. Solutions of Illposed Problems. Wiley, New York, [VIS] Ptv vissim, ptv group. sections/transportationengineering. 1 1 The previous webs were last accessed in January,
117 APPENDIX 93
118
119 APPENDIX A COSTS ESTIMATION A.1 Development costs The costs related to the development of dhave tool are explained. One of the cost is related to the time spent of a worker during one year and a half, 15 hours a week. It has been cover by a grant of 2700C that comes from Education Ministry. Others costs considered are the MATLAB and GAMS licences. Their costs are 2000 C and 472 C respectively, and could be consulted at the following urls: (Date of access: January, 2014) Total = C 95
120 APPENDIX A. COSTS ESTIMATION A.2 Implantation costs The costs related to the implantation of dhave tool are explained. The main costs considered are the MATLAB and GAMS licences. Moreover, it is necessary to buy a high performance computer according to the needs of this FDP. The features and price of the computer used in this FDP are shown in Figure A.1. Figure A.1: PC Server invoice Total = C 96
121 APPENDIX B INSTALLATION MANUAL To execute the application it is necessary to have MATLAB Compiler Runtime installed from the MCRInstaller file. Firstly, the user is asked for the language as Figure B.1 shows. Figure B.1: Instalation window 1 After that, the user has to press the button install of the Installshield Wizard window as FigureB.2 shows. 97
122 APPENDIX B. INSTALLATION MANUAL Figure B.2: Instalation window 2 Then the main installation window appears as Figures B.3 and B.4 shows. Figure B.3: Installation window 3 98
123 APPENDIX B. INSTALLATION MANUAL Figure B.4: Installation window 4 In this moment the user has to fill in the gaps his name and the company s name as Figure B.5 shows. Figure B.5: Instalation window 5 99
124 APPENDIX B. INSTALLATION MANUAL Then click next to install to the folder selected or select a different one as Figure B.6 shows. Figure B.6: Instalation window 6 The final step consist on press the Install button as Figure B.7 shows. Figure B.7: Instalation window 7 100
125 APPENDIX B. INSTALLATION MANUAL When the installation is finished the user can see the Figure B.8. Then the user can copy the DHAVE.exe wherever he wants and execute doubleclicking on it as Figure B.9 shows. Figure B.8: Instalation window 8 Figure B.9: Instalation window 9 101
126 APPENDIX B. INSTALLATION MANUAL After that installation the user has to add Gams to windows path going to system properties. See Figure B.10. Figure B.10: Windows path 102
127 APPENDIX C USER MANUAL C.1 Import data from your computer If all the needed data is already stored the user can import it to use it on the tool. The user has to click the import button as Figure C.1 shows, and find the location of the file. Figure C.1: Import the data This file has a.sim.xml extension as Figure C.2 shows. Figure C.2: File format After that, a confirmation message will pop up to inform about the success of the importation as Figure C.3 shows. 103
128 APPENDIX C. USER MANUAL Figure C.3: Data successfully read C.2 Export data The user is allowed to save all the current data. If the data is saved it will be possible to import it later. To save all that current information the user has to click on the save button positioned on the upper left corner of the tool as Figure C.4 shows. Figure C.4: Save the data C.3 Including stations If the user is going to add data manually, is to add a new station the first step. In order to add a station the user has to click on the stations button placed on the left menu, as Figure C.5 shows. Figure C.5: Left menu 104
129 APPENDIX C. USER MANUAL After that, Figure C.6 window is visible. Figure C.6: Stations Window Press New Station button in window Figure C.6 to add the station, another window will appear as Figure C.7 shows. The user has to be careful filling the gaps specially about the cordinates that has to be in the following format: ( , ) representing latitude and longitude respectively. To finish press Insert. 105
130 APPENDIX C. USER MANUAL Figure C.7: Adding stations After that it is possible to see any feature of any station. The user has only to double click the name of the station and another information window will be opened (Figure C.8). Figure C.8: Station Information 106
131 APPENDIX C. USER MANUAL C.4 Deleting a station Click on the station name wanted to be deleted then click on Delete station button. A warning window will pop up on the screen asking for the absolute convinction about the action (Figure C.9). Figure C.9: Station Information C.5 Including demand and distances data The user must add one or more stations in order to enable the button related to demands and distances between stations. Several data have to be selected like origin station, destination station, distance between these stations and demand. This last issue contains the number of passengers that go into the train at the origin station and leave it at the second one (Figure C.10). 107
132 APPENDIX C. USER MANUAL When all the data is complete, push Insert button. The results will be shown just below and the user could change the view to Distance view or Demand view placed at the right of the table. Figure C.10: Distances and Demands window It is important to know that it is impossible to have distance between a station and itself. If the user try to do it, a warning window will appear (Figure C.11). Figure C.11: Warning Distances and Demands Window 108
133 APPENDIX C. USER MANUAL C.6 Including trains This part of the tool is related to the train types the railway network is going to implement. The user has to fill all the gaps with the correct information of each new train. After that, press Insert button and the current type will be added to the list below placed (Figure C.12). Figure C.12: Including trains Then it is possible to see all the data of a specific train double clicking on its name (Figure C.13). 109
134 APPENDIX C. USER MANUAL Figure C.13: Trains Information C.7 Deleting trains Select the train name on the list below placed, then click on Delete Train Type button. A question window will appear asking for the action. Press Yes if you want to delete it (Figure C.14). 110
135 APPENDIX C. USER MANUAL Figure C.14: Deleting Train C.8 Including services To include new services the user has to click on Services button (Figure C.15). Figure C.15: Left menu Each service is composed by several stations, for this reason the user has to add each station (pressing Add button) correctly ordered to the right list until the service is finished. It is important the name of the service. After that click on the Insert complete services button as Figure C.16 shows and the service will be added at the end of the list placed below. 111
136 APPENDIX C. USER MANUAL Figure C.16: Including services Remember, if there is a station at which the train stops, the user has to introduce the stop time in minutes otherwise a warning window will be displayed (Figure C.17). Figure C.17: Warning services window 112
137 APPENDIX C. USER MANUAL The user is free to delete a incorrect station previously added to the list (pressing Delete button) before inserting the complete service. When the service is in the below list, it is possible to see all its features double clicking on its name as Figure C.18 shows. Figure C.18: Services information window C.9 Deleting services Click on the service name at the table below placed. Then press Delete selected service button and a question window will be displayed. Press Yes if you want to confirm the action (Figure C.19). 113
138 APPENDIX C. USER MANUAL Figure C.19: Deleting selected Service C.10 Demand behaviour These are the properties needed for the perfect system operation (Figure C.20). On one hand the first panel comprises the information of each property needed. If the user need to add another demand data he has to fill the first panel gaps and click on Insert button. One more row will be placed at the end of the below list. On the other hand there is the betas panel. This two betas are calibration variables needed for the correct model behaviour. If it is needed to change the betas values the user has to write the new value in the correct gap and click on Insert Betas button, the value would be changed immediately. The user can import and export this data using the left superior buttons. The format of the files are.opt.xml. 114
139 APPENDIX C. USER MANUAL Figure C.20: Demand behaviour window C.11 Deleting demand behaviour information To delete the data related to of the Demand behaviour window the user has to select the corresponding row and click on Delete Selected Row button (Figure C.20). C.12 Operational railway net This is the final part of the simulation data. Pressing the Operational railway net button, the user can introduce all railway routes (Figure C.21). 115
140 APPENDIX C. USER MANUAL Figure C.21: Operational railway net window Each route is composed by several services and one train type. The user has to choose one train from the Select Train Type list and has to add all the services it covers pressing Add button. Each service has a Departure Time or Initial Time that has to be introduced by the user and it is the hour in which the service is started (the departure time at the first station of that service) (Figure C.22). Figure C.22: Adding services to a route 116
141 APPENDIX C. USER MANUAL Next, click on the Insert complete route button as Figure C.23 shows and the route will be added at the list placed below. That list shows the first service of each route and its initial time. If the user wants to see all the services of a route, he should click on the route (at list below placed) and click on See all services button, and another window will be displayed as Figure C.25 shows. Figure C.23: Adding a complete route Figure C.24: Initial time warning window Be careful introducing initial time, if its format is wrong a warning window will appear (Figure C.24). 117
142 APPENDIX C. USER MANUAL Figure C.25: See services information 118
143 APPENDIX C. USER MANUAL C.13 Deleting routes Click on the route name at the table. Then press Delete selected route button and a question window will be displayed. Press Yes if you want to confirm the action (Figure C.26). Figure C.26: Deleting selected route 119
144 APPENDIX C. USER MANUAL C.14 Including demand prices If the user wants to add the demand prices, he has to choose the train type, the origin and destination stations and set the price. After that,insert button should be clicked and this data will be added at the end of the table below placed (Figure C.27). Figure C.27: Including demand prices window 120
145 APPENDIX C. USER MANUAL C.15 Simulation mode There is a previous step the user needs to do in order to have all the information the simulation mode needs. There are two possibilities: On one hand all simulation data should be loaded, for this reason the instructions of Section C.1 (Import data from your computer) should be done. On the other hand, all the information required should be introduced by hand by the user. In this case, the user has to read Sections C.3 (Including stations), C.5 (Including demand and distances data), C.6 (Including trains), C.8 (Including services) and C.12 (Operational railway net) in order. After that the user would be able to click on Simulation button, top right placed (Figure C.28). Figure C.28: Simulation and optimization top buttons When the simulation is done an information window is displayed (Figure C.29). Figure C.29: Simulation completed information window 121
146 APPENDIX C. USER MANUAL Click OK and it is possible to see the different views now. Table view Figure C.30. Graphic view Figure C.31. Map view Figure C.32. Figure C.30: Table View 122
147 APPENDIX C. USER MANUAL Figure C.31: Graphic View Figure C.32: Map View 123
148 APPENDIX C. USER MANUAL C.16 Simulation with demand mode There are previous steps the user needs to do in order to have all the information the simulation with demand mode needs to be loaded. First of all it is necessary one of the steps explained at Section C.15. Moreover, it is necessary to load the demand behaviour data clicking on Demand behaviour button. Figure C.20 shows that window, all the user has to do is click on top left folder button to load the data previously saved or insert the data by hand. Another information has to be inserted, click button Prices to complete the prices data of the demands. Follow Section C.14 steps. Press Benefits button (see Figure C.28) and a General Profit will be shown at bottom left part of the main window (Figure C.33). Figure C.33: Simulation with demand table view After that, a new view of the table is shown. It is possible to see all the demands if the user selects the name of a service from the table, then click on See Demands button bottom right placed (Figure C.33) and a new window will be displayed. This last window has the individual benefits information of all the services of the previous selected route. 124
149 APPENDIX C. USER MANUAL C.17 Optimization mode There are previous steps the user has to do in order to have all the information the optimization mode needs. These steps are explained at Section C.16. After that, press Optimization (Figure C.28) button and an option window will be displayed letting the user choose an algorithm to solve the problem (Figure C.34). Figure C.34: Select an algorithm window If NelderMead is selected Figure C.35 appears. The user has to choose the number of maximum evaluations of the algorithm. If PSO is selected Figure C.36 appears. The user has to choose the number of maximum evaluations of the algorithm and the number of particles. If PSO+NelderMead is selected Figure C.37 appears. The user has to choose the number of maximum evaluations of the algorithm, the number of particles, the number of improvements until NM is launched and the percent of function evaluations the NM algorithm will do. 125
150 APPENDIX C. USER MANUAL Figure C.35: Select NelderMead properties Figure C.36: Select PSO properties If PSO parallel is selected Figure C.36 appears. The user has to choose the number of maximum evaluations of the algorithm and the number of particles. Then Figure C.38 window appears to let the user choose the number of cores it is going to use. If PSO+NM parallel is selected C.37 appears. The user has to choose the number of maximum evaluations of the algorithm, the number of particles, the number of improvements until NM is launched and the percent of function evaluations the NM algorithm will do. Then Figure C.38 window appears to let the user choose the number of cores it is going to use. 126
151 APPENDIX C. USER MANUAL Figure C.37: Select PSO + NM properties Figure C.38: Select PSO + NM properties 127
UNIVERSIDAD DE CASTILLALA MANCHA ESCUELA SUPERIOR DE INFORMÁTICA GRADO EN INGENIERÍA EN INFORMÁTICA TRABAJO FINAL DE GRADO
UNIVERSIDAD DE CASTILLALA MANCHA ESCUELA SUPERIOR DE INFORMÁTICA GRADO EN INGENIERÍA EN INFORMÁTICA TRABAJO FINAL DE GRADO An Application of Peer Group Analysis in Online Banking Fraud detection Javier
More informationPh.D. THESIS. Content Authentication and Access Control in Pure PeertoPeer Networks
UNIVERSIDAD CARLOS III DE MADRID Ph.D. THESIS Content Authentication and Access Control in Pure PeertoPeer Networks Author: Esther Palomar González Supervisors: Dr. D. Juan M. Estévez Tapiador Dr. D.
More informationUniversidad Politécnica de Madrid
Universidad Politécnica de Madrid Escuela Técnica Superior de Ingenieros de Telecomunicación Semantic Technologies in Idea Management Systems: A Model for Interoperability, Linking and Filtering Tesis
More informationA crosslayer mechanism for QoS improvements in VoIP over multirate WLAN networks
This thesis is entitled A crosslayer mechanism for QoS improvements in VoIP over multirate WLAN networks written by Anna Sfairopoulou directed by Dr. Carlos Macian and Dr. Boris Bellalta and supervised
More informationInvestment portfolio optimization with predictive control. Optimización de portafolios de inversión aplicando control predictivo
Investment portfolio optimization with predictive control Optimización de portafolios de inversión aplicando control predictivo Pablo Andrés Deossa Molina Universidad Nacional de Colombia Facultad de Minas,
More informationAUTOMATING THE NEGOTIATION
AUTOMATING THE NEGOTIATION OF AGREEMENTS A FRAMEWORK FOR DEVELOPING AUTOMATED NEGOTIATION SYSTEMS MANUEL RESINAS UNIVERSIDAD DE SEVILLA DOCTORAL DISSERTATION ADVISED BY DR. RAFAEL CORCHUELO JUNE, 2008
More informationModel for WCET Prediction, Scheduling and Task Allocation for Emergent Agentbehaviours in Realtime Scenarios
PhD. Dissertation Model for WCET Prediction, Scheduling and Task Allocation for Emergent Agentbehaviours in Realtime Scenarios Department of Computer Science and Automation Faculty of Science University
More informationSemiautomatic Reverse Engineering Tool on Oracle Forms Information Systems. Oscar Javier Chaparro Arenas Code: 02300403
Semiautomatic Reverse Engineering Tool on Oracle Forms Information Systems Oscar Javier Chaparro Arenas Code: 02300403 Universidad Nacional de Colombia Facultad de Ingeniería Departamento de Ingeniería
More informationtrang thesis 2014/7/8 16:45 page i #1
trang thesis 2014/7/8 16:45 page i #1 trang thesis 2014/7/8 16:45 page ii #2 A Selforganizing Management Platform for Wireless Sensor Networks Trang Cao Minh PhD Thesis UPF / July 2014 SUPERVISOR Dr.
More informationA Collaborative Supply Chain Management System for a Maritime Port Logistics Chain
A Collaborative Supply Chain Management System for a Maritime Port Logistics Chain L.M. Ascencio 1, R.G. GonzálezRamírez* 2, L.A. Bearzotti 3, N.R. Smith 4 and J.F. CamachoVallejo 5 1 Escuela Universitaria
More informationAgile Methodologies and Tools for implementing and testing XAgent Based Macroeconomic models
Ph.D. in Electronic and Computer Engineering Dept. of Electrical and Electronic Engineering University of Cagliari Agile Methodologies and Tools for implementing and testing XAgent Based Macroeconomic
More informationSOFT COMPUTING APPROACHES TO UNCERTAINTY PROPAGATION IN ENVIRONMENTAL RISK MANAGEMENT
SOFT COMPUTING APPROACHES TO UNCERTAINTY PROPAGATION IN ENVIRONMENTAL RISK MANAGEMENT Thesis submitted in accordance with the requirements of the Department of Chemical Engineering University of Rovira
More informationDealing with Uncertainty in Operational Transport Planning
Dealing with Uncertainty in Operational Transport Planning Jonne Zutt, Arjan van Gemund, Mathijs de Weerdt, and Cees Witteveen Abstract An important problem in transportation is how to ensure efficient
More informationMASTER THESIS. TITLE: Design and operating plan for a communications infrastructure able to offer ISP and Datacenter services.
MASTER THESIS TITLE: Design and operating plan for a communications infrastructure able to offer ISP and Datacenter services. MASTER DEGREE: Master in Science in Telecommunication Engineering & Management
More informationKEY CONTRIBUTIONS OF OWN RISK SOLVENCY ASSESSMENT (ORSA) TO THE IMPROVEMENT OF THE ERM OF INSURANCE COMPANIES: A PRACTICAL AND INTERNATIONAL VISION
Anales del Instituto de Actuarios Españoles, 3ª época, 19, 2013/130 KEY CONTRIBUTIONS OF OWN RISK SOLVENCY ASSESSMENT (ORSA) TO THE IMPROVEMENT OF THE ERM OF INSURANCE COMPANIES: A PRACTICAL AND INTERNATIONAL
More informationA Comparison between Agile and Traditional. Software Development Methodologies
A Comparison between Agile and Traditional Software Development Methodologies M. A. Awad This report is submitted as partial fulfilment of the requirements for the Honours Programme of the School of Computer
More informationA Googlelike Model of Road Network Dynamics and its Application to Regulation and Control
A Googlelike Model of Road Network Dynamics and its Application to Regulation and Control Emanuele Crisostomi, Steve Kirkland, Robert Shorten August, 2010 Abstract Inspired by the ability of Markov chains
More informationADVERTIMENT ADVERTENCIA WARNING
ADVERTIMENT. La consulta d aquesta tesi queda condicionada a l acceptació de les següents condicions d'ús: La difusió d aquesta tesi per mitjà del servei TDX (www.tesisenxarxa.net) ha estat autoritzada
More informationAdaptive fragment designs to reduce the latency of web caching in content aggregation systems
Adaptive fragment designs to reduce the latency of web caching in content aggregation systems A dissertation presented as partial fulfilment of the requirements for the degree of Ph.D. in the subject of
More informationProactive Measurement Techniques For Network Monitoring In Heterogeneous Environments
UNIVERSIDAD AUTÓNOMA DE MADRID ESCUELA POLITÉCNICA SUPERIOR Ph.D. Thesis Proactive Measurement Techniques For Network Monitoring In Heterogeneous Environments Author: Javier Ramos de Santiago Supervisor:
More informationIEEE/ACM TRANSACTIONS ON NETWORKING 1
IEEE/ACM TRANSACTIONS ON NETWORKING 1 SelfChord: A BioInspired P2P Framework for SelfOrganizing Distributed Systems Agostino Forestiero, Associate Member, IEEE, Emilio Leonardi, Senior Member, IEEE,
More informationIncorporating Reliability Performance Measures in Operations and Planning Modeling Tools
SHRP 2 Reliability Project L04 Incorporating Reliability Performance Measures in Operations and Planning Modeling Tools PREPUBLICATION DRAFT NOT EDITED 2014 National Academy of Sciences. All rights reserved.
More informationAn adaptive admission control and load balancing algorithm for a QoSaware Web system
An adaptive admission control and load balancing algorithm for a QoSaware Web system A dissertation presented by Katja Gilly de la Sierra  LLamazares to The Department of Ciències Matemàtiques i Informàtica
More informationLearning to Represent Handwritten Shapes and Words for Matching and Recognition
Learning to Represent Handwritten Shapes and Words for Matching and Recognition A dissertation submitted by Jon Almazán at Universitat Autònoma de Barcelona to fulfil the degree of Doctor of Philosophy.
More informationMASTER THESIS. TITLE: Infrastructure as a Service (IaaS): Application case for TrustedX
MASTER THESIS TITLE: Infrastructure as a Service (IaaS): Application case for TrustedX MASTER DEGREE: Master in Science in Telecommunication Engineering & Management AUTHOR: Alberto Guirao Villalonga DIRECTOR:
More informationFood traceability using RFID and Wireless Sensor Networks in an Aquaculture Enterprise.
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA DE TELECOMUNICACIÓN UNIVERSIDAD POLITÉCNICA DE CARTAGENA Trabajo Fin de Master Food traceability using RFID and Wireless Sensor Networks in an Aquaculture Enterprise.
More informationIMPLEMENTATION COSTS OF A SMART GRID INFRASTRUCTURE IN FUTURE ELECTRICITY NETWORKS
IMPLEMENTATION COSTS OF A SMART GRID INFRASTRUCTURE IN FUTURE ELECTRICITY NETWORKS Author: María José Quevedo Silveira Director: Pablo Frías Marín Madrid June 2011 Agradecimientos A mi padre, que desde
More informationInternational Competitiveness in Services in Some European Countries: Basic Facts and a Preliminary Attempt of Interpretation
International Competitiveness in Services in Some European Countries: Basic Facts and a Preliminary Attempt of Interpretation Carlos Díaz de la Guardia, José Molero, Patricia Valadez WP 01/05 1 Abstract
More informationStakeholder Relationship Management for Software Projects
Stakeholder Relationship Management for Software Projects BY FRANCESCO MARCONI B.S., Politecnico di Milano, Milan, Italy, 2010 M.S., Politecnico di Milano, Milan, Italy, 2013 THESIS Submitted as partial
More informationA STRESSAWARENESS APPROACH TO SAFER DECISION MAKING IN THE TRADING PROCESS INTEGRATING BIOMETRIC SENSOR TECHNOLOGY
UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERÍA TELEMÁTICA TESIS DOCTORAL A STRESSAWARENESS APPROACH TO SAFER DECISION MAKING IN THE TRADING PROCESS INTEGRATING BIOMETRIC SENSOR TECHNOLOGY
More information