You are on page 1of 14

European Journal of Operational Research 145 (2003) 543556

www.elsevier.com/locate/dsw

Discrete Optimization

Using genetic algorithms for single-machine


bicriteria scheduling problems
ksalan
Murat Ko
a

a,*

, Ahmet Burak Keha

a,b

Industrial Engineering Department, Middle East Technical University, 06531 Ankara, Turkey
b
School of ISYE, Georgia Institute of Technology, Atlanta, GA 30332, USA
Received 16 January 2000; accepted 25 December 2001

Abstract
We consider two bicriteria scheduling problems on a single machine: minimizing owtime and number of tardy jobs,
and minimizing owtime and maximum earliness. Both problems are known to be NP-hard. For the rst problem, we
developed a heuristic that produces an approximately ecient solution (AES) for each possible value the number of
tardy jobs can take over the set of ecient solutions. We developed a genetic algorithm (GA) that further improves the
AESs. We then adapted the GA for the second problem by exploiting its special structure. We present computational
experiments that show that the GAs perform well. Many aspects of the developed GAs are quite general and can be
adapted to other multiple criteria scheduling problems.
 2002 Elsevier Science B.V. All rights reserved.
Keywords: Bicriteria scheduling; Genetic algorithms

1. Introduction
In this paper we consider two single-machine
bicriteria scheduling problems and develop genetic
algorithms (GAs) to solve them.
Many researchers have been working on multiple criteria scheduling, with the majority of work
being on bicriteria scheduling. Using two criteria
usually makes the problem more realistic than

Corresponding author. Present address: Krannert School of


Management, Purdue University, West Lafayette, IN 47907,
USA. Tel.: +765-494-4525; fax: +765-494-9658.
E-mail address: koksalanm@mgmt.purdue.edu (M. Koksalan).

using a single criterion. One criterion can be chosen to represent the manufacturers concerns while
the other could represent consumers concern.
There are several papers that review the multiple
criteria scheduling literature. Nagar et al. (1995),
and Tkindt and Billaut (1999) review the problem
in its general form whereas Lee and Vairaktarakis
(1993) review a special version of the problem,
where one criterion is set to its best possible value
and the other criterion is tried to be optimized
under this restriction. Hoogeveen (1992) studies a
number of bicriteria scheduling problems.
We consider the single-machine scheduling
problem and try to minimize owtime together
with minimizing the number of tardy jobs in the
rst problem and with minimizing the maximum

0377-2217/03/$ - see front matter  2002 Elsevier Science B.V. All rights reserved.
PII: S 0 3 7 7 - 2 2 1 7 ( 0 2 ) 0 0 2 2 0 - 5

544

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

earliness in the second problem. Minimizing


owtime is related with minimizing work-in-process inventory and hence is an important concern
for a manufacturer. Number of tardy jobs, on the
other hand, is a measure of dissatised customers.
Earliness is a measure of nished goods inventory
for the manufacturer if the customer does not accept early delivery. In case the manufacturer delivers early, then it could produce dissatised
customers, especially with the widespread adoption of the just-in-time philosophy lately. Earliness
is particularly undesirable for perishable goods.
Both problems we deal with are NP-hard and
using heuristic approaches is justied. GAs have
been successfully used in dierent areas including
scheduling. The idea is, to represent solutions with
chromosomes and to work on a population of
chromosomes. Parents, chosen from the population, are crossed to produce ospring (new solutions) that are expected to inherit desirable
properties of parents. The population is expected
to evolve in such a way that it eventually contains
close-to-best solutions. Muhlenbein (1997) gives a
comprehensive review of GAs.
Many researchers started to apply GAs to
various scheduling problems in recent years. Chen
et al. (1995), Murata et al. (1996a,b), and Nepalli
et al. (1996) are some of the applications to owshop scheduling problems. Gupta et al. (1993)
used a GA to minimize owtime variance in a
single machine environment. Cheng et al. (1996)
provide a survey of GAs for job-shop scheduling.
In Section 2 we discuss the problem of minimizing owtime and number of tardy jobs. We
develop a hybridized GA using local search and
demonstrate its performance through computational experiments. We address the problem of
owtime and maximum earliness in Section 3 in a
similar fashion. We conclude the paper in Section 4.

2. Minimizing total owtime and number of tardy


jobs
We assume a static and deterministic scheduling
environment where there are no precedence relationships between jobs, preemption is not allowed,
and there is a single machine. Let pi and di denote

the processing time and the due date of job i, respectively, i 1; . . . ; m. Given a schedule S, letting
Ci S be the completion time of job i, F S be the
total owtime, and nT S be the number of tardy
jobs we have:

1 if Ci S > di ;
Ui S
0 if Ci S 6 di ;
nT S

Ui S and

F S

Ci S:

A schedule S is said to be ecient with respect


to F and nT if there does not exist any schedule S 0
such that
F S 0 6 F S and

nT S 0 6 nT S

with at least one of the above inequalities being


strict. Clearly, the best solution has to be one of
the ecient solutions.
We are interested in generating all ecient
schedules. This could be done if the below problem
could be solved for each possible n value an ecient schedule could take:
Min
s:t:

F S
nT S 6 n:

Chen and Buln (1993) showed that solving this


