A Lagrangian Heuristic Algorithm for a Real-World Train Timetabling Problem