Development of a railway junction simulator for evaluation of control strategies and capacity utilization optimization

This paper focuses on the development of a Python based tool for analysis and simulation of mixed rail traffic at a railway junction. The tool is helpful for evaluating various open-loop and feedback based strategies for an optimum junction utilization. The tool is implemented in Python using graph theory for finding shortest paths between various source-destination pairs. What signifies a railway junction, as opposed to a railway section is the possibility and the need to allow multiple simultaneous movements within the junction area. The tool applies network (edge and node) based approach for designing the line infrastructure of a railway junction. Source and destination are represented as nodes and every path from a source to a destination through a junction consists of a set of permissible combination of edges and nodes. This tool can be used for simulating scheduled passenger trains through all the allowed paths, and then selecting the best path for traversing through the junction. Further, lower priority trains are scheduled without affecting the edge/node occupancies trains of higher priorities. The best freight paths are identified and a more accurate estimate of the time required for freight trains to pass through the junction is obtained using this tool. In this way, one is able to quantify and then optimize the capacity/utilization of railway junction. In a larger scenario, the tool is useful for identifying bottlenecks in a given infrastructure. As examples, a detailed analysis of Allahabad junction and Kanpur junction of Indian Railways is presented using the tool.