problem is NP-hard. Therefore, nding ecient
solutions is NP-hard.
Both F and nT problems can be solved optimally in polynomial time when taken individually.
It is well known that owtime is minimized by the
Shortest Processing Time (SPT) rule, i.e., sequencing all jobs in nondecreasing order of their
processing times. nT , on the other hand, is minimized by using Moores (1968) algorithm.
The problem of minimizing the number of tardy
jobs when the owtime is at its minimum possible
value can be solved in polynomial time (Chen and
Buln, 1993). This can be achieved by applying
Moores algorithm to break ties between each set
of jobs that have equal processing times in the SPT
sequence. Let F and nT values of the resulting sequence be F SPT and nT SPT.
The complexity of the problem of minimizing F
when nT is at its minimum possible value (say
nT (Moore)) is not known (Lee and Vairaktarakis,
1993).

M. K
oksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

Kiran and Unal (1991) showed that there is an


ecient sequence for each nT value between
nT (SPT) and nT (Moore). Our aim is to nd an
ecient sequence for each nT value in that range.
2.1. A heuristic to nd approximately ecient
solutions (AESs)
To our knowledge, there is no known way of
constructing a schedule that has a given nT value.
Koktener and K
oksalan (2000) tried to nd AESs
for the same problem using simulated annealing
(SA) but they failed to nd solutions corresponding to some nT values that lie within the ecient
range. We develop a constructive heuristic procedure that aims to nd an AES for a specic nT
value, n.
For a given problem having nT 6 n constraint,
we assign a job to each position starting from the
rst position. Job k is eligible to be assigned to the
current position if scheduling the remaining unassigned jobs according to Moores algorithm
yields at most n tardy jobs in total. Since Moores
algorithm produces the minimum nT value for the
remaining jobs, any job that does not pass the eligibility test would lead to a schedule that violates
the constraint if assigned to the current position.
Among the eligible jobs, we assign the one that has
the smallest processing time to the current position, since assigning jobs having shorter processing
times to earlier positions favors minimizing owtime.
In our experiments we were able to nd a solution for each nT value within the ecient range
using this heuristic although we have not been able
to show that the heuristic guarantees this. In an
eort to nd a counter example, we created 2000
additional problems using various parameters. The
heuristic found a sequence corresponding to each
nT value within the ecient range for all these
problems as well.
2.2. The GA application
There are various decisions to be made regarding the GA application. We discuss these decisions next.

545

2.2.1. Choosing the representation scheme


We use the random key representation scheme
proposed by Bean (1994). This scheme guarantees
obtaining feasible sequences after the crossover
and mutation operations. Each chromosome (solution) is represented by a set of genes, each taking
a value in the interval 0; 1. The ith gene corresponds to job i. If the ith gene has the kth smallest
value among all genes of the chromosome, then
the corresponding sequence has job i in position k.
For example, the chromosome (.23, .57, .18, .32)
corresponds to sequencing jobs in the 3, 1, 4, 2
order in a four-job problem.
2.2.2. The tness function
The tness function is not trivial since we have a
bicriteria problem and we intend to nd all ecient solutions. We use the following function
jU S  nj
nT SPT  nT Moore
F S  F SPT
;
1  w
F Moore  F SPT

fitness w

where w is the weight and n is the nT value we are


trying to nd a solution for. Both terms of the
tness function try to minimize the deviations
from their respective target values. The denominators are used in order to scale the criteria. The
absolute value in the rst term dierentiates the
tness function from a regular weighted-sums
function. This allows an unsupported ecient solution to have the best tness value among all
solutions for a suitably chosen w and n value
combination. The values of w and n are changed
systematically in order to facilitate the generation
of all AESs. We give the details of the procedure
later. Notice that the tness function is to be
minimized in contrast to the traditional maximization type tness functions.
2.2.3. The initial population
We utilize the heuristic solution described
above as a seed to create a portion of the initial
population. Using the heuristic, we rst nd an
AES for the nT value we target. Then we nd a
number of other solutions that are at certain
(Euclidean) distances from the AES in such a way

546

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

that we have representative solutions from dierent parts of the solution space.
Due to the random key representation, the
chromosomes of the population are points in the
m
0; 1 -space. The maximum possible Euclidean
p
distance between any two chromosomes is m. Let
h h1 ; h2 ; . . . ; hm denote the chromosome corresponding to the AES found by the heuristic. Assume that we want to generate a chromosome at a
distance, d, from h. We rst generate a random
m
direction, t t1 ; t2 ; . . . ; tm , in the 1; 1 -space
and nd a vector t0 that has the same direction as t
and a length d. Adding t0 to h we obtain h0 h t0 .
As the genes should be in the range 0; 1 we let
h Minj fhj g; h Maxj fhj g and obtain h00
h001 ; h002 ; . . . ; h00m scaling h0 as follows
h00j

h0j jh j e
;
h  h 2e

where e 0:1h  h is used to prevent h00 to have


two of its entries equal to 0.0 and 1.0. This is not
desirable since it always leads to assigning the
corresponding jobs to the rst and the last positions, respectively. h00 is the random key representation of a solution that is at approximately d units
distance from the heuristic solution, h.
For creating the initial population, we consider
the targeted nT value, n, and three of its neighbors,
n  1; n 1, and n 2 as seeds. We chose to include n 2 instead of n  2 as a seed since we
expect it to yield a smaller F value while being
equally far from the targeted nT value,
p n. We nd
two chromosomes that are at 0:1 m distance
(10% of p
the maximum distance),pone chromosome
at 0:3 m, and one at 0:5 m distance from
each of the four seed chromosomes. The idea here
is to sample from various parts of the solution
space. The sample contains more solutions close to
the heuristic solution, and fewer solutions away
from it. These constitute 20 chromosomes of the
initial population, and the remaining 10 chromosomes are generated randomly.
2.2.4. Parent selection
We determine the rst parent by using tournament selection and the second parent randomly. In
tournament selection T chromosomes are chosen

