Computers & Industrial Engineering 74 (2014) 1–10
Contents lists available at ScienceDirect
Computers & Industrial Engineering journal homepage: www.elsevier.com/locate/caie
A multi-objective model for facility location–allocation problem with immobile servers within queuing framework Seyed Habib A. Rahmati a, Abbas Ahmadi a, Mani Sharifi b, Amirhossain Chambari c,⇑ a
Department of Industrial Engineering and Management Systems, Amirkabir University of Technology, Tehran, Iran Faculty of Industrial and Mechanical Engineering, Qazvin Branch, Islamic Azad University, Qazvin, Iran c Young Researcher Club, Qazvin Branch, Islamic Azad University, Qazvin, Iran b
a r t i c l e
i n f o
Article history: Received 21 September 2012 Received in revised form 25 April 2014 Accepted 28 April 2014 Available online 9 May 2014 Keywords: Queuing Location–allocation Immobile servers Multi-objective evolutionary algorithms Statistical tests
a b s t r a c t This research investigates a practical bi-objective model for the facility location–allocation (BOFLA) problem with immobile servers and stochastic demand within the M/M/1/K queue system. The first goal of the research is to develop a mathematical model in which customers and service providers are considered as perspectives. The objectives of the developed model are minimization of the total cost of server provider and minimization of the total time of customers. This model has different real world applications, including locating bank automated teller machines (ATMs), different types of vendor machines, etc. For solving the model, two popular multi-objective evolutionary algorithms (MOEA) of the literature are implemented. The first algorithm is non-dominated sorted genetic algorithm (NSGA-II) and the second one is non-dominated ranked genetic algorithm (NRGA). Moreover, to illustrate the effectiveness of the proposed algorithms, some numerical examples are presented and analyzed statistically. The results indicate that the proposed algorithms provide an effective means to solve the problems. 2014 Elsevier Ltd. All rights reserved.
1. Introduction Since the 17th century, facility location–allocation (FLA) models have been the subject of many studies (Francis, Megginis, & White, 1992) and covered the both discrete and continuous locating cases. Current, Daskin, and Schilling (2002) presented a short review of discrete location models. An important case in the FLA problems is proxy server problems. For this subject, Li, Golin, Italiano, Deng, and Sohraby (1999) proposed Dynamic Programming (DP) as optimal placement of web proxies on the Internet. Another important development of this case belongs to Gautam (2002) that develop a bi-objective model which minimizes setup/maintenance and operating costs to locate and determine the optimal number of the proxy servers on a communication network. Other related studies are also proposed in the literature. Another important FLA problem is called the stochastic queue median model (SQM). SQM can be assumed for a mobile server such as an emergency response unit (Berman, Larson, & Chiu, 1985). SQM is one of the main bases of this research. However, in this paper another practical implementation of the FLA models, which is immobile servers, is considered. ⇑ Corresponding author. Tel.: +98 2129933401; fax: +98 21 22933401. E-mail address:
[email protected] (A. Chambari). http://dx.doi.org/10.1016/j.cie.2014.04.018 0360-8352/ 2014 Elsevier Ltd. All rights reserved.
Hodgson (1990) has also developed a famous FLA which is called the flow-capturing model. The flow capturing problem can be applied for locating gas stations and different types of convenience stores (Berman, Hodgson, & Krass, 1995). The combination of FLA and queuing theory has also been considered in the literature (Berman, Krass, & Wang, 2006). This branch of the FLA literature makes other bases for model development of this research. Berman et al. (2006) suggested a M/M/1/N queue model with respect to two objectives, including (1) the number of facilities that are treated by limiting the system capacity and (2) the percentage of demand that may be lost due to the model’s limitations. In this area, the effect of using expected service time with regard to the queuing principle on the optimal location on a server was studied by Batta, Dolan, and Krishnamurthy (1989). Besides, Marianov and Serra (1998) proposed several probabilistic maximal FLA models with the constraint of waiting time in the queue in order to consider service congestion. Wang, Batta, and Rump (2002) studied a facility location problem with stochastic customer demand and immobile servers to minimize total traveling cost and waiting cost for the customer. In their M/M/1 model, immobile service facilities are congested by stochastic demand originating from nearby customer locations. Their three proposed algorithms include a greedy dropping procedure, a Tabu search approach, and a e-optimal branch-and-bound method. In a related development, Wang,
2
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10
Batta, and Rump (2004) have presented three models for the FLA with three different perspectives, which are service providers, customers, and a combination of customer and service provider. Their models are used for those situations, in which immobile service facilities are congested by stochastic surrounding customer locations demand. Their queuing model was an M/M/1 model which was solved with some heuristic algorithms. Liu, Chai, and Liu (2004) have integrated the service level constraints with uncertainty of customer demands. Meanwhile, Boffey, Galvao, and Espejo (2007) reviewed the FLA of immobile servers in congestion models. A bi-objective model for FLA in M/M/1 was developed by Pasandideh and Niaki (2010). They solved their model with classical methods in which a multi-objective problem is integrated to the single objective problem. Considering this literature, in this paper, the proposed mathematical model is a discrete bi-objective FLA model (BOFLA) in which both customers and service providers are considered as perspectives. Actually, the model consists of many immobile (fixed) server locations and customers are supposed to travel to open immobile servers to receive services. We model this service facilities problem as the M/M/1/K queuing system. The objectives of the model are minimizing total cost of server provider and the total time of customers. Then, since the proposed model belongs to an NP-Hard class of optimization problems (Garey & Johnson, 1979), two multi-objective evolutionary algorithms (MOEA) are implemented. One of these algorithms is called the non-dominated sorting genetic algorithm (NSGA-II) and the other one is called the non-dominated ranked genetic algorithm (NRGA). These MOEA do not convert a multi-objective problem to a single objective one and are expected to have better results than the classical MOEA (Deb, 2001). In this paper, a new solution structure is also developed. This solution structure, which is used as a chromosome, produces a legal solution that does not need repair during the different evolutions. The remaining part of the paper is organized as follows. The problem is introduced and modeled in Section 2. Section 3 describes the proposed algorithms. Section 4 presents the computational experiments and the statistical analysis of the results. Finally, Section 5 concludes the paper.
4. Set up cost of each potential facility node is assumed to be known. 5. System capacity cost is predetermined. 6. The maximum number of open facilities is determined. 7. For each server, an upper and lower bound is considered as its system capacity. 2.1. Mathematical model Notations of the mathematical model are as follows: Nomenclature j i rj M N P tij ki
lj H
cj wj xij kj f1j f2j
qj Lj T1
2. Problem definition V1 The model of the paper includes set of n potential facilities (set N), set of m users or customers (set M), a constant parameter P ðP 6 NÞ, and an objective function F : N M ! R. This model is going to determine which P facilities should be opened in order to optimize the objective function. The objective is usually the sum of the time (or distance) for traveling from each user to its closest open facility (Kariv & Hakimi, 1979). In the proposed mathematical problem, two minimizing objective functions are considered. The first objective function minimizes total setup cost of facilities and cost of system capacity whereas the second one minimizes total expected traveling time and waiting time of customers. Determination of the optimal allocation of customers to the service providers with respect to the mentioned objectives and constrains creates the main structure of the model. In this problem, the service provider and the customers are considered simultaneously. The following assumptions are also considered. 1. Each of the customer nodes can only be allocated to one server. 2. Service requests follow Poisson probability distribution. 3. The service time of the open facility nodes follow exponential distribution.
z1 z2 h
pkj
cj yj
potential facility index j ¼ 1; :::; N customer index i ¼ 1; :::; M utilization rate at open facility j Set of customer nodes Set of potential facility nodes maximum number of facilities that can be opened ðP 6 NÞ the traveling time from customer node i to facility node j demand rate of service requests from customer node i common service rate of each server j upper bound of system capacity for potential facility j demand rate at open facility node j expected waiting time for customers assigned to facility node j 1; if customer i is assigned to facility j 0; otherwise integer; if a facility is opened at node j 0; otherwise fixed cost of locating a facility node j cost of one unit increment of system capacity at potential facility j utilization rate at open facility j considering the capacity constraint average amount of customers exist in facility j the aggregate travelling time of the customers per time unit the aggregate waiting time of the customer per time unit total setup cost and system capacity cost total traveling and waiting time lower bound of system capacity for potential facility j the probability of existence k customers waiting for service at opened facility j customer arrival rate at open facility node j 1; if a facility is opened at node j 0; otherwise
T1: can be obtained as Eq. (1).
T1 ¼
XX ki tij xij i
ð1Þ
j
Besides, the notationwj is calculated as Eq. (2).
wj ¼
Lj
cj ð1 pkj Þ
ð2Þ
This FLA is modeled as an M/M/1/K queuing system, in which K denotes the capacity of the system (Gross & Harris, 1998).
3
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10
Where cj ¼ 0 Lj ¼ @
X ki xij
1 rj
pkj ¼ rkj j
i k þ1
k þ1
1 rj j 1
;
ðkj þ 1Þr j j c rj A; and rj ¼ j : k þ1 1 rj lj 1r j j
In the M/M/1/K queuing model, the rate of customer demand is j : indicated with cj and rate of customer arrival is indicated with c Since the capacity of the system is sometimes fully assigned, some customers cannot be satisfied, and they are lost (Gross & Harris, j ) are 1998). Therefore, the two mentioned notations (cj and c mostly different. Consequently, the relationship between these two computational parameters is as Eq. (3).
cj ¼ cj ð1 pkj Þ
qj ¼
lj XX X ki wj xij ¼ i
j
j
Lj ð1 pkj Þ
X X f1j yj þ f2j kj j
ð5Þ
3. Multi-objective evolutionary algorithms (MOEA)
ð6Þ
i
j
j
Lj ð1 pkj Þ
S:t X yj 6 P
ð7Þ
ð8Þ
j
X xij ¼ 1 8i;
ð9Þ
j
xij 6 yj
8i; j;
ð10Þ
cj 6 lj 8j;
ð11Þ
hyj 6 kj 6 Hyj r j ¼ cj =lj
8j;
8j;
ð12Þ ð13Þ
kj P 0; integer 8j;
ð14Þ
xij 2 f0; 1g 8i; j;
ð15Þ
yj 2 f0; 1g 8j;
j kj þ1
ð4Þ
j
XX X ki t ij xij þ
Min z2 ¼
P
kj ; V 1 (Eq. (5)) is k
posed model belongs to a NP-Hard class of optimization problems (Garey & Johnson, 1979), we have proposed multi-objective evolutionary algorithms (MOEA) to access near optimal Pareto solutions. These algorithms will be further explained in the following section.
According to what was defined, the mathematical model of the problem is as follows:
Min z1 ¼
2cj
simplified to
V1 is calculated as Eq. (5).
V1 ¼
In this case, wj (Eq. (2)) is simplified to
ð3Þ
In the M/M/1/K queues, qj is formulated in Eq. (4).
cj
Eq. (10) is used for forcing the model to allocate customer nodes to open facilities. Eq. (11) is used for forcing the model to keep utilization rate less than or equal to one. Eq. (12) is used for forcing the model to keep the system capacity at open facility j between upper and lower bounds. Eq. (13) is used for calculating r j for open facility j. Eqs. (14) and (15) are used to show the ranges of the model variables. The depicted model, as an M/M/1/K queuing system, is a basic model that can be simplified when rj ¼ 1 (Gross & Harris, 1998).
ðkj þ1Þ ; j 2
and
pkj is simplified to
1 : kj þ1
Since the pro-
Most real world problems cope with several conflicting objectives. Therefore, considering some conflicting objectives is vital to make an optimization problem more realistic. Consequently, multi-objective optimization problems have found more attention during last decades. These problems are generally seeking the vectors x ¼ ½x1 ; x2 ; x3 ; :::; xn T of decision variables that simultaneously optimize M objective functions ff1 ðxÞ; f2 ðxÞ; f3 ðxÞ; :::; fm ðxÞg while satisfying the model’s constraints. Therefore, because of the conflicting nature of objectives in multi-objective problems, new types of solving algorithms are needed. In single objective optimization, algorithms were looking for only one global optimum. However, in multi-objective optimization, a set of equally important optimum solutions is looked for by the algorithms. In classical optimization methods, objectives are combined and the algorithms solve the multi-objective problem through an integrated single objective algorithm. It has been proven that these algorithms are non efficient in comparison with the new generation of MOEA (Deb, 2001). In new types of MOEA, instead of using integrated approaches, a domination concept is utilized. Accordingly, the following important concepts are developed. In a minimization problem, solution xi is said to dominate solution xj if 8m 2 1; 2; 3; :::; M; fm ðxi Þ 6 fm ðxj Þ and $m e 1, 2, 3, ..., M fm(xi) < fm(xj). If xi dominates the solution xj, xi is called the non-dominated solution. A vector of non-dominated solutions of a generation is called Pareto vector of that generation. 3.1. Non-dominated sorting genetic algorithms (NSGA-II)
2.2. Interpretation of the model’s equations 2.2.1. Objective functions Eq. (6) is defined for minimizing the total setup cost and capacity cost of the system in open facilities. Eq. (7) is defined for minimizing the total expected traveling time and waiting time of customers. It should be mentioned that these two objective functions are conflicting. This means that decrement of one, leads to increment of the other. 2.2.2. Constraints Eq. (8) is used for preventing the number of open facilities exceeds their limit. Eq. (9) is used for forcing the model to allocate customer nodes to only one facility.
NSGA-II which is one of the most efficient and well-known MOEA, was proposed by Deb, Agrawal, Pratap, and Meyarivan (2000). Its structure is described in Fig. 1. For more explicitly, the different steps of the algorithm are explained in the rest sub sections. 3.1.1. Initialization Following notations are used to describe the algorithm: MaxGen: The maximum number of the generations Popsize: The number of the individuals population Pc: Crossover operator ratio Pm: Mutation operator ratio These values will be set in computational result section.
4
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10
initializiation
Chromosome
Evaluation Fast non-dominated sort and crowding distance
Stopping condition
YES
NO
Selection strategy
Stop
Out put Crossover operator
Mutation operator
Evaluation offspring Sort population and select the N first individual
2. According to the fourth row of the encoding, by using the formulation ðq ¼ bp 0:34 þ 1cÞ number of open facilities is calculated as ðq ¼ b4 0:34 þ 1c ¼ 2Þ. Therefore, 2 facilities will be opened. 3. Then, according to second row, those two facilities are selected that have minimum values between other values of the cells. Therefore, second and fifth cells are selected as opened facilities as it is shown in Fig. 4. 4. According to the first row of the encoding, in order to allocate customer nodes to open facilities, a formulate such as ðbq mi þ 1cÞ is used. This formulate determines which of the open facilities assigned to the customer mi. Due to this formulate, in our example, for each cell of the first row a number between 1 and 2 is selected a ¼ b2 mi þ 1c. Then, since two potential facilities 2 and 5 are opened in the previous step, a = 1 represents second potential facility 2 and a = 2 represents fifth potential facility. Therefore, the obtained values of the cells are 1, 2, 1, 2, 1, 1 from left to right, which shows following potential facility are assigned respectively 2, 5, 2, 5, 2, 2. This operation is also presented in Fig. 5. 5. Finally, in the third row of the encoding, to determine system capacity of open facilities, equation bðH h þ 1Þ Aj c þ h is used. In this equation, H denotes upper bound and h denotes lower bound on the system capacity. For each of the open facilities, a number between h and H is obtained. For non-opened potential facilities, zero capacity is obtained. Fig. 6 illustrates obtained capacities of the two opened facility 2 and 5, which are 24 and 28, respectively.
Fig. 1. Flowchart of NSGA-II.
3.1.2. Solution encoding Since a good chromosome representation is a vital component for efficient and effective search of the solution area, in this paper a novel structure is proposed. In this structure, solutions are encoded as legality chromosome which does not let the solutions to violate the constraints. The encoding process of the representation has four parts as Fig. 2. The first part depicts a vector 1 M in which M denotes customer nodes. After decoding process, each cell shows which customer should be assigned to open facility. The second part (row) shows a vector 1 N in which N is potential facility nodes. After decoding process, these cells determine open facilities. The third part is like to second part but after decoding process, shows the capacity of open facilities. Finally, the fourth part of encoding is a random number between 0 and 1 that after decoding process shows the number of open facility. The initial population is created randomly as size as popsize. 3.1.3. Solution decoding Now, the decoding process is explained through a simple example. Suppose customer nodes (M = 6) and potential facility nodes (N = 5) are existed and the maximum number of opened facilities (p = 4) and upper (H = 35) and lower (h = 20) are existed. Decoding process of this example will be performed in following steps:
3.1.4. Evaluation An important issue in constrained optimization is the method used to handle the constraints to guide the optimization to feasible regions. A common approach in case of the metaheuristic algorithms is applying of the penalty functions to solve constrained problems (Michalewicz & Schoenauer, 1996). A penalty function (see Eq. (16)) is applied to unfeasible solutions to generate a poor function value. In this method, some functions are used to penalize infeasible solutions by reducing their fitness values in proportion to the degree of their violation. Penalty method transforms constrained problem to unconstrained one. In this paper, additive penalty function is used as is shown in Eq. (16).
f ðxÞ ¼
f ðxÞ; if x 2 feasibleregion f ðxÞ þ pðxÞ; otherwise
Þ shows penalty value and means if no vioIn this equation, pðx lation occurs, pð xÞ will be zero otherwise, it will take a positive amount. f ð xÞ is the objective function of our problem. Since our model is a minimization problem, this redundant positive value decreases the probability of selecting the violated solution during the evolutionary process. Therefore, after some generations, the violated solution is expected to be eliminated from the population. According to the logic of this penalty process, the mentioned penalty function is added to the both objective functions. In case
1. In the beginning, generate an encoding solution randomly as shown in Fig. 3.
Fig. 2. The solution representation.
ð16Þ
Fig. 3. A randomly produced example of the chromosome.
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10
5
Then, in order to build the mating pool, binary tournament selection method is implemented. In this special type of the tournament selection, after selecting two individuals randomly (i and j), they are compared according to their FNDS (irank and jrank). Then, the individual with the less FNDS is selected. Now, if the solutions are from the same front (or with the same rank), the one with higher CD is selected. This selection method is also summarized in Fig. 7.
Fig. 4. The opened facilities.
3.1.6. Crossover operator In this paper, the crossover operator is a kind of simple uniform crossover on the two randomly selected parents. The steps of the crossover are as follows: Fig. 5. The assignment of the opened facilities to the costumers.
Step1: Select two chromosomes randomly as the two parents. Step2: Select the same part (row) of the both chromosomes randomly. Step3: Generate a row (b) with real random value between (0, 1) with the same length as the selected row of the parents in Step2. Step4: Generate offspring by the Eqs. (17) and (18).
Fig. 6. The allocated system capacity.
Fig. 7. Tournament selection operators.
offspring 1 ¼ parent1 b ðparent 1 parent 2 Þ
ð17Þ
offspring 2 ¼ parent2 þ b ðparent 1 parent 2 Þ
ð18Þ
The crossover process is shown in Fig. 8 schematically. the mentioned constraint is violated, the penalty value adds a large positive value to the both objective functions of the model simultaneously. Since different constraints of the problem may differ in different dimensions, it is essential to normalize all constraints to bring their violations in the same dimension. Therefore, the total violation can be computed as the sum of the normalized constraint violations. In this paper, normalizing and violating of a constraint like g j ðxÞ 6 bj g ðxÞ performed through the function jbj 1: Thus, pð xÞ ¼ n o g j ðxÞ M max 0; bj 1 ; where M is a sufficiently large number.
is
3.1.5. Selection and elitism In order to rank the population in NSGA-II, two operators called fast non-dominated sorting (FNDS) and crowding distance (CD) are implemented. FNDS is used to assign a rank to each solution of the population. This ranking process is done according to a domination concept. At the end of the ranking, individuals with less value of FNDS are better. After ranking of the individuals, for the individuals with the same rank, CD is calculated. These metric estimates the density of solutions which are laid surrounding a particular solution in the population. The more value of CD shows a better individual or an individual who is placed in a less crowded area. According to its concept, CD is used for controlling diversity within the solutions of Pareto fronts during the evolution process. More details about these two operators in Deb et al. (2000).
3.1.7. Mutation operator In this paper, the uniform mutation operator is used as follows. Fig. 9 illustrates this operator graphically. Step1: Select a part of chromosome randomly Step2: Generate a random number r (r 2 [0, 1]) Step3: Exchange cells of a part of chromosome with r. 3.1.8. Offspring evaluation After performing of crossover and mutation operators, the fitness function can be calculated. As it is clear, fitness of our algorithms is calculated according to our objective functions in the model. 3.1.9. Sort population and select the N first individuals A distinctive step of NSGA-II is its elitism method during the evolution process. Fig. 10 illustrates this method graphically. In this figure, Pt indicates the main population at iteration t. In beginning; the mating pool is built by a binary tournament selection. Then, crossover and mutation operations are applied to the solutions in mating pool, to create a new population Qt. Now, elitism is kept by combining main (Pt) and new population (Qt). This combination leads to a larger population which is denoted by Rt. In this step, non-dominated sorting is performed and the solutions in Rt are sorted in several fronts. To create the main population of the next iteration Pt+1 as size as Pt, it is needed to perform
Fig. 8. Crossover operator.
6
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10 Table 1 NSGA-II parameter results. Parameters
Range
Small
Medium
Large
Popsize Pc PM MaxGen
100–250 0.7–0.95 0.05–0.3 50–250
100 0.8 0.1 100
130 0.85 0.12 170
200 0.9 0.3 250
Now, two ranked based tiers of roulette wheel selection are utilized, one tier to select the front according to ranki and Eq. (19) and the other to select solution from each front according to rankij and Eq. (20).
Fig. 9. Mutation operator.
4. Computational experience a selection operator. To do so, the fronts are added to Pt+1, in increasing order of ranks, until the capacity of Pt+1 is not exceeded (Deb, 2001). If without a front, Pt+1 has fewer elements than Pt, and with it, Pt+1 has more elements than Pt, the front must be selected partially. To perform a partial selection, the elements of the front are sorted in decreasing order of CD, and the elements of next iteration are selected from top of the front. 3.2. Non-dominated ranking genetic algorithm (NRGA) NRGA is introduced by Al Jadaan, Rao, and Rajamani (2008). The most important difference of NSGA-II with NRGA is in their selection method. Here, instead of binary tournament selection, Rolette wheel selection is employed. In this method, first, population is sorted according to FNDS and best solutions are chosen from the first ranked population. Then, according to their CD criteria individuals of each front are ranked.
Pi ¼
2 ranki NF ðNF þ 1Þ
8i ¼ 1; :::; N F
ð19Þ
where NF shows the number of fronts and ranki shows rank of the front i (i e [1, NF]). In this equation, it is obvious that a front with the highest rank has the highest probability to be selected. Then, the probability of individuals fronts, based on their CD criterion is calculated as Eq. (20). In this equation, Mi shows the number of individuals in the front i and rankij shows rank of jth (j e [1, Mi]) Pareto solution in ith (i e [1, NF]) front. In the related ranking of rankij in each front i, individual j with more CD has more selection probability.
Pij ¼
2 rankij Mi ðM i þ 1Þ
8i ¼ 1; :::NF
8j ¼ 1; :::Mi
ð20Þ
In this section, the method of generating test problems, parameter tuning of the proposed algorithms, performance measures, and results of performance are explained. 4.1. Test problem generation In this subsection, 15 different sizes of test problems are generated randomly and classified into three total groups that each group includes 5 test problems. The groups are called small, medium, and large size. The total amount of customer nodes and potential facility nodes (M + N which is depicted in 4th column of Table 3) in each test problem of the small size group is 15. These amounts for medium and large size are 30 and 45, respectively. Then, according to the service rate, for each size of the problem, fixed setup costs of opening a facility and cost of increasing system capacity is determined. The travelling time between the location of customers and potential facilities (tij) is calculated as being a proportion of the Euclidean distance. Potential facility nodes and customer nodes were generated from a uniform distribution over a square with side length of 150. The demand rate of the customers and service rate were also generated from uniform distributions [100, 200] and [30, 80], respectively. It should be mentioned, the algorithms are executed with Matlab (R2010a). 4.2. Tuning of the parameters Setting the parameter values is an important part of any metaheuristic algorithms like NSGA-II and NRGA. The performance of these algorithms (as modified version of GA) may greatly change by modifying the parameter settings (Davis, 1991; Gen & Cheng, 2000). The parameters of the proposed metaheuristics algorithm
Fig. 10. Composing the population of the next iteration via elitism.
7
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10 Table 2 NRGA parameter results. Parameters
Range
Small
Medium
Large
Popsize Pc PM MaxGen
50–300 0.7–0.95 0.05–0.2 100–300
100 0.8 0.05 100
134 0.85 0.14 178
189 0.9 0.2 270
are population size (popsize), crossover probability (Pc), mutation probability (Pm), and number of generations (MaxGen). Parameters of the algorithms were tuned by using some design of experiments (DOE) techniques. To do so, in the begging, some experiments are designed to determine effective parameters. Through this approach, popsize, Pc, Pm, MaxGen were determined as effective factors. After finding effective parameters, to find the best levels of these parameters, the response surface methodology (RSM) was employed to
optimize algorithm’s parameters. RSM as a collection of mathematical and statistical techniques is used for modeling and analyzing problems. A response of interest is an optimization problem that may be influenced by several variables. The objective of the RSM is to optimize this response (Montgomery, 2005). In this paper, considered responses for RSM are the three performance measures (objective functions of the RSM) that will be explained in the next subsection. The outputs of RSM, which show the obtained values of the parameters in each size, are indicated in Tables 1 and 2. Minitab software (Minitab 14) is used for finding the relation between responses (objective functions) and their factors. 4.3. Performance measures Unlike to single-objective optimization algorithms, which only look for an optimum or near optimum solutions, MOEAs seek
Table 3 Results of the experiment of different size test problems. Size
Small
Medium
Large
#
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Average
M
11 6 10 8 9 21 14 18 15 22 24 31 24 34 25
N
4 9 5 7 6 9 16 12 15 8 16 14 20 11 20
M+N
15
30
45
NSGA-II
NRGA
[%] C
D
NPS
[%] C
D
NPS
1 0.57 1 0 1 1 1 0.65 1 0 0 0 0 1 0.07 0.56
243 748 819 857 158 542 274 249 464 1598 493 289 319 488 366 527.1
4 4 4 12 4 9 9 18 6 10 33 29 4 4 18 11.2
0 0.43 0 1 0 0 0 0.35 0 1 1 1 1 0 0.92 0.44
138 936 527 1158 65 182 327 519 73 241 1098 318 0 614 290 432.4
3 3 2 3 5 5 26 28 8 9 28 23 2 3 28 11.73
Fig. 11. Detailed comparison of metrics on different 15 test problems of Table 3.
8
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10
two features simultaneously: (1) keeping diversity of solutions within the Pareto-optimal set (diversity feature) and (2) converging to the optimal Pareto set (convergence feature) (Deb et al., 2000). Therefore, different types of metrics are usually utilized to assess the performance of the MOEAs more explicitly. Correspondingly, in this paper three famous metrics are implemented as follows. Set Coverage Metric: the first version of this metric was proposed by Zitzler and Thiele (1998) for comparing two sets of non-dominant solutions with each other. Assume in a problem, X is the set of all decision vectors and A, B # X. Now, set coverage metric calculates the fraction of B, which is weakly dominated by A, as it is formulated in Eq. (21). It is worth to mention that solution A weakly dominates solution B (denoted by A B) when following two conditions are fulfilled, (i) A–B and (ii) Number of the nondominated solutions (ND) of the A is more than B which mathematically means ND(A [ B) = A.
CðA; BÞ ¼
jfb 2 Bj9a 2 A : a bgj jBj
ð21Þ
Since the number of the solution in A and B are not necessarily equal, CðB; AÞ is not necessary equal to 1 CðA; BÞ. Therefore, Eq. (22) is proposed to normalize the coverage metrics. These equation
AÞ ¼ 1 CðA; causes CðB; BÞ and the evaluation of the algorithm’s performance being more easily rather that old-fashion coverage metric (Eq. (21)).
BÞ ¼ CðA;
CðA; BÞ CðA; BÞ þ CðB; AÞ
ð22Þ
Spacing metric (D): this metric, which was proposed by Deb (2001), is used for measuring the variance of the distances of neighboring solutions in non-dominated vectors as Eq. (23).
D¼
jnj X jdi dj i¼1
ð23Þ
jnj
In this equation, di ¼ |ffl{zffl} min
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi P2 Pn d i i k m¼1 ðfm fm Þ and d ¼ i¼1 jnj
k2n^k–i
shows the mean of all di and n shows the set of Pareto solutions in the Pareto front. Accordingly, |n| represents the cardinality of n, which shows the number of the Pareto solutions in the Pareto front. Besides, m represents the number of objective function. Number of Pareto solution (NPS): this metric is used for calculating the number of Pareto optimal solutions that each algorithm has found.
Table 4 Statistical comparison of proposed algorithms. Mann–Whitney test
Coverage Spacing NPS
t-test
P-value
Result
P-value
Result
0.48 0.38 0.41
Null hypothesis is not rejected Null hypothesis is not rejected Null hypothesis is not rejected
0.55 0.49 0.89
Null hypothesis is not rejected Null hypothesis is not rejected Null hypothesis is not rejected
Fig. 12. Box-plot for evaluating statistical results graphically.
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10
Now, by using following notions, the results of experiments and comparisons of two algorithms on their different sizes are shown in Table 3. 1. 2. 3. 4. 5.
N – Number of potential facility nodes M – Number of customer nodes C- Set coverage metric D – Spacing metric NPS – Number of Pareto solutions
4.4. Final results This section discusses the results and assesses the performance of the two proposed algorithms. To evaluate the performance of mentioned algorithms, they are executed on three different group sizes of test problems (which were generated in Subsection 4.1). Each group includes five test problems. Then, in order to assess the outputs of the algorithms on test problems, three metrics (introduced in Subsection 4.3) are evaluated. The results of this assessment are presented in Table 3. Results of Table 3 are also shown in Fig. 11, graphically. Then, these results are evaluated statistically by two types of test, called t-test and Mann–Whitney test. T-test is a common parametric way for performing a hypothesis test for the equality of two population means. On the other hand, Mann–Whitney test performs a hypothesis test for the equality of two population medians. This test is considered as a nonparametric alternative to the 2-sample t-test (Hollander & Wolfe, 1973). Results of these statistical tests are shown in Table 4. Besides, to have a more sense of statistical differences, Fig. 12 illustrates the comparisons of each metrics graphically. Now, according to mentioned figures and tables, metrics can be evaluated. The last row of Table 3 calculates the average values of each metric’s outputs on the whole sizes of the test problems. According to this row, in a total view, NSGA-II has better perfor and NRGA has better performance on set covering metric ðCÞ mance on Spacing and NPS metrics. However, according to Fig. 11, there is no significant difference among algorithms in any metrics. This conclusion is proven more strongly through outputs of Table 4. In this table, there is no significant difference among algorithms, neither in the parametric test nor non-parametric test, since the P-value of all of these tests is more than our considered significant level (a = 0.05). Therefore, the null hypothesis
Fig. 13. Sets of non-dominated solutions for the test problem 8.
9
(H0:l1 = l2) is not rejected. Fig. 12 graphically proves this claim, too. Finally, another witness for proving similar performance of the algorithms is Fig. 13. This figure, which plots a sample Pareto optimal front of two algorithms simultaneously, proves that algorithms have similar performance in both objectives of algorithms, high diversity and good convergence. 5. Conclusions In this paper, a bi-objective facility location–allocation problem was developed with stochastic immobile servers and customer demand within an M/M/1/K queue system. The aim of this problem is to select the best nodes of facilities, the best strategy for assigning customers to opened facilities, and system capacity of opened facilities. The objectives are to minimize the total cost of server provider and the total time of customers under system-level constraints. Moreover, since the model belongs to an NP-Hard class of problems, two multi-objective algorithms called NSGA-II and NRGA were developed for solving the problem. To guide these algorithms more efficiently, a new solution structure was also proposed. Then, to evaluate the problem, some test problems were generated randomly. Finally, the performance of the algorithms was statistically analyzed via some multi-objective metrics. The experimental results show that the proposed algorithms are suitable and comparable. References Al Jadaan, O., Rao, C. R., & Rajamani, L. (2008). Non-dominated ranked genetic algorithm for solving multi-objective optimization problems: NRGA. Journal of Theoretical and Applied Information Technology, 60–67. Batta, R., Dolan, J. M., & Krishnamurthy, N. N. (1989). The maximal expected covering location problem: Revisited. Transportation Science, 23, 277–287. Berman, O., Hodgson, M. J., & Krass, D. (1995). Flow-interception problems. In Z. Drezner (Ed.), Facility location: A survey of applications and methods, springer series in operations research. New York: Springer. Berman, O., Krass, D., & Wang, J. (2006). Locating service facilities to reduce lost demand. IIE Transactions, 38, 933–946. Berman, O., Larson, R. C., & Chiu, S. S. (1985). Optimal server location on a network operating as an M/G/1Queue. Operations Research, 33, 746–771. Boffey, B., Galvao, R., & Espejo, L. (2007). A review of congestion models in the location of facilities with immobile servers. European Journal of Operational Research, 178, 643–662. Current, J., Daskin, M., & Schilling, D. (2002). Discrete network location models. In z. drezner & h. w. hamacher (Eds.). Facility location: Applications and theory (pp. 80–118). Heidelberg: Springer. Davis, L. (1991). Handbook of genetic algorithms. New York: Van Nostrand Reinhold. Deb, K. (2001). Multiobjective optimization using evolutionary algorithms. Chichester, U.K: Wiley. Deb, K., Agrawal, S., Pratap, A., & Meyarivan, T. (2000). A fast elitist non-dominated sorting genetic algorithm for multi-objective optimization: NSGA-II. In: Proceedings of the parallel problem solving from nature VI (PPSN-VI) conference (pp. 849–858). Francis, R. L., Megginis, L. F., & White, J. A. (1992). Facility layout and location: An analytical approach (2nd ed.). Englewood Cliffs, NJ: Prentice-Hall. Garey, M. R., & Johnson, D. S. (1979). Computers and intractability: A guide to the theory of NP-completeness. New York: Freeman. Gautam, N. (2002). Performance analysis and optimization of web proxy servers and mirror sites. European Journal of Operational Research, 142, 396–418. Gen, M., & Cheng, R. (2000). Genetic algorithms and engineering optimization. New York (USA): John Wiley & Sons. Gross, D., & Harris, C. M. (1998). Fundamental of queuing theory (3rd ed.). New York, NY: Wiley-Interscience. Hodgson, M. J. (1990). A flow-capturing location–allocation model. Geographical Analysis, 22, 270–279. Hollander, M., & Wolfe, D. A. (1973). Nonparametric statistical methods. John Wiley & Sons. Kariv, O., & Hakimi, L. (1979). An algorithmic approach to network location problems, part ii: The p-medians. SIAM Journal of Applied Mathematics, 37, 539–560. Li, B., Golin, M. J., Italiano, G. F., Deng, X., & Sohraby, K. (1999). On the optimal placement of web proxies in the Internet. Proceedings of IEEE INFOCOM, 99, 1282–1290. Liu, J., Chai, Y., & Liu, Yi. (2004). A new queueing model for the location problem. 2004 IEEE International Conference on Systems, Man and Cybernetics (pp. 1486–1491).
10
Seyed Habib A. Rahmati et al. / Computers & Industrial Engineering 74 (2014) 1–10
Marianov, V., & Serra, d. (1998). Probabilistic maximal covering location–allocation for congested system. Journal of Regional Science, 38, 401–424. Michalewicz, Z., & Schoenauer, M. (1996). Evolutionary algorithms for constrained parameter optimization problems. Evolutionary Computation, 4, 1–32. Montgomery, D. C. (2005). Design and analysis of experiments (6th ed.). New York (USA): John Wiley and Sons. Pasandideh, S. H. R., & Niaki, S. D. A. (2010). Genetic application in a facility location problem with random demand within queueing framework. Journal of Intelligent Manufacturing, 21, 342–351.
Wang, Q., Batta, R., & Rump, C. M. (2002). Algorithms for a facility location problem with stochastic customer demand and immobile servers. Annals of Operations Research, 17–34. Wang, Q., Batta, R., & Rump, C. M. (2004). Facility location models for immobile servers with stochastic demand. Naval Research Logistic, 51, 137–152. Zitzler, E., & Thiele, L. (1998). Multiobjective optimization using evolutionary algorithms a comparative case study. In: A. E. Eiben, T. Back, M. Schoenauer, H. P. Schwefel (Eds.), Fifth International Conference on Parallel Problem Solving from Nature (PPSN-V) (pp. 292–301), Berlin, Germany.