Вы находитесь на странице: 1из 14

Expert Systems with Applications 36 (2009) 8255–8268

Contents lists available at ScienceDirect

Expert Systems with Applications


journal homepage: www.elsevier.com/locate/eswa

A fuzzy guided multi-objective evolutionary algorithm model for solving


transportation problem
H.C.W. Lau a, T.M. Chan a, W.T. Tsui a,*, F.T.S. Chan b, G.T.S. Ho a, K.L. Choy a
a
Department of Industrial and Systems Engineering, The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong
b
Department of Industrial and Manufacturing Systems Engineering, The University of Hong Kong, Pokfulam, Hong Kong

a r t i c l e i n f o a b s t r a c t

Keywords: In the field of supply chain management and logistics, using vehicles to deliver products from suppliers to
Supply chain management customers is one of the major operations. Before transporting products, optimizing the routing of vehicles
Logistics is required so as to provide a low-cost and efficient service for customers. This paper deals with the prob-
Vehicle routing problem lem of optimization of vehicle routing in which multiple depots, multiple customers, and multiple prod-
Multi-objective optimization
ucts are considered. Since the total traveling time is not always restrictive as a time constraint, the
Multi-objective evolutionary algorithms
Genetic algorithms
objective considered in this paper comprises not only the total traveling distance, but also the total trav-
Fuzzy logic eling time. We propose using a multi-objective evolutionary algorithm called the fuzzy logic guided non-
dominated sorting genetic algorithm 2 (FL-NSGA2) to solve this multi-objective optimization problem.
The role of fuzzy logic is to dynamically adjust the crossover rate and mutation rate after ten consecutive
generations. In order to demonstrate the effectiveness of FL-NSGA2, we compared it with the following:
non-dominated sorting genetic algorithms 2 (NSGA2) (without the guide of fuzzy logic), strength Pareto
evolutionary algorithm 2 (SPEA2) (with and without the guide of fuzzy logic), and micro-genetic algo-
rithm (MICROGA) (with and without the guide of fuzzy logic). Simulation results showed that FL-NSGA2
outperformed other search methods in all of three various scenarios.
 2008 Elsevier Ltd. All rights reserved.