randomly and the chromosome that has the best


tness among those becomes the parent. Since
random number generation is computationally
expensive, we employ the following equivalent
procedure, which is more ecient.
The ith best chromosome can be selected as the
rst parent if it is selected as one of the T chromosomes and no chromosome better than the ith
best chromosome is selected as one of the T
chromosomes. The probability of this event can be
calculated as
P fith best chromosome is the

winner of the tournamentg

Ri

T 1
 
R
T

for i 6 R  T 1 for a population of size R. The


corresponding probability is zero for i > RT 1.
The above is a probability distribution function
for the random variable that shows the rank of the
chromosome that will be chosen to be the parent.
Walker (1977) developed a procedure, called the
Alias method, to eciently generate discrete random variates that take a nite number of values. It
can be shown that any nite discrete distribution
of k outcomes can be represented as a composition
of k equiprobable distributions each having two
outcomes. The construction of these distributions
is trivial (see Law and Kelton, 1991, pp. 497502).
Once the transformation of the distribution is
made, the desired random variate can be generated
using a single random number.
For a tournament size of T, the candidates for
the rst parent are the R  T 1 ttest members of
the population. Using the Alias method, we generate a single random number, instead of T random numbers, each time we need to select the rst
parent. The setup eort is negligible. However, we
need to keep the population sorted in the order of
tness values as opposed to making T  1 tness
comparisons in the direct application of the tournament selection. Our approach is ecient, especially when T is large, as it avoids the generation of
T  1 random numbers.
We conducted a small experiment of generating
10,000 parents with dierent tournament sizes on a

M. K
oksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

computer with a 366 MHz Pentium processor.


Using a tournament size of two, the classical
tournament selection took an average of 3.01 CPU
seconds whereas our method required only 0.165
CPU seconds, over 10 replications of the experiment. When we increased the tournament size to
10, the dierence between the two approaches increased substantially, as expected. The average
CPU times turned out to be 8.25 vs. 0.194 seconds,
for the two approaches, in this case. Although the
absolute magnitudes are not very large, the ratio
between the durations is very big and this may be
important in some GA applications.
2.2.5. The crossover operator
We use two-point crossover. For example, if we
have parents 1 and 2 as (.12, .32, .09, .89, .75) and
(.64, .23, .86, .19, .42), respectively, and if the
crossover points are 2 and 4, the rst ospring will
inherit genes 1, 2 and 5 from parent 1 and genes 3
and 4 from parent 2. The second ospring will be
the mirror image of the rst ospring. The crossover will produce the two ospring as (.12, .32, .86,
.19, .75) and (.64, .23, .09, .89, .42).
2.2.6. The mutation operator
We randomly choose a chromosome and one of
its genes as a candidate to be mutated. We change
the value of the chosen gene with probability 0.8.
The new value of the gene is generated from the
uniform distribution in the interval 0; 1.
2.2.7. Replacement policy
We use an elitist policy together with steadystate replacement. With each crossover, we create
two ospring and replace the two worst elements
of the population with these ospring. Hence two
chromosomes of the population are changed at
each iteration even if the new chromosomes have
worse tness values than all members of the population.
2.2.8. The termination rule
Based on some initial experimentation we terminate the GA if the best chromosome of the
population does not change for 20 consecutive
crossovers or after 100 crossovers in total, whichever comes rst.

547

2.2.9. The parameters used in the GA


We use a population size of 30 as our ndings
are in line with experimental results indicating the
adequacy of such population sizes for many applications (Reeves, 1993).
2.2.10. Local Search
In addition to the classical operators, we also
use local search in our GA. To make the local
search ecient, we only consider the consecutive
jobs in a given sequence. If the processing time of a
job is greater than that of its succeeding job, then
interchanging the positions of these jobs decreases
the owtime. If the number of tardy jobs does not
increase, the sequence obtained by interchanging
such jobs dominates the former sequence. Let pi
and pi1 be the processing times of the jobs at ith
and i 1st positions pi > pi1 . Whether the
i 1st job is tardy or not is not important because
its completion time decreases after the interchange
and moving it to an earlier position does not increase the number of tardy jobs. If the ith job is
tardy, then interchanging it with the succeeding job does not increase the number of tardy
jobs either. The number of tardy jobs may increase
only if the ith job is early and it becomes tardy
after the interchange. We keep interchanging adjacent jobs so long as dominating sequences can be
found.
2.2.11. The genetic algorithm
Letting GEN and NC denote the generation
number and the number of consecutive generations for which the best chromosome does not
change, respectively, the GA can be summarized as
follows:
1. Create the initial population and apply local
search to each chromosome. Let GEN
1;
NC
0.
2. Select two parents.
3. Apply crossover and replace the two least t
chromosomes of the population with the generated two ospring.
4. Apply mutation.
5. Apply local search to the ospring and the mutated chromosome.

548

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

6. If the best tness of generation GEN is equal to


