# An Exact Algorithm for the Vehicle Routing Problem with Backhauls

Document Sample

```					      An Exact Algorithm for the
Vehicle Routing Problem with Backhauls
A Thesis
Submitted to the Department of Industrial Engineering
and the Institute of Engineering and Science
of Bilkent University
in Partial Fulfillment of the Requirements
For the Degree of
Master of Science

by
Cumhur Alper GELOĞULLARI

Supervisor
Assoc. Prof. Osman OĞUZ

28.08.2001
Outline

• Importance of Routing Problems
• Problem Statement
• Literature Review
• The Algorithm
• Computational Experiments
• Conclusion
Motivation
• Logistics:
“That part of the supply chain process that plans, implements and
controls the efficient, effective flow and storage of goods, services, and
related information from the point of origin to the point of
consumption in order to meet customers’ requirements”

•Logistics: a means of cost saving

•Distribution costs constituted 21% of the US GNP in 1983.

•VRPs play a central role in logistics.
Problem Statement
The basic Vehicle Routing Problem (VRP):
Customers

D
Problem Statement
The basic Vehicle Routing Problem (VRP):

Minimize     total distance traveled
subject to
each customer is serviced
each route starts and ends at the depot
capacity restrictions on the vehicles
Problem Statement
The VRPs exhibit a wide range of real world applications.

• Dial-a-ride problem
• House call tours by a doctor

• Preventive maintenance inspection tours
• Collection of coins from mail boxes
• Waste Collection
• School Bus Routing
Problem Statement

PARAMETER                                DOMAIN
Objective                Minimize distance/time, # of vehicles
Fleet size                 one vehicle / multiple vehicles
Fleet type                    homogenous / heterogenous
# of depots                  single depot / multiple depots
Type of demand                    deterministic / stochastic
Total time / distance constraints          imposed / not imposed
Time windows                       imposed / not imposed
Precedence relations                  imposed / not imposed
Vehicle capacity                        finite / infinite
Underlying graph                     directed / undirected
symmetric / asymmetric
Problem Statement
The Vehicle Routing Problem with Backhauls (VRPB):
• linehaul (delivery) customers
• backhaul (pick up) customers

D
Linehaul customer

Backhaul customer
Problem Statement

• The VRP replaces deadhead trip back to the depot with a
profitable activity.
• Yearly savings of \$160 millions in USA grocery industry.
Literature Review
Related Problems: The TSP and m-TSP

• Traveling Salesman Problem (TSP)

• Multiple Traveling Salesman Problem (m-TSP)
• m-TSP is a special case of the VRP.
Literature Review
Exact Algorithms for the VRPB

• Vehicles are assumed to be rear-loaded.

• Two exact algorithms for the VRPB:
• Toth & Vigo (1997)
• Mingozi & Giorgi (1999)
The Algorithm

The VRPB under consideration is
• Asymmetric

• Linehaul and Backhaul customers can be in any sequence

in a vehicle route

• Both homogenous and heterogenous fleet
The Algorithm
PRELIMINARIES:
•   L : # of linehaul customers
•   B : # of backhaul customers
•   di : demand of (or amount supplied by) customer i
•   m : # of vehicles
•   Qk : capacity of vehicle k
•   cij : distance from customer i to customer j

• a route is denoted by Rk = {i1=0, i2, i3......., ir=0}
• q(Rk) = capacity required by route Rk
The Algorithm
• VRPB = m-TSP subject to capacity constraints

• m-TSP is a relaxation of the VRPB.

• A feasible solution to the m-TSP is not necessarily a
feasible solution for the VRPB.
The Algorithm
The Default Algorithm
x   PST m
• Step 1: Solve the corresponding m-TSP. Let                 *   be its solution.
PST m
• Step 2: Check whether
x        *   is feasible for the VRPB.

• Step 3: If feasible, stop
optimal solution for the VRPB is obtained.
else                                                               x   PST m
add inequalities valid for the VRPB but violated by                   *

goto step 1.
The Algorithm
Solution of the m-TSP
• Solve m-TSP with branch & bound
• Bektaş’ s Formulation
– decision variable xij
The Algorithm
Feasibility Check
Computation of q(Rk):

Consider the route: {0,4,1,2,3,5,0} where

Route:   0    4    1    2    3    5    0
Type of customer:   -    B    L    L    L    B    -
Demand / Supply:    0    15   10   5    5    10   0
Total Load on the vecicle: 20   35   25   20   15   25   0
The Algorithm
Feasibility Check & Cuts

1) Route Elimination Constraints:

Qmax                 : maximum vehicle capacity
l ( Rk )             : # of edges in Rk

If for a route, Rk ,
q(Rk) >Qmax
then Rk is infeasible for the VRPB.

x
( i , j )Rk
ij    l ( Rk )  1   is valid for the VRPB but violates Rk .
The Algorithm
Feasibility Check & Cuts

For the previous example: Let Qmax=30
The route {0,4,1,2,3,5,0} is infeasible for the VRPB, then add
x04  x 41  x12  x 23  x35  x50  5

to the m-TSP formulation.

Addition of this constraint prohibits the formation of this infeasible route ONLY .

1              2          3

4                                                   5

D
The Algorithm
Feasibility Check & Cuts
2) Multiple Routes Elimination Constraints:

Consider the example:

Route         Route #      q(Rk)                    Qk        Vehicle #
{0,1,2,3,4,0}     1           25             30            1
{0,5,6,0}        2           22                     20           2
{0,7,0}         3           12             15            3

x01  x12  x23  x34  x40  x05  x56  x60  7
The Algorithm
Acceleration Procedures
Local search:

• Begin with an initial solution and improve it
• For the TSP:

a 2-exchange
The Algorithm
Acceleration Procedures

iteration 0:    cost=200   iteration 5:   cost=207

iteration 1:    cost=202   iteration 6:   cost=207

iteration 2:    cost=202   iteration 7:   cost=208

iteration 3:    cost=205   iteration 8:   cost=209

iteration 4:    cost=206   iteration 9:   cost=210
The Algorithm
Acceleration Procedures
Representation of the set of routes:

D     D

D     D
The Algorithm
Acceleration Procedures
Local Search Operators:
Swap Operator:

i            i

j            j
The Algorithm
Acceleration Procedures
Local Search Operators:
Relocate Operator:

j                    j

i

j      j         j
The Algorithm
Acceleration Procedures
Local Search Operators:
Crossover Operator:

i                          i

D   D       D
D

j                          j
Computational Experiments

• C code using CPLEX Callable Library Routines

• A total of 720 instances are tested.

• Two sets of AVRPB instances
Computational Experiments
• Homogenous Fleet (identical vehicles) (540 instances)
• Problem size: 10 - 90 with increments of 10
• For a given problem size, 3 instances for %B=0, %B=20 and %B=50
• cij~U[0,100]        di~U[0,100]
• Common vehicle capacity:

Q  (1   ) max di    di
• Number of vehicles:
  di 
m      
  Q 

where   [0,1].
 = 0.25,  = 0.50,  = 0.75 and  = 1.00
%B=0              Default Algorithm                Improved Algorithm
Avg.    Avg.     Avg.    Avg.         Avg.     Avg.    Avg.
Alpha    Time \# iter. \# TEC     Time        \# iter. \# TEC  \# TPC
10    0,25     1,00    5,40    5,80     0,97        4,60     4,80     5,00
0,50     0,74    3,20    3,40     0,73        3,00     3,20     0,60
0,75     0,42    1,20    1,20     0,43        1,00     1,00     0,40
1,00     0,12      -       -        -           -        -        -
20    0,25     7,80    11,20   14,00    6,13        8,20     9,20    10,00
0,50     7,68    6,80    5,60     6,16        6,20     6,20    4,20
0,75     4,40    3,00    3,00     3,16        2,20     2,20    3,00
1,00     0,45      -       -        -           -        -       -
30    0,25     70,69   15,80   17,40    43,46       10,40   11,40    18,80
0,50     15,32   2,20    2,40     13,98        2,00   2,00     4,20
0,75      9,67   0,60    0,60     8,71         0,40   0,40     1,60
1,00      3,60     -       -        -            -      -        -
40    0,25    256,34   28,20   32,40   186,60       12,60   14,40    15,00
0,50    46,14    5,80    6,40     44,61        5,20   5,60     4,00
0,75    28,38    2,80    3,00     28,84        2,60   2,60     2,20
1,00    12,32      -       -        -            -      -        -
50    0,25    502,79   18,80   23,20   391,69       12,60   13,80    29,80
0,50    105,20   5,80    5,80    100,78        5,20   5,20     15,00
0,75    15,87    0,60    0,60     14,40        0,60   0,60     1,60
1,00    31,18      -       -        -            -      -        -
60    0,25    805,08   28,80   35,60   546,21       19,40   21,20    32,60
0,50    446,90   8,20    8,20    181,58        4,20   4,20     8,00
0,75    36,62    1,20    1,40     37,66        1,20   1,40     0,40
1,00    41,59      -       -        -            -      -        -
70    0,25    1.383,60 21,00   23,60   1.193,22     17,60   17,80    32,40
0,50     392,28  9,40    9,80     332,89       8,60   9,00     6,20
0,75      27,71  1,00    1,00      28,07       1,00   1,00     0,40
1,00      73,61    -       -         -           -      -        -
80    0,25    1.790,07 21,80   23,80   1.553,99     18,00   18,00    24,00
0,50     645,59 14,20    15,40    497,18      11,40   11,60    19,40
0,75      43,42  1,60    1,80      31,34       1,00   1,20     3,40
1,00     139,86    -       -         -           -      -        -
90    0,25    2.496,71 23,40   24,20   2.227,70     18,40   18,40    34,60
0,50    1.427,34 18,20   19,60    990,53      14,20   14,60    22,60
0,75      77,09  0,80    0,80      78,56       0,80   0,80     4,00
1,00     293,72    -       -         -           -      -        -
% B=20              Default Algorithm              Improved Algorithm
Avg.    Avg.     Avg.        Avg.    Avg.   Avg.    Avg.
Alpha    Time      \# iter. \# TEC    Time    \# iter. \# TEC \# TPC
10     0,25     1,02      4,60     4,60      0,90     4,00   4,00    1,60
0,50     0,60      2,40     2,40      0,59     2,00   2,00    1,40
0,75     0,42      0,80     0,80      0,34     0,60   0,60    0,60
1,00     0,16        -        -         -        -      -       -
20     0,25     6,38      6,00     6,60      5,00     3,80   4,00    9,20
0,50     2,00      2,40     2,40      1,87     1,80   2,00    3,00
0,75     0,20      0,20     0,48      0,20     0,20   0,80
1,00     0,55        -        -         -        -      -       -
30     0,25     32,65     12,40   13,80      31,69   11,60   12,80   3,40
0,50     17,74     5,00     5,00      16,72    4,20   4,40    2,40
0,75     2,36      0,40     0,40      2,43     0,40   0,40    0,00
1,00     2,08        -        -         -        -      -       -
40     0,25     59,09     9,40    10,00      48,92    7,20   7,60    5,40
0,50     41,95     4,00     4,00      39,83    3,60   3,60    1,40
0,75     12,63     0,60     0,60      12,40    0,60   0,60    0,40
1,00     10,05       -        -         -        -      -       -
50     0,25    204,91     10,80   11,40     180,80    9,40   9,60    16,80
0,50     89,27     2,60     2,60      76,63    2,20   2,20    2,80
0,75     35,03     0,20     0,20      35,81    0,20   0,20    0,80
1,00     34,95       -        -         -        -      -       -
60     0,25    769,28     18,80   23,40     407,83   12,40   13,40   26,60
0,50    202,75     1,40     1,80     203,57    1,20   1,60    3,20
0,75     94,19     0,40     0,60      94,97    0,40   0,60    0,60
1,00     38,67       -        -         -        -      -       -
70     0,25    1.399,61   21,00   22,00     1.095,86 17,00   17,00   24,00
0,50     227,61    3,20     3,20      220,50   2,80   2,80    2,80
0,75      35,36    0,60     0,60       36,73   0,60   0,60    0,40
1,00      91,55      -        -          -       -      -       -
80     0,25    1.572,84   18,60   20,40     1.478,81 16,20   16,60   18,80
0,50     392,85    6,00     6,60      314,81   5,20   5,40    18,20
0,75      45,02    1,40     1,60       46,08   1,40   1,60    3,20
1,00     173,95      -        -          -       -      -       -
90     0,25    2.606,85   26,40   27,80     2.124,82 21,20   22,00   27,00
0,50     371,21    5,60     6,60      332,21   5,00   5,60    11,00
0,75      93,60    1,20     1,40       96,40   1,00   1,00    3,20
1,00     365,29      -        -          -       -      -       -
% B=50              Default Algorithm              Improved Algorithm
Avg.    Avg. Avg.            Avg.    Avg.   Avg.    Avg.
Alpha    Time      \# iter. \# TEC    Time    \# iter. \# TEC \# TPC
10     0,25     1,24       6,60    6,80      1,11     5,60   5,80    6,40
0,50     0,24       0,60    0,60      0,26     0,60   0,60    0,80
0,75     0,20       0,20    0,20      0,21     0,20   0,20    0,00
1,00     0,17         -       -         -        -      -       -
20     0,25     7,40       8,60    9,40      6,72     7,20   7,60    6,00
0,50     6,43       4,40    4,40      6,79     4,40   4,40    2,00
0,75     2,63       2,20    2,40      2,67     2,20   2,40    1,40
1,00     0,70         -       -         -        -      -       -
30     0,25     19,92      7,00    7,20      18,18    6,40   6,60    5,80
0,50     11,05      2,60    2,80      11,02    2,20   2,40    2,20
0,75     4,58       0,40    0,60      4,90     0,40   0,60    0,60
1,00     4,08         -       -         -        -      -       -
40     0,25    123,88     10,40   11,40     108,98    8,00   8,20    12,40
0,50     24,48     2,40    2,40       24,07    2,00   2,00    2,00
0,75     7,80      0,00    0,00       8,10     0,00   0,00    0,00
1,00     9,36        -       -          -        -      -       -
50     0,25    404,51     16,20   17,60     280,14   12,00   13,20   33,80
0,50     36,63     2,20    2,40       35,40    1,40   1,40    4,40
0,75     28,45     1,00    1,00       28,91    1,00   1,00    1,40
1,00     19,11       -       -          -        -      -       -
60     0,25    664,97     12,00   12,40     222,58    3,80   4,20    12,60
0,50    266,61     3,60    3,80      204,00    2,80   3,00    4,60
0,75     43,66     0,40    0,60       43,55    0,40   0,60    1,60
1,00     40,83       -       -          -        -      -       -
70     0,25    1.318,47   17,20   19,20     1.200,16 13,80   14,20   19,80
0,50     224,13    2,80    3,00       223,14   2,80   3,00    3,80
0,75      97,33    1,00    1,00        97,83   1,00   1,00    1,60
1,00     102,74      -       -           -       -      -       -
80     0,25    1.428,46   13,40   14,20     1.125,90 11,00   11,00   23,60
0,50     240,47    2,40    2,60       243,66   2,40   2,60    1,80
0,75     119,45    0,80    0,80       120,45   0,80   0,80    1,20
1,00     102,74      -       -           -       -      -       -
90     0,25    2.058,27   15,60   16,40     1.728,97 11,80   12,00   32,40
0,50     367,36    3,00    3,60       330,20   2,60   2,80    9,40
0,75     115,59    0,80    1,00       117,87   0,80   1,00    2,00
1,00     217,31      -       -           -       -      -       -
Computational Experiments
• Observations
• As     , the problem gets harder to solve

• For a given value of  , the problem gets easier as %B

• Acceleration Procedures work well
Computational Experiments
• Acceleration Procedures work well
% B=0      Default Algorithm          Improved Algorithm
Avg.    Avg.     Avg.    Avg.   Avg.    Avg.   Avg. % Improvement
Alpha    Time \# iter. \# TEC     Time \# iter. \# TEC \# TPC    in Time
0,25    741,93   18,02   20,58   625,07   12,70   13,42   21,72   15,75
0,50    310,31    7,44   7,72    218,28    6,06   6,22    8,58    29,66
0,75    27,48     1,42   1,49     25,69    1,20   1,24    1,89    6,52

% B=20     Default Algorithm          Improved Algorithm
Avg.    Avg.     Avg.    Avg.   Avg.    Avg.   Avg. % Improvement
Alpha    Time \# iter. \# TEC     Time \# iter. \# TEC \# TPC    in Time
0,25    739,18   14,22   15,56   597,18   11,42   11,89   14,76   19,21
0,50    149,55    3,62   3,84    134,08    3,11   3,29    5,13    10,35
0,75    35,42     0,64   0,74     36,15    0,60   0,71    1,15    -2,06

% B=50     Default Algorithm          Improved Algorithm
Avg.    Avg.     Avg.    Avg.   Avg.    Avg.   Avg. % Improvement
Alpha    Time \# iter. \# TEC     Time \# iter. \# TEC \# TPC    in Time
0,25    669,68   11,89   12,73   521,42   8,84    9,20    16,98   22,14
0,50    130,82    2,67   2,84    119,84   2,36    2,47    3,44    8,40
0,75    46,63     0,76   0,84     47,17   0,76    0,84    1,09    -1,15
Computational Experiments
• Heterogenous Fleet (different vehicles) (180 instances)
• Q=100 m=4                          Q1=125 Q2=113 Q3=87 Q4=75
•  = 0.25,  = 0.50                        %B=0, %B=50

% B=0     Default Algorithm                             Improved Algorithm
Avg.    Avg.      Avg.      Avg.   Avg.      Avg.     Avg.     Avg.  Avg.    % Improvement
Alpha   Time \# iter. \# TEC     \# MTEC   Time     \# iter. \# TEC \# MTEC \# TPC       in Time
0,25    620,35   15,93   13,51    2,67     512,90   12,60   10,95   1,64    17,87        17,32
0,50    368,38   10,61   8,82     1,89     307,65   8,40     7,05   1,25    12,56        16,49

% B=50     Default Algorithm                             Improved Algorithm
Avg.    Avg.      Avg.      Avg.   Avg.      Avg.     Avg.     Avg.  Avg.    % Improvement
Alpha   Time \# iter. \# TEC     \# MTEC   Time     \# iter. \# TEC \# MTEC \# TPC       in Time
0,25    615,25   12,58   11,16    1,58     515,22   9,96    9,16    0,87    13,60        16,26
0,50    267,65   6,18    4,71     1,47     219,83   4,93    4,13    0,82    10,13        17,87
Computational Experiments
• For Homogenous Fleet:
• Time to solve the hardest problem took 42 min.
– Acceleration procedures provide
• max improvement of 66% in time
• min improvement of -4.95% in time

• For Heterogenous Fleet:
• Time to solve the hardest problem took 33 min.
• Acceleration procedures provide
• max improvement of 28% in time
• min improvement of -10.48% in time
Conclusion
• First Exact Algorithm for the VRPB such that
• Asymmetric

• Linehaul and Backhaul customers can be in any sequence

in a vehicle route

• Both homogenous and heterogenous fleet

• The algorithm can be used for both AVRP and AVRPB
Further Research
• VRPB with time and distance restrictions
• VRPB with time windows
• Other local search procedures

```
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
 views: 2 posted: 4/24/2013 language: English pages: 37