Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher...

27
Vehicle Routing Vehicle Routing & & Job Shop Job Shop Scheduling: Scheduling: What’s the What’s the Difference? Difference? ICAPS’03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Evgeny Selensky Dept. of Computing Science Dept. of Computing Science University of Glasgow University of Glasgow {pat,evgeny}@dcs.gla.ac.uk {pat,evgeny}@dcs.gla.ac.uk Cork Constraint Cork Constraint Computation Centre Computation Centre University College Cork University College Cork [email protected] [email protected]

Transcript of Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher...

Page 1: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

Vehicle Routing & Vehicle Routing & Job Shop Scheduling: Job Shop Scheduling: What’s the Difference?What’s the Difference?

ICAPS’03, June 13, 2003

J. Christopher Beck, Patrick Prosser, & Evgeny SelenskyJ. Christopher Beck, Patrick Prosser, & Evgeny Selensky

Dept. of Computing ScienceDept. of Computing Science

University of Glasgow University of Glasgow

{pat,evgeny}@dcs.gla.ac.uk{pat,evgeny}@dcs.gla.ac.uk

Cork Constraint Computation CentreCork Constraint Computation Centre

University College Cork University College Cork

[email protected]@4c.ucc.ie

Page 2: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

2

Old Solutions for New ProblemsOld Solutions for New Problems

We have strong techniques to solve hard problems

Use them! – use existing problem models and solution

techniques to solve a new problemCommon approach in research and in

practice– SAT, IP, CP, etc

If you have a hammer, …

Page 3: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

3

A Nice Idea, ButA Nice Idea, But

New problems don’t fit exactly the old models

New problems look “strange”– Scheduling with 0 duration activities– Routing with 0 travel time

How will solution techniques work?

… is the problem really a nail?

Page 4: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

4

Get the Picture?Get the Picture?

ExistingProblemModels

Real-WorldProblem

+ ?

?

Page 5: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

5

This PaperThis Paper

Basic Question– How does existing solution technology cope with

changed characteristics?Basic Approach

– Create problems “between” JSP & VRP– Compare the relative performance of routing and

scheduling solution techniques– What problem characteristics are important to the

solution techniques?More in talk than in the paper

Page 6: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

6

Vehicle Routing ProblemVehicle Routing Problem

T1

T2T3

Make a set of deliveries (visits) with a set of vehicles– Vehicles have limited

capacity– Visits have time

windows– Minimize total

distance traveled

Page 7: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

7

R1

R0

R1

R0 R2

R2 R0

R1 R2

R1

R2

R0

R2

R1 R1

R0 R0 R0

R1

R2R2

makespan

Job Shop Scheduling Problem (JSP)Job Shop Scheduling Problem (JSP)

Page 8: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

8

Off-the-Shelf Solution TechnologyOff-the-Shelf Solution Technology

VRP: ILOG Dispatcher– First Solution: Savings Heuristic– Improvement: Guided Local Search

JSP: ILOG Scheduler– Constructive CP tree-search

• Slack-based heuristics

– Strong constraint propagation• Edge-finding, precedence graph

Page 9: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

9

Evaluating the TechnologyEvaluating the Technology

Cx: cost of solution found by technology x with fixed time limit (10 minutes)

> 1: routing technology is better < 1: scheduling technology is better

rout

sched

C

C

Page 10: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

10

JSP JSP VRP Transformation VRP Transformation

[Beck et al. 2002] We can transform JSPs to VRPs

and vice versaScheduling technology is poor

on reformulated VRPsRouting technology is poor on

reformulated JSPs– Can’t find first solutions due to

precedence constraints!

Page 11: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

12

CharacteristicsCharacteristics

What are the problem characteristics that lead to this difference?Ideas:

– Alternative resources– Optimization criteria– Precedence constraints– (3 more not really discussed here)

Page 12: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

13

From VRPFrom VRP

VRP

?

?

?

?

Page 13: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

14

From JSPFrom JSP

JSP

+

?

?

?

?

Page 14: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

15

Alternative ResourcesAlternative Resources

VRP: many (e.g., 25)JSP: few (1, 4, 8)

Savings can’t solve ~70% of problems with 2 alternatives– Only problems solved by

both are included

Page 15: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

16

Alternative Resources: VRPAlternative Resources: VRP

Page 16: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

17

Alternative Resources: JSPAlternative Resources: JSP

Page 17: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

18

Optimization CriteriaOptimization Criteria

VRP: total travelJSP: makespan

Page 18: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

19

Optimisation Criteria: VRPOptimisation Criteria: VRP

Page 19: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

20

Optimisation Criteria: JSPOptimisation Criteria: JSP

Page 20: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

21

Precedence ConstraintsPrecedence Constraints

VRP: noneJSP: paths of totally

ordered activities

Savings can’t find first solution– Start with scheduling

solution

Page 21: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

22

Precedence Constraints: VRPPrecedence Constraints: VRP

Page 22: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

23

Precedence Constraints: JSPPrecedence Constraints: JSP

Page 23: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

24

Experimental SummaryExperimental Summary

VRP JSP

Alt Res Alt Res

Precedence Cts Precedence Cts

Opt. Makespan Opt. Total Travel

scheduling performance

routing performance

Page 24: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

25

Other CharacteristicsOther Characteristics

Smaller impactTemporal Slack

slack = scheduling performanceVehicle Resource Capacity

– Like alternative resourcesActivity duration to transition time ratio

– VRP: ratio = routing performance– JSP: ratio = scheduling performance

Page 25: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

26

ConclusionsConclusions

Try scheduling technology on VRP with– makespan minimization (strong propagation?)– complex temporal constraints

Try routing technology on JSP with– total time minimization (weak propagation?)– few temporal constraints (open shop?)

Page 26: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

27

ConclusionsConclusions

Even isolated changes in problem characteristics change the best choice of off-the-shelf problem model

Understanding this is important to extending the scope of optimisation techniques to– new problems – new people

Page 27: Vehicle Routing & Job Shop Scheduling: Whats the Difference? ICAPS03, June 13, 2003 J. Christopher Beck, Patrick Prosser, & Evgeny Selensky Dept. of Computing.

28

Alternative ResourcesAlternative Resources