that of generation GEN  1 then NC
NC
1, else NC
0. GEN
GEN 1.
7. If GEN > 100 or NC P 20 then stop, else go to
step 2.
2.2.12. The algorithm to nd AESs
The algorithm aims to nd all ecient solutions. This is done by repeated runs of the GA,
systematically changing the targeted nT value, n,
within the ecient range, [nT (Moore), nT (SPT)].
For each targeted n value, we create the initial
population as discussed before and increment the
weight, w, of the tness function in each GA run.
We expect these to help obtain AESs in the
neighborhood of the targeted n value. The steps
are as follows:
1. Find nT (SPT) and nT (Moore) values, n
nT (Moore), w
0; i
1.
2. Run the GA. Let S be the sequence that has the
best tness in the nal population obtained by
the GA.
3. Compare F S with the best-known F value for
nT nT S. If F S is better, update the bestknown F value for nT nT S: i
i 1; w
w 1=9. If i > 10 then go to step 4 otherwise
go to step 2.
4. n
n 1. If n 6 nT (SPT) then w
0; i
1, go
to step 2. If n > nT (SPT) then stop.
We tried some variations as well but initial results showed that the above algorithm performed
well.
2.3. Experiments
We conducted experiments on randomly generated problems to test the performance of the
GA. We generated processing times using discrete
uniform distributions in two dierent ranges as in
K
oksalan et al. (1998). The range 1; 25 represents
low processing time variability and [1,100] represents high processing time variability. We generated due dates from discrete uniform distributions
using four dierent sets of ranges given in Table 1,
as in Koktener and K
oksalan (2000), where P
denotes the sum of processing times of the jobs.

Table 1
Due-date ranges of the problem sets
Problem set

Due-date range

I
II
III
IV

[0.0P, 0.4P]
[0.1P, 0.3P]
[0.25P, 0.45P]
[0.3P, 1.3P]

We tried two problem sizes m 20 and 100 jobs


and seven dierent tournament sizes T 2, 3, 5, 8,
10, 15, and 30. We solved the problems both with
and without local search. In total we tried
2 4 2 7 2 224 cases corresponding to different levels of factors of processing times, problem sets, number of jobs, tournament sizes and
local search, respectively. For each case we made
10 replications changing the random number seeds
and solved 2240 problems in total.
For a given problem we know the exact values of
F(SPT), nT (Moore) and nT (SPT). Using the heuristic, we found an F value for each nT value within
the ecient range. But the heuristic does not
guarantee that the F value of n1T is less than the F
value of n2T where n1T > n2T . In such a case, the
heuristic solution found at n2T dominates the heuristic solution found at n1T . We use the smallest F
value found by the heuristic for the nT values between nT (Moore) and the nT value we are targeting
to nd an ecient sequence for (say n), as an upper
bound, FUB , for the F value of the ecient sequence
at nT n. We know that there is an ecient sequence for each nT value within the ecient range
(Kiran and Unal, 1991). Since the processing times
are integers, every unit decrease in the number of
tardy jobs should be accompanied by at least one
unit increase in the owtime value from one ecient solution to the next. Therefore, F SPT
nT SPT  n is a lower bound, FLB , for the F value
of the ecient solution having n tardy jobs, n
nT MOORE; . . . ; nT SPT. For each n value, we
measure the improvement we make over the initial
heuristic solution as a percentage of the range of
maximum possible improvement using the ratio
below
FUB  F
% Improvement
100;
FUB  FLB
where F is the owtime found by the GA. Since
FLB is a poor lower bound (i.e., it is very loose due

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

549

Table 2
Comparison of GA with the initial heuristic, random solutions, and SA
N

Problem set

Average % improvement
of GAa

Low processing time variability (local search is employed)c


20
I
47.9
II
30.7
III
8.1
IV
10.3
100

I
II
III
IV

40.2
47.6
40.5
13.3

High processing time variability (local search is employed)d


20
I
35.8
II
26.5
III
23.0
IV
10.3
100

I
II
III
IV

49.0
56.8
58.2
29.3

Average % deviation
GA vs. randomb

Average % deviation
SA vs. random

7.58
1.35
0.39
1.09

4.14
12.76
31.75
7.61

0.04

12.98

2.72
1.22
0.89
0.98

4.73
6.53
28.61
18.81

0.01

4.94

Tournament size of 2 is used.


Average of the results for tournament sizes of 2, 5, and 10.
c
10 problems for each cell but six problems of n 20 were excluded since nT (Moore) turned out to be equal to nT (SPT) yielding a
unique ecient solution.
d
10 problems for each cell but three problems of n 20 were excluded since nT (Moore) turned out to be equal to nT (SPT) yielding a
unique ecient solution.
b

to the way it is constructed), we do not compare F


directly with FLB .
The average improvements (over dierent n
values in each problem and over dierent replications of the same problem) are given in Table 2.
For example, for 100 jobs and problem set I, an
average of 40.2% improvement was obtained considering all nT values in all of the 10 problems
solved. These conservative improvement estimates
range from 8% to 58% for dierent problem conditions.
In Table 2 we also give results to compare our
GA with random sequences and with SA. Koktener and K
oksalan (2000) solved the same types
of problems using SA. They were not able to
construct sequences corresponding to some of the
n values within the ecient range of nT values.
They compared their results with those of randomly generated sequences. We conducted a similar experiment. For each problem set in Table 2,
we created 25,000 random sequences. Of these se-

quences, we found the one having the smallest F


value, Frmin n, corresponding to a specic nT n
value and compared it with the corresponding F
value obtained by GA, FGA n. Following is a
measure (also used by Koktener and K
oksalan) of
the deviation of FGA n from the lower bound as a
percentage of the deviation of Frmin n from the
lower bound
% Deviation
100 FGA n  FSPT =Frmin n  FSPT :
The averages of these results (over all nT values
that could be obtained by the random sequence
and over 10 replications of the same problem) are
presented in Table 2 together with the corresponding results reported by Koktener and
K
oksalan for similar problems using SA. The blank
entries correspond to cases where the random sequences did not produce any result within the efcient nT range. We should note that although we