1. Introduction Montané & Galvão, 2006; Ruiz, Maroto, & Alcaraz, 2004;
Secomandi, 2000; Tsutsui & Wilson, 2004). Although some studies
One of the required strategic plans in the field of supply chain regarded a scenario in which each customer should be served with-
management and logistics industry is to optimize product delivery in a given time window as a problem constraint (Ho & Haugland,
by vehicles from suppliers to customers under various constraints. 2004; Kallehauge, Larsen, & Madsen, 2006; Tan, Lee, & Ou, 2001;
This type of problems is called a vehicle routing problem (VRP). Zhu, Qian, Li, & Zhu, 2006), this is not always so restrictive. The
Assuming that the locations of a depot and of customers are known reason is that some companies have sufficient time to deliver prod-
in a VRP, it is necessary to determine the order in which the vehicle ucts to customers, but want to offer efficient and fast services to
should visit the customers (i.e. vehicle routing). The vehicle starts them for developing and maintaining the company’s good image.
from the depot, serves the customers, and returns to the same de- As a result, time should be included as one of objectives rather than
pot. Since only one depot is considered in such a case, this VRP is as one of constraints for these companies.
named a single-depot VRP (Skrlec, Filipec, & Krajcar, 1997; We may think that these two objectives are the same in that the
Yoshiike & Takefuji, 2002). However, a single-depot VRP is not real- shorter the total traveling distance, the less the total traveling time
istic because multiple depots are always involved in real-world required. Nevertheless, this is not always true. In the real-world
applications and the VRP in the scenario we will describe is there- environment, the traveling time along a particular road changes
fore entitled a multi-depot VRP (Lim & Wang, 2005; Renaud, with the period of the day owing to predictable events such as con-
Laporte, & Boctor, 1996). gestion during peak hours or unpredictable events such as acci-
The objective in most researches of VRPs, is to minimize only dents, vehicle breakdowns, etc. (Ichoua, Gendreau, & Potvin,
the total traveling distance of all vehicles, but they do not consider 2003). For example, a vehicle generally needs to take 1 h to travel
the total traveling time required for all vehicles as another impor- from the place A to the place B by using the road (link) AB with dis-
tant objective (Alvarenga & Mateus, 2004; Baker & Sheasby, 1999; tance, 50 km. If an event happens in this link, the vehicle has to
take 3 h instead. Alternatively, the vehicle can spend 1 h to travel
* Corresponding author. from A to C through the link AC with distance, 40 km and then
E-mail address: mfting@inet.polyu.edu.hk (W.T. Tsui). 1 h to travel from C to B through the link CB with distance,

0957-4174/$ - see front matter  2008 Elsevier Ltd. All rights reserved.
doi:10.1016/j.eswa.2008.10.031
8256 H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268

30 km. Obviously, 1 h is saved for the latter choice with greater to- (with the guide of fuzzy logic), micro-genetic algorithm (MICROG-
tal traveling distance, 70 km. A) (without the guide of fuzzy logic) (Coello Coello & Toscano
Two practical approaches to modelling such real-world traffic Pulido, 2001a, 2001b), and FL-MICROGA (with the guide of fuzzy
conditions are time-dependent travel time (Hill & Benton, 1992; logic) were adopted so as to compare their performance with that
Ichoua et al., 2003; Malandraki & Daskin, 1992) and stochastic tra- of FL-NSGA2.
vel time (Fu & Rilett, 1998; Gendreau, Laporte, & Seguin, 1996; This paper is organized as follows: Section 2 presents a litera-
Lambert, Laporte, & Louveaux, 1993). The former one was selected ture review of VRPs and different application problems solved by
for this study. In this method, the time horizon is divided into q fuzzy controlled GA. Section 3 offers the mathematical formulation
time intervals, i.e. T1, T2, . . ., Tq. Then, the travel time of each link of the VRP proposed in this paper. Section 4 provides the details of
is determined by the departure time of the vehicle from an end GA, NSGA2, SPEA2, MICROGA and fuzzy logic. In Sections 5 and 6,
node of the link within time interval Tk, k = 1, 2, . . ., q. The model simulation results and conclusions are addressed.
of time-dependent travel time proposed in Ichoua et al. (2003)
was employed in this paper because it introduced the ‘‘first-in-
first-out” property which was not considered in the past suggested 2. Literature review
models.
Since total traveling distance and total traveling time are con- This section presents the related works dealing with VRPs
flicting, the problem is formulated as a multi-objective optimiza- solved by employing different optimization techniques and studies
tion problem. The schemes, enumerative, classical optimization about different application problems solved by GA with fuzzy logic
and stochastic methods, can be used to solve this type of optimiza- controlling GA control parameters during the run of the GA.
tion problem. The enumerative method can provide a set of true Kallehauge et al. tackled the single-depot VRP with time win-
Pareto-optimal solutions, but it is computationally inefficient or dows (Kallehauge et al., 2006). His aim was to minimize the total
even infeasible owing to the huge search space (Coello Coello, path cost. The Lagrangian branch-and-cut-and-price (LBCP) algo-
Van Veldhuizen, & Lamont, 2002). Owing to the searching space rithm, in which the stabilized cutting-plane algorithm was embed-
being arbitrarily limited by using the classical optimization meth- ded in a branch-and-bound search and strong valid inequalities
ods, the required solutions in the vicinity of the Pareto-optimal were introduced at the master problem level by Lagrangian relax-
front are not easy to come by Coello Coello et al. (2002). Also, ation, was suggested for solving the problem. The advantage of
the classical methods use the point-by-point approach in which a LBCP is that it gives a significant speed-up compared to an algo-
solution obtained per iteration can be modified to a different solu- rithm based on traditional column generation. Two Homberger
tion in the hope that a better solution would be obtained (Deb, problems with 400 and 1000 customers were tested and the results
2001). But, this yields only one particular Pareto-optimal solution showed that LBCP significantly outperformed a traditional column
at a time. However, the advantage of using multi-objective evolu- generation based algorithm on a large number of test problems.
tionary algorithms (MOEAs) is multifaceted. It is possible that, Renaud et al. coped with the multi-depot VRP whose objective
within a single simulation run, multiple Pareto-optimal solutions was to minimize the total routing cost (Renaud et al., 1996). The
can be acquired with fewer overheads and without limiting the search technique, the tabu search, was adopted to solve this prob-
search space (Coello Coello et al., 2002). lem. Twenty-three benchmark problems were tested and the stan-
In fact, the notion of MOEAs originated from a stochastic search dard version of the tabu search generated a best solution 20 times.
technique named genetic algorithms (GA) which has already been In the case of using various parameters, the tabu search generated
successfully applied to solving different VRPs (Baker & Ayechew, ‘‘best solutions” in all of the 23 times it was used. Also, the trun-
2003; Hwang, 2002; Louis, Yin, & Yuan, 1999; Maeda, Nakamura, cated version of the tabu search obtained by stopping after the
Ombuki, & Onaga, 1999; Skok, Skrlec, & Krajcar, 2000; Tong, Ning, intensification phase is so fast and so highly competitive that it
& Debao, 2004; Zhu, 2003). GA is effective for obtaining the opti- generated a best solution 19 times out of 23.
mal or near-optimal solution in solving optimization problems Skok et al. dealt with the multi-depot VRP whose objective was
but it has two major drawbacks, (i) slow search speed, and (ii) pre- to minimize both traveling cost and vehicle acquisition cost (Skok
mature convergence. This happens because control parameters, et al., 2000). The stochastic search algorithm, GA, was utilized to
which are chosen on the basis of the experience of users, or be- solve the problem. A real instance problem was tested and the re-
cause of some guidelines given by studies (De Jong, 1975; sults revealed that there was compromise in finding a good solu-
Grefenstette, 1986), are fixed throughout the GA run in which envi- tion and parameter tuning was required for obtaining the best
ronmental change is ignored (McClintock, Lunney, & Hashim, performance. For example, if the user wants a quick suggestion
1997a, 1997b). However, biological evolution shows that the cross- of what the most desirable configuration should look like, a small
over rate and the mutation rate depend on the evolution state and population with a higher value of parameter bias and a low value
therefore they should be adapted to fit various states (Reed, of mutation rate should be adopted. This will cause the quick
Toombs, & Barricelli, 1967). Since the decision of changing GA spreading of a couple of good solutions over the entire population.
control parameters involves uncertainty and vagueness, fuzzy logic King et al. studied the application of a fuzzy controlled real
is suitable for controlling the crossover rate and the mutation rate coded genetic algorithm to solve the electrical distribution net-
during the run of GA. Some studies such as King, Radha, and Rug- work reconfiguration problem (King et al., 2004). The objective
hooputh (2004), Lotfi and Kashani (2004), Subbu, Sanderson, and was to find a radial operating structure to minimize the system
Bonissone (1998) and Song, Wang, Wang, and Johns (1997) tackled power loss while satisfying operating constraints. The inputs to
various application problems and solved them by using GA with both the crossover fuzzy controller and mutation fuzzy controller
fuzzy logic controlling various GA control parameters. were changes in average fitness at two consecutive steps. The out-
In this paper, we proposed to utilize a MOEA called a fuzzy logic puts of the former and of the latter controller were the change in
guided non-dominated sorting genetic algorithms 2 (FL-NSGA2) to crossover rate and mutation rate respectively. Sixteen-bus, 33-
solve this multi-objective optimization problem. Also, NSGA2 bus systems and a real distribution system were tested in simula-
(without the guide of fuzzy logic) (Deb, Agrawal, Pratap, & tions. The fuzzy logic controlled genetic algorithm found the global
Meyarivan, 2000; Deb, Pratap, Agrawal, & Meyarivan, 2002), optimum and had faster convergence than a genetic algorithm
strength Pareto evolutionary algorithm 2 (SPEA2) (without the using fixed crossover and fixed mutation rates, and that using fixed
guide of fuzzy logic) (Zitzler, Laumanns, & Thiele, 2001), FL-SPEA2 crossover and adaptive mutation rates.
H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268 8257

Lotfi and Kashani tackled the problem of optimizing the band- Table 1
width of the E-shaped microstrip antenna, by using GA with fuzzy List of notations.
logic (Lotfi & Kashani, 2004). The input to both the crossover fuzzy Notation Meaning
controller and mutation fuzzy controller was population size. The
S Total number of depots
outputs of the former and of the latter controller were crossover T Total number of products
rate and mutation rate respectively. A wideband E-shaped patch U Total number of customers
antenna was adopted for the design and the result showed that D Index set of depots, D = {1, 2, . . ., S}
an increase in the bandwidth of 33.3% was obtained. P Index set of products, P = {1, 2, . . ., T}
C Index set of customers, C = {1, 2, . . ., U}
Song et al. dealt with an environmental/economic dispatch cmn Distance between node (customer or depot) m and node (customer or
problem by using fuzzy logic controlled genetic algorithm (Song depot) n, "m e (C [ D), "n e (C [ D) (unit: km)
et al., 1997). The objective was to minimize both expected fuel cost tmn Time required to traverse between node (customer or depot) m and
and expected NOx emission. The inputs to both the crossover fuzzy node (customer or depot) n, "m e (C [ D), "n e (C [ D) (unit: min)
sij Supply of product j from depot i, "i e D, "j e P
controller and mutation fuzzy controller were changes in average
djm Demand of product j for node (customer) m, "j e P, "m e C
fitness at two consecutive generations. The outputs of the former vj Volume of product j, "j e P (unit: cm3)
and of the latter controller were the change in crossover rate and cm i Capacity of the vehicle serving depot i, "i e D (unit: cm3)
mutation rate respectively. Two six-generator systems were em- ximn ximn = 1 if the vehicle serving depot i visits node (customer or depot) n
ployed in the simulations and the proposed method could acquire after leaving node (customer or depot) m in the established route. 0
otherwise, "i e D, "m e (C [ D), "n e (C [ D)
improved performance compared to conventional GA and the
Newton–Raphson method.
Previous work focused only on a single objective approach
where the problem objectives were combined to form one objec-
tive function. Nevertheless, we found that these two objectives ex- Minimize total traveling distance f1 and total traveling time f2
ist as trade-off properties. Therefore, we employed a multi-
objective approach to search for non-dominated trade-off solutions X X X
f1 ¼ cmn  ximn ð1Þ
for the VRP. Because each of these solutions can be a possible solu- i2D m2ðC[DÞ n2ðC[DÞ
tion to the problem, choosing a solution can be done according to X X X
the preferences of the decision makers. The advantage of a multi- f2 ¼ t mn  ximn ð2Þ
i2D m2ðC[DÞ n2ðC[DÞ
objective approach is that it can give us more flexibility due to
there being a family of solutions, rather than just one solution. subject to
Moreover, the above applications tackled by GA with fuzzy logic
X X
controlling GA parameters, mainly used the difference between djm ximn  sij ; 8i 2 D; 8j 2 P ðC1 Þ
two average fitness values of the population obtained from two m2C n2ðC[DÞ
consecutive generations as inputs of fuzzy controllers. However,
XX X
djm  v j ximn  cv i ; 8i 2 D ðC2 Þ
we proposed using ten consecutive generations instead of two con- j2P m2C n2ðC[DÞ
secutive generations. Furthermore, only average fitness of the pop- X X
ximn ¼ 1; 8n 2 C ðC3 Þ
ulation was considered as an input of the fuzzy controllers in the
i2D m2ðC[DÞ
above applications, but we suggested adding another input, popu- X X
lation diversity, to the fuzzy controllers. The reasons for these two xinm ¼ ximn ; 8i 2 D; 8m 2 ðC [ DÞ ðC4 Þ
n2ðC[DÞ n2ðC[DÞ
modifications are given in Section 4. XX
ximn  jSj  1; 8S # C; jSj  2; 8i 2 D ðC5 Þ
m2S n2S

3. Mathematical formulation sij 2 N; 8i 2 D; 8j 2 P ðC6 Þ


djk 2 N; 8j 2 P; 8k 2 C ðC7 Þ
In this section, the mathematical model of the suggested VRP in ximn 2 f0; 1g; 8i 2 D; 8m 2 ðC [ DÞ; 8n 2 ðC [ DÞ ðC8 Þ
this paper will be given. The notations that will be adopted are
shown in Table 1. Constraint (C1) requires that, for each product stored in each de-
The VRP can be viewed as a graph-theory problem. Let G = (V, A) pot, the supply of the product from the depot must be greater than
be a graph where V = {1, 2, . . ., S + U} is the index set of vertices or equal to the demand for the product by customers served by the
(nodes) and A = {(1, 2), (1, 3), . . ., (u, v)} is the set of undirected arcs same depot. Constraint (C2) requires that, for the vehicle in each
(links), u–v ; u < v ; 8u 2 V; 8v 2 V. In the graph, a node is a depot depot, the total volume of the different products demanded by cus-
or customer and each pair of nodes is connected by an undirected tomers served by the same depot must be smaller than or equal to
link. Also, it is assumed that jDj  jCj. Each depot stores and sup- the maximum capacity of the vehicle. Constraint (C3) requires that
plies various products, and has only one vehicle to serve customers each customer must be serviced exactly once by only one vehicle.
who demand different quantities of various products. Each vehicle Constraint (C4) is a flow constraint which requires that any vehicle
starts the tour from the depot where it normally resides, delivers that enters a customer location must leave the same customer
products to a number of customers and returns to the same depot. location. Constraint (C5) is a subtour elimination constraint which
Fig. 1 gives a pictorial view of the sample VRP with 2 depots and 6 requires that each vehicle must visit customers in a complete tour,
customers. A vehicle from depot 1 takes the route (depot 1 ? cus- but not in two or more subtours. Constraints (C6) and (C7) require
tomer 3 ? customer 5 ? depot 1) while another vehicle from de- that the values of supply and demand of products must be natural
pot 2 uses the route (depot 2 ? customer 6 ? customer 4 ? numbers (i.e. zero or positive integers) respectively. Constraint (C8)
customer 1 ? customer 2 ? depot 2). requires that the values of the decision variables must be limited to
As mentioned in Section 1, the objectives of the VRP in this pa- be 0 or 1 only.
per are to minimize the total distance traveled of all vehicles and It should be noted that traveling distance and traveling time
the total time required for all vehicles to serve customers, subject considered in this VRP are not symmetrical since traffic conditions
to a number of constraints. Now, the VRP is mathematically usually affect the traffic only in one direction. Also, an optimal
formulated as solution to the problem may not require the deployment of all
8258 H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268

At generation t + 1, pc(t + 1) and pm(t + 1) will be adjusted as


3
Depot22 pc ðt þ 1Þ ¼ pc ðtÞ þ Dpc ðt þ 1Þ ð6Þ
2 pm ðt þ 1Þ ¼ pm ðtÞ þ Dpm ðt þ 1Þ ð7Þ
respectively and MOEA will use pc(t + 1) and pm(t + 1) instead of
pc(t) and pm(t) to proceed the search at generation t + 1. When gen-
eration t + 10 is finished, fa(t + 1), fa(t + 10) and d(t + 10) are ob-
4
6 tained, i.e.
h : fpc ðt þ 1Þ; pm ðt þ 1Þg ! ffa ðt þ 1Þ; fa ðt þ 10Þ; dðt þ 10Þg ð8Þ

1 or equivalently
h : fpc ðtÞ þ Dpc ðt þ 1Þ; pm ðtÞ þ Dpm ðt þ 1Þg
! ffa ðt þ 1Þ; fa ðt þ 10Þ; dðt þ 10Þg ð9Þ

Depot 11
Depot 5 After constructing this model, the details of implementation of GA
and fuzzy logic will be provided in the following subsections.

Fig. 1. An illustration of VRP. 4.1. Genetic algorithms (GA)

vehicles. Thus, solutions with the use of all or only some of the GA is an effective search technique which was proposed by Hol-
vehicles are both allowed. land (1975). It is a parallel search algorithm that imitates the
mechanism of natural selection and the survival of the fittest as
4. Fuzzy logic guided multi-objective evolutionary algorithm witnessed in natural evolution. It comprises a population of chro-
mosomes (individuals), selection, crossover and mutation. Once
As mentioned in Section 1, in order to improve the search per- the objective function of a considered problem is defined, its vari-
formance of MOEA, it was proposed to use fuzzy logic for adjusting ables can be encoded into the genes of any chromosome. The de-
the crossover rate and mutation rate in ten consecutive genera- tails of GA can be found in Michalewicz (1996) and Goldberg
tions instead of two consecutive generations as used in Song (1989).
et al. (1997). The reason is that this can provide sufficient time
for MOEA to respond to the change. The average fitness values of 4.1.1. Notations and definitions
the population and population diversity were taken as inputs to The notations and definitions that will be used in the GA are gi-
fuzzy controllers for controlling crossover and mutation rates be- ven as follows.
cause appropriate crossover and mutation rates can improve the Definition 1: Ch = {1, 2, . . ., X} represents the index set of chromo-
search performance reflected by the average fitness values of the somes where X is the total number of chromosomes in the
population. They can also control the population diversity to pre- population.
vent premature convergence from happening in the population. Definition 2: Ga(b+c) represents a gene matrix generated for the
The model of fuzzy logic guided MOEA (FL-MOEA) is portrayed in population where
2  3
Fig. 2. g 11 g 12 . . . g 1b  g 011 g 012 . . . g 01c

The implementation of FL-MOEA is given as follows. Let 6g
6 21 g 22 . . . g 2b  g 021 g 022 ... g 02c7
7
fa(t  9), fa(t), fa(t + 1) and fa(t + 10) be the average fitness values GaðbþcÞ ¼6  7
6 .. .. .. ..  .. .. .. .. 7
of the population obtained at generations t  9, t, t + 1, and 4 . . . .  . . . . 5
t + 10, respectively, d(t) and d(t + 10) be the degree of population g a1 g a2 . . . g ab  g 0a1 g 0a2 ... g 0ac
diversity at generations t and t + 10, respectively, pc(t) and pm(t)
be the crossover rate and mutation rate adopted at generation t,
respectively, Dpc(t + 1) and Dpm(t + 1) be the change of crossover ¼ ð ðg sw Þab ðg 0sz Þac Þ
rate and mutation rate at generation t + 1, respectively, gc and gm g sw ¼ drandomð0; jCj  jDj þ 1e; g 0sz ¼ drandomð0; jCje;
P
be the fuzzy controller functions for controlling crossover rate g sw ¼ U
and mutation rate, respectively, and h be the MOEA function. w2D

When the generation t is reached, the values of fa(t  9), fa(t), 8s 2 C h ; 8w 2 D; 8z 2 C; a ¼ X; b ¼ S; c¼U
and d(t) are inputted to the two fuzzy controllers. The physical
Definition 3: Ra1 denotes a random number matrix generated
meaning of d is to evaluate the average of bit difference of all pairs
for selection and crossover where
of chromosomes in the population. This can be calculated by using
the following formula, 2 3
r1
1 X
N X
N X
M
dðg ik ; g jk Þ 6r 7
d¼h i ð3Þ 6 27
NðN1Þ M Ra1 ¼6 7
6 .. 7 ¼ ðrs Þa1
2 i¼1 j¼iþ1 k¼1 4 . 5
where N is the total number of chromosomes in the population, M is ra
the chromosome length, gik is the value of kth gene of ith chromo- r s ¼ random½0; 1; 8s 2 C h ; a¼X
some, and d(gik, gjk) = 1 if gik – gjk, 0 otherwise.
Then, the two fuzzy controllers will determine the values of Definition 4: Ch_c = {1, 2, . . ., Y} denotes the index set of chosen
Dpc(t + 1) and Dpm(t + 1) as the outputs, i.e. chromosomes in crossover where Y is the total number of chosen
chromosomes.
g c : ffa ðtÞ  fa ðt  9Þ; dðtÞg ! Dpc ðt þ 1Þ ð4Þ Definition 5: G0dðbþcÞ indicates the gene matrix in which the Y
g m : ffa ðtÞ  fa ðt  9Þ; dðtÞg ! Dpm ðt þ 1Þ ð5Þ chosen chromosomes in crossover are stored where
H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268 8259

Fig. 2. Model of fuzzy logic guided multi-objective evolutionary algorithm.

2  3
r11 r12 . . . r1b  r011 r012 . . . r01c After finishing the above two steps, these chosen chromosomes
6r  0 7
6 21 r22 . . . r2b  r21 r22 . . . r2c 7
0 0
are stored in the gene matrix G0dðbþcÞ . Since the second part of each
G0dðbþcÞ ¼6  7 chromosome is order of customers that requires that each cus-
6 .. .. .. ..  .. .. .. .. 7
4 . . . .  . . . . 5
 tomer can be visited once only (i.e. two genes having the same in-
rd1 rd2 . . . rdb  r0 r0d2    r0dc
d1 dex of customer are prohibited) but such restriction is not imposed
in the first part, a specially designed crossover operation called
¼ ð ðrtw Þdb ðr0tz Þdc Þ partial uniform and partial order (PUPO) crossover is suggested
for resolving this problem.
8t 2 C h c ; 8w 2 D; 8z 2 C; d ¼ Y; b ¼ S; c¼U
The PUPO crossover comprises two types of crossover, (i) uni-
Definition 6: mask1b represents a mask matrix generated for form crossover, and (ii) order crossover, which are adopted for
uniform crossover in partial uniform and partial order (PUPO) the first and second part of chromosomes, respectively. Fig. 4 de-
crossover where picts the operation of the PUPO crossover. Note that only the first
part of chromosomes is shown in Fig. 4a but only the second part of
mask1b ¼ ½ m1 m2    mb  ¼ ðmw Þ1b
chromosomes is shown in Fig. 4b.
mw ¼ randomf0; 1g; 8w 2 D; b¼S Its implementation procedures are provided as follows.
Definition 7: p1 and p2 indicate two randomly generated cut (First part of chromosome: uniform crossover)
points for order crossover in partial uniform and partial order
(PUPO) crossover where p1 < p2. Step 1: Generate mask1b.
Step 2: If mw = 1, exchange r(2y1)w and r(2y)w,
4.1.2. Chromosome representation y ¼ 1; 2; . . . ; Y2 ; 8w 2 D where y is the index of chromo-
Based on the objective function f defined in Section 3, the fac- some pair.
tors which can affect the objective value are: (i) assignment of each
customer to only one vehicle, and (ii) the order of customers to be For example, in Fig. 4a, as the values of m2 and m4 are 1, the cor-
served by each vehicle. As a result, each chromosome includes two responding genes of the parent 1 and 2 are exchanged.
parts for these two factors. The first part is the number of custom- (Second part of chromosome: order crossover)
ers for each vehicle to serve and the second part is the order of cus-
tomers for each vehicle to serve. Fig. 3 illustrates the chromosome Step 1: Randomly generate p1 and p2 for both parent 1 and 2.
encoding method. Assume that there are 20 customers and 4 vehi- Step 2: Copy the genes between p1 and p2 of parent 1 to offspring 1.
cles considered. The vehicle 1 serves 6 customers (18, 5, 12, 10, 4
and 9) in order. The vehicle 2 serves 3 customers (7, 15 and 1) in For example, in Fig. 4b, the genes (9, 6, 4 and 5) between the
order. The vehicle 3 serves 5 customers (16, 17, 20, 3 and 11) in or- two cut points p1 = 4 and p2 = 8 of parent 1 are copied to offspring
der. Finally, the vehicle 4 serves 6 customers (2, 6, 8, 14, 13 and 19) 1.
in order.
Step 1: Starting from the cut point p2 of parent 2 at right hand
4.1.3. Crossover side and wrapping around at the end, select and copy
Crossover is a genetic operation which is adopted to exchange genes, which are different from those in the copied seg-
information between two chromosomes for genetic exploration. ment of parent 1, to offspring 1 in order.
Not all chromosomes are chosen for performing crossover.
Whether a chromosome is selected or not is determined by a cross- For example, in Fig. 4b, the genes (1, 10, 3, 7, 8 and 2) of par-
over rate pc. The procedures for picking chromosomes for imple- ent 2 are selected and, starting from the first unfilled gene of
menting the crossover are given as follows. offspring 1 at right hand side, they are copied to the offspring
1 in order.
Step 1: Generate Ra1 .
Step 2: If rs 6 pc, select ð ðg sw Þ1b ðg 0sz Þ1c Þ, "s e Ch, "w e D, "z e C, Step 1: Repeat steps 3, 4 and 5 for producing offspring 2.
b = S, c = U.
8260 H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268

Numberofcustomers Order of customers for each vehicle to serve


for each vehicle to serve

Chromosome 6 3 5 6 18 5 12 10 4 9 7 15 1 16 17 20 3 11 2 6 8 14 13 19

Vehicle 1 serves Vehicle 2 serves Vehicle 3 serves Vehicle 4 serves


6 customers 3 customers 5 customers 6 customers

Fig. 3. Chromosome encoding method.

Mask 0 1 0 1

Parent 1 2 3 2 3
Before crossover
Parent 2 4 2 3 1

Offspring 1 2 2 2 1
After crossover

Offspring 2 4 3 3 3

(a) Uniform crossover

Cut points
p1 = 4 p2 = 8

Parent 1 8 3 10 1 9 6 4 5 2 7

Parent 2 6 5 3 7 8 2 9 4 1 10

Offspring 1 Offspring 2

9 6 4 5 8 2 9 4

1, 10, 3, 7, 8, 2 7, 3, 10, 1, 6, 5

3 7 8 2 9 6 4 5 1 10 10 1 6 5 8 2 9 4 7 3

(b) Order crossover

Fig. 4. Partial uniform and partial order (PUPO) crossover.

the first and second part of chromosomes, respectively. Fig. 5 de-


4.1.4. Mutation picts the operation of the PUPS mutation. It should be noted that
Mutation is another genetic operation which provides diversity only the first part of chromosome is shown in Fig. 5a but only
for the solutions so as to prevent them from falling into local opti- the second part of chromosome is shown in Fig. 5b.
ma. Not all genes are chosen for performing mutation. Whether a Fig. 5a portrays the operation of uniform mutation. Suppose
gene is selected or not is determined by a mutation rate pm. Like that gene 3 with value 2 is chosen. This value is replaced by an-
crossover, since two genes having the same index of customer other uniform random value generated between [1, |C|  |D| + 1].
are not allowed in the second part of each chromosome but this In this example, the random value 4 is produced. Moreover,
limitation is not imposed in the first part, a specially designed Fig. 5b shows the operation of swap mutation. It is assumed that
mutation operation called partial uniform and partial swap (PUPS) gene 6 with value 6 is chosen. It is now required to randomly se-
mutation is proposed for resolving this problem. lect another gene, say, gene 3 with value 10 for swapping. Then,
The PUPS mutation consists of two types of mutation, (i) uni- these two genes are exchanged to complete this mutation
form mutation, and (ii) swap mutation, which are adopted for operation.
H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268 8261

Parent 2 3 2 3 Before mutation Pareto-optimal front, is added in the selection process. This opera-
tor ensures that the solution with the lower rank is chosen when
Mutate two solutions have different ranks. In case these two solutions
have the same rank, the solution located in a less crowded region
Offspring 2 3 4 3 After mutation (i.e. has a larger crowding distance) is preferred. The detailed pro-
cedures of the fast non-dominated sorting approach, the crowding
(a) Uniform mutation distance assignment approach and the crowded comparison oper-
ation can be reviewed in Deb et al. (2000, 2002).
Parent 8 3 10 1 9 6 4 5 2 7 Before mutation One of the major issues for optimizing a real-world problem is
constraint handling. The constraint handling method used in the
NSGA2 is described as follows: Given that a solution i is said to
Exchange
constrain-dominate a solution j, then the following conditions
must apply:
Offspring 8 3 6 1 9 10 4 5 2 7 After mutation

(b) Swap mutation 1. Solution i is feasible and solution j is infeasible.


2. Solutions i and j are both infeasible, but solution i has a smaller
Fig. 5. Partial uniform and partial swap (PUPS) mutation. overall constraint violation.
3. Solutions i and j are feasible and solution i dominates solution j.

4.1.5. Repair These are the constrained-domination principles that ensure


After performing crossover and/or mutation, the first part of any any feasible solution is assigned a better non-domination rank
chromosome may be invalid because the sum of values of all genes than any infeasible solution. All feasible solutions are ranked on
in this part can be smaller than or greater than the total number of the basis of their objective values. Nevertheless, with infeasible
customers but not exactly equal. Accordingly, it is necessary to re- solutions, the one with a smaller sum of constraint violation of
pair the genes in this part. The idea of repair is to iteratively and all constraints is assigned a better rank.
randomly select a gene, and increase (for ‘‘smaller than” case) or
decrease (for ‘‘greater than” case) its value by 1 until the ‘‘equal” 4.1.7. Strength Pareto evolutionary algorithm 2 (SPEA2)
case is satisfied. We name it as cyclic repair here. SPEA2 was suggested by Zitzler et al. (2001). The fitness value in
Fig. 6 illustrates the operation of cyclic repair. Assume that SPEA2 is not based on rank but on the sum of the raw fitness and
there are 10 customers considered. However, the sum of values the density value. To find the raw fitness value, first, each solution
of all genes is equal to 12 which belongs to the ‘‘greater than” case. in the population and in the archive is assigned a strength value
The gene 2 with value 3 is randomly chosen and this value is de- that represents the number of solutions it dominates. Then, the
creased by 1. But, the sum is equal to 11 which is still greater than raw fitness value is calculated by summing the strengths of its
10. Then, another gene 4 with value 3 is randomly selected and this dominators in both archive and population. The density value is
value is reduced by 1 again. The sum is now equal to 10 and there- obtained by using a density estimation technique called kth near-
fore the repair operation finishes. If this example is the ‘‘smaller est neighbor method. On the other hand, an archive truncation
than” case, the same procedures are applied except that the gene method is developed to remove excessive solutions in the most
value reduction is replaced by addition. crowded regions in order to maintain the constant size of the ar-
chive. The detailed procedures of the strength value assignment,
4.1.6. Non-dominated sorting genetic algorithm 2 (NSGA2) the density value estimation and the archive truncation method
NSGA2 was proposed by Deb et al. (2000, 2002). It uses a rank- can be seen in Zitzler et al. (2001). Also, the constraint handling
ing scheme called the fast non-dominated sorting approach which method of SPEA2 used in the simulations is the same as that in
requires a computational complexity of at most O(MN2), to rank NSGA2.
the individuals, where M is the number of objectives and N is pop-
ulation size. In this approach, each solution in the population is 4.1.8. Micro-genetic algorithm (MICROGA)
checked with a partially filled population for domination. Also, a MICROGA was suggested by Coello Coello and Toscano Pulido
crowding distance assignment approach is adopted to estimate (2001a, 2001b). It has three features, population memory, adaptive
the density of solutions surrounding a particular point in the pop- grid algorithm, and three types of elitism. The population memory
ulation. The crowding distance is defined as the average distance of is divided into two parts, replaceable and non-replaceable. The
the two points on either side of the particular point being consid- replaceable part undergoes some change after each cycle of the
ered, along each of the objectives. Additionally, the crowded com- MICROGA. In contrast, the non-replaceable part is never changed
parison operator, which aims at obtaining a uniformly distributed during the run and its aim is to provide the required diversity for
the algorithm. The adaptive grid algorithm is employed to offer
the diversity to non-dominated solutions. Once the archive storing
Off spring 2 3 4 3 the non-dominated solutions reaches its limit, the objective space
covered by the archive is divided into a number of grids. Then, each
solution in the archive is assigned a set of coordinates. In elitism, in
the first type, non-dominated solutions found within the internal
cycle of the MICROGA are stored. The second type of elitism is
Off spring 2 2 4 3 where nominal solutions (i.e. the best solutions found when the
nominal convergence is reached) are added to the replaceable part
of the population memory. In the last type, a certain number of
solutions from all the regions of the Pareto front generated so far
Off spring 2 2 4 2 are uniformly picked and included to the replaceable part of the
population memory. The constraint handling method of MICROGA
Fig. 6. Cyclic repair. used in the simulations is the same as that in NSGA2.
8262 H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268

4.2. Fuzzy logic


NLR NL NM NS Z PS PM PL PLR
1
Fuzzy logic, which was suggested by Zadeh (1965), is a powerful
and useful tool for performing reasoning in decision-making prob-
lems involving uncertainty and vagueness. It consists of three main
processes, (a) fuzzification, (b) rule base reasoning, and (c) defuzz- 0
ification. The details of fuzzy logic can be found in Chen and Pham -500 -400 -300 -200 -100 0 100 200 300 400 500
(2001). The method of fuzzification used in this paper is similar to (a) f a (t ) f a (t 9)
that in the study (Song et al., 1997).

4.2.1. Fuzzification VS S SS LM M UM SL L VL
Before performing fuzzification, it is necessary to choose mem- 1

bership functions for associating system input and output values


with fuzzy input and output membership values. However, there
is no universal rule or criterion for selecting a membership func- 0
tion and it should be chosen based on the user’s knowledge and 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
experience (Chen & Pham, 2001). Also, it is recommended that
parameterizable membership functions should be employed (Yen
(b) d (t )
& Langari, 1999). Therefore, triangular membership functions,
Fig. 7. Membership functions of fa(t)  fa(t  9) and d(t) .
which are those membership functions which are used in common
practice (Yen & Langari, 1999), were adopted in this study. The
meaning of each linguistic term in the selected membership func-
tions is tabulated in Tables 2 and 3. The membership functions of NLR NL NM NS Z PS PM PL PLR
1
the two system inputs, fa(t)  fa(t  9) and d(t) for the two fuzzy
controllers are shown in Figs. 7a and b, respectively. Also, the
membership functions of the two system outputs, Dpc(t + 1) and
Dpm(t + 1) are depicted in Figs. 8a and b, respectively. The mem- 0
bership function lA of a fuzzy set A is expressed as -0.1 -0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08 0.1
lA : v ! ½0; 1 ð10Þ (a) p c (t + 1)
where v is the universal set.
NLR NL NM NS Z PS PM P PLR
4.2.2. Rule base reasoning 1
After obtaining input membership values, output membership
values can be inferred from input ones through a number of IF-
THEN rules which are commonly expressed in the form of a rule ta-
0
ble. Expert knowledge and experience are required for designing
-0.01 -0.008 -0.006 -0.004 -0.002 0 0.002 0.004 0.006 0.008 0.01
these rules (Lee, 1990). We devised four possible sets of rules for
output membership values of Dpc(t + 1) and Dpm(t + 1), which are (b) p m (t + 1)

Fig. 8. Membership functions of Dpc(t + 1) and Dpm(t + 1) .

Table 2
Meaning of each linguistic term.
tabulated in Table 4. An example of the rules, which is highlighted
Linguistic Terms for fa(t)  fa(t  9), Dpc(t + 1), and Dpm(t + 1) Meaning
in Table 4a, is shown as follows:
NLR Negative larger
IF fa(t)  fa(t  9) is PLR AND d(t) is VL, THEN output is Z.
NL Negative large
NM Negative medium As a result, there are a total of 12 combination sets of rules for
NS Negative small output membership values of Dpc(t + 1) and Dpm(t + 1) as shown in
Z Zero Table 5. Note that the roles of crossover and mutation in GA are dif-
PS Positive small ferent. Different sets of rules should be adopted for output mem-
PM Positive medium
bership values of Dpc(t + 1) and Dpm(t + 1). From the authors’
PL Positive large
PLR Positive larger point of view, set 1 is the best choice. In order to verify this is
the correct selection, simulations were carried out to test and com-
pare the performance of all 12 sets. The results and discussion are
given in Section 5.1.
Table 3
Meanings of linguistic terms for d(t).
4.2.3. Defuzzification
Linguistic Terms for d(t) Meaning
Defuzzification aims at generating a single crisp value by using
VS Very small a defuzzification formula and fuzzy output membership values.
S Small There is no unique defuzzification method and each proposed
SS Slightly small
LM Lower medium
defuzzification method has both advantages and disadvantages.
M Medium The center of area is one of the most common approaches and this
UM Upper medium was the one which was adopted in the simulations. The reason for
SL Slightly large choosing center of area is that its operations are simple in that no
L Large
multiplications or divisions are involved and therefore it is fast to
VL Very large
give the outputs (i.e. crossover rate and mutation rate) to MOEA for
H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268 8263

Table 4
Four possible sets of IF-THEN rules.

d(t) fa(t)  fa(t  9)


NLR NL NM NS Z PS PM PL PLR
(a) First set
VL PLR PLR PL PL PM PM PS PS Z
L PLR PL PL PM PM PS PS Z NS
SL PL PL PM PM PS PS Z NS NS
UM PL PM PM PS PS Z NS NS NM
M PM PM PS PS Z NS NS NM NM
LM PM PS PS Z NS NS NM NM NL
SS PS PS Z NS NS NM NM NL NL Fig. 9. Defuzzification method, center of area.
S PS Z NS NS NM NM NL NL NLR
VS Z NS NS NM NM NL NL NLR NLR
(b) Second set Table 6
VL NLR NLR NL NL NM NM NS NS Z MOEAs’ parameters.
L NLR NL NL NM NM NS NS Z PS
SL NL NL NM NM NS NS Z PS PS Parameter Value/type
UM NL NM NM NS NS Z PS PS PM
Population size (NSGA2, SPEA2, FL-NSGA2, FL-SPEA2) 100
M NM NM NS NS Z PS PS PM PM
Population size (MICROGA, FL-MICROGA) 4
LM NM NS NS Z PS PS PM PM PL
Maximum generations (NSGA2, SPEA2, FL-NSGA2, FL-SPEA2) 1500
SS NS NS Z PS PS PM PM PL PL
Maximum generations (NSGA2, SPEA2, FL-NSGA2, FL-SPEA2) 37,500
S NS Z PS PS PM PM PL PL PLR
Crossover probability 0.85
VS Z PS PS PM PM PL PL PLR PLR
Mutation probability 0.05
(c) Third set Archive size (SPEA2, FL-SPEA2) 100
VL Z PS PS PM PM PL PL PLR PLR Size of external memory (MICROGA, FL-MICROGA) 100
L NS Z PS PS PM PM PL PL PLR Size of population memory (MICROGA, FL-MICROGA) 80
SL NS NS Z PS PS PM PM PL PL Percentage of non-replaceable memory (MICROGA, FL-MICROGA) 0.25
UM NM NS NS Z PS PS PM PM PL Replacement cycle (MICROGA, FL-MICROGA) Every 25
M NM NM NS NS Z PS PS PM PM iterations
LM NL NM NM NS NS Z PS PS PM Number of subdivisions of the adaptive grid (MICROGA, FL- 25
SS NL NL NM NM NS NS Z PS PS MICROGA)
S NLR NL NL NM NM NS NS Z PS Number of iterations of the micro-GA (to achieve nominal 4
VS NLR NLR NL NL NM NM NS NS Z convergence) (MICROGA, FL-MICROGA)
(d) Fourth set
VL Z NS NS NM NM NL NL NLR NLR
L PS Z NS NS NM NM NL NL NLR
SL PS PS Z NS NS NM NM NL NL since both Dpc(t + 1) and Dpm(t + 1) utilize the same
UM PM PS PS Z NS NS NM NM NL defuzzification method, p is used to represent either
M PM PM PS PS Z NS NS NM NM Dpc(t + 1) or Dpm(t + 1).
LM PL PM PM PS PS Z NS NS NM
Step 2: The crisp value, p*, is calculated by using the following
SS PL PL PM PM PS PS Z NS NS
S PLR PL PL PM PM PS PS Z NS formula,
VS PLR PLR PL PL PM PM PS PS Z Pq1
e¼1 v e  lð v e Þ
p ¼ Pq1 ð11Þ
e¼1 lðv e Þ

where q is the total number of equal subintervals.


Table 5
Twelve combination sets of rules for output membership values of Dpc(t + 1) and
Dpm(t + 1). 5. Simulation results
Set number Dpc(t + 1) Dpm(t + 1)
This section will present the details of simulation implementa-
1 Table 4a Table 4b
2 Table 4a Table 4c tion and the performance comparison of various MOEAs. Three sce-
3 Table 4a Table 4d narios of VRP, (i) 5 depots and 50 customers, (ii) 15 depots and 150
4 Table 4b Table 4a customers, (iii) 25 depots and 250 customers, were produced for
5 Table 4b Table 4c the simulations. In each scenario, we considered 10 various data
6 Table 4b Table 4d
7 Table 4c Table 4a
sets for which the distances between each pair of nodes (customer
8 Table 4c Table 4b or depot), supply of each product from each depot, demand for
9 Table 4c Table 4d each product by each customer, and volume of each product were
10 Table 4d Table 4a randomly generated. The model of time-dependent travel time and
11 Table 4d Table 4b
the travel speed matrices given in Ichoua et al. (2003) were
12 Table 4d Table 4c
adopted in the simulations.
As mentioned before, a number of MOEAs, i.e. NSGA2, SPEA2,
FL-SPEA2, MICROGA, and FL-MICROGA were utilized to compare
with FL-NSGA2 via simulations. All of them used the same chromo-
minimizing its waiting time. Fig. 9 depicts this method, and its some encoding method, crossover operation and mutation opera-
implementation procedures are given as follows. tion as described in the previous section. In order to produce fair
performance comparisons of various MOEAs, the number of objec-
Step 1: Suppose that the aggregated output lies on membership tive function evaluations remained the same for all of them. Then,
functions of NL and NM as shown in Fig. 9. Divide the in the parameter settings, the population size and maximum gen-
interval [v0, v10] of aggregated output p into a number erations of each MOEA were adjusted to fulfill this criterion. The
of equal subintervals, say, 10 equal subintervals. Note that crossover type and probability, and mutation type and probability
8264 H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268

Table 7
Means of the Deb and Jain convergence metric for the 10 different data sets of a selected scenario (ii).

Data set Rule set


1 2 3 4 5 6 7 8 9 10 11 12
1 0.141359 0.293852 0.171352 0.464943 0.471691 0.385142 0.401618 0.235673 0.200845 0.320441 0.178848 0.444469
2 0.180874 0.283856 0.247307 0.447561 0.409153 0.324067 0.375387 0.227589 0.212396 0.370969 0.260283 0.424961
3 0.163584 0.329939 0.220447 0.433394 0.395968 0.276373 0.365817 0.242961 0.188052 0.318964 0.234185 0.387146
4 0.170928 0.308979 0.162028 0.387719 0.387267 0.360253 0.377841 0.271033 0.264681 0.401843 0.243291 0.401747
5 0.193287 0.279557 0.232581 0.409521 0.426558 0.284043 0.369356 0.231049 0.247006 0.342518 0.286977 0.351588
6 0.189655 0.310347 0.251181 0.372817 0.419932 0.305904 0.313806 0.289035 0.252103 0.367529 0.291131 0.373446
7 0.210682 0.301251 0.248271 0.299318 0.379499 0.343378 0.381112 0.252735 0.268483 0.419732 0.277435 0.428074
8 0.190352 0.272405 0.228415 0.311782 0.404922 0.304938 0.412266 0.253252 0.245404 0.356774 0.279432 0.458226
9 0.155247 0.290236 0.260374 0.416384 0.387499 0.326901 0.409116 0.300287 0.208522 0.307147 0.256107 0.369735
10 0.175071 0.311486 0.245415 0.397545 0.425658 0.275591 0.372734 0.290356 0.221867 0.420432 0.262957 0.382031

Table 8
Means of the spread for the 10 different data sets of a selected scenario (ii).

Data set Rule set


1 2 3 4 5 6 7 8 9 10 11 12
1 0.507248 0.722773 0.587069 0.616199 0.761895 0.613956 0.879910 0.590301 0.533097 0.859111 0.566225 0.624775
2 0.544564 0.894253 0.614790 0.689688 0.989196 0.840449 0.819915 0.605417 0.590014 0.968526 0.631327 0.674215
3 0.598051 0.675176 0.625578 0.712073 0.939024 0.866826 0.781196 0.567095 0.643692 0.785584 0.648051 0.702714
4 0.606892 0.845378 0.665075 0.786884 0.836946 0.847918 0.796577 0.641377 0.642247 0.901481 0.659932 0.738456
5 0.588127 0.777978 0.657241 0.741874 0.788828 0.730705 0.693697 0.661176 0.660647 0.858297 0.657064 0.686192
6 0.627822 0.758843 0.648386 0.762233 0.799259 0.702396 0.869716 0.650563 0.653433 0.866131 0.701202 0.700697
7 0.576662 0.726849 0.632121 0.784936 0.962584 0.855504 0.782215 0.631598 0.637432 0.806675 0.606143 0.720801
8 0.636283 0.823897 0.703711 0.754498 0.886801 0.790826 0.741196 0.645775 0.660695 0.788049 0.649384 0.695998
9 0.620233 0.799936 0.686725 0.705814 0.797957 0.770425 0.773944 0.689472 0.615376 0.771548 0.682535 0.747556
10 0.591692 0.711445 0.669858 0.733909 0.786972 0.805224 0.856145 0.693059 0.672292 0.831708 0.716328 0.699589

of MOEAs were the same, for the sake of fair comparison. All of The means of the Deb and Jain convergence metric and spread
other unique parameters for each MOEA were set to the best for the 10 different data sets of a selected scenario (ii) are tabulated
parameters reported from the past studies. Table 6 shows the in Tables 7 and 8, respectively. Note that the rule set numbers are
MOEAs’ parameters used in the simulations. the same as those listed in Table 5. Also, the best metric value (i.e.
To evaluate the quality of non-dominated solution sets found by the most minimum value) of Deb and Jain convergence metric and
each MOEA, two performance metrics, Deb and Jain convergence spread in each data set is highlighted in bold type. For the results of
metric (Deb & Jain, 2002) and spread (Deb, 2001), were adopted Deb and Jain convergence metric, the rule set 1 obtained the best
in the analysis. The former one was for evaluating the closeness be- metric value for all data sets, except set 4. For the results of spread,
tween the non-dominated solution set found by a MOEA and the the rule set 1 acquired the best metric value for all data sets, except
reference solution set, i.e. convergence. The latter one was for eval- sets 3 and 9. This showed that the rule set 1 is the best performer of
uating the spread of the non-dominated solution set along the ref- all twelve rule sets and therefore is the most suitable choice.
erence solution set, i.e. diversity. 50 simulation runs were The reason why the rule set 1 is the most appropriate one is that
performed for each MOEA in each of 10 data sets. The means of if the difference between the average fitness values of the popula-
the two performance metrics were then obtained. tion is NLR and the population diversity is VL, the crossover rate is
Since a set of true Pareto-optimal solutions is unknown for each greatly increased so as to enhance the information exchange be-
of 10 data sets, a set of reference solutions was found to approxi- tween chromosomes for increasing the chance of finding more
mate the true Pareto-optimal set for the calculations of the perfor- good-quality solutions. The increase of the crossover rate can also
mance metrics. This reference set was obtained by incorporating enhance the speed of population convergence in order to minimize
the MOEAs’ parameters shown in Table 6 together with arbitrarily the overall running time for obtaining good-quality solutions.
assigned longer running times (3000 generations for NSGA2, However, the mutation rate should be greatly reduced in order
SPEA2, FL-NSGA2 and FL-SPEA2, and 75,000 generations for MIC- not to alter the search from a guided random one to a totally ran-
ROGA and FL-MICROGA). dom one which can reduce the quality of the solution of the whole
population. Once the rules in the upper left corner of the rule tables
5.1. Performance comparison of different sets of fuzzy IF-THEN rules are determined, other rules can be derived.

As mentioned in Section 4.2.2, there are no guidelines for the 5.2. Performance comparison of FL-NSGA2, FL-SPEA2, FL-MICROGA,
design of IF-THEN rules. They are based on expert knowledge NSGA2, SPEA2, and MICROGA by using the best set of fuzzy rules
and experience. For the 12 possible combination sets of rules for
output membership values of Dpc(t + 1) and Dpm(t + 1) as shown In this section, the performance of FL-NSGA2 is compared with
in Table 5, set 1 is the most reasonable and the most appropriate that of NSGA2, SPEA2, FL-SPEA2, MICROGA, and FL-MICROGA via
choice. In order to justify our choice of rules, simulations of FL- 10 various data sets of each of three different scenarios by using
NSGA2 were conducted. The parameters of FL-NSGA2 used in the the best set of fuzzy rules, i.e. rule set 1. The means of the Deb
simulations were the same as those in Table 6. Simulation results and Jain convergence metric and spread for the 10 different data
were obtained in terms of Deb and Jain convergence metric and sets of scenario (i) are tabulated in Tables 9 and 10, respectively.
spread. The means for scenarios (ii) and (iii) are tabulated in
H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268 8265

Table 9
The means of the Deb and Jain convergence metric for the 10 different data sets of scenario (i).

Data set MOEA


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 0.196683 0.292871 0.383517 0.305051 0.376876 0.467892
2 0.156529 0.313081 0.397146 0.312698 0.389779 0.471635
3 0.294487 0.200027 0.356136 0.295715 0.374047 0.493641
4 0.198013 0.223194 0.326806 0.257646 0.384556 0.484082
5 0.174476 0.252522 0.340158 0.247591 0.381075 0.465493
6 0.212671 0.190036 0.385186 0.272385 0.323675 0.438083
7 0.189441 0.260784 0.355849 0.304489 0.341023 0.447371
8 0.205274 0.274502 0.337076 0.319111 0.362684 0.468438
9 0.178713 0.229875 0.345674 0.265009 0.344966 0.432859
10 0.175324 0.307939 0.376998 0.255754 0.372604 0.477493

Table 10
The means of the spread for the 10 different data sets of scenario (i).

Data set MOEA


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 0.619357 0.607883 0.801346 0.734779 0.817073 0.929029
2 0.581362 0.731056 0.885067 0.773156 0.787835 0.924711
3 0.564074 0.651357 0.783323 0.777783 0.813532 0.949629
4 0.618938 0.708098 0.841578 0.745006 0.795813 0.905246
5 0.685626 0.622486 0.814966 0.731452 0.824376 0.960814
6 0.595936 0.669155 0.799725 0.684651 0.779202 0.904081
7 0.571762 0.632919 0.837858 0.672687 0.804917 0.891314
8 0.613321 0.635973 0.876812 0.705559 0.788053 0.898741
9 0.575997 0.696285 0.842891 0.727876 0.798746 0.922045
10 0.592716 0.673986 0.836589 0.765511 0.808045 0.915937

Tables 11–14, respectively. In these tables, the best metric value diversity than other MOEAs. Nevertheless, in some data sets of
(i.e. the minimum value) of Deb and Jain convergence metric and all scenarios, the performance of FL-NSGA2 is not the best because
spread in each data set is highlighted in bold type. it is a stochastic search technique which does not guarantee that it
The simulation results are summarized as follows: must win all the time. In addition, it is observed that as the VRP be-
comes harder (i.e. the number of depots and customers increase),
1. Scenario (i): FL-NSGA2 found smaller values of Deb and Jain con- the performance of FL-NSGA2 seems to be better (i.e. produces
vergence metric than did FL-SPEA2, FL-MICROGA, NSGA2, smaller values of both two metrics for most of data sets in scenario
SPEA2, and MICROGA for all data sets, except sets 3 and 6 as (iii)).
shown in Table 9. In Table 10, FL-NSGA2 produced smaller val- FL-NSGA2, FL-SPEA2, and FL-MICROGA produced better results
ues of spread than other MOEAs for all data sets, except sets 1 than the ones without the guide of fuzzy logic for all three scenar-
and 5. ios. The reason is that fuzzy logic can adjust the crossover rate and
2. Scenario (ii): FL-NSGA2 produced smaller values of Deb and Jain the mutation rate to suitable values for various evolution states of
convergence metric than others for all data sets, except sets 8 the population. Since crossover and mutation contribute to the
and 10 as shown in Table 11 and smaller values of spread for convergence and diversity of the population respectively, their
all data sets, except set 7 as given in Table 12. adjustable rates can balance the degree of convergence and diver-
3. Scenario (iii): FL-NSGA2 produced smaller values of Deb and Jain sity of the population no matter what the current state of the pop-
convergence metric than others for all data sets, except set 8 as ulation is. This can prevent premature convergence and over-
shown in Table 13 and smaller values of spread for all data sets diversity from happening in any state of the population and there-
as given in Table 14. fore effectively improve the search performance of MOEAs.
The running times of these three scenarios are tabulated in
Based on the above results, generally, FL-NSGA2 is able to pro- Tables 15–17. From these tables, it can be seen that the running
duce non-dominated solution sets with better convergence and times of fuzzy logic guided MOEAs, i.e. FL-NSGA2, FL-SPEA2, and

Table 11
The means of the Deb and Jain convergence metric for the 10 different data sets of scenario (ii).

Data set MOEA


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 0.141359 0.198418 0.419938 0.277184 0.300506 0.486026
2 0.180874 0.264737 0.428004 0.297432 0.331592 0.469054
3 0.163584 0.259616 0.400388 0.314147 0.352385 0.459117
4 0.170928 0.224403 0.432453 0.308841 0.307212 0.433459
5 0.193287 0.278611 0.398476 0.281507 0.324716 0.417522
6 0.189655 0.200289 0.416207 0.268133 0.289395 0.475394
7 0.210682 0.260836 0.429297 0.286102 0.299677 0.459853
8 0.190352 0.176432 0.390243 0.297812 0.316145 0.418259
9 0.155247 0.251579 0.407096 0.303894 0.329719 0.434214
10 0.175071 0.150721 0.388092 0.269773 0.279703 0.445546
8266 H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268

Table 12
The means of the spread for the 10 different data sets of scenario (ii).

Data set MOEA


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 0.507248 0.623402 0.804951 0.672453 0.759004 0.933241
2 0.544564 0.651256 0.823099 0.684286 0.709754 0.935377
3 0.598051 0.611429 0.897598 0.706146 0.738838 0.910648
4 0.606892 0.682658 0.889554 0.729287 0.759349 0.920603
5 0.588127 0.659407 0.808609 0.713157 0.734519 0.917604
6 0.627822 0.726568 0.834407 0.720695 0.787537 0.934457
7 0.607334 0.576662 0.810318 0.767202 0.747658 0.944633
8 0.636283 0.705356 0.836436 0.718192 0.786398 0.948122
9 0.620233 0.712577 0.823872 0.731931 0.779403 0.900517
10 0.591692 0.671406 0.821787 0.724339 0.740552 0.951231

Table 13
The means of the Deb and Jain convergence metric for the 10 different data sets of scenario (iii).

Data set MOEA


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 0.224818 0.292425 0.420103 0.286924 0.360073 0.429704
2 0.219144 0.312201 0.418949 0.278477 0.379603 0.433055
3 0.201005 0.336431 0.405847 0.303555 0.397902 0.417292
4 0.202847 0.285962 0.408151 0.297919 0.386447 0.436465
5 0.192692 0.326032 0.394576 0.327252 0.362569 0.415595
6 0.210245 0.328577 0.418967 0.310526 0.395334 0.435548
7 0.187819 0.288533 0.399032 0.321842 0.380624 0.455898
8 0.298459 0.217899 0.388631 0.280262 0.357169 0.411089
9 0.215068 0.301188 0.390547 0.300867 0.363146 0.426081
10 0.194081 0.311617 0.402156 0.323826 0.352239 0.438119

Table 14
The means of the spread for the 10 different data sets of scenario (iii).

Data set MOEA


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 0.689149 0.757277 0.889478 0.730878 0.795418 0.972976
2 0.642217 0.769259 0.852682 0.701979 0.773359 0.919828
3 0.660085 0.734931 0.840495 0.766924 0.810252 0.939625
4 0.673894 0.752793 0.873918 0.749796 0.809514 0.930174
5 0.635026 0.721771 0.902381 0.729587 0.737383 0.927133
6 0.682675 0.731789 0.867846 0.733985 0.784136 0.907561
7 0.670763 0.753923 0.835327 0.750955 0.806202 0.931394
8 0.700026 0.720858 0.882637 0.715113 0.726711 0.921726
9 0.649953 0.765725 0.868399 0.767648 0.821048 0.899901
10 0.697581 0.746789 0.844859 0.746132 0.788526 0.900123

Table 15
The running times of 10 different data sets of scenario (i).

Data set MOEA (s)


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 1833 2096 1994 1703 1998 1920
2 1904 2072 1936 1849 1909 1900
3 1919 1973 1998 1726 1945 1882
4 1871 2048 2009 1819 2001 1843
5 1923 2081 1988 1865 1985 1931
6 1915 2016 1974 1787 2006 1879
7 1928 2031 2007 1710 1976 1942
8 1810 1985 1965 1754 1953 1888
9 1896 2056 2027 1793 1994 1879
10 1861 1998 2015 1898 2013 1942
H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268 8267

Table 16
The running times of 10 different data sets of scenario (ii).

Data set MOEA (s)


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 2652 2874 2781 2596 2773 2738
2 2682 2868 2828 2627 2791 2774
3 2704 2875 2806 2570 2712 2686
4 2710 2901 2814 2583 2768 2745
5 2668 2913 2793 2601 2801 2787
6 2715 2847 2771 2578 2813 2690
7 2673 2880 2827 2605 2798 2763
8 2691 2871 2799 2622 2774 2769
9 2642 2926 2832 2584 2806 2744
10 2709 2887 2822 2589 2785 2753

Table 17
The running times of 10 different data sets of scenario (iii).

Data set MOEA (s)


FL-NSGA2 FL-SPEA2 FL-MICROGA NSGA2 SPEA2 MICROGA
1 3391 3528 3424 3250 3444 3346
2 3406 3539 3392 3275 3406 3373
3 3417 3492 3400 3239 3419 3315
4 3398 3484 3416 3276 3395 3334
5 3420 3526 3383 3251 3421 3370
6 3386 3511 3389 3264 3429 3351
7 3393 3497 3431 3303 3437 3317
8 3408 3503 3429 3295 3426 3349
9 3385 3518 3396 3282 3396 3362
10 3399 3485 3415 3308 3410 3375

Variation of crossover rate Variation of mutation rate


1 0.06

0.9 0.05
Crossover rate

Mutation rate

0.8 0.04

0.7 0.03

0.6 0.02
0 100 200 300 400 500 600 700 800 900 100011001200130014001500 0 100 200 300 400 500 600 700 800 900 1000 1100 1200 1300 1400 1500
Generation number Generation number

Fig. 10. Plot of crossover rate against generation number for a simulation run of FL- Fig. 11. Plot of mutation rate against generation number for a simulation run of FL-
NSGA2. NSGA2.

FL-MICROGA, are greater than those without the guide of fuzzy lo- From 0th generation to 600th generation, the average fitness of
gic. Obviously, the reason is that extra computational load is the population decreases and the population diversity is large.
needed for the guide of fuzzy logic. However, from the authors’ Thus, the crossover rate increases from 0.7 and the mutation rate
point of view, the magnitude increase of running times is not huge decreases from 0.05. From 600th generation to 1000th generation,
and therefore it is worthwhile to implement those guided MOEAs the fluctuation of the average fitness of the population and that of
in order to improve the search performance. the population diversity results in the increase or decrease of the
crossover rate and mutation rate. From 1000th generation to
5.3. Variation of crossover and mutation rates throughout a simulation 1500th generation, the state of the search becomes steady. Thus,
run of FL-NSGA2 the magnitude of the increase and decrease of the two rates is
much less than that between 600th generation and 1000th
The values of crossover and mutation rates can be different in generation.
each ten consecutive generations. In order to realize how these
two rates change in a simulation run of FL-NSGA2 in a selected sce- 6. Conclusions
nario (ii), their values are recorded in each 100 generations and
plotted in Figs. 10 and 11, respectively. From these figures, it can Multi-objective vehicle routing problem with multiple depots,
be observed that the crossover rate varies between 0.7 and 0.94 multiple customers, and multiple products has been studied. The
and the mutation rate changes between 0.026 and 0.05. objective has been to simultaneously minimize both the total
8268 H.C.W. Lau et al. / Expert Systems with Applications 36 (2009) 8255–8268

traveling distance and the total traveling time. A MOEA called FL- Lambert, V., Laporte, G., & Louveaux, F. (1993). Designing collection routes through
bank branches. Computers and Operations Research, 20(7), 783–791.
NSGA2 was proposed to solve this multi-objective optimization
Lee, C. C. (1990). Fuzzy logic in control systems: Fuzzy logic controller – Part I. IEEE
problem. The role of fuzzy logic is to dynamically adjust the cross- Transactions on Systems, Man, and Cybernetics, 20(2), 404–418.
over rate and mutation rate after ten consecutive generations. Also, Lim, A., & Wang, F. (2005). Multi-depot vehicle routing problem: A one-stage
other MOEAs, i.e. NSGA2, SPEA2, FL-SPEA2, MICROGA, and FL-MIC- approach. IEEE Transactions on Automation Science and Engineering, 2(4),
397–402.
ROGA, were adopted to compare their performance with that of FL- Lotfi, A. A., & Kashani, F. H. (2004). Bandwidth optimization of the E-shaped
NSGA2. Three different scenarios were considered in the simula- microstrip antenna using the genetic algorithm based on fuzzy decision making.
tions. Results showed that FL-NSGA2 outperformed others in all In Proceedings of 2004 IEEE antennas and propagation society international
symposium, Monterey, California, June 20–26 (pp. 2333–2336).
three scenarios. Louis, S. J., Yin, X., & Yuan, Z. Y. (1999). Multiple vehicle routing with time windows
using genetic algorithms. In Proceedings of the 1999 congress on evolutionary
Acknowledgement computation, Washington, DC, USA, July 6–9 (pp. 1804–1808).
Maeda, O., Nakamura, M., Ombuki, B. M., & Onaga, K. (1999). A genetic
algorithm approach to vehicle routing problem with time deadlines in
The authors wish to thank the Research Office of the Hong Kong geographical information systems. In Proceedings of 1999 IEEE international
Polytechnic University for the support of this project. conference on systems, man, and cybernetics, Tokyo, Japan, October 12–15
(pp. 595–600).
Malandraki, C., & Daskin, M. S. (1992). Time dependent vehicle routing problems:
References Formulations, properties and heuristic algorithms. Transportation Science, 26(3),
185–200.
Alvarenga, G. B., & Mateus, G. R. (2004). A two-phase genetic and set partitioning McClintock, S., Lunney, T., & Hashim, A. (1997a). Using fuzzy logic to optimize
approach for the vehicle routing problem with time windows. In Proceedings of genetic algorithm performance. In Proceedings of 1997 IEEE international
4th international conference on hybrid intelligent systems (pp. 428–433). conference on intelligent engineering systems, Budapest, Hungary, September 15–
Kitakyushu, Japan, December 5–8. 17 (pp. 271–275).
Baker, B. M., & Ayechew, M. A. (2003). A genetic algorithm for the vehicle routing McClintock, S., Lunney, T., & Hashim, A. (1997b). A fuzzy logic controlled genetic
problem. Computers and Operations Research, 30(5), 787–800. algorithm environment. In Proceedings of 1997 IEEE international conference on
Baker, B. M., & Sheasby, J. (1999). Extensions to the generalised assignment systems, man, and cybernetics, Orlando, Florida, USA, October 12–15 (pp. 2181–
heuristic for vehicle routing. European Journal of Operational Research, 119(1), 2186).
147–157. Michalewicz, Z. (1996). Genetic algorithms + data structures = evolution programs.
Chen, G., & Pham, T. T. (2001). Introduction to fuzzy sets, fuzzy logic, and fuzzy control Berlin, New York: Springer-Verlag.
systems. Boca Raton: CRC Press. Montané, F. A. T., & Galvão, R. D. (2006). A tabu search algorithm for the vehicle
Coello Coello, C. A., & Toscano Pulido, G. (2001a). A micro-genetic algorithm for routing problem with simultaneous pick-up and delivery service. Computers and
multi-objective optimization. In E. Zitzler et al. (Eds.), Proceedings of the 1st Operations Research, 33(3), 595–619.
international conference on evolutionary multi-criterion optimization Reed, J., Toombs, R., & Barricelli, N. A. (1967). Simulation of biological evolution and
(pp. 126–140). Berlin: Springer. machine learning. Journal of Theoretical Biology, 17, 319–342.
Coello Coello, C. A., & Toscano Pulido, G. (2001b). Multi-objective optimization Renaud, J., Laporte, G., & Boctor, F. F. (1996). A tabu search heuristic for the multi-
using a micro-genetic algorithm. In L. Spector et al. (Eds.), Proceedings of the depot vehicle routing problem. Computers and Operations Research, 23(3),
genetic and evolutionary computation conference (GECCO-2001) (pp. 274–282). 229–235.
San Francisco, California: Morgan Kaufmann Publishers. Ruiz, R., Maroto, C., & Alcaraz, J. (2004). A decision support system for a real vehicle
Coello Coello, C. A., Van Veldhuizen, D. A., & Lamont, G. B. (2002). Evolutionary routing problem. European Journal of Operational Research, 153(3), 593–606.
algorithms for solving multi-objective problems. Boston: Kluwer. Secomandi, N. (2000). Comparing neuro-dynamic programming algorithms for the
De Jong, K. A. (1975). An analysis of the behavior of a class of genetic adaptive systems. vehicle routing problem with stochastic demands. Computers and Operations
Ph.D. dissertation, University of Michigan, Ann Arbor. Research, 27(11–12), 1201–1225.
Deb, K. (2001). Multi-objective optimization using evolutionary algorithms. Skok, M., Skrlec, D., & Krajcar, S. (2000). The genetic algorithm method for multiple
Chichester: Wiley. depot capacitated vehicle routing problem solving. In Proceedings of 4th
Deb, K., Agrawal, S., Pratap, A., & Meyarivan, T. (2000). A fast elitist non-dominated international conference on knowledge-based intelligent engineering systems and
sorting genetic algorithm for multi-objective optimization: NSGA-II. In M. allied technologies, Brighton, UK, August 30–September 1 (pp. 520–526).
Schoenauer et al. (Eds.), Proceedings of the 6th international conference on parallel Skrlec, D., Filipec, M., & Krajcar, S. (1997). A heuristic modification of genetic
problem solving from nature (PPSN VI) (pp. 849–858). Berlin, New York: Springer. algorithm used for solving the single depot capacitated vehicle routing problem.
Deb, K., & Jain, S. (2002). Running performance metrics for evolutionary multi-objective In Proceedings of intelligent information systems, Grand Bahama Island, Bahamas,
optimization. Technical report (KanGAL Report No. 2002004), Kanpur Genetic December 8–10 (pp. 184–188).
Algorithms Laboratory, Indian Institute of Technology, Kanpur, India. Song, Y. H., Wang, G. S., Wang, P. Y., & Johns, A. T. (1997). Environmental/economic
Deb, K., Pratap, A., Agrawal, S., & Meyarivan, T. (2002). A fast and elitist multi- dispatch using fuzzy logic controlled genetic algorithms. IEE Proceedings of
objective genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Generation Transmission and Distribution, 144(4), 377–382.
Computation, 6(2), 182–197. Subbu, R., Sanderson, A. C., & Bonissone, P. P. (1998). Fuzzy logic controlled genetic
Fu, L., & Rilett, L. R. (1998). Expected shortest paths in dynamic and stochastic traffic algorithms versus tuned genetic algorithms: An agile manufacturing
networks. Transportation Research Part B: Methodological, 32(7), 499–516. application. In Proceedings of the 1998 IEEE international symposium on
Gendreau, M., Laporte, G., & Seguin, R. (1996). Stochastic vehicle routing. European intelligent control, Gaithersburg, Maryland, USA, September 14–17 (pp. 434–440).
Journal of Operational Research, 88(1), 3–12. Tan, K. C., Lee, L. H., & Ou, K. (2001). Artificial intelligence heuristics in solving
Goldberg, D. E. (1989). Genetic algorithms in search, optimization, and machine vehicle routing problems with time window constraints. Engineering
learning. Reading, Mass.: Addison-Wesley. Applications of Artificial Intelligence, 14(6), 825–837.
Grefenstette, J. J. (1986). Optimization of control parameters for genetic algorithms. Tong, Z., Ning, L., & Debao, S. (2004). Genetic algorithm for vehicle routing problem
IEEE Transactions on Systems, Man and Cybernetics, 16(1), 122–128. with time window with uncertain vehicle number. In Fifth world congress on
Hill, A. V., & Benton, W. C. (1992). Modeling intra-city time-dependent travel speeds intelligent control and automation, Hangzhou, China, June 15–19 (pp. 2846–2849).
for vehicle scheduling problems. The Journal of the Operational Research Society, Tsutsui, S., & Wilson, G. (2004). Solving capacitated vehicle routing problems using
43(4), 343–351. edge histogram based sampling algorithms. In Proceedings of the 2004 congress
Ho, S. C., & Haugland, D. (2004). A tabu search heuristic for the vehicle routing on evolutionary computation, Portland, Oregon, June 19–23 (pp. 1150–1157).
problem with time windows and split deliveries. Computers and Operations Yen, J., & Langari, R. (1999). Fuzzy logic: Intelligence, control, and information. Upper
Research, 31(12), 1947–1964. Saddle River, NJ: Prentice Hall.
Holland, J. H. (1975). Adaption in natural and artificial systems. MIT Press. Yoshiike, N., & Takefuji, Y. (2002). Solving vehicle routing problems by maximum
Hwang, H. S. (2002). An improved model for vehicle routing problem with time neuron model. Advanced Engineering Informatics, 16(2), 99–105.
constraint based on genetic algorithm. Computers and Industrial Engineering, Zadeh, L. A. (1965). Fuzzy sets. Information and Control, 8, 338–353.
42(2–4), 361–369. Zhu, K. Q. (2003). A diversity-controlling adaptive genetic algorithm for the vehicle
Ichoua, S., Gendreau, M., & Potvin, J.-Y. (2003). Vehicle dispatching with time- routing problem with time windows. In Proceedings of 15th IEEE international
dependent travel times. European Journal of Operational Research, 144(2), conference on tools with artificial intelligence, Sacramento, California, USA,
379–396. November 3–5 (pp. 176–183).
Kallehauge, B., Larsen, J., & Madsen, O. B. G. (2006). Lagrangian duality applied to the Zhu, Q., Qian, L., Li, Y., & Zhu, S. (2006). An improved particle swarm optimization
vehicle routing problem with time windows. Computers and Operations algorithm for vehicle routing problem with time windows. In Proceedings of the
Research, 33(5), 1464–1487. 2006 IEEE congress on evolutionary computation, Vancouver, Canada, July 16–21
King, R. T. F. A., Radha, B., & Rughooputh, H. C. S. (2004). A fuzzy logic controlled (pp. 1386–1390).
genetic algorithm for optimal electrical distribution network reconfiguration. In Zitzler, E., Laumanns, M., & Thiele, L. (2001). SPEA2: Improving the strength Pareto
Proceedings of 2004 IEEE international conference on networking, sensing and evolutionary algorithm. Technical report (TIK-Report 103), Swiss Federal
control, Taipei, Taiwan, March 21–23 (pp. 577–582). Institute of Technology, Lausanne, Switzerland, May.

Вам также может понравиться