EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
European Journal of Operational Research xxx (2003) xxx–xxx
www.elsevier.com/locate/dsw
Solving multi-objective production schedulingproblems using metaheuristics
T. Loukil a, J. Teghem b,*, D. Tuyttens b
a Universit�ee de Sfax, F.S.G.E., Route l’a�eerodrome km 4, BP 1088, 30185 Sfax, Tunisiab Facult�ee Polytechnique de Mons, 9 Rue de Houdain, Mons 7000, Belgium
Abstract
Most of research in production scheduling is concerned with the optimization of a single criterion. However the
analysis of the performance of a schedule often involves more than one aspect and therefore requires a multi-objective
treatment. In this paper we first present (Section 1) the general context of multi-objective production scheduling,
analyze briefly the different possible approaches and define the aim of this study i.e. to design a general method able to
approximate the set of all the efficient schedules for a large set of scheduling models. Then we introduce (Section 2) the
models we want to treat––one machine, parallel machines and permutation flow shops––and the corresponding
notations. The method used––called multi-objective simulated annealing––is described in Section 3. Section 4 is devoted
to extensive numerical experiments and their analysis. Conclusions and further directions of research are discussed in
the last section.
� 2003 Elsevier B.V. All rights reserved.
Keywords: Production scheduling; Multi-objective optimization
1. Introduction
Most of research in production scheduling is
concerned with the minimization of a single crite-
rion. However, scheduling problems often involve
more than one aspect and therefore require mul-
tiple criteria analysis.
Despite their importance, scant attention hasbeen given to multiple criteria scheduling prob-
lems, especially in the case of multiple machines.
* Corresponding author. Tel.: +32-65-374-680; fax: +32-65-
374-689.
E-mail address: [email protected] (J. Teghem).
0377-2217/$ - see front matter � 2003 Elsevier B.V. All rights reserv
doi:10.1016/j.ejor.2003.08.029
This is due to the extreme complexity of these
combinatorial problems. A comprehensive survey
of multi-objective scheduling problems is in prep-
aration [9].
For a multi-objective optimization problem (P)
minX2D
zkðX Þ; k ¼ 1; . . . ;K; ðPÞ
where functions zk are the objectives, X the vector
of variables and D the set of feasible solutions (D is
discrete in case of combinatorial problem like
scheduling problems).
We recall the basic notion of efficient solution: afeasible solution X � is efficient if there does not exist
any other X 2 D such that zkðX Þ6 zkðX �Þ 8k with at
least one strict inequality.
ed.
2 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
In the literature concerning multi-objectivescheduling problems we can distinguish five main
approaches:
(a) Hierarchical approach: the objectives consid-
ered are ranked in a priority order and opti-
mized in this order.
(b) Utility approach: a utility function or weight-
ing function––often a weighted linear combi-nation of the objectives––is used to aggregate
the considered objectives in a single one.
(c) Goal programming (or satisficing approach): all
the objectives are taken into account as con-
straints which express some satisficing levels
(or goals) and the objective is to find a solution
which provides a value as close as possible of
the pre-defined goal for each objective. Some-times one objective is chosen as the main
objective and is optimized under the constraint
related to other objectives.
(d) Simultaneous (or Pareto) approach: the aim is
to generate––or to approximate in case of an
heuristic method––the complete set of efficient
solutions.
(e) Interactive approach: at each step of the proce-dure, the decision maker express his prefer-
ences in regard to one (or several) solutions
proposed so that the method will progressively
converge to a satisfying compromise between
the considered objectives.
Each approach has its own advantages and
drawbacks as described in general literature onmulti-objective optimization: some approaches
require more parameters or a priori information
((a), (b) and (c)), some are more pragmatic ((a) and
(b) for instance) but unable to generate some effi-
cient solution; others are more general or theo-
retical (d) or more oriented to real case studies (c)
and (e);. . .Clearly the approach used depends essentially
of the aim of the study and/or the context of the
application treated.
Independently of the approach used, Hoogeveen
[6] and Chen and Bulfin [1] studied the complexity
of the single machine bicriteria and multiple criteria
problems. They have proved that only problems
including flow time as primary criterion, in a hier-
archical optimization, and problems minimizingflow time and maximum tardiness can be solved in
polynomial time. All other problems are either
shown to be NP hard or remain open as far as
computational complexity is concerned. Obviously
the problems including more than one machine and
two criteria are more difficult.
This is the reason why it appears from the
analysis of the literature that often the methodsproposed are
• very sophisticated (complex branch and bound,
dynamic programming, dominance relations,
etc. . .) and complex to implement;
• only able to solve small size problems and with
two objectives;
• completely dependent of the model treated: themethods are no more valid if a small change in
the constraints or a fortiori a change in the
objectives is introduced.
So there is a need for a general method able to
treat a large class of models––even with large scale
instances––and independent of the considered
objectives. This is the aim of the present paper.Effectively, metaheuristics, like simulated
annealing (SA), tabu search and genetic algo-
rithms have demonstrated their ability to solve
combinatorial problems such as vehicle routing,
production scheduling, time tabling, etc. [14]. So,
some authors suggested to adapt metaheuristics
in order to solve multi-objective combinatorial
(MOCO) problems [3]. In particular Ulungu et al.[22,23], conceived a multi-objective simulated
annealing (MOSA) algorithm for solving combi-
natorial optimization problems and an interactive
version was also designed by Teghem et al. [20].
The MOSA method is thus designed to tackle a
MOCO problem (P). The aim is to generate a good
approximation dEðPÞEðPÞ of the set of efficient solutions
EðP Þ (approach (d) above). The procedure is validfor any number K P 2 of objectives. Similarly to a
single objective heuristic in which a potentially
optimal solution emerges, in the MOSA method
the set dEðPÞEðPÞ will contain potentially efficient solu-
tions.
Since scheduling problems are also combinato-
rial problems, applying the metaheuristics to the
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 3
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
production scheduling with multiple criteria issuitable (see for instance Neppali et al. [13]).
The aim of this paper is to show how such
methods can be used to solve complex multiple
objectives scheduling problems by generation of a
list of potentially efficient solutions.
The paper is organized as follows: the multiple
objectives production scheduling models treated
are considered in Section 2 and the notations areintroduced. Section 3 gives a description of the
MOSA heuristic for a general MOCO problem.
Section 4 reports some computational results and
their analysis; conclusions and further research
directions are presented in Section 5.
2. Multi-objective scheduling problems
It is well known that the optimal solution of
single objective models can be quite different if the
objective is different (for instance, for the simplest
model of one machine, without any additional
constraint, the rule SPT is optimal to minimize Fbut the rule EDD is optimal to minimize the
maximal tardiness Tmax).In fact, often each particular decision maker
wants to minimize a given criterion. For example
in a company, the commercial manager is inter-
ested by satisfying customers and then minimizing
the tardiness. On the other hand, the production
manager wishes to optimize the use of the machine
by minimizing the makespan or the work in pro-
cess by minimizing the maximum flow time. Andeach of these objectives is valid from a general
point of view. Since these objectives are conflict-
ing, a solution may perform well for one objective,
but giving bad results for others. For this reason,
scheduling problems have often a multi-objective
nature (see [9,10]).
Therefore, any proposed scheduling approach
has to find a compromise between them. Such acompromise must correspond to a more satisfying
solution to the manager. In any case, such a
solution must be efficient: for this reason, it ap-
pears interesting to generate the set of efficient
solutions––or at least, a good approximation of
this set––in which he can choose the ‘‘best com-
promise’’ in regard of his preferences. Sometimes,
the procedure can also ask him to constructinteractively this compromise solution (see [20]).
In the following, we use the classical notations:
Cj: the completion time for job j;dj: the due date for job j;Tj ¼ maxð0;Cj � djÞ the tardiness of job j;Ej ¼ maxð0; dj � CjÞ the earliness of job j.
2.1. The objective functions
In our study, seven possible objective functions
are considered.
• CðwÞ ¼ 1
n
Pj wjCj: the mean weighted completion
time,
• TðwÞ ¼ 1
n
Pj wjTj: the mean weighted tardiness,
• EðwÞ ¼ 1
n
Pj wjEj: the mean weighted earliness,
• Cmax ¼ maxj Cj: the maximum completion time
(makespan),
• Tmax ¼ maxj Tj: the maximum tardiness,
• Emax ¼ maxj Ej: the maximum earliness,
• NT the number of tardy jobs,
where wj is a possible weight associated to job j. Inthe models considered and solved by the MOSA
method (Section 4), any subset of fCðwÞ; T ðwÞ;EðwÞ
;Cmax; Tmax;Emax;NTg can be chosen to define
the objectives.
Remarks
• Clearly, in the three first objectives, the factor 1n
can be avoided, considering thus total weightedobjectives.
• We consider here the more classical objective
functions for scheduling problems, but this is
not a limitation: any other objective function
can also be tackled by the method without any
additional difficulties.
• In case of non-regular objectives––like E and
Emax––we do not consider any empty times forthe machines.
2.2. The models
We only analyze, in a first step, the scheduling
models for which the solutions correspond to a
4 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
permutation of jobs; such permutations are calledsequences; three types of models are considered:
• One machine model.
• Parallel (non-necessary identical) machines
model: in this case, ðm� 1Þ fictitious jobs are
introduced to separate the jobs assigned to the
m machines. (For instance, for a problem with
nine jobs on three machines, the sequence
9; 3; 2; f ; 4; 6; 1; 8; f ; 7; 5
(with ‘‘f ’’ for fictious), means that jobs 9, 3 and
2 are scheduled on machine 1; jobs 4, 6, 1 and 8
on machine 2 and jobs 7 and 5 on machine 3).
• Permutation flow shop: the jobs share the same
processing order and in addition the sequence ofjobs is identical on each machine.
2.3. Sequence neighborhoods
In the SA scheme used (see Section 3) a neigh-
bor sequence of the current sequence will be cho-
sen randomly at each iteration.
Three different ways are used to define aneighbor of a sequence:
• in the first, two jobs i and j are exchanged in the
sequence;
• in the second, one job i is inserted at a different
place k;
• in the third, at each iteration, a random choice is
made between the first two.
The method of Section 3 has been implemented
with the three types of neighborhoods.
3. The MOSA method
This method is designed to tackle a MOCOproblem (P).
The principle idea of MOSA method can be
briefly summarized as follows.
One begins with an initial iterate X0 and initial-
izes the set of potentially efficient points PE to
contain X0. One then samples a point Y in the
neighborhood of the current iterate. But instead
of accepting Y if it is better than the current iter-
ate on an objective, we now accept it if it is not
dominated by any of the points currently in the
set PE. In this case, we make Y the current iter-ate, add it to PE, and throw out any point in PEthat are dominated by Y .
On the other hand, if Y is dominated, we still
make it the current iterate with some probability.
The only complicated aspect of this scheme is
the necessity to use a weighting function for
computing this probability. The introduction
of a weight vector induces a privileged directionof search to the efficient frontier. So, to be able
to cover all the efficient frontier, a diversified set
of weight vectors must be considered.
3.1. Preliminaries
• A weighting function sðzðX Þ; kÞ is chosen, the ef-
fect of this choice on the procedure is small dueto the stochastic character of the method. The
weighted sum is very well known criterion and
it is the easiest function to compute:
sðzðX Þ; kÞ ¼XKk¼1
kkzkðX Þ:
• The three classic parameters of a SA procedure
are initialized: T0: initial temperature (or alternatively an ini-
tial acceptance probability P0);
a (<1): the cooling factor;
Nstep: the length of temperature step in the
cooling schedule.
• A stopping criterion is fixed:
Nstop: the maximum number of iterations
without improvement.• A neighborhood NðxÞ of feasible solutions in the
vicinity of a solution x is defined. This definition
is problem-dependent (see Section 2.3).
3.2. Determination of PEðkðlÞÞ, l 2 L
The method requires, a wide diversified set of
weights to define a family of weighting functions.
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 5
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
Different weight vectors kl, l 2 L, are generatedwhere ðkðlÞk ; k ¼ 1; . . . ;KÞ with kðlÞk > 0 8k andPK
k¼1 kðlÞk ¼ 1 8 l 2 L.
For each l 2 L the following procedure is ap-
plied to determine a list PEðkðlÞÞ of potentially
efficient solutions.
1. Initialization
• Draw at random an initial solution x0.
Fig. 1. Illustration of PEðkÞ.
This step is problem-dependent.
• Evaluate zkðx0Þ 8k.• PEðkðlÞÞ ¼ fx0g; Ncount ¼ n ¼ 0.
2. Iteration n• Draw at random a solution y 2 NðxnÞ.• Evaluate zkðyÞ and determine Dzk ¼ zkðyÞ�
zkðxnÞ 8k.• Calculate Ds ¼ sðzðyÞ; kÞ � sðzðxnÞ; kÞ.
If Ds6 0, we accept the new solution:
xnþ1 y; Ncount ¼ 0:
Else we accept the new solution with a certain
probability p ¼ expð� DsTnÞ:
xnþ1 p y Ncount ¼ 0;
1�pxn Ncount ¼ Ncount þ 1:
(
• If necessary, update the list PEðkðlÞÞ with thesolution y.
• n nþ 1
–– If nðmodNstepÞ ¼ 0, then Tn ¼ aTn�1;
else Tn ¼ Tn�1;
–– If Ncount ¼ Nstop or T < Tstop, then stop;
else iterate.
3.3. Generation of dEðPÞEðPÞ
Because of the use of a weighting function, a
given weight vector kðlÞ induces a privileged
direction on the efficient frontier (see Fig. 1 in case
of a bi-objective problem).
The procedure generates only a good subset of
potentially efficient solutions in that direction and
these solutions are often dominated by somesolutions generated with another weight vector. So
it is thus necessary to consider a wide diversified
set of weights to cover ‘‘all the directions’’. This set
of weights kðlÞk , l 2 L, is generated uniformly:
kðlÞk 2 0;1
r;2
r; . . . ;
r � 1
r; 1
� �
defining jLj ¼ r þ K � 1
K � 1
� �weight vectors in
diversified directions.
The number jLj must be fixed experimentally in
function of the dimensions of problem (P) (see
Section 4); it must be large enough to cover all the
efficient frontier of problem (P). To obtain a good
approximation dEðPÞEðPÞ to EðP Þ it is thus necessary to
filter the set [jLjl¼1PEðkðlÞÞ. This operation is very
simple and consists only in making pairwise
comparisons of all the solutions contained in the
sets PEðkðlÞÞ and removing the dominated solu-
tions. This filtering procedure is denoted by ^ such
that
dEðPÞEðPÞ ¼jLj
l¼1
PEðkðlÞÞ:
A great number of experiments is required todetermine the number jLj of set of weights suffi-
cient to give a good approximation of the whole
efficient frontier.
4. Experimental results
An intensive work of numerical experimenta-tions has been performed in three major steps,
corresponding to Sections 4.2, 4.3 and 4.4:
6 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
• comparison with existing single optimization re-
sults;
• comparison with existing multi-objective opti-
mization results;
• treatment of randomly generated multi-objec-
tive instances.
We first present in Section 4.1 how instances
can be randomly generated.
4.1. Generation of instances
There exists in the literature a classical way torandomly generate instances of scheduling problems:
Table 1
Test on unicriterion problems 40/1//T w
R T Problem
number in [2]
Best solution
Crauwels MO
0.2 0.4 6 173.88 17
7 158.10 15
8 171.63 17
0.6 11 436.63 44
12 482.80 48
13 731.40 73
0.8 16 1807.93 181
17 1965.58 196
18 1857.75 186
0.6 0.4 56 52.48 5
57 56.50 6
58 123.40 12
0.6 61 507.03 51
62 335.08 34
63 494.28 50
0.8 66 1634.65 166
67 1643.90 165
68 1961.28 197
1 0.4 106 0
107 12.90 1
108 83.85 8
0.6 111 786.95 82
112 529.23 53
113 676.93 68
0.8 116 1169.25 120
117 1259.10 127
118 636.50 64
• the processing times are uniformly distributed in
the interval ½0; 100�;• the due dates dj are uniformly distributed in the
interval ½P ð1� T � R2Þ; P ð1� T þ R
2Þ� where
• P ¼Pn
j¼1 pj in the case of a single machine,
• P ¼Pn
j¼1 pj=m in the case of m parallel ma-
chine,
• P ¼ ðnþ m� 1Þ�pp with �pp the mean total pro-cessing time of the n jobs in the case of m ma-
chines in series (permutation flow job),
• R, T are two parameters taking their values in
the sets f0:2; 0:6; 1g and f0:4; 0:6; 0:8g respec-
tively.
Deviation (%) from the best solution founded in
literature vs MOSA
SA Deviation (%) Mean Maximum
8.97 2.93 1.06 2.93
8.50 0.25
1.62 0
0.00 0.77 0.76 0.82
6.10 0.68
7.40 0.82
7.75 0.54 0.33 0.54
8.12 0.13
3.72 0.32
3.98 2.87 6.73 13.10
3.90 13.10
8.60 4.21
2.90 1.16 1.63 2.12
0.48 1.61
4.75 2.12
5.12 1.86 1.07 1.86
7.67 0.84
1.50 0.52
0 0 5.65 15.89
4.95 15.89
4.75 1.07
4.25 4.74 2.76 4.74
8.08 1.67
9.58 1.87
3.80 2.95 2.03 2.95
2.00 1.02
9.98 2.12
Table 2
Test on unicriterion problems 50/1//T w
R T Problem
number in [2]
Best solution Deviation (%) from the best solution founded in
literature vs MOSA
Crauwels MOSA Deviation (%) Mean Maximum
0.2 0.4 6 525.52 525.52 0 0.21 0.64
7 228.06 228.06 0
8 169.98 171.06 0.64
0.6 11 870.08 870.08 0 0.08 0.23
12 727.56 729.22 0.23
13 907.66 907.66 0
0.8 16 1758.04 1758.04 0 0.05 0.14
17 1685.20 1687.50 0.14
18 2095.90 2095.90 0
0.6 0.4 56 25.16 25.16 0 0 0
57 73.58 73.58 0
58 50.44 50.44 0
0.6 61 504.24 511.82 1.50 0.60 1.50
62 346.74 347.70 0.28
63 614.58 614.74 0.03
0.8 66 1537.56 1540.32 0.18 0.09 0.18
67 1708.26 1708.56 0.02
68 1855.12 1856.46 0.07
1 0.4 106 0 0 0 1.36 4.08
107 34.40 35.74 4.08
108 0 0 0
0.6 111 546.20 546.20 0 0.52 1.56
112 317.34 317.34 0
113 702.12 713.08 1.56
0.8 116 714.54 714.54 0 0.10 0.29
117 1438.44 1438.44 0
118 1308.66 1312.46 0.29
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 7
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
When T increases, the due dates are morerestrictive; when R increases, the due date are more
diversified.
4.2. Benchmarks of single optimization problems
Although the MOSA method is designed for
multi-objective framework, it is possible to apply it
for single-objective problems. Moreover, for suchproblems, there exist some benchmarks in the lit-
erature. It is also an opportunity to test the influ-
ence of the SA parameters (see Section 3), to fix the
value of these parameters and to validate the SA
approach. After analysis, the following valueshave been chosen:
T0 ¼ 50; a ¼ 0:975; Nstep ¼ 500;
Tstop ¼ 1e� 0:4; Nstop ¼ 2500:
4.2.1. Single machine problems
In Crauwels et al. [2] there exists a large
benchmark for single machine instances with
objective TðwÞ
, giving the optimal value (or the best
known value).For instances with 40, 50 and 100 jobs respec-
tively, we choose three problems for each pair of
8 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
parameters ðR; T Þ (see Section 4.1). So 81 problemsare solved.
For each type of problems, Tables 1–3 give the
slack between the value obtained with MOSA for
objective TðwÞ
and the best known value, in terms
of percentages of it. It appears
• that the performance is improved with the
dimension of the instance: in Table 3 (100 jobs)the slack is often zero and almost always less
than 1%;
• for fixed value of parameter T , the performances
decrease when R is increases i.e. when the due
dates are more dispersed.
Table 3
Test on unicriterion problems 100/1//T w
R T Problem
number in [2]
Best solution
Crauwels MO
0.2 0.4 6 582.58 58
7 509.72 50
8 594.34 59
0.6 11 1816.49 181
12 2341.79 234
13 1788.40 178
0.8 16 4077.03 407
17 3328.04 332
18 5448.38 545
0.6 0.4 56 90.46 9
57 115.39 11
58 163.13 16
0.6 61 867.93 87
62 870.67 87
63 965.63 96
0.8 66 2438.72 244
67 4010.23 401
68 3990.85 399
1 0.4 106 0
107 11.93 1
108 0
0.6 111 1591.23 160
112 1743.67 175
113 911.69 91
0.8 116 3706.14 371
117 3244.37 325
118 2462.37 246
4.2.2. Permutation flow shop problems
Eleven instances, respectively with
• 5 machines: 20, 50 and 100 jobs;
• 10 and 20 machines; 20, 50, 100 and 200 job-
s;have been chosen in the benchmark of Taillard
[19]. These instances concern the minimization
of the makespan Cmax for permutation flow shopproblems.
For each instance, five experiments of MOSA
have been realized and Table 4 presents the mean
and maximal slack obtained in regard to the
optimal value.
Deviation (%) from the best solution founded in
literature vs MOSA
SA Deviation (%) Mean Maximum
2.58 0 0.02 0.07
9.72 0
4.76 0.07
7.11 0.03 0.01 0.03
1.79 0
8.40 0
7.03 0 0.02 0.06
8.04 0
1.81 0.06
4.78 4.78 1.67 4.78
5.39 0
3.53 0.25
3.29 0.62 0.41 0.62
2.17 0.17
9.95 0.45
2.83 0.17 0.13 0.18
7.25 0.18
3.16 0.06
0 0 0 0
1.93 0
0 0
2.04 0.68 0.65 0.83
1.11 0.43
9.29 0.83
4.37 0.22 0.21 0.27
3.24 0.27
5.68 0.13
•
Table 4
Test on unicriterion problems n/mPF//Cmax
Number of machines Number of tasks Deviation (%) from the best solution founded in literature vs MOSA
Mean Maximum
m ¼ 5 20 0.08 0.39
50 0.59 2.97
100 0.05 0.11
m ¼ 10 20 1.19 1.77
50 0.34 0.64
100 0.29 0.60
200 0.2 0.39
m ¼ 20 20 0.69 3.43
50 1.8 2.28
100 0.96 1.63
200 1.01 1.74
Values of parameters
P0 0.50 Tstop 1e)4
Nit 500 Nstop 5000
a 0.975 Vois. 2
T0 50 Weights 25
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 9
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
The performances appear very stable and quitegood with a mean slack almost always less than
1% (see Table 4).
4.3. Existing multi-objective problems in the litera-
ture
We test the method on some small multi-
objective problems found in the literature.Table 5 gives the results of ten experi-
ments corresponding to Refs. [3,5,7,8,12,15–18,
21].
The columns of this table indicate successively:
1. the reference, the type and the dimension of the
instance;
2. the character, exact or heuristic, of the method;3. the objectives considered.
Note that in Shanthikumar�s paper [18], a
hierarchical optimization is made with NT asmain objective; in papers of Selen–Hott [17],
Ho–Chang [5] and Rajendran [15], a linear
aggregated function of the objectives is opti-
mized;
4. the solutions obtained by these authors;
5. the solutions obtained by our SA approach.
Clearly we found identical solutions (and evensometimes better) with our unique method, prov-
ing that it is quite general. There is just one small
difference for the Koksalan�s method [7] which is
also a heuristic: the approximation of the efficient
set is not completely identical.
4.4. Randomly generated instances
4.4.1. Single machine
Instances with 10, 20, 50 and 100 jobs have
been randomly generated with the method de-
scribed in Section 4.1; all 15 pairs of objectives
have been considered (the makespan is con-
stant for this model and thus not taken into ac-
count). Several hundred experiments have been
realized.
(a) First the impact of some parameters has been
analyzed.
Table 6 shows the impact of parameters Rand T , used in the random generation of
the instances, on the number of potential
efficient solutions obtained. Two cases are
compared: (R ¼ 0:6; T ¼ 0:6) and (R ¼ 0:4;T ¼ 0:3).
Table 5
Test on the problems founded in literature
Problems (source) Methods Criteria Obtained solutions
By authors With MOSA
Nelson et al. [12],
n ¼ 6, m ¼ 1
Exact (F , NT) (130, 1) (103, 2) (98,3) (93,4) Idem author
(NT, Tmax) (3, 50) (2, 95) (1, 185) Idem author
(F , Tmax) (93, 55) (129, 50) Idem author
(F , NT, Tmax) (137, 1, 185) (130, 1, 190)
(129, 3, 50) (116, 2, 95)
(109, 2, 100) (103, 2, 145)
(98, 3, 55) (93, 4, 55)
Idem author
Shanthikumar [18],
n ¼ 8, m ¼ 1
Exact (Tmax, NT) (44, 3) (44, 3) (37, 4) (29, 5)
Van Wassenhove and
Gelders [21], n ¼ 10, m ¼ 1
Exact (F , Tmax) (26.8, 20) (26.9, 12) (27.2, 10)
(27.4, 7) (31.5, 6)
Idem author
Koksalan (1996)
n ¼ 15, m ¼ 1
Heuristic (F , Tmax) (35.6, 65) (35.7, 57) (35.9, 49)
(36.1, 42) (36.4, 35) (36.7, 28)
(37.2, 23) (37.9, 19) (38.7, 18)
(38.8, 16) (39.8, 15) (39.9, 14)
(41.4, 13) (42.7, 12)
(35.6, 65) (35.7, 57) (35.9,
49) (36.1, 42) (36.4, 35)
(37.2, 23) (37.7, 19) (38.7,
18) (38.8, 16) (40.1, 14)
(42.5, 13) (44.1, 12)
Selen et Hott [17], n ¼ 6,
m ¼ 4, Flow shop
Exact (Cmax, F ) (78, 53) Idem author
Ho et Chang [5], n ¼ 5,
m ¼ 4, Flow shop
Heuristic (Cmax, F ) (213, 156) (213, 156) (234, 155)
Rajendran [15], n ¼ 5,
m ¼ 2, Flow shop
Exact (Cmax, F ) (78, 44, 8) (78, 44.8) (79, 44.2)
Rajendran [16], n ¼ 5,
m ¼ 3, Flow shop
Heuristic (Cmax, F ) (52, 29) (51, 31) (51, 29)
Liao et al. [8]a, n ¼ 6,
m ¼ 2, Flow shop
Exact (Cmax, NT) (29, 1) Idem author
(Cmax, T ) (29, 2) Idem author
Hoogeveen [6], n ¼ 4,
m ¼ 1
Exact (C, Tmax) (12.5, 1) (12.25, 2) (11.75, 3)
(11, 4) (10.25, 8) (10, 13)
Idem author
P0 ¼ 0:5, L ¼ 500, a ¼ 0:975, Nstop ¼ 2500, Tstop ¼ 10–0.4, neighborhood¼ 3, five weight sets.a Liao et al. [8] gave the lower bound for Cmax NT and T , given the partial sequence [1,4] always at the end of the sequences. MOSA
give the same results by scheduling the four remaining tasks and adding tasks 1 and 4 at the end of the solutions obtained; nevertheless,
if we release this constraint, we obtain the following results ð29; 0Þ ð28; 1Þ for ðCmax;NTÞ et (29, 0) (28, 1.33) for ðCmax; T Þ.
10 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
The effect induced is not systematic and de-
pends of the pair of objectives optimized; nev-
ertheless a tendency exists: with tardiness
objectives ðT ;NT; TmaxÞ the number of solutions
decrease in the second case corresponding to
more large and concentrated due dates and theinverse situation seems true when objective E is
considered.
• Table 7 compares the results obtained respec-
tively with jLj ¼ 5 and 25 sets of weights in
the MOSA procedure.
The interpretation of such table is the following:
• a1 is j dE1ðPÞE1ðPÞj obtained with L ¼ 5;
• a2 is j dE2ðPÞE2ðPÞj obtained with L ¼ 25;
• h is the number of common solutions to these
two sets
h ¼ j dE1ðPÞE1ðPÞ\ dE2ðPÞE2ðPÞj;
• b1ðb2Þ is the number of solutions of dE1ðPÞE1ðPÞð dE2ðPÞE2ðPÞÞ efficient in regard with all the gener-
ated solutions i.e.
� �
Table 6
Number of potential efficient solutions for different parameters
Criteria 10 tasks 20 tasks 50 tasks 100 tasks
R ¼ 0:6,
T ¼ 0:6
R ¼ 0:4,
T ¼ 0:3
R ¼ 0:6,
T ¼ 0:6
R ¼ 0:4,
T ¼ 0:3
R ¼ 0:6,
T ¼ 0:6
R ¼ 0:4,
T ¼ 0:3
R ¼ 0:6,
T ¼ 0:6
R ¼ 0:4,
T ¼ 0:3
C, T 33 11 57 32 2 19 4 11
C, E 86 529 150 715 164 560 232 823
C, NT 3 3 4 3 7 2 7 4
C, Tmax 10 4 11 11 33 16 12 13
C, Emax 15 6 22 18 52 40 32 12
T , E 1 5 9 17 25 33 75 64
T , NT 5 1 3 1 7 5 7 1
T , Tmax 8 3 10 2 11 5 9 4
T , Emax 1 1 3 2 9 8 10 11
E, NT 5 5 12 5 20 9 35 24
E, Tmax 1 1 4 2 5 3 13 17
E, Emax 1 2 3 3 6 16 9 5
NT, Tmax 5 3 5 2 10 3 12 9
NT, Emax 2 1 6 1 10 2 7 7
Tmax, Emax 1 1 3 2 2 1 11 14
Total 177 576 302 817 363 723 475 1019
(R ¼ 0:6, T ¼ 0:6) and (R ¼ 0:4, T ¼ 0:3), m ¼ 1, 25 weights, Nstop ¼ 2500, neighborhood¼ 3.
Table 7
Number of potential efficient solutions for different set of weights (5 and 25)
Criteria 10 tasks 20 tasks 50 tasks 100 tasks
a1=b1 h a2=b2 a1=b1 h a2=b2 a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 33/33 33 33/33 50/6 0 57/50 2/1 0 2/2 4/0 0 4/4
C, E 86/86 86 86/86 125/28 0 150/119 135/13 0 164/149 174/45 0 232/183
C, NT 3/3 3 3/3 4/0 0 4/4 5/0 0 7/7 8/1 0 7/6
C, Tmax 10/10 10 10/10 11/2 1 11/11 27/5 0 33/28 13/9 9 12/12
C, Emax 15/15 15 15/15 17/1 1 22/22 34/8 0 52/39 28/12 0 32/24
T , E 1/1 1 1/1 11/0 0 9/9 41/7 0 25/22 61/12 0 75/59
T , NT 5/5 5 5/5 3/0 0 3/3 9/5 0 7/4 6/1 0 7/7
T , Tmax 8/8 8 8/8 6/1 0 10/9 11/2 0 11/10 16/0 0 9/9
T , Emax 1/1 1 1/1 3/3 3 3/3 6/2 0 9/9 10/10 2 10/4
E, NT 5/5 5 5/5 10/2 0 12/9 23/7 0 20/16 27/7 0 35/28
E, Tmax 1/1 1 1/1 7/0 0 4/4 4/0 0 5/5 12/12 12 13/13
E, Emax 1/1 1 1/1 3/3 1 3/1 5/0 0 6/6 6/4 4 9/9
NT, Tmax 5/5 5 5/5 5/2 2 5/5 9/0 0 10/10 12/8 7 12/12
NT, Emax 2/2 2 2/2 7/0 0 6/6 8/0 0 10/10 6/0 0 7/7
Tmax,
Emax
1/1 1 1/1 9/0 0 3/3 7/0 0 2/2 6/0 0 11/11
Total 177/177 177 177/177 271/48 8 302/258 326/50 0 363/319 389/121 34 475/388
m ¼ 1, R ¼ 0:6, T ¼ 0:6, neighborhood¼ 3, Nstop ¼ 2500.
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 11
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
bi ¼ dEiðPÞEiðPÞ\ dE1ðPÞE1ðPÞ
^ dE2ðPÞE2ðPÞ :It appears from this table that the increase of
the number of weight sets does not improve
the results when n ¼ 10 but is wished when
the number of jobs is increased.
• Table 8 does the same for the value of the
stopping criterion Nstop ¼ 2500 or Nstop ¼
Table 8
Number of potential efficient solutions for two values of Nstop (2500 and 5000)
Criteria 10 tasks 20 tasks 50 tasks 100 tasks
a1=b1 h a2=b2 a1=b1 h a2=b2 a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 33/33 33 33/33 57/20 0 71/54 2/0 0 55/55 4/0 0 31/31
C, E 86/86 86 86/86 150/150 150 150/150 164/164 164 164/164 232/232 232 232/232
C, NT 3/3 3 3/3 4/2 1 4/3 7/2 0 13/11 7/3 0 9/7
C, Tmax 10/10 10 10/10 11/6 0 13/8 33/27 13 31/19 12/6 4 20/17
C, Emax 15/15 15 15/15 22/10 1 27/21 52/23 0 45/28 32/6 0 40/37
T , E 1/1 1 1/1 9/8 0 17/2 25/19 7 39/14 75/38 38 61/61
T , NT 5/5 5 5/5 3/1 0 3/3 7/1 0 7/6 7/5 0 17/12
T , Tmax 8/8 8 8/8 10/9 0 12/3 11/10 9 20/19 9/0 0 13/13
T , Emax 1/1 1 1/1 3/0 0 5/5 9/1 0 20/19 10/0 0 10/10
E, NT 5/5 5 5/5 12/12 12 12/12 20/8 1 21/13 35/35 35 35/35
E, Tmax 1/1 1 1/1 4/1 0 4/4 5/0 0 7/7 13/0 0 5/5
E, Emax 1/1 1 1/1 3/0 0 1/1 6/3 0 10/9 9/0 0 16/16
NT, Tmax 5/5 5 5/5 5/0 0 5/5 10/9 3 10/4 12/0 0 17/17
NT, Emax 2/2 2 2/2 6/6 2 7/2 10/6 1 7/5 7/0 0 4/4
Tmax, Emax 1/1 1 1/1 3/0 0 1/1 2/0 0 1/1 11/0 0 1/1
Total 177/177 177 177/177 302/225 166 332/274 363/273 198 450/374 475/325 279 511/498
m ¼ 1, R ¼ 0:6, T ¼ 0:6, neighborhood¼ 3.
Ta
Nu
M
12 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
5000. The interpretation of this table is simi-
lar to the previous one (a1 and b1 correspond
to Nstop ¼ 2500). The increase of Nstop does
not change the results for instances with 10
jobs; but the results are improved with a lar-
ble 9
mber of potential efficient solutions for two different neighborhoods
Criteria 10 tasks 20 tasks
a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 33/33 33 33/33 68/68 66 66/66
C, E 86/86 86 86/86 190/190 134 134/134
C, NT 3/3 3 3/3 4/4 4 4/4
C, Tmax 10/10 10 10/10 19/10 0 19/10
C, Emax 15/15 15 15/15 36/36 0 32/0
T , E 1/1 1 1/1 15/14 0 16/1
T , NT 5/5 5 5/5 4/4 1 5/2
T , Tmax 8/8 8 8/8 10/7 1 43/4
T , Emax 1/1 1 1/1 4/1 1 3/3
E, NT 5/5 5 5/5 12/8 1 12/4
E, Tmax 1/1 1 1/1 3/0 0 2/2
E, Emax 1/1 1 1/1 2/1 0 3/1
NT, Tmax 5/5 5 5/5 5/3 3 5/5
NT, Emax 2/2 2 2/2 6/6 2 6/2
Tmax, Emax 1/1 1 1/1 1/1 1 1/1
Total 177/177 177 177/177 379/353 214 321/239
¼ 1, R ¼ 0:6, T ¼ 0:6, 25 weights, Nstop ¼ 2500.
ger value of Nstop when the number of jobs in-
crease.
• Tables 9–11 compare the use of the three
neighborhoods described in Section 2.3,
respectively for ð1; 2Þ, ð1; 3Þ and ð2; 3Þ.
(2, 1)
50 tasks 100 tasks
a1=b1 h a2=b2 a1=b1 h a2=b2
11/0 0 11/11 6/6 0 8/2
188/188 0 134/0 271/271 0 209/0
7/6 0 8/1 7/6 0 8/1
19/15 0 25/15 30/21 0 27/12
53/53 0 49/1 60/60 0 47/0
35/35 0 27/0 94/94 0 49/0
7/5 0 6/2 5/4 0 8/4
14/14 0 29/10 22/22 0 19/15
17/17 0 13/0 14/14 0 12/0
26/23 0 25/4 33/28 0 26/8
5/0 0 2/12 6/5 0 10/10
5/5 0 5/0 30/30 0 19/1
8/8 0 10/0 14/8 0 12/10
3/3 0 6/0 1/1 0 4/0
2/2 0 4/0 4/0 0 1/1
400/375 0 454/56 475/567 0 459/66
Table 10
Number of potential efficient solutions for two different neighborhoods (3, 1), m ¼ 1
Criteria 10 tasks 20 tasks 50 tasks 100 tasks
a1=b1 h a2=b2 a1=b1 h a2=b2 a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 33/33 33 33/33 57/13 0 66/50 2/2 0 11/5 4/4 0 8/0
C, E 86/86 86 86/86 150/91 0 134/49 164/162 0 134/5 232/231 0 209/5
C, NT 3/3 3 3/3 4/1 1 4/ 4 7/7 0 8/1 7/5 0 8/2
C, Tmax 10/10 10 10/10 11/0 0 19/19 33/29 0 25/2 12/2 0 27/21
C, Emax 15/15 15 15/15 22/5 0 32/26 52/47 0 49/7 32/31 0 47/15
T , E 1/1 1 1/1 9/9 0 16/0 25/25 0 27/1 75/62 0 49/6
T , NT 5/5 5 5/5 3/0 0 5/5 7/4 0 6/3 7/1 0 8/7
T , Tmax 8/8 8 8/8 10/0 0 13/13 11/10 0 29/9 9/0 0 19/19
T , Emax 1/1 1 1/1 3/0 0 3/3 9/8 0 13/1 10/1 0 12/12
E, NT 5/5 5 5/5 12/5 0 12/6 20/18 0 25/3 35/30 0 26/4
E, Tmax 1/1 1 1/1 4/0 0 2/2 5/0 0 2/2 13/0 0 10/10
E, Emax 1/1 1 1/1 3/0 0 3/3 6/6 0 5/0 9/2 0 19/19
NT, Tmax 5/5 5 5/5 5/0 0 5/5 10/9 0 10/1 12/2 0 12/12
NT, Emax 2/2 2 2/2 6/5 3 6/4 10/10 0 6/0 7/4 0 4/2
Tmax, Emax 1/1 1 1/1 3/0 0 1/1 2/2 0 4/0 11/0 0 1/1
Total 177/177 177 177/177 302/129 4 321/190 363/339 0 454/40 475/375 0 459/135
R ¼ 0:6, T ¼ 0:6, 25 weights, Nstop ¼ 2500.
Table 11
Number potential efficient solutions for two different neighborhoods (3, 2)
Criteria 10 tasks 20 tasks 50 tasks 100 tasks
a1=b1 h a2=b2 a1=b1 h a2=b2 a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 33/33 33 33/33 57/15 0 68/54 2/2 0 11/0 4/4 0 6/0
C, E 86/86 86 86/86 150/23 0 190/162 164/20 0 188/166 232/0 0 271/271
C, NT 3/3 3 3/3 4/1 1 4/ 4 7/4 0 7/4 7/1 0 7/6
C, Tmax 10/10 10 10/10 11/0 0 19/19 33/21 0 19/11 12/0 0 30/30
C, Emax 15/15 15 15/15 22/0 0 36/36 52/1 0 53/51 32/0 0 60/60
T , E 1/1 1 1/1 9/9 0 15/3 25/0 0 35/35 75/0 0 94/94
T , NT 5/5 5 5/5 3/0 0 4/4 7/2 0 7/5 7/0 0 5/5
T , Tmax 8/8 8 8/8 10/0 0 10/10 11/7 0 14/9 9/0 0 22/22
T , Emax 1/1 1 1/1 3/0 0 4/4 9/0 0 17/17 10/0 0 14/14
E, NT 5/5 5 5/5 12/6 1 12/7 20/3 0 26/24 35/14 0 33/24
E, Tmax 1/1 1 1/1 4/0 0 3/3 5/5 0 5/0 13/0 0 6/6
E, Emax 1/1 1 1/1 3/0 0 2/2 6/5 0 5/2 9/0 0 30/30
NT, Tmax 5/5 5 5/5 5/0 0 5/5 10/2 1 8/7 12/0 0 14/14
NT, Emax 2/2 2 2/2 6/1 1 6/6 10/0 0 3/3 7/0 0 1/1
Tmax, Emax 1/1 1 1/1 3/0 0 1/1 2/1 1 2/ 2 11/0 0 4/4
Total 177/177 177 177/177 302/55 3 379/320 363/73 2 400/336 475/19 0 597/581
m ¼ 1, R ¼ 0:6, T ¼ 0:6, 25 weights, Nstop ¼ 2500.
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 13
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
The interpretation of these tables is similar tothe two previous ones.
It appears that often-specially when the
dimensions of the instance increase––the
neighborhood 2 gives the best results andneighborhood 1 the worse.
(b) The number of potential efficient solutions and
the CPU time have been analyzed for each pair
of objectives.
100
150
200
250
T max
14 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
Tables 12 and 13 give the mean and the maxi-mal value among three randomly generated in-
stances with 50 jobs. These experiments are
realized with the following values:
jLj ¼ 5; Nstop ¼ 2500; neighborhood 3;
R ¼ 0:6; T ¼ 0:6:
Table 12
Problems 50/1/ /C1, C2 sorted according to mean decreasing
CPU
Comb. CPU (seconds)
Mean Maximum
E, NT 36.00 38
C, Emax 34.67 41
C, E 33.00 33
NT, Emax 32.67 37
C, Tmax 29.33 32
T , E 27.00 27
NT, Tmax 26.67 41
T , NT 26.00 34
T , Emax 23.67 35
T , Tmax 20.67 26
E, Tmax 16.00 18
E, Emax 16.00 31
C, NT 14.00 19
Tmax, Emax 13.00 22
C, T 0.67 1
Five weights sets, neighborhood¼ 3, Nstop ¼ 2500, R ¼ 0:6,
T ¼ 0:6.
Table 13
Problems 50/1/ /C1, C2 sorted according to mean decreasing
=PE=
Comb. =PE=
Mean Maximum
C, E 123.00 135
T , E 41.67 46
C, Emax 33.00 36
C, Tmax 24.67 27
E, NT 22.00 23
T , Tmax 12.33 19
NT, Tmax 12.33 18
E, Emax 10.67 20
T , NT 10.33 16
E, Tmax 9.67 13
C, NT 7.00 8
Tmax, Emax 6.00 7
T , Emax 5.33 6
NT, Emax 5.00 8
C, T 2.33 4
Five weights sets, neighborhood¼ 3, Nstop ¼ 2500, R ¼ 0:6,
T ¼ 0:6.
0
50
96 98 100 102 104 106 108Cmoyen
Fig. 2. Efficient frontier.
There is a clear tendency to have a larger
number of solutions with objective E, speciallywhen the other objective is C.
For each instance we can of course visualize
graphically the results in the objective space. Fig. 2
represents the 25 potential non-dominated points
Table 14
Problems 50/P 10/ /C1, C2 sorted according to mean decreasing
CPU
Criteria CPU
Mean Maximum
Cmax, E 49.00 53
E, Tmax 48.67 53
E, NT 47.00 51
C, E 36.33 38
T , E 27.00 31
Tmax, Emax 21.00 28
C, Emax 20.67 36
T , Emax 20.67 28
NT, Emax 19.00 23
Cmax, Emax 16.67 32
E, Emax 9.33 14
C, NT 2.67 8
C, T 0.67 1
C, Tmax 0.33 1
NT, Tmax 0.33 1
Cmax, C 0.33 1
T , NT <1 <1
T , Tmax <1 <1
Cmax, T <1 <1
Cmax, NT <1 <1
Cmax, Tmax <1 <1
m ¼ 10, five weights by criterion, neighborhood¼ 3,
Nstop ¼ 2500, R ¼ 0:6, T ¼ 0:6.
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 15
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
in the space ðC; TmaxÞ for one instance with 50 jobs.In this way we can have an image of the efficient
frontier.
4.4.2. Parallel machines
Instances with 20 or 50 jobs, 3 or 10 machines
have been randomly generated with the method
described in Section 4.1; all the 21 pairs of objec-
tives have been considered.
(a) Tables 14 and 15 give respectively the mean
and maximal CPU times, the mean and maxi-
mal cardinality of dEðPÞEðPÞ among three randomly
generated instances with 50 jobs and 10 ma-
chines. These experiments are realized with
the following values for parameters:
jLj ¼ 5; Nstop ¼ 2500; neighborhood 3;
R ¼ 0:6; T ¼ 0:6:
It appears that the cardinality of dEðPÞEðPÞ is large
only when one of the objectives is E (or Emax) i.e.
Table 15
Problems 50/P 10/ /C1, C2 sorted according to mean decreasing
=PE=
Criteria =PE=
Moy Maximum
C, E 404.67 452
T , E 62.33 75
E, NT 37.33 43
Cmax, E 35.67 41
E, Tmax 23.67 29
C, Emax 16.33 18
Cmax, Emax 12.00 13
NT, Emax 11.67 13
Tmax, Emax 10.67 11
T , Emax 8.67 11
Cmax, C 2.00 2
Cmax, T 1.67 2
Cmax, NT 1.67 2
C, T 1.33 2
C, NT 1.33 2
C, Tmax 1.33 2
T , Tmax 1.33 2
Cmax, Tmax 1.33 2
T , NT 1.00 1
E, Emax 1.00 1
NT, Tmax 1.00 1
m ¼ 10, five weights by criterion, neighborhood¼ 3,
Nstop ¼ 2500, R ¼ 0:6, T ¼ 0:6.
when two more contradictory objectives are con-sidered.
As for the case of one machine, the pair ðE;CÞgenerates really more solutions.
Otherwise, very few solutions are obtained.
Consequently, the CPU time is quite different
according the objectives adopted.
(b) Tables 16 and 17 analyze the impact of param-
eters jLj (¼ 5 or 25) and N stop (¼ 2500 or5000) for problems with three machines, 20
and 50 jobs respectively.
Clearly the impact of the increase of jLj is
important: not on the number of solutions, but on
the quality of the approximation of the efficient
frontier.
Nevertheless, this is not the case for Nstop.
4.4.3. Permutation flowshop
Similar experiments are made for permutation
flow shop models.
Tables 18–21 give the corresponding results and
the comments are exactly the same that for the
case of parallel machines.
5. Conclusions and further research directions
(1) Metaheuristics can be adapted to a multi-
objective framework [3]. In particular, MOSA
method appears as an appropriate tool to analyze
MOCO problems.
In case of multi-objective scheduling models,the main advantage of this method is to be able, by
a unique procedure, to solve a broad class of
models, with various objectives, even for relatively
large instances and any number of objectives.
The numerical results of Section 4 prove the
efficiency of the MOSA method. Yet, an important
parameter is the number jLj of weight vectors to be
used; it must be large enough to cover all theefficient frontier and must be fixed experimentally
as a function of the dimensions of the instance.
(2) We think it is possible to extend the class of
scheduling problems treated by the method, for
instance to general flow shops. Effectively, in this
case we can represent a schedule (i.e. a permuta-
tion of the n jobs for each of the m machines) by a
Table 16
Number potential efficient solutions for Nstop and weights
Criteria 20 tasks, Nstop ¼ 2500, 5 weights/25 weights 20 tasks, Nstop ¼ 5000, 5 weights/25 weights
a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 4/2 0 3/3 1/1 0 2/1
C, E 54/13 0 78/61 54/13 0 78/61
C, NT 3/3 3 3/3 3/0 0 2/2
C, Tmax 6/2 0 9/8 7/2 0 7/7
C, Emax 19/4 0 19/16 19/4 0 19/16
T , E 14/7 0 31/16 14/7 0 31/16
T , NT 1/1 1 1/1 1/1 1 1/1
T , Tmax 5/1 1 4/ 4 1/1 1 1/ 4
T , Emax 9/4 1 11/6 9/4 1 11/6
E, NT 14/3 0 14/11 14/3 0 14/11
E, Tmax 10/0 0 9/9 10/0 0 9/9
E, Emax 1/1 1 1/1 1/1 1 1/1
NT, Tmax 3/0 0 1/1 1/1 1 1/1
NT, Emax 8/8 8 8/8 8/1 1 6/6
Tmax, Emax 5/5 5 5/5 5/3 3 4/ 4
Cmax, C 1/1 1 1/1 1/0 0 1/1
Cmax, T 3/0 0 3/3 2/0 0 2/2
Cmax, E 12/2 1 14/12 12/4 0 14/4
Cmax, NT 3/0 0 2/2 1/1 1 1/1
Cmax, Tmax 3/0 0 1/1 2/0 0 2/2
Cmax, Emax 9/1 1 9/9 8/2 1 9/8
Total 187/58 23 227/181 174/49 11 216/164
Three parallel machines; neighborhood¼ 3.
Table 17
Number of potential efficient solutions for Nstop and weights
Criteria 50 tasks, Nstop ¼ 2500, 5 weights/25 weights 50 tasks, Nstop ¼ 5000, 5 weights/25 weights
a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 1/1 1 1/1 1/1 1 1/1
C, E 999/863 705 999/986 999/863 705 999/986
C, NT 1/1 1 1/1 1/1 1 1/1
C, Tmax 1/1 1 1/1 1/1 1 1/1
C, Emax 27/7 6 35/34 27/12 7 31/25
T , E 63/8 4 64/60 63/8 4 64/60
T , NT 1/1 1 1/1 1/1 1 1/1
T , Tmax 1/1 1 1/1 1/1 1 1/1
T , Emax 13/1 0 14/13 15/1 1 13/13
E, NT 35/13 0 36/21 35/13 0 36/21
E, Tmax 44/25 0 43/25 44/16 0 44/36
E, Emax 1/0 0 1/1 1/1 1 1/1
NT, Tmax 1/1 1 1/1 1/1 1 1/1
NT, Emax 14/2 2 7/7 14/2 2 7/7
Tmax, Emax 15/10 10 15/15 15/10 10 15/15
Cmax, C 1/1 1 1/1 1/1 1 1/1
Cmax, T 1/1 1 1/1 1/1 1 1/1
Cmax, E 74/34 25 80/73 74/34 25 80/73
Cmax, NT 1/1 1 1/1 1/1 1 1/1
Cmax, Tmax 1/1 1 1/1 1/1 1 1/1
Cmax, Emax 22/4 4 28/18 23/4 4 28/18
Total 1317/977 766 1332/1263 1320/974 769 1328/1265
Three parallel machines; neighborhood¼ 3.
16 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
Table 18
Problems 50/PF/ /C1, C2 sorted according to mean decreasing
CPU
Criteria CPU (in seconds)
Mean Maximum
Cmax, E 176.33 179
NT, Emax 169.67 189
E, Tmax 156.67 181
E, NT 150.33 159
Tmax, Emax 141.00 182
NT, Tmax 135.00 149
C, Emax 123.00 198
C, E 122.00 129
Cmax, Emax 122.00 156
T , Emax 116.67 138
T , NT 115.67 142
C, Tmax 108.00 141
T , E 106.00 111
Cmax, NT 104.00 131
Cmax, Tmax 98.67 159
Cmax, C 91.00 170
T , Tmax 85.67 141
C, NT 75.00 99
Cmax, T 58.67 74
E, Emax 37.00 97
C, T 3.00 4
m ¼ 10, five weights by criterion, neighborhood¼ 3,
Nstop ¼ 2500, R ¼ 0:6, T ¼ 0:6.
Table 19
Problems 50/PF/ /C1, C2 sorted according to mean decreas-
ing=PE=
Criteria =PE=
Mean Maximum
C, E 28.33 32
C, Emax 19.00 29
NT, Tmax 15.67 18
Cmax, T 13.33 15
T , Tmax 13.00 16
E, NT 12.33 13
T , NT 11.67 16
NT, Emax 11.67 15
C, Tmax 10.33 19
T , Emax 10.33 14
Cmax, C 9.67 13
Tmax, Emax 9.33 12
Cmax, Tmax 9.00 11
Cmax, Emax 8.67 19
T , E 8.00 15
Cmax, E 7.67 14
C, NT 7.33 9
Cmax, NT 6.67 9
E, Emax 6.33 16
E, Tmax 3.67 5
C, T 2.00 4
m ¼ 10, five weights by criterion, neighborhood¼ 3,
Nstop ¼ 2500, R ¼ 0:6, T ¼ 0:6.
Table 20
Number of potential efficient solutions for different Nstop and weights
Criteria 20 tasks, Nstop ¼ 2500, 5 weights/25 weights 20 tasks, Nstop ¼ 5000, 5 weights/25 weights
a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 4/0 0 4/4 3/1 1 7/7
C;E 19/2 0 34/33 28/1 0 28/28
C, NT 6/0 0 4/4 5/3 0 4/2
C, Tmax 12/3 0 16/6 15/0 0 14/4
C, Emax 10/9 9 13/13 9/0 0 10/10
T , E 16/2 0 10/8 9/1 0 13/12
T , NT 5/1 0 5/ 4 6/3 0 4/3
T , Tmax 6/5 5 7/7 6/0 0 13/13
T , Emax 2/2 2 2/2 2/1 1 2/ 2
E, NT 11/0 0 10/10 11/0 0 10/10
E, Tmax 4/4 4 4/4 4/3 3 4/ 4
E, Emax 1/1 1 1/1 1/1 1 1/1
NT, Tmax 7/7 7 7/7 6/4 2 6/5
NT, Emax 8/8 8 8/8 7/3 2 6/5
Tmax, Emax 3/3 1 1/1 2/0 0 3/3
Cmax;C 4/2 0 5/2 4/2 0 3/0
Cmax; T 4/3 0 4/3 3/0 0 1/1
Cmax;E 3/2 0 3/1 8/0 0 4/4
Cmax, NT 3/2 2 3/3 2/1 1 2/2
Cmax, Tmax 7/2 2 4/4 5/1 1 4/ 4
Cmax, Emax 3/1 1 2/2 2/2 2 2/2
Total 138/59 42 147/127 138/27 14 141/22
Three machines in series; neighborhood¼ 3.
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 17
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
Table 21
Number of potential efficient solutions for different Nstop and weights
Criteria 50 tasks, Nstop ¼ 2500, 5 weights/25 weights 50 tasks, Nstop ¼ 5000, 5 weights/25 weights
a1=b1 h a2=b2 a1=b1 h a2=b2
C, T 4/0 0 3/3 8/4 4 32/32
C, E 68/19 0 85/63 68/19 0 85/63
C, NT 9/0 0 7/7 12/3 0 10/9
C, Tmax 22/0 0 24/24 30/8 0 27/25
C, Emax 26/9 0 40/29 30/3 0 32/30
T , E 25/0 0 23/23 25/0 0 23/23
T , NT 12/2 0 9/8 12/8 0 6/4
T , Tmax 24/13 0 22/14 28/7 0 26/21
T , Emax 10/3 0 7/6 9/3 0 7/5
E, NT 24/7 0 22/16 24/3 0 23/20
E, Tmax 7/3 0 19/16 10/6 1 15/9
E, Emax 6/0 0 7/7 6/0 0 16/16
NT; Tmax 11/1 0 15/14 11/2 1 13/13
NT; Emax 6/3 0 5/5 6/0 0 6/6
Tmax, Emax 4/1 1 3/3 3/1 1 3/3
Cmax, C 4/4 0 2/0 10/0 0 3/3
Cmax, T 5/0 0 1/1 4/0 0 3/3
Cmax, E 12/3 3 9/9 10/4 3 9/9
Cmax, NT 5/0 0 1/1 2/0 0 1/1
Cmax, Tmax 7/3 2 4/ 4 5/3 3 5/5
Cmax, Emax 4/3 3 5/5 4/3 3 5/5
Total 295/74 9 313/258 317/77 16 350/305
Three machines in series; neighborhood¼ 3.
18 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
sequence of nm characters (i.e. m times each index iof a job).
To identify the schedule, we first obtain the
permutation of jobs on machine 1, taking the nindexes of the different jobs appearing first time in
the sequence; then the permutation of jobs on
machine 2 will be given by the order of the n in-
dexes of the different jobs appearing the second
time in the sequence; and so on. With such rep-resentation, the neighborhoods defined in Section
2.3 can be used.
Let us illustrate this idea for a problem with five
jobs and three machines: the sequence
1 2 3 1 4 3 5 2 5 3 1 4 5 2 4
will correspond to the three permutations
ð 1 2 3 4 5 Þ; ð 1 3 2 5 4 Þ;ð 3 1 5 2 4 Þ;
respectively for the m machines.
Of course the length of the sequence can bereduced to nðm� 1Þ characters i only if regular
objectives are considered: effectively, with such
objectives, the permutations on the two first ma-
chines are identical (see [4]).
Similar representation is still valid for job shop
models.
Such idea has not yet been tested and is one
direction of future research.(3) Recently we designed for a MOCO problem
[11], a new method called multi-objective tabu
search (MOTAS) exploiting the same idea as
MOSA but this time with a tabu search scheme
([14]).
The main differences are that
• due to too large neighborhoods, a sub-neighbor-hood must be defined: a simple way is for
instance to sample some solutions in neighbor-
hoods as those of Section 2.3;
T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx 19
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
• at each iteration, an optimization is made inside
a sub-neighborhood of the current iterate, to de-
fine the ‘‘best neighbor solution’’. To do this, a
weighting function must be used so that, as in
MOSA, a diversified set of weight vectors is re-
quired to search potential efficient solutions in
all the directions;
• as usual, a tabu list must be considered to avoidcycling.
Implementation of MOTAS appears more dif-
ficult due to some parameters being difficult to fix
as function of the dimension of the sub-neigh-
borhood and the length of the tabu list. Different
ways to define the ‘‘best solution’’ in the sub-
neighborhood are also possible.After a more detailed design of the MOTAS
procedure, we intend to test this approach
numerically and to compare it with MOSA on
different kinds of MOCO problems, among them
multi-objective scheduling problems.
(4) In any case, for practical problems, it is
not required to generate a large number of po-
tential efficient solutions; it is better to use aninteractive approach (see (e) in Section 1) to
build a good compromise in accordance to the
preferences of the decision maker. In this spirit,
an interactive version of MOSA has been de-
signed ([20]). The present paper proves that it can
produce solutions of high quality for real case
studies.
References
[1] C.L. Chen, R.L. Bulfin, Complexity of a single machine
multi-criteria scheduling problems, European Journal of
Operational Research 70 (1993) 115–125.
[2] H.A.J. Crauwels, C.N. Potts, L.N. Van Wassenhove, Local
search heuristics for the single machine total weighted
tardiness scheduling problems, INFORMS, Journal on
Computing 10 (1998) 341–350.
[3] M. Ehrgott, X. Gandibleux, A survey and annotated
bibliography of multiobjective combinatorial optimization,
OR Spektrum 22 (2000) 425–460.
[4] S. French, Sequencing and Scheduling: An Introduction
to the Mathematics of Job Shop, John Wiley & Sons,
1982.
[5] J.C. Ho, Y.L. Chang, A new heuristic for n-job, m-shop
problem, European Journal of Operations Research 52
(1991) 194–202.
[6] H. Hoogeveen, Single machine bicriteria scheduling. Ph.D.
dissertation, University of Eindhoven, 1992.
[7] M.M. Koksalan, M. Azizoglu, S.K. Kondakci, Heuristics
to minimize flowtime and maximum tardiness on a single
machine, CMME Working paper series 9, Krannert School
of Management, Perdue University, 1996.
[8] Ch.J. Liao, W.C. Yu, C.B. Joe, Bicriteria scheduling in the
two machines flow shop, Journal of Operational Research
Society 48 (1997) 929–935.
[9] T. Loukil, J. Teghem, Multicriteria scheduling problems. A
survey. Submitted for publication.
[10] T. Loukil, Ordonnancement de production multicrit�eere.
Ph.D. thesis, Facult�ee des Sciences Economiques, Universit�eede Sfax, Tunisie, 2000.
[11] T. Loukil, J. Teghem, Ph. Fortemps, Solving multi-
objective production scheduling problems with tabu-
search, Control and Cybernetics 29 (3) (2000).
[12] R.T. Nelson, R.K. Sarin, R.L. Daniels, Scheduling with
multiple performances measures: The one machine case,
Management Science 2 (1986) 464–479.
[13] V.R. Neppalli, Ch.L. Chen, J.N.D. Gupta, Genetic algo-
rithms for the two-stage bicriteria flow shop problem,
European Journal of Operational Research 95 (1996) 356–
373.
[14] M. Pirlot, J. Teghem, Optimisation approch�eee en Recher-
che Op�eerationnelle: Recherches locales, r�eeseaux neuronaux
et satisfaction de contraintes, Collection IC2, Herm�ees,2002.
[15] Ch. Rajendran, Two stage owshop scheduling problem
with bicriteria, Journal of Operational Research Society 43
(9) (1992) 871–884.
[16] Ch. Rajendran, Heuristics for scheduling in a flow shop
with multiple objectives, European Journal of Operational
Research 82 (1995) 540–555.
[17] W.J. Selen, D. Hott, A mixed integer goal programming
formulation of the standard flow shop scheduling problem,
Journal of Operational Research Society 37 (12) (1986)
1121–1126.
[18] J.G. Shanthikumar, Scheduling n jobs on one machine to
minimize the maximum tardiness with minimum number
tardy jobs, Computers and Operations Research 10 (3)
(1983) 255–266.
[19] E. Taillard, Benchmarks for basic scheduling problems,
European Journal of Operational Research 64 (1995) 278–
285.
[20] J. Teghem, D. Tuyttens, E.L. Ulungu, An interactive
heuristic method for multiobjective combinatorial optimi-
zation, Computers and Operations Research 27 (2000)
621–634.
[21] Van Wassenhove, L.F. Gelders, Solving a bicriterion
scheduling problem, European Journal of Operational
Research 4 (1980) 42–48.
20 T. Loukil et al. / European Journal of Operational Research xxx (2003) xxx–xxx
EOR 5871 No. of Pages 20, DTD = 4.3.1
26 November 2003 Disk usedARTICLE IN PRESS
[22] E.L. Ulungu, J. Teghem, Fortemps, Heuristic for multi-
objective combinatorial optimization problems by simu-
lated annealing, in: J. Gu, G. Chen, Q. Wei, S. Wang
(Eds.), MCDM: Theory and Applications, Sci-Tech, 1995,
pp. 229–238.
[23] E.L. Ulungu, J. Teghem, Ph. Fortemps, D. Tuyttens,
MOSA method: A tool for solving MOCO problems,
Journal of Multi-Criteria Decision Analysis 8 (1999) 221–
236.