In our solution approach for the overall problem, we first obtain an optimal solution for the Timetabling / Engine Scheduling Problem. When solving the Crew Scheduling Problem, we then exploit the fact that numerous optimal, and near optimal solutions exist for the previous problem.
We consider all these solutions that can be obtained from the optimal engine schedule by shifting the demands in time, while keeping the order of demands in the engine duties intact.
In particular, in the crew scheduling stage it is allowed to re-time the service of demands if the additional cost is outweighed by the crew savings. This information is implemented in a mathematical model for the Crew Scheduling Problem. The model is solved using a column generation scheme.
We perform computational experiments based on a case at a freight railway operator, DB Schenker Rail Scandinavia, and show that significant cost savings can be achieved.