The Capacitated Prize-Collecting Rural Postman Problem by xiangpeng

VIEWS: 9 PAGES: 31

• pg 1
```									  A Branch and Cut algorithm for the
Capacitated Location Routing Problem
with depot and vehicle capacities

J.M. Belenguer*, E. Benavent*, C. Prins**,
C. Prodhon**, R. Wolfler-Calvo**

* Universitat de València (Spain)
** University of Technology of Troyes (France)

EWGLA 2008   Elche   1
Outline
Introduction : Location-Routing Problem (LRP)
Integer Formulation
W-capacity  constraints
Depot degree constraints
Imparity constraints
Path constraints

Cutting Plane Scheme
Initial relaxed formulation
Identification algorithms

Branch & Cut
Computational Results
Conclusion
EWGLA 2008   Elche       2
Location-Routing Problem                  – 1/3

Transportation

Depot location                         Vehicle routing from
these depots
(Strategic)
(Tactical)
NP-Hard
NP-Hard

Splitting  Lost of the global optimum

EWGLA 2008   Elche                     3
Location-Routing Problem                       – 2/3

•   Example :

Customers with demands
Open depots
depot locations             •Capacity on vehicles
•Capacity on depots
EWGLA 2008   Elche              4
Location-Routing Problem                   – 3/3

 G. Laporte, et al.
An Exact Algorithm for Solving a Capacitated Location-
Routing Problem
Annals of Operations Research, 1986, 6, p.293-310.

 S. S. Barreto
Análise e Modelização de Problemas de localização-
distribuição
University of Aveiro, campus universitàrio de Santiago, 2004,
Portugal.

EWGLA 2008   Elche                        5
Problem Definition
• Data :
•A complete undirected network G = (V, E, C)
 V = I  J : set of nodes, E : set of edges
 I : set of m possible depot locations, for i  I
- opening cost Oi
- capacity Wi
 J = V \ I set of n customers, demands dj , j J
 cij traveling cost of edge (i, j )  E (triangular
inequality)
•An unlimited number of vehicles: fixed cost F and
capacity Q
• Objective : minimize the total cost
( traveling costs + setup costs for the depots and the routes)
EWGLA 2008   Elche                    6
Integer Formulation –                        1/6

Depots to open and locations
•   Goal :
1 if depot i is open
Find             yi  
0 otherwise
•

Assignment of the customers to these depots
and routes to visit them
xij  1 If a vehicle uses edge ( i, j ) E exactly once

If a vehicle uses edge ( i, j ) i I, j J twice:
i             j          Formulation 1:     xij  2

Formulation 2:     wij  1, xij  0
return trip
(If xij  1, then wij  0)

EWGLA 2008     Elche                                  7
Integer Formulation–                     2/6

Notation    ( S )  {(i, j )  E : i  S , j  S}                S V
 (S)  {(i, j)  E : i  S , j  S}                S V
E ( S : S ' )  {(i, j )  E : i  S , j  S '}     S, S'  V

x( F )  (i , j )F xij          w( F )  (i , j )F wij

D ( S )  iS d i    SJ          k ( S )   D( S )  S  J
       Q

EWGLA 2008      Elche                  8
Integer Formulation                                       – 3/6

F
Min       cij xij    2cij wij            2
 ( xij  2wij )   Oi yi
( i , j )E          iI jJ               jJ iI                 iI

 2wij  x( ( j ))  2        j  J                          Degree constraints: visit each customer exactly once
iI

x( (S ))  S  k (S ) S  J                    Vehicle capacity
Depot capacity
x( E (S : J \ S ))  x( E (S : I \ {i}))  2w(S : I \ {i}))  2 S  J , i  I such that D(S )  Wi

xij  wij  yi      i  I , j  J                            Edges incident with non open depots cannot be used

A route must begin and end at the same depot
x( (S {l, j}))  x( E({ j} : I ' ))  x( E({l} : I \ I ' ))  S  2                j, l  J , S  J \ { j}, I '  I
x( E ({ j} : I ))  w( E ({ j} : I ))  1          j  J

xij {0,1} (i, j )  E ,                wij , yi {0,1}      i  I , j  J                   Integrality constraints

EWGLA 2008      Elche                                          9
Integer Formulation–                          4/6

Depot capacity constraints

x( E (S : J \ S ))  x( E (S : I \ {i}))  2w(S : I \ {i}))  2 S  J , i  I such that D(S )  Wi

S

i
Violation
Valid
EWGLA 2008     Elche                                 10
Integer Formulation–                                5/6

Path constraints               A route must begin and end at the same depot

x( (S {l, j}))  x( E({ j} : I ' ))  x( E({l} : I \ I ' ))  S  2      j, l  J , S  J \ { j}, I '  I

x( (S {l, j}))  S  1
S
xij  1
j                                  l

I'    i                                                                  x( E ({l} : I \ I ' ))  0

Violation

EWGLA 2008       Elche                                         11
Integer Formulation–                               6/6

Path constraints 2                 A route must begin and end at the same depot

x( E ({ j} : I ))  w( E ({ j} : I ))  1    j  J

We do not know how to
eliminate this solution in
j                                            the first formulation
(with x-variables only)

Violation

EWGLA 2008   Elche                                12
Additional constraints –                           1/6

Imparity constraints :
If w-variables are excluded, the graph induced by the x-variables
must be even

x( (S ) \ F )  x( F ) | F | 1   S  J  I , F   (S ),| F | odd

EWGLA 2008   Elche                   13
Additional constraints –                             2/6

w-capacity constraints (generalize the capacity constraints):
Example: k (S )  1 ( D( S )  Q)

w( E(S ': I )  x( (S ))  S 1     S  J , D(S )  Q, S '  S; S '  S 1

useful when y-variables have fractional values

dj = 1  j; Q = 5 ; k(S) = 1
S'   1
S
S'         1                               w=1
1

w=0.5
w=0.5         Violation               y1 = 0.5
Valid
y1 = 0.5
EWGLA 2008   Elche                         14
Additional constraints –                                  3/6

Strengthened Path constraints
w( E ( S  {l , j} : I )  x( ( S  {l , j}))  x( E ({ j} : I ' ))  x( E ({l} : I \ I ' ))  S  2
j, l  J , S  J \ { j}, I '  I

S               1
|S |= 3,
1                         0.5
w=0.5     1                       l               y4 = 0.5         I'={1,2}, I \ I'={3, 4}
y1 = 0.5
j                               0.5

w=1
y3 = 0.5
I' = {1, 2 }
y2 = 1                                           1.5 + 3 + 1 = 5.5 > 5
Violation
EWGLA 2008    Elche                            15
Additional constraints –                                4/6

Depot Degree constraints (return trips)

w( E ( S : {i}))  yi     S  J , such that d j  d l  Q, j , l  S , i  I

If distances satisfy the triangular inequality:
x=1

If the resulting routes
x=1            x=1            satisfy the capacity
w=1         w=1                                                                        constrainy
dominated by:
x=1
x=1
x=1
x=1                                                                          x=1
x=1 x=1
x=1                                        x=1          x=1
x=1
EWGLA 2008       Elche                                       16
Additional constraints –                    5/6

Depot Degree constraints (general)

2w( E(S : {i})  x( (S ))  x( E(S : {i}))  2 yi  S -1     S  J , D(S )  Q, i  I

Too many links in a depot which
is not completely opened
0.5

1
0.5
S
|S |= 4
1

3 + 2 = 5 > 1+3
0.5
0.5          0.5
0.5
Violation
y1 = 0.5

EWGLA 2008   Elche                           17
Additional constraints –                    6/6

All valid constraints for the CVRP in the two index formulation
are valid for the LRP

J. Lysgaard, et al.
A new Branch-and-Cut Algorithm for the Capacitated Vehicle Routing
Problem
Mathematical Programming, 100(2), 423-445 (2004).

•Capacity inequalities
•Framed capacity inequalities
•Strengthened comb inequalities
•Multistar and Partial Multistar inequalities
•Hypotour inequalities
EWGLA 2008   Elche                    18
Cutting plane scheme                   – 1/4

Initial relaxed formulation:
•Degree constraints
•Forbid edges incident with non open depots
•Depot degree constraints (return trips)
•Minimum number of routes
•Minimum number of depots
•The integrality constraints are relaxed
All family constraints involving an exponential number of constraints
are initially relaxed.
At each iteration of the cutting plane,
the constraints that are found to be violated by the
current LP solution are added to the LP
EWGLA 2008   Elche                         19
Cutting plane scheme                 – 2/4

Identification procedures:

• Heuristics
similar in many cases to the ones used in CVRP
(use of capacity, framed capacity, combs, multistar and
hypotour constraints from Lysgaard’s library)

• Exact polynomial procedure
Path constraints
based on maximum flow / minimum cut

EWGLA 2008   Elche                  20
Cutting plane scheme                                      – 3/4

Exact Separation of Strengthened Path constraints

w( E ( S  {l , j} : I )  x( ( S  {l , j}))  x( E ({ j} : I ' ))  x( E ({l} : I \ I ' ))  S  2
j, l  J , S  J \ { j}, I '  I
Exact procedure:

For each pair of customers j and                      l:
 compute the subset of depots I ' maximizing:

A = x( E ({ j} : I ' ))  x( E ({l} : I \ I ' )) (sort and count)

 find a subset T of customers containing j and l that
minimizes x( (T ))                   (minimum cut)
The constraint is violated if: x( (T )) < 2A
EWGLA 2008        Elche                                   21
Cutting plane scheme                                             – 4/4

 xij  } x( )  ( ( j l}))  x x E 2 j : 3
w( E ( S  {l , j2 : I ( Sx { S,  {l ,j}))  kl( ({S} I ' ))  x(Path Iconstraints
E ({l} : \ I ' ))  S  2          2
iI '                                kI \ I '
j, l  J , S  J \ { j}, I '  I
Example
T = S  { j, l }

1
l            0.5
0.5                         1
1             1
y1 = 0.25                                                         y4 = 0.25
j                                  0.5
I\I' = {3, 4 }
0.5
y3 = 0.25            A=2
I' = {1, 2 }               y2 = 0.25
x ((T)) = 2 < 2A                                   Violation
Checking: 4+1+1=6 > 3+2

EWGLA 2008                Elche                               22
Results    – 1/6

•   Instances:
•   30 random instances
•   10 instances from literature

   Visual C++ ; 2.4 GHz Pentium 4 ; 512 MB of RAM

•   Results :
•   Lower bound based on the cutting plane
•   Lower bound by partial Branch & Cut: integrality of
y-variables (depot location)
•   Branch & Cut just using the default rules of cplex

EWGLA 2008   Elche                 23
Results –              2/6

Cutting Plane
30 Random Instances (1)
(gap = deviation from the upper bound in %)
custs deps   clusts   veh cap    UB          LB         gap    LB add ctr    gap    LB y integer   gap
20    5       1        70      54793      47993,9      12,4      49555,34   9,6      52736,1      3,8
20    5       1       150      39104      39104,0      0,0       39104,00   0,0      39104,0      0,0
20    5       2        70      48908      46330,4      5,3       46761,29   4,4      47816,7      2,2
20    5       2       150      37542      37495,1      0,1       37542,00   0,0      37542,0      0,0
50    5       1        70      90111      74961,0      16,8      77680,51   13,8     85176,7      5,5
50    5       1       150      63242      54803,4      13,3      56445,37   10,7     59748,1      5,5
50    5       2        70      88298      80216,3      9,2       81414,56   7,8      82475,2      6,6
50    5       2       150      67340      62733,5      6,8       63078,94   6,3      64079,6      4,8
50    5       2*       70      84055      80532,7      4,2       81553,22   3,0      82779,3      1,5
50    5       2*      150      51822      50829,5      1,9       50884,77   1,8      51103,5      1,4
50    5       3        70      86203      70362,2      18,4      74814,12   13,2     83002,6      3,7
50    5       3       150      61830      53187,2      14,0      55444,75   10,3     59553,8      3,7

average gap                8,5                  6,7                   3,2

EWGLA 2008     Elche                                24
Results –            3/6

Cutting Plane
30 Random Instances (2)
custs deps   clusts   veh cap    UB          LB         gap    LB add ctr   gap    LB y integer   gap
100    5       1        70      275993     259734,0      5,9   264555,9     4,1     267010,7      3,3
100    5       1       150      214392     205648,1      4,1   207420,2     3,3     208348,2      2,8
100    5       2        70      194598     176174,9      9,5   182283,8     6,3     188791,1      3,0
100    5       2       150      157173     143375,1      8,8   146404,3     6,9     153588,8      2,3
100    5       3        70      200246     174066,8     13,1   177713,0     11,3    194626,3      2,8
100    5       3       150      152586     141270,4      7,4   142881,5     6,4     150155,4      1,6
100    10      1        70      290429     254194,5     12,5   262829,6     9,5     271827,3      6,4
100    10      1       150      234641     218759,0      6,8   221727,1     5,5     224944,4      4,1
100    10      2        70      244265     226313,4      7,3   229109,0     6,2     232087,6      5,0
100    10      2       150      203988     194570,7      4,6   195297,9     4,3     195807,9      4,0
100    10      3        70      253344     220734,3     12,9   226370,7     10,6    235229,9      7,2
100    10      3       150      204597     189270,0      7,5   191599,0     6,4     196454,8      4,0

average gap                 8,4                6,7                   3,9

EWGLA 2008   Elche                                25
Results –                4/6

Cutting Plane
10 Instances from Literature

name      custs deps      UB         LB        gap   LB add ctr    gap    LB y integer   gap
Christ50      50    5       565,6      482,5     14,7     506,7       10,4      556,9       1,5
Christ75      75    10      861,6      718,1     16,7     755,3       12,3      795,9       7,6
Das88         88    8       355,8      320,0     10,1     331,9       6,7       347,2       2,4
Gaspelle      21    5       424,9      398,2      6,3     407,2       4,2       420,4       1,1
Gaspelle2     22    5       585,1      563,5      3,7     576,7       1,4       584,5       0,1
Gaspelle3     29    5       512,1      447,2     12,7     485,4       5,2       512,1       0,0
Gaspelle4     32    5       571,7      512,5     10,4     526,6       7,9       556,0       2,7
Gaspelle5     32    5       504,3      475,4      5,7     484,0       4,0       504,3       0,0
Gaspelle6     36    5       460,4      430,0      6,6     447,5       2,8       460,4       0,0
Min27         27    5      3062,0      2662,3    13,1    2855,2       6,8      3062,0       0,0

average gap             10,0                 6,2                   1,5

EWGLA 2008    Elche                               26
Results       – 5/6

Branch & Cut
Instances solved to optimality
CPU time limit: 1800 secs.
name     custs deps Optimum B&C nodes CPU LP CPU sep cuts root cuts
20-5-1         20    5    54793,0      463       42,3     4,5    1140   152
20-5-1b        20    5    39104,0       0         0,2     0,1     36    36
20-5-2         20    5    48908,0      143        9,4     1,9    511    206
20-5-2b        20    5    37542,0       0         0,1     0,0     22    22
Christ50       50    5     565,6       192       533,7    38,3   4246   562
Gaspelle       21    5     424,9       16         1,1     0,4    225    157
Gaspelle2      22    5     585,1        4         0,3     0,1    117    94
Gaspelle3      29    5     512,1        9         1,1     0,6    273    198
Gaspelle4      32    5     562,2       21         4,3     0,8    482    198
Gaspelle5      32    5     504,3        4         0,6     0,2    183    158
Gaspelle6      36    5     460,4        6         2,6     1,1    687    187
Min27          27    5    3062,0       11         1,0     0,4    278    138

One instance with 50 customers exactly solved
One new upper bound (optimal)
EWGLA 2008    Elche                       27
Results           – 6/6

Branch & Cut (incomplete)
Instances not solved to optimality
CPU time limit: 1800 secs.
name     custs    deps       LB        gap   CPU LP   CPU sep B&C nodes
50-5-1      50       5       86773,9     3,7   1709,5      103,6   286
50-5-1b     50       5       61184,8     3,3   1759,0      45,3    708
50-5-2      50       5       83794,8     5,1   1722,1      81,1    319
50-5-2b     50       5       65098,0     3,3   1748,1      54,1    1078
50-5-2*     50       5       83402,9     0,8   1714,3      92,5    770
50-5-2b*    50       5       51735,0     0,2   1744,7      81,3    1782
50-5-3      50       5       83846,1     2,7   1697,9      111,9   243
50-5-3b     50       5       61035,7     1,3   1768,9      37,5    680
Christ75    75       10       798,2      7,4   1618,9      225,1    86
Das88       88       8        349,9      1,6   1749,6      64,9    388

average               2,9

EWGLA 2008   Elche                    28
Conclusion

   Branch-andCut algorithm for the Location-
Routing Problem with capacities
 Two index formulation with binary variables

 New identification algorithms

   Able to find:
 Exact solutions on small-medium size instances

 Small integrality gap in some large instances

EWGLA 2008   Elche               29
Conclusion

   Future…

   Improve the branch and cut: better
branching rules, searching strategies, ...
   Strengthen the constraints of the CVRP
   Develop new specific constraints
   Polyhedral study (at least for a simpler
problem)

EWGLA 2008   Elche             30
Thank you ….

EWGLA 2008   Elche   31

```
To top