OSRD is a railway toolbox designed for multiple use cases. These tools have in common a reliance on railway infrastructure simulation and results analysis.
This is the multi-page printable view of this section. Click here to print.
About
- 1: Governance
- 2: Use cases
- 3: Open Source
- 4: Open Data
1 - Governance
One of the ambitions of OSRD is to help with timetabling on a European scale.
To reach this goal, OSRD has to take local features into account by consulting and collaborating with railway companies and infrastructure operators.
And by contributing to OSRD, these companies:
- Profit from all the common development efforts
- Can freely build on the common effort to achieve their own goals1
- Participate in the roadmap and technical direction of the project to the extent of their contribution
OSRD is currently developed by:
- A team of full-time developers at SNCF Réseau, financed by SNCF Réseau, the French state and the European Union
- Individual contributors
The OpenRail association
The OpenRail association is an upcoming non-profit committed to organizing cooperative work around railway software tools.
2 - Use cases
OSRD is meant to fulfill a range of use-cases related to railway planning:
Timetabling
Timetabling is about designing a transport service in order to meet the transit needs.
OSRD addresses this by providing:
- a track level railway infrastructure database
- a rolling stock database
- an infrastructure edition tool
- a timetabling tool
- train path allowances, including an allowance distribution which minimizes energy use
Planned features include:
- automated conflict detection1
- line level infrastructure synthesis from track level infrastructure
- interactive timetable diagrams
- a throughput and rolling stock turnover optimizer
Operation studies
Operation studies assess the ability of infrastructures to meet demand, and balance infrastructure capacity with transportation needs. They enable informed public infrastructure investment decisions.
OSRD addresses this need by providing:
- a track level railway infrastructure database
- a rolling stock database
- an infrastructure edition tool
- a timetabling tool
- train path allowances, including an allowance distribution which minimizes energy use
- a signaling simulator
Planned features include:
- automated conflict detection1
- automated timetable robustness assessment using stochastic simulation
- automated throughput analyzer
Infrastructure management
Processing railway infrastructure data is a requirement shared by all of OSRD’s features. Therefore, a dedicated module provides:
- a customizable infrastructure map
- an infrastructure editor
- a search feature
- an import tool2
Short term capacity management
Even though most train paths3 are allocated years before operations, a growing part is allocated shortly before the planned departure time. This change is largely due to growing demand for rail freight.
There is therefore a need for timely (less than 3 minutes) and correct answers, which cannot be achieved without automation.
A correct train path must, among other things:
- take planned infrastructure work into account
- avoid generating conflicts1 with planned trains, including inside stations
- realistically estimate train behavior, and thus when the train reaches or leaves critical locations
Even though some tools can currently provide answers, none currently takes all of the above into account, especially station conflicts.
This tool is undergoing active development, and should be available within the coming years.
A conflicts occurs when the movement of a train interferes with another ↩︎ ↩︎ ↩︎
OSRD uses the RailJSON rail infrastructure file format. It is a free and documented format, designed to be infrastructure manager-agnostic, easy to generate and use. ↩︎
A train paths is a right of way on the rail network, bounded in time and space. Train paths are sold by infrastructure managers to railway companies. ↩︎
3 - Open Source
Open source is a software development practice, where the software’s source code1 :
- usually developed by multiple actors, in an open and transparent way
- free and available for all
- can be modified or used for derivative work by anyone
- can be freely distributed
In practice, open source is both a legal framework for collaborative work, and a set of practices.
OSRD and Open Source
Applied to OSRD, Open Source has multiple avantages :
- the algorithms and know-how developed with the project are free for all
- development cost and results are shared between actors
- it makes interoperability between software systems easier by helping make the landscape more homogeneous and standardized
- helps focus collaboration around common interests
- enables actors to tailor the software to their own interests
- enables researchers to contribute and benefit from the project
- it allows public actors to meet their transparency goals
Using open source to enable industrial collaboration is not a new idea:
- Blender is a modelling, rendering and 3D animation software, which has recently become major point of industry collaboration for this industry
- Linux, a Windows alternative used by Google, Microsoft, Amazon, Apple, most websites, cloud platforms, mobile phones, routers, and more. All these companies rely on and contribute to Linux tremendously
- Android is the common base software for most phones. Phone manufacturers regularly contribute to android
- PostgreSQL, MySQL, SQLite and other open-source databases collectively dominate the database market. Any actor with special needs can improve an existing open-source tool rather than create a new one.
- Both Firefox and Chrome are Open Source
- Wordpress is the CMS which runs 43% of all websites. A flock of companies contribute to Wordpress and make extensions
- Odoo is a powerful modular ERP, which has a community not unlike Wordpress
All these projects share the common property of being essential to a number of companies, without being part of what these companies sell.
It thus makes sense for these companies to collaborate with peers and competitors to build common tools, which makes exchanges easier and helps improve quality of service for all.
Processes
In practice, most open-source software is developed using a forge. Through this forge, developers and users can access the source code, report bugs, plan tasks, and integrate new changes to the code. Anyone can suggest a change, report a bug or plan a task.
All changes go through a peer review, not unlike those used by the scientific community. Reviewers are software developers most familiar with components affected by the change.
Changes are integrated into the code base when everyone involved agrees to. Maintainers are responsible for keeping the project working and consistent. Maintainers are chosen among developers by developers. What motivates whether to integrate a change or not is technical viability: the goal of everyone involved is to maintain high level of service and quality standard.
Source code is a set of text documents which describes how a piece of software works. It’s the result of the work of software developers. ↩︎
4 - Open Data
Open Data is the practice of making data public accessible under a permissive license. It is not the same as open source, which only applies to software.
Open data and open source have a symbiotic relationship : without open data, an open source railway software can only be used by industry insiders. Managing data access is hard, expensive, often not necessary, and reduces the availability of critical data.
Alone, open data already brings a number of key benefits:
- companies can use open data in their products, which also promotes railway services
- researchers can study the data immediately, and can find the data by themselves
Yet, open data used by an open source toolbox open up new prospects:
- companies and researchers can use the open source tools to analyse the data, which greatly reduces the barrier to entry by alleviating the need for custom or paid-for tools
- customers can use the toolbox to improve how they use railway services
If multiple actors have open data exploitable by an open source tool, these datasets can be combined and used to provide and plan for common services.
OSRD and Open Data
- having rolling stock and infrastructure open data enables anyone to simulate trains, study and evaluate the railway network
- having timetable open data enables anyone to study rail network usage