Upload
barnard-davis
View
214
Download
1
Embed Size (px)
Citation preview
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
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)
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
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
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
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
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
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
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
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
11
Practical Vehicle Routing & Scheduling Problems
• fleet of vehicles
• vehicles capacitated
• time restrictions
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
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
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
15
Second Generation Second Generation
Mathematical Programming Models and Mathematical Programming Models and HeuristicsHeuristics
16
Travelling Salesman Problem
)(
)(
emptynot , nodes of subsets2
nodes2
..
min
.otherwise0tour,inedgeif1Let
See
vee
eedgesee
e
SVSx
Vvx
ts
xd
ex
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
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.
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
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.
21
Third Generation
• Optimisation-based heuristics
• AI techniques
• human-machine interactive systems
Preview-Solve-Review