Solving Dynamic Vehicle Routing Problem in a continuous search

Solving Dynamic Vehicle Routing Problem
in a continuous search space
Michał Okulewicz
[email protected]
Faculty of Mathematics and Information Science, Warsaw University of Technology,
Koszykowa 75, 00-662 Warsaw POLAND
Jacek Mańdziuk
[email protected]
Faculty of Mathematics and Information Science, Warsaw University of Technology,
Koszykowa 75, 00-662 Warsaw POLAND
and
[email protected]
School of Computer Science and Engineering, Nanyang University of Technology,
Block N4, Nanyang Avenue, Singapore 639798, SINGAPORE
Abstract
This paper presents and analyzes advantages of using a continuous search space for
solving the Dynamic Vehicle Routing Problem (DVRP). To this end a generalized version of a 2-Phase Multi-Swarm Particle Swarm Optimization (2MPSO) named Continuous Algorithm for DVRP (ContDVRP) is proposed and examined with particular
focus on continuous requests-to-vehicles assignment encoding.
Experimental evaluation confirms that application of a continuous encoding to address requests-to-vehicles assignment problem results not only in superior average results compared to the state-of-the-art solutions, but also in generation of a more stable
sequence of solutions during the optimization process. This stability can be further
improved by a robust-like approach relying on an application of a suitable penalty
function.
The continuous encoding scheme proposed in the paper opens DVRP for a direct application of virtually any general-purpose continuous optimization metaheuristics. This
property is illustrated by the independent use of Particle Swarm Optimization and
Differential Evolution algorithms.
Keywords
Dynamic Vehicle Routing Problem, dynamic optimization, continuous search space,
Vehicle Routing Problem, Particle Swarm Optimization, Differential Evolution.
1
Introduction
Solving dynamic optimization problems poses additional challenges over solving the
static versions of the same problems. As has been stated by Younes et al. (2005); Rohlfshagen and Yao (2008, 2011), it is necessary to observe how the changes in the problem’s
state actually affect its optimum solution. Moreover, little attention has been paid both
to the problems with changing dimensions (Nguyen et al., 2012) and the role of the
problem representation in accounting for the dynamic characteristics (Branke et al.,
2006). Finally, the ideas behind the Worst Case Optimization (Pflugfelder et al., 2008)
or Robust Optimization (Ben-Tal and Nemirovski, 2002) approaches have been utilized
within metaheuristic approach only to a small extent (Jin and Branke, 2005; Beyer and
Sendhoff, 2007).
c
2016
by the Massachusetts Institute of Technology Evolutionary Computation PREPRINT IN REVIEW():
M.Okulewicz and J.Mańdziuk
Dynamic Vehicle Routing Problem (DVRP) (Psaraftis, 1988) serves in this paper
as a case study for discussing the consequences of using continuous encoding for a
discrete dynamic problem. While DVRP is a discrete optimization problem, using its
graphical representation and solving it as a clustering problem on a continuous R2
plane proved to be beneficial over applying discrete encodings. Apart from the improvement of the results obtained on benchmark set, using such a representation is
motivated both from the optimization algorithm perspective and a practical point of
view. Continuous encoding allows for usage of any kind of a population based continuous optimization algorithms. Solving requests-to-vehicles assignment as a clustering
problem results in inducing a division of the fleet operating area into a several subareas
serviced by a single vehicle, an approach typical for a manual requests assignment.
The rest of the paper is organized as follows. Section 2 defines the DVRP domain
and its operational parameters. Section 3 introduces various types of continuous VRP
encodings and two continuous optimization algorithms (PSO and DE), which can be
used by ContDVRP approach. Section 4 discusses the dynamic features of the DVRP
and the optimization methods applied to address them. Section 5 presents ContDVRP
algorithm and a Parallel Services environment in which ContDVRP is utilized. Section
6 provides the optimization results obtained by the ContDVRP on a set of benchmark
instances and a stability of its optimization process. Finally, Section 7 concludes the paper.
2
Dynamic Vehicle Routing Problem
Vehicle Routing Problem (VRP), a static version of the problem discussed in this paper,
has been introduced by Dantzing and Ramser (1959) as a problem of finding a set of
routes for a fleet of gasoline delivery trucks, thus generalizing the Traveling Salesman
Problem. In a most common variant of the Dynamic Vehicle Routing Problem (DVRP),
subset of requests to be served by the vehicles is introduced during the optimization
process (Pillac et al., 2013). This section defines DVRP, both from the mathematical and
operations research point of view.
2.1
Problem formulation
In the version of DVRP discussed in this article one considers:
• a fleet V of n vehicles,
• a series C of m clients (requests) to be served, and
• a set D of k depots from which vehicles may start their routes.
The fleet V is homogeneous, i.e. vehicles have identical capacity cap ∈ R and the same
speed1 ∈ R. The cargo is taken from one of the k depots2 . Each depot dj ∈ D, j =
1, . . . , k has assigned
• a certain location lj ∈ R2 and
• working hours (tstartj , tendj ), where 0 ≤ tstartj < tendj .
For the sake of simplicity, we additionally define two global auxiliary variables (constraints): tstart := min tstartj and tend := max tendj , which are not part of the
j∈1,...,k
j∈1,...,k
standard definition.
1 In
2 In
2
all benchmarks used in this paper speed is defined as one distance unit per one time unit.
the most common benchmarks used in the literature, likewise in this paper, it is assumed that k = 1.
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
Each client cl ∈ C (l = k + 1, . . . , k + m), has a given:
• location ll ∈ R2 ,
• time tl ∈ R, which is a point in time when their request becomes available (tstart ≤
tl ≤ tend ),
• unload time ul ∈ R, which is the time required to unload the cargo,
• size sl ∈ R - which is the size of the request (sl ≤ cap).
A travel distance ρ(i, j) is the Euclidean distance between li and lj in R2 , i, j = 1, . . . , k+
m.
For each vehicle vi , ri = (ri,1 , ri,2 , . . . , ri,mi ) is a sequence of mi indices of requests
assigned to the ith vehicle and depots to be visited by the vehicle. Therefore, ri defines
the route of the ith vehicle. Please note, that the first and the last elements always denote depots (the initial one and the final one, respectively). The arvri,j is the time of
arrival to the jth location assigned to the ith vehicle. arvri,j is induced by the permutation ri , the time when requests become available - see eqs. (2) and (3) and the time
arvri,1 at which vehicle leaves the depot.
As previously stated, the goal is to serve all clients (requests), according to their
defined constraints, with minimal total cost (travel distance) within the time constraints
imposed by the working hours of the depots.
In other words, the goal of the algorithm is to find such a set R = {r1∗ , r2∗ , . . . , rn∗ }
of permutations of requests and depots that minimizes the following cost function:
COST (r1 , r2 , . . . , rn ) =
mi
n X
X
ρ(ri,j−1 , ri,j )
(1)
i=1 j=2
under the following constraints (2) - (6).
Vehicle i, i = 1, 2, . . . , n cannot arrive at location lri,j until the time required for
traveling from the last visited location lri,j−1 (after receiving an information about the
new request) is completed:
∀i∈{1,2,...n} ∀j∈{2,3...mi } arvri,j ≥ tri,j + ρ(ri,j−1 , ri,j )
(2)
Please recall that for j = 2, lri,j−1 denotes the location of an initial depot.
A vehicle cannot arrive at location lri,j before serving the request cri,j−1 and traveling to the next location:
∀i∈{1,2,...n} ∀j∈{2,3...mi } arvri,j
≥ arvri,j−1 + uri,j−1 + ρ(ri,j−1 , ri,j )
(3)
All vehicles must return to the depot before its closing and cannot leave the depot
before its opening:
∀i∈{1,2,...n} arvri,1 ≥ tstartri,1
∀i∈{1,2,...n} arvri,mi ≤ tendri,m
(4)
i
Recall that index ri,mi (the last index in route ri ) denotes the closing depot for vehicle i.
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
3
M.Okulewicz and J.Mańdziuk
A sum of requests’ sizes between consecutive visits to the depots must not exceed
vehicle’s capacity:
∀i∈{1,2,...n} ∀j1 <j2 ∈{1,2...mi } (ri,j1 and ri,j2 are two
subsequent depots in route ri ) ⇒ (
jX
2 −1
sri,j ≤ cap)
(5)
j=j1 +1
Each client must be assigned to exactly one vehicle:
∀j∈{1+k,2+k,...m+k} ∃!i∈{1,2,...n} j ∈ ri
2.2
(6)
Dynamic Vehicle Routing Problem solving framework
In a typical approach to solving DVRP, regardless of the particular optimization method
used, one utilizes a vehicles’ dispatcher (event scheduler) module, which is responsible for communication issues. In particular, the event scheduler collects information
about new clients’ requests, generates the current problem instance and sends it to the
optimization module and, afterwards, uses the solution found to commit vehicles. An
example of a technical description of such information technology system could be
found in Lin et al. (2014).
The event scheduler maintains the three following parameters, which affect the
degree of dynamism and empirical degree of dynamism of a given problem instance:
• Tco - cut-off time,
• nts - number of time slices,
• Tac - advanced commitment time.
The cut-off time (Tco ), in real business situations, could be interpreted as a time
threshold for not accepting any new requests that arrive after Tco and treating them as
the next-day’s requests, available at the beginning of the next working day. In a one-day
simulation horizon considered in this paper, likewise in the referenced works (Khouadjia et al., 2012, 2010, 2013; Hanshar and Ombuki-Berman, 2007; Okulewicz and Mańdziuk, 2013, 2014, 2016), the requests that arrive after the Tco are treated as being known at
the beginning of the current day, i.e. they actually compose the initial problem instance.
In the baseline tests, for the sake of comparability with previous results, Tco = 0.5 was
set, so as to make this choice consistent with the above-cited works. Additionally, in
order to test the behavior of the authors’ ContDVRP and give a reference results for a
more dynamic problems, algorithms performance for Tco = 0.6 and Tco = 0.7 has been
tested.
The number of time slices (nts ) decides how often the dispatcher sends a new version of the problem to the optimization module. Kilby et al. (1998) set this value to
50, while Montemanni et al. (2005a) proposed 25 (adopted as a standard value in other
subsequent approaches), claiming the optimal trade-off between the quality of solutions and computation time. In the case of our method we observed that it is beneficial
to set nts to 40 (Okulewicz and Mańdziuk, 2016). We have used this value in the experiments with both PSO and DE algorithms. For the sake of comparability with our
previous work (Okulewicz and Mańdziuk, 2014) and with the Multi Environmental
4
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
Multi Swarm Optimizer (MEMSO) algorithm (Khouadjia et al., 2013) we have maintained the total number of fitness function evaluations (FFE) at the same level (equal
to 106 ). In order to be comparable with a time limited approaches, such as a Genetic
Algorithm with best-cost route crossover (GA) (Hanshar and Ombuki-Berman, 2007),
the total time limit has been set to 75 seconds, for the experiments with the time limit
as optimization stopping criterion.
Generally speaking, dividing the day into greater number of time slices allows
optimization module to react faster to the newly-arrived requests since it is informed
sooner about the introduced changes. On the other hand, with the FFE budget fixed
the chances for optimizing the solution within each time slice decrease proportionally.
The advanced commitment time (Tac ) parameter is a safety buffer, which shifts the
latest possible moment in which a current part of the route is finally approved and
“frozen”, i.e. the vehicle is dispatched to serve the respective requests. In other words,
any vehicles expected to return to depot within the last time slice before its closing time
minus Tac are considered close to fulfilling time constraint defined by eq. (4), and need
to be dispatched:
Vtbd = {vi : arvri,mi ≥ tendri,m − (Tac +
i
1 ) tendri,m − tstartri,1 }
i
nts
(7)
Requests scheduled to be served by a vehicle from a Vtbd set within the closest time
slice are treated as ultimately approved and cannot be rescheduled to another vehicle.
We have observed that appropriate choice of Tac allows greater flexibility in assigning
requests to vehicles in the phase of a day, just before the Tco , when appropriate handling
of potential arrival of a large request is a critical issue (Okulewicz and Mańdziuk, 2016).
3
Solving VRP in a continuous search space
This section presents continuous encoding applied in the domain of the various types of
VRPs and two population based optimization algorithms utilizing selected encodings
used in the experiments presented in this paper.
3.1
Continuous VRP encodings
While particular variants of VRP might need a different methods to decode a particular
solution from the continuous search space, the same encodings might be used for different VRP models. Therefore, three different VRP encodings are reviewed: joint requests
priorities and cluster centers for Capacited VRP (CVRP) and VRP with Time Windows
(VRPTW) (Ai and Kachitvichyanukul, 2009a,b), giant TSP tours (requests priorities) for
Stochastic VRP (SVRP) (Marinakis et al., 2013) and separate multi-cluster centers and
requests priorities for Dynamic VRP (DVRP) (Okulewicz and Mańdziuk, 2014, 2016).
Figure 1 presents a common VRP example with a candidate solution presented in each
of those continuous search spaces together with their discrete counterpart.
3.1.1 Requests priorities and requests clusters centers encoding
The candidate solutions in the search space proposed by Ai and Kachitvichyanukul
(2009a) consists of a vector of m requests’ priorities and a vector of requests’ cluster centers assigned to each of the estimated number of vehicles n̂. Therefore, candidate solutions belong to Rm+2n̂ search space. That type of candidate solution is unambiguously
transformed into a discrete VRP solution R. Requests in a single cluster are assigned to
the same vehicle and route is formed by ordering them by their priority. Although not
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
5
M.Okulewicz and J.Mańdziuk
5
5
3
10
3
10
1
1
0
0
7
2
7
2
4
8
4
9
6
9
6
8
(a) Division into subareas with one cluster of (b) Division into subareas with two clusters of
requests per vehicle.
requests per vehicle.
Authors
Encoding
Ai and Kachitvichyanukul (2009a)
1.0
0.3
0.5
requests priorities
1.0 1.0 0.4 0.8
0.2
0.6
1st vehicle
0 3
1
Montemanni et al. (2005a)
Marinakis et al. (2013)
0.2
0.8
2nd vehicle
1.0
0.0
3rd vehicle
-0.5
2.1
Khouadjia et al. (2013)
requests cluster centers
1.4 1.0 0.0 -0.5 2.1
2nd vehicle
8 6 9 7
0
3
1st vehicle
1.0
1.4
1.0
4
3rd vehicle
0 2
10
requests priorities for giant TSP tour
0.1 0.7 1.0 0.4 0.6 0.3 0.5
Hanshar and Ombuki-Berman (2007)
Okulewicz and Mańdziuk (2016)
0.7
0.9
requests order for giant TSP tour
1 8 6 9 7 4 2 10 5
1st vehicle
2.0
2.1
1
5
2nd vehicle
-1.9
-3.0
3rd vehicle
-0.6
-3.0
assigned vehicles identifiers
3 1 2 3 2 2 2 2
3
Figure 1: Different continuous VRP encodings and their discrete counterparts presented for a common example. Black and grey dots generate the area division (thus
the requests-to-vehicles assignment), denoted by dashed lines.
every possible routes set R can be presented in this search space, the discrete counterpart for that encoding is a complete routes representation as used by Montemanni et al.
(2005b).
3.1.2
Requests priorities encoding
The candidate solutions in the search space proposed by Marinakis et al. (2013) consists
of a vector of m requests’ priorities. Therefore, candidate solutions belong to Rm search
space. Such vector encodes the order of the requests in a form of a giant TSP tour by
sorting the indexes of the vector by their values. To create a VRP solution R from a giant tour representation the subsequent requests on that tour are divided between the
vehicles in a manner keeping time and capacity constraints. The discrete counterpart
for such encoding is the one initially used for GA by Hanshar and Ombuki-Berman
(2007) and recently by Mańdziuk and Żychowski (2016).
6
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
3.1.3
Requests multicluster centers encoding
In order to overcome the limitations of representing various R solutions with a single cluster encoding of the request-to-vehicles assignment (Ai and Kachitvichyanukul,
2009a; Okulewicz and Mańdziuk, 2013) a multicluster approach has been proposed by
Okulewicz and Mańdziuk (2014). The candidate solution in that search space consist
of k requests’ cluster centers per each of the n̂ estimated vehicles. Therefore, candidate
solutions belong to R2kn̂ search space. To create a complete VRP solution, the routes for
each of the vehicles are generated at random and improved with the 2–OPT algorithm
(Croes, 1958). The discrete counterpart of the clustering approach to the requests-tovehicles assignment has been developed for a discretized PSO algorithm by Khouadjia
et al. (2013).
This paper presents also an encoding utilizing both the idea of multicluster encoding and a unified vector of priorities and cluster centers (resulting in an Rm+2kn̂ search
space).
3.1.4
Encodings summary
Figure 1 presents an example of a VRP solution consisting of a set of requests
{1, 2, . . . , 10} served by a 3 vehicles stationed in a centrally located depot (denoted by
“0”). The figure not only gives the graphical representation of a solution R, but also
presents how that solution can be encoded in different continuous and discrete search
spaces. Also, it presents the increased precision of subareas definitions with the larger
number of requests’ clusters per vehicle.
In order to apply a continuous algorithm to a discrete problem (such as VRP) either the algorithm operator need to be modified, to utilize a discrete search space, or
the problem search space needs to be defined in a way allowing for the application of
the continuous operators. All of the mentioned continuous encodings have been utilized by a Particle Swarm Optimization (PSO) algorithm. While the Marinakis et al.
(2013) approach modified the velocity change operator, the Ai and Kachitvichyanukul
(2009a) and Okulewicz and Mańdziuk (2014) approaches made no changes to the PSO,
assuming only the population nature of the optimization algorithm. Therefore, DVRP
results for both types of those encodings are presented in this paper.
3.2
Particle Swarm Optimization
PSO is an iterative global optimization metaheuristic method proposed by Kennedy
and Eberhart (1995) and further studied and developed by many other researchers,
e.g., Shi and Eberhart (1998b,a); Trelea (2003). The underlying idea of the PSO algorithm consists in maintaining the swarm of particles moving in the search space. For
each particle the set of neighboring particles which communicate their positions and
function values to this particle is defined. Furthermore, each particle maintains its current position and velocity, as well as remembers its historically best (in terms of solution
quality) visited location. More precisely, in each iteration t, each particle i updates its
position xit and velocity vti based on the following formulas:
Position update
The position is updated according to the following equation:
xit+1 = xit + vti .
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
(8)
7
M.Okulewicz and J.Mańdziuk
Velocity update
In our implementation of PSO (based on Clerc (2012) and Shi and Eberhart (1998b))
velocity vti of particle i is updated according to the following rule:
(1)
i
i
vt+1
=uU [0;g] (xneighbors
− xit )+
best
(2)
uU [0;l] (xibest − xit ) + a · vti
(9)
i
where g is a neighborhood attraction factor, xneighbors
represents the best position (in
best
terms of optimization) found hitherto by the particles belonging to the neighborhood
of the ith particle, l is a local attraction factor, xibest represents the best position (in
(1)
terms of optimization) found hitherto by particle i, a is an inertia coefficient, uU [0;g] ,
(2)
uU [0;l] are random vectors with uniform distribution from the intervals [0, g] and [0, l],
respectively.
In our study we use the Standard Particle Swarm Optimization 2007 (SPSO07) (Clerc, 2012) with random star neighborhood topology, in which, for each particle,
we randomly assign its neighbors, each of them independently, with a given probability3 .
3.3
Differential Evolution
DE is an iterative global optimization algorithm introduced by Storn and Price (1997).
In DE the population is moving in the search space of the objective function by testing
the new locations for each of the specimen created by crossing over:
• the original xi specimen,
• a specimen created by summing up a scaled difference vector between two random
specimen (x(1) , x(2) ) with a third random specimen (x(3) ).
More precisely we use a standard DE/rand/1/bin configuration in which in each iter(3)
ation t and for each specimen xit in the population a random specimen xt is chosen
(1)
(2)
and mutated by a difference vector between random specimens xt and xt scaled by
F ∈ R:
(3)
(3)
(2)
(1)
yt = xt + F × (xt − xt )
(10)
(1)
(2)
(3)
where all random specimens xt , xt , xt are different from each other and from xit .
(3)
Subsequently, the mutant yt is crossed-over with xit by binomial recombination
with probability p:
(3)
yti = Binp (xit , yt )
(11)
Finally, the new location yti replaces original xit iff it provides a better solution in terms
of the objective function f :
xit+1 =
yti
xit
if f (yti ) < f (xit )
otherwise
(12)
3 Please, note that the “neighboring” relation is not symmetrical, i.e. the fact that particle y is a neighbor
of particle x, does not imply that x is a neighbor of y.
8
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
1.0
Dynamics of problem changes
1.0
Dynamics of problem changes
0.6
0.2
0.4
Relative distance
0.8
ContDVRP 0.7
ContDVRP 0.6
ContDVRP 0.5
0.0
0.0
0.2
0.4
0.6
Relative distance
0.8
ContDVRP 0.7
ContDVRP 0.6
ContDVRP 0.5
0
10
20
30
40
0
Time step
10
20
30
40
Time step
(a) Average relative number of available re- (b) Average relative number of vehicles.
quests.
Figure 2: DVRP dynamics for varying cut-off time (TCO = {0.5, 0.6, 0.7}).
4
Dynamic features of DVRP
According to Nguyen et al. (2012), true dynamic optimization problem is the one where
the decisions within the optimized system need to be made during the optimization
process, thus having impact on the state of the problem and its cost function. The
DVRP is not only a dynamic optimization problem, according to that statement, but it
also has two distinctive additional features:
• the number of requests available for optimization shrinks with ultimate commitment of a vehicle to a given request,
• the number of requests available for optimization may grow until the cut-off time.
The fact that some of the requests stop being available for optimization does not necessarily need to be addressed, in any other way than masking any changes in the candidate solution concerning them, while the possibility of additional requests appearance
makes the DVRP a special case of a dynamic optimization problem.
This section presents an initial assessment of the dynamism of the benchmark instances and proposes a method of accounting for the characteristic type of the DVRP
dynamism.
4.1
Measuring dynamics of the problem
In order to compare various approaches and choose additional optimization techniques
it is useful to observe and measure the dynamics of a given problem. From the practical
point of view the most important change in a DVRP solution R is reassignment of
the requests between vehicles. The reason being, that each reassignment generates
additional operational costs related to informing all of the involved drivers about the
change. Therefore, the optimization process which generates less such changes during
the working day (between the estimated optimal solutions for the subsequent problem
states) will be regarded as more stable.
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
9
M.Okulewicz and J.Mańdziuk
In order to measure the impact of the operational parameters of the DVRP on the
problem instance dynamic characteristics degree of dynamism and empirical degree of dynamism are introduced.
Definition 1 Degree of dynamism (dod) (Lund et al., 1996) is the ratio of the number of
unknown requests mu to the total number of requests m within the instance of the DVRP.
dod =
mu (tstart )
m
(13)
Because the dod captures only the part of the dynamic nature, Larsen (2000) introduced also an effective degree of dynamism to capture an average measure of the requests
availability during the whole optimization process. In this paper, in order to capture
a minimal part of the data unavailable for the optimization process during the whole
working day, we propose an empirical degree of dynamism measure.
Definition 2 Empirical degree of dynamism (em.dod) is the minimal ratio of the sum of
the number of unknown (mu ) and the number of ultimately assigned (ma ) requests to the total
number of requests m within the instance of the DVRP observed during the whole optimization
process.
mu (ti ) + ma (ti )
(14)
em.dod =
min
m
i∈{0,1,...,NT S }
Figure 2 presents the changes in the relative number of pending requests and relative number of vehicles needed to serve those requests. It can be observed, that the
average value of dod is around the TCO , while the average em.dod values are much
smaller, being around 0.2, 0.4, 0.55 for TCO equal to 0.5, 0.6 and 0.7 respectively. It can
be also observed, that the process of accepting new pending solutions is faster than the
process of assigning them ultimately till around half of the working day, regardless of
the value of TCO .
In order to measure the stability of the partial solutions obtained during the optimization process for the intermediate states of the problem instance a relative solution
distance is introduced.
Definition 3 Relative solutions distance (ρ(Rtj , Rtk )) is the number of requests known in
solutions Rtj and Rtk assigned to different vehicles divided by the total number of requests
known in both solutions.
P
P
I (i ∈ rl (tj ) ∧ i 6∈ rl (tk ))
ρ(Rtj , Rtk ) =
i6∈CU (tj )∧i6∈CU (tk ) rl (tj )∈Rtj
|{i : i 6∈ CU (tj ) ∧ i 6∈ CU (tk )}|
,
(15)
where I is an indicator function and CU (t) a set of requests unknown at time t.
4.2
Solution transfer between problem states
Since initial works on DVRP (Montemanni et al., 2005a,b; Hanshar and OmbukiBerman, 2007), using the Kilby et al. (1998) instances, some form of passing the solutions from previous time slices has been used. At the same time it seems to be counter
intuitive that no other method, accounting for the particular dynamic features of this
problem, has been introduced.
The discrete GA and MEMSO approaches to solving DVRP migrate the solution
from a previous time step and adapt it to a new state of the problem. ContDVRP follows the path of Ant Colony System (ACS), where the rules for creating the solution are
10
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
2
2
11
2
5
5
7
3
8
7
1
3
8
10
7
1
3
8
10
6
6
10
4
9
4
9
0
0
(a) Solution found in the ith
time slice.
1
6
4
9
11
5
0
(b) Ultimate assignment of
the “5”, “8” and “9” requests, introduction of a new
pending request (“11”).
(c) Routes generated at the
beginning of the i + 1 time
slice by the migrated solution.
Figure 3: High quality solution found immediately at the beginning of the next time
slice due to application of direct passing knowledge transfer. By preserving the requests cluster centers found in a previous time slices it is possible to speed up the
optimization process, which does not need to search again for a non-trivial solutions
linearly non-separable solutions.
2
2
1
4
8
11
6
3
4
8
9
10
10
(a) Solution found in the ith
time slice.
11
(b) Ultimate assignment of
the “5”, “8”, “9” and “10” requests, computing the cluster centers for the pending
requests, introduction of a
new pending request (“11”).
4
8
6
3
0
7
9
1
5
6
3
0
7
2
1
5
5
0
7
9
10
(c) Routes generated at the
beginning of the i + 1 time
slice by the adapted solution.
Figure 4: High quality solution found immediately at the beginning of the next time
slice due to application of approximation retrieval knowledge transfer. Cluster centers generated by approximation retrieval method follow the average location of the
pending requests assigned to the same vehicle. Therefore, new pending request “11”
is assigned to the vehicle, which is currently expected to operate in the proximity of its
location, instead of the one that has already served the requests “8” and “5”.
migrated and adapted. For the ACS that that idea has been implemented by migrating
and adapting the pheromone levels matrix. For the ContDVRP it results in transferring
the cluster centers for the vehicles. The adaptation is performed by adding a new random requests cluster centers, if more vehicles seem to be needed than for the previous
state of the problem. The number of necessary vehicles is estimated from the number of
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
11
M.Okulewicz and J.Mańdziuk
clusters obtained by solving the capacitated clustering problem over the set of known
requests Okulewicz and Mańdziuk (2015, 2016).
ContDVRP utilizes two types of cluster centers transfers (therefore, two distinct
solutions are inserted within the population): the approximation retrieval and direct
passing.
Approximation retrieval creates a continuous representation on the basis of the discrete solution. The average locations of all the pending requests assigned to the
same vehicle are computed and disturbed with a small random variable for a different clusters centers assigned to the same vehicle.
Direct passing creates the solution for a new state of the problem directly from the
continuous candidate solution for a previous state of the problem instance.
Both methods have their advantages. Direct passing preserves the linearly nonseparable requests’ clusters (cf. Figure 3), while approximation retrieval follows the
areas in which the routes of the vehicle can still be updated (cf. Figure 4).
0.5
0.0
-0.5
-1.0
-1.0
-0.5
0.0
0.5
1.0
Capacity buffer
1.0
Penalty function
0.0
0.2
0.4
0.6
0.8
1.0
0.0
0.2
0.6
0.8
1.0
0.8
1.0
0.5
0.0
-0.5
-1.0
-1.0
-0.5
0.0
0.5
1.0
Final state
1.0
No modifiers
0.4
0.0
0.2
0.4
0.6
0.8
1.0
0.0
0.2
0.4
0.6
Figure 5: Comparison of the partial solutions for the intermediate problem states with
the shape of the final solution, when all the requests become known. Known requests
are marked as discs and unknown as circles, with the depot marked in a center as a
square. Three left subplots present the solutions that can be obtained: (a) if a penalty
function is applied, (b) if a capacity buffer or finish time buffer is applied to each of the
vehicles, (c) no changes are made to the problem or cost function.
4.3
Accounting for the unknown solutions
Okulewicz and Mańdziuk (2015) proposed an initial version of approach estimating
12
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
the expected number of unknown requests and their locations. That method improved
the results obtained by a simple clustering heuristic, but has not been applied within a
metaheuristic approach due to its own high computational cost, coming from generating multiple artificial expected requests. Version used in this paper has a lower number
2
of assumptions and influences computational cost only by around a TCO
factor, due
2
to increased size of a search space. The proposed approach is inspired by a robust optimization methodology and results in adding a penalty function to the solution cost
function. The role of the designed penalty function is to entice the optimization process into providing the solutions with higher number of vehicles than are necessary for
the currently known requests, in order to create solutions able to accommodate new
incoming requests (cf. Figure 5).
1.0
Dynamics of problem changes
1.0
Dynamics of problem changes
0.6
0.8
ContDVRP+P 0.7
ContDVRP+P 0.6
ContDVRP+P 0.5
0.0
0.2
0.4
Relative distance
0.6
0.4
0.0
0.2
Relative distance
0.8
ContDVRP+P 0.7
ContDVRP+P 0.6
ContDVRP+P 0.5
0
10
20
30
40
0
10
Time step
20
30
40
Time step
(a) Average relative number of available re- (b) Average relative number of vehicles.
quests.
Figure 6: DVRP dynamics for varying cut-off time (TCO = {0.5, 0.6, 0.7}) after applying
the penalty function.
The estimating of the number of vehicles assumes that:
• average frequency of new requests remains the same during the optimization period,
• known requests sizes correctly estimate the final requests sizes.
Proposed method estimates the total number of vehicles needed for the final solution ntend . Estimation n̂tend is computed on the basis of frequency and size assumptions:
&
'
mt
TCO (tend − tstart ) + tstart − t X
si
n̂tend (t) =
∗
(16)
TCO (tend − tstart ) − tstart + t i=1 cap
The computed estimation is utilized both in the heuristic clustering algorithm and the
additional penalty function used in the metaheuristic optimization. Penalty function
is added to the cost function in time t if the current number of used vehicles n̂R (t) is
smaller than the estimated number of vehicles in the final solution n̂tend (t).
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
13
M.Okulewicz and J.Mańdziuk
The estimation is used in the modified Kruskal algorithm, used to solve the capacitated clustering problem (Okulewicz and Mańdziuk, 2016), as additional stopping
criterion. If the number of clusters is equal to the estimation n̂tend (t) the clustering finishes. Penalty function enlarges the cost function by as many average routes length
form the current R solution as the value of the difference between n̂R and ntend :
Cost(R)
P enalty(R, t) = n̂tend (t) − n̂R ∗
n̂R
5
(17)
Parallel Services environment and the ContDVRP algorithm
Parallel Services
Discrete
approach
Continuous
requests’
priorities and
cluster centers
Discrete giant
TSP tour
GA
Continuous
approach
PSO
Continuous
requests’
cluster centers
DE
PSO
DE
Figure 7: The classification of the implemented methods for solving DVRP.
In order to assess the impact of the problem encoding on the quality of the obtained solution and the stability of the partial solutions for the intermediate states of
the problem, a Two-Phase Multi-Swarm Particle Swarm Optimization algorithm for
DVRP (2MPSO), developed by Okulewicz and Mańdziuk (2013, 2014, 2016), has been
generalized on two levels:
• the continuous population-based optimization algorithm and the solution search
space utilized by that algorithm became the parameter of the method, forming a
general continuous optimization approach,
• within the custom environment of a parallel optimization services it is possible to
run a continuous or discrete encoding based optimization algorithms.
The whole computations environment is denoted as Parallel Services, while any
form of continuous requests’ clusters based encoding with direct and indirect solution
transfer is denoted as ContDVRP. Figure 7 presents the optimization configurations
possible to run within the Parallel Services environment: discrete approach using GA
with discrete giant TSP tours encoding (Hanshar and Ombuki-Berman, 2007) and PSO
or DE utilizing continuous encodings developed by Okulewicz and Mańdziuk (2014)
and Ai and Kachitvichyanukul (2009a).
The .NET Parallel Services, ContDVRP and GA code is available at https:
//sourceforge.net/projects/continuous-dvrp/, while the set of parameters
used for experiments in this study is presented in Tables 1 and 2.
14
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
Table 1: Parameter values for the baseline experiments run within the Parallel Services
environment, both the limited by the number of fitness function evaluations (FFE) and
the computations time limit (Time budget).
Value(s)
FFE budget Time budget
Parallel Processes
#parallel optimization processes
8
8
nts
40
40
PSO
g
0.60
0.60
2.20
2.20
l
a
0.63
0.63
0.50
0.50
P (X is a neighbor of Y )
#iterations
140
1.875 sec.
#particles
22
22
DE
c
0.9
0.9
F
0.5
0.5
#iterations
195
1.875 sec.
#specimen
16
16
GA
P (mutate X)
0.15
N/A
tournament size
2
N/A
P (selecting lower quality solution)
0.2
N/A
elite size
2
N/A
#iterations
140
N/A
#specimen
22
N/A
Parameter
Table 2: The settings for the experiments conducted in this study.
Encoding
Clusters
Clusters
Giant TSP tour
Clusters
Clusters
Giant TSP tour
Clusters
Clusters
Giant TSP tour
Clusters and ranks
Clusters
Clusters and ranks
Clusters
Clusters
Evolutionary Computation
Algorithm
PSO
PSO
GA
PSO
PSO
GA
PSO
PSO
GA
PSO
DE
DE
DE
DE
Stopping criterion
#FFE
#FFE
#FFE
#FFE
#FFE
#FFE
#FFE
#FFE
#FFE
#FFE
#FFE
#FFE
Time limit
Time limit
Penalty
No
Yes
N/A
No
Yes
N/A
No
Yes
N/A
No
No
No
No
Yes
Volume PREPRINT IN REVIEW, Number
k
2
2
N/A
2
2
N/A
2
2
N/A
2
2
2
1
1
TCO
0.5
0.5
0.5
0.6
0.6
0.6
0.7
0.7
0.7
0.5
0.5
0.5
0.5
0.5
TAC
0.04
0.20
0.15
0.20
0.25
0.20
0.30
0.35
0.35
0.04
0.04
0.04
0.04
0.20
15
M.Okulewicz and J.Mańdziuk
Table 3: Comparison of the ContDV RP and the implementation of a GA method for
the Parallel Services with MEMSO (Khouadjia et al., 2013), one of the state-of-the-art
literature DVRP solving algorithm for the computations limited by a number of FFE.
The numbers in the parentheses respectively denote: the number of time slices, the
number of optimizers and the number of FFE within each optimizer in each time slice.
The best minimum and average values within each setup are bolded and the statistically significant differences between authors’ and literature results are marked with a
grey background. The statistical significance has been measured by a one-sided t-tests
with α = 0.05.
c50
c75
c100b
c100
c120
c150
c199
f71
f134
tai75a
tai75b
tai75c
tai75d
tai100a
tai100b
tai100c
tai100d
tai150a
tai150b
tai150c
tai150d
6
M EM SO
(25 ∗ 8 ∗ (0.5 ∗ 104 ))
Min
Avg
577.60
592.95
928.53
962.54
864.19
878.81
949.83
968.92
1164.63
1284.62
1274.33
1327.24
1600.57
1649.17
283.43
294.85
14814.10 16083.82
1785.11
1837.00
1398.68
1425.80
1490.32
1532.45
1342.26
1448.19
2170.54
2213.75
2093.54
2190.01
1491.13
1553.55
1732.38
1895.42
3253.77
3369.48
2865.17
2959.15
2510.13
2644.69
2872.80
3006.88
GA
(40 ∗ 8 ∗ (0.31 ∗ 104 ))
Min
Avg
574.71
600.56
875.34
938.20
844.69
919.17
924.42
965.65
1208.36
1282.52
1168.37
1228.99
1476.06
1524.69
286.07
307.87
11936.42
13055.75
1705.21
1787.79
1365.21
1420.97
1439.21
1532.23
1428.75
1466.43
2141.29
2230.84
2110.11
2211.16
1476.91
1537.92
1680.29
1799.04
3314.22
3471.67
2919.36
3071.33
2544.24
2729.26
2845.01
2973.14
ContDV RPPk=2
SO
(40 ∗ 8 ∗ (0.31 ∗ 104 ))
Min
Avg
544.11
578.31
884.43
903.72
819.56
845.80
902.00
933.46
1053.18
1071.38
1098.03
1134.20
1362.65
1408.70
274.16
298.50
11746.40 11892.00
1685.23
1805.03
1365.36
1422.60
1439.02
1510.00
1408.79
1433.25
2137.30
2216.23
2060.65
2136.80
1458.81
1494.72
1663.87
1727.95
3338.71
3530.82
2910.06
3026.89
2497.65
2603.53
2869.79
3009.01
ContDV RPPk=2
SO + P
(40 ∗ 8 ∗ (0.31 ∗ 104 ))
Min
Avg
551.34
580.56
886.42
901.05
819.56
844.56
873.77
920.69
1056.70
1116.08
1097.27
1127.04
1374.47
1418.71
270.20
275.27
11713.20
11810.04
1691.95
1782.79
1356.50
1401.38
1424.91
1486.78
1403.85
1428.91
2147.07
2226.48
2041.96
2125.19
1446.98
1485.47
1658.48
1718.18
3396.49
3526.10
2931.16
3034.65
2523.53
2642.82
2929.91
3023.48
Results
In order to present the advantages of using the continuous encoding and effects of
adding a penalty function to the cost function a 30 algorithm runs have been performed
for each of the 21 benchmark instances (Kilby et al., 1998) within each of the algorithm
parameters setting (presented in Table 2). The experiments have been performed for
both types of the stopping criterion used in the DVRP literature: the number of fitness
function evaluations (FFE) (Khouadjia et al., 2013; Okulewicz and Mańdziuk, 2014)
and computations time limit (Hanshar and Ombuki-Berman, 2007; Montemanni et al.,
2005a). ContDVRP approaches are denoted with the type of optimization algorithm
(DE or P SO), number of requests clusters per vehicle (k = {1, 2}) and usage of a
penalty function (+P ). When appropriate, the cut-off time value (TCO = {0.5, 0.6, 0.7})
and the type of the encoding (clusters only or priorities and clusters) are also given.
6.1
Comparison with the state-of-the art results
The baseline comparison of the proposed ContDVRP approach with the state-of-the-art
literature results is presented in Table 3, for the FFE limited computations, and Table
4, for the time limited computations. The total number of FFE has been set to 106 , in
order to remain comparable with the results of MEMSO and 2MPSO algorithms. The
16
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
Table 4: Comparison of the ContDV RP method with the GA (Hanshar and OmbukiBerman, 2007), a leading literature DVRP solving algorithm for the time limited experiments. The numbers in the parentheses respectively denote: the number of time slices,
the number of optimizers and the time limit within each optimizer in each time slice.
The best minimum and average values within each setup are bolded and the statistically significant differences between authors’ and literature results are marked with a
grey background. The statistical significance has been measured by a one-sided t-tests
with α = 0.05.
c50
c75
c100b
c100
c120
c150
c199
f71
f134
tai75a
tai75b
tai75c
tai75d
tai100a
tai100b
tai100c
tai100d
tai150a
tai150b
tai150c
tai150d
GA
(25 ∗ 1 ∗ 30sec.)
Pentium [email protected]
Min
Avg
570.89
593.42
981.57
1013.45
881.92
900.94
961.10
987.59
1303.59
1390.58
1348.88
1386.93
1654.51
1758.51
301.79
309.94
15528.81
15986.84
1782.91
1856.66
1464.56
1527.77
1440.54
1501.91
1399.83
1422.27
2232.71
2295.61
2147.70
2215.39
1541.28
1622.66
1834.60
1912.43
3328.85
3501.83
2933.40
3115.39
2612.68
2743.55
2950.61
3045.16
k=1
ContDV RPDE
(40 ∗ 8 ∗ 1.875sec.)
Core [email protected]
Min
Avg
555.05
578.58
890.08
907.47
820.62
839.50
894.89
939.61
1060.76
1116.12
1119.32
1154.64
1385.30
1449.77
272.56
296.03
11860.33 12069.21
1742.63
1816.30
1410.29
1441.39
1436.31
1492.03
1419.51
1453.04
2149.22
2234.19
2081.83
2154.17
1463.07
1518.16
1697.33
1732.13
3381.65
3528.20
2937.64
3087.32
2480.86
2564.34
2891.29
3067.26
k=1
ContDV RPDE
+P
(40 ∗ 8 ∗ 1.875sec.)
Core [email protected]
Min
Avg
531.96
574.77
889.71
910.02
819.97
851.40
901.62
944.00
1062.84
1089.35
1095.57
1142.95
1405.19
1449.87
271.84
281.20
11788.55 12025.71
1719.58
1787.19
1423.14
1451.78
1444.17
1515.71
1408.42
1429.92
2188.14
2257.40
2076.46
2143.99
1446.52
1508.30
1667.75
1738.25
3350.53
3622.59
2924.91
3040.61
2569.35
2722.14
2973.85
3087.89
total time limit of 75 seconds for parallel computations on an Intel Core i7 processor
used in our experiments has been set to match the computational power of a sequential
computations on an Intel Pentium IV processor, used by GA (Hanshar and OmbukiBerman, 2007) with total time limit of 750 seconds.
Table 5: Summary of the results obtained for a standard cut-off time value TCO = 0.5 in
comparison with the state-of-the-art MEMSO (Khouadjia et al., 2013) and GA (Hanshar
and Ombuki-Berman, 2007) approaches for the FFE and time limited computations,
respectively.
Experiment
ContDV RPPk=2
SO + P
k=2
ContDV RPP SO
GA in Parallel Services
k=2
ContDV RPDE
+P
k=2
ContDV RPDE
State-of-the-art approach
MEMSO
MEMSO
MEMSO
GA
GA
Average improvement
5.25%
4.78%
1.15%
6.70%
6.73%
The ContDVRP approach using a single cluster approach with DE algorithm for
time limited experiments, and a double cluster approach with PSO algorithm for the
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
17
M.Okulewicz and J.Mańdziuk
FFE limited experiments achieved a better average results than the respective GA and
MEMSO literature state-of-the-art algorithms. Moreover, GA run in a Parallel Services
environment achieved a slightly better average result than the literature results of the
MEMSO algorithm. Usage of a penalty function results in a larger dimension of a solution search space. Therefore, using the penalty function combined with the cost function for the FFE limited experiments resulted in improvement over the results of the
optimization process using only a cost function, while for the time limited experiments
a small deterioration in the average results has been observed. Table 5 summarizes the
obtained results for cut-off time set in the middle of the working day.
6.2
Assessment of the encoding and penalty function impact
Table 6: Summary of the average results of the double clusters per vehicle ContDVRP
approach with varying metaheuristic and type of continuous encoding. The best average values within each setup are bolded and the statistically significantly worse results
are marked with a grey background. The statistical significance has been measured by
a one-sided t-tests with α = 0.05.
Name
c50
c75
c100
c100b
c120
c150
c199
f71
f134
tai75a
tai75b
tai75c
tai75d
tai100a
tai100b
tai100c
tai100d
tai150a
tai150b
tai150c
tai150d
sum
Only clusters
P SO
DE
Avg
Avg
578.31
580.02
903.72
908.28
933.46
937.07
845.80
843.83
1071.38 1104.61
1134.20
1140.14
1408.7
1414.85
298.5
295.58
11892
11916.7
1805.03
1807.49
1422.60
1412.85
1510.00
1501.64
1433.25 1451.04
2216.23 2247.21
2136.80
2145.85
1494.72
1495.87
1727.95
1736.33
3530.82
3489.65
3026.89
3038.63
2603.53
2563.01
3009.01
2999.43
44982.90 45030.08
Priorities and clusters
P SO
DE
Avg
Avg
583.49
581.24
901.63
904.11
932.76
936.92
842.85
826.82
1082.02
1079.75
1145.89
1147.87
1412.28
1407.8
292.92
289.48
11969.68
12006
1817.41
1812.93
1411.7
1419.86
1501.91
1523.06
1442.31
1444.14
2251.18
2229.71
2126.98
2157.35
1494.31
1502.06
1742.27
1729.63
3528.1
3453.73
3014.45
3023.50
2574.42
2562.45
2955.65
2987.38
45024.21
45025.79
The second set of experiments has been performed in order to assess the impact of the choice of the continuous encoding and the optimization algorithm utilizing it. Table 6 presents the comparison for the double clustered encodings with and
without requests priorities utilized by PSO or DE algorithm. It can be observed that
none of the four configurations had a clear advantage over the other three. The baseline ContDV RPPk=2
SO without requests priorities obtained 8 best average results and
5 statistically significantly worse average results than the best average result from
one of the other configurations. The values of the same metrics have been 1 to 5 for
k=2
ContDV RPDE
without requests priorities, 7 to 4 for ContDV RPPk=2
SO with requests
k=2
priorities and 5 to 3 for ContDV RPDE
with requests priorities. It is important to note,
18
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
Table 7: Summary of the average results of the penalty approach for varying cut-off
time.
Name
c50
c75
c100
c100b
c120
c150
c199
f71
f134
tai75a
tai75b
tai75c
tai75d
tai100a
tai100b
tai100c
tai100d
tai150a
tai150b
tai150c
tai150d
sum
ContDV RPPk=2
SO + P
TCO = 0.5
Min
Avg
551.34
580.56
886.42
901.05
873.77
920.69
819.56
844.56
1056.7
1116.08
1097.27
1127.04
1374.47
1418.71
270.2
275.27
11713.2
11810.04
1691.95
1782.79
1356.5
1401.38
1424.91
1486.78
1403.85
1428.91
2147.07
2226.48
2041.96
2125.19
1446.98
1485.47
1658.48
1718.18
3396.49
3526.1
2931.16
3034.65
2523.53
2642.82
2929.91
3023.48
43595.72
44876.23
ContDV RPPk=2
SO + P
TCO = 0.6
Min
Avg
579.78
602.23
886.17
944.82
934.57
988.91
824.38
839.56
1206.7
1255.44
1121.12
1184.9
1400.53
1445.99
286.7
318.54
11804.33
11963.52
1738.86
1859.9
1375.46
1413.49
1453.87
1524.47
1476.65
1520.23
2177.51
2231.35
2071.83
2165.51
1551.75
1676.66
1673.19
1719.4
3387.75
3601.21
2976.8
3079.57
2464.72
2626.94
2927.44
3133.48
44320.11
46096.12
ContDV RPPk=2
SO + P
TCO = 0.7
Min
Avg
714.38
766.67
950.96
1004.69
1012.24
1091.49
865.18
1006.01
1326.5
1416.88
1194.96
1272.62
1525.32
1610.45
354.6
387.25
11731.95
11898.52
1847.61
1981.86
1483.51
1566.71
1451.14
1581.5
1500.56
1565.57
2315.86
2477.76
2117.79
2302.81
1733.95
1846.85
1899.32
2043.63
4048.82
4472.62
3269.54
3632.86
2523.54
2633.84
3032.81
3189.79
46900.54
49750.38
k=2
without requests priorities has been on average 21% faster
that the ContDV RPDE
k=2
than the baseline ContDV RPPk=2
SO without requests priorities and ContDV RPDE with
requests priorities has been on average 0.2% better than the baseline ContDV RPPk=2
SO
without requests priorities.
Final set of experiments has been performed in order to present reference results
for the larger values of the cut-off time on a set of well-known benchmark instances,
due to behavior of the algorithms for varying value of TCO given by Khouadjia et al.
(2012) only for a custom set of benchmark instances. Table 7 and Figure 8 present the
results for the ContDVRP approach with the penalty function and their comparison
with the GA and ContDVRP without the penalty function. The average results presented in Figure 8 are given in relation to the best known values for TCO = 0.5 in order
to observe the impact of growing degree of dynamism of the problems regardless of
the optimization algorithm. It can be observed that average relative performance of
ContDVRP and GA algorithms remains similar for TCO equal to 0.5 and 0.6, with ContDVRP gaining more advantage over GA for TCO = 0.7. Average performance of the
ContDVRP with and without penalty function is roughly similar, with the results of the
ContDV RP + P being more stable during the optimization process (cf. Figure 9), but
computations slower by 23% due to increased number of estimated vehicles n̂ for the
intermediate states of the problem (therefore, the number of dimensions of the search
space).
7
Conclusions
Research results presented in this paper confirm that discrete Dynamic Vehicle Routing
Problem can be efficiently solved in a continuous search space. The proposed ContEvolutionary Computation
Volume PREPRINT IN REVIEW, Number
19
M.Okulewicz and J.Mańdziuk
1.35
Mean results
1.25
No Penalty
1.20
Penalty
1.15
GA
GA
Penalty No Penalty
1.10
Relative to the best known result
1.30
GA
Penalty
No Penalty
0.50
0.55
0.60
0.65
0.70
Cut-off time
Figure 8: Average results relative to the best known values for TCO = 0.5 for varying
cut-off time. Plot compares the performance of GA run in Parallel Services environment
k=2
(GA), ContDV RPPk=2
SO (N oP enalty) and ContDV RPP SO + P (P enalty).
DVRP algorithm yields better average solutions than MEMSO (Khouadjia et al., 2013)
and GA (Hanshar and Ombuki-Berman, 2007) discrete approaches. It has also been
presented that the average quality of ContDVRP solutions is, to a certain degree, independent of the optimization algorithm, as both PSO and DE accomplished similar
results for both types of continuous encodings. Additionally, our research revealed
that GA, run within the limited FFE framework, gives results competitive to MEMSO,
and therefore can be used as a reference algorithm utilizing discrete search space.
Since standard degree of dynamism dod does not fully capture dynamic nature of
the problem, the empirical degree of dynamism em.dod has been proposed which refers
to the minimal ratio of fixed and unknown requests during the optimization process
(see Figure 2 for the differences between dod and em.dod). Following the observation
of availability of requests data at the level of 80%, for the cut-off time set in the middle
of the working day, a new results for a higher values of TCO have been computed for
ContDVRP and GA (see Table 7 and Figure 8 for detailed results) on a set of well-known
benchmark instances (Kilby et al., 1998).
Using continuous encoding with a vector size related to the number of estimated
vehicles allows for stabilization of the optimization process (cf. Figure 9) by means
of applying a robust-like approach to a design of a penalty function. It can also be
observed, that ContDVRP generates more stable sequence of partial solutions than GA,
even without the penalty function.
Finally, proposed continuous encoding induces a division of the operational area in
a way familiar for (human) vehicles dispatchers, which can be further tuned to provide
a more precise division using higher number of requests clusters per vehicle, albeit at
20
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
1.0
Dynamics of problem changes
1.0
Dynamics of problem changes
0.6
0.8
Hanshar's GA
ContDVRP+0.0P 0.04
ContDVRP+1.0P 0.2
0.0
0.2
0.4
Relative distance
0.6
0.4
0.0
0.2
Relative distance
0.8
Hanshar's GA
ContDVRP+0.0P 0.04
ContDVRP+1.0P 0.2
0
10
20
30
40
0
10
Time step
20
30
40
Time step
(a) Average relative number of available re- (b) Average relative number of vehicles.
quests.
1.0
Dynamics of problem changes
1.0
Dynamics of problem changes
0.6
0.8
Hanshar's GA
ContDVRP+0.0P 0.04
ContDVRP+1.0P 0.2
0.0
0.2
0.4
Relative distance
0.6
0.4
0.0
0.2
Relative distance
0.8
Hanshar's GA
ContDVRP+0.0P 0.04
ContDVRP+1.0P 0.2
0
10
20
30
40
0
Time step
10
20
30
40
Time step
(c) Average relative number of requests reas- (d) Average solutions distance to final solution.
signments.
Figure 9: DVRP dynamics for varying optimization approaches.
the cost of longer computation.
The most salient feature of the proposed continuous encoding scheme is its complete independence of the optimization method used to solve the DVRP. Consequently,
practically any general-purpose optimization metaheuristics can be employed for solving this task.
References
Ai, T. J. and Kachitvichyanukul, V. (2009a). A particle swarm optimization for the vehicle
routing problem with simultaneous pickup and delivery. Computers and Operations Research,
36(5):1693–1702.
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
21
M.Okulewicz and J.Mańdziuk
Ai, T. J. and Kachitvichyanukul, V. (2009b). Particle swarm optimization and two solution representations for solving the capacitated vehicle routing problem. Computers & Industrial Engineering, 56(1):380–387.
Ben-Tal, A. and Nemirovski, A. (2002). Robust optimization - methodology and applications.
Mathematical Programming, 92(3):453–480.
Beyer, H. G. and Sendhoff, B. (2007). Robust optimization - A comprehensive survey. Computer
Methods in Applied Mechanics and Engineering, 196(33-34):3190–3218.
Branke, J., Orbayi, M., and Uyar, S˛. (2006). The role of representations in dynamic knapsack problems. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence
and Lecture Notes in Bioinformatics), 3907 LNCS:764–775.
Clerc, M. (2012). Standard {PSO} 2007 and 2011.
Croes, G. A. (1958). A method for solving traveling salesman problems. Operations Res. 6, pages
791–812.
Dantzing, G. B. and Ramser, J. H. (1959). The Truck Dispatching Problem. Management Science,
6(1):80–91.
Hanshar, F. T. and Ombuki-Berman, B. M. (2007). Dynamic vehicle routing using genetic algorithms. Applied Intelligence, 27(1):89–99.
Jin, Y. and Branke, J. (2005). Evolutionary Optimization in Uncertain Environments—A Survey.
IEEE Transactions on Evolutionary Computation, 9(3):1–15.
Kennedy, J. and Eberhart, R. (1995). Particle Swarm Optimization. Proceedings of IEEE International Conference on Neural Networks. IV, pages 1942–1948.
Khouadjia, M. R., Alba, E., Jourdan, L., and Talbi, E.-G. (2010). Multi-Swarm Optimization for
Dynamic Combinatorial Problems: A Case Study on Dynamic Vehicle Routing Problem. In
Swarm Intelligence, volume 6234 of Lecture Notes in Computer Science, pages 227–238. Springer,
Berlin / Heidelberg.
Khouadjia, M. R., Sarasola, B., Alba, E., Jourdan, L., and Talbi, E.-G. (2012). A comparative
study between dynamic adapted PSO and VNS for the vehicle routing problem with dynamic
requests. Applied Soft Computing, 12(4):1426–1439.
Khouadjia, M. R., Talbi, E.-G., Jourdan, L., Sarasola, B., and Alba, E. (2013). Multi-environmental
cooperative parallel metaheuristics for solving dynamic optimization problems. Journal of Supercomputing, 63(3):836–853.
Kilby, P., Prosser, P., and Shaw, P. (1998). Dynamic VRPs: A Study of Scenarios.
Larsen, A. (2000). The Dynamic Vehicle Routing Problem. rozprawa doktorska, Technical University
of Denmark.
Lin, C., Choy, K. L., Ho, G. T. S., Lam, H. Y., Pang, G. K. H., and Chin, K. S. (2014). A decision support system for optimizing dynamic courier routing operations. Expert Systems with
Applications, 41(15):6917–6933.
Lund, K., Madsen, O. B. G., and Rygaard, J. M. (1996). Vehicle routing with varying degree of
dynamism. Technical report.
Mańdziuk, J. and Żychowski, A. (2016). A memetic approach to vehicle routing problem with
dynamic requests. Applied Soft Computing, 48:522–534.
Marinakis, Y., Iordanidou, G.-R., and Marinaki, M. (2013). Particle Swarm Optimization for the
Vehicle Routing Problem with Stochastic Demands. Applied Soft Computing Journal, 13(4):1693–
1704.
22
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
Solving DVRP in a continuous search space
Montemanni, R., Gambardella, L. M., Rizzoli, A., and Donati, A. (2005a). A new algorithm
for a dynamic vehicle routing problem based on ant colony system. Journal of Combinatorial
Optimization, 10:327–343.
Montemanni, R., Gambardella, L. M., Rizzoli, A. E., and Donati, A. V. (2005b). Ant colony system
for a dynamic vehicle routing problem. Journal of Combinatorial Optimization, 10(4):327–343.
Nguyen, T. T., Yang, S., and Branke, J. (2012). Evolutionary dynamic optimization: A survey of
the state of the art. Swarm and Evolutionary Computation, 6:1–24.
Okulewicz, M. and Mańdziuk, J. (2013). Application of Particle Swarm Optimization Algorithm
to Dynamic Vehicle Routing Problem. Lecture Notes in Computer Science (including subseries
Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 7895(2):547–558.
Okulewicz, M. and Mańdziuk, J. (2014). Two-Phase Multi-Swarm PSO and the Dynamic Vehicle
Routing Problem. In 2nd IEEE Symposium on Computational Intelligence for Human-like Intelligence, pages 86–93, Orlando, Fl, USA. IEEE.
Okulewicz, M. and Mańdziuk, J. (2015). Dynamic Vehicle Routing Problem: A Monte Carlo
approach. In 2nd ITRIA Conference, pages 119–138.
Okulewicz, M. and Mańdziuk, J. (2016). Dynamic Vehicle Routing Problem: optimization modules analysis for the Particle Swarm Optimization based algorithm.
In review, preprint available at: http://www.mini.pw.edu.pl/~okulewiczm/downloads/
badania/ASOC_OptimizationModulesDVRP.pdf.
Pflugfelder, D., Wilkens, J. J., and Oelfke, U. (2008). Worst case optimization: a method to account
for uncertainties in the optimization of intensity modulated proton therapy. Physics in medicine
and biology, 53(6):1689–700.
Pillac, V., Gendreau, M., Guéret, C., and Medaglia, A. L. (2013). A review of dynamic vehicle
routing problems. European Journal of Operational Research, 225(1):1–11.
Psaraftis, H. N. (1988). Dynamic Vehicle Routing Problems. In Vehicle Routing: Methods and
Studies, pages 223–248. Elsevier.
Rohlfshagen, P. and Yao, X. (2008). Attributes of dynamic combinatorial optimisation. In AsiaPacific Conference on Simulated Evolution and Learning, pages 442–451. Springer.
Rohlfshagen, P. and Yao, X. (2011). Dynamic combinatorial optimisation problems: An analysis
of the subset sum problem. Soft Computing, 15(9):1723–1734.
Shi, Y. and Eberhart, R. C. (1998a). A modified particle swarm optimizer. Proceedings of IEEE
International Conference on Evolutionary Computation, pages 69–73.
Shi, Y. and Eberhart, R. C. (1998b). Parameter selection in particle swarm optimization. Proceedings of Evolutionary Programming VII (EP98), pages 591–600.
Storn, R. and Price, K. (1997). Differential Evolution – A Simple and Efficient Heuristic for global
Optimization over Continuous Spaces. Journal of Global Optimization, 11(4):341–359.
Trelea, I. C. (2003). The particle swarm optimization algorithm: convergence analysis and parameter selection. Information Processing Letters, 85(6):317–325.
Younes, A., Calamai, P., and Basir, O. (2005). Generalized benchmark generation for dynamic
combinatorial problems. In Proceedings of the 7th annual workshop on Genetic and evolutionary
computation, pages 25–31. ACM.
Evolutionary Computation
Volume PREPRINT IN REVIEW, Number
23