Research Article

A Simulation-Based Algorithm for the Capacitated Vehicle Routing Problem with Stochastic Travel Times

Algorithm 1

The suggested algorithm of the SBA.
1 Set Solutions =  , TotalCosts =  , TravelCosts =  , PenaltyCosts =  , Reliabilities =  ;
2 Calculate the expected travel time for each edge ( , ) ( , , ) in CVRPSTT
 according to its distribution function;
3 For to step , do:
4  Transform CVRPSTT to the well-known CVRP in which the maximum vehicle working
  time is set to that cannot be exceeded by any vehicle and the travel time
between any pair of nodes is replaced with its expected value;
5   Solve the CVRP ( ) by using any existing heuristic and insert the obtained solution OS into
  Solutions;
6  Set TotalCost = 0, where TotalCost denotes the expected total cost for solution OS,
  TravelCost = 0, where TravelCost denotes the expected travel cost for solution OS,
  PenaltyCost = 0, where PenaltyCost denotes the expected penalty cost for solution OS, and
  Reliability = 0, where Reliability denotes the reliability for solution OS;
7  For to step 1, do:
8    Construct the simulant travel time matrix, each element of which is generated
    according to its travel time distribution function and indicates the simulant travel time
    for an edge, for example ( , ) for the travel time of edge ( , );
9    Calculate the total cost, denoted as C1, the travel cost, denoted as C2, the penalty
    cost, denoted as C3, and the reliability, denoted as C4 for solution OS according to
    their definitions in Section 2 by using to substitute the travel time of each edge
    ( , ) and using W to represent the maximum vehicle working time that cannot be
    exceeded by any vehicle;
10    Set TotalCost TotalCost + C1/ , TravelCost TravelCost + C2/ ,
    PenaltyCost PenaltyCost + C3/ , and Reliability Reliability + C4/ ;
11  Next ;
12  Insert TotalCost into TotalCosts, TravelCost into TravelCosts, PenaltyCost into
PenaltyCosts, and Reliability into Reliabilities;
13 Next ;
14 Get the minimum expected total cost from TotalCosts and its corresponding solution CS from
  Solutions.
15 Improve the solution CS by a method that is further described in Algorithm 2;
16 Return the improved solution CS and its corresponding total cost, travel cost, penalty
  cost and reliability, which have been updated in step 15.