Job Shop Reformulation of Vehicle Routing Evgeny Selensky
Details of the Talk PRAS project Problems addressed Two-level Reformulation TSP graph transformations Experiments and results
PRAS project Problem Reformulation and Search Principal Investigator: Patrick Prosser Web site: Industrial collaborator:, France
Why bother? Try to understand problem structure Improve performance of solution techniques
Vehicle Routing Problem N identical vehicles of capacity C M customers with demands D i >0 Each vehicle serves subset of customers Side constraints may be present (e.g., time windows, precedence constraints) Find tours for subset of vehicles such that: all customers served, each once one tour per vehicle total distance minimal
Job Shop Scheduling Problem time Earliest start time Latest end time M machines, i = 1..M, M 2 N jobs each of S operations, j = 1..S, of duration d ij j : O ij < O ij+1 (chain-type precedence constraints) j : O ij requires specific resource No preemption Minimise makespan = LatestEnd - EasliestStart Open shop relaxation j : start(O ij ) start(O ij+1 ) Multipurpose machines j : O ij requires alternative resource
Reformulation Machine Vehicle Operation Visit Operation duration Service time Transition time Distance
Tool Scheduler 5.1 Scheduling Technology: –slack-based heuristics –edge finder –timetable constraints
TSP graph transformations Purpose : build part of transition times into operation durations to improve performance of temporal reasoning Based on preservation of cost
Example. Order independent transformation
It preserves cost! Proof. 1. Assume
Possible 4-node cycles: , , , , , Consider : 2. Now let
We can always split any cycle into a set of pairs of 3-node cycles with a common edge and starting node as before Therefore for any n 3. Finally,
Example. Order dependent transformation* Lexicographic ordering of nodes: A,B,C,D * Due to Patrick Prosser
A Few More Remarks Both transformations change time bounds on operations We don’t know yet how order independent transformation changes time bounds Order dependent transformation makes a symmetric change: –earliest start –latest end
Experiments. Data generation Based on M.Solomon’s suite of 56 VRPTW benchmarks –pure problems: classes C1, R1, RC1 – small capacities, short TWs classes C2, R2, RC2 – large capacities, wide TWs –changed capacity: classes C1’, R1’, RC1’ – reduced capacities classes C2’, R2’, RC2’ – increased capacities –changed TWs: classes C1’’, R1’’, RC1’’ – TW width reduced by 5% classes C2’’, R2’’, RC2’’ – TW width increased by a factor of 2 –changed capacity and TWs: classes C1’’’ – RC2’’’ analogously
Experiments. Tools and Layout Windows NT, Intel Pentium III 933 MHz, 1Gb RAM Scheduler 5.1 Search for first solutions: –LDS –slack-based heuristics –Time Limit 600s Run each instance 4 times: –No transformation –Lex ordering –MaxMin ordering –MinMin ordering
Results I CharacteristicC1C2R1R2RC1RC2 Range, Lex Range, MaxMin Range, MinMin Mean, Lex Mean, MaxMin Mean, MinMin Median, Lex Median, MaxMin Median, MinMin Table 1. Pure VRPTWs Ranges, means and medians of
Results II CharacteristicC1’C2’R1’R2’RC1’RC2’ Range, Lex Range, MaxMin Range, MinMin Mean, Lex Mean, MaxMin Mean, MinMin Median, Lex Median, MaxMin Median, MinMin Table 2. Influence of capacity
Results III CharacteristicC1’’C2’’R1’’R2’’RC1’’RC2’’ Range, Lex Range, MaxMin Range, MinMin Mean, Lex Mean, MaxMin Mean, MinMin Median, Lex Median, MaxMin Median, MinMin Table 3. Influence of time windows
Results IV CharacteristicC1’’’C2’’’R1’’’R2’’’RC1’’’RC2’’’ Range, Lex Range, MaxMin Range, MinMin Mean, Lex Mean, MaxMin Mean, MinMin Median, Lex Median, MaxMin Median, MinMin Table 4. Influence of capacity and time windows
Analysis of Results Influence of changing capacity alone dominated by influence of changing TW width Transformation tends to improve solution quality with small TWs. –Lex: improves on C1, RC1, degrades on R1 –MaxMin: improves on C1, R1, RC1 –MinMin: improves on C1, R1, RC1 Conversely, with large TWs solution quality degrades : –Lex: degrades on R2, RC2, the same on C2 –MaxMin: degrades on C2, R2 (still negative but worse), improves on RC2 (negative) –MinMin: degrades on C2 (still negative but worse), RC2, improves on R2 (positive but better)
Acknowledgements Thanks to Chris Beck ( ) for his suggestions on the order independent transformation