Welcome to the page about the mixed-traffic railway capacity simulator tool: COST (Cost Optimization and Simulation Tool). Most of the development of this tool was financially supported by Research Design and Standards Organisation (RDSO), Lucknow, the research arm of Indian Railways. This tool helps in an accurate estimation of the throughput and capacity of a rail-section, and thus helps in an analysis of the congestion in the network in the context of freight trains. A detailed comparison can be made on the timetable generated before and after key scenarios: like addition of a loop line or adding/removing temporary speed restrictions (TSR).
1) Simulator exe/jar files
Simulation: Depending on the local PC and the available/required RAM memory, there are multiple files kept available for download. The jar-file within options 2 and 3 below is exactly the same as in option 1: the jar-file execution is with the PC's default memory size: often too low for executing when the number of trains is large and/or the infrastructure is complex.
double-clicking the simulation-file.jar, or
typing "java -Xss515m -jar simulator-file.jar" on the DOS command prompt.
Procedure to obtain a DOS command prompt is explained below in the section Frequently faced difficulties. Here "515m" stands for 515 Megabytes of memory allocation (often needed for more complex infrastructures). If the PC cannot allocate 515 Megabytes, then use "-Xss128m" instead: this is ample for simpler infrastructures
- Alternatively, a self-extracting Windows simulator128exe-file (for PCs with moderate RAM memory availability) can be executed by double-clicking on this exe file. This exe file has the jar-file and will execute with 128MB of memory.
- For PCs having more RAM memory: please use simulator515exe-file for execution. This exe file has the jar-file of option 1 and executes with 515MB of memory.
The full source-code (in java) is available at the source-code-file. This source code can be edited and executed using, for example, eclipse. This is recommended for java programmers and not for simulator users. The source code can be compiled/executed-directly using: (For linux:)
javac -verbose -g simulator/outputfeatures/MainInterface.java # for compiling
java -Xss515m simulator.outputfeatures.MainInterface # for running (the source code directly)
Some template infrastructure files are available at infrastructure-files.
A calibration tool to obtain the equivalent constant acceleration for an engine whose traction effort usually decreases with increasing speed is available in the acceleration-calibration-xlsx-file and an explanation about the xlsx file is at acceleration-calibration-explanation. This is also elaborated in Appendix A of the User Manual.
2) User manual
The procedure to install java (with version details), and procedure to input rail-section infrastructure and train details is in the user manual. The simulation procedure and the comparison features too are described in the user manual. This document (in pdf-file) is available at: User-manual
For a beginner, it will also help to view/listen to the four spoken tutorials (each is about 10-minute video) on
(It is recommended to use vlc player for viewing these files.)
Click on docs-link for the same video files in ogv format (which plays in vlc, and the files are smaller.)
Better quality tutorials and smaller files are being made available at the google-drive-link
The latest jar file can be downloaded from here: simulator-zip-file. (Please look for the most recent one. The infrastructure/timetable zip file is also available in the same directory.)
Other related documents are kept at the docs-link:
3) Frequently faced difficulties
We are compiling a list of frequently faced difficulties (and suggested solutions). Please send us an email about difficulties not listed here and/or more suggested solutions.
- This is a standard safety feature provided by the anti-virus. Look for "bypass specific exe files" option within your anti-virus.
This is a memory issue while running java: please run from the command prompt:
"java -Xss515m -jar simulator-file.jar" to run with more memory.
In MS-Windows, one can start the command prompt by typing the windows key (usually between the left Ctrl and Alt keys) and typing "cmd" in the "Search programs and files" space. Once the DOS-command-prompt is started, use "cd" to go to the correct directory and then type the above command.
4) Code documentation
The link below points to the code repository and this is useful if some structured inputs need to be developed. The code itself is voluminous, representing many person-years of work.
The code documentation can be found at code-documentation and code-documentation-tgz-file.
5) Code logic overview
The detailed logic that allows for different signaling regimes to be modeled, follows from this, and every train moves at a velocity so that it respects the occupancy information provided by movements of higher priority trains which are already scheduled. We emphasise that this is a capacity planning tool, not an on-line control tool, and so the scenarios that are simulated assume that all train movements are known in advance and the tool computes the section occupancies, throughput and performance measures accordingly. The logic has a lot in common with control in real time, but needs significantly different interfaces and utilities to be able to used for that purpose.
A user-oriented pdf/docx file (together with the logic and the formula) about the simulation is available at simulation-logic-pdf and simulation-logic-doc.
6) Use of the simulator
The simulator provides multiple ways of providing data by the users. It is meant for evaluating capacity enhancement decisions such as
- Introduction of intermediate blocks
- Introduction of automatic signaling
- Re-spacing of signals on a section
- Addition of new loop lines at stations
- Changing the alignment of access to loop lines at stations
- Assessing the impact of faster freight trains
- Assessing timetable changes of scheduled passenger trains
- Assessing the impact of temporary/permanent speed restrictions
As can be seen, almost the entire gamut of railway technology options can be modeled and the impact on throughput/capacity/congestion can be assessed on key sections of railways. The scenarios of importance need to be identified and modeled through the data entry mechanisms and then compared systematically. Each such effort requires very careful data validation and experimentation and it is not realistic to provide direct interface options for all such possibilities. There are simply too many options that users can wish to compare scenarios across, and this needs to be done outside the simulator tool itself. The tool provides the capability to impose the given traffic on a given infrastructure and tabulate performance statistics which can be used by the user.
Contact persons:
Prof. Narayan Rangaraj, Industrial Engineering and Operations Research (IEOR) IIT Bombay, Powai, Mumbai 400 076 Email: narayan.rangaraj[AT]iitb.ac.in
and/or
Prof. Madhu N. Belur Department of Electrical Engineering, IIT Bombay, Powai, Mumbai 400 076 Email: belur[AT]iitb.ac.in
Last modified: 2nd July 2024