Automated Reasoning for Planning Railway Infrastructure
Total Page:16
File Type:pdf, Size:1020Kb
Automated Reasoning for Planning Railway Infrastructure Doctoral Dissertation by Bjørnar Luteberget Submitted to the Faculty of Mathematics and Natural Sciences at the University of Oslo for the degree Philosophiae Doctor in Computer Science Date of submission: 2019-05-28 Date of public defense: 2019-10-18 Reliable Systems Department of Informatics University of Oslo Norway Oslo, May 2019 Abstract Construction of railways is a challenging and expensive task. Comprehensive plan- ning is required to ensure that the finished system has a high transportation capac- ity while remaining safe, reliable and maintainable. Computer science has a long history in the domain of railway analysis. Firstly, creating time tables that make efficient use of a large network of railway lines is assisted by numerical optimiza- tion and stochastic simulations. Secondly, the signalling and control systems that ensure that trains do not collide or derail, are modelled mathematically and proven correct using formal methods and automated reasoning. However, both of these important tasks rely on a model of the infrastructure describing tracks, platforms, signals, sensors, and more. The infrastructure needs to be correctly designed to allow a control system to ensure safety without creating bottlenecks in the network. The design process for infrastructure is characterized by tedious, repetitive verification of elaborate specifications, and complex inter- play with other disciplines, such as tracks, power lines, and telecommunications. Because the work is so complicated in this sense, essential questions about capacity and safety can go unanswered until it is too late to change the construction plans. To help increase quality and efficiency, we have developed several components that contribute to the overall goal of bringing automated analysis tools to railway infrastructure engineering work. The main contributions are: 1. A system for static analysis of railway infrastructure based on Datalog logic. 2. A language of local capacity specifications, which can be used to relate the network-scale requirements to the construction of railway stations. 3. A solver which verifies local capacity specifications on proposed railway infras- tructure based on Boolean satisfiability solvers and discrete event simulation. 4. An algorithm for synthesis and optimization of signal and sensor placements from a model of tracks and platforms, based on the verification for local capacity. 5. A controlled natural language for specifications so that engineers can access and maintain formalized rules and regulations in an understandable format. 6. A visualization algorithm for railway infrastructure, allowing automatic trans- fer of data from geographic or purely topological information to schematic views. 7. Integration of these tools with engineering software through the railML stan- dard format and though graphical user interfaces built into drafting software. The tools and techniques have been tested and evaluated using real-world rail- way infrastructure from the Norwegian railway network and from ongoing con- struction projects. iii Contents Abstract iii Preface vii Publications .................................. vii Acknowledgements .............................. ix 1 Railway construction planning 1 1.1 Research goals .............................. 1 1.2 Introduction to railway engineering .................. 3 1.3 Software tool support for railway infrastructure design . 9 1.4 Automated reasoning and formal methods . 11 1.5 Research contributions ......................... 14 2 Static analysis in infrastructure verification 17 2.1 Verification artifacts ........................... 18 2.2 Logic programming and knowledge-base systems . 20 2.3 Tool implementation .......................... 33 2.4 Incremental verification ......................... 35 2.5 Conclusions ............................... 40 3 Dynamic analysis using local capacity specifications 43 3.1 Capacity in railway construction projects . 43 3.2 Dynamic behaviour ........................... 47 3.3 Performance requirement properties . 52 3.4 Tool chain and solver architecture ................... 54 3.5 Timing evaluation using simulation . 66 3.6 Case studies and performance ..................... 72 3.7 Related work ............................... 74 3.8 Conclusions and future work ...................... 75 4 Optimization and synthesis of signalling component layouts 77 4.1 Specification-based design synthesis . 77 4.2 Design principles for local railway capacity . 78 4.3 Algorithm for synthesis and optimization . 82 4.4 Local optimizations and interactive improvement . 88 4.5 Related work ............................... 89 4.6 Conclusions and future work ...................... 89 v vi 5 Controlled natural language specifications 91 5.1 Participatory verification ........................ 92 5.2 Design methodology for a verification front-end language . 97 5.3 RailCNL: a front-end language for railway verification . 105 5.4 Evaluation of RailCNL coverage of Norwegian regulations . 119 5.5 Tool integration .............................120 5.6 Conclusions ...............................131 5.7 Excerpts from RailCNL Grammar as written in GF . 134 5.8 Example content from regulations . 135 5.9 Overview of Norwegian regulation contents . 138 6 Drawing schematic plans 141 6.1 Problem definition and formalization . 143 6.2 Model definitions and drawing algorithms . 147 6.3 Tool usage ................................158 6.4 Conclusions and Future Work . 159 7 Integration with industrial end-user software 161 7.1 Semantic CAD ..............................162 7.2 Railway analysis tasks as CAD plug-in programs . 165 7.3 Other external analysis tools . 169 8 Conclusions 171 8.1 Generality, maintenance, and user-friendliness . 171 8.2 Design automation, quality, and standards compliance for tools . 172 8.3 Railway engineering in the future . 174 A Junction manual 177 A.1 Overview .................................178 A.2 Getting started ..............................181 A.3 Infrastructure ..............................183 A.4 Dispatch .................................186 A.5 Planning .................................189 A.6 Tool windows ..............................191 Bibliography 199 Preface This Ph.D. thesis is a result of the RailCons¹ project, a collaboration between Rail- complete AS and the University of Oslo. The project has been funded by Railcom- plete AS and the Research Council of Norway under the Industrial Ph.D. scheme. The project originated in the railway signalling engineering company Anacon AS, where engineers were dissatisfied with the state of tool support for performing design and engineering of railway signalling and interlocking systems. The com- pany Railcomplete AS was founded as an offshoot from Anacon AS with the goal of integrating domain-specific analysis tools for signalling and other railway dis- ciplines with cross-discipline drafting tools, so that engineering projects could be executed more efficiently and yield higher quality. Railcomplete AS also launched the RailCons research project to bring in research expertise on mathematical mod- elling and automated verification from the Reliable Systems research group atthe Department of Informatics at the University of Oslo. In this project, we have investigated the use of formal methods from computer science to handle the variety and complexity of specifications and regulations that a railway engineering project must comply with. We have used logic-based methods and automated solvers and integrated them with drafting tools. This thesis canbe considered the final report on the results of the RailCons project For me personally, the Ph.D. period has been an exciting exploration of state- of-the-art problem solving techniques from the field of computer science, made even more interesting by the fact that we have been solving real-world problems that originated in engineering practice. I am grateful for having had the chance to collaborate with very capable researchers, programmers, and engineers, and hope that our joint work will make an impact on how railway engineering is practised in the future. Publications The contents of this thesis is based on research articles that are either published in international, peer-reviewed computer science conference proceedings and jour- nals, or are under review in such venues. The relevant articles are: • Static analysis of railway infrastructure models and interlocking specifications (Chapters 2 and 7): – Bjørnar Luteberget, Christian Johansen, and Martin Steffen: Rule-based Con- sistency Checking of Railway Infrastructure Designs. International Conference ¹RailCons web page: https://www.mn.uio.no/ifi/english/research/projects/railcons/ vii viii on Integrated Formal Methods (iFM 2016), [109]. Received award for best pa- per of the conference. – Bjørnar Luteberget, Christian Johansen, Claus Feyling, and Martin Steffen: Rule-Based Incremental Verification Tools Applied to Railway Designs and Reg- ulations. International Symposium on Formal Methods (FM 2016), [108]. – Bjørnar Luteberget and Christian Johansen: Efficient Verification of Railway Infrastructure Designs Against Standard Regulations. Formal Methods in Sys- tem Design, [107]. • Controlled natural language specifications for railway verification (Chapter 5): – Bjørnar Luteberget, John J. Camilleri, Christian Johansen, and Gerardo Schnei- der: Participatory Verification of Railway Infrastructure by Representing Regu- lations in RailCNL. International