Lecture 20 - VehicleRoutingProblem
Lecture 20 - VehicleRoutingProblem
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 1
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 2
Outline
1) Introduction
3) Heuristics
• Sweep Algorithm
• Savings (Clarke-Wright)
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 3
1. Introduction
• Vehicle Routing Problem
❑ Given: One origin/depot, many
destinations, sequential stops, multiple
vehicles
❑ Find: a set of routes connecting each
stop once and only once and returning
to the origin/depot
❑ It generalises the well-known travelling
salesman problem (TSP).
3
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 4
1. Introduction
• Many applications in the transportation & logistics area:
❑ Ship Routing
2. Model Formulation
• Integer Programming Model
Indices: Path-based formulation:
• 𝑖: customer
• 𝑘: vehicle route
Sets: min 𝑐𝑘 𝜆𝑘
• 𝑁: set of customers 𝑘∈𝐾
• 𝐾: set of vehicle routes Subject to:
Parameters: Each customer
𝛼𝑖𝑘 𝜆𝑘 = 1 ∀𝑖 ∈ 𝑁 should be served.
• 𝛼𝑖𝑘 ∈ 0,1 : 1 if customer 𝑖 is served by
vehicle route 𝑘; 0 otherwise 𝑘∈𝐾
• 𝐷𝑖 : demand of customer 𝑖 𝛼𝑖𝑘 𝐷𝑖 𝜆𝑘 ≤ 𝑄𝑘 ∀𝑘 ∈ 𝐾 Vehicle capacity
• 𝑐𝑘 : general cost (time, distance, etc.) of
𝑖∈𝑁
vehicle route 𝑘
• 𝑄𝑘 : loading capacity of vehicle 𝑘 𝜆𝑘 ≤ 𝑉 Fleet size
Decision variable: 𝑘
• 𝜆𝑘 ∈ 0,1 : 1 if vehicle route 𝑘 is employed; 0 𝜆𝑘 ∈ {0,1}
otherwise
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 6
2. Model Formulation
• Integer Programming Model
6
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 7
2. Model Formulation
• Integer Programming Model
❑ How many potential routes are there?
▪ hint: Permutations of n choose k = n!/(n-k)!
▪ Over 9.8 million!!!
❑ In practice, routes are generated in a separate “sub-problem” and fed into the MILP “master
problem”
❑ Very active research area – solving very large scale optimization problems
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 8
2. Model Formulation
• Integer Programming Model
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 9
3. Heuristics
• Ideas:
Route first Cluster second Cluster first Route second
Any earlier TSP heuristic can be used • Sweep Algorithm
• Savings (Clarke-Wright)
20 20
7 7
10 10
16 16
6 6
9 9
12 12
2 2
8 1 8 1 DC
DC 5 5
8 8
4 4
3 3
4 4
0 0
0 5 10 15 20 0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 10
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 0 none
12
4 54 2
5 31 DC
6 80 8 1 5
8
7 78
8 84
4
9 85 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 12
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 78 7
12
4 54 2
5 31 DC
6 80 8 1 5
8
7 78
8 84
4
9 85 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 13
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 158 7-6
12
4 54 2
5 31 DC
6 80 8 1 5
8
7 78
8 84
4
9 85 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 14
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 2
5 31 DC
6 80 8 1 5
8
7 78
8 84
4
9 85 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 15
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 176+31>200 2
5 31 DC
6 80 2 31 5 8 1 5
8
7 78
8 84
4
9 85 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 16
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 176+31>200 2
5 31 DC
6 80 2 84 5-3 8 1 5
8
7 78
8 84
4
9 85 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 17
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 176+31>200 2
5 31 DC
6 80 2 138 5-3-4 8 1 5
8
7 78
8 84
4
9 85 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 18
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 176+31>200 2
5 31 DC
6 80 2 138 5-3-4 8 1 5
8
7 78 138+84>200
8 84
4
9 85 3 84 8 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 19
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 176+31>200 2
5 31 DC
6 80 2 138 5-3-4 8 1 5
8
7 78 138+84>200
8 84
4
9 85 3 106 8-1 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 20
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 176+31>200 2
5 31 DC
6 80 2 138 5-3-4 8 1 5
8
7 78 138+84>200
8 84
4
9 85 3 191 8-1-9 3
10 42 4
DC 0
0 5 10 15 20
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 21
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 176+31>200 2
5 31 DC
6 80 2 138 5-3-4 8 1 5
8
7 78 138+84>200
8 84
4
9 85 3 191 8-1-9 3
10 42 4
191+42>200
DC 0
0 5 10 15 20
4 42 10
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 22
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 176 7-6-2
12
4 54 Route: DC-2-6-7-DC 23.3 miles 2
5 31 DC
6 80 2 138 5-3-4 8 1 5
8
7 78 Route: DC-5-3-4-DC 28.3 miles
8 84
4
9 85 3 191 8-1-9 3
10 42 4
Route: DC-8-1-9-DC 19.3 miles
DC 0
0 5 10 15 20
4 42 10
Route: DC-10-DC 17.2 miles
4 trucks 88.2 miles
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 23
20
Demand 7
10
Node ID (units)
1 22 j wj clusterj 16
6
2 18 9
3 53 1 200 6-7-10
12
4 54 Route: DC-6-7-10-DC 30.6 miles 2
5 31 DC
6 80 2 191 8-1-9 8 1 5
8
7 78 Route: DC-8-1-9-DC 19.3 miles
8 84
4
9 85 3 191 2-5-3-4 3
10 42 4
Route: DC-2-5-3-4-DC 28.6 miles
DC 0
0 5 10 15 20
3 trucks 78.5 miles
Different starting points and directions can
yield different solutions! Best to use a variety or
a stack of heuristics.
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 24
savings first
❑ Need to make sure vehicle capacity is not violated
❑ Also, “interior tour” nodes cannot be added – must be on end.
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 25
27
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 28
DC-8-DC 0
0 5 10 15 20
84 units @ 5.7 miles
29
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 30
Key Points
❑ Sweep Heuristic – very fast – clusters and requires TSP in routing
❑ Clark-Wright – widely used – builds routes in sequence – can include other
considerations
❑ MILP – requires tours to be generated – can take a long time to solve
30
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 31
GOC 城市物流运输车辆智能调度
[Link]
31
TE3709 Logistics & Supply Chain Management Lecture 20: Vehicle Routing Problem 32
GOC 城市物流运输车辆智能调度
32