550

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

generated the problems using the same parameters


as Koktener and K
oksalan, the problems are not
identical because the random generation seeds are
dierent.
Table 2 shows that GA yields results that are a
very small percentage of those obtained by the best
of random sequences. Our deviations are also
much smaller than those obtained by SA.
The computations of the GA took 27 CPU
seconds and 40130 CPU seconds for 20 and 100job problems, respectively, for the low processing
time variability case. For high processing time
variability, it took 38 CPU seconds and 45190
CPU seconds for 20 and 100-job problems, respectively. All computations were carried out on a
computer having a 366 MHz Pentium processor.
The reported computation times of SA for the
corresponding problems are in the order of 1013
times shorter than those of GA.
We constructed an ANOVA table to see the
eects of the factors on the improvement. Results
show that the tournament size does not have a
signicant impact on the improvement but all
other factors do. We also looked at the two-way
cross eects and found that they are all signicant
except the cross eects involving the tournament
size. That is, pairs of these factors jointly have a
signicant eect on the magnitude of the improvement that cannot be explained by the sum of
the individual eects of those factors.
We applied Tukeys test (Mendenhall and
Sincich, 1996, pp. 654663) to see when GA works
better with error rate of 0.01. We found that GA
made more improvement when the number of jobs
is large, when local search is applied and when the
processing time variability is high. GA made the
largest improvement for problem type I, the sec-

ond largest improvement for problem types II and


III, and the smallest improvement for problem
type IV.
For problem type IV, the due dates are larger
and the range of nT values is smaller than for the
other problem types. We observed from empirical
results that the initial heuristic nds owtime values close to the F SPT value for nT values around
nT SPT. Since the heuristic nds good solutions,
it may be harder for the GA to improve those
solutions.
We also looked at the evolution of the population during the generations. We arbitrarily selected some GA runs from each problem type and
drew graphs representing the change in the tnesses of the chromosomes during generations. We
observed that the tness of the population converges, and the range between the maximum and
the minimum tness decreases. All GA runs
showed similar trends. We present a typical graph
in Fig. 1 (corresponding to a problem from set I,
having low processing time variability and 100
jobs). The maximum, average, and the minimum
tness values are plotted against generations.
Though the maximum tness value occasionally
increases after crossover and mutation operations,
it also has a decreasing trend in general.
In order to get some idea about the absolute
performance of our initialization heuristic and our
GA, we solved some of the smaller problems to
optimality using a mixed integer programming
formulation of the problem. For 20 jobs and low
and high processing time variability cases, we
solved ve problems for each of the four problem
sets. For each possible nT n value we compared
the optimal F value, FOPT n, with the F value of
our initialization heuristic, FH n, as well as with

Fig. 1. The minimum, average, and the maximum tness values of the population through generations.

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

the F value of our GA, FGA n, using the following


deviation measures:
% Deviation of heuristic
100 FH n  FOPT n=FOPT n;
% Deviation of GA
100 FGA n  FOPT n=FOPT n:
We report the average deviations over dierent
nT values and dierent problems in Table 3. The
results obtained by our heuristic solution are very
good and the GA further improves them very close
to the optimal solution. The computation time of
the optimal solutions for all nT values of each
problem was shorter than 5 minutes. The mixed
integer program has m2 m binary variables for
an m-job problem and the computational diculty
increases drastically with the number of jobs.
In order to see if the performance deteriorated
for larger number of jobs, we tried to solve some
30 and 40-job problems to optimality. In the several problems we solved, the worst-case performance of the heuristic and GA were within 4.34%
and 3.20% of the optimal, respectively, for 30 jobs,
and within 5.23% and 3.56% of the optimal, respectively, for 40 jobs. The corresponding average
deviations were 3.67% and 3.60% for the heuristic,
and 2.46% and 2.50% for the GA, for 30 and 40job problems, respectively. Though the deviations
from the optimal somewhat increased, they are still
very small. We should note that the denominator,

Table 3
Comparison of the heuristic and the GA with the optimal solution
N

Prob.
set

Average % deviation of heuristic

Average % deviation of GA

Low processing time variability


20
I
0.69
II
0.02
III
0.19
IV
0.20

0.13
0.01
0.05
0.08

High processing time variability


20
I
1.05
II
0.56
III
0.12
IV
0.25

0.24
0.12
0.05
0.10

551

FOPT n, of the above performance measure takes a


large value, especially when the processing times of
jobs increase. This may lead to small percentage
deviations. However, the ratios between the percentage deviations of dierent methods remain the
same regardless of the denominator used.

3. Minimizing total owtime and maximum earliness


Consider a single machine, static and deterministic scheduling environment where no precedence relationship exists between jobs and
preemption is not allowed. Let Ei S denote the
earliness of job i, Ei S Max f0; di  Ci Sg;
Emax S denote the maximum earliness; Emax S
Maxi fEi Sg, and Si denote the slack time of job i,
Si di  pi .
We allow keeping the machine idle when necessary. Any sequence can be converted to a
schedule that satises an upper bound on the Emax
value by keeping the machine idle at appropriate
times.
In order to (approximately) nd all ecient
solutions, we try to solve the following problem
for each E value within the ecient range
Min
s:t:

F
Emax 6 E

among all possible schedules.


