Software Tools for Transit Scheduling and Routing at GIRO Charles Fleurent Director - Optimization algorithms
Objectives Provide an overview of software tools and optimization algorithms offered by GIRO Public transit Postal operations Demonstrate how operational research methods can be used in practice 2
Overview Company background Public transit sector (scheduling) Postal sector (routing) Conclusion 3
GIRO Inc. World-leading developer of software solutions for public transit and postal sectors Founded in 1979 Spin-off from University of Montreal Presence in 24 countries, 4 continents 85% of revenues outside Canada Headquartered in Montreal ~210 employees, steady growth Recent news at www.giro.ca 4
Product families HASTUS Public transportt GeoRoute Postal services GIRO/ACCES Paratransit (assisted transport) 5
Snapshot of major transit customers North/South America New York, Los Angeles, Chicago, Montreal, Santiago Europe Asia Barcelona, Stockholm, Vienna, Geneva, Hamburg, Brussels Singapore, Hong Kong Australia Sydney, Melbourne, Canberra, Brisbane Major transit operators Keolis, Transdev, Veolia, Connexxion *250 sites in more than 21 countries 6
Postal services customers An Post La Poste De Post Deutsche Post AG Posten Norge AS Royal Mail P&T Luxemburg Canada Post Corporation TNT Post CTT Correios 7
Public transit sector Public transit Relatively large transportation network (city, region) Buses, metros, trams, trolleys, light rail, etc. Mandate Provide high-quality service to customers Frequencies Travel time Punctuality Reduce operating costs Material resources (e.g. vehicles) Human resources (e.g. drivers) 8
Planning process Demand estimation (O-D matrix) Lines and frequencies Timetabling Vehicle scheduling Crew scheduling Rostering Operations (dispatching) 9
Planning process (cont d) Early phases Demand estimation Lines and frequencies Timetabling Important political and human factors Line paths Frequencies Resistance to change 10
Timetabling Decision variables Trip start times Objectives Maximize synchronization (passenger transfers) Minimize resources (vehicles, drivers) Mathematical model Optimization problem Min s.t. K T ( x ) K V ( x ) x T ij V integer i I, j J i 11
Example Waiting time (synchronization) B 20 5 0h25 waiting time 7:45 7:30 7:15 7:00 C 730 7:30 7:00 A 5 7:00 7:30 Path Duration A-B 0h20 A-C-B 0h35 12
Changing starting times for C-B B 20 5 0h01 waiting time 7:45 7:30 7:15 7:00 C 736 7:36 7:06 A 5 7:00 7:30 Path Duration A-B 0h20 A-C-B 0h11 13
Example - Impact on vehicle schedule 7:00 7:45 7:30 7:15 7:00 B 7:30 20 7:00 7:15 5 7:30 7:45 5 20 7:00 7:30 C 730 7:30 7:00 Unproductive time and # of vehicles A 7:00 7:30 B C 14 A 5 G G G G G G G G G G G
Timetabling Graphical view in HASTUS 15
Vehicle scheduling Data Trips to cover (timetable) Deadhead matrix (travel times between termini) Minimum layovers Garages ages (depots) with capacities Vehicle types restrictions Objectives Minimize number of vehicles Minimize unproductive time (layovers, deadheads) 16
Vehicle scheduling (cont d) Single-depot variant (SDVSP) Easy (e.g. network flow formulation) 17
Vehicle scheduling (cont d) Multiple depots MDVSP (Multi-Depot Vehicle Scheduling Problem) NP-Hard for 2 depots or more Possible formulations Set partitioning i Multi-commodity problems Solution approaches Column generation Specialized heuristics 18
Vehicle scheduling (cont d) Complicating factors that are found in practice: Temporary parking of vehicles Additional constraints on vehicles Possible modifications to timetable Generate solutions that are similar to a starting solution Generate coupling/uncoupling activities (rail) Consider operating exceptions Urban and regional variants Algorithms must remain efficient! 19
Vehicle scheduling Graphical view in HASTUS 20
Vehicle scheduling Another graphical view 21
Crew scheduling Data Vehicle schedule Relief points Travel times Collective bargaining agreement (CBA) Objective Constraints Hourly rate, fringe benefits, bonuses Minimize paid time and penalties 22
Crew scheduling (cont d) Leading problems: Manpower: up to 80% of global operation costs Collective agreement can be very complex Service usually much higher at peak hours Split duties with large spread 23
Crew schedule Graphical view in HASTUS 24
Crew scheduling (cont d) Optimization algorithms for crew scheduling Before 1990: specialized heuristics Since 1990: column generation GERAD (Desrochers et Soumis 1989) GIRO involved since early 1990 Recent developments Decomposition Parallel processing Dynamic constraint aggregation Complementary heuristic procedures 25
Rostering Work planning over a longer time period Days off Duties Availability periods Algorithms Mathematical programming Meta-heuristics Tabu search Variable Neighborhood Search 26
Rostering Graphical view in HASTUS 27
Integrated problems Planning process Demand estimation Line and frequencies Timetabling Vehicle scheduling Crew scheduling Rostering Steps are often carried out sequentially Possible savings when some steps are combined Integrated models are more complex and large-scale GIRO s algorithms can also tackle these problems 28
Daily operations (dispatching) React to daily events Absences and late arrivals for drivers Service disruptions Temporary service addition Optimization problems Work assignment for available drivers Crew re-scheduling Solution methods Mathematical programming Specialized heuristics 29
Daily operations Graphical view in HASTUS 30
Other products Run-time analysis Find periods and run times for routes Maximize punctuality Specialized algorithms that use statistical analysis 31
Other products (cont d) Passenger information (trip planners) Shortest path problem in a time-space graph 32
Routing sector Postal services High-density problems Mail delivery Low-density problems Parcel/express Postal box collection Transportation (pickup and delivery) Location problems Other applications School transportation Waste collection 33
Routing - Graphical view in GeoRoute Demands on arcs 34
Routing Another graphical view in GeoRoute Demands on points 35
Routing Another graphical view in GeoRoute Depot location Depots with fixed and variable costs (find best subset) 36
Related academic problems Node problems Traveling Salesman Problem (TSP) Vehicle Routing Problem (VRP) Many variants (e.g. time windows) Arc problems Chinese Postman Problem Rural Postman Problem Capacitated t Arc Routing Problem (CARP) These problems are well-studied by the scientific community 37
Practical problems Additional difficulties: Very large-scale (5,000 demands and more) Additional constraints Network restrictions (left turns, U-turns) Extra activities in routes (sorting, breaks, etc.) High number of demands per route Multiple route types (e.g. vehicle types) Zigzag distribution (both sides of street) Time windows Park and loop routes 38
Algorithms Constructive methods Iterations between clustering and sequencing phases Generate good solutions in less than 1 hour Often sufficient for mail delivery Initial solution for more difficult variants (e.g. pickup and delivery) Post-optimization Local search Large neighborhood search Meta-heuristics Run-time increases 39
Algorithms (cont d) What is the real cost of running time? User waits for result Slows down tuning of the algorithms Reduced interaction with user Slows down the planning process Computer resources are tied up Allows to reach better solutions Possible productivity gains Fast algorithms are necessary To be used in early stage of a project If more running time is available Try to use it efficiently 40
Conclusion Problems to solve are: Varied Often difficult Time-sensitive (tight deadlines) Algorithms must be: Flexible Fast Efficient (solution quality) Integrated into a complete computer application 41
Conclusion (cont d) Wide variety of optimization methods used at GIRO: Linear programming Network flow algorithms Integer programming Column generation Lagrangean relaxation Tabu search Variable neighborhood search Large neighborhood search Gomory cuts Greedy algorithms Specialized heuristics Statistics Local search Explicit enumeration of a solution space Parallelism Use what works depending on the problem you need to solve 42
Conclusion (cont d) Keys to success: Often solve the same problems Always some variants but easier if you know the problem well Algorithms improve over time Use if possible simple and flexible algorithms Always new functionalities to support In some cases, more complex approaches are needed 43