rvrp - wp131-06

Upload: regis-gomes

Post on 07-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/4/2019 RVRP - wp131-06

    1/31

    Multiple Ant Colony Optimization for a Rich

    Vehicle Routing Problem: a Case Study

    Paola Pellegrini, Daniela Favaretto, Elena Moretti

    Department of Applied Mathematics

    University Ca Foscari of VeniceDorsoduro 3825/E, I30123 Venice, Italy

    e-mail: [email protected], [email protected], [email protected]

    Abstract

    Rich vehicle routing problems try to represent situations that can be

    found in reality. Starting from a case study, in this paper a rich vehi-

    cle routing problem is analyzed. The elements that characterize it are

    mainly the presence of multiple objectives, constraints concerning multi-

    ple time windows, heterogeneous fleet, maximum duration of the subtours,

    and multiple visits. Two variants of the Ant Colony Optimization meta-

    heuristic are proposed for tackling this problem. The specific framework

    is called Multiple Ant Colony Optimization. It is finalized to the con-

    sideration of multi-objective problems. Two algorithms are tested. The

    results appear very satisfactory.

    Keywords: vehicle routing problem, multiple objectives, multiple time win-

    dows, heterogeneous fleet, multiple visits, multiple ant colonies

    The authors would like to thank Mauro Birattari for the useful advice during the prepa-

    ration of this paper. They also thanks IRIDIA, Universite Libre de Bruxelles, Belgium, for

    allowing the use of computing power.

    1

  • 8/4/2019 RVRP - wp131-06

    2/31

    The vehicle routing problem (VRP) has been first proposed by Dantzig and

    Ramser (1959). It consists in the determination of the optimal set of routes to

    serve a given set of customers using a fixed fleet of vehicles. Following this study,

    many algorithms have been presented. Both optimal and approximated ap-

    proaches have been considered. This problem is known to be NP-hard (Lenstra

    and Rinnooy Kan, 1981).

    Many variants have been also analyzed. They are obtained by adding differ-

    ent kinds of constraints. These constraints can be related to: time windows in

    which the service must be performed, the requirement of inserting in the same

    tours both pickup and delivery of goods, the availability of different types ofvehicles, the presence of more than one depot, etc. Introducing these features

    implies a significant increase in the complexity of the problem, which further

    reduces the dimension of the instances that can be solved to optimality within

    a reasonable time. For this reason the literature is more and more focusing on

    heuristic and metaheuristic approaches.

    In recent years, moreover, thanks to the increasing efficiency of these meth-

    ods and the availability of a larger computing power, the interest has been

    shifted to other variants identified as rich VRP. The problems grouped under

    this denomination have in common the characteristics of including additional

    constraints, aiming a closer representation of real cases.

    Following this trend, the rich vehicle routing problem studied in this paper

    is inspired by the analysis of a case study. It is characterized by many different

    types of constraints, each of which unanimously classified as challenging even

    when considered alone. These features are: the presence of multiple time win-

    dows, the availability of different types of vehicles, the requirement of multiple

    visits to some customers and the limitation of the duration of each subtour.

    Moreover, the problem is multi-objective with two objectives to be considered

    in hierarchic order. The first one is the minimization of the number of vehicles

    used, and the second one is the minimization of the total time required by the

    subtours.

    We use the metaheuristic approach known as Ant Colony Optimization

    2

  • 8/4/2019 RVRP - wp131-06

    3/31

    (Dorigo and Stutzle, 2004) to tackle this problem. We consider two of its most

    successful variants: Ant Colony System (Dorigo and Gambardella, 1997a) and

    MAXMIN Ant System (Stutzle and Hoos, 1997). They are both studied in

    a multiple colonies framework. The respective results are compared. The Ran-

    domized Nearest Neighbor heuristic and a Tabu Search algorithm are used as

    reference elements. The instances used to evaluate the different behavior of the

    algorithms are produced using an instance generator. The analysis is performed

    on four classes of instances.

    In Section 1 the case study is presented. This priority is due to the main

    role that the practical case has in the development of this study. In Section 2the resulting rich vehicle routing problem is proposed. In Section 3 the two Ant

    Colony Optimization algorithms considered are described. Section 4 presents

    the Tabu Search approach and Section 5 the Randomized Nearest Neighbor

    heuristic. Section 6 describes the instances used for the analysis and Section

    7 the experimental setup. Finally Section 8, reports the computational results

    and Section 9 some conclusions.

    1 The Case Study

    The case study at the basis of this study is concerned to an Italian firm. Its

    major activity consists in the delivery of a wide number of food products to

    restaurants and retailers in the North-East region of the country. This task is

    accomplished by external suppliers of vehicles. The cost of each vehicle consists

    in a fixed amount related to the vehicle itself and in a variable one due to

    the working hours of the driver. The firm decides the set of customers to be

    assigned to each vehicle and the sequence according to which the customers

    must be visited. The fee owed to a driver is much lower for the first eight hours

    than for the following ones, and then the firm imposes tours of limited duration.

    This structure allows to consider as virtually unlimited the dimension of the

    fleet available. Moreover, the usable vehicles are of two kinds. They differ for

    what concerns the external dimensions and the load and unload system. In

    3

  • 8/4/2019 RVRP - wp131-06

    4/31

    particular, the bigger vehicles are endowed with a large posterior door, while

    the smaller ones are characterized by a system of plural lateral doors. As a

    consequence, the use of the first type is very convenient for serving customers

    with high demand. At the same time the second type is more practical for

    visiting the customers requiring low quantities. In this sense, the demand of

    each customer may imply the use of one or the other kind of vehicle. Another

    element having an impact on the choice of the kind of vehicle to be used is

    the geography of the area considered. The customers are all located in a quite

    well defined region which includes both cities and smaller towns. Most of these

    urban areas are characterized by an ancient historical center. Owing to thenarrow dimension of the streets belonging to these centers, the customers there

    located must be served using small vehicles.

    As it is widespread practise in this sector, the firm allows the customer to

    choose when to receive the delivery. To this aim, they can indicate at most

    three time intervals for each of the five working days of the week. This gives a

    total of at most fifteen time windows per customer. Moreover, each customer

    can require to be served more than once a week. When this is the case, the firm

    must take care of placing the visits in non-consecutive days unless the customer

    himself explicitly requires consecutive visits.

    The aim of the firm is the minimization of the cost of completing all the

    deliveries. As previously explained, this cost has two main components: a

    fix one, which is related to the utilization of the vehicle, and a variable one,

    which is related to the amount of time required to complete the tour assigned.

    The fix component has the stronger impact. This makes a set of few tours

    requiring a certain time preferable to another set including more tours and

    implying a smaller amount of hours. The general aim then can be split in two

    objectives which have to be pursued hierarchically: the first is the minimization

    of the number of vehicles required to complete the services, the second is the

    minimization of the total time needed.

    The procedure currently applied by the firm to establish the tours consists

    first of all in splitting the customers in groups of seventy to eighty, and then

    4

  • 8/4/2019 RVRP - wp131-06

    5/31

    in deciding the assignments to the different vehicles according to a weekly time

    horizon. Tours are scheduled on the basis of the experience and the knowledge

    of the territory of the logistic manager. In agreement with the firm, the aim of

    the research presented in this paper is proposing an algorithm for solving this

    second step, considering then the first clusterization as non-modifiable.

    2 The rich vehicle routing problem

    The VRP has been solved in the literature with exact methods, heuristics and

    metaheuristics. Examples of exact methods can be found in: Agarwal, Mathur

    and Salkin (1989); Christofides, Mingozzi and Toth (1981); Fisher (1994); Had-

    jiconstantinou, Christofides and Mingozzi (1995). Some heuristics are presented

    in: Beasley (1983); Dror and Levy (1986); Gillett and Miller (1974); Stewart

    and Golden (1984). And finally metaheuristics are described in: Alfa, Heragu

    and Chen (1991); Bullnheimer, Hartl and Strauss (1999); Gendreau, Hertz and

    Laporte (1994); Potvin, Dube and Robillard (1996). For a quite complete re-

    view of the papers available on this argument we refer the reader to Toth and

    Vigo (2002). On the other hand, to the best of our knowledge, the rich vehicle

    routing problem object of this paper has not yet been considered.

    Following the characteristics of the case study presented in the previous

    section, this problem consists in the determination of the set of subtours that

    allow to serve all the customers using the minimum number of vehicles, as first

    objective, and the minimum total time.

    First of all, let us analyze the constraint related to the requirement of mul-

    tiple visits to a single customer. In the classical formulations of VRP, every

    customer must be visited exactly once. In order to maintain this logic, the mul-

    tiple services are treated as follows. Each customer j requiring sj > 1 services is

    duplicated sj 1 times. All the characteristics of j, such as the type of vehicle

    required or the distances from all the other customers, are replicated for the

    new dummy customers. The distance between them is set infinite. The wj time

    windows of customer j are equally distributed among j and the dummy cus-

    5

  • 8/4/2019 RVRP - wp131-06

    6/31

    tomers related to him. Finally, some constraints must be added to assure that

    different visits are scheduled at a suitable time distance, as will be discussed

    and explained in the following.

    The time horizon considered is split in disjoint subperiods, which represent

    different days. Each subtour must belong to only one of these subperiods and

    its total time length must not exceed a fixed duration.

    As in the classical VRP the demand of all the customers must be met and

    the capacity of the vehicles has to be respected. Moreover, a specific type of

    vehicle must be associated to each subtour.

    3 Multiple Ant Colony System and Multiple MAX

    MIN Ant System

    3.1 Dealing with the Ant Colony Optimizations frame-

    works

    Ant Colony Optimization (ACO) is a metaheuristic based on the foraging be-

    havior of ants. Ants are able to find the shortest path between the nest and a

    food source by using as indirect communication the pheromone trail (Goss et

    al., 1989).

    The metaheuristic starting from this model, consists in using the solutions

    previously found to modify the pheromone values, biasing in this way the search

    toward high quality solutions (Zlochin et al., 2004). A complete analysis of this

    metaheuristic can be found in Dorigo and Stutzle (2004).

    Many ACO algorithms have been proposed in the literature. The two most

    successful variants, when dealing with routing problems are recognized to be

    Ant Colony System (ACS) first proposed by Dorigo and Gambardella (1997a,b)

    and MAXMIN Ant System (MMAS) first introduced by Stutzle and Hoos

    (1997). The general framework of the ACO algorithms implemented for this

    study is reported in Table 1. In this study, the swap local search is combined

    6

  • 8/4/2019 RVRP - wp131-06

    7/31

    Table 1: General framework of ACO algorithms

    Procedure ACO

    Initialize data

    Find the starting solution with the Deterministic Nearest Neighbor heuristic

    Pheromone Trail Initialization

    Determine the nearest neighbor list for each node i N

    while (time elapsed < time available) do

    For each ant a Construct Solution

    Select the best ant a

    Apply Local Search to Solution a

    Check if new best Solution is found

    Apply Pheromone UpdateIf (iteration number is multiple of 50)

    Check if it is time for pheromone re-initialization

    end-Procedure

    with the algorithm. This procedure consists in the inversion in the sequence of

    the position of couples of consecutive customers. When all the couples have been

    considered the procedure stops. When an improvement is found the inversion

    procedure is restarted one step before the improvement. This local search is well

    known in the literature and it was first proposed by Lin (1965). It offers the

    advantage of not being very expensive in terms of computational time although

    it offers satisfactory results. In our case this element is crucial since the addition

    of many constraints could make most of the other typical procedures very time

    consuming.

    Peculiarities of this implementation are the presence of the nearest neighbor

    (nn) list (Dorigo and Stutzle, 2004, pag. 101-102) and the re-initialization

    of the pheromone. In particular, this re-initialization is performed when a

    measure of the convergence of the algorithm becomes greater than a deter-

    mined threshold. The measure of convergence is represented by the inverse of

    the average branching factor introduced by Gambardella and Dorigo (1995).

    The two ACO variants considered differ for the three procedures referred to as

    Pheromone Trail Initialization, Construct Solution, and Pheromone

    7

  • 8/4/2019 RVRP - wp131-06

    8/31

    Table 2: Summary of the relevant formulas related to pheromone for ACS and

    MMAS algorithms

    ACS MMAS

    Pheromone Trail 0 =1

    |N|Cost Starting Solution s

    Initialization

    Pheromone Update ij = (1 )ij + bsfij ij = (1 )ij +

    bsfij

    bsij

    1/Cost bsf if (i, j) bsf

    0 otherwise

    (bsf= best-so-far solution)

    if ij > MAX then ij = MAX

    if ij < min then ij = min

    MAX 1

    |N|Cost bsf

    min MAX(10.05

    |N|1 )

    (|N|2

    1)0.05|N|1

    Local Pheromone ij = (1 )ij + 0

    Update

    Update. In particular, as for the way pheromone is treated, the procedures

    are shown in Table 2, with 0 pheromone initialization level, ij pheromone

    level on the arc (i, j), and and parameters of the algorithms. The element

    that characterizes the MAXMIN Ant System approach is the limitation of

    the possible range of pheromone trail values to the interval [ min, MAX]. By

    the Construct Solution procedure a feasible solution with a fixed number of

    vehicles is generated. The procedure is reported in Table 3, with an highlight

    on the part in which the two algorithms differ. As it can be seen, the difference

    consists in what is called pseudorandom proportional rule that characterizes the

    Ant Colony System. It allows to define more explicitly in which measure to

    concentrate the search of the system around the best-so-far solution. More-

    over, the application of a Local Pheromone Update, again typical of ACS,

    is needed to make the pheromone evaporating from the edge just used. This is

    done for allowing a greater exploration of different tours. It is applied on every

    8

  • 8/4/2019 RVRP - wp131-06

    9/31

    Table 3: Procedure for constructing solutions

    Procedure Construct Solution

    Set tabuList =

    Set Solution =

    Set i = 0

    while (|Solution| < |N|) do

    If (nnListi tabuList = nnListi)

    Then SearchSpace = {j nnListi tabuListC }

    Else SearchSpace = {j tabuListC }

    If SearchSpace feasible customers =

    Then

    \ if MMAS \ \ if ACS \

    For each node j SearchSpace such Draw a random number q

    that j is feasible If (q q0) Then

    Set the probability of being chosen Next node j =

    pij =ijij

    ij

    zSearchSpace,z feasible iziz

    iz

    = argmaxz {iziz

    iz :

    Select randomly next node j z SearchSpace, z feasible}

    Else

    For each node j SearchSpace suchthat j is feasible

    Set the probability of being chosen

    pj =ij

    ij(ij)

    zSearchSpace:z feasible iz

    iziz

    Select randomly next node j

    Apply Local Pheromone Update

    Solution = Solution {j}

    tabuList = tabuList {j}

    Update parameters

    i = jElse if non inserted depot

    Then j = depot, reset parameters

    Else Break

    end-while

    end-Procedure

    9

  • 8/4/2019 RVRP - wp131-06

    10/31

    arc (i, j) after its insertion in the tour. It must be noticed, moreover, that in

    the MAXMIN Ant System procedure for selecting the customer to move to,

    the pheromone level of the arcs is arisen at the power of , while in the Ant

    Colony System this does not happen. In both cases, anyway, the choice follows

    a measure of attractiveness represented by the product of the pheromone level

    ij and two heuristic measures ij and ij (Favaretto, Moretti and Pellegrini,

    2005). The value of ij is proportional to the time tij necessary to go from node

    i to node j and to the urgency of serving customer j. This measure is given by

    the time interval between the present moment (now) and the one in which the

    chosen time window ([ej ,lj ]) closes. The number of times in which the node

    j has not been touched in the previous routes is also considered (INj). More

    precisely,

    ij =1

    max{1, (max{now + tij , ej } now)(lj now) IN3j }, (1)

    where is is a scale factor used to have homogeneous quantities. This formula

    is the one proposed by Gambardella, Taillard and Agazzi (1999) for the VRP

    with single time windows, apart from the presence of the coefficient and from

    the raising to the third power ofINj, which is introduced to privilege the choice

    of customers difficult to visit.

    The computation ofij is focused on the presence of multiple time windows.

    It depends both on the time still available to visit node j being in node i at the

    instant now and on the number of time windows of customer j:

    ij =

    1, if SWj = ,

    1

    max

    1,

    vSWj(lvjev

    j)(lmax

    jnowtij)w3j

    , otherwise (2)

    where SWj = {v {1, . . . , wj }|lvj > lj } is the set of the time windows of

    customer j subsequent the one chosen, lmaxj is the end of his last time window

    and is a scale factor introduced to have homogeneous quantities. Remark that

    if there is no time windows successive to the current instant, the value of must

    be set equal to 1 so that the criterion on which the next node is chosen relies

    completely on and .

    10

  • 8/4/2019 RVRP - wp131-06

    11/31

    3.2 Dealing with specific constraints

    In order to apply these procedures to the rich VRP considered, two elements

    must be clarified concerning the satisfaction of the different constraints: the

    definition of feasible customers has to be given, and a way for dealing with the

    multiple time windows has to be stated.

    First of all, the constraint on the duration of each subtour is quite easy to

    treat. This can be done by stating that if visiting customer j and going back to

    the depot implies that the current subtour lasts more than the available time,

    then j is unfeasible.

    For taking into account the differences among vehicles, the following pro-

    cedure has been applied. First of all, one type of vehicle k is fixed as default.

    Then the insertion of the customers begins considering the capacity constraint

    imposed by type k, and without taking into account the type of vehicle possibly

    required by the customers. When the first customer requiring a specific type of

    vehicle is inserted, this type is considered for the subtour. The following cus-

    tomers will be feasible if either they do not require a specific class of vehicles or

    they require the class already established. When considering customers for the

    insertion while the vehicle is still the default one, if the cumulated demand islarger than the capacity of some type of vehicle, then all the customers requiring

    such types are set as unfeasible.

    Finally, periodic constraints must be satisfied. In the same way as explained

    in the description of the problem in Section 2, before starting all the procedures,

    the set of customers is analyzed, and each of those requiring more than one visit

    is duplicated assigning to each dummy customer some time windows of the

    original one. If this division of the time windows allows a suitable separation

    between the services, it is recorded that the visits to these customers must

    happen with at least a certain distance. This distance depends from the number

    of visits required. When constructing a solution, these customers are treated

    as totally independent apart from the necessary distance between the services,

    when imposed, which might render some of them unfeasible at some step.

    11

  • 8/4/2019 RVRP - wp131-06

    12/31

    As far as the multiple time windows are concerned, the procedure used

    is quite straightforward. It consists in choosing dynamically the one to be

    considered. It corresponds to the first one closing after the moment in which

    the customer can be reached, if such time window exists. The number and

    duration of the not yet closed time windows is nonetheless taken into account

    in the choice via the computation of the heuristic measure .

    3.3 Dealing with multiple objectives

    For facing the problem proposed by the firm and analyzed in Sections 1 and

    2, the algorithms must operate considering the two objectives in hierarchical

    order. They represent the minimization of the number of vehicles used, and the

    minimization of the time required to complete the tour.

    To this aim, a very interesting approach has been presented Gambardella,

    Taillard and Agazzi (1999) consisting in the implementation of a system of mul-

    tiple colonies, according to which two kinds of colonies with different specializa-

    tions are exploited. This system has been developed to tackle a multi-objective

    vehicle routing problem with time windows using Ant Colony System and has

    never been implemented for other ACO variants, despite reaching very encour-aging results.

    The two kinds of colonies employed (VEI and TIME) are specialized fol-

    lowing the two ob jectives of the problem. Given a certain number of vehicles

    v, the VEI colonies search for a feasible solution, while the TIME ones try to

    improve its quality in terms of total time. The implementation proposed here is

    sequential, differently from the parallel one proposed in Gambardella, Taillard

    and Agazzi (1999), in which the two type of colonies work at the same time.

    Here, VEI colonies are started first. Their aim is to fix the minimum number of

    vehicles with which ants are able to find a feasible solution. As soon as a feasible

    solution is found with a certain number of vehicles, VEI colonies are restarted

    decreasing this number. Then, once the final number of vehicles is fixed, TIME

    colonies are activated. This change imposes the choice of some criteria accord-

    12

  • 8/4/2019 RVRP - wp131-06

    13/31

    ing to which the algorithm should pass from VEI to TIME colonies. Since the

    stop criterion of the whole procedure is the computational time, we decided to

    express in terms of time also the chance allowed to VEI colonies to improve the

    solution according to their own objective. It is quite predictable that the lower

    the number of vehicles used is, the lower the number of feasible solutions is, and

    so the more difficult it is to find them. Then, when diminishing v, it is expected

    that the VEI colonies need a longer time to find a solution. On the other hand,

    if such a solution does not exist, it is not convenient wasting computational time

    that might be used to improve the current solution in terms of total time. For

    dealing with this trade off, the VEI colonies are allowed to operate for a timetVEI:

    tVEI = max{2, 5t} (3)

    t =

    0 if the current number of vehicles is the first one

    considered by a VEI colony

    tprev otherwise

    (4)

    with tprev equal to the time that has been necessary for the VEI colonies to

    find a feasible solution with the previous number of vehicles considered. We will

    refer to the value tVEI as partial stopping criterion.

    In Gambardella, Taillard and Agazzi (1999) the number of vehicles is de-

    creased of one unit at a time, starting from the one used in the solution found

    by the Deterministic Nearest Neighbor heuristic. In this implementation, once

    a feasible solution is found with v vehicles, new VEI colonies are started (with a

    re-initialized pheromone matrix as for Gambardella, Taillard and Agazzi (1999))

    being allowed to use only v 2 vehicles. If a better solution is found, this pro-

    cedure is repeated. Otherwise, if a solution with v 2 vehicles has not been

    found after the partial stopping criterion is met, VEI colonies are started using

    v 1 vehicles. When the TIME colonies are started the level of pheromone

    is reset equal to the one present when the feasible solution with that number

    of vehicles was found. This procedure is not present in the original algorithm

    (Gambardella, Taillard and Agazzi, 1999), and has been inserted here since it

    has proved to be very efficient in earlier experiments.

    13

  • 8/4/2019 RVRP - wp131-06

    14/31

    At each solution built by these TIME colonies a check for the number of

    vehicle used is performed. This is done since proceeding in the successive trials,

    ants tend to concentrate on profitable areas of the search space. It is possible,

    and not too infrequent, that they manage to find a solution with one vehicle less

    than the available ones. In this case this new number is recorded and used for

    the following iterations. The solution with the lower number of vehicles becomes

    the new best-so-far. In this sense we might state that the TIME colonies used

    in this paper are somehow hybrids of the TIME and the VEI ones proposed by

    Gambardella, Taillard and Agazzi (1999).

    A remarkable feature characterizing the VEI colonies is related to the pheromoneupdate. As soon as an ant finds a feasible tour with the desired number of ve-

    hicles, the activity of the colony stops and new colonies are activated with

    less vehicles available. Following Gambardella, Taillard and Agazzi (1999), the

    pheromone update during the activity of this kind of colony is performed twice

    according to the formula for the Pheromone Update reported in Table 2.

    First of all, the best feasible solution found so far is considered. Remark that

    this solution uses a number of vehicles greater that the one currently consid-

    ered. Then, the best solution with the current number of vehicles is used. This

    current best solution is the one including the greater number of nodes. In case

    this number is common to more than one sequence, it is the one implying the

    shortest total time. In a way then, also VEI colonies can be considered as

    hybrid.

    The two algorithms obtained following these steps will be referred as Mul-

    tiple Ant Colony System (M-ACS) and Multiple MAXMIN Ant System (M-

    MMAS).

    4 Tabu Search

    Tabu Search (Glover, 1986; Glover and Laguna, 1997) is one of the most suc-

    cessful metheuristics for the vehicle routing problem with single time windows.

    For this reason it is considered as a reference point for the algorithms proposed

    14

  • 8/4/2019 RVRP - wp131-06

    15/31

    here.

    The idea represented by this metaheuristic consists in exploring the solution

    space via a local search procedure, using a short term memory in order to avoid

    sequences of moves that constantly repeat themselves. In the algorithm con-

    sidered here, the starting solution is generated with the Deterministic Nearest

    Neighbor heuristic and its neighborhood is explored via the swap local search

    procedure.

    The short term memory is represented by a list of forbidden moves (called

    tabu list): The algorithm records the last solutions found and excludes them

    from the set of available feasible ones. The tabu list can include either completeor partial solutions, in order to reduce the computational inefficiency (Gen-

    dreau, 2003, p.43). Clearly if solution components are stored, it is possible that

    good quality solutions are forbidden for being partly equal to another recently

    visited. To avoid this counter effect an aspiration criterion (Gendreau, 2003,

    p.44) is used, allowing forbidden moves in case the new solution is the new

    best one. In this implementation solution components are considered, recording

    subsequences of 6 customers centered on the swapped couple. The solutions

    including forbidden components with probability pf > 0 (the other solutions

    are evaluated with probability pa).

    The length of this list, i.e. the number of solutions forbidden at each step,

    known as tabu tenure (Gendreau, 2003, p.43-44), is a parameter of the algorithm.

    If its value is low, the search is concentrated on small areas of the search space.

    If it is high, a larger region is explored. In this implementation, a random value

    between |N| and |N| is assigned to the tabu tenure at each step, with |N|

    number of customers and parameter (0 1: the higher the value is,

    the higher is the probability of having a large value associated with the tabu

    tenure ). The tabu list is handled in a Fist In First Out manner.

    15

  • 8/4/2019 RVRP - wp131-06

    16/31

    5 Randomized Nearest Neighbor

    As additional reference point to evaluate the performance of the two ACO algo-

    rithms presented, the Randomized Nearest Neighbor heuristic (Pellegrini, 2005)

    is considered.

    It consists in an adaptation of the Nearest Neighbor heuristic proposed by

    Solomon (1987) for tackling the rich VRP analyzed, joined to a stochastic ele-

    ment.

    The original algorithm consists in the successive insertion of the nearest

    customer. The concept of closeness when dealing with time windows is not easy

    to define. The reason is that the waiting time implied by the choice of the

    spatially closest feasible customer may have a great impact on the quality of

    the solution. Solomon proposed a measure based on the weighted sum of the

    distance of the customer from the current location, the urgency of serving him

    (related to the lateness of the closure of his time window), and the waiting time

    that his immediate insertion would imply. The tours are constructed choosing

    one after the other the customer that allow to minimize this distance until

    feasible moves are available, and returning to the depot when this is not the

    case. This procedure is iterated until all the customers have been served. In

    order to apply this procedure to the problem we are considering, the same

    methods explained in Section 3.2 are applied. After the construction of a tour,

    moreover, the swap local search is performed.

    The insertion of the stochastic element consists in modifying the choice cri-

    terion for the first node of each subtour, making this selection randomly among

    the customers not yet visited. After this choice, the procedure continues deter-

    ministically until the depot is reached again and a new subtour must be started.

    The Randomized Nearest Neighbor (RNN), then, consists in the reiteration ofthis procedure alternated to the local search one.

    The multiple objectives are considered when solutions are compared. In this

    case the preferred one is always the one implying fewer vehicles, and if this

    number is equal, the one requiring the smaller total time.

    16

  • 8/4/2019 RVRP - wp131-06

    17/31

    6 The Instances Considered

    Being the case study presented in Section 1 the starting point of this analysis, we

    study the behavior of the different algorithms when having to deal with instances

    similar to those that have to be solved by the firm itself. We implemented

    therefore an instances generator.

    The first need is then to analyze the structure of a typical instance. As said

    in Section 1, we are interested in sets of customers with cardinality of the order

    of 70 to 80 elements, as for the subsets of customers considered by the firm.

    The customers are geographically quite close, so that they can be considered as

    grouped in one cluster. A city is represented as a set of concentric circles, the

    number of which depends on the population of the city considered (the higher

    the population, the higher the number of circles). Given that the towns in the

    interested region of Italy are not very large, we consider a cluster made of either

    one or two circles. We will refer to the areas bounded by two consecutive circles

    as to zones. The nodes are uniformly distributed in each zone and the depot is

    located in the most external one. The matrix of distances is produced for each

    instance. Distances are expressed in travel time. They are calculated associating

    to each zone a coefficient, that represents the speed, for which the Euclidean

    distance must be multiplied. To reproduce the situation of real cities, where

    this speed decreases when one approaches the center, the coefficient becomes

    smaller while moving from a zone to a more internal one. The speed considered

    in order to compute these coefficients are 15 km/h for the most internal circle

    of the city and 40 km/h for the most external one. For a detailed description of

    this procedure we refer the reader to Pellegrini and Birattari (2005), in which

    an instances generator for the vehicle routing problem with stochastic demand

    is described. In this framework the same procedure for the localization of thenodes is used.

    Apart from the geographical location of the nodes, many characteristics must

    be assigned to each customer in order to consider all the present constraints.

    Again, before deciding the ratio according to which fixing these features, we

    17

  • 8/4/2019 RVRP - wp131-06

    18/31

    need to take a look to the way they are settled in practice. The data relative

    to an instance representative of those supplied by firm are reported in Table

    7 (Appendix). They are related to the type of vehicle needed for the service,

    the number of services required and the demand relative to each one. The

    requirement of multiple visits is quite rare, while the need of a specific type of

    vehicle is observable more often and it is split almost equally between the two

    available ones. These two elements are almost constant in all the available real

    instances, and so we decided to keep them constant also in the ones generated:

    The number of customers requiring a specific type of vehicle varies between 15

    and 18 and the number of those requiring multiple services (in our case two) isequal to 5. The specific customers are randomly drawn according to a uniform

    distribution.

    Given that two types of vehicles are available to the firm, we considered

    two different types as well. The capacities are set equal to 200 and 300. As

    shown in Table 7 (Appendix) the distribution of the demands is characterized

    by a quite high variance. In previous studies (Pellegrini, 2005) this element

    has proven to increase quite strongly the difficulty of the instances. In order to

    test the algorithms on instances able to reflect the real ones, but also to get a

    deeper understanding of their behavior when dealing with cases with different

    and somehow recognized level of difficulty, we decided to consider the situations

    with both low and high variance of the distribution from which the demands

    are drawn. For this reason the bounds of this distribution are set equal either

    to 10 and 15, 10 and 20, or 10 and 25 - low variance - or to 5 and 45, 5 and 50,

    or 5 and 55 - high variance -.

    Finally, the parameters related to the assignment of the time windows must

    be fixed. The time windows concerning the representative instance considered

    in Table 7 are reported in Figure 4 (Appendix). A time horizon of a week,

    five working days, is considered. The starting and ending values of the time

    windows are considered in terms of the number of minutes elapsed, starting the

    count at 0:00 am of the first day. The time horizon is then equal to the interval

    [0, 7200] and is reproduced in our generator. As it is expected being a real

    18

  • 8/4/2019 RVRP - wp131-06

    19/31

    case, the distribution of these intervals does not follow a strict schema, even if a

    main trend is detectable. The first clear element is that for each day all the time

    windows are fixed in an interval shorter than the 24 possible hours. This element

    is very common in reality, but it is seldom reproduced in benchmark instances.

    For reproducing this situation we impose that the time windows can neither start

    before 7:00 am nor end after 7:00 pm. Secondly, apart from some exceptions,

    most of the customers allow to be served in few time windows with a quite long

    duration. As before, the impact of the number and the duration of the time

    windows on the difficulty of an instance has been analyzed in Pellegrini (2005),

    resulting that the configuration with many short intervals is more difficult thanone with less longer ones. In order to differentiate the characteristics of the

    instances, then, we decided to consider two structures for the time windows

    varying the intervals from which their number (nTW), their duration (du) and

    the minimum distance between two consecutive ones (di) are drawn: In one

    case nTW [2, 5], du [240, 420] minutes, di = 60 minutes. In the other nTW

    [4, 10], du [120, 180] minutes, di = 80 minutes. The procedure used to

    assign the time windows is presented in detail in Pellegrini (2005). Combining

    the two configurations of the time windows with those concerning the variance

    of the demands we obtain four classes of instances:

    1. dem {[10, 15], [10 20], [10 25]}, nTW [2, 5], du [240, 420], di =

    60;

    2. dem {[5, 45], [5, 50], [5, 55]}, nTW [2, 5], du [240, 420], di = 60;

    3. dem {[10, 15], [10, 20], [10, 25]}, nTW [4, 10], du [120, 180], di = 80;

    4. dem {[5, 45], [5, 50], [5, 55]}, nTW [4, 10], du [120, 180], di = 80.

    7 Experimental Setup

    The experiments have been run on a cluster of an AMD Opteron TM 244. The

    executables have been generated from C++ source. The code is publicly avail-

    19

  • 8/4/2019 RVRP - wp131-06

    20/31

    able on the web page www.paola.pellegrini.it. The computational time consid-

    ered as stop criterion is 15 seconds for each instance. 900 instances of each class

    have been generated following the procedure presented in Section 6. Among

    these, 500 have been used for tuning the parameters and 400 for the experi-

    ments. Following Bianchi et al. (2005), some basic procedures as the local search

    are common to all the algorithms, in order to obtain an unbiased comparison of

    their behaviors. Following Birattari (2004a,b), we perform the experiments on

    a large set of instances, running the algorithms once on each of them.

    For each of these four sets the relevant parameters of each algorithm have

    been tuned. Moreover, starting all the algorithms from the solution found by theDeterministic Nearest Neighbor heuristic (DNN), its parameters (the weights to

    be assigned to the three components of the distance measure: c1, c2 and c3)

    have been tuned as well. The range considered is: c1 I, c2 I, c3 I, I =

    {ij : i0 = 0.2, ij + 1 = ij + 0.5 j [0, 13]}. For this aim we use the F-Race

    algorithm proposed by Birattari et al. (2002). The ranges of values chosen for

    the parameters and the selected candidates for each class of instances and for

    each algorithm are reported in Tables 4 and 5 respectively. The number of ants

    for each colony and the length of the nearest neighbor list have been fixed equal

    to |N| and |N|3 respectively (with |N| number of nodes of the graph), following

    the experience of the authors and preliminary experiments.

    8 Results

    In this section the results of the computational experience are presented, con-

    sidering as reference the behavior of the Deterministic Nearest Neighbor. The

    element that first emerges is the dominance of the M- MMAS over the other

    algorithms. In Figure 1 the ranking of the different approaches is reported for

    each class of instances. As it appears evident in the strong majority of the cases

    the M-MMAS outperforms the other approaches. This better behavior is ob-

    servable also in Table 6, in which the number of instances with an improvement

    with respect to the DNN, and the average percentage of these improvement,

    20

  • 8/4/2019 RVRP - wp131-06

    21/31

    Table 4: Value of the parameters chosen for applying the F-Race procedure for

    each algorithm

    M-ACS M-MMAS RNN TS

    {0.05, 0.1, 0.5} {0.05, 0.1, 0.5} c1 {0.55, 0.6, {0.5, 0.6,

    {2, 3, 5} {2, 3, 5} 0.65, 0.7, 0.75, 0.75, 0.8, 0.85, 0.9}

    {2, 3, 5} {2, 3, 5} 0.8, 0.85} pa {0.2, 0.25, 0.3,

    q0 {0.8, 0.85, 0.9} {0.5, 0.75, 1.0, c2 {0.2, 0.3, 0.4, 0.35, 0.4, 0.45}

    {0.1, 0.2, 0.3} 1.25, 1.5, 1.75, 0.5, 0.6, 0.7} pf {0.5, 0.7, 0.75,

    2.0, 2.25, 2.5} c3 {0.2, 0.25, 0.3, 0.8, 0.85, 0.9}0.35, 0.4, 0.45}

    tot 243 tot 243 tot 252 tot 252

    Table 5: Selected candidates after the F-Race procedure for each class of in-

    stances for each algorithm

    class DNN M-ACS M-MMAS RNN TS

    1 c1 = 0 .85, = 0 .1, = 3, = 0.5, = 2, c1 = 0.8, = 0.5,

    c2 = 0 .65, = 5, q0 = 0.8, = 2, = 1.0 c2 = 0.6, pa = 0.2,

    c3 = 0 .2 = 0.2 c3 = 0.2 pf = 0.9

    2 c1 = 0 .85, = 0 .2, = 5, = 0.05, = 2, c1 = 0.85, = 0.5,

    c2 = 0 .6, = 3, q0 = 0.8, = 2, = 1.75 c2 = 0.6, pa = 0.2,

    c3 = 0 .2 = 0.1 c3 = 0.2 pf = 0.9

    3 c1 = 0 .85, = 0 .1, = 5, = 0.5, = 5, c1 = 0.8, = 0.5,

    c2 = 0 .65, = 2, q0 = 0.8, = 2, = 1.0 c2 = 0.5, pa = 0.2,

    c3 = 0 .2 = 0.1 c3 = 0.2 pf = 0.8

    4 c1 = 0 .8, = 0 .1, = 5, = 0.5, = 5, c1 = 0.85, = 0.5,

    c2 = 0 .7, = 5, q0 = 0.8, = 2, = 1.0 c2 = 0.4, pa = 0.2,

    c3 = 0 .2 = 0.2 c3 = 0.2 pf = 0.85

    21

  • 8/4/2019 RVRP - wp131-06

    22/31

    (a) Class 1 (b) Class 2

    (c) Class 3 (d) Class 4

    Figure 1: Ranking of the performance of the algorithms in terms of a linear

    combination of the results referred to the two objectives.

    are presented for each algorithm. Given the priority of the minimization of the

    number of vehicles, if a solution is preferable in this sense the travel time is not

    considered. The second objective is checked when no difference is detectable

    about the first. As it can be seen, in general M-MMAS and M-ACS behave in

    a quite similar way. They improve significantly the number of vehicles used in

    the best solution found and do not make a real difference with respect to the

    total travel time when they are not able to make a difference in terms of the first

    objective. It can be observed, moreover, that even if the number of instances in

    which the number of vehicles decreases with respect to the DNN is very similar

    for the two algorithms, the average value of this difference is much higher when

    considering M-MMAS. A completely different behavior is observable for RNN,

    where the number of vehicles is quite seldom improved (in about 50% of the

    cases). When this happens the difference is less stressed than for the ACO algo-

    rithms. On the other hand the total travel time is diminished much more often.

    Finally, TS places itself between the ACO algorithms and RNN. The number

    of instances in which the number of vehicles is improved is close to the one de-

    22

  • 8/4/2019 RVRP - wp131-06

    23/31

    Table 6: Number of instances in which any improvement with respect to the

    DNN has been found and average percentage improvement.

    cl. M-ACS M-MMAS RNN TS

    veh. % veh. % veh. % veh. %

    1 319 19.67 310 28.80 178 15.29 276 16.16

    2 395 21.36 375 25.06 213 12.66 321 12.84

    3 247 16.72 316 25.23 189 15.59 304 15.06

    4 363 17.06 370 22.74 198 12.52 320 12.28

    time % time % time % time %

    1 0 0.00 0 0.00 111 12.52 59 9.25

    2 0 0.00 0 0.00 97 11.91 42 8.84

    3 0 0.00 0 0.00 88 11.81 32 12.01

    4 0 0.00 0 0.00 85 10.45 32 9.54

    tected for ACO algorithms, and once it is even bigger. Nonetheless, the average

    improvement is always quite lower. The value referred to the total travel time

    in this case is comparable to the one concerning RNN. The predominance of the

    ACO algorithms with respect to the first objective of the problem is clear also

    when observing Figure 2. Here the distribution of the percentage improvementwith respect to the DNNs solutions is presented. In all the classes of instances

    the Randomized Nearest Neighbor performs worse than the others, despite of-

    ten achieving an improvement with respect to its deterministic counterpart. It

    is also observable, as considered before, that M-MMAS obtains better results

    than M-ACS, which are in any case much better than those of DNN and RNN.

    As far as TS is concerned, it is remarkable that in most of the cases its results

    are located between RNN and M-ACS, a part from class 3 in which it behaves

    better than this ACO algorithm.

    Focusing on the differences in the four classes, for RNN the behavior does

    not significantly change and for TS it changes only in class 1. For both the ACO

    algorithms it is detectable that the relative performance with respect to DNN

    is not very sensible to the changes in the configuration of the time windows,

    23

  • 8/4/2019 RVRP - wp131-06

    24/31

    (a) Class 1 (b) Class 2

    (c) Class 3 (d) Class 4

    Figure 2: Percentage improvement in the number of vehicles with respect to

    DNNs solutions.

    while it appears influenced by the differences related to the distribution of the

    customers demands. In general the improvement is stronger in the most difficult

    cases. This trend is very evident for M-ACS, while it is just detectable for M-

    MMAS. Figure 3 reports the percentage difference in travel time between the

    solutions found by couples of algorithm. For each boxplot the instances in which

    the number of vehicles used is the same for the two algorithms reported in the

    respective title are considered. The relation used is such that the values greater

    than zero imply a better performance of the second algorithm reported. The

    graphics are referred only to class 1, since the results are qualitatively equivalent

    through the different instances. Considering the ratios represented, the following

    relations are deductable:

    TS M-MMAS M-ACS RNN,

    where with the symbol we mean that, according to the second objective of the

    problem, the second algorithm is preferable to the first. The predominance of

    RNN might be due to the fact that it builds solutions without posing an accent

    24

  • 8/4/2019 RVRP - wp131-06

    25/31

    Figure 3: Percentage difference between couple of algorithms in the total time

    relative to the solutions found, considering the instances of class 1 for which the

    number of vehicles used is equal.

    on one of the two objectives, which are considered only when different sequences

    must be compared. When solutions with the final number of vehicles are quite

    easy to find, this approach results advantageous. Instead, ACO algorithms

    actually waste 4 seconds focusing just on the number of vehicles (2 seconds trying

    to find a solution with the original number of vehicles decreased by two, and 2

    more searching for one with the starting number minus one). As a consequence,

    they can investigate the one that will be the final search space only for the

    remaining 60% of the time available. The worse performance of TS can maybe

    be explained with the fact that it is focused on the first objective for all the

    computational time.

    Finally, let us try to compare the approaches presented with the one cur-

    rently applied by the firm object of the case study. It is not very easy to analyze

    the differences, since following the tours provided by the firm about 20% of the

    time windows are violated. In any case, the ACO algorithms find feasible solu-

    tions which imply in average the same number of vehicles currently used, even

    if the total travel time needed is bigger. In terms of average performance TS is

    the third algorithm, followed by RNN and DNN, all supplying tours requiring

    more vehicles than those currently used but clearly not violating any constraint.

    Since only few real instances are available, no more details on the results related

    to the case study are reported.

    25

  • 8/4/2019 RVRP - wp131-06

    26/31

    9 Conclusion

    Two Multiple-ACO algorithms are presented for solving a rich vehicle routing

    problem inspired by a case study. Its characteristics are: multiple hierarchically

    ordered objectives, multiple time windows, heterogeneous fleet of vehicles, peri-

    odic constraints and limited duration of the subtours. As reference elements the

    Deterministic and Randomized Nearest Neighbor heuristics and a Tabu Search

    algorithms are considered. The ACO algorithms proposed perform significantly

    better than these alternatives, both on instances generated for the theoretical

    analysis and on those available for the case study.

    10 Appendix

    Table 7: Relevant data about the customers: type of vehicle required (V {big

    (b), small (s), indifferent (-) }), number of services (S), demand (D).

    n. V S D n. V S D n. V S D n. V S D

    1 - 1 7 19 - 1 8 37 - 1 3 55 - 1 3

    2 - 1 29 20 - 1 9 38 - 1 15 56 - 1 14

    3 - 1 17 21 b 1 91 39 - 1 10 57 - 1 19

    4 b 1 124 22 - 1 25 40 - 1 13 58 - 1 21

    5 - 1 21 23 - 1 32 41 - 1 4 59 - 1 18

    6 - 1 26 24 s 1 16 42 - 1 18 60 - 1 2

    7 s 2 20 25 s 1 12 43 - 1 7 61 - 1 23

    8 b 1 63 26 s 1 26 44 - 1 39 62 - 1 20

    9 - 1 7 27 - 1 20 45 - 1 10 63 - 1 6

    10 s 1 21 28 - 1 5 46 - 1 10 64 - 1 36

    11 s 1 8 29 - 1 20 47 - 1 23 65 s 1 10

    12 b 1 193 30 - 1 27 48 s 1 23 66 - 1 15

    13 - 1 11 31 - 1 51 49 - 1 11 67 s 1 2

    14 - 1 16 32 - 1 6 50 - 1 3 68 b 1 7515 - 1 9 33 - 1 29 51 - 1 26 69 b 2 105

    16 - 1 11 34 - 1 19 52 - 1 10 70 - 1 6

    17 - 1 10 35 - 1 13 53 - 1 11 71 b 2 67

    18 s 1 6 36 - 1 9 54 b 1 69

    26

  • 8/4/2019 RVRP - wp131-06

    27/31

    Figure 4: Time windows of the customers belonging to a representative instance

    supplied by the firm.

    References

    Agarwal Yogesh, Mathur Kamlesh and Salkin Harvey M. (1989).A set-

    partitioning algorithm for the vehicle routing problem, Networks 19, 731

    27

  • 8/4/2019 RVRP - wp131-06

    28/31

    749.

    Alfa Attahiru S., Heragu Sunderesh S. and Chen Mingyuan (1991).A 3-opt

    based simulated annealing algorithm for vehicle routing problems, Comput-

    ers & Industrial Engineering 21, 255270.

    Beasley John E. (1983).Route-first cluster-second methods for vehicle routing,

    Omega 11, 403408.

    Bianchi Leonora, Birattari Mauro, Chiarandini Marco, Manfrin Max, Mastro-

    lilli Monaldo, Paquete Luis, Rossi-Doria Olivia and Schiavinotto Tommaso

    (2005). Hybrid metaheuristics for the vehicle routing problem with stochas-tic demand, accepted for publication on Journal of Mathematical Modelling

    and Algorithms.

    Birattari Mauro, Stutzle Thomas, Paquete Luis and Varrentrapp Klaus (2002).

    A racing algorithm for configuring metaheuristics In William B. Langdon et

    al. (Eds.) GECCO 2002: Proceedings of the Genetic and Evolutionary Com-

    putation Conference, 11-18. Morgan Kaufmann, San Francisco, CA, USA.

    Birattari Mauro (2004a). On the estimation of the expected performance of a

    metaheuristic on a class of instances. How many instances, how many runs?,

    Technical Report TR/IRIDIA/2004-01, IRIDIA, Universite Libre de Brux-

    elles, Brussels, Belgium.

    Birattari Mauro (2004b). The problem of tuning metaheuristics, as seem from

    a machine learning perspective., PhD thesis, Universite Libre de Bruxelles,

    Brussels, Belgium.

    Bullnheimer Bernd, Hartl Richard F. and Strauss Christine (1999).An im-

    proved ant system for the vehicle routing problem, Annals of OperationsResearch 89, 319328.

    Christofides Nicos, Mingozzi Aristide and Toth Paolo (1981).Exact algorithms

    for the vehicle routing problem based on the spanning tree and shortest path

    relaxation, Mathematical Programming 20, 1981, 255282.

    28

  • 8/4/2019 RVRP - wp131-06

    29/31

    Dantzig George B., Ramser John H. (1959). The truck dispatching problem,

    Management Science 6, 8091.

    Dorigo Marco and Gambardella Luca M. (1997a). Ant colonies for the traveling

    salesman problem, ByoSystems 43, 7381.

    Dorigo Marco and Gambardella Luca M. (1997b). Ant colony system: A coop-

    erative learning approach to the traveling salesman problem, IEEE Trans-

    action on Evolutionary Computation 1, 5366.

    Dorigo Marco and Stutzle Thomas (2004). Ant Colony Optimization, MIT

    Press, Cambridge, MA, USA.

    Dror Moshe and Levy Larry (1986).Vehicle routing improvement algorithms:

    Comparison of a greedy and a matching implementation for inventory rout-

    ing, Computers and Operations Research 13, 3345.

    Favaretto Daniela, Moretti Elena, Pellegrini Paola (2005).Ant colony system

    for a vrp with multiple time windows and multiple visits available on the

    website www.paola.pellegrini.it.

    Fisher Marshall L. (1994).Optimal solution of vehicle routing problems using

    minimum k-trees, Operations Research 42, 626642.

    Gambardella Luca M. and Dorigo Marco (1995). Ant-Q: A reinforcement learn-

    ing approach to the traveling salesman problem, In Kaufmann Morgan (Ed.)

    Proceedings of the Eleventh International Conference on Machine Learning,

    252260. Morgan Kaufmann, San Francisco, CA, USA.

    Gambardella Luca M., Taillard Eric and Agazzi Giovanni (1999). MACS-

    VRPTW: A multiple ant colony system for vehicle routing problem with time

    windows, In Corne David, Dorigo Marco and Glover Fred (Eds.) New ideain optimization, 6376, McGraw-Hill, London, UK.

    Gendreau Michel, (2003).An introduction to tabu search, In Glover Fred and

    Kochenberger Gary A. (Eds.) Handbook of metaheuristics, 3754, Kluwer

    Academic Publishers, Norwell, MA, USA.

    29

  • 8/4/2019 RVRP - wp131-06

    30/31

    Gendreau Michel, Hertz Alain and Laporte Gilbert (1994).A tabu search

    heuristic for the vehicle routing problem, Management Science 40, 1276

    1290.

    Gillett Billy E. and Miller Leland R. (1974).A heuristic algorithm for the vehicle

    dispatch problem, Operations Research 22, 340349.

    Glover Fred, Future paths for integer programming and links to artificial in-

    telligence, Computers & Operations Research 13, 533549.

    Glover Fred and Laguna Manuel (1997). Tabu Search, Kluwer Academic Pub-

    lishers, Norwell, MA, USA. Second edition.

    Goss Simon, Aron Serge, Deneubourg Jean L. and Pasteels Jacques M. (1989).

    Self-organized shortcuts in the Argentine ant, Naturwissenschaften 76, 579

    581.

    Hadjiconstantinou Eleni, Christofides Nicos and Mingozzi Aristide (1995). A

    new exact algorithm for the vehicle routing problem based on q-paths and

    k-shortest paths relaxations , Annals of Operations Research 61, 2143.

    Lenstra Jan K. and Rinnooy Kan Alexander H.G. (1981). Complexity of vehicle

    routing and scheduling problems, Networks 11, 221228.

    Lin Shen (1965). Computer solutions of the traveling salesman problem, Bell

    Systems Technology Journal 44, 2245-2269.

    Pellegrini Paola (2005). Application of two nearest neighbor approaches to a

    rich vehicle routing problem, TR/IRIDIA/2005-15, IRIDIA, Universite Libre

    de Bruxelles, Brussels, Belgium.

    Pellegrini Paola and Birattari Mauro (2005). Instances generator for the vehicle

    routing problem with stochastic demand, TR/IRIDIA/2005-10, Universite

    Libre de Bruxelles, Brussels, Belgium.

    30

  • 8/4/2019 RVRP - wp131-06

    31/31

    Potvin Jean-Yves, Dube Danny and Robillard Christian (1996).A hibrid ap-

    proach to vehicle routing using neural networks and genetic algorithms, Ap-

    plied Intelligence 6, 241252.

    Solomon Marius M. (1987). Algorithms for the vehicle routing and scheduling

    problem with time window constraints, Operation Research 35, 254-265.

    Stewart William R. Jr and Golden Bruce L. (1984).A lagrangean relaxation

    heuristic for vehicle routing, European Journal of Operational Research 15,

    8488.

    Stutzle Thomas and Hoos Holgers H. (1997).The MAXMIN Ant System

    and local search for the traveling salesman problem, In Back Thomas,

    Michalewicz Zbigniew and Yao Xin (Eds.) Proceedings of the 1997 IEEE

    International Conference on Evolutionary Computation (ICEC97), 309314,

    IEEE Press, Piscataway, NJ, USA.

    Toth Paolo and Vigo Daniele (2002). The Vehicle Routing Problem, SIAM

    monographs on discrete matemathics and applications, Philadelphia, PA,

    USA.

    Zlochin Mark, Birattari Mauro, Meuleau Nicolas and Dorigo Marco (2004).

    Model-based search for combinatorial optimization: A critical survey. An-

    nals of Operations Research 131, 373395.

    31