Lenstra et al. (1977) showed that nding ecient solutions to this problem is NP-hard. Hoogeveen (1992) solved a special case of minimizing a
composite linear function of the two criteria in
polynomial time when preemption is allowed or
when owtime has a larger weight than maximum
earliness.
Both F and Emax can be solved optimally in
polynomial time when considered separately.
When inserted idle time is not allowed, maximum
earliness is minimized by the Minimum Slack Time
(MST) rule, i.e. sequencing the jobs in the nondecreasing order of their slack times. When inserted idle time is allowed, minimum Emax value is
zero and it is trivial to convert any sequence to
such a schedule.

552

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

Breaking the ties in the SPT sequence by the


MST rule solves the hierarchical problem of minimizing the maximum earliness when the owtime
is equal to the owtime of the SPT sequence. Let F
and Emax values of the resulting sequence be
F(SPT) and Emax (SPT). The ecient range for the
E value when inserted idle time is allowed is
[0,Emax (SPT)]. Let Emax value obtained by the MST
sequence when there is no inserted time be
Emax (MST).
K
oksalan et al. (1998) showed that there exists
an ecient sequence for each integer Emax value in
the range 0; Emax MST . They also proposed a
heuristic to nd AES to the problem. Their heuristic works as follows.
Let
ri E: ready time of job i to satisfy Emax 6 E constraint; ri E di  pi  E.
Iit E: idle time required to assign job i to position t while satisfying Emax 6 E constraint;
Iit E Max f0; ri E  Ct1 g where Ct1 is the
completion time of the job in position t  1.
If U is the set of unassigned jobs, job k satisfying the following condition is assigned to position t
Ikt pk MinfIit pi g
i2U

starting with the rst position. That is, for each


position the job that will nish earliest when assigned to that position is selected.
Aytac (1998) modied the heuristic by breaking
ties in a dierent way. Ties may occur while
choosing the job that will be assigned to position t,
i.e., there may be more than one job having the
same smallest Iit E pi value. The original heuristic of K
oksalan et al. (1998) assigns the job with
the smallest processing time among these tied jobs.
Aytac (1998) proposed to assign the job with the
longest processing time among the tied jobs so that
shorter-processing-time-jobs will be saved for
succeeding positions. We used this modied heuristic in our GA application.
3.1. The genetic algorithm
We modify the GA used for the F ; nT problem
to adapt it to the current problem. Instead of using

a weighted sum of criteria values as a tness


function we use the owtime of the chromosomes
as their tness values. Since we can schedule any
sequence to satisfy the Emax criterion, we only need
to nd the schedule that has the smallest owtime.
We use a similar logic as we used for the F ; nT
problem in creating the initial population. When
we target to nd an ecient solution having an
Emax value of E , we rst nd the heuristic chromosomes for Emax values of E  1; E ; E 1, and
E p
2. Then we nd two chromosomes that are at
0:1 m distance from each heuristic
chromop
somep
and one chromosome at 0:3 m and one at
0:5 m distance from each heuristic chromosome. 20 members of the population are obtained
like this and the remaining chromosomes are created randomly. The heuristic guarantees to nd a
schedule having at most the desired Emax value but
does not guarantee achieving that value exactly.
Therefore, for several dierent E values the heuristic may give the same schedule and our initial
population may have several copies of the same
schedule. However, since the solutions are represented by random keys these schedules will have
dierent chromosome representations. The schedules created at a certain Euclidean distance from
these solutions will not be the same since we locate
those in a randomly chosen direction.
In initial experimentation, we observed that the
population continues to improve after 100 generations. We adapted our termination rule to this
observation and we terminate the GA either after
200 generations or if the best chromosome of the
population does not change for 100 generations,
whichever comes rst.
We again use a local search procedure. If the
processing time of a job is greater than the processing time of its succeeding job in the sequence
then interchanging the positions of these jobs may
decrease the owtime. Let pi and pi1 be the processing times of the jobs at ith and i 1st positions
such that pi > pi1 . If the machine is idle just before the i 1st job, when we place it to position i
its start time will not change but all succeeding
jobs will start later than their original start times.
In such cases interchanging does not improve the
owtime. If the ready time of i 1st job is earlier
than the completion time of i  1st job, then re-

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

placing jobs at ith and i 1st positions will decrease the total owtime. If there is idle time before ith job and ready time of i 1st job is earlier
than that of ith job, interchanging these two jobs
will again decrease the total owtime. We keep
interchanging adjacent jobs so long as we can reduce total owtime while satisfying the earliness
constraint.
The remaining aspects of the GA are the same
as the GA used for the F ; nT problem.
3.2. Finding approximately ecient solutions
Our aim is to nd all ecient solutions. We try
to solve the following problem for each E value
within the ecient range
Min F
s:t:
Emax 6 E:
As stated by K
oksalan et al. (1998), there exists
an ecient solution for each integer Emax value
within the range [0, Emax (MST)]. Since it is required to insert idle time to satisfy the Emax 6 E
constraint in this range, the constraint is satised
as equality. But for E values within the range
[Emax (MST), Emax (SPT)], the constraint may be
satised as a strict inequality. In our algorithm we
solve the above problem starting from E
Emax SPT  1 and decreasing until E 0. For
each E value we run the GA. If E0 is the Emax value
of the solution obtained from the GA, then the
next E value is taken as E0  1.
The algorithm that we used in our experiments
is as follows
1. Find Emax (SPT). E
Emax SPT  1.
2. Run the GA. Let S be the sequence that has the
best tness in the nal population of the GA
and E0 S be the Emax value of S.
3. If E0 S 0 then stop; otherwise E
E0 S  1.
Go to step 2.
3.3. Experiments
We conducted experiments on randomly generated problems to test the performance of the
GA. We generated processing times using discrete
uniform distribution in two dierent ranges as in

