Online presentation

DEPARTMENT OF LOGISTICS
DEPARTMENT OF OPERATIONS RESEARCH IN TRAFFIC
The Variable Neighborhood Search Heuristic for the
Containers Drayage Problem with Time Windows
D. Popović, M. Vidović, M. Nikolić
Containers Drayage Problem with Time Windows
(CDPTW)
slide: 2 / 13
The problem is typical for the intermodal transportation systems where
containers are distributed by trucks to customers located in the area oriented
to a container sea port or an inland container terminal.
Drayage includes regional movements of loaded and empty equipment (trailers
and containers) by tractors between terminals, shippers, consignees, and
equipment yards. Here we have limited research scope only to empty and
loaded containers.
Drayage operations and especially container truck transportation incurs
significant transportation cost. Therefore it is very important to improve the
efficiency of container transportation through solving the truck scheduling
problem in container drayage operation (Zhang et al. 2010).
On the routing problem in the CDPTW
slide: 3 / 13
Containers transportation problem belong to a pickup and delivery problems,
and because of the nature of the problem, drayage operations also corresponds
to multi-stop Vehicle Routing Problems with Backhauls.
In the case when combined
chassis for transporting two 20ft
containers or one 40ft container
is used the objective of the
routing problem is optimal
matching of pickup and delivery
nodes (up to four nodes per
route).
On the routing problem in the CDPTW
slide: 4 / 13
Empty and loaded containers from terminal
should be distributed to costumers, and empty
and loaded containers should be picked up at
customers’ sites and hauled back to the
terminal.
Unlimited fleet of 2 twenty-foot equivalent units
vehicle capacity.
Time windows.
Split deliveries.
There are 15 possible matchings of task nodes
into merged routes, and 4 direct pickup or
delivery routes.
Mathematical formulation of the CDPTW
slide: 5 / 13
Vidović et al. (2012) presented two mathematical formulations for the CDPTW:
multiple assignment formulation, and general mixed integer programming
(MIP) formulation.
Large scale problem instances (100 pickup/delivery locations) could not be
optimally solved in reasonable CPU time. The CPU time needed to obtain the
solution for the CDPTW is very important for real life applications. The reason
lies in the fact that a routing plan for all pickup/delivery tasks needs to be
obtained on day to day basis. Therefore, we developed the Variable
Neighborhood Search (VNS) heuristic for solving large scale real-life problem
instances.
The results from two above mentioned optimal mathematical models are used
as benchmarks for the evaluation of the VNS heuristic.
The VNS heuristic
slide: 6 / 13
Mladenovic and Hansen (1997) developed the VNS algorithm as a new
metaheuristic concept with the basic idea of a systematic change of a
neighborhood within a local search algorithm. After the initial solution
construction, the VNS heuristic uses local search and shaking procedure to
iteratively improve the current best solution until a stopping criterion is met.
The initial solution in proposed VNS
heuristic is obtained by the sweep
method (biggest “polar gap”).
All solutions must be feasible
regarding time windows and
possible matchings of task nodes
into routes.
starting
node
max
angle
The VNS heuristic – local search
slide: 7 / 13
Task reallocating from one route to
another:
reallocate to
RED ROUTE
reallocate to
PURPLE ROUTE
Tasks interchange between two
routes:
interchange one
task from GRAY
ROUTE with one
task from GREEN
ROUTE
interchange one
task from BLUE
ROUTE with one
task from RED
ROUTE
The VNS heuristic – shaking
slide: 8 / 13
For the shaking procedure, we use a method of the “destruction” of randomly
chosen route/routes with multiple stops and reconstruction of single stop
(direct) routes to each of those stops.
Sh_size = 2
“Destruction” of
PURPLE and
RED routes
The number of routes to be “destructed” is denoted as Sh_size, and the number
of repeated passes for given Sh_size is denoted by Sh_pass. These values define
the total number of shaking neighborhoods.
The VNS heuristic - algorithm
slide: 9 / 13
Construction of the initial solution
The local search procedure
Calc.: Current_obj_val; Current_sol
Init.: Sh_size ← 0; Sh_pass ← 0;
Sh_size ← Sh_size + 1
Sh_pass ← Sh_pass + 1
The shaking procedure
The local search procedure
Calc.: Temp_obj_val; Temp_sol
Temp_obj_val < Current_obj_val
NO
NO
YES
NO
Sh_pass == Sh_pass_max
YES
Sh_size == Sh_size_max
YES
FINAL SOLUTION = Current_sol
Current_obj_val ← Temp_obj_val
Current_sol ← Temp_sol
Test instances - Solomon VRPTW benchmark
(http://web.cba.neu.edu/~msolomon/problems.htm)
slide: 10 / 13
We tested the VNS heuristic on three group of instances presented in paper by
Vidović et al. (2012) for which optimal solutions exists. Additionally, we
generated fourth group of large scale problem instances that cannot be solved
optimally in reasonable CPU time and that are solved only by VNS heuristics.
There are six different sets of problem instances. Task nodes are randomly
generated in problem sets R1 and R2, clustered in problem sets C1 and C2, and
both, randomized and clustered in problem sets RC1 and RC2. Also, problem
sets R1, C1 and RC1 have a short scheduling horizon (few possible costumers
per route) while problem sets R2, C2 and RC2 have a long scheduling horizon.
Computational Results Intel i3 CPU M380 2.53 GHz, 6 GB RAM
CPLEX 12.2. , C++ Visual Studio 2010 (64-bit).
N’
Multiple assignment
formulation
slide: 11 / 13
General MIP
formulation
VNS heuristic
Solution
CPU time
[sec]
Solution
CPU time
[sec]
Average
solution
StDev
[%]
Average
Error [%]
Avg. CPU
time [sec]
10
34833.5
0.024
34833.5
519.578
34981.5
0.32
0.30
0.013
15
56089.4
0.071
*56308.9
899.258
56332.0
0.49
0.45
0.032
50
198225.8
30.908
-
-
200217.5
0.52
0.97
0.566
Total number of pickup/delivery
locations (nodes) is denoted with
N', and total number of containers
(tasks) is denoted with N.
For all four cases, each instance is
solved in 50 iterations by the VNS
heuristic with the following shaking
parameters:
Sh_size_max=5 ;
Sh_pass_max=10 .
N'
Instance
N
Avg.
solution
StDev
[%]
Avg. CPU
time [sec]
100
R1 01
R1 02
R2 01
R2 02
C1 01
C1 02
C2 01
C2 02
RC1 01
RC1 02
RC2 01
RC2 02
123
123
123
123
124
124
124
124
125
125
125
125
371052
338771
337175
297029
379768
348699
393768
360699
441104
410643
416730
416326
0.55
0.61
0.56
0.61
0.88
0.55
0.47
0.42
0.54
0.56
0.68
0.23
2.901
2.465
2.869
3.882
3.364
2.291
2.103
3.544
2.363
2.555
2.868
2.351
Average
375980.4
0.55
2.796
Conclusions
slide: 12 / 13
Results from small and medium scale problems shows that the VNS heuristic
has relatively small average error compared to optimal solutions (0.30%,
0.45%, and 0.97% for cases with 10, 15, and 50 nodes respectively), with a
considerably lower CPU time.
Wang and Regan (2002) stated that the typical containers drayage problem
handles at most 75 containers a day. From this statement and the obtained
results we can say that the VNS heuristic is capable of finding solutions for
real life scale problems in a few seconds.
Although we observe 20ft and 40ft containers in our model (because they are
the most frequently used ones), the proposed VNS heuristic can be applied to
the CDPTW with other container dimensions where a modular concept vehicle
can carry up to two containers of any dimension.
Further research should focus on heterogeneous vehicles, multiple use of
vehicles, additional improvement of the VNS heuristic.
THANK
YO U !