Simulation Optimization For A Flexible Jobshop Scheduling Problem Using An Estimation of Distribution Algorithm
Simulation Optimization For A Flexible Jobshop Scheduling Problem Using An Estimation of Distribution Algorithm
DOI 10.1007/s00170-014-5759-x
ORIGINAL ARTICLE
Received: 20 November 2013 / Accepted: 6 March 2014 / Published online: 4 April 2014
# Springer-Verlag London 2014
All current research work focuses on the fact that only our knowledge, the parameter described has not been devel-
one schedule is assigned to all the machines on the shop oped through these kinds of algorithms.
floor, but the performance of scheduling is different In addition, all EDAs that have been used for scheduling up
under different circumstances; the shop performance can to this point can be used for service and/or manufacturing
be improved if different machines are assigned to differ- applications. However, in these environments, some assump-
ent schedules. For example, the steel doors manufactur- tions studied from an academic approach may not be met. For
ing process studied in this research does not require all example, the assumption that operations cannot be interrupted
machines to be ready at the beginning of the schedule, is difficult to meet, because there are many reasons to interrupt
because it is extensive and requires time to produce a operations at any workstation or machine due to failures,
complete job. The work content varies greatly at each adjustments, incorrect set up, scrap, shutdown, or the sudden
step. If all machines are ready at the beginning of the arrival of priority jobs.
schedule, it should cause idle times. For this reason and In order to avoid the use of theoretical assumptions that can
contrary to current research, this paper presents an alter- hardly be met or to try to capture the real operating conditions
native solution to the scheduling problem from an indus- on service or manufacturing systems, simulation optimization
trial perspective where the start time for each work shift is an alternative.
is an input variable to consider. We provide a simple Although there are several commercial simulation lan-
example of the variable mentioned by considering a prob- guages that provide optimization tools, to the best of our
lem with four jobs: the four machines shown in Fig. 1. We try knowledge, no current commercial simulation language uses
to achieve the minimum idle time possible for each machine in EDAs as an optimization method.
a work shift of 8 h. An alternative schedule, including off-duty The approach taken in this study combines the key advan-
hours for each machine, is proposed in Fig. 2. To the best of tages of both EDAs and simulation. The focus of this study is
to employ simulation with estimation of distribution algorithm from each other because most EDAs generate entirely new
(SEDA) where three probabilistic models are utilized. The solutions.
first one generates the processing sequence of operations on Recently, some attempts have been made to combine
the machines; the second produces the assignment of opera- EDAs with the traditional crossover and mutation operators
tions on machines, and the third obtains the start time for each of GAs [14]. Chen et al. [5] use this approach. They employ an
work shift. approximate probabilistic model to estimate the quality of
Although different performance measures have been candidate solutions to enable the crossover and mutation
considered for optimizing scheduling problems, the work operators to generate more promising solutions. They
in process (WIP), as an important output variable on work on the permutation flowshop scheduling problem
scheduling problems, has been handled with little depth (PFSP). It is one of the best-known NP-hard (non-determin-
through EDAs. This research proposes to build an event- istic polynomial-time) problems. The probabilistic model
discrete simulation model and use SEDA as an optimiza- used is not a source for generating new solutions but acts as
tion method in a steel doors manufacturing shop where a fitness predictor for guiding the crossover and mutation
operations are extensive and diverse and belong to flexible operators to generate better solutions.
jobshop configuration. The objective is to generate sched- Chen et al. [7] also work on PFSPs. They employ two
ules that can obtain a small amount of WIP as a perfor- probabilistic models, while most EDAs do not apply more
mance measure. than one model. The first model represents the number of
times that any job appears before or at a specific position in
the sequences. This model shows the importance of the jobs in
2 Literature review the sequence and was used in research conducted by Jarboui
et al. [8]. The second model indicates whether any job imme-
A discussion about the most current research on scheduling diately follows another in the sequences, i.e., this model
problems with EDAs is outlined below. indicates the number of times that any job immediately fol-
Chen et al. [2] propose guidelines for developing effective lows another. In addition, it is important to note that by
EDAs to solve single machine scheduling problems, particu- combining a genetic-operator approach with a probabilistic
larly the minimization of the total weighted earliness and model, the authors were able to avoid the loss of data diversity
tardiness costs. In general, they used an EDA with an operator which EDAs often demonstrate.
that they call “guided mutation” to generate effective off- Pan and Ruiz [4] offer an EDA for lot-streaming flowshop
spring. The beginning of their algorithm produces new solu- problems with setup times. According to the researchers, in a
tions mainly by genetic operators. After this, they use the traditional flowshop, each job is assumed to be indivisible
probabilistic model to generate better individuals when the and cannot be transferred to a downstream machine
searching process reaches a more stable state. Therefore, until the whole operation on the preceding machine is
sampling new individuals periodically differentiates EDAs finished. Nevertheless, this is not the case in many practical
6 Int J Adv Manuf Technol (2014) 73:3–21
environments where a job or lot consists of many identical configuration. Wang et al. [6] and Yan and Wang [16]
items. The real contribution is how Pan and Ruiz [4] handle explain the problem formulation for this configuration.
the setup time concept in their algorithm. The flexible jobshop scheduling problem FJSP is common-
Wang et al. [6] work on the flexible jobshop scheduling ly defined as follows: there are n jobs J={J1,J2,…,Jn} to be
problem (FJSP). The authors proposed a bi-population based processed on m machines M={M1,M2,…,Mn}. A job Ji is
on EDA, which they called BEDA to solve FJSP with the formed by a sequence of ni operations Oi;1 ; Oi;2 ; …; Oi;ni
criterion of minimizing the maximum completion time. In the to be performed one after another according to a given se-
BEDA, the population may be divided into two sub- quence. The execution of Oi, j requires one machine out of a
populations with a splitting criterion, and the two sub- set of mi, j given machines Mi, j ⊆ M. Preemption is not
populations may be recombined as the entire population with allowed, i.e., each operation must be completed without inter-
a combination criterion to achieve a satisfactory searching ruption once it starts.
quality. In order to simplify the notations for the flexible jobshop
All of this current research work uses discrete EDAs. In scheduling problem in this research, it is convenient to
these kinds of EDAs, each individual explicitly shows its n
information in the sequence of jobs to be processed. The identify the Oi, j by numbers 1,…, N where N :¼ ∑ ni .
i¼1
hybridization between any discrete EDA and any heuristic Consequently, the processing time of the operation i on ma-
method permits obtaining promising solutions. The probabi- chine k∈Mi is denoted by ti,k. In addition, the operations set is
listic models used in all of this current research work are established as O.
updated each time a job is assigned in the sequence. This Let J(i) denote the job to which operation i belongs
updating eliminates the possibility of choosing a previous and let P(i) be the position of operation i in the se-
job, although the authors of this research almost never explic- quence of operations belonging to job J(i) starting with
itly mention that a modification in the sampling process has to one, i.e., P(i)=1 if the operation i is the first operation
be carried out. For example, Shim et al. [15] use EDAs for of a job. Furthermore, the index set I k defined by
solving the multi-objective traveling salesman problem. The Ik :={i∈O|k∈Mi} denotes the indices of operations i∈O
authors opined that the sampling mechanism does not consid- that can be processed on machine k. Consequently, there
er which city has or has not been included in the route. In are |Ik| positions on machine k.
order to get feasible solutions, a refinement operator is In order to model the assignment of operations to
proposed for tackling the inconvenience of the permutation- machines, assignment binary variables xi, k, p for all pk =
based representation. 1, …, |I k |, k = 1, …, m, i ∈ O are introduced if x i, k, p = 1
Although some promising results have been reported by means that the operation i is scheduled for position p
using high-order interactions in probabilistic models, those on machine k.
results do not necessarily outperform simple models in dealing Furthermore, Si is defined as the starting time for operation i.
with some real-world hard problems because these complicat- For each job, the corresponding operations have to be
ed models can only consider a very tiny percentage of variable processed in the given order, that is, the starting time for an
interactions in a hard problem [7]. As a result, simulation operation must not be earlier than the point at which the
optimization is a good alternative to tackle this situation. preceding operation in the sequence of operations of the
The main differences and similarities between current re- respective job is completed. This constraint is imposed simul-
search and this paper are shown in Table 1. In addition, in taneously on all appropriate pairs of operations, aggregated in
Table 2, it details the most important commercial simulation the set of conjunctions C given by C∶={(i,j)| i,j∈O:J(i)=
languages that provide optimization tools. J( j)∧P( j)=P(i)+1}. Consequently, the precedence constraints
As we can see from the previous review, to the best of our are given by
knowledge, the industrial perspective has not been thoroughly
considered In addition, EDAs have not been developed for use
XX
jI k j
as an optimization method for simulation optimization. Si þ xi;k;p t i;k ≤ S j for allði; jÞ∈C: ð1Þ
Finally, some assumptions that are not necessarily met in k∈M i p¼1
service and/or manufacturing systems are used in all of the
current research.
Moreover, each operation has to be assigned to exactly one
position, which is ensured by
3 Problem statement
Xm X
jI k j
The steel doors manufacturing shop, where operations xi;k;p ¼ 1 for all i∈O: ð2Þ
are extensive and diverse, belongs to flexible jobshop k¼1 p¼1
Int J Adv Manuf Technol (2014) 73:3–21 7
Algorithms
Elements Chen et al. [2] Chen et al. [5] Chen et al. Jarboui et al. Pan and Ruiz [4] Wang et al. SEDA
EA/G Self-guided [7] eACGA [8] JEDA [6] BEDA
GA
Configuration style Single-machine PFSP PFSP PFSP Lot-streaming PFSP FJSP FJSP
Processing times Fixed Fixed Fixed Fixed Fixed Fixed Variable
Assumptions Required Required Required Required Partially required Required Not required
Probabilistic model Univariate Univariate Uni/bivariate Univariate Uni/bivariate bivariate Bivariate
Type of EDA Discrete Discrete Discrete Discrete Discrete Discrete Discrete and
continuous
Hybridization EDA-GA EDA-GA EDA-GA EDA-VNS EDA-VNS EDA-local search EDA-simulation
Populations One One One One One Two One
Objective Weighted earliness, Makespan Makespan Total flow time Makespan Makespan Work in process
tardiness costs
Simulation Not provided Not provided Not provided Not provided Not provided Not provided Included
Approach Academic Academic Academic Academic Industrial, sequence- Academic Industrial, all the
dependent setup environment
time considered as really it is
PFSP permutation flowshop scheduling
problem
FJSP flexible jobshop scheduling
problem
VNS variable neighborhood search
Additionally, only one operation can be assigned to each position on a machine if the preceding position is already
position, due to constraints filled. This condition is ensured by
X X X
xi;k;p ≤ 1 for all p ¼ 1; …; jI k j; k ¼ 1; …; m: ð3Þ xi;k;p ≤ xi;k;p − 1 ð4Þ
i∈O i∈O i∈O
a non-overlapping constraint does not have to be taken into The completion time Ck on each machine k is defined as the
account. total time required to conclude all the operations scheduled,
Different starting times for each machine were con- which is ensured by
sidered in this research. Let Tk be the off-duty time for
each machine k. The starting time for the first operation maxi∈I k S i þ t i;k ≤C k for all k ¼ 1; …; m: ð8Þ
on each machine must not be earlier than Tk, which is
ensured by We consider to minimizing the work in the process at the
end of each real work shift on each machine, that is, the
X difference between the completion time and the real work
T k þ Si þ xi;k;p t i;k ≤ S j for all i∈I k ; k ¼ 1; …; m: ð6Þ shift for each machine, given by
p¼1
Xm
Min WIP ¼ maxfC k − Rk ; 0g ð9Þ
Let H be the total time in the work shift for the entire k¼1
manufacturing process. Consequently, the real work shift R Thus, the problem formulation for the steel doors
for each machine k is defined by manufacturing process is given by
X m
Min WIP ¼ maxfC k −Rk ; 0g
T k þ H ¼ Rk for all k ¼ 1; …; m: ð7Þ k¼1
s:t
maxi∈I k S i þ t i;k ≤ Ck for all k ¼ 1; …; m:
X X
jI k j
Si þ xi; k; p t i; k ≤ S j for all ði; jÞ ∈ C :
k∈M i p¼1
Xm XjI k j
xi; k; p ¼ 1 for all i∈O:
k¼1 p¼1
X
xi; k; p ≤ 1 for all p ¼ 1; …; jI k j; k ¼ 1; …; m:
i∈O
X X
xi; k; p ≤ xi; k; p −1 for all p ¼ 2; …; jI k j; k ¼ 1; …; m:
i∈O i∈O
S i þ t i; k −M 2−xi; k; p−1 −x j; k; p ≤ S j for all p ¼ 2; …; jI k j; i≠ j∈I k ; k ¼ 1; …; m:
X
T k þ Si þ xi; k; p t i; k ≤ S j for all i∈O; k ¼ 1; …; m:
p¼1
T k þ H ¼ Rk for all k ¼ 1; …; m:
Tk ≥0 for all k ¼ 1; …; m:
H constant
Although the problem formulation for the steel doors manufacturing process. This situation impedes using EDAs
manufacturing shop has been explained above, it includes directly. Some assumptions that are not met are:
assumptions that are not relevant or consistent with the
manufacturing process mentioned. Unfortunately, some of 1. The machines are assumed to be set up in series. In the
these assumptions simply cannot be applied in the steel doors steel door manufacturing process, this is not possible,
Int J Adv Manuf Technol (2014) 73:3–21 9
especially for a layout that does not accomplish such a 5. Each machine can process only one operation at a time. In
configuration. the actual manufacturing process, the cure oven system
2. The storage or buffer capacities in between successive ma- acts as a machine, processing more than 100 doors (from
chines may sometimes be virtually unlimited. Unfortunately, different jobs) at the same time.
this does not happen with the actual manufacturing process. 6. One kind of machine is available. Normally, when
When the products are physically as large as steel the jobs have entered the shop floor, they are pro-
doors, the buffer space in between two successive duced according to a specific route as in any jobshop
machines has limited capacity, causing blockage. When configuration; however, there are working groups
this occurs, the job has to remain at the machine,
preventing a job in the queue at that machine from starting
its processing.
3. Any job can be processed at each stage by any machine.
Although some workstations in the steel door
manufacturing process have parallel machines to process
any job on, the impact on performance measures can be
totally different using one machine to another. The main
reason is because there are a limited number of skilled
workers for certain types of doors that use those parallel
machines.
4. Operations cannot be interrupted. There are many
reasons to interrupt the operations at any workstation
or machine such as failures, adjustments, wrong setup,
scrap, and the sudden arrival of priority jobs. Fig. 4 Fixed values test
10 Int J Adv Manuf Technol (2014) 73:3–21
that may not be available due to personnel and shift In addition, the operating conditions for the steel doors
scheduling. manufacturing process are different and more sensible
7. The time to transfer jobs between machines is not rele- than classic configurations where operating conditions
vant. In the steel doors manufacturing shop, most of the can be irrelevant. For example:
Fig. 7 Representation of an
individual
12 Int J Adv Manuf Technol (2014) 73:3–21
proposed. If this happens, it is not possible to ensure real process. For this reason, we verified and validated the simu-
solutions that can be implemented. Therefore, we built a lation model.
simulation model that emulates the manufacture of the most We ran the simulation model under different conditions to
important kinds of doors sold by the company. The model determine if its computer programming and implementation
contains all the tasks performed by different machines in the are correct as an applying verification technique which is
manufacturing process for each sort of product that is sched- known as the fixed values test [17, 18]. We decided to verify
uled. Our simulation model included many types of details the throughput as model results. It was verified against calcu-
that a manufacturing process presents: setup time, mainte- lated a priori values. Figure 4 depicts previous descriptions in
nance programming, load and unload processing, packing three production departments.
and unpacking materials, transferring of parts between depart- The validation method developed for this case study was
ments, labor requirements for each machine or process, stor- based on Pita and Wang’s [19] work which classifies the input
age rules in buffers, delay time in some areas, shifts, breaks, variables as a function of how they affect output variables.
and meals. All of these situations are present in the given The selected input variables are conveyor speed in painting,
manufacturing process. Figure 3 shows a side of the final process time of the sealed system in assembly, process time of
assembly department. the drying system in washing, sequences, and work shifts. The
Nevertheless, even if we were able to integrate operation output variables are utilization average of all employees,
times and workflows in the model, it does not mean the model effective process time average of all employees, work in
is faithful to and representative of the real manufacturing process, and throughput. Table 3 shows the main results.
From the results shown above, the work sequences and 5 SEDA—for a steel doors manufacturing shop
off-duty hours before starting the work shift are a key
opportunity to improve the manufacturing process. This is 5.1 Solution representation
mainly because the amount of releases is not constant or
sufficient to keep the manufacturing process busy for a long Any solution to the manufacturing process mentioned should
time, causing intermittent idle times. This characteristic is be a combination of operation scheduling decision, machine
sensitive to the actual manufacturing process. A good bal- assignment, and off-duty hours before starting the work shift.
ance of off-duty hours helps to improve the output variables Thus, a solution can be expressed by the processing sequence
values shown in the validation method described above, and of operations on the machines, and the assignment of opera-
it includes the WIP. A combined approach using work tions on machines and the off-duty hours, which would be
sequences, and off-duty hours was the purpose of this the operators before starting their activities. In this paper, a
research. solution is represented by three vectors (operation sequence
Furthermore, the validation of the simulation model was vector, machine assignment vector, and off-duty hours
realized statistically. We compared the results derived by the vector).
model with real production in the same initial conditions, For the operation sequence vector, the number of elements
satisfying statistical assumptions in the validation. Figure 5 equals the total number of operations, where each element
depicts the information below. contains a random value U[0,1], an important difference
Fig. 12 Representation of an
individual to a valid operation
sequence
14 Int J Adv Manuf Technol (2014) 73:3–21
between our approach and Wang et al.’s [6] work. For the different off-duty hours possible as shown in Fig. 6. In
machine assignment vector, each element represents the cor- Fig. 7, the representation of an individual is illustrated.
responding selected machine for each operation. For the off- To show a comparison between this approach and Wang
duty hours vector, each element shows the off-duty hours, et al.’s [6] work, an example is provided. Figure 8 details the
which would be the operators before starting their activities on fixed processing time for each job on each machine and a
the most important manufacturing departments on the shop. feasible sequence. Figure 9 illustrates the Gantt chart of this
To explain the representation, we provide an example by solution working at the same time on all machines. Figure 10
considering a problem with four jobs, four machines, and shows another feasible sequence, but it includes off-duty
hours and its impact over work in process. Idle time can be 5.3 Probability model
noted in Fig. 11. However, in the industrial environment
mentioned, the processing time is not fixed. Therefore, SEDA contains three different graph models. The first graph
Wang et al.’s [6] representation should not be directly applied. model aims to determine an estimation of distribution model
The results may be totally different. Because of this, a simu- to generate new offspring (operation sequence) using a subset
lation model is used to tackle this drawback. of 'm' selected sequences (individuals). In order to do this, we
However, it is possible that, when a given job reaches adopted a continuous optimization procedure instead of a
a workstation that remains off-duty, the job will have to discrete one to solve the scheduling problem. This is an
wait until the workstation starts production again, important difference between this approach and the current
converting the job to WIP. We sought as little WIP as research. The advantage of this representation for each indi-
possible, given the operational, physical, and programmatic vidual, through continuous values, is that they do not have
restrictions. direct meaning to the solution they represent. There is no
problem if each individual does not explicitly shows its infor-
5.2 Generation of the population mation on the sequence of jobs to be processed. It is not
necessary that the probabilistic model be updated each time
Initial population members are generated randomly in order to a job is assigned in the sequence, and it is not necessary to
enable a wide range of solutions [20]. make any modification in the sampling process. Rudolph [21]
1 2.66 3.50 4.97 6.37 −1.40 16.64* 1 2.66 3.50 2.926 2.903 1.0079 1.0079*
2 3.21 2.56 5.30 5.35 −0.05 0.58 2 3.21 2.56 3.124 2.661 1.1738 1.1738*
3 2.93 0.91 5.29 5.63 −0.34 3.37* 3 2.93 0.91 2.763 5.553 0.4976 0.4976
4 3.31 0.00 5.23 4.14 1.09 11.47* 4 3.31 0.00 2.377 5.028 0.4727 0.4727
5 2.66 0.03 5.01 4.09 0.92 9.175* 5 2.66 0.03 3.307 4.933 0.6704 0.6704*
6 2.66 0.00 4.95 4.15 0.80 8.160* 6 2.66 0.00 2.848 5.050 0.5640 0.5639*
7 2.66 0.00 4.90 4.16 0.74 7.580* 7 2.66 0.00 2.482 5.284 0.4698 0.4698
8 2.66 0.00 5.03 4.19 0.85 8.450* 8 2.66 0.00 3.116 5.150 0.6050 0.6050*
9 2.66 0.39 5.01 4.15 0.87 8.785* 9 2.66 0.39 2.977 5.053 0.5891 0.5891*
10 2.66 0.03 4.91 4.09 0.81 8.381* 10 2.66 0.03 2.932 4.828 0.6072 0.6072*
11 2.66 0.00 4.98 4.20 0.78 7.931* 11 2.66 0.00 2.803 5.149 0.5443 0.5443
12 2.66 0.03 4.98 4.05 0.93 9.447* 12 2.66 0.03 3.055 4.881 0.6258 0.6258*
13 2.66 0.03 5.08 4.14 0.94 9.402* 13 2.66 0.03 3.267 5.004 0.6529 0.6529*
14 2.66 0.00 5.02 4.14 0.87 8.906* 14 2.66 0.00 2.969 4.990 0.5950 0.5950*
15 2.66 0.03 4.96 4.11 0.85 8.994* 15 2.66 0.03 2.743 4.601 0.5962 0.5962*
16 2.66 0.00 4.98 4.18 0.80 8.430* 16 2.66 0.00 2.897 4.541 0.6380 0.6380*
17 2.66 0.00 5.05 4.06 0.99 9.730* 17 2.66 0.00 3.223 5.323 0.6055 0.6055*
18 2.66 0.21 5.09 4.10 0.99 9.946* 18 2.66 0.21 3.214 4.936 0.6511 0.6511*
19 2.66 0.00 5.02 4.14 0.88 8.927* 19 2.66 0.00 3.049 4.935 0.6178 0.6178*
20 2.66 0.00 4.98 4.24 0.74 7.620* 20 2.66 0.00 2.759 5.036 0.5478 0.5478*
21 2.66 0.03 5.07 4.32 0.76 7.390* 21 2.66 0.03 3.003 5.662 0.5303 0.5303
22 2.66 0.00 4.89 4.17 0.72 7.603* 22 2.66 0.00 2.581 4.919 0.5246 0.5246
23 2.66 0.00 4.97 4.17 0.80 8.248* 23 2.66 0.00 2.913 4.891 0.5955 0.5955*
24 2.90 0.00 4.89 4.31 0.58 5.943* 24 2.90 0.00 2.704 5.152 0.5248 0.5248
25 2.66 0.03 5.02 4.21 0.81 8.089* 25 2.66 0.03 3.006 5.176 0.5807 0.5807*
24 / 25 18 / 25
Table 6 Comparison of results for each algorithm build the first probabilistic graph model introduced by
GA SEDA GA SEDA GA SEDA Larrañaga et al. [23]. It is an adaptation of the MIMIC algo-
Trial Best Best Worst Worst Reliability Reliability rithm presented by De Bonet et al. [24] to continuous do-
mains. Once the individuals have been generated from the
1 2.66 3.50 11.05 11.28 1 3 algorithm MIMICG C , they must be decoded to be represented
2 3.21 2.56 11.19 11.18 1 1 as a valid operation sequence. Thus, we need a method to
3 2.93 0.91 11.28 11.04 1 1 decode these real vectors into discrete vectors. A fixed integer
4 3.31 0.00 10.85 11.19 1 2 number is assigned for each operation. Each fixed integer
5 2.66 0.03 11.05 10.91 1 4 number is associated with a job. A sort on the continuous
6 2.66 0.00 11.05 11.19 1 4 values of each individual is done. Assigning each continuous
7 2.66 0.00 11.05 11.19 1 3 value to the corresponding fixed integer number that belongs
8 2.66 0.00 11.05 11.19 1 2 to each operation and setting each fixed integer number to a
9 2.66 0.39 10.96 11.19 3 5 job to finish. Figure 12 details an example of a real vector and
10 2.66 0.03 11.05 11.19 3 2 its decoding.
11 2.66 0.00 11.05 11.19 1 2 The second probabilistic graph model aims to determine
12 2.66 0.03 11.05 11.05 1 7 an estimation of distribution model to generate new off-
13 2.66 0.03 11.05 11.19 1 6 spring (machine assignment) using a subset of 'm' selected
14 2.66 0.00 11.05 11.19 1 3 assignments (individuals). To obtain the estimation, we
15 2.66 0.03 10.89 10.91 1 2 used the COMIT algorithm introduced by Baluja and
16 2.66 0.00 10.96 11.19 2 2 Davies [25].
17 2.66 0.00 11.05 11.05 2 2 The third probabilistic graph model aims to determine an
18 2.66 0.21 11.05 11.19 2 3 estimation of distribution model to generate new offspring
19 2.66 0.00 11.05 10.43 1 2 (off-duty hours work shift) using a subset of 'm' selected off-
20 2.66 0.00 10.96 11.19 1 2 duty hours work shift (individuals). Although the number of
21 2.66 0.03 11.05 11.19 2 1 hours is defined for any shift based on current legal guidelines,
22 2.66 0.00 10.89 11.19 1 2 the start time of the shift is not, so we aim to generate
23 2.66 0.00 11.05 11.19 1 3 individuals representing the off-duty hours that would be the
24 2.90 0.00 10.96 11.05 1 4 operators before starting their activities. Again, we used the
25 2.66 0.03 11.05 11.05 2 4 COMIT algorithm to obtain the estimation.
34 / 25 72 / 25
and Bean and Norman [22] can be consulted about continuous SEDA uses a Tabu search method in order to avoid losing
optimization procedures. We used the MIMICG diversity on the evolutionary progress. The Tabu search meth-
C algorithm to
od is based on Pinedo’s [26] research.
Fig. 17 Performance GA
Int J Adv Manuf Technol (2014) 73:3–21 19
best objective value found by any of the algorithm configura- Figure 15 shows the individuals generated by GA in the
tions. Note that for this problem, there are no known effective trails 5, 10, 15, and 20 through a percentiles chart.
exact techniques and comparing against an optimum solution For all trials, GA would converge and got its best value for
is not possible. the response variable, RPI at around 3.02
Table 4 details the average obtained for each trial. We Figure 16 shows the individuals generated by SEDA in the
analyze whether there is a statistically significant difference same trials through a percentiles chart.
between averages of both algorithms. SEDA’s trials were different; these converged and got its
As we can see in Table 4, there is a statistically significant best value below 3.00 for the response variable, RPI.
difference between the averages of both algorithms. The per- Figure 17 shows the performance by GA on each trial.
formance of SEDA was superior in 24 of the 25 trials with α= In all, GA's trials had close median values, around 5 RPI,
0.10 of significance level. and the search was concentrated between 2.5 and 6 RPI. The
Table 5 shows the variance obtained for each trial. We plus symbol (+) indicates where the median is located.
analyze whether there is a statistically significant difference Figure 18 shows the performance by SEDA in each trial.
between variances of both algorithms. SEDA’s performance was different. It got median
As we can see in Table 5, there is no statistically significant values around 4 RPI, but it could achieve better values
difference between variances of both algorithms. The perfor- against GA in almost all trials. SEDA could search in a
mance was the same in 18 of the 25 trials with α=0.01 of more promising area. The plus symbol (+) indicates where
significance level. We consider that the stability of both algo- the median is located.
rithms is practically the same (72 % of the time). The experimental results were analyzed using the analysis
Table 6 details the reliability obtained for each trial. We of variance (ANOVA) method. In the experiment, the main
analyze the amount of times that both algorithms got the best assumptions were checked and accepted. Table 7 details that
value in each trial. there is a statistically significant difference between the
As we can see in Table 6, there is difference between the algorithms.
reliability of both algorithms. The performance of SEDA Figure 19 shows the overall behavior between both
was better in 111 %. It found 38 more times better value algorithms, and Fig. 20 plots the performance metric on
than GA. each trial.
Using a continuous EDA was not necessary to make any 9. Zhang Y, Li X (2011) Estimation of distribution algorithm for per-
mutation flow shops with total flowtime minimization. Comput Ind
modifications in the sampling process in the processing se-
Eng 60:706–718
quence of operations on the machines, as is generally required 10. Chan FTS, Wong TC, Chan LY (2006) Flexible job-shop scheduling
by other algorithms. It allowed for better trust in the data problem under resource constraints. Int J Prod Res 44(11):2071–
against the GA. We consider using three graphical models, 2089
11. Wadhwa S, Rao KS, Chan FTS (2005) Flexibility-enabled
while most EDAs do not apply more than one model. It
lead-time reduction in flexible systems. Int J Prod Res 43(15):
permitted handling the most important variables of the 3131–3162
manufacturing process studied in the sampling mechanism, 12. Chan FTS, Chung SH (2004) A multi-criterion genetic algorithm for
which was refined by the Tabu search method. This strategy order distribution in a demand driven supply chain. Int J Comput
Integr Manuf 17(4):339–351
was created to avoid losing diversity in the evolutionary
13. Chan FTS (2001) The effects of routing flexibility on a
progress of the algorithm. We conclude that the simulation flexible manufacturing system. Int J Comput Integr Manuf
optimization can be an efficient mechanism to handle different 14(5):431–445
manufacturing conditions where there are diverse variable 14. Peña J, Robles V, Larrañaga P, Herves V, Rosales F, Pérez M (2004)
Ga-eda: hybrid evolutionary algorithm using genetic and estimation
interactions such as the FJSP.
of distribution algorithms. Innovations in Applied Artificial
Finally, this research contributes using an EDA as an Intelligence. Berlin/Heidelberg
optimization method for any simulation language. 15. Shim VA, Chen Tan K, Yong Chia J, Kiat Chong J (2011)
Evolutionary algorithms for solving multi-objective travelling sales-
Acknowledgments We would like to express our gratitude to Jon man problem. Flex Serv Manuf J 23:207–241
Fournier and Martin Barnes for their technical assistance on the Quest® 16. Yan Y, Wang G (2007) A job shop scheduling approach based on
platform. simulation optimization. Proceedings of the 2007 I.E. IEEM
17. Sargent R (2007) Verification & validation of simulation models.
Proceedings of the 2007 Winter Simulation Conference
18. Whitner R, Balci O (1989) Guidelines for selecting and using simu-
References lation model verification techniques. Proceedings of the 1989 Winter
Simulation Conference. Washington
19. Pita J, Wang Q (2010) A simulation approach to facilitate
1. Mühlenbein H, Paaß G (1996) From recombination of genes to the manufacturing system design. Int J Simul Model 9–3:152–164
estimation of distributions: I. Binary parameters. Parallel problem 20. Greenwood A, Vanguri S, Eksioglu B, Jain P, Hill T, Miller J, Walden
solving from nature PPSN IV, 178–187 C (2005) Simulation optimization decision support system for ship
2. Chen SH, Chen MC, Chang PC, Zhang Q, Chen YM (2010) panel shop operations. Proceedings of the 2005 Winter Simulation
Guidelines for developing effective estimation of distribution algo- Conference
rithms in solving single machine scheduling problems. Expert Syst 21. Rudolph G (1991) Global optimization by means of distributed
Appl 37:6441–6451 evolution strategies. Parallel problem solving from nature PPSN I.
3. Liu H, Gao L, Pan Q (2011) A hybrid particle swarm optimization Lectures notes in computer science
with estimation of distribution algorithm for solving permutation 22. Bean J, Norman B (1993) Random keys for job shop scheduling
flowshop scheduling problem. Expert Syst Appl 38:4348–4360 problem. The University of Michigan
4. Pan QK, Ruiz R (2012) An estimation of distribution algorithm for 23. Larrañaga P, Exteberria R, Lozano J, Peña J (2000) Optimization in
lot-streaming flow shop problems with setup times. Omega 40:166– continuous domains by learning and simulation of Gaussian net-
180 works. Proceedings of the 2000 Genetic and Evolutionary
5. Chen SH, Chang PC, Cheng T, Zhang Q (2012) A self-guided genetic Computation Conference Workshop Program
algorithm for permutation flowshop scheduling problems. Comput 24. De Bonet J, Isbell C, Viola P (1997) MIMIC: finding optima
Oper Res 39:1450–1457 by estimation probability densities. Adv Neural Inf Process
6. Wang L, Wang S, Xu Y, Zhou G, Liu M (2012) A bi-population Syst 9
based estimation of distribution algorithm for the flexible job-shop 25. Baluja S, Davies S (1997) Combining multiple optimization runs
scheduling problem. Comput Ind Eng 62:917–926 with optimal dependency trees. Carnegie Mellon University
7. Chen YM, Chen MC, Chang PC, Chen SH (2012) Extended artificial 26. Pinedo M (2001) Scheduling. Springer Science + Business Media,
chromosomes genetic algorithm for permutation flowshop schedul- New York
ing problems. Comput Ind Eng 62:536–545 27. Whitley D, Starweather T, Shaner D (1990) The traveling salesman
8. Jarboui V, Eddaly M, Siarry P (2009) An estimation of distribution and sequence scheduling: quality solutions using genetic edge re-
algorithm for minimizing the total flow time in permutation flowshop combination. In: L. Davis (Ed.), Handbook of genetic algorithms,
scheduling problems. Comput Oper Res 36:2638–2646 (pp. 350–372). New York
Copyright of International Journal of Advanced Manufacturing Technology is the property of
Springer Science & Business Media B.V. and its content may not be copied or emailed to
multiple sites or posted to a listserv without the copyright holder's express written permission.
However, users may print, download, or email articles for individual use.