553

Table 4
Due-date ranges of the problem sets
Problem set

Due-date range

I
II
III
IV

[0.5P,
[0.3P,
[0.2P,
[0.0P,

1.1P]
1.3P]
0.8P]
1.0P]

K
oksalan et al. (1998). Processing times generated
in the range [1,10] represent low processing time
variability and in the range [1,30] represent high
processing time variability. We generated duedates from discrete uniform distributions in the
due-date range sets used by Koktener and
K
oksalan (2000). We present the parameters of
these sets in Table 4 where P denotes the sum of
the processing times of jobs.
We tried three problem sizes m 50, 100, and
150 and two dierent tournament sizes T 2, and
8. We solved the problems both with and without
local search. In total we tried 2 4 3 2 2 96
cases corresponding to dierent levels of factors of
processing times, problem sets, number of jobs,
tournament sizes and local search, respectively.
For each case we made 10 replications changing
the random number seeds and solved 960 problems in total.
We compare the best owtime obtained for
each Emax value with a lower bound found by
solving the same problem for the case where preemption is allowed (Hoogeveen, 1992). We nd the
average percentage deviation from the lower
bounds over all E values for each problem and
then over all replications. We present the results of
our GA in Table 5 together with the corresponding
results of K
oksalan et al. (1998), the SA algorithm
of Koktener and K
oksalan (2000) and the GA of
Aytac (1998) using the following measure
% Deviation

F  FLB
100;
FLB

where F is the owtime value found by GA and


FLB is the lower bound to the owtime obtained
allowing preemption. For example, the average
percentage deviation obtained by the GA was 1.5
for 50 jobs and problem set I considering all E
values for each of the 10 replications of a problem
(Table 5).

554

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

Table 5
Performance of genetic algorithm for F ; Emax problem (tournament size T 2 and local search is employed)
N

Problem set

Low processing time variability


50
I
II
III
IV

Avg. % deviation
of GA

Avg. % deviation
of SA

Avg. % deviation
of Aytacs GA

Avg. % deviation
of heuristic

1.50
1.31
1.35
0.91

2.09
1.82
1.83
1.74

2.07
2.14
1.82
2.66

3.22
3.21
2.93
3.75

100

I
II
III
IV

1.46
1.57
1.24
1.07

2.10
1.90
1.99
1.68

1.83
2.16
2.16
2.15

2.91
2.87
3.24
2.83

150

I
II
III
IV

1.54
1.78
1.47
1.29

2.00
1.90
1.85
1.65

2.13
2.42
2.29
2.55

3.29
3.10
3.10
3.18

2.14
1.78
2.44
1.39

2.20
1.92
1.99
1.82

2.08
2.31
2.15
2.33

5.07
4.21
4.46
4.70

High processing time variability


50
I
II
III
IV
100

I
II
III
IV

2.37
1.91
1.98
1.79

2.36
2.05
2.09
1.77

2.40
2.66
2.73
2.58

4.77
4.50
4.87
4.19

150

I
II
III
IV

2.23
2.38
1.75
1.85

2.19
2.01
2.08
1.66

2.60
2.97
3.10
2.79

4.65
4.51
5.10
4.11

We observe that the GA signicantly improved


the initial solution. Our solutions outperformed
Aytacs (1998) in all cases except in two cases where
Aytacs (1998) results are slightly better. We tested
the null hypothesis that the means of the average
deviations of our GA and Koktener and K
oksalans (2000) SA are the same against the alternate
hypothesis that our deviations are smaller. We rejected the null hypothesis at 90% condence level
and conclude that our GA outperformed the SA.
We conducted the experiments on a Pentium
233 MMX computer. The computational times for
low processing time variability turned out to be
within the ranges 100180, 6701150, and 1660
2700 CPU seconds when there are 50, 100 and 150
jobs, respectively. For high processing time variability the computational times are within the
ranges 300500, 19003200, and 47007700 CPU

seconds, respectively. The reported computational


times of Aytacs GA are in the order of 320 times
longer than our GA, and those of SA are in the
order of 1530 times shorter than those of our GA,
for the corresponding problems.
We constructed an ANOVA table to see the
eects of the factors on the performance of GA.
Results are similar to those obtained for the F ; nT
problem. The tournament size does not have a
signicant impact on the performance but all other
factors do. We also looked at the two-way cross
eects and found that they are all signicant except
the cross eects involving the tournament size.
We applied Tukeys test (Mendenhall and
Sincich, 1996, pp. 654663) to see when GA works
better with error rate of 0.01. We found that when
the number of jobs is 50 GA performed better than
the cases where number of jobs are 100 and 150.

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

GA worked better when local search is applied and


when the processing time variability is low. GA
performed better for problem type IV than for
other problem types.
The change in the tness values of the population during crossovers is similar to that obtained
for the F ; nT problem. The average tness continues to decrease and converges to the minimum
tness value. The only dierence is that the convergence to minimum tness value is slower in this
case and therefore we increased the termination
rule to 200 crossovers.

