The Capacitated Prize-Collecting Rural Postman Problem by xiangpeng

VIEWS: 9 PAGES: 31

									  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
   Additional constraints
       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

      Additional constraints

      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