We were first attracted to Bombardier's problem due to sheer complexity in modelling their challenge. There are multiple stakeholders, scenarios and ad-hoc changes that disrupt networks and change the scheduling/timetabling of trains onto certain train diagrams and their current solution is labour-intensive, unscalable and very annoying. Essentially, Bombardier's clients (train operators) get back with them with a long term and short term schedule (which are both subject to change up to a weeks notice in advance) on their train diagrams. Bombardier has a responsibility to service and maintain its fleet of trains, and just handling the matching of train units to match both the train diagrams and maintenance schedule takes up about 6h of manhours a day.
What it does
Our program takes the maintenance schedule excel spreadsheet and the train diagrams (provided by TOCs) as inputs, and exposes a function to call to output the solutions in traversing the diagram space provided. This automates the entire process of managing stakeholders and traversing the solution space of available routes provided by the TOCs. The rolling stock center manager can then easily allocate train units to different routes and also account for any sudden unforeseen changes in the system.
How we built it
We built a bespoke algorithm to compute the available solution spaces provided by the train operator's diagrams. We then automated the excel-spreadsheet filling process and created an intuitive GUI over Unity for the train manager to better visualize the system. Everything is written in python and C#.
Challenges we ran into
Understanding the huge complexity of the problem faced by Bombardier was a big challenge. We spent the entire first night, and the next morning, quantifying their problem and discretising it into a solveable math problem.
Accomplishments that we're proud of
The automation of the generation of the spreadsheet already automates more than half of the work they do. Furthermore, the algorithm proposed is fully functional and can be implemented to easily and efficiently solve for solution spaces traversing the train operator diagrams.
What we learned
The rolling stock industry has archaic ways of doing things that are not scalable. We learnt that a high level of automation can be implemented in their current workflow, given enough time to model the complexity of the challenges they face. It is a unique challenge specific to the rail industry - having to account for multiple stakeholders, different (changing and time-dependent) routes, ad-hoc disruptions and failures, etc. Scheduling / timetabling for the rail industry is hence a really interesting challenge to tackle.
What's next for to be confirmed
There is a potential to work alongside Bombardier to implement a POC. The solution is highly scalable across rolling stock companies which have a similar workflow. Given the capacity to understand their work environment and the data they use, there is a bigger potential to scale this to an enterprise-grade solution.