Download PDF
Case Studies > Accelerating One of the Most Sophisticated Automated Railway Scheduling Systems in Europe

Accelerating One of the Most Sophisticated Automated Railway Scheduling Systems in Europe

Technology Category
  • Application Infrastructure & Middleware - Data Exchange & Integration
  • Application Infrastructure & Middleware - Middleware, SDKs & Libraries
  • Platform as a Service (PaaS) - Connectivity Platforms
Applicable Industries
  • Transportation
Applicable Functions
  • Business Operation
  • Logistics & Transportation
Use Cases
  • Fleet Management
  • Predictive Maintenance
  • Real-Time Location System (RTLS)
  • Remote Asset Management
Services
  • Software Design & Engineering Services
  • System Integration
The Challenge
The effort for developing a timetable solution for railways is a well-studied science, but still not an easy one. It is not a problem that has been completely solved at the scale to which SBB aspires, despite much research and many discussions with other railways and academics. Making it automated via high-performance computations would make it much more efficient. But as one of the densest railways in the world, SBB had many different route combinations to consider, making their planning effort a very large number-crunching problem. The SBB IT team currently uses their computer systems to incorporate extra trains in their current daily timetable and plans to calculate timetables for an entire day algorithmically. This is a huge step forward, as the construction of a valid timetable was a time-consuming effort, even for seasoned timetable planners. Additionally, the manual construction of the timetable is an error-prone task that can lead to plans which often do not work out in practice, causing delays and additional work for the train operation teams. Now that the construction of the timetable can be automated, the planners can concentrate on evaluating different timetable options produced by the computer. A key to optimize this process is fast access to the computed timetable data, so that they can produce the commercially best timetable fast.
About The Customer
The Swiss Federal Railways (SBB) is the national railway company of Switzerland, headquartered in Berne. It operates around 3000 passenger and commercial trains daily, excluding cargo, in an extremely efficient and popular system. SBB was rated first among national European railways in the 2017 European Railway Performance index, which assesses utilization, quality of service, and safety. The IT professionals at SBB are organized as a team of teams that work together to help plan the operations of the railway. Each team has its own Hazelcast deployment for its own distinct needs, including use as a distributed cache to enable extremely fast access and processing of data that originates in a separate data store. One major responsibility is contributing to the workflow that develops the updated train schedules, and teams have specific outputs for their stage of the workflow which they hand to the next team. Tasks include calculating travel time, identifying routing alternatives, and creating the final schedule. The result is a conflict-free train schedule for all of Switzerland that can be implemented by the railway operations team.
The Solution
SBB uses the Hazelcast Platform as a high-performance layer to accelerate data accesses in their planning system. It runs in a private-cloud deployment based on OpenShift, leveraging a microservices architecture that runs on the Spring Boot platform, with Rabbit MQ as the communications layer between microservices. They also have various data storage technologies, including on-premises S3 buckets, and they can quickly populate Hazelcast with that data for use by other parts of the system. Since Hazelcast stores the data in memory, accesses are extremely fast. The decision to use Hazelcast was an easy one, as SBB had previously used another in-memory technology that proved to be too complicated and didn’t offer the ability to scale. The company has since standardized on Hazelcast. The final output is essentially a dashboard that shows trains and stations mapped against temporal data. Planners can drill down into specifics in a very comprehensive visual representation of the timetable.
Operational Impact
  • Hazelcast dramatically sped up the data access, which increased overall system performance. Hazelcast optimizations like near-cache, in which certain data can be copied to local nodes to further improve speed by removing unnecessary network hops, helped to achieve faster performance.
  • The generated dashboard lets planners see various situations such as the cause of a blockage of a train waiting at a given station. They get much faster feedback, so they can see what is happening immediately, instead of having to wait several minutes for an update. As a result of all their work, they feel like their effort for automated timetables is possibly the most ambitious in all of Europe.
  • There were some lessons learned when incorporating Hazelcast into their infrastructure. Most notably, the cache eviction strategy needed some more attention early on, as they learned they had to get a better understanding of the details to get it right, or else they would get memory-related errors. In some instances they kept adding data to Hazelcast without releasing older data, resulting in unexpected errors. Fortunately, they felt the documentation was good, so they were able to figure out most issues on their own via the documentation. Once they learned how to optimally use Hazelcast, the ongoing effort became easier.
Quantitative Benefit
  • SBB runs about 3000 passenger/commercial trains each day.
  • In the 2017 European Railway Performance index, SBB was rated first among national European railways.

Related Case Studies.

Contact us

Let's talk!

* Required
* Required
* Required
* Invalid email address
By submitting this form, you agree that IoT ONE may contact you with insights and marketing messaging.
No thanks, I don't want to receive any marketing emails from IoT ONE.
Submit

Thank you for your message!
We will contact you soon.