4. Conclusions
We developed GA-based approaches to generate AESs for two single machine bicriteria scheduling problems. In both problems, we used initial
heuristics to include good solutions into the initial
population. We developed a heuristic for the F ; nT
problem that not only helped nd good solutions
to insert in the initial population but also made it
possible to nd an AES for each nT value in the
ecient range. We used tournament selection to
select one of the parents in both problems. Instead
of selecting T parents and nding the best among
them, we developed an ecient procedure that
uses the probability of each chromosome for being
a parent. In addition to the traditional operators,
we utilized local search within the GA. Our computational results for both problems are favorable.
The approaches we developed are rather general
and can be easily adapted to many other bicriteria
scheduling problems. The GA is used to nd AESs
around specic criterion values. AESs from all
over the criteria space are obtained by repeated
application of the GA. To adapt the GA to a given
bicriteria scheduling problem, mainly two problem-specic issues have to be addressed. Firstly, a
tness function that well represents the criteria has
to be developed. Secondly, a local search procedure suitable for the specic problem has to be
developed. Both these factors may be important
on how well the GA performs. In order to nd
AESs from dierent parts of the criteria space, it is
necessary to know the range of values of the two
criteria over all ecient solutions, strictly speak-

555

ing. This, in turn, requires the capability of nding


the two ecient solutions corresponding to the
best values of each of the criteria. However,
knowing an approximate range of the criteria
values over the ecient solutions would also be
sucient for practical purposes.
Following are some further research topics.
Other crossover and mutation techniques can
be tested. Also some dierent replacement
schemes can be considered.
Better initial solutions can be found by introducing new heuristics or improving the current
known heuristics.
New representation schemes can be used. Some
problem specic representations can be considered.
For the second problem, the case where inserted
idle time is not allowed can be considered.
Problems having more than two criteria may be
addressed.

Acknowledgements
The authors thank Meral Azizoglu, of the
Middle East Technical University, for her suggestions in the development of the heuristic for the
F ; nT problem. The paper beneted from the
comments of two anonymous reviewers.

References
Aytac, A., 1998. A genetic algorithm for bicriteria scheduling.
M.S. Thesis, METU, Ankara.
Bean, J.C., 1994. Genetic algorithms and random keys for
sequencing and optimization. ORSA Journal on Computing
6 (2), 154160.
Chen, C.L., Buln, R.L., 1993. Complexity of single machine
multi-criteria scheduling problems. European Journal of
Operational Research 70, 115125.
Chen, C., Vempati, V.S., Aljaber, N., 1995. An Application of
genetic algorithms for ow shop problems. European
Journal of Operational Research 80, 389396.
Cheng, R., Gen, M., Tsujimura, Y., 1996. A tutorial survey of
job shop scheduling problems using genetic algorithmsI:
Representation. Computers and Industrial Engineering 30
(4), 983997.
Gupta, M.C., Gupta, A., Kumar, A., 1993. Minimizing ow
time variance in a single machine system using genetic

556

M. Koksalan, A. Burak Keha / European Journal of Operational Research 145 (2003) 543556

algorithms. European Journal of Operational Research 70,


289303.
Hoogeveen, J.A., 1992. Single machine bicriteria scheduling.
Ph.D. Thesis, CWI, Amsterdam.
Kiran, A.S., Unal, A.T., 1991. A single-machine problem with
multiple criteria. Naval Research Logistics 38, 721727.
K
oksalan, M., Azizoglu, M., Kondakci, S., 1998. Minimizing
owtime and maximum earliness on a single machine. IIE
Transactions 30, 192200.
Koktener, E., K
oksalan, M., 2000. A simulated annealing
approach to bicriteria scheduling problems on a single
machine. Journal of Heuristics 6, 311327.
Law, A.M., Kelton, W.D., 1991. Simulation Modeling and
Analysis, second ed. McGraw-Hill Inc., New York.
Lee, C.Y., Vairaktarakis, G.L., 1993. Complexity of single
machine hierarchical scheduling: A survey. In: Pardalos,
P.M. (Ed.), Complexity in Numerical Optimization. World
Scientic Publishing Co., Singapore.
Lenstra, J.K., Kan, A.H.G., Brucker, P., 1977. Complexity of
machine scheduling problems. Annals of Discrete Mathematics 1, 343362.
Mendenhall, W., Sincich, T., 1996. A Second Course in
Statistics: Regression Analysis. Prentice-Hall, London.
Moore, J.M., 1968. A n-job one machine sequencing algorithm
for minimizing the number of late jobs. Management
Science 15 (Iss.1), 102109.

Muhlenbein, H., 1997. Genetic algorithms. In: Aaarts, E.,


Lenstra, J.K. (Eds.), Local Search in Combinatorial Optimization. Wiley, New York.
Murata, T., Ishibuchi, H., Tanaka, H., 1996a. Genetic algorithms for owshop scheduling problems. Computers and
Industrial Engineering 30 (4), 10611071.
Murata, T., Ishibuchi, H., Tanaka, H., 1996b. Multi-objective
genetic algorithm and its applications to ow shop scheduling. Computers and Industrial Engineering 30 (4), 957
968.
Nagar, A., Haddock, J., Heragu, S., 1995. Multiple and
bicriteria scheduling: A literature survey. European Journal
of Operations Research 81, 88104.
Nepalli, V.R., Chen, C.L., Gupta, J.N.D., 1996. Genetic
algorithms for the two-stage bicriteria owshop problem.
European Journal of Operations Research 95, 356373.
Reeves, C.R., 1993. Genetic algorithms. In: Reeves, C.R. (Ed.),
Modern Heuristics Techniques for Combinatorial Problems. Halsted Press, New York.
Tkindt, V., Billaut, J.-C., 1999. Some guidelines to solve
multicriteria scheduling problems. In: IEEE International
Conference on Systems, Man and Cybernetics Proceedings,
vol. 6, pp. 463468.
Walker, A.J., 1977. An ecient method for generating discrete
random variables with general distributions. Assoc. Comput. Mach. Trans. Math. Software 3, 253256.

You might also like