Professional Documents
Culture Documents
X
T
t=1
max
X
jS
2
a
tj
y
j
(
X
jS
3
a
tj
z
//
j
D
2t
; 0
)
;
(2)
minimize
Z
3
=
X
T
t=1
X
jS
1
a
tj
x
j
X
jS
3
a
tj
z
/
j
D
1t
!
2
1
D
1t
X
T
t=1
X
jS
2
a
tj
y
j
X
jS
3
a
tj
z
//
j
D
2t
!
2
1
D
2t
; (3)
subject to
X
jS
1
a
tj
x
j
X
jS
3
a
tj
z
/
j
PD
1t
; for t = 1; 2; . . . ; T;
(4)
X
jS
2
a
tj
y
j
X
jS
3
a
tj
z
//
j
PD
2t
; for t = 1; 2; . . . ; T;
(5)
X
jS
3
z
/
j
X
jS
3
z
//
j
6B; (6)
x
j
; y
j
; z
/
j
; z
//
j
0; 1; 2; . . .; for all j: (7)
S
k
The set of all feasible schedules for type-k
sta, k = 1; 2; 3.
a
tj
1 if t is a working period in schedule j and 0
otherwise, t = 1; 2; . . . ; T; j S
k
.
c
j
The cost for assigning one worker to sched-
ule j, j S
k
.
x
j
The number of type-1 workers assigned to
schedule j, j S
1
.
y
j
The number of type-2 workers assigned to
schedule j, j S
2
.
z
/
j
The number of type-3 workers assigned to
schedule j, j S
3
, to do type-1 job.
z
//
j
The number of type-3 workers assigned to
schedule j, j S
3
, to do type-2 job.
X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369 361
For brevity, let us denote the Sta Scheduling
Problem formulated above as SS-P. In SS-P,
objective (1) is the primary criterion, which seeks
to minimize the total cost for assigning the neces-
sary sta to satisfy the demands for manpower.
Objective (2) is the secondary criterion, which
seeks to have a schedule with the maximum sta
surplus. The tertiary criterion objective (3) is to
minimize the variation of sta surplus. Constraints
(4) and (5) indicate that type-3 sta have mixed
skills, who can be assigned to meet the demands
for either type-1 or type-2 jobs. Constraint (6)
represents the limit on the availability of type-3
sta. Finally, constraint (7) species that x
j
; y
j
; z
/
j
,
and z
//
j
can only take nonnegative integer values.
Note that we include explicitly a limit B on the
number of type-3 sta, to reect the reality that
sta with mixed skills are scanty and the require-
ment on this type of sta should not exceed the
possibly available number B. On the other hand,
the model does not include such a limit on the
number of type-1 or type-2 sta, considering that
the supply of these sta is generally sucient. Even
though it is found that the supply of these sta is
temporarily insucient, it takes little time to re-
cruit temporary workers, or to train additional
sta, to meet the requirement. As compared to the
workers of multiple skills, the availability of
workers of a single skill is usually not a major
concern and is thus not taken into consideration in
the model above. The algorithm to be described
below can, however, be modied without much
diculty to deal with upper bounds on each and
every type of sta if these have to be considered.
Note also that a solution to SS-P will specify
the number of workers to be assigned to each
feasible schedule. It does not, however, specify
which individual worker should be assigned with
which schedule. As long as the solution for SS-P is
obtained, we can derive the working schedule for
each worker by further solving a generalized as-
signment problem, where the source nodes repre-
sent the workers available, while the sink nodes
represent the number of workers required for the
feasible schedules (these can be extracted from
the solution for SS-P). A matrix representing the
preference of the workers to the schedules may be
created, to serve as the assignment weights in the
assignment problem. Such an assignment model to
help decide the allocation of workers to the
schedules has become more or less standard in the
literature. See, for example, [9] (p. 990) or [6]. In
the rest of this paper, we will address only the
model SS-P and its solutions.
3. Algorithm
We propose a genetic algorithm to solve the
problem formulated above (for an excellent review
of GAs, see [10]). The general framework of our
algorithm is depicted in Fig. 1. In order to apply
such a genetic algorithm to solve an optimization
problem, several basic issues will have to be spec-
ied. These include the coding scheme, reproduc-
tion, crossover, and mutation. In the sequel of this
section we shall describe the details of these issues,
the combination of which constitutes the genetic
algorithm we propose to solve our problem.
3.1. Coding scheme
The coding scheme we adopt to represent a
solution for the problem uses a nonnegative inte-
ger-value vector:
S =x
1
; x
2
; . . . ; x
n
1
; y
1
; y
2
; . . . ; y
n
2
; z
/
1
; z
/
2
; . . . ; z
/
n
3
;
z
//
1
; z
//
2
; . . . ; z
//
n
3
; (8)
where n
j
, j = 1; 2; 3, are the total number of fea-
sible schedules in the sets S
j
, j = 1; 2; 3, respec-
tively. Let n = n
1
n
2
2n
3
. Each individual, or
chromosome, in the population is encoded as an n-
element vector. Each element, or gene, in a chro-
mosome represents one of the feasible schedules
for the relevant type of sta. The value assigned to
each gene is a nonnegative integer representing the
number of workers assigned to the corresponding
schedule (or tour, see [3]).
3.2. Rank-based parent selection
The problem we are considering involves mul-
tiple criteria. This makes it hard to compute a
quantitative value to represent the tness of an
362 X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369
individual. A possible approach to get a quanti-
tative tness value is to assign a weight w
j
to each
criterion Z
j
and then use f = w
1
Z
1
w
2
Z
2
w
3
Z
3
as the value of tness, but the determination of the
weights w
j
in such an approach will be practically
very dicult. Considering the hierarchical struc-
ture of the three criteria in our model and their
relative importance, we propose to use a ranking
scheme, which ranks the chromosomes in a pop-
ulation by the three prioritised objectives, and then
select parents for generating ospring based on
their ranks. The ranking scheme is shown in Fig. 2.
We introduce a parameter e
j
in our ranking
conditions, with the consideration that two solu-
tions (chromosomes) are usually regarded, in
practice, as almost equally good under an objec-
tive if their objective values fall within a small
range e
j
. In such a case, we will further evaluate
the chromosomes using the condition at the lower
level if the current condition is at level j = 1 or 2,
or arbitrarily declare one chromosome to have
higher rank than the other, if the current level
j = 3 (this corresponds to the case where the per-
formance of the two chromosomes are basically
the same after evaluation under the three criteria).
In general, a smaller value should be given to a
parameter e
j
if one thinks that the criterion Z
j
is
much more important than other lower level cri-
teria. For example, one should choose e
j
= 0 if he/
she thinks that any dierence in a criterion Z
j
has
already allowed him/her to be able to determine
the rank for a chromosome without having to
Fig. 1. The general framework of GA.
X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369 363
worry about the performance of the chromosome
under lower level criteria.
After all the chromosomes in a population have
been ranked, we select parents according to the
following approach:
1. Choose a probability, q, to select the chromo-
some of rank 1.
2. Determine the probability of selecting the chro-
mosome of rank i according to a Geometric Pro-
gression series with a common ratio (1 q),
namely, let the probability be q(1 q)
i1
.
3. Select parents according to their probabilities.
Remarks
Note that when the population size tends to in-
nity, the sum of q(1 q)
i1
over all i is equal to
q=(1 (1 q)) = 1. For considerably large
population size, the sum is also nearly equal to
1. The actual value for q may be determined
by a trial-and-error approach using the actual
data of the problem to be solved. A too large
value for q implies that those good individuals
will have a large chance to generate more o-
spring which will dominate the population rap-
idly, and thus result in the so-called premature
convergence of the GA approach. However, a
too small value q will make the convergence very
slow. According to our computational experi-
ence, we suggest to choose q in a range
[0:05; 0:15[.
Note also that since we only know of the ranks
of the individuals, rather than their tness val-
ues, other parent selection approaches such as
the commonly used roulette wheel selection
scheme are not applicable here. Rank-based se-
lection may avoid the problem of over reliance
on extreme individuals exhibited in tness-pro-
portionate selection. For more discussions on
the performance of rank-based selection
schemes, see [1,18].
Fig. 2. The ranking scheme to select parents.
364 X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369
3.3. Crossover
We use a multi-point crossover operator, which
generates an ospring by copying its genes from
one of the parents, chosen according to a ran-
domly constructed crossover mask. Where there is
a 1 in the crossover mask, the gene is copied from
the rst parent, and where there is a 0 in the mask,
the gene is copied from the second parent. A
simple example is illustrated in Fig. 3.
The above is similar to the well-known Uni-
form Crossover. However, the key in our cross-
over operator is the construction of the crossover
mask. We propose to construct this mask based on
the Hamming distance between schedules. For two
equal-length binary strings, their Hamming dis-
tance is dened as the number of positions in
which the strings dier from each other (see, e.g.,
[11,14]). For instance, the Hamming distance be-
tween (100111) and (010110) is 3. The Hamming
distance between two schedules i and j in our
problem SS-P is dened as
h
ij
=
X
T
t=1
w(a
it
a
jt
); (9)
where is modulo 2 addition, and w(b) is the
Hamming weight of the binary string b which is
dened as the number of nonzero components of
b. For example, if a
1
= (100111), a
2
= (010110),
and a
3
= (110010), then a
1
a
2
= 110001 and
a
1
a
3
= 010101. If b = 110001, then w(b) = 3.
The crossover mask is constructed as follows:
First, randomly select an element i in the mask and
randomly (uniformly) assign its value as 1 or 0.
Suppose its value is r and the corresponding
schedule is i, then those elements of the mask
corresponding to the schedules that are close to
schedule i will be assigned a value r and those el-
ements corresponding to the schedules that are far
from schedule i will be assigned a value 1 r,
where the distance between the schedules is mea-
sured based on h
ij
above. For example, an imple-
mentation of this scheme is as follows: Given T, we
choose k, where 0 6k 60:5, to make kT as the
degree to measure the ``closeness'' between two
schedules i and j under the Hamming distance h
ij
.
If h
ij
[0; kT[, we regard schedule j as being close
to schedule i, and assign element j in the mark
with a value r; if h
ij
[(1 k)T; T[, we regard
schedule j as being far from schedule i, and assign
element j in the mark with a value 1 r; if h
ij
(kT; (1 k)T) (schedule j is neither obviously close
to nor obviously far from schedule i), then we
randomly choose r or 1 r, based on a uniform
distribution, and assign this value to element j of
the crossover mask. A suggestion is to choose
k = 1=3, which will give the three intervals an
equal width.
We hope, on the one hand, the crossover with a
mask constructed as above will not disturb the
gene information a lot (otherwise a highly infea-
sible ospring may be generated even though the
parents are feasible) and, on the other hand, it will
still be able to maintain certain diversity. This is
explained below. As one can see, in the sta
scheduling problem, the demand for sta in a
particular period t will be satised by workers on
those schedules that have the period t as one of
their working periods. A good solution for the
problem must contain some good combinations of
schedules that contribute to satisfying the labour
requirements in dierent periods properly. Those
schedules that have many coincident working pe-
riods are similar, or close in terms of the Hamming
distance. By constructing a crossover mask whose
elements corresponding to those similar schedules
are set to 1 (or 0), we hope that the ospring
generated can inherit those good combinations of
schedules from each of the parents. On the one
hand, as the genes of the ospring copied from
parent 2 correspond to the schedules which are Fig. 3. A simple example of crossover.
X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369 365
quite dierent from those from parent 1, we hope a
kind of diversity will also be maintained.
3.4. Mutation
Mutation is performed by rstly choosing a
chromosome, then dropping a number of workers,
H, from some randomly selected genes in the
chromosome, and then restoring, if needed, the
chromosome back to a feasible one through in-
creasing the number of workers assigned to other
genes. The procedure consists of the following
steps:
1. Select randomly a gene k with x
k
> 0 and let
x
k
= x
k
1. Reduce accordingly the supplies
of sta in the time periods which are working
periods of schedule (gene) k. Continue this step
until a number of H workers are dropped from
the chromosome.
2. If the changed supplies are still sucient to sat-
isfy the demands, stop; otherwise randomly se-
lect one schedule (or more) whose working
periods cover the periods with insucient sta
supplies, and increase the number of workers
until the chromosome becomes feasible.
The mutation procedure as described above
closely resembles the random shakeup procedure
proposed in Brusco and Jacobs [5]. Brusco and
Jacobs have shown that such a procedure works
quite well in their simulated annealing approach.
3.5. Heuristic to ensure feasibility
Crossover operations may generate infeasible
ospring. This also happens in our proposed
crossover operation. To ensure feasibility, in our
GA we use a heuristic procedure, which works as
follows.
In the scheduling problem, there are numerous
constraints. The procedure rstly selects the one
that is violated the most. It then chooses a
schedule capable of reducing the violation, and
then increases the number of workers assigned to
the schedule by one. If this makes the total number
of type-3 sta exceed the bound, it will give up the
schedule and choose the next schedule accordingly.
The process repeats until all constraints are satis-
ed. If there are multiple schedules that can be
altered to make the chromosome feasible, the
heuristic will choose the best one, as determined by
examining the three criteria successively.
3.6. The algorithm
In summary, the GA we propose to solve the
sta scheduling problem consists of the compo-
nents as described in Sections 3.13.5.
4. Computational results
The scheduling environment considered in our
computational studies is extracted from a local
labour-intensive organization whose business is
mainly cargo-forwarding. The scheduling horizon
T is one week, with one unit period equal to one
hour. There are two kinds of shifts, day-shift and
night-shift, with starting time and ending time
shown in Table 1.
During each day-shift, there is a one-hour
break after the rst four hours of work. A night-
shift does not specify any break time (in fact the
break time of each worker during a night-shift is
assigned by his/her supervisor in accordance with
the working load of the team in dierent time and
is not hoped to be xed by the scheduling algo-
rithm). For a weekly schedule, if it contains a
Table 1
Shift description
Shift
Day 07:0016:00 08:0017:00 09:0018:00 10:0019:00 11:0020:00
12:0021:00 13:0022:00 14:0023:00 15:0000:00
Night 23:0007:00
366 X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369
night-shift, then it must have three consecutive
night-shifts, followed by a compensation day-o
and a regular day-o.
1
If a weekly schedule con-
tains no night-shift, then it will have six working
days and one regular day-o, where the day-o
can be assigned to any day of the week. Besides,
for the convenience of the workers, in any weekly
schedule, it is required that all day-shifts begin at
the same time during the whole week. We call a
weekly schedule containing night-shifts a night-
schedule while a weekly schedule with no night-
shifts a day-schedule.
We consider three types of workers who can all
be assigned to schedules as described above. For
each type of worker, it is clear that there are
63 day-schedules (since there are 9 day-shifts each
day, and the day-o can be assigned to any day of
the week), and also 63 night-schedules (since a
night-schedule can be associated with any of the
9 day-shifts and the period of the three night-shifts
in a night-schedule can be started on any of the
7 days in the week). Thus, there are 126 schedules
for each type of worker, and the total number of
elements in a chromosome n = 4 126 = 504 (see
Section 3.1).
We had programmed the genetic algorithm of
Section 3.6 in C language and implemented it in a
Sun Sparc station. In our computational studies,
we determined the values for the selective proba-
bility q, the crossover probability, and the muta-
tion probability (see Fig. 1), by the following
method: We used a problem instance with data
extracted from the actual operational environment
as described above, and set a range containing a
number of desirable values for each parameter
(for example, for q, we set the values as 0:05;
0:06; . . . ; 0:14; 0:15); We then tested these values
one by one, and set the best one for the parameter.
The parameters thus determined were xed in
solving other instances (with dierent operational
data) of the problem. In general, how to determine
these parameters such as the crossover probability,
1
The company must provide a compensation day-o to a
worker when he/she completes any period of night-shifts, and
during each week it can only assign at most three night-shifts to
a worker. Thus, it can be seen that the reason to have the
working pattern as described above is to minimize the number
of compensation days o and to allow workers to have the
compensation day-o and the regular day-o to be taken
together.
Table 2
Computational results
Population size: 70
Generation: 100
Selective Prob.: 0.090000
Crossover Prob.: 0.700000
Mutation Prob.: 0.050000
No. of employees:
Dropped in mutation: 50
The bound B: 100
Gen Z
1
Z
2
Z
3
Total no.
of sta
1 4242 8272 8776.00 624
2 4229 8152 8741.00 621
3 4196 7792 7921.00 614
4 4163 7632 7740.00 609
5 4133 7592 7806.00 607
7 4121 7432 7332.00 603
8 4088 7232 7262.00 598
11 4088 7232 7201.00 598
13 4076 7152 7102.00 596
14 4075 7112 7055.00 596
16 4066 7072 6979.00 594
18 4066 7072 6966.00 594
19 4066 7072 6964.00 594
21 4066 7072 6943.00 594
22 4064 7072 6939.00 594
23 4061 7032 6908.00 593
25 4059 7032 6896.00 593
26 4059 7032 6881.00 593
27 4059 7032 6875.00 593
28 4059 7032 6873.00 593
29 4057 7032 6868.00 593
32 4057 7032 6845.00 593
33 4057 7032 6837.00 593
35 4057 7032 6831.00 593
36 4057 7032 6830.00 593
37 4057 7032 6828.00 593
38 4057 7032 6820.00 593
39 4057 7032 6815.00 593
40 4057 7032 6808.00 593
41 4057 7032 6806.00 593
42 4057 7032 6805.00 593
43 4057 7032 6801.00 593
44 4057 7032 6798.00 593
45 4057 7032 6794.00 593
46 4057 7032 6792.00 593
47 4057 7032 6790.00 593
48 4057 7032 6781.00 593
58 4057 7032 6778.00 593
X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369 367
the mutation probability, etc., is a common con-
cern on implementation of genetic algorithms,
which alone has attracted lot of studies in the lit-
erature. One may always test and adopt other
approaches to determine these parameters for the
genetic algorithm proposed here as long as they
are demonstrated to be eective.
A number of problem instances with dierent
settings of labour requirements, stang costs, and
upper bound B, have been generated and solved by
the GA approach proposed above. In all cases the
proposed GA worked reliably, which successfully
delivered good, feasible solutions, in about 8 to
10 minutes. We report the results in solving a case
in Table 2, to show the changes of the best values
in the three criteria as the population in the GA
evolved.
As we can see from Table 2, the value of the
tertiary objective still kept reducing after the val-
ues of the primary objective and the secondary
objective had become unchanged. This is an im-
portant result we expect. If the problem would
consider only a single criterion to minimize the
total cost, the procedure would have stopped when
the cost remained unchanged over certain gener-
ations. It is clear that our approach generated a
better solution as it produced a solution that has
smaller variance of sta surplus among solutions
with the same cost.
We also observed that in some cases, the second
objective kept reducing after the primary objective
had been unchanged.
5. Concluding remarks
We have proposed a multi-criteria model to
formulate the sta scheduling problem with mul-
tiple skills. A genetic algorithm has been proposed
to solve the problem, which possesses the follow-
ing characteristics: (1) it selects parents by using a
ranking scheme that considers successively the
three criteria; (2) it adopts a multi-point crossover
operator that uses the hamming distance between
schedules to construct the crossover mask; and (3)
it adopts a heuristic to resolve the problem of in-
feasibility created by crossover operations. Com-
putational studies have shown the eectiveness of
the model and the proposed approach. The pro-
posed GA approach is being incorporated into an
integrated scheduling system we are currently de-
veloping for manpower planning and scheduling in
service systems.
We must point out that, in order to successfully
apply the GA approach proposed, a careful ex-
amination on which schedules are practically fea-
sible is important. In other words, it is important
to carefully identify the sets of feasible schedules
S
k
, k = 1; 2; 3, before the GA is applied, since
apparently the GA will be slowed down if the
sets S
k
are very big (note that the number of genes
in a chromosome of the GA is equal to n =
[S
1
[ [S
2
[ 2[S
3
[; see Eq. (8)). Usually, by utilizing
the practical operational rules/constraints, one
may eliminate many schedules from consideration
and therefore reduce the sizes of the sets S
k
. For
example, in the scheduling problem as discussed in
Section 4, there are only 504 feasible schedules left
after considering the operational constraints of the
company, in contrast with the total number 4032
of possible schedules without considering these
constraints (with no constraints, a worker may
start his/her shift at any one hour on each working
day, and have his/her day-o on any day of a
week. Thus, for a period of one week, he/she may
have 24 6 7 = 1008 possible schedules. For
three types of workers, the total number of
schedules n = 4 1008 = 4032).
Note that the planning horizon also aects di-
rectly the sizes of the sets S
k
. In some situations, we
may have to consider sta scheduling problems
with a planning horizon covering, say, more than
one week (for example, if the leave of a worker
should be assigned based on an aggregate period
of two weeks, then a planning horizon covering
two weeks would be more appropriate). How to
scale up the GA approach to deal with these
problems will be a subject for further research.
Currently, what we are using in constructing our
scheduling system are some heuristic methods (for
example, we decouple the two-week problem into
two one-week problems, and then modify and re-
ne the results obtained by solving the one-week
problems).
Note also that the model addressed in this pa-
per is a deterministic one. In general, the demand
368 X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369
for manpower may be a stochastic process which
varies randomly over time. Can we modify the GA
approach to tackle this kind of stochastic prob-
lem? This is another possible work for further
investigation.
The model we have formulated in this paper
involves multiple criteria and multiple skills. To
the best of our knowledge, this model has not been
examined and solved before. Another future work
is, therefore, to explore the possibility to develop
other solution approaches, such as tabu, simulated
annealing, or fast heuristics, to tackle the problem.
When more approaches become available, it would
be interesting to compare their performance and to
evaluate their suitability when applied in dierent
operational environments, including more feasible
schedules, shorter/longer planning horizons, more
types of skills, and nonlinear cost functions (Note
that our GA approach can be applied to any
nonlinear cost functions, although the cost func-
tion (1) considered in the current paper is a linear
function).
Acknowledgements
We would like to express our gratitude to two
anonymous referees for their helpful comments
and suggestions to improve the paper.
References
[1] J.E. Baker, Adaptive selection methods for genetic algo-
rithms, in: Proceedings of the First International Confer-
ence on Genetic Algorithms, 1985, pp. 101111.
[2] J.J. Bartholdi III, A guaranteed accuracy round-o algo-
rithm for cyclic scheduling and set covering, Operations
Research 29 (1981) 501510.
[3] S.E. Bechtold, M.J. Brusco, M.J. Showalter, A compara-
tive evaluation of labour tour scheduling methods, Deci-
sion Sciences 22 (1991) 683699.
[4] S.E. Bechtold, Workforce scheduling for arbitrary cyclic
demands, Journal of Operations Management 1 (1981)
205214.
[5] M.J. Brusco, L.W. Jacobs, A simulated annealing ap-
proach to the cyclic sta-scheduling problem, Naval
Research Logistics 40 (1993) 6984.
[6] T.C.A. Chan, Cyclic sta scheduling with a minimum shift
change requirement, M. Phil. Thesis, (Advisors: X. Cai and
V. Lum), Department of Systems Engineering and Engi-
neering Management, The Chinese University of Hong
Kong, 1997.
[7] F.F. Easton, N. Mansour, A distributed genetic algorithm
for employee stang and scheduling problems, in: Pro-
ceedings of the Fifth International Conference on Genetic
Algorithms, 1993, pp. 360367.
[8] F.F. Easton, D.F. Rossin, Equivalent alternate solutions
for employee scheduling problems, Decision Sciences 22
(1991) 9851007.
[9] F.F. Easton, D.F. Rossin, Sucient working subsets for
the tour scheduling problem, Management Science 37
(1991) 14411451.
[10] D.E. Goldberg, Genetic Algorithms in Search, Optimiza-
tion, and Machine Learning, Addison-Wesley, Reading,
MA, 1989.
[11] S. Guiasu, Information Theory with Applications, Mc-
Graw-Hill, New York, 1977.
[12] A.I.Z. Jarrah, J.F. Bard, A.H. deSilva, Solving large-scale
tour scheduling problems, Management Science 40 (1994)
11241150.
[13] J.S. Loucks, F.R. Jacobs, Tour scheduling and task as-
signment of a heterogeneous work force: A heuristic
approach, Decision Sciences 22 (1991) 719738.
[14] M. Mansuripur, Introduction to Information Theory,
Prentice-Hall, Englewood Clis, NJ, 1987.
[15] R. Narasimhan, An algorithm for single shift scheduling of
hierarchical workforce, European Journal of Operational
Research 96 (1997) 113121.
[16] J. Tanomaru, Sta scheduling by a genetic algorithm with
heuristic operators, in: Proceedings of the 1995 IEEE
International Conference on Evolutionary Computation,
Perth, Australia (29 November1 December 1995), pp.
456461.
[17] M.T. Trivedi, A mixed-integer goal programming model
for nursing service budgeting, Operations Research 29
(1981) 10191034.
[18] D. Whitley, The GENITOR algorithm and selection
pressure: why rank-based allocation of reproductive trials
is best, in: Proceedings of the Third International Confer-
ence on Genetic Algorithms, 1989, pp. 116121.
X. Cai, K.N. Li / European Journal of Operational Research 125 (2000) 359369 369