Date post: | 22-Nov-2023 |
Category: |
Documents |
Upload: | independent |
View: | 0 times |
Download: | 0 times |
1
A new heuristic for the flowshop scheduling
problem to minimise makespan and maximum
tardiness
(IJPR 40407 – Second revision)
Abstract − In this paper a new heuristic for solving the flowshop scheduling problem
which aims to minimising makespan and maximum tardiness is presented. The
algorithm is then able to take into account the aforementioned performance measures,
finding a set of non-dominated solutions representing the Pareto front. This method is
based on the integration of two different techniques: a multi criteria decision making
method and a constructive heuristic procedure developed for makespan minimisation in
flowshop scheduling problems. In particular, the Technique for Order Preference by
Similarity of Ideal Solution (TOPSIS) algorithm is integrated with the Nawaz-Enscore-
Ham (NEH) heuristic to generate a set of potential scheduling solutions. To assess the
proposed heuristic’s performance a comparison with the best performing Multi
Objective Genetic Local Search (MOGLS) algorithm proposed in literature is carried
out. The test is executed on a large number of random problems characterized by
different numbers of machines and jobs. The results show that the new heuristic
frequently exceeds the MOGLS results in terms of both non-dominated solutions set
quality and CPU time. In particular, the improvement becomes more and more
significant as the number of jobs in the problem increases.
Keywords: flowshop scheduling, makespan, maximum tardiness, TOPSIS, NEH,
heuristic.
2
1. Introduction
Sequencing problems represent an important and critical topic in the field of
production planning. In fact, an inefficient management of the internal flow of items has
a significant influence on the performance of a production system. For this reason, the
scheduling problem has been an active area of research for over forty years.
In particular, flowshop scheduling represents one of the most important problems in
the area of scheduling. This kind of production system consists of M machines in series,
and n different jobs where each job must be processed by the M machines in the same
order (Baker 1974). The flowshop problem has been proved to be NP-complete
(Rinnooy Kan 1967), and therefore the optimal solution cannot be found in an
acceptable computational time. Hence, many heuristics have been proposed in the past
literature to provide a good and quick solution. Some of the best known heuristics,
which mainly minimize the makespan criterion, include Palmer (1965), Campbell et al.
(1970), Gupta (1971), Dannenbring (1977), and Nawaz et al. (1983).
The most important part of the literature concerning (flowshop) scheduling
problems is dedicated to single criterion optimization but, in practice, the use of
multiple criteria often enables one to compute more realistic solutions for a decision
maker working in the production planning area. For example, apart from the makespan
objective, an analyst could be interested in other significant performance criteria such as
the minimization of total flow-time, total idle-time, number of tardy jobs, maximum
tardiness, etc. For this reason several researches have recently tackled multi objective
flowshop scheduling problems, and a good survey of multi criteria scheduling problems
can be found in T’Kindt and Billaut (2001).
3
Basically, two different approaches have generally been proposed. The first aims to
find a single potential solution representing a good compromise among the different
criteria considered. Among the most important of them we can mention Ho and Chang
(1991), Rajendran (1994, 1995), Cavalieri and Gaiardelli (1998), Gupta et al. (1999),
Chakravarthy and Rajendran (1999), Lee et al. (2000), Gupta et al. (2002), Allahverdi
(2004).
The second type of approach tackles the multi-objective optimization problem in a
more wide and complex way. The basic concept is that a generic multi-objective
optimization problem is not characterized by a unique “dominant solution”, i.e. a
solution that is better than the others with respect to every performance criteria
considered. The goal is now the calculation of the set of non-dominated solutions, i.e.
those characterized by the fact that no better solution exists when all the criteria are
considered. This set of solutions is generally described as the “Pareto front”. An
algorithm working in this way aims to find the most complete set of solutions belonging
to the Pareto front, allowing the decision maker to make his final (unique) choice by
analyzing a limited group of potential good solutions.
Most of the applications in this field are represented by evolutionary techniques,
such as Multi Objective Genetic Algorithms (MOGAs) (Bagchi 1999) and Simulated
Annealing (SA) based algorithms. Schaffer (1985) proposes one of the first extensions
of a simple GA to accommodate vector-valued fitness measures, which he called the
Vector Evaluated Genetic Algorithm (VEGA). Tagami and Kawabe (1998) propose a
Pareto partitioning method which prevents the partial convergence of non-dominated
solutions which affects VEGA performance. Murata et al. (1996), and Ishibuchi and
Murata (1998) propose a hybrid algorithm where a local search procedure is applied to
each solution (i.e., to each “individual” of the GA population). In the selection
procedure, their Multi Objective Genetic Local Search (MOGLS) algorithm uses a
4
weighted sum of multiple objective functions to combine them into a scalar fitness
function. The weights attached to the multiple objective function are not constant but
randomly specified for each selection. Therefore, the direction of the search is not
constant. In this way, the heuristic is able to better spread the solution space finding the
most representative set of non-dominated solutions. The authors demonstrate that their
MOGLS can find better solutions than the VEGA by Schaffer (1985). In Ishibuchi et al.
(2003) the authors improved their MOGLS by introducing a new local search
procedure. In Zhao et al. (2001), a partial enumeration selection method (PESM) is
adopted to maintain the diversity of the population in a GA for solving a multi-objective
flowshop problem considering makespan, mean tardiness and mean flow-time. The
most important application of SA for the multi-objective flowshop scheduling is found
in Varadharajan and Rajendran (2005), who propose a heuristic able to take into account
the makespan and total flowtime performance measures. The authors integrate two well
known heuristics with an evolutionary SA procedure to produce a set of non-dominated
solutions, and prove that their algorithm is able to overcome different types of MOGAs
with respect to the minimisation of makespan and total flowtime.
In this paper, the minimization of makespan and maximum tardiness in flow shop
systems is addressed. A Multi Objective Geometric Incremental (MOGI) algorithm,
inherent in the second of the above mentioned classes, is here proposed to find a set of
solutions near the Pareto front. The heuristic integrates two different techniques: a multi
criteria decision making method and a well-known constructive heuristic procedure
developed for makespan minimization in flowshop scheduling problems. In particular,
the “Technique for Order Preference by Similarity of Ideal Solution” (TOPSIS) (Hwang
and Yoon 1981) is integrated with the Nawaz-Henscore-Ham (NEH) constructive
heuristic (Nawaz et al. 1983) to generate a set of potential scheduling solutions. Briefly,
the constructive approach of the NEH heuristic is adopted to generate a potential good
5
final solution. At each step of the NEH procedure, the required choice among
alternative partial solutions is carried out by solving a multi attribute decision making
problem adopting the TOPSIS method.
2. The MOGI algorithm
2.1. Framework
As reported above, the MOGI addresses makespan and maximum tardiness
minimisation in flowshop scheduling problems, finding a set of non-dominated
solutions near the Pareto front. With respect to the classification presented in Evans
(1984) the MOGI belongs to the so-called a posteriori algorithms, since it aims to
identify the strict Pareto front and leaves it to the decision maker to choose the strict
Pareto optimum he prefers. Moreover, the algorithm construction has been led by the
necessity to focus studies on the integration between scheduling researches and the
results relating to the multi criteria optimization literature, as stated in the broad
analysis proposed by T’Kindt and Billaut (2001).
The MOGI behaviour is characterized by two main aspects: the first is the
generation of the alternative sequences to be evaluated and generated at each step
following the rules proposed by the NEH procedure (Appendix A); the second regards
the evaluation process itself, carried out by the application of the TOPSIS approach
(Appendix B) in order to introduce the capability to take into account both of the two
criteria at the same time.
The Pareto front is obtained by repeated execution of the algorithm for a given
number of times. Each execution is characterized by a different set of weights for the
performance criteria being considered. In particular, the analyst can impose a range of
variation for each weight and the number of executions that must be run. As shown in
Figure 1, this kind of behaviour based on the varying weights concept allows the
decision maker to control both the number of searches and the slice of solution space
involved.
[ TAKE IN FIGURE 1 ]
This can be done by defining the weights vector w in the following manner:
( ) ( ) ( )( )λλ −⋅−+⋅−+= 1,maxmaxmaxmaxmaxmax TTTCCC abaabaw , (1)
where and [ are the weight ranges set by the decision maker for
the C
[ ]maxmax
, CC ba ]maxmax
, TT ba
max and Tmax measures respectively, and λ is the multiplying parameters which can
vary in the range . [ ]1,0
If λ assumes values in the entire interval, the search is spread over the whole solution
space (Figure 1-a). Contrastly, the search will be focused in a particular slice of the
solution space, as reported in Figures 1-b, 1-c, and 1-d. Hence, the decision maker is
able to set the multiplying parameter range, to satisfy his requirements in terms of
search space definition, as follows:
(2) [ ] ,10 with,, ≤<≤∈ βαβαλ
where α and β represent the lower and upper bound of the multiplying parameter.
Once the variation interval and the number of search processes to be run have been
defined, the increment value for the multiplying parameter can be calculated as follows:
rαβλ −
=Δ , (3)
where r is the number of searches.
At each execution, the value λΔ will be added to the parameter λ .
The MOGI’s behaviour can be described by the following steps:
6
Step 1) set the range of variation [ ] and maxmax
, CC ba [ ]maxmax
, TT ba for the weight of the
makespan and maximum tardiness measures, and the range of variation
for the multiplying parameter
[ ]βα ,
λ . Set the number of executions r and calculate
the increment λΔ . Define the solutions set { }∅=S . Assign 1=k ;
Step 2) if , set 1=k αλ = . Otherwise add λΔ to λ . Calculate the weights vector w;
Step 3) generate the initial sequence by ordering the jobs with respect to the rule
reported in Paragraph 2.2;
Step 4) take the first two jobs and schedule them following the result of TOPSIS
application in order to solve the multi criteria decision problem as if there
were only these two jobs (i.e., the two partial sequences composed of only the
first two jobs are considered as potential alternatives in the multi criteria
decision problem);
Step 5) for up to the number of jobs n, insert the z-th job in the previous partial
sequence in all the possible z places, and generate the corresponding new
partial z sequences. Evaluate the best alternative by TOPSIS. Select the best
alternative as the new partial sequence for the next insertion;
3=z
Step 6) if , add the final sequence obtained at Step 5 in S. Otherwise, compare
the sequence with the solutions included in S to verify the dominance. If the
new sequence is not a dominated solution, add it in S and eliminate any new
dominated solutions;
{ }∅=S
Step 7) if , stop the procedure: the solution set S represents the calculated Pareto
front. Otherwise set and go to Step 2.
rk =
1+= kk
7
At each run of the constructive phase, the algorithm enumerates ( 221
−⋅⋅ nn ) partial
schedules and n complete scheduling solutions. The total number of enumerated
solutions is obtained by multiplying the solutions enumerated in a single run by the
number of searches r.
As one can see, the proposed algorithm is characterized by an interesting property
that increases its operational flexibility. The decision maker can balance the quality
(completeness) of the required Pareto front with the computational time needed for the
procedure. In fact, the MOGI is able to manage the complexity of the search process by
controlling (i) the number of executions, and (ii) the range of weight variation.
2.2. Initial sequence
Some explanation has to be given to the initialization process. In the MOGI
heuristic the initial sequence plays a key role in the optimization procedure. In fact,
analyzing the way the MOGI is designed, it is evident that the initial solution heavily
influences the quality of the final result.
As described above, the original NEH procedure generates an initial sequence by
ordering the jobs according to decreasing total processing time, with the objective of
minimizing the makespan. Hence, there is a link between the kind of parameters that
have to be optimized and the criterion that has to be adopted to define the initial
sequence.
Since the MOGI considers the optimisation of both makespan and maximum
tardiness, the initial sequence has to be generated by not only considering the total
processing time, but also the due date of the job.
Hence, the following precedence index is introduced:
8
{ }{ } { }( ) ( ){
( ){ } ({ }}) ,
minmax
min
minmax
min
maxmax
max
maxmax
max
TPTdTPTd
TPTdTPTd
www
TPTTPT
TPTTPT
www
jj
jjj
TC
T
jj
jj
TC
Cj
−−−−−
−−−−−⋅
+
+−
−⋅
+=π
(4)
where jπ is the precedence index of the job j, is the weight assigned to the
makespan objective in the current search, is the weight assigned to the maximum
tardiness objective in the current search, is the total processing time of the job j,
is the due date of the job j, is the static slack of the job j, and
are the minimum and the maximum value of the total processing time over
all the jobs respectively, and and
maxCw
maxTw
jTPT
jd ( jj TPTd − ) }
}
{TPTj
min
{TPTj
max
( ){ }TPTdj
−−min ( ){ }TPTdj
−−max are the minimum
and the maximum value of the reciprocal of the static slack over all the jobs
respectively.
By applying this preference index, the initial sequence is performed by ordering the
jobs with respect to decreasing jπ . This ordering rule will be called Weighted Total
Processing Time and Static Slack (WTPTSS).
3. Experimental tests
To assess the performance of the proposed heuristic a comparison with a MOGA
has been performed, both in terms of solution excellence and computational time. In
particular, the MOGLS proposed by Ishibuchi et al. (2003) has been utilized to produce
a strong Pareto front adopted as a comparison with the Pareto front obtained adopting
the MOGI heuristic. MOGLS is able to produce spread search directions by randomly
varying the weights of each parameter taken into account. Moreover, the user can also
9
assign a fixed weight to each parameter, thus making it possible to balance the order of
magnitude of the parameters.
The performance measures taken into account are makespan and maximum
tardiness, coherently with the scope of the paper.
To achieve a valuable comparison between the MOGLS and the MOGI, an
extended set of families of problems characterized by different numbers of machines
and jobs has been defined. In particular, the machine and job numbers have been varied
{10, 20, 30} and {30, 40, 50, 60, 70, 80, 90, 100}, respectively.
Thirty runs for each family have been executed by randomly assigning the job
processing times and due dates for each run, and the results represent the mean
performance over all the runs. The job processing times and the due dates have been
assigned following the approach proposed by Ishibuchi and Murata (1998), that is:
• the processing time for each job on each machine is a random integer in the
interval [1, 99];
• the due date of each job is computed with the following procedure:
1. randomly generate a sequence of the jobs being considered;
2. calculate the completion time of each job when the given jobs are processed in
the sequence specified in 1;
3. specify the due date of each job by
[ ],100,100−+= randomcd jj (5)
where dj is the due date of job j, cj is the completion time of job j, and
is a random integer in the interval [ 100,100−random ] [ ]100,100− .
To compare the Pareto fronts produced by the MOGI and by the MOGLS, the
method proposed by Zhao et al. (2001) has been adopted. In particular, this method is
able to compare two Pareto fronts by defining two indices, representing the relative
10
dominance and the width of the Pareto front itself. This kind of approach is required
because a Pareto front becomes more representative as its solution’s excellence and
width increase. The two above mentioned indices are defined as follows (Zhao et al.,
2001):
1. Out-performance rate: this measures the relative dominance of one Pareto front
over another.
To calculate such an index, the two input Pareto fronts have to be mixed and
ranked in such a way as to eliminate the dominated solutions. Hence, among the
remaining solutions, those belonging to each front have to be counted. If n1 is the
number of solutions belonging to the first Parento front, and n2 the number of
solutions belonging to the second one, the out-performance rate of the first front
over the second can be calculated as follows:
.21
11 nn
neOutPerfRat+
= (6)
2. Diversity: this measures the diversity among individuals in the Pareto front, that is,
its width. Such an index can be expressed through the mean Euclidean distance
among all the pairs of individuals, with respect to the performance criteria
considered:
( ) ( ) ( )( )
( ) ( ),,1
2
,,
1
1 1
2
∑∑
∑−
= +=−⋅=
−=
n
i
n
ijji
kjkikji
SSDnn
Diversity
SfSfSSD
(7)
where k represents the performance criteria, Si and Sj are two generic individuals
in the non-dominated front, and n is the number of individuals.
Another factor considered for evaluating the performance of the algorithms is the
computational time. This is an important aspect for the effective applicability to real
11
industrial cases. The CPU time required by the algorithms represents the natural
candidate to evaluate this type of performance.
All of the three above mentioned performance indices have been calculated for each
algorithm in each run. Hence, to assess how much the proposed algorithm over-
performs/under-performs the MOGLS, the Relative Deviation Percentage (RDP) is
introduced and computed as reported below.
12
]
• RDP(OutPerfRate): values of the out-performance rate index belong to the
interval , and the MOGLS value is complementary to that of the MOGI.
Hence, the value 0.5 represents the equality point in terms of solution excellence,
and the RDP can be calculated as follows:
[ 1,0
.5.0
5.0)( −= MOGIeOutPerfRateOutPerfRatRDP (8)
In such a way, RDP(OutPerfRate) can assume values belonging to the interval
. A value of -1 indicates that all the individuals in the MOGI’s Pareto front
are dominated by the MOGLS’s ones, while a value of 1 indicates the opposite
situation.
[ 1,1− ]
• RDP(Diversity): values of the diversity index belong to the interval [ . In
particular, a value of 0 means that there is only one individual in the Pareto front,
that is, the worst possible solution. The RDP can be calculated as follows:
)∞+,0
.0 if,)( ≠−
= MOGLSMOGLS
MOGLSMOGI DiversityDiversity
DiversityDiversityDiversityRDP (9)
The RDP(Diversity) can assume values belonging to the interval ( )∞+∞− , , being
positive when the MOGI exceeds the MOGLS, otherwise negative, and 0 when
the two algorithms are equivalent.
• RDP(Time): values of the computational time belong to the interval ( )∞+,0 . The
RDP can be calculated as follows:
.)(MOGLS
MOGLSMOGI
TimeTimeTimeTimeRDP −
= (10)
The behaviour of the RDP(Time) is opposite to that of the RDP(Diversity), so
negative values mean a good MOGI performance, a positive value indicates a poor
performance, and 0 represents equality.
As mentioned above, thirty runs have been carried out in each family in such a way
as to better estimate the performance of the algorithms. Hence, average values for the
RDP of the indices have been calculated for each family and referred as Mean Relative
Deviation Percentage (MRDP):
100)(
)( 1 ⋅⋅
=⋅∑=
N
RDPMRDP
N
ii
, (11)
where i represents the generic problem in the family, N is the number of problems
solved in each family (thirty in our case), and )(⋅ represents the performance index
taken into consideration.
Results of the experimental campaign are reported in Tables 1 and 2 where the
cases in which the MOGI overcame the MOGLS are represented by values written in
bold italic text.
[ TAKE IN TABLES 1 AND 2 ]
13
The parameters characterizing the MOGLS behaviour were set as reported in
Ishibuchi et al. (2003). In particular, a population of 20 individuals, an elite solutions
number of 3, a crossover and mutation probability of 0.9 and 0.3 respectively, a local
searches number of 2 with a probability of 0.8, and a tournament size of 5 were adopted
in the tests. Moreover, the constant weights of the makespan and of the maximum
tardiness were set to 1 and 2, respectively.
The control parameter used to stop the MOGLS was the number of solutions
examined. In Table 1, MOGLS was stopped after the examination of 100000 solutions,
so as to allow the algorithm to obtain a good set of non-dominated solutions suitable to
represent a strong benchmark. Obviously, the computational time spent by the MOGLS
was consistently high with respect to that spent by the MOGI. In Table 2, the MOGLS
was stopped after the examination of 19000 solutions. That limit was chosen in such a
way as to make comparable the computational time spent by the two algorithms for the
solution of the most complex scheduling problem, that is, the one characterised by 30
machines and 100 jobs.
The parameters of the MOGI were set as follows:
− searches number = 50;
− makespan weight interval [ ] ; 200,1
− maximum tardiness weight interval [ ]100,1 ;
− multiplying parameter interval [ ] . 1,0
As one can see, the quality of the MOGI solution improves as the difficulty of the
problem increases, being significant in cases where the number of jobs to take into
account is considerably high. In fact, with regards to the out-performance rate, the
MOGI can always provide better solutions than the MOGLS when the number of jobs is
more than 70. Moreover, when the MOGLS is stopped at 19000 solutions evaluated,
condition which implies a comparable computation time in the hardest problem, the
MOGI obtains a clear superiority with respect to all performance indexes. When the
MOGLS is set to evaluate 100000 solutions, the MOGI provides its solutions in a time
that is from 5 to 50 times shorter than the one spent by the MOGLS, maintaining a
superiority in the hardest problems.
14
15
A consideration needs to be made regarding the out-performance rate index. Such
an index represents the relative dominance among the individuals making up the two
Pareto fronts, without providing any measure of the entity of the dominance, that is, the
distance between the Pareto fronts. This is due to the fact that the solution space is not
completely ordered in multi-objective problems, so there is not a unique direction along
which the distance measures can be made. As a consequence, the out-performance rate
should be considered as a qualitative indication of the goodness of the algorithm, rather
than a quantitative one, since it can not provide any measure of the distance existing
between the two Pareto fronts.
The diversity index, on the other hand, providing an absolute measure of the
amplitude of the non-dominated solutions, quantitatively represents the capability of the
algorithm of finding individuals wide spread in the solution space.
With respect to this index, a significant superiority of the MOGI emerges, since the
diversity among the individuals in the MOGI Pareto front is always better and can be
several times greater than that of the MOGLS, as reported in the above-mentioned
Tables. This aspect is important in real industrial cases, because a set of consistently
different solutions can constitute a valuable base on which the decision maker can carry
out his choice. In Figure 2 a representative case is reported.
4. Discussion of MOGI flexibility and applicability
The resolution of an actual scheduling problem is quite different from the
theoretical resolution. This difference is inherent of the real applicability of the
calculated scheduling sequence, as a consequence of other constraints that often are not
taken into account by the algorithm, such as, for example, availability of raw material
and by-products, availability of tools, concurrent utilization of some machines by other
products due to managerial choices, and so on.
All of these kinds of perturbations produce two main problems: the first is the
necessity to recalculate the scheduling sequence as many times as needed in order to
reach an applicable solution; the second problem is the difficulty to adopt an
optimization algorithm because of its slowness and rigidity. These problems are
generally overcome through the adoption of dispatching rules, this being a faster and
more flexible way to reach an acceptable solution even if their performances and multi-
objective capabilities are rather scarce.
To make an optimization algorithm applicable to real scheduling problems two
aspects must be considered: the first is the speed, so as to make it possible to do some
runs in an acceptable time interval; the second aspect is the solution’s flexibility which,
in the multi-objective problems, can be associated with the number of individuals in the
Pareto front and their diversity, thus allowing the decision maker to make a choice from
a whole range of different possibilities.
16
]
MOGI accomplishes these two main aims, by being able to produce a suitable
Pareto front which allows the decision maker to reduce the computational time by
managing some control factors. As said before, the search directions in the MOGI are
driven by the weight of the objectives, which are determined as a function of both the
weight ranges [ and the multiplying parameter rangeii ba , [ ]βα , , set by the decision
maker in such a way as to determine the slice of the solutions space that has to be taken
into account. Furthermore, the computational time can be easily controlled by varying
the number of searches, influencing the number of solutions that can be found in the
previously identified slice, without affecting the optimisation capability.
To show the effectiveness of such an approach, consider the bi-objective problem
whose solution is reported in Figure 3, regarding a flow shop system with 30 machines
and 100 jobs.
[ TAKE IN FIGURE 3 ]
The MOGI algorithm was set as the same as in the previous tests, but in this case
the parameter λ was set in the three different ranges [ ]5.0,0.0 , [ ]8.0,5.0 and ,
with 5 searches made. As one can see, the algorithm was able to address the searches
toward the sole slices of solution space of interest, and to obtain a suitable
representation of the Pareto front in such zones in a few seconds, despite the complexity
of the problem, thanks to the reduced number of searches made.
[ ]0.1,7.0
We also tested the behaviour of our algorithm in tackling the optimisation of other
objective parameters. In particular, we addressed the makespan and total flowtime
flowshop optimisation problem. A large simulation campaign was executed, and the
solutions proposed by our algorithm were compared with the ones produced by
Varadharajan and Rajendran’s (2005) MOSA. The results pointed out that the set of
solutions proposed by the MOSA always dominated the set proposed by our algorithm.
In particular, even if the capability to minimise the makespan was almost the same, the
MOSA was able to obtain a slightly better optimisation of the total flowtime objective.
The advantage of our algorithm was the computational time, as our algorithm was three
times faster than the MOSA.
17
18
5. Conclusions
A new algorithm for solving the flow shop scheduling problem with makespan and
maximum tardiness minimisation is presented. The model is based on the integration of
a well-known heuristic for the single objective flow shop scheduling problem and a
multi attribute decision making technique. The algorithm is able to supply a set of non-
dominated solutions, among which the analyst can choose the one that better
accomplishes his needs. The quality of the solutions found by the proposed algorithm
has been assessed by comparison with a multi-objective genetic local search algorithm
(MOGLS). Numerous tests have been carried out, and the results show that the
proposed algorithm is able to find good sets of non-dominated solutions, especially
when the number of jobs arises. In all cases, the solutions carried out by the proposed
algorithm are very representative of the Pareto front, being wide spread over the
solution space as a whole. This makes it more suitable in real industrial cases.
Moreover, the proposed algorithm was designed in such a way as to make it
possible to have a wide possibility of control in terms of search direction and
computational time. In particular, the analyst can specify both the range of variation of
the performance parameter weights, influencing the search direction, and the number of
searches that have to be executed, influencing the computational time. Exploiting these
characteristics, the analyst can obtain a good representation of the Pareto front in a very
low computational time, focusing a few searches in the area of interest, and without any
loss in the search performance of the algorithm.
Appendix A – The Nawaz-Enscore-Ham heuristic
The NEH heuristic is based on the following steps:
Step 1) create the initial sequence by ordering the n jobs with respect to decreasing
total processing time;
Step 2) consider the first two jobs in the initial sequence and schedule them in such a
way as to minimize the partial makespan, that is, as if there were only the two
jobs in the system. The sequence obtained will be called partial sequence;
Step 3) for to n, take the k-th job in the initial sequence and insert it in the
partial sequence in that position, among the k possible, which minimizes the
makespan;
3=k
Step 4) the sequence of n jobs obtained at the Step 3 represents the solution of the
problem.
19
Appendix B – The TOPSIS method
The TOPSIS (Hwang and Yoon, 1981) is a multi-criteria decision making technique
able to rank some alternatives through numerical evaluations the decision maker
performs with respect to certain criteria. Weights can also be specified for each
criterion, in order to introduce a measure of the relative importance the decision maker
feels.
This methodology is based on the consideration that the best alternative should have
the shortest distance from the ideal solution and the farthest distance from the negative-
ideal solution in a geometrical sense. Such ideal and negative-ideal solutions are
computed by considering, over all the alternatives, the best and the worst criteria’s
evaluations respectively (Triantaphyllou and Lin 1996).
Assume the decision matrix reported in Table 7 which represents the evaluation of
m alternatives with respect to n criteria.
[ TAKE IN TABLE 3 ]
where Ai is the i-th alternative, Cj is the j-th criterion, and xij is the performance measure
of the i-th alternative in terms of the j-th criterion.
The TOPSIS method consists first in the normalization of both the weights vector
and the criteria evaluation vectors in order to convert the performance measures into
non-dimensional ones. The new normalized measures can be obtained by the relation:
.1
2∑ =′ ′
=m
i ji
ijij
x
xr
Subsequently, the weighted normalized matrix is computed by multiplying rij with
the normalized weight:
20
( ).jij WrV =
The ideal ( ∗A ) and negative-ideal ( −A ) solutions are determined with respect to the
kind of problem to solve, that is, a minimization or maximization one.
Minimization problem:
for i = 1, 2, …, m. ( ) { }( ) { },,,,,,2,1|max
,,,,,,2,1|min
21
21
−−−−
∗∗∗∗
=⎭⎬⎫
⎩⎨⎧ ==
=⎭⎬⎫
⎩⎨⎧ ==
niji
niji
vvvnjvA
vvvnjvA
KK
KK
Maximization problem:
for i = 1, 2, …, m. ( ) { }( ) { },,,,,,2,1|min
,,,,,,2,1|max
21
21
−−−−
∗∗∗∗
=⎭⎬⎫
⎩⎨⎧ ==
=⎭⎬⎫
⎩⎨⎧ ==
niji
niji
vvvnjvA
vvvnjvA
KK
KK
For each alternative, the separation distances from the ideal and negative-ideal
solution are calculated as Euclidean n-dimensional distances:
( )( ) ,
,
1
2
1
2
∑
∑
=−−
=∗∗
−=
−=
n
j jiji
n
j jiji
vvS
vvS for i = 1, 2, …, m.
Finally, the relative closeness to the ideal solution is calculated as follows:
,−∗
−∗
+=
ii
ii SS
SCL for i = 1, 2, …, m.
∗iCL belongs to the interval [0, 1], in particular if and only if and
if and only if . The higher the value of , the better the performance
of the solution.
1=∗iCL ∗= AAi
0=∗iCL −= AAi
∗iCL
21
22
References
Allahverdi, A. (2004). A new heuristic for m-machine flowshop scheduling problem with bicriteria of makespan and maximum tardiness. Computer & Operations Research, 31, 157-180.
Bagchi, T.P. (1999). Multiobjective Scheduling by Genetic Algorithms. Kluwer Academic Publishers.
Baker, K.R. (1974). Introduction to Sequencing and Scheduling. New York: Wiley.
Campbell, H.G., Dudek, R.A., and Smith, M.L. (1970). A heuristic algorithm for the n-job, M-machine sequencing problem. Management Science, 16/B, 630-637.
Cavalieri, S., and Gaiardelli, P. (1998). Hybrid genetic algorithms for a multiple-objective scheduling problem. Journal of Intelligent Manufacturing, 9, 361-367.
Chakravarthy, K., and Rajendran, C. (1999). A heuristic for scheduling in a flowshop with the bicriteria of makespan and maximum tardiness minimization. Production Planning and Control, 10, 707-714.
Dannenbring, D.G. (1977). An evaluation of flow-shop sequencing heuristics. Management Science, 23, 1174-1182.
Evans, G. (1984). An overview of techniques for solving multiobjective mathematical programs. Management Sci, 30, 1268-1282.
Gupta, J.N.D. (1971). A functional heuristic algorithm for the flow-shop scheduling problem. Operational Research Quarterly, 22, 39-47.
Gupta, J.N.D., Henning, K., and Werner, F. (2002). Local search heuristics for two-stage flow shop problems with secondary criterion. Computer & Operations Research, 29, 123-149.
Gupta, J.N.D., Palanimuthu, N., and Chen, C.-L. (1999). Designing a tabu search algorithm for the two-stage flow shop problem with secondary criterion. Production Planning and Control, 10, 251-265.
Ho, J.C., and Chang, Y.-L. (1991). A new heuristic for the n-job, M-machine flow-shop problem. European Journal of Operational Research, 52, 194-202.
Hwang, C.L., and Yoon, K. (1981). Multiple Attribute Decision Making: Methods and Applications. New York: Springer-Verlag.
Ishibuchi, H., and Murata, T. (1998). A multi-objective genetic local search algorithm and its application to flowshop scheduling. IEEE Transactions on Systems, Man, and Cybernetics – Part C: applications and reviews, 28 (3), 392-403.
Ishibuchi, H., Yoshida, T., and Murata, T. (2003). Balance between genetic search and local search in memetic algorithms for multiobjective permutation flowshop scheduling. IEEE Transactions on evolutionary computation, 7 (2), 204-223.
23
Lee, Y.H., Lee, B.K., and Jeong, B. (2000). Multi-objective production scheduling of probe process in semiconductor manufacturing. Production Planning and Control, 11, 660-669.
Murata, T., Ishibuchi, H., and Tanaka, H. (1996). Multi-objective genetic algorithm and its applications to flowshop scheduling. Computers and Industrial Engineering, 30 (4), 957-968.
Nawaz, M., Enscore, Jr., E.E., and Ham, I. (1983). A heuristic algorithm for the m-machine, n-job flowshop sequencing problem. OMEGA, 11, 91-95.
Palmer, D.S. (1965). Sequencing jobs through a multi-stage process in the minimum total time – A quick method of obtaining a near optimum. Operational Research Quarterly, 16, 101-107.
Rajendran, C. (1994). A heuristic for scheduling in flowshop and flowline-based manufacturing cell with multi-criteria. International Journal of Production Research, 32, 2541-2558.
Rajendran, C. (1995). Heuristics for scheduling in flowshop with multiple objectives. European Journal of Operational Research, 82, 540-555.
Rinnooy Kan, A.H.G. (1967). Machine Scheduling Problems. Martinus Nijhoff, The Hague.
Schaffer, J.D. (1985). Multiple objective optimization with vector evaluated genetic algorithms. Proceedings of the 1st International Conference on Genetic Algorithms (ICGA), 93-100.
T’Kindt, V., and Billaut, J.-C. (2001). Multicriteria scheduling problems: a survey. RAIRO Operations Research, 35, 143-163.
Tagami, T., and Kawabe, T. (1998). Genetic algorithm with a Pareto partitioning method for multiobjective flowshop scheduling. Proceedings of the 1998 International Symposium of Nonlinear Theory and its Applications (NOLTA), 1069-1072.
Triantaphyllou, E., and Lin, C.-T. (1996). Development and evaluation of five fuzzy multiattribute decision-making methods. International Journal of Approximate Reasoning, 14, 281-310.
Varadharajan, T.K., and Rajendran, C. (2005). A multi-objective simulated annealing algorithm for scheduling in flowshops to minimize the makespan and total flowtime of jobs. European Journal of Operational Research, 167, 772-795.
Zhao, Y., Brizuela, C.A., and Sannomiya, N. (2001). Application of the partial enumeration selection method in genetic algorithms to solve a multi-objective flowshop problem. Proceedings of the 2001 IEEE International Conference on Systems, Man, and Cybernetics, 4, 2365-2370.
24
Mean Relative Deviation Percentage Machines Jobs Time OutPerfRate Diversity
30 -98.2% -39.2% 193% 40 -96.8% -28.2% 375% 50 -95.1% -20.1% 425% 60 -93.0% -0.5% 407% 70 -90.5% 5.6% 414% 80 -87.8% 10.2% 983% 90 -84.6% 6.4% 694%
10
100 -81.1% 15.6% 796% 30 -98.1% -43.3% 329% 40 -96.8% -19.1% 326% 50 -95.1% -8.6% 395% 60 -93.0% 6.2% 465% 70 -90.8% 5.0% 577% 80 -88.1% 13.6% 952% 90 -84.9% 11.0% 937%
20
100 -81.4% 8.7% 1067% 30 -98.1% -41.7% 258% 40 -96.8% -28.3% 247% 50 -95.1% -17.6% 422% 60 -93.2% -11.3% 496% 70 -90.9% -1.5% 653% 80 -88.2% 8.2% 889% 90 -84.9% 14.5% 982%
30
100 -81.6% 12.7% 967%
Table 1. Performance comparison with MOGLS set to 100000 solutions evaluated.
25
Mean Relative Deviation Percentage Machines Jobs Time OutPerfRate Diversity
30 -90.2% -11.4% 202% 40 -83.2% 9.2% 537% 50 -73.3% 24.0% 547% 60 -62.1% 34.8% 570% 70 -48.1% 38.9% 510% 80 -32.6% 47.4% 773% 90 -15.1% 53.0% 913%
10
100 4.7% 59.7% 713% 30 -89.8% -9.8% 342% 40 -82.7% 11.4% 372% 50 -73.3% 27.7% 479% 60 -62.3% 34.9% 602% 70 -49.5% 45.3% 535% 80 -34.0% 46.7% 1070% 90 -16.1% 60.8% 992%
20
100 3.8% 65.9% 1473% 30 -90.0% -9.2% 251% 40 -82.9% 4.6% 511% 50 -73.2% 25.3% 706% 60 -62.0% 32.3% 710% 70 -50.1% 49.7% 779% 80 -34.4% 57.3% 1087% 90 -17.0% 71.6% 1453%
30
100 2.6% 74.5% 889%
Table 2. Performance comparison with MOGI and MOGLS set to comparable execution time in the hardest problem (30 machines and 100 jobs).
Criteria C1 C2 … CnAlternatives W1 W2 … Wn
A1 x11 x12 … x1nA2 x21 x22 … x2n M M M M M Am xm1 xm2 … xmn
Table 3. Decision matrix.
26
Cmax
Tmax
c) The weighs of the objective Cmax are lower than those of Tmax and assume values near zero.
a) The weights variation ranges are equivalent in the two objectives and vary from zero to a maximum value.
b) The weights variation ranges are narrower than the previous case and remain far from zero.
d) The weighs of the objective Tmax are lower than those of Cmax and assume values near zero.
Cmax
Tmax
Cmax
Tmax
Cmax
Tmax
Figure 1. Search direction control through variation of the objective weights in a two objective optimization problem.
27
MakeSpan8 8008 6008 4008 2008 0007 8007 6007 4007 200
Max
Tar
dine
ss
3 4003 2003 0002 8002 6002 4002 2002 0001 8001 6001 4001 2001 000
800600400200
0
MOGI MOGLS
Figure 2. Solutions of a problem with 30 machines and 100 jobs (MOGLS stopped after 19000 solutions examined).
28
MakeSpan9,0008,8008,6008,4008,2008,0007,8007,6007,4007,2007,000
Max
Tar
dine
ss6,000
5,500
5,000
4,500
4,000
3,500
3,000
2,500
2,000
1,500
1,000
500
0
MOGI: 5 searches
[ ]5.0,0.0∈λ
[ ]8.0,5.0∈λ
[ ]0.1,7.0∈λ
Figure 3. Representation of the different search directions as a function of the range of λ.
29