New stochastic models for capacitated location

Computers & Industrial Engineering 45 (2003) 111–125
www.elsevier.com/locate/dsw
New stochastic models for capacitated location-allocation
problemq
Jian Zhou, Baoding Liu*
Uncertainty Theory Laboratory, Department of Mathematical Sciences, Tsinghua University, Beijing 100084,
People’s Republic of China
Accepted 20 February 2003
Abstract
Capacitated location-allocation problem with stochastic demands is originally formulated as expected value
model, chance-constrained programming and dependent-chance programming according to different criteria. For
solving these stochastic models efficiently, the network simplex algorithm, stochastic simulation and genetic
algorithm are integrated to produce a hybrid intelligent algorithm. Finally, some numerical examples are presented
to illustrate the effectiveness of the proposed algorithm.
q 2003 Elsevier Science Ltd. All rights reserved.
Keywords: Stochastic programming; Location-allocation problem; Genetic algorithm; Simulation
1. Introduction
Location-allocation (LA) problem is to locate a set of new facilities such that the transportation cost
from facilities to customers is minimized. LA problem has been studied for half a century because of its
widely practical application backgrounds, such as facility layout problem and design of traffic networks.
Since LA problem was proposed (Cooper, 1963) and spread to a weighted network (Hakimi, 1964),
named Network LA problem, much work has been done on the problem, most of which is for the
deterministic case. LA problem was studied detailedly in Gen and Cheng (1997, 2000), where all kinds
of cases were discussed. And many models were presented (Badri, 1999; Hodey, Melachrinoudis, & Wu,
1997). For solving these models, numerous algorithms have been designed, involving branch-and-bound
algorithms (Kuenne & Soland, 1972), simulated annealing (Murray & Church, 1996), projection
q
This manuscript was processed by area Editor Mitsuo Gen.
* Corresponding author. Tel.: þ86-10-62787724; fax: þ86-10-62781785.
E-mail address: [email protected] (B. Liu).
0360-8352/03/$ - see front matter q 2003 Elsevier Science Ltd. All rights reserved.
doi:10.1016/S0360-8352(03)00021-4
112
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
(Bongartz, Calamai, & Conn, 1994), tabu search (Brimberg & Mladenovic, 1996; Ohlemuller, 1997),
and p-Median plus Weber (Hansen, Jaumard, & Taillard, 1998). Some hybrid algorithms have been also
suggested, such as the one based on simulated annealing and random descent method (Ernst &
Krishnamoorthy, 1999), and the one utilizing the Lagrange relaxation method and genetic algorithm
(Gong, Gen, Xu, & Yamazaki, 1995; Gong, Gen, Yamazaki, & Xu, 1997). Brimberg, Hansen,
Mladenovic, & Taillard (2000) improved present algorithms and proposed variable neighborhood
search, which is proved to obtain the best results when the number of facilities to locate is large.
In practice, we must consider the stochastic LA problem because some factors such as demands,
allocations, even locations of customers and facilities are usually changing. The uncapacitated LA
problem was considered in the presence of price sensitive stochastic demands and an optimization model
was proposed to maximize the expected net profits (Logendran & Terrell, 1988). The capacitated LA
problem was studied with a continuum of demand on a chain graph (Sherali & Rizzo, 1991). The
LA problem was modeled where locations of both customers and facilities may be regions with some
probability distributions inside each region (Carrizosa, Conde, Munoz-Marquez, & Puerto, 1995). A
result was proved that if one wishes to locate a service (for example, a mobile), it is preferable to fix its
position to maintain it patrolling when demands are stochastic (Carrizosa, Munoz-Marquez, & Puerto,
1998). The expected value model, chance-constrained programming and dependent-chance programming were proposed for uncapacitated LA problem with stochastic demands (Zhou, 2000).
In an uncapacitated problem, the customers are supplied by the nearest factory. However, in a
capacitated problem, the customers may not be supplied by the nearest factory only. This fact makes a
difficulty to model a stochastic capacitated problem. The main purpose of this paper is to overcome this
difficulty in order to give a spectrum of stochastic programming models for capacitated problems.
The paper is organized as follows. In Section 2, the problem and symbols used are introduced. And
then we formulate the capacitated LA problem as the expected value model, chance-constrained
programming and dependent-chance programming in Sections 3 – 5, respectively. For solving these
stochastic models more efficiently, we integrate the network simplex algorithm, stochastic simulations
and genetic algorithm to design a powerful hybrid intelligent algorithm in Section 6. Finally, Section 7
provides some numerical examples to illustrate the performance and the effectiveness of the proposed
algorithm.
2. Location-allocation problem
In order to model capacitated stochastic LA problem, the following indices, parameters, and decision
variables are used:
i ¼ 1; 2; …; n : index of facilities;
j ¼ 1; 2; …; m : index of customers;
(aj ; bj ): location of customer j; 1 # j # m;
jj : stochastic demand of customer j; 1 # j # m;
si : capacity of facility i; 1 # i # n;
(xi ; yi ): decision variable representing the location of facility i; 1 # i # n;
zij : quantity supplied to customer j by facility i after the stochastic demands are realized, 1 # i # n;
1 # j # m:
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
113
Here we will consider the capacitated LA problem with assumptions that the path between any
customer and facility is connected and unit transportation cost is proportionate of the quantity supplied
and the travel distance. And facility i is assumed to be located within a certain region Ri ¼
{ðxi ; yi Þlgi ðxi ; yi Þ # 0}; i ¼ 1; 2; …; n; respectively.
We suppose that the stochastic demand vector j ¼ ðj1 ; j2 ; …; jm Þ is defined on the probability space
(V; A; Pr). For convenience, we also write
0
1
0
1
z11 z12 · · · z1m
x1 y1
B
C
B
C
Bx
C
Bz
C
B 2 y2 C
B 21 z22 · · · z2m C
B
C
B
C:
z¼B
ðx; yÞ ¼ B
C;
C
B··· ···C
B··· ··· ··· ··· C
@
A
@
A
xn yn
zn1 zn2 · · · znm
In a deterministic LA problem, the allocation z is a decision variable which is fixed all the time.
However, in a stochastic LA problem, the decision z will be made every period after the demands of
customers are realized.
For each v [ V; jðvÞ is a realization of stochastic vector j: An allocation z is said to be feasible if
8
zij $ 0;
>
>
>
>
>
n
X
>
>
< z ¼ j ðvÞ;
ij
j
i ¼ 1; 2; …; n; j ¼ 1; 2; …; m
j ¼ 1; 2; …; m
i¼1
>
>
>
m
>
X
>
>
>
: zij # si ;
:
ð1Þ
i ¼ 1; 2; …; n
j¼1
We denote the feasible allocation set by
9
8
zij $ 0;
i ¼ 1; 2; …; n; j ¼ 1; 2; …; m >
>
>
>
>
>
>
>
>
>
n
X
>
>
>
>
=
< zl zij ¼ jj ðvÞ;
j ¼ 1; 2; …; m
:
ZðvÞ ¼
i¼1
>
>
>
>
>
>
m
>
>
X
>
>
>
>
z
#
s
;
i
¼
1;
2;
…;
n
>
>
ij
i
;
:
ð2Þ
j¼1
Note that ZðvÞ may be an empty set for some v: Then for each v [ V; the minimal transportation cost
is the one associated with the best allocation z; i.e.
Cðx; ylvÞ ¼ min
z[ZðvÞ
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
n X
m
X
zij ðxi 2 aj Þ2 þ ðyi 2 bj Þ2
ð3Þ
i¼1 j¼1
whose optimal solution zp is called the optimal allocation. If ZðvÞ ¼ B; then demands of some
customers are impossible to be met, and the right-hand side of Eq. (3) becomes meaningless. As
114
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
a penalty, we define
Cðx; ylvÞ ¼
m
X
j¼1
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
max jj ðvÞ ðxi 2 aj Þ2 þ ðyi 2 bj Þ2 :
ð4Þ
1#i#n
In the following sections, stochastic programming models will be provided for the capacitated LA
problem with stochastic demands.
3. Expected value model
The first type of stochastic programming is the so-called expected value model (EVM). The essential
idea of EVM is to optimize the expected values of objective functions subject to some expected
constraints.
When the demands of customers are stochastic, the transportation cost Cðx; ylvÞ becomes stochastic,
too. Then we consider minimizing the expected value of Cðx; ylvÞ: Though the stochastic capacitated
LA problem has been studied by many researchers, a general EVM has not been given due to the
complexity. This section provides a new idea to formulate the LA problem by EVM as follows,
min
ð1
x;y
0
Pr{v [ VlCðx; ylvÞ $ r}dr subject to : gi ðxi ; yi Þ # 0; i ¼ 1; 2; …; n
ð5Þ
where gi ðxi ; yi Þ # 0; i ¼ 1; 2; …;
Ð n are the potential regions of locations of new facilities, Cðx; ylvÞ is
defined by Eqs. (2) –(4), and 1
0 Pr{v [ VlCðx; ylvÞ $ r}dr is the expected value of Cðx; ylvÞ:
The model is different from traditional stochastic programming models because there is a sub-optimal
problem in it, i.e.
min
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
n X
m
n
X
X
zij ðxi 2 aj Þ2 þ ðyi 2 bj Þ2 subject to :
zij ¼ jj ðvÞ; j ¼ 1; 2; …; m
i¼1 j¼1
m
X
i¼1
ð6Þ
zij # si ; i ¼ 1; 2; …; n zij $ 0; i ¼ 1; 2; …; n; j ¼ 1; 2; …; m:
j¼1
Note that in Eq. (6) the parameters xi ; yi and jj ðvÞ are fixed real numbers for each v [ V; i ¼ 1; 2; …; n;
j ¼ 1; 2; …; m; respectively. It is clearly a linear programming problem.
4. Chance-constrained programming
As the second stochastic programming, chance-constrained programming (CCP) offers a powerful
approach of modeling stochastic decision systems. CCP was initialized (Charnes & Cooper, 1961) and
subsequently developed by many researchers. Here we will introduce the latest version (Liu, 1999a,b).
Since minx;y Cðx; ylvÞ is meaningless if Cðx; ylvÞ is stochastic, a natural idea is to provide a
confidence level b at which it is desired that Cðx; ylvÞ # f; where the confidence level b is provided as
an appropriate safety margin by the decision-maker. So the objective is to minimize f instead of
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
115
Cðx; ylvÞ with a chance constraint as follows,
$ b;
Pr{Cðx; ylvÞ # f}
ð7Þ
where f is referred to as the b-optimistic value to Cðx; ylvÞ (Liu, 1999a,b). A point (x; y) is called
feasible if and only if the probability measure of the event Cðx; ylvÞ # f is at least b: In other words, the
constraint will be violated at most (1 2 b) of time. Hence we have the following LA CCP model,
$ b; gi ðxi ; yi Þ # 0; i ¼ 1; 2; …; n
min f subject to : Pr{v [ VlCðx; ylvÞ # f}
x;y
ð8Þ
where min f is called the b-optimistic transportation cost and Cðx; ylvÞ is defined by Eqs. (2) – (4).
5. Dependent-chance programming
Sometimes the decision-maker wishes to maximize the chance functions of some events (i.e. the
probability of satisfying these events). In order to model this type of stochastic decision system, the third
type of stochastic programming was provided (Liu, 1997), called dependent-chance programming
(DCP), in which the underlying philosophy is based on selecting the decision with maximal chance to
meet the event.
Let us model the capacitated LA problem by DCP theory. A cost supremum C is given by the decision
maker, who hopes the probability that the transportation cost does not exceed C will be maximized as
possible. Here we call C as the satisfied cost. Hence we formulate a stochastic DCP model for the
capacitated LA problem as follows,
max Pr{v [ VlCðx; ylvÞ # C} subject to : gi ðxi ; yi Þ # 0; i ¼ 1; 2; …; n
x;y
ð9Þ
where Cðx; ylvÞ is defined by Eqs. (2) – (4).
6. Hybrid intelligent algorithm
Generally speaking, uncertain programming models are difficult to solve by traditional methods. A
good way is to design some hybrid intelligent algorithms for solving them (Liu, 1997, 1998, 1999a,b,
2000; Liu & Iwamura, 2000). In this section, we integrate the network simplex algorithm, stochastic
simulations and GA to produce a hybrid intelligent algorithm for solving general stochastic
programming models of LA problem.
6.1. Computing optimal allocations
Assume that the location ðx; yÞ of the facilities has been given. For each v [ V; we have the realized
demands jðvÞ: In order to minimize the transportation cost Cðx; ylvÞ; we should determine the optimal
allocations. In other words, we must solve the linear programming (6), which is a linear transportation
problem virtually. Although simplex algorithm can also be used to solve it, the network simplex
algorithm can obtain the optimal solution much easier and faster. So we use the network simplex
algorithm to solve Eq. (6) by the following procedure.
116
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
Step 1. Find a starting basic feasible solution zij ; i ¼ 1; 2; …; n; j ¼ 1; 2; …; m by the northwest corner
rule.
Step 2. Compute the inspection values zij of all nonbasic variables, i ¼ 1; 2; …; n; j ¼ 1; 2; …; m by the
dual variable method.
one in {zij ; i ¼ 1;ffi2; …; n; j ¼ 1; 2; …; m}. If zkl # 0; then return
Step 3. Suppose zkl is the least
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
Pn Pm
2
2
i¼1
j¼1 zij dij ; where dij ¼ ðxi 2 aj Þ þ ðyi 2 bj Þ :
Step 4. Select the column (k; l) to enter the basis, adjust the values of the variables around the cycle
according to the sign of the coefficient in the representation and go to Step 2.
The network simplex algorithm is a well-known simplex algorithm. For detailed expositions, the
interested reader may consult Bazaraa, Jarvis, and Sherali (1990).
6.2. Computing uncertain functions
By Uncertain functions we mean the functions with stochastic parameters. Due to the complexity, we
design some stochastic simulations to calculate uncertain functions. The first type of uncertain function
is
U1 : ðx; yÞ !
ð1
Pr{v [ VlCðx; ylvÞ $ r}dr:
ð10Þ
0
In order to compute it, we design a stochastic simulation as follows,
Step 1. Set U1 ðx; yÞ ¼ 0:
Step 2. Generate v from V according to the probability measure Pr.
Step 3. Solve the linear programming (6) by the network simplex algorithm and denote its optimal
objective value by c:
Step 4. U1 ðx; yÞ ˆ U1 ðx; yÞ þ c:
Step 5. Repeat the second to fourth steps for N times, where N is a sufficiently large number.
Step 6. Return U1 ðx; yÞ=N:
The second type of uncertain function is
$ b}
[ VlCðx; ylvÞ # f}
U2 : ðx; yÞ ! min{flPr{v
ð11Þ
which may be estimated by the following procedure,
Step 1. Generate v1 ; v2 ; …; vN from V according to the probability measure Pr, where N is a
sufficiently large number.
Step 2. For each vk ; solve the linear programming (6) by the network simplex algorithm and denote
the optimal objective value by ck ; k ¼ 1; 2; …; N; respectively.
Step 3. Set N 0 as the integer part of bN:
Step 4. Return the N 0 th least element in {c1 ; c2 ; …; cN }:
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
117
The third type of uncertain function is
U3 : ðx; yÞ ! Pr{v [ VlCðx; ylvÞ # C};
ð12Þ
which may be estimated by the following stochastic simulation,
Step 1. Set N 0 ¼ 0:
Step 2. Generate v from V according to the probability measure Pr.
Step 3. Solve the linear programming (6) by the network simplex algorithm and denote the optimal
objective value by c:
Step 4. If c # C; then N 0 ˆ N 0 þ 1:
Step 5. Repeat the second to fourth steps for N times, where N is a sufficiently large number.
Step 6. Return N 0 =N:
6.3. Hybrid intelligent algorithm
In order to solve general stochastic programming models for capacitated LA problem, we integrate
the network simplex algorithm, stochastic simulations and GA to produce a hybrid intelligent algorithm.
Contrasting the general GA, this algorithm will reduce the computation greatly, which makes it possible
to deal with problems of quite large size by the algorithm.
We describe the algorithm as the following procedure:
Step 1. Initialize pop_size chromosomes Vk ¼ ðxk ; yk Þ ¼ ðxk1 ; xk2 ; …; xkn ; yk1 ; yk2 ; …; ykn Þ; k ¼
1; 2; …; pop_size from the potential region {ðx; yÞlgi ðxi ; yi Þ # 0; i ¼ 1; 2; …; n} uniformly.
Step 2. Calculate the objective values Ulk ðl ¼ 1; 2; 3Þ for all chromosomes Vk ; k ¼ 1; 2; …; pop_size
by stochastic simulations, respectively, where the network simplex algorithm is used to solve the
linear programming (6).
Step 3. Compute the fitness of all chromosomes Vk ; k ¼ 1; 2; …; pop_size: The rank-based evaluation
function is defined as
EvalðVk Þ ¼ að1 2 aÞk21 ;
k ¼ 1; 2; …; pop_size;
ð13Þ
where the chromosomes V1 ; V2 ; …; Vpop_size are assumed to have been rearranged from good to bad
according to their objective values Ulk ðl ¼ 1; 2; 3Þ and a [ ð0; 1Þ is a parameter in the genetic system.
Step 4. Select the chromosomes for a new population. The selection process is based on spinning the
roulette wheel characterized by the fitness of all chromosomes for pop_size times, and each time we
select a single chromosome. Thus we obtain pop_size copies of chromosomes, denoted also by Vk ;
k ¼ 1; 2; …; pop_size:
Step 5. Renew the chromosomes Vk ; k ¼ 1; 2; …; pop_size by crossover operation. In order to
determine the parents for crossover operation, we repeat the following process from k ¼ 1 to
pop_size: generating a random real number r from the interval [0, 1], the chromosome Vk will be
selected as a parent provided that r , Pc ; where the parameter Pc is the probability of crossover. Then
we group the selected parents V 01 ; V 02 ; V 03 ; … to the pairs ðV 01 ; V 02 Þ; ðV 03 ; V 04 Þ; …: Without loss of
generality, let us illustrate the crossover operator on each pair by ðV 01 ; V 02 Þ: At first, we generate a
random number l from the open interval (0, 1), then the crossover operator on V 01 and V 02 will produce
118
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
two children X and Y as follows:
X ¼ l·V 01 þ ð1 2 lÞ·V 02 ;
Y ¼ ð1 2 lÞ·V 01 þ l·V 02 :
ð14Þ
If both children are in the region {ðx; yÞlgi ðxi ; yi Þ # 0; i ¼ 1; 2; …; n}; then we replace the parents
with them. If not, we keep the feasible one if it exists, and then redo the crossover operator by
regenerating another real number from (0, 1) until two feasible children are obtained. In this case, we
only replace the parents with the feasible children. Finally, pop_size new chromosomes Vk ; k ¼
1; 2; …; pop_size are obtained.
Step 6. Update the chromosomes Vk ; k ¼ 1; 2; …; pop_size by mutation operation. Similar to the
process of selecting parents for crossover operation, we repeat the following steps from k ¼ 1 to
pop_size: generating a random real number r from the interval [0, 1], the chromosome Vk will be
selected as a parent provided that r , Pm ; where the parameter Pm is the probability of mutation. For
each selected parent V 0 ¼ ðx1 ; x2 ; …; xn ; y1 ; y2 ; …; yn Þ; we mutate it in the following way. At first, we
choose a mutation direction d in R2n randomly. If
X ¼ V 0 þ M·d
ð15Þ
is not feasible for the region constraints, then we set M as a random number between 0 and M until it is
feasible, where M is an appropriate large positive number. If the above process cannot find a feasible
solution in a predetermined number of iterations, then we set M ¼ 0: Anyway, we replace the parent
V 0 with its child X: Then pop_size new chromosomes may be generated, and we still denote them by
Vk ; k ¼ 1; 2; …; pop_size:
Step 7. Repeat the second to sixth steps for a given number of cycles.
Step 8. Report the best chromosome V p ¼ ðxp ; yp Þ as the optimal locations.
7. Numerical examples
In order to illustrate the effectiveness of the hybrid intelligent algorithm, we give some numerical
examples that are performed on a personal computer.
Consider a sending-water company who wants to locate four new facilities. Assume that there are 20
customers whose demands jj are normally distributed variable N (5,1) for j ¼ 1; 2; …; 10; and are
uniformly distributed variable Uð8; 12Þ for j ¼ 11; 12; …; 20: The locations (aj ; bj ), j ¼ 1; 2; …; 20 of
customers are given in Table 1. The capacities si (i ¼ 1, 2, 3, 4) of the four facilities are 40, 50, 60 and
70, respectively.
Example 1. If we want to minimize the expected transportation cost, then we have the following LA
EVM,
min
x;y
ð1
Pr{v [ VlCðx; ylvÞ $ r}dr
0
subject to : 0 # xi # 100; i ¼ 1; 2; 3; 4 0 # yi # 100; i ¼ 1; 2; 3; 4;
ð16Þ
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
119
Table 1
Locations of 20 customers
Customer j
aj
bj
Customer j
aj
bj
1
2
3
4
5
6
7
8
9
10
28
18
74
74
70
72
60
36
12
18
42
50
34
6
18
98
50
40
4
20
11
12
13
14
15
16
17
18
19
20
14
90
78
24
54
62
98
36
38
32
78
36
20
52
6
60
14
58
88
54
where
Cðx; ylvÞ ¼
8
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
4 X
20
X
>
>
2
2
>
z
min
>
ij ðxi 2 aj Þ þ ðyi 2 bj Þ
>
< z[ZðvÞ i¼1 j¼1
if ZðvÞ – B
>
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
20
X
>
>
>
max
j
ðvÞ
ðxi 2 aj Þ2 þ ðyi 2 bj Þ2
>
j
:
otherwise;
j¼1
and
ZðvÞ ¼
1#i#4
8
>
zij $ 0;
>
>
>
>
>
4
X
>
>
< zl zij ¼ jj ðvÞ;
>
>
>
>
>
>
>
>
:
i¼1
20
X
j¼1
zij # si ;
ð17Þ
9
i ¼ 1; 2; 3; 4; j ¼ 1; 2; …; 20 >
>
>
>
>
>
>
>
=
j ¼ 1; 2; …; 20
:
>
>
>
>
>
>
>
i ¼ 1; 2; 3; 4
>
;
ð18Þ
In order to solve the model (16), the hybrid intelligent algorithm proposed in Section 6 has been run with
10,000 cycles in simulations and 500 generations in GA. The detailed explanation of the heuristic
procedures is given as follows.
Representation structure. We use a vector V ¼ ðx1 ; x2 ; x3 ; x4 ; y1 ; y2 ; y3 ; y4 Þ as a chromosome to
represent a solution
0
1
x1 y1
B
C
Bx y C
B 2 2C
C:
ðx; yÞ ¼ B
B
C
B x3 y3 C
@
A
x4 y4
Initialization process. Generate random numbers xki and yki ; i ¼ 1, 2, 3, 4 uniformly from [0, 100],
and we can obtain pop_size initial feasible chromosomes Vk ¼ ðxk1 ; xk2 ; xk3 ; xk4 ; yk1 ; yk2 ; yk3 ; yk4 Þ; k ¼
1; 2; …; pop_size; respectively.
120
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
Computing objective values. We repeat the following process from k ¼ 1 to pop_size to compute the
objective value U1 ðVk Þ of the chromosome Vk :
Step 1. Set U1 ðVk Þ ¼ 0:
Step 2. Generate random numbers v1 ; v2 ; …; v10 by repeating the following procedure for 10 times:
(i) Generate random numbers m1 and m2 uniformly from [0, 1].
(ii) y ¼ ½22 lnðm1 Þ1=2 sinð2pm2 Þ:
(iii) Return 5 þ y:
Step 3. Generate
random
P4 numbers v11 ; v12 ; · · ·; v20 uniformly from the region [8, 12].
P20
Step 4. If j¼1 vj # i¼1 si ; solve the following linear programming by the network simplex algorithm,
min
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
4 X
20
n
X
X
zij ðxki 2 aj Þ2 þ ðyki 2 bj Þ2 subject to :
zij ¼ vj ; j ¼ 1; 2; …; 20
i¼1 j¼1
m
X
i¼1
ð19Þ
zij # si ; i ¼ 1; 2; 3; 4 zij $ 0; i ¼ 1; 2; 3; 4; j ¼ 1; 2; …; 20;
j¼1
and denote its optimal objective value by c: Otherwise calculate
20
X
j¼1
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
max vj ðxki 2 aj Þ2 þ ðyki 2 bj Þ2
ð20Þ
1#i#4
and denote the computational result by c:
Step 5. U1 ðVk Þ ˆ U1 ðVk Þ þ c:
Step 6. Repeat the second to fifth steps for 10,000 times.
Step 7. Return U1 ðVk Þ=10; 000:
Note that Step 2 is for generating random numbers with the distribution function Nð5; 1Þ: In fact, for
the main known distributions, direct generating processes have been proposed (Bratley, Fox, & Schrage,
1987; Fishman, 1996; Law & Kelton, 1991; Liu, 1999a,b; Rubinstein, 1981).
Evaluation function. Rearrange the chromosomes V1 ; V2 ; …; Vpop_size from good to bad according to
their objective values U1 ðVk Þ with assumptions that a chromosome with smaller objective value is better.
Then compute the fitness EvalðVk Þ for all the chromosomes Vk ; k ¼ 1; 2; …; pop_size; where EvalðVk Þ is
defined by Eq. (13).
Selection process. The selection process is based on spinning the roulette wheel pop_size times which
can be always stated as follows,
Step 1. Calculate the cumulative probability qk for each chromosome Vk ;
q0 ¼ 0; qk ¼
k
X
EvalðVj Þ; k ¼ 1; 2; …; pop_size:
j¼1
Step 2. Generate a randomly real number r in (0, qpop_size ].
ð21Þ
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
121
Step 3. Select the kth chromosome Vk (1 # k # pop_size) such that qk21 , r # qk :
Step 4. Repeat Step 2 and 3 pop_size times and obtain pop_size copies of chromosomes.
As a result we obtain pop_size chromosomes for a new population and also denote them by
V1 ; V2 ; …; Vpop_size :
Crossover operation. Renew the chromosomes by doing the following crossover operation,
Step 1. Generating a randomly real number r from the interval [0, 1], the chromosome Vi is selected as
a parent if r , Pc ; where Pc is a parameter in the genetic system. Repeat the above process for k ¼ 1
to pop_size and denote the selected parents by V 01 ; V 02 ; V 03 ; …:
Step 2. Divide V 01 ; V 02 ; V 03 ; … into the following pairs:
ðV 01 ; V 02 Þ; ðV 03 ; V 04 Þ; ðV 05 ; V 06 Þ; …
Step 3. Do the crossover operating on each pair according to Eq. (14) and obtain their children. It is
easy to know that all children are feasible.
Step 4. Replace V 01 ; V 02 ; V 03 ; … with their children.
For convenience, we still denote the new chromosomes by V1 ; V2 ; …; Vpop_size :
Mutation operation. Renew the chromosomes by doing the following mutation operation,
Step 1. Repeat the following process for k ¼ 1 to pop_size: generating a randomly real number r from
the interval [0, 1], the chromosome Vk is selected as a parent for mutation operation if r , Pm ; where
Pm is a parameter in the genetic system.
Step 2. For each selected parent V ¼ ðx1 ; x2 ; x3 ; x4 ; y1 ; y2 ; y3 ; y4 Þ; generate random numbers
d1 ; d2 ; …; d8 uniformly from the region (21, 1) and denote d ¼ ðd1 ; d2 ; …; d8 Þ: If X ¼ V þ M·d is
not feasible, which means that xi þ M·di ½0; 100 or yi þ M·diþ4 ½0; 100 for some ið1 # i # 4Þ;
then we set M as a random number between 0 and M until X is feasible. In fact a feasible solution can
be found in finite times by taking a new random number M: After that, replace each selected parent V
with its child X: Note that M is an appropriate large positive number. Here we set M ¼ 30:
We still denote pop_size new chromosomes by V1 ; V2 ; …; Vpop_size :
Following selection, crossover, and mutation, the new chromosomes V1 ; V2 ; …; Vpop_size are ready for
their next evaluation. Adopting different environment parameters of GA and letting GA terminate after
500 cyclic repetitions of the above steps, we obtain the computational results shown in Table 2, where
‘gen’ is generation, and ‘cost’ is the minimal expected cost.
In Table 2, we compare solutions when different parameters are taken with the same generations as a
stopping rule. It appears that all the minimal costs differ little from each other. In order to account for it,
we present a parameter, called the percent error, i.e. (actual value 2 optimal value)/optimal
value £ 100%, where optimal value is the least one of all the ten minimal costs obtained above. The
last column named by ‘error’ in Table 2 is just this parameter. It follows from Table 2 that the percent
error does not exceed 1.9% when different parameters are selected, which implies that the hybrid
intelligent algorithm is robust to the parameter settings and effective to solve model (16).
122
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
Table 2
Comparison solutions of Example 1
1
2
3
4
5
6
7
8
9
10
Pop_size
Pc
Pm
a
gen
Optimal locations
20
20
20
20
20
30
30
30
30
30
0.3
0.3
0.1
0.1
0.2
0.1
0.2
0.1
0.3
0.3
0.1
0.2
0.2
0.3
0.2
0.2
0.2
0.3
0.1
0.2
0.08
0.05
0.05
0.10
0.10
0.05
0.10
0.10
0.08
0.05
500
500
500
500
500
500
500
500
500
500
(61.88, 58.75),
(62.32, 58.48),
(63.21, 58.51),
(61.73, 58.60),
(62.78, 59.99),
(60.05, 58.33),
(62.09, 60.01),
(62.45, 58.78),
(62.21, 58.98),
(61.94, 59.14),
(38.21, 87.15),
(38.90, 85.90),
(39.10, 86.03),
(37.00, 86.15),
(38.48, 89.00),
(36.04, 88.58),
(35.53, 88.05),
(38.23, 86.98),
(37.38, 87.80),
(37.97, 87.93),
(78.44, 23.37),
(79.95, 20.51),
(78.33, 21.02),
(77.70, 21.51),
(78.09, 21.35),
(77.39, 20.58),
(79.75, 19.93),
(79.11, 19.99),
(78.35, 20.00),
(78.87, 20.18),
(24.28, 49.36)
(28.01, 49.00)
(27.50, 48.15)
(25.93, 48.32)
(28.20, 48.14)
(27.64, 47.84)
(28.48, 50.25)
(27.10, 50.09),
(27.21, 49.73)
(27.39, 49.92)
Cost
Error (%)
2186
2179
2179
2173
2169
2169
2157
2153
2146
2145
1.9
1.6
1.6
1.3
1.1
1.1
0.6
0.4
0.0
0.0
Example 2. If we want to minimize the 0.9-optimistic cost, we have the following LA CCP model,
$ 0:9;
min f subject to : Pr{v [ VlCðx; ylvÞ # f}
x;y
ð22Þ
0 # xi # 100; i ¼ 1; 2; 3; 4 0 # yi # 100; i ¼ 1; 2; 3; 4;
where Cðx; ylvÞ is defined by Eqs. (17) and (18).
A numerical study was also carried out to compare the solutions obtained by running the hybrid
intelligent algorithm with various parameters, and all the computational results are showed in Table 3,
where ‘cost’ is 0.9-optimistic cost, and the cycle number in the simulation is 10,000.
Solutions with different parameters of GA are compared on the basis of equivalent generations. In
order to measure the differentia of each other, the percent error is proposed and showed in Table 3 as
‘error’. It follows from Table 3 that the percent error does not exceed 2.3% when different parameters are
selected. Thus the hybrid intelligent algorithm is also robust to the parameter settings and effective to
solve model (22).
Table 3
Comparison solutions of Example 2
1
2
3
4
5
6
7
8
9
10
Pop_size
Pc
Pm
a
gen
Optimal locations
20
20
20
20
30
20
30
30
30
30
0.3
0.1
0.1
0.3
0.2
0.2
0.1
0.1
0.3
0.3
0.1
0.2
0.3
0.2
0.2
0.2
0.2
0.3
0.1
0.2
0.08
0.05
0.10
0.05
0.10
0.10
0.05
0.10
0.08
0.05
500
500
500
500
500
500
500
500
500
500
(62.22, 60.52),
(62.94, 59.38),
(61.92, 59.01),
(62.03, 58.98),
(61.06, 58.37),
(62.73, 57.84),
(62.11, 59.03),
(62.16, 58.23),
(62.16, 58.99),
(61.50, 59.49),
(36.72, 89.39),
(35.40, 86.98),
(38.33, 84.32),
(35.30, 88.28),
(38.14, 87.79),
(38.02, 87.31),
(35.98, 87.87),
(37.61, 88.17),
(37.89, 88.00),
(37.61, 88.17),
(80.42, 17.44),
(79.00, 18.58),
(76.55, 18.90),
(77.26, 18.83),
(79.36, 18.62),
(79.55, 18.83),
(78.79, 19.06),
(77.74, 18.98),
(77.48, 19.22),
(78.12, 19.69),
(26.47, 48.14)
(26.83, 45.78)
(26.78, 48.92)
(26.73, 48.37)
(26.70, 48.43)
(26.15, 48.68)
(27.45, 49.02)
(28.15, 49.72)
(27.82, 48.27)
(27.00, 49.33)
Cost
Error (%)
2313
2309
2305
2285
2283
2282
2274
2266
2264
2261
2.3
2.1
1.9
1.1
1.0
0.9
0.6
0.2
0.1
0.0
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
123
Table 4
Comparison solutions of Example 3
1
2
3
4
5
6
7
8
9
10
Pop_size Pc
Pm
a
gen
Optimal locations
20
20
20
20
20
30
30
30
30
30
0.2
0.3
0.1
0.2
0.2
0.2
0.1
0.3
0.2
0.2
0.05
0.10
0.08
0.05
0.10
0.05
0.08
0.10
0.10
0.05
1000
1000
1000
1000
1000
1000
1000
1000
1000
1000
(60.36, 58.37),
(62.66, 58.36),
(61.38, 59.22),
(62.78, 59.37),
(62.48, 58.63),
(61.63, 59.11),
(61.05, 60.21),
(62.57, 59.32),
(61.38, 59.31),
(61.74, 59.55),
0.1
0.1
0.3
0.3
0.2
0.1
0.3
0.1
0.2
0.3
(37.27, 88.38),
(39.83, 88.03),
(38.85, 87.35),
(38.95, 88.05),
(39.26, 88.00),
(38.70, 87.20),
(38.88, 87.01),
(38.74, 87.60),
(38.71, 87.40),
(38.05, 87.98),
Prob. (%) Error (%)
(75.04, 18.76),
(75.35, 18.04),
(76.78, 18.62),
(78.36, 20.65),
(78.32, 21.05),
(77.21, 20.27),
(77.75, 19.36),
(77.10, 19.58),
(77.01, 19.14),
(77.99, 19.96),
(26.31, 48.07)
(28.26, 48.25)
(26.63, 48.99)
(28.04, 48.96)
(28.43, 48.80)
(26.97, 48.15)
(27.15, 49.32)
(27.39, 49.29)
(27.27, 49.41)
(27.42, 49.78)
94.6
94.7
95.4
95.7
95.8
95.9
96.1
96.4
96.6
96.8
2.3
2.2
1.4
1.1
1.0
0.9
0.7
0.4
0.2
0.0
Example 3. In order to maximize the probability that the transportation cost does not exceed 2300, we
have the following DCP model,
max Pr{v [ VlCðx; ylvÞ # 2300}
x;y
ð23Þ
subject to : 0 # xi # 100; i ¼ 1; 2; 3; 4 0 # yi # 100; i ¼ 1; 2; 3; 4;
where Cðx; ylvÞ is defined by Eqs. (17) and (18).
The hybrid intelligent algorithm is run with 10,000 cycles in simulations and 1000 generations in GA.
Different environment parameters of GA are taken, and corresponding solutions are given in Table 4,
where ‘prob.’ is the maximal probability.
Similarly, we run the hybrid intelligent algorithm for ten times with different parameters of GA on the
basis of equivalent generations. In order to measure the differentia between these results, ‘error’, i.e.
the percent error, is calculated and given in Table 4. From these computational results, we see that the
maximal percent error does not exceed 2.3% when different parameters are chosen. Therefore, the
hybrid intelligent algorithm is also robust to the parameter settings and effective to solve model (23).
8. Conclusion
In this paper, we have contributed to the research area of LA problem in the following three aspects.
(i) Three types of stochastic programming model—EVM, CCP and DCP—were proposed for
capacitated LA problem for the first time. Though the stochastic capacitated LA problem has been
studied by many researchers, a general stochastic programming model has not been proposed in the
literatures due to the complexity. In this paper, three stochastic models are presented for the
problem, which is different from the traditional stochastic programming models.
(ii) To solve these models efficiently, we integrated the network simplex algorithm, stochastic
simulations and genetic algorithm to produce a hybrid intelligent algorithm. This algorithm reduces
124
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
calculation greatly, so it is possible to deal with problems of quite large size by using the algorithm.
(iii) Some numerical examples were provided to show the modeling of stochastic capacitated LA
problem and the performance of the hybrid intelligent algorithm. The computational results of these
numerical experiments imply that the proposed algorithm is robust to the parameter settings of
genetic algorithm and effective to solve LA stochastic programming models.
Acknowledgements
This work was supported by National Natural Science Foundation of China Grant No. 69804006, and
Sino-French Joint Laboratory for Research in Computer Science, Control and Applied Mathematics
(LIAMA).
References
Badri, M. A. (1999). Combining the analytic hierarchy process and goal programming for global facility location-allocation
problem. International Journal of Production Economics, 62, 237– 248.
Bazaraa, M. S., Jarvis, J. J., & Sherali, H. D. (1990). Linear programming and network flows. New York: Springer.
Bongartz, I., Calamai, P. H., & Conn, A. R. (1994). A projection method for lp norm location-allocation problems.
Mathematical Programming, 66, 283– 312.
Bratley, P., Fox, B. L., & Schrage, L. E. (1987). A guide to simulation. New York: Springer.
Brimberg, J., Hansen, P., Mladenovic, N., & Taillard, E. D. (2000). Improvements and comparison of heuristics for solving the
uncapacitated multisource Weber problem. Operations Research, 48, 444– 460.
Brimberg, J., & Mladenovic, N. (1996). Solving the continuous location-allocation problem with tabu search. Studies in
Locational Annals, 8, 23 – 32.
Carrizosa, E., Conde, E., Munoz-Marquez, M., & Puerto, J. (1995). The generalized Weber problem with expected distances.
Rairo-Recherche Operationnelle-Operations Research, 29, 35 – 57.
Carrizosa, E., Munoz-Marquez, M., & Puerto, J. (1998). A note on the optimal positioning of service units. Operations
Research, 46, 155– 156.
Charnes, A., & Cooper, W. W. (1961). Management models and industrial applications of linear programming. New York:
Wiley.
Cooper, L. (1963). Location-allocation problems. Operations Research, 11, 331– 344.
Ernst, A. T., & Krishnamoorthy, M. (1999). Solution algorithms for the capacitated single allocation hub location problem.
Annals of Operations Research, 86, 141– 159.
Fishman, G. S. (1996). Monte Carlo: Concepts, algorithms, and applications. New York: Springer.
Gen, M., & Cheng, R. (1997). Genetic algorithms and engineering design. New York: Wiley.
Gen, M., & Cheng, R. (2000). Genetic algorithms and engineering optimization. New York: Wiley.
Gong, D., Gen, M., Xu, W., & Yamazaki, G. (1995). Hybrid evolutionary method for obstacle location-allocation problem.
International Journal of Computers and Industrial Engineering, 29, 525– 530.
Gong, D., Gen, M., Yamazaki, G., & Xu, W. (1997). Hybrid evolutionary method for capacitated location-allocation problem.
Computers and Industrial Engineering, 33, 577– 580.
Hakimi, S. (1964). Optimum distribution of switching centers in a communication network and some related graph theoretic
problems. Operations Research, 13, 462– 475.
Hansen, P., Jaumard, B., & Taillard, E. (1998). Heuristic solution of the multisource Weber problem as a p-median problem.
Operations Research Letters, 22, 55 – 62.
Hodey, M., Melachrinoudis, E., & Wu, X. (1997). Dynamic expansion and location of an airport: A multiple objective
approach. Transportation Research Part A—Policy and Practice, 31, 403– 417.
J. Zhou, B. Liu / Computers & Industrial Engineering 45 (2003) 111–125
125
Kuenne, R. E., & Soland, R. M. (1972). Exact and approximate solutions to the multisource Weber problem. Mathematical
Programming, 3, 193– 209.
Law, A. M., & Kelton, W. D. (1991). Simulation modelling and analysis (2nd ed.). New York: McGraw-Hill.
Liu, B. (1997). Dependent-chance programming: A class of stochastic programming. Computers and Mathematics with
Applications, 34, 89 – 104.
Liu, B. (1998). Minimax chance constrained programming models for fuzzy decision systems. Information Sciences, 112,
25 – 38.
Liu, B. (1999a). Dependent-chance programming with fuzzy decisions. IEEE Transactions on Fuzzy Systems, 7, 354– 360.
Liu, B. (1999b). Uncertain Programming. New York: Wiley.
Liu, B. (2000). Dependent-chance programming in fuzzy environments. Fuzzy Sets and Systems, 109, 97 – 106.
Liu, B., & Iwamura, K. (2000). Topological optimization models for communication network with multiple reliability goals.
Computers and Mathematics with Applications, 39, 59 –69.
Logendran, R., & Terrell, M. P. (1988). Uncapacitated plant location-allocation problems with price sensitive stochastic
demands. Computers and Operations Research, 15, 189– 198.
Murray, A. T., & Church, R. L. (1996). Applying simulated annealing to location-planning models. Journal of Heuristics, 2,
31 – 53.
Ohlemuller, M. (1997). Tabu search for large location-allocation problems. Journal of the Operational Research Society, 48,
745– 750.
Rubinstein, R. Y. (1981). Simulation and the Monte Carlo method. New York: Wiley.
Sherali, H. D., & Rizzo, T. P. (1991). Unbalanced, capacitated p-median problems on a chain graph with a continuum of link
demands. Networks, 21(2), 133– 163.
Zhou, J. (2000). Uncapacitated facility layout problem with stochastic demands. Proceedings of the Sixth National Conference
of Operations Research Society of China, 904– 911.