320 likes | 465 Views
Job Shop Reformulation of Vehicle Routing. Evgeny Selensky University of Glasgow evgeny@dcs.gla.ac.uk http://www.dcs.gla.ac.uk/~evgeny. Details of the Talk. PRAS project Problems addressed Two-level Reformulation TSP graph transformations Experiments and results. PRAS project.
E N D
Job Shop Reformulation of Vehicle Routing Evgeny Selensky University of Glasgow evgeny@dcs.gla.ac.uk http://www.dcs.gla.ac.uk/~evgeny
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: www.dcs.gla.ac.uk/pras • Industrial collaborator: , France
Why bother? • Try to understand problem structure • Improve performance of solution techniques
Joint work with • Patrick Prosser (University of Glasgow), • John Christopher Beck (still ILOG, France but soon Cork Constraint Computation Center, Ireland) • submitted a paper to SARA 2002
Vehicle Routing Problem • N identical vehicles of capacity C • M customers with demands Di>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
time Latest end time Earliest start time Job Shop Scheduling Problem • M machines, i = 1..M, M 2 • N jobs each of S operations, j = 1..S, of duration dij • j : Oij < Oij+1 (chain-type precedence constraints) • j : Oijrequires specific resource • No preemption • Minimise makespan = LatestEnd - EasliestStart • Open shop relaxation • j : start(Oij) < start(Oij+1) start(Oij) > start(Oij+1) • Multipurpose machines j : Oijrequires alternative resource
Similarities • Execution of tasks • Tasks use resource(s) and have durations • Resources constrained by capacity • Sets of alternative resources may exist • Setups, temporal constraints on tasks present • Solution is an assignment of tasks to resources, start times to tasks • Similar minimisation criteria may be specified
Reformulation • Machine Vehicle • Operation Visit • Operation duration Service time • Transition time Distance
Previous Studies • Scheduling and local search • Davenport & Beck 1999 - alternative resources (up to 8 alternatives) • Focacci et al, 2000 - alternative resources (up to 3 alternatives) and setups • Selensky 2000 - extreme cases of performance of the routing and scheduling techniques (25 alternatives, large setups)
Previous Studies. Outcome • Local Search in general is better for routing problems • Systematic search in general is better for scheduling problems
Why so huge a difference? Scheduling Routing • many alternative resources • few (or no) alternative resources • small (or no) setups, large durations • large setups, small durations • many temporal relationships among activities (precedence constraints) • few (or no) temporal relationships among activities
This work is the first step towards understanding why this happens
TSP graph transformations • Purpose: build part of transition times into operation durations to improve performance of temporal reasoning • Based on preservation of cost
* Due to J.C.Beck Example. Order independent transformation*
It preserves cost! Proof. 1. Assume
2. Now let Possible 4-node cycles: 1-2-3-4-1, 1-2-4-3-1, 1-3-2-4-1, 1-3-4-2-1, 1-4-2-3-1, 1-4-3-2-1. Consider 1-2-3-4-1:
3. Finally, 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
* Due to P. Prosser Example. Order dependent transformation* Lexicographic ordering of nodes: A,B,C,D
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 start
Experiments. Test bed • Based on M.Solomon’s suite of 56 VRPTW benchmarks: • classes C1, R1, RC1 – small capacities, short TWs • classes C2, R2, RC2 – large capacities, wide TWs • C1 (9 instances), C2 (8 instances) – clustered distribution of customers • R1 (12 instances), R2 (11 instances) – random distribution of customers • RC1 (8 instances), RC2 (8 instances) – random-clustered distribution of customers • within a class, customer coordinates and demands are identical
Experiments. Tools (i) • Scheduler 5.1 • Scheduling Technology, core - global constraint propagation: • slack-based heuristics • edge finder • timetable constraints
Experiments. Tools (ii) • Dispatcher 3.1 • Routing Technology, core - local search • different first solution generation heuristics • plain local search, guided local search, tabu search • path constraints
Experiments. Layout (i) • Windows NT, Intel Pentium III 933 MHz, 1Gb RAM • Scheduler 5.1 • Search for solutions: • Discrepancy Bounded Depth First Search • slack-based heuristics • Max cpu time of 600s • Run each instance 4 times using: • No transformation • Lex ordering • MaxMin ordering • MinMin ordering
Experiments. Layout (ii) • Windows NT, Intel Pentium III 933 MHz, 1Gb RAM • Dispatcher 3.1 • Search for solutions: • First solution generation using savings heuristic • Guided Local Search • Max cpu time of 600s • Run each instance 4 times using: • No transformation • Lex ordering • MaxMin ordering • MinMin ordering
Scheduler Results Scheduler solutions to Solomon’s benchmarks. Average differences, % of the non-transformed costs. Black - lex, grey - maxmin, white - minmin ordering
Dispatcher Results Dispatcher solutions to Solomon’s benchmarks. Average differences, % of the non-transformed cost. Black - lex, grey - maxmin, white - minmin ordering
Analysis of Results • For clustered problems Dispatcher’s performance degrades, Scheduler’s improves as expected • Hard to draw any conclusions on the rest problems. We don’t have full control over instance structure. The test bed proved a bit peculiar for these experiments
Future Work • Create our own problem generator with the purpose of being able to move from VRP to JSSP smoothly, varying: • width of time windows • customer locations • capacities • vehicle specialisation • precedence constraints on visits • rejection/acceptance of visits on a vehicle
Acknowledgements • Thanks to Vincent Furnon () and Barbara Smith (Huddersfield)