21
1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using a fleet of (identical) vehicles 1959 Dantzig and Ramser, ARCO gasoline delivery to gas stations 1964 Clarke and Wright, consumer goods delivery for Coop. Wholesale Society in Midlands, England 1930’s Menger, Travelling salesman problem 1800’s Hamiltonian circuit

1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

Embed Size (px)

Citation preview

Page 1: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

1

Vehicle Routing & Scheduling

Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using a fleet of (identical) vehicles

• 1959 Dantzig and Ramser, ARCO gasoline delivery to gas stations

• 1964 Clarke and Wright, consumer goods delivery for Coop. Wholesale Society in Midlands, England

• 1930’s Menger, Travelling salesman problem• 1800’s Hamiltonian circuit

Page 2: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

2

Practical Complications• Travel costs not symmetric, not known• Heterogeneous fleet, fleet size variable• Multiple capacity restriction

– weight, volume, time– different for different products

• Customer-vehicle compatibility• Delivery time-windows• Pickup & delivery on same route

– Capacity? Precedence?

• Multiple depots• Optional deliveries (e.g. replenishment), periodic deliveries• Complex or multiple objective(s)

Page 3: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

3

Vehicle Routing: Theory and Practice• First generation (1950-60’s)

– greedy, local improvement heuristics

• Second generation (1970-80’s)– mathematical programming models

• Third generation ?– Artificial intelligence?– Human-machine interactive?– “on-line” optimisation-based heuristics?

Need “robust” approach

Page 4: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

4

Shortest Path Problem

Given a network with (non-negative) costs on the arcs, find a “shortest-path” from a given origin node to a destination node.

AB

C

FH

D G

I

J

E90 minutesORIGINAmarillo

DESTINATIONFort Worth

OklahomaCity

Note: All link timesare in minutes

66

84

138

348

120

156

84

132

132

60

48

150

126

48

126

90

Page 5: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

5

Dijkstra’s algorithm (1959)

1. Initially, set e0 = 0 and ej= for all other nodes j. Let R= .

2. Choose node k among nodes in N\R that minimises ej.Let R R U {k}.

3. If destination node in R, stop.

4. Update: for each arc (k,j) adjacent to k,

ej min{ ej , ej + dkj }

5. Repeat from Step 2.

• Fast O(n2)• Easy to understand

Page 6: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

6

AB

C

FH

D G

I

J

E90 minutesORIGINAmarillo

DESTINATIONFort Worth

OklahomaCity

Note: All link timesare in minutes

66

84

138

348

120

156

84

132

132

60

48

150

126

48

126

90

Page 7: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

7

Travelling Salesman Problem

Starting from the depot, find a shortest “tour” that visits all other nodes exactly once and returns to the depot.

• Very difficult (NP-complete)

• No “quick” method to find a “guaranteed” optimal solution

Page 8: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

8

Lin-Kernighan (1965, 1973)Local improvement heuristics• 2-opt • 3-opt

• k-opt

i

k

n

mj

l

i

km

j

n l

(a)

(b)(a) Current tour(b) Tour after exchange

Page 9: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

9

Vehicle RoutingClarke-Wright (1964)

• Initially, each (customer) is served by a separate route from the depot.

• Consider merging routes to nodes i and j:

savings= sij = di0 + d0j - dij

• Merge routes with maximum (positive) savings.

dA,O

dO,B

dO,A

dB,O

O

DepotB

A

dA,B

dO,A

dB,O

O

DepotB

A

Page 10: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

10

• Re-calculate savings for current set of routes:– insert at beginning: savings= dX0 + d0A - dXA

– insert at end: savings= d0X + dB0 - dBX

– insert in middle: savings= d0X + dX0 + dAB - dAX - dXB

• Repeat merging until no positive savings.

X AB A

BX

A B

X

Page 11: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

11

Practical Vehicle Routing & Scheduling Problems

• fleet of vehicles

• vehicles capacitated

• time restrictions

Page 12: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

12

Modified Clarke-Wright Savings methods

• Capacitated homogeneous fleet– calculate C-W savings, but only merge

routes if vehicle capacity not exceeded

• Capacitated non-homogeneous fleet– consider vehicle one at a time, merge routes

if capacity not exceeded– ? Order of vehicles to consider?

• Delivery time windows– only merge routes if delivery time (and/or

vehicle capacity) restrictions met

Page 13: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

13

Two-phased HeuristicGillette & Miller’s Sweep Method (1974)First assigns nodes to vehicles (cluster), then find

best route for each cluster.

1,000

3,000

2,000

2,000

2,000

1,000

2,000

3,000

2,000

4,000

3,000

2,000

Depot

1,000

3,000

2,000

2,000

2,000

1,000

2,000

3,000

2,000

4,000

3,000

2,000

Depot

(a) Pickup stop data (b) “Sweep” method solution

Geographicalregion

Pickuppoints

Route #110,000 units

Route #29,000 units

Route #38,000 units

Page 14: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

14

Heuristic Principles for Good Routing and Scheduling (Ballou)

• Customers on a route should be in close proximity (“clustered”)

• Routes for different days should give tight clusters and avoid overlap

• Build routes beginning from farthest customer from depot• Use largest vehicle first• Pickups should be mixed into delivery routes• Consider alternate means for a customer isolated from

others on same route • Tight time-windows should be avoided

Page 15: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

15

Second Generation Second Generation

Mathematical Programming Models and Mathematical Programming Models and HeuristicsHeuristics

Page 16: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

16

Travelling Salesman Problem

)(

)(

emptynot , nodes of subsets2

nodes2

..

min

.otherwise0tour,inedgeif1Let

See

vee

eedgesee

e

SVSx

Vvx

ts

xd

ex

Page 17: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

17

Generalised Assignment Model for Vehicle Routing(Fisher & Jaikumar [1981])

• The vehicle routing problem can be represented exactly by the following nonlinear generalized assignment problem. Defining

.}1|{)(in points theoftour

problemsalesman travelingoptimalan ofcost theis)( where

,...,1,,...0,1or0

,...,1

0

,1

,

,...,1,

such that

)(min

as defined is problem routing vehicle the),,...,( and

otherwise

by vehicle visitedis depot)or (customer point if

,0

,1

0

ikik

ik

ik

kik

iiki

kk

nkkk

ik

yiyN

yf

Kkniy

ni

iKy

Kkbya

yf

yyy

kiy

Page 18: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

18

njnix

nSyNSSx

niyx

njyx

xc)f(y

)f(y

jikx

ijk

kSSijijk

ikj

ijk

jki

ijk

ijijkijk

k

ijk

,...0,,...,0,1or 0

||2),(,1||

,...,0,

,...,0,

such that

min

byally mathematic defined becan function the

otherwise

point topoint fromdirectly travels vehicleif

,0

,1

Defining

• Of course, we lack a closed form expression for f(yk). The generalized assignment heuristic replaces f(yk) with a linear approximation i dik yik and solves the resulting linear generalized assignment problem to obtain an assignment of customers to vehicles.

Page 19: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

19

Set Partitioning Model for Vehicle Routing

• The set partitioning heuristic begins by enumerating a number of candidate vehicle routes. A candidate route is defined by a set S {1,…,n} of customers to be delivered by a single vehicle and a delivery sequence for these customers. We index the candidate routes by j and define the following parameters.

generated routes candidate ofnumber

otherwise

routeon included is customer if

,0

,1

route candidate ofcost the

J

jia

jc

ij

j

Page 20: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

20

Jjy

niya

Ky

yc

jy

j

J

j

K

kjij

J

jj

J

jjj

j

,...,1,1or 0

,...,1,1

min

problem. ngpartitioniset following by the

edapproximat becan then problem routing vehiclethe

otherwise

used is route candidate if

,0

,1

Letting

1 1

1

1

• There are many effective optimization algorithms for set partitioning.• The set partitioning approach will find an optimal solution if the

candidate route list contains all feasible routes. In most situations, this would result in a set partitioning problem too large to be solvable, so one instead heuristically generate routes that are likely to be near-optimal for consideration.

Page 21: 1 Vehicle Routing & Scheduling Find the best routes and schedule to deliver goods to a set of customers (with specified demands) from a central depot using

21

Third Generation

• Optimisation-based heuristics

• AI techniques

• human-machine interactive systems

Preview-Solve-Review