Upload
parmis
View
219
Download
0
Embed Size (px)
Citation preview
Accepted Manuscript
Group shop scheduling with sequence-dependent setup and transportation times
Fardin Ahmadizar, Parmis Shahmaleki
PII: S0307-904X(14)00138-3DOI: http://dx.doi.org/10.1016/j.apm.2014.03.035Reference: APM 9923
To appear in: Appl. Math. Modelling
Received Date: 13 December 2012Revised Date: 6 January 2014Accepted Date: 16 March 2014
Please cite this article as: F. Ahmadizar, P. Shahmaleki, Group shop scheduling with sequence-dependent setup andtransportation times, Appl. Math. Modelling (2014), doi: http://dx.doi.org/10.1016/j.apm.2014.03.035
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customerswe are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, andreview of the resulting proof before it is published in its final form. Please note that during the production processerrors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
1
Group shop scheduling with sequence-dependent setup
and transportation times
Fardin Ahmadizar*, Parmis Shahmaleki
Department of Industrial Engineering, University of Kurdistan, Pasdaran Boulevard,
Sanandaj, Iran
* Corresponding author. Tel./fax: +98-871-6660073
[email protected] (F. Ahmadizar); [email protected] (P. Shahmaleki)
Abstract This paper considers a group shop scheduling problem (GSSP) with sequence-
dependent setup and transportation times. The GSSP provides a general formulation
including the job shop and the open shop scheduling problems. The consideration of setup
and transportation times is among the most realistic assumptions made in the field of
scheduling. In this paper, we study the GSSP with transportation and anticipatory
sequence-dependent setup times, where jobs are released at different times and there are
several transporters to carry jobs. The objective is to find a job schedule that minimizes
the makespan, that is, the time at which all jobs are completed and transported to the
warehouse (or to the customer). The problem is formulated as a disjunctive programming
problem and then prepared in a form of mixed integer linear programming (MILP). Due to
the NP-hardness of the GSSP, large instances cannot be optimally solved in a reasonable
amount of time. Therefore, a genetic algorithm (GA) hybridized with an active schedule
generator is proposed to tackle large-sized instances. Both Baldwinian and Lamarckian
versions of the proposed hybrid algorithm are then implemented and evaluated through
computational experiments.
Keywords: Group shops scheduling; Sequence-dependent setup times; Transportation
2
times; Makespan; Genetic algorithm.
1 Introduction
The GSSP, which frequently occurs in manufacturing environments, includes both
the job shop and the open shop scheduling problems. Hence, it is NP-hard and difficult to
solve optimally. In the GSSP a set of jobs has to be processed on a set of machines, where
the operations of each job are partitioned into a number of groups by taking the
technological constraints into account. That is, the operations that are not subject to
precedence constraints and can be processed in any order are placed in the same group,
while those operations that have to satisfy precedence constraints are placed in distinct
groups.
In the majority of research efforts conducted on scheduling problems, researchers
usually have either ignored setup times or combined them with their corresponding
processing times to simplify the analysis. In recent years, however, it has been of interest
to consider setup times in scheduling decisions. The main reason why scheduling
problems involving setup times (or costs) have attracted a lot of attention is due to the fact
that there are tremendous savings when setup times are explicitly considered [1,2]. The
setup times could be either sequence-independent or sequence-dependent. In the sequence-
independent type, setup depends only on the job to be processed. In general, the sequence-
independent setup times can be simply included in the job processing times. On the other
hand, in the case of sequence-dependent setup times (SDST), setup depends not only on
the job to be processed, but also on the job just completed. For example, Pinedo [3] has
described a paper bag factory where a setup is required whenever a machine switches from
one type of paper bag to another; the setup duration clearly depends on the similarities
between the two consecutive products (e.g., the similarities in size and the number of
3
colours). In such situations, it is not valid to include the setup times in the job processing
times [4].
The SDST can be either non-anticipatory or anticipatory [2]. A setup is non-
anticipatory if it can begin only when both the corresponding job and machine are
available. On the other hand, a setup is anticipatory if it can begin when the machine is
available even when the job is not available to be processed.
In the past, researchers have usually assumed that transportation times between
stages/machines are negligible. Recently, however, a popular assumption made in
scheduling decisions is that it may be impossible to begin the processing of a job on a
machine immediately after the completion of the preceding operation of the job because of
the transportation time; a transporter must first deliver the job between the two stages.
When a transporter reaches a stage, the processing of the delivered job can be started only
if one of the machines available at that stage is ready to receive the job and the setup
required has been completed. If not, the transporter leaves the job in the buffer of the stage
until the processing can begin.
The transportation times could be either job-independent or job-dependent [5]. In
the job-independent type, the magnitude of a transportation time depends only on the
distance between the two consecutive stages/machines, while in the job-dependent type it
is determined by the distance as well as the job to be carried. Moreover, the transportation
system may be multi-transporter or single-transporter [6]. In a multi-transporter system,
there are several (unlimited) transporters to carry jobs; so, a job never has to wait for a
transporter before its transportation. However, in a single-transporter system, all
transportations between stages are carried out by a single transporter; so, a job may wait
for the transporter to return.
When considering simultaneously the SDST and transportation times, there are two
4
cases to be considered. In the first case that corresponds to the anticipatory SDST, the
overlapping of the setups and transportations is allowed, and so, the processing of a job on
a machine can be started if both the transportation and the setup required have been
completed (see, e.g., Fig. 1). However, in the second case that corresponds to the non-
anticipatory SDST, no overlapping of the setups and transportations is allowed, that is, the
setup of a machine can be started after the transportation has been completed. Fig. 2 shows
an example of this case in which, although machine i' is available, it is kept idle before
being set up to process job j.
- Figures 1 & 2 -
Assuming that jobs are released at different times, this paper investigates a GSSP
with two realistic and rarely considered assumptions: (1) the setup times are anticipatory
and sequence-dependent, and (2) the transportation times are job-dependent and the
transportation system is a multi-transporter system. The aim is to minimize the makespan.
A mathematical formulation of the problem is proposed; it is first formulated as a
disjunctive programming problem, and then prepared in a form of MILP. Moreover, to
tackle large size problem instances, a GA hybridized with an active schedule generator is
proposed. Both Baldwinian and Lamarckian versions of the hybrid algorithm are then
implemented and evaluated through a series of computational experiments. To the best of
our knowledge, no similar studies are known in the scheduling context.
The rest of the paper is organized as follows. The next section goes over the
literature on the GSSP as well as the literature on shop scheduling problems with the
SDST and transportation times. In Section 3, the problem is introduced. Sections 4 and 5,
respectively, describe the proposed MILP model and hybrid algorithm, followed by
Section 6 providing the computational results. Finally, the conclusions and future research
directions are stated in Section 7.
5
2 Literature review
The GSSP was first introduced in a mathematical contest in 1997 [7]. Blum and
Samples [8] are among the pioneers considering the GSSP. Assuming that all jobs are
available at time zero, they have developed an ant colony optimization (ACO) algorithm
for the problem with the makespan criterion, in which the setup times are sequence-
independent and the transportation times are ignored. Liu et al. [9] have proposed a tabu
search (TS) algorithm for the same problem. Ahmadizar et al. [10,11] have considered the
GSSP subject to random release dates and processing times. In [10], the total weighted
completion time minimization problem has been formulated as a deterministic MILP
problem, and an ACO algorithm has then been developed for the problem. Moreover,
suggesting a lower bound on the expected makespan, Ahmadizar et al. [11] have proposed
a simulation-based ACO approach for the makespan minimization problem. Recently,
Ahmadizar and Zarei [12] have considered the GSSP subject to fuzzy release dates and
processing times. They have prepared the makespan minimization problem in a form of
deterministic MILP, and then developed a GA for the problem. However, like most other
research efforts conducted on scheduling problems, these studies have neglected the setup
and transportation times.
Although scheduling problems with setup considerations have been widely studied
over the last decade, there are a few research efforts considering simultaneously setup and
transportation times. Rossi and Dini [13] have developed an ACO-based algorithm for
flexible manufacturing systems scheduling in a job shop environment with routing
flexibility, sequence-dependent setup and transportation times. Gröflin and Klinkert [14]
have proposed a TS algorithm to solve a blocking job shop with sequence-dependent
transfer and setup times, where the objective is to minimize the makespan. Moreover,
making the same assumptions, Gröflin et al. [15] have developed an ACO algorithm for a
6
flexible blocking job shop. Naderi et al. [5] have discussed a flexible flow shop with
anticipatory SDST and job-dependent transportation times. They have proposed an
electromagnetism algorithm to minimize the total weighted tardiness. In addition, Naderi
et al. [16] have studied hybrid flow shop problems with non-anticipatory SDST and
transportation times, and developed a simulated annealing algorithm to minimize the total
completion time and total tardiness.
3 Group shop scheduling problem
The GSSP considered in this paper can be stated as follows. There are n jobs to be
processed on a set of m machines. Each job has at most one operation to be processed on
each machine. Each job may be processed on at most one machine at a time, and each
machine can process at most one job at a time. All operations must be processed without
interruption, that is, preemption is not allowed. All machines are available and ready at
time zero, and there exists an unlimited storage capacity between every two machines.
Moreover, each job j has a release date j
r before which its processing cannot be started.
The processing of job j on machine i, referred to as operation (i, j), has a duration ij
p . The
setup times are anticipatory and sequence-dependent; a setup time ij js ′ is incurred between
the processing of jobs j' and j on machine i, where 0i js denotes the setup time to process
job j first on machine i. Similarly as in [15], the setup times are assumed to satisfy the
triangle inequality [17,18], that is, ij j ijj ij js s s′ ′′ ′ ′′+ ≥ , a reasonable assumption according to
practical applications (see, e.g., [19]). In addition, the transportation times are job-
dependent, and it is assumed that there are enough transporters to carry the jobs from a
machine to another, i.e., there is always a transporter available. Let ji it ′ be the time
required to transport job j from machine i' to machine i, where 0j it and
*jit denote the
7
times required to transport job j from the warehouse to machine i and from machine i to
the warehouse (or to the customer), respectively. The time to load and unload a transporter
is included in the transportation time. Like the setup times, the transportation times are
supposed to satisfy the triangle inequality, that is, ji i jii ji i
t t t′ ′′ ′ ′′+ ≥ ; this is, of course, not a
real restriction [20].
It should be noted here that a distinct feature of the GSSP is that, taking the
technological constraints into account, the operations of each job are partitioned into a
number of groups, such that the operations in the same group are unordered while those in
two distinct groups satisfy the predefined precedence constraint between the groups. If
each group consists of just one operation, the GSSP is equivalent to a job shop scheduling
problem. While in the other special case where all operations of each job belong to just
one group, the GSSP is equivalent to an open shop scheduling problem.
In the GSSP under consideration, processing orders for all machines as well as all
groups have to be determined so as to minimize the makespan, that is, the time at which all
jobs are completed and transported to the warehouse.
Let the decision variable ij
x be the earliest possible starting time of operation (i, j),
and let max
C denote the makespan. Given a feasible solution to the problem, the operation
starting times clearly satisfy the following conditions: if (i, j) is the first operation of job j
and the first operation on machine i, ( )0 0max ,ij j j i i j
x r t s= + ; if (i, j) is the first operation
of job j and is processed just after operation (i, j') on machine i,
( )0max ,ij j j i ij ij ij jx r t x p s′ ′ ′= + + + , where ij ijx p′ ′+ is the completion time of operation (i,
j'); if job j is processed on machine i' and then on machine i and (i, j) is the first operation
on machine i, ( )0max ,ij i j i j ji i i jx x p t s′ ′ ′= + + ; and finally, if job j is processed on machine i'
and then on machine i and (i, j) is processed just after operation (i, j') on machine i,
8
( )max ,ij i j i j ji i ij ij ij jx x p t x p s′ ′ ′ ′ ′ ′= + + + + . The makespan of the schedule is then equal to
{ }*( , )max ij ij ji
i jx p t+ + .
4 MILP model
In the following, the problem under consideration is first formulated as a
disjunctive program and then prepared in a form of MILP. The GSSP can be formulated as
the following disjunctive programming model:
Minimize maxC , subject to:
( , )&( , ) with ( , ) preceding ( , )ij i j i j ji ix x p t i j i j i j i j′ ′ ′′ ′− ≥ + ∀ (1)
or ( , )&( , ) belonging to the same groupij i j i j ji i
i j ij ij jii
x x p t
i j i j
x x p t
′ ′ ′
′ ′
− ≥ +
′∀
− ≥ +
(2)
or ( , ) &( , )ij ij ij ij j
ij ij ij ijj
x x p s
i j i j
x x p s
′ ′ ′
′ ′
− ≥ +
′∀
− ≥ +
(3)
0 ( , )ij j j ix r t i j≥ + ∀ (4)
0 ( , )ij i jx s i j≥ ∀ (5)
max * ( , )ij ij ji
C x p t i j− ≥ + ∀ (6)
Constraints (1) ensure that each operation (i, j) cannot start before all operations
belonging to preceding groups of job j are completed and the job is transported to machine
i. Disjunctive constraints (2) ensure that some ordering exists among operations belonging
to every group. Disjunctive constraints (3) ensure that some ordering exists among
operations requiring the same machine for their execution. It is noted that under these
constraints if, for example, job j is scheduled on machine i immediately after job j', then
the processing of job j cannot be started before the processing of job j' is completed and
9
the machine is set up to process job j. Constraints (4) ensure that the processing of each
job cannot start before it is released and transported from the warehouse to the machine
performing its first operation. Constraints (5) ensure that each machine cannot start to
process its first job before it is set up. Finally, constraints (6) ensure that the makespan is
equal to the time at which all jobs are completed and transported to the warehouse.
Let ji i
y ′ and ij j
z ′ be binary variables related to select one ordering in each
disjunction, and L a large number. Disjunctive constraints (2) and (3) can then be
respectively reduced to the following linear constraints, thus preparing the GSSP under
consideration in a form of MILP.
(1 )
( , )&( , ) belonging to the same groupij i j i j ji i ji i
i j ij ij jii ji i
x x p t L y
i j i j
x x p t Ly
′ ′ ′ ′
′ ′ ′
− ≥ + − −
′∀
− ≥ + −
(7)
(1 )
( , ) &( , )ij ij ij ij j ij j
ij ij ij ijj ij j
x x p s L z
i j i j
x x p s Lz
′ ′ ′ ′
′ ′ ′
− ≥ + − −
′∀
− ≥ + −
(8)
5 Genetic algorithm
Due to the NP-hardness of the problem, large instances cannot be optimally solved
in a reasonable amount of time through the proposed MILP model. Thus, an efficient GA
is proposed to tackle large size problem instances.
GAs are effective, practical and robust meta-heuristics inspired from the
evolutionary process occurring in natural systems. In a GA, a population of individuals
(candidate solutions) evolves through generations by the use of selection, crossover and
mutation. Important issues that must be considered in designing a GA are chromosome
representation, population initialization, genetic operators and termination criterion. So
far, many researchers have successfully applied GAs to solve complicated optimization
10
problems in different fields of scientific and engineering disciplines, including shop
scheduling problems; see, e.g., [12,21-29]. To study more details about GAs, the reader is
referred to [30].
The general structure of the algorithm proposed to solve the GSSP under
consideration is then expressed as follows:
Step 1. (Initialization) For the initial population, generate randomly a set of feasible
solutions, and then, improve each of them.
Step 2. (Parent selection) Apply an operation to the population to select parents.
Step 3. (Crossover) Apply a crossover operation to the parents.
Step 4. (Mutation) Apply a mutation operation to the resulting offspring, and then,
improve each of them.
Step 5. (Survivor selection) Apply an operation to the population together with the
resulting offspring to select individuals for the next generation.
Step 6. (Termination) Repeat steps 2 to 5 until the termination criterion is satisfied.
5.1 Chromosome representation
The chromosome representation, which maps solution characteristics into a string
of symbols, is the first step in designing a GA for a particular problem. It sets up a bridge
between the original problem space and the space being searched by the evolutionary
process. Thus, defining an appropriate chromosome representation strategy is an important
issue that affects the algorithm performance.
To describe and manipulate a solution to the GSSP, in the proposed GA a two-part
chromosome representation, similar to that of [12], is utilized. The first part of a
chromosome is associated with disjunctive constraints (2) and indicates processing orders
for all groups by employing one permutation for each group having more than one
11
operation. Taking the first part into account, the other part of the chromosome associated
with disjunctive constraints (3) then indicates processing orders for all machines by
employing just one permutation with repetition of job numbers, allowing each job to be
repeated exactly the number of times equal to its operations. In this manner, each
chromosome presents a feasible solution.
Fig. 3 shows an example of a chromosome representation for a simple problem
instance consisting of three jobs and three machines, where each job has three operations.
Suppose that, taking into consideration the technological constraints, the operations of job
1 are partitioned into three groups, those of job 2 into two groups, and those of job 3 into
one group. The first group of job 1 consists of operation (1, 1), its second group has
operation (2, 1), and its third group has operation (3, 1). The first group of job 2 consists
of operations (1, 2) and (3, 2), and its second group has operation (2, 2). Moreover, the
unique group of job 3 consists of operations (1, 3), (2, 3) and (3, 3). From part 1 of the
chromosome shown in Fig. 3, the processing order for each of the two groups having more
than one operation is first fixed. Then, from part 2, the first ‘2’ denotes the first operation
of job 2, that is, operation (3, 2), the second ‘2’ denotes the second operation of job 2, that
is, operation (1, 2), and so on. Accordingly, from this part of the chromosome, the
processing order for each of the three machines is determined; e.g., the job sequence on
machine 2 is job 1, job 3, and then, job 2.
- Figure 3 -
5.2 Active schedule generation
To improve a feasible solution represented in form of a chromosome, an active
schedule generation algorithm (ASGA) is proposed which transforms the chromosome
into an active schedule, i.e., a schedule characterized by the property that it is not possible
12
to start an operation any earlier without delaying another operation [3]. The proposed
ASGA is applied to a given chromosome in the following way. A list of gaps, that is, idle
time intervals, is determined for each machine as well as each job. Starting from the
operation at the first position in the second part of the chromosome, each operation (i, j) is
scheduled at the earliest time possible, by considering both the technological constraints
and the gaps on machine i and job j; the gaps are then immediately updated. In order to
explain this algorithm in detail, let i
gapm and j
gapj be the sets of gaps for machine i and
job j, respectively. The ASGA can then be described as follows:
Step 1. For each machine i and each job j, initialize i
gapm to [0, )+∞ and j
gapj to
[ , )j
r +∞ .
Step 2. For k=1 to total number of operations, do the following:
Step 2.1. Consider operation (i, j) at position k in part 2 of the chromosome;
Step 2.2. Determine intervals 1 2[ , ]I I so that operation (i, j) can be assigned to time
slot 1 2[ , ]I I ;
Step 2.3. Among the intervals determined in step 2.2, select interval 1 2[ , ]st st with
minimum 1st , and set
1ijx st= ;
Step 2.4. Remove from i
gapm interval [ , ]ij ij ijx x p+ . If operation (i, j) is the last
scheduled operation among all operations belonging to the same group,
remove from jgapj all the intervals before the latest completion time among
all operations belonging to the group. Otherwise remove from jgapj only
interval [ , ]ij ij ijx x p+ .
In order to clarify step 2.2 of the above proposed ASGA, let us assume
1 2[ , ]i
Im Im gapm∈ is the gap between two scheduled operations (i, j') and (i, j''), that is,
13
1Im and 2Im are, respectively, the completion time of job j' and the starting time of job j''
on machine i. Clearly, operation (i, j) can be assigned to time slot 1 2[ , ]Im Im if
2 1 ij j ij ijjIm Im s p s′ ′′− ≥ + + . Now, assume 1 2[ , ]
jIj Ij gapj∈ is the gap between two scheduled
operations (i', j) and (i'', j), that is, under the current partial schedule job j is completed on
machine i' at 1Ij , and then, it is started on machine i'' at 2Ij . It is clear that operation (i, j)
can be assigned to time slot 1 2[ , ]Ij Ij if 2 1 ji i ij jii
Ij Ij t p t′ ′′− ≥ + + (considering step 2.4, since
1 2[ , ]j
Ij Ij gapj∈ , operations (i, j) and (i'', j) certainly belong to the same group). Therefore,
step 2.2 can be stated as follows: determine intervals
1 2 1 2 1 2[ , ] [ , ] [ , ]ij j ijj ji i jii
I I Im s Im s Ij t Ij t′ ′′ ′ ′′= + − ∩ + − so that 2 1 ijI I p− ≥ . It is noteworthy
that there are some special cases, e.g., in the case where 1 0Im = , that is, where machine i
processes job j first, 1 ij jIm s ′+ is replaced by 0i j
s ; or, in the case where 1 jIj r= , that is,
where job j is first processed on machine i, 1 ji iIj t ′+ is replaced by 0j j i
r t+ .
As an illustration, let us consider the previously mentioned problem instance with
the release dates, processing, setup and transportation times given in Tables 1–4,
respectively. We assume, for simplicity, that the transportation times are job-independent.
Applying step 1 of the proposed ASGA then results in [0, )i
gapm = +∞ for i=1,…,3,
1 [2, )gapj = +∞ , 2 [3, )gapj = +∞ , and
3 [2, )gapj = +∞ . In addition, Table 5 summarizes the
application of step 2 to the chromosome shown in Fig. 3, resulting in the (active) schedule
presented in Fig. 4.
- Tables 1–5 -
- Figure 4 -
The proposed GA hybridized with the ASGA may then be implemented in two
different versions, namely Baldwinian (GAB) and Lamarckian (GA
L) versions. According
14
to the Baldwinian evolution, applying the ASGA to a chromosome only affects its fitness
value, but not its genetic code; the chromosome in selection can then benefit from the
improved fitness. On the contrary, according to the Lamarckian evolution, applying the
ASGA not only affects the fitness value of the chromosome, but also causes changes to its
genetic code that can be inherited in following generations. Accordingly, in GAL
developed for the GSSP under consideration, considering the active schedule generated,
the chromosome's genetic code is altered in a way as follows. All operations are first
sequenced in the ascending order of their starting times, where ties are broken randomly.
Then, for each group in the first part of the chromosome, the operation permutation is
changed in accordance with the sequence, and finally, replacing every operation in the
sequence by its job number, the resulting sequence is inserted into the second part of the
chromosome.
Applying the above method to the schedule shown in Fig. 4 then results in a new
genetic code, as presented in Fig. 5.
- Figure 5 -
It should be noted here that the total number of operations could be at most equal
to n × m (as a result, the chromosome’s length could be at most twice n × m), and for
every machine i and every job j, i
gapm and j
gapj could contain at most n and m slots,
respectively. Thus, the time complexity of the ASGA, clearly dictated by steps 2, 2.2 and
2.3, is 2 2( )O n m . Since all the operation starting times are determined by the ASGA, in
GAB as well as in GA
L calculating the makespan takes (log( ))O nm time. Moreover, the
time complexity of the method applied in GAL to alter the chromosome's genetic code is
obviously ( log( ))O nm nm . Therefore, the overall time complexity of the improvement
process together with the objective evaluation is determined by the ASGA, and
consequently, GAB owns the same worst-case time complexity as GAL, that is, Baldwinian
15
version is not asymptotically faster than Lamarckian version. In the other hand, the time
spent doing the improvement process together with the objective evaluation clearly
dominates the time required by all the other phases of the proposed GA hybridized with
the ASGA. Let PopS and Iter be, respectively, the population size and the number of
generations, i.e., the number of times steps 2 to 5 of the GA are executed. The time
complexity of GAB as well as GAL is then
2 2( )O Iter PopS n m .
5.3 Selection operators
In the proposed GA, the classical roulette wheel mechanism [30,31] more likely
selecting the fitter chromosomes is adopted as the parent selection operation. The roulette
wheel method is implemented in the current population to select, with replacement, a
number of parents equal to PopS, where the fitness of each individual q is calculated as
follows:
max max( )Pop q
qfit C C= − (9)
where max
PopC is the maximum makespan among the population and max
qC the makespan for
individual q.
Moreover, in the survivor selection phase individuals are selected for the next
generation among both the current population and their offspring. A combination of the
elitism strategy and the roulette wheel method is adopted as the survivor selection
operation. First, a predefined percentage ElitP of the new population is filled by the
current best chromosomes. The rest is then filled according to the result of the roulette
wheel mechanism, where the fitness of each individual q is calculated as follows:
max max( )Pop Off q
qfit C C+= − (10)
where max
Pop OffC
+ is the maximum makespan among the set of non-elite individuals of the
16
current population and their offspring.
5.4 Variation operators
Crossover as the main variation operator of a GA recombines the genetic codes of
a pair of parents in order to generate two offspring, i.e., two new solutions in as yet
unvisited regions of the search space. In this study, a combination of two different
operators is adopted as the crossover operator, which is then applied to each pair of
parents according to a predefined crossover probability CrosP. For each group in part 1,
the order crossover (OX) [32] is separately applied with a probability OXP, and for part 2
the generalized position crossover (GPX) [33] with a probability GPXP.
Mutation, performed by randomly changing the gene values of a chromosome,
takes place after recombination in order to prevent premature convergence. As the
mutation operator, the well-known swap mutation exchanging the values of two randomly
selected genes is adopted, which is then applied with a probability MutP. With a
probability SwP, the swap mutation is applied to (just) one randomly selected group in part
1, while it is certainly applied to part 2.
6 Computational results
A computational experiment is conducted in order to assess the performance of the
proposed MILP model as well as the performance of the proposed GA hybridized with the
ASGA. In the literature, there is only one GSSP instance, called whizzkids97, consisting of
15 machines, 20 jobs, and 197 operations partitioned into 124 groups [7]. In the original
instance, of course, the jobs are all available at time zero, and the transportation and setup
times are not considered. Therefore, a number of problem instances with different sizes,
from 5 jobs and 5 machines to 25 jobs and 25 machines, are randomly generated as
17
follows. For an instance with n jobs and m machines, assuming that each job consists of m
operations, a permutation of the integers 1 to m is randomly generated for each job; the
first integer in the permutation then specifies the machine required to process its first
operation, the second integer the machine required to process its second operation, and so
on. The operations of the job are then partitioned into groups by taking into consideration
the permutation; two consecutive operations belong to the same group only if they require
machines i and i+1 or i and i-1 for their execution (e.g., let the permutation generated for
job j – in a problem instance with 5 machines – be 4, 3, 2, 5, 1; then the operations of job j
are partitioned into 3 groups: the first group consists of operations (4, j), (3, j) and (2, j),
the second and third groups consist of operations (5, j) and (1, j), respectively). The job
release dates are generated from a uniform distribution between 5 and 30, as in [10,11].
Moreover, similarly as in [5], the processing and transportation times are uniformly
sampled from the ranges [1, 99] and [1, 30], respectively; the duration of SDST is then
defined as 25%, 50%, 100%, or 125% of the maximum processing time. Accordingly, we
have four scenarios for each problem instance; in the first scenario the setup times are
generated from a uniform distribution between 1 and 25, in the second scenario from a
uniform distribution between 1 and 50, and so on. For whizzkids97, of course, only the
release dates, transportation and setup times are randomly generated. It should be noted
that, in the data generation process, SDST as well as transportation times have been
chosen such that they satisfy the triangle inequality.
The proposed GA has been coded in Visual C#.NET 2008 and run on laptop with
Intel Pentium-4 2.0 GHz CPU and 2 GB RAM. In the preliminary experiment, different
values for the numeric parameters have been considered; PopS has been tested between
100 and 700 in increments of 100, ElitP between 0.1 and 0.5 in increments of 0.1, CrosP
between 0.8 and 1 in increments of 0.05, OXP between 0.3 and 0.7 in increments of 0.1,
18
GPXP between 0.8 and 1 in increments of 0.05, MutP between 0.1 and 0.5 in increments
of 0.1, and SwP between 0.5 and 1 in increments of 0.1. To make the performance of the
GA robust, each combination of the parameter values has been tested on some instances
selected randomly. The following values have then been superior: PopS = 500, ElitP = 0.3,
CrosP = 0.95, OXP =0.5, GPXP = 0.95, MutP = 0.3 and SwP = 0.7. The algorithm has
then been run 10 replicates for each problem instance, and the maximum (Max), average
(Avg) and minimum (Min) of the makespans obtained have been provided. In addition, the
CPU time limit of each run at which the GA is terminated has been set by referring to the
problem size.
As mentioned earlier, the proposed GA hybridized with the ASGA is implemented
in its Baldwinian version (GAB) as well as its Lamarckian version (GAL). A question that
may arise is whether the GA does not perform better without the ASGA but with
generating an additional number of generations. Accordingly, in order to evaluate the
impact of the proposed ASGA, each problem instance has been solved using the
Darwinian version of the proposed GA (GAD) in which the ASGA is not applied at all. In
GAD, no gaps are determined and a schedule is deduced from a chromosome by simply
putting the operations in the schedule according to their order in the second part of the
chromosome; when operation (i, j) is scheduled, the next operation of job j as well as the
next operation on machine i can only be started after the completion of operation (i, j). As
the schedule obtained in this way only has the property that no operation can be completed
earlier without changing the order of processing on the machines as well as inside the
groups, it is semi-active (not necessarily active) [3]. Furthermore, for each problem
instance the MILP model has been solved using CPLEX 11 with a time limit of 2 hours.
The results obtained are summarized in Table 6, where the solution quality is measured by
the mean percentage difference from the best found solution (BFS). If the BFS is not
19
bracketed, it means that the optimality of the BFS has been proved. In addition, LB stands
for lower bound. We derive a lower bound for the problem under consideration. Let j
last
be the set of all operations belonging to the last group of job j. For each operation (i, j)
belonging to gth group of job j, let ij
set denote the set of all operations belonging to
groups g and g-1; if operation (i, j) belongs to the first group of job j, ijset consists of all
operations belonging to this group as well as dummy operation (0, j) denoting the
warehouse. It is then easy to establish the following lower bound for the makespan:
( )*( , ) ( , ) 0,..,1,.., 1,..,
1 1
max max min min , max minij j
m n
j ij ji i ji ij ij ji j set i j last j nj n i m
i j
LB r p t t p s′ ′′ ′∈ ∈ == =
= =
= + + + +
∑ ∑ (11)
- Table 6 -
From Table 6, as expected, it becomes difficult to use the proposed MILP model
when the problem size – particularly the number of jobs – increases; large instances
cannot be optimally solved in a reasonable amount of computing time. Moreover, although
GAD performs well for small instances, it is the worst among the versions of the GA,
confirming the impact of the proposed ASGA. Finally, from the computational results it is
evident that the proposed hybrid algorithm performs better when mimicking the
Lamarckian evolution than when mimicking the Baldwinian evolution; indeed, it is
suggested to apply the ASGA to a chromosome so as to not only improve its fitness value,
but also cause changes to its genetic code inherited in subsequent generations.
7 Conclusions and future research
The GSSP provides a general formulation including the other shop scheduling
problems such as the job shop and the open shop scheduling problems. This study is the
first dealing with a GSSP with sequence-dependent setup and transportation times.
Assuming that jobs are released at different times, this paper investigates the GSSP where
20
the SDST are anticipatory, the transportation times are job-dependent and the
transportation system is a multi-transporter system. The objective is to find a job schedule
that minimizes the makespan. A mathematical formulation of the problem is developed; it
is first formulated as a disjunctive program, and then prepared in a form of MILP.
Moreover, due to the NP-hardness of the GSSP, a GA hybridized with an ASGA is
proposed to tackle large-sized instances. Both Baldwinian and Lamarckian versions of the
hybrid algorithm are then implemented and evaluated through computational experiments.
The computational results are given to show the power of the proposed algorithm, in
particular its Lamarckian version, for producing very good solutions at a reasonable CPU
time.
A number of possible, significant extensions to this study could be investigated in
future research. It would be interesting to consider the case in which the SDST are non-
anticipatory; so, the setup of a machine cannot be started before the transportation has
been completed. Another extension would be to consider the system in which all
transportations between machines are carried out by a single transporter (e.g., a single
robot); as a result, a job may wait for the transporter to return.
References
1. A. Allahverdi, H.M. Soroush, The significance of reducing setup times/setup costs, European
Journal of Operational Research 187 (2008) 978–984.
2. A. Allahverdi, C.T. Ng, T.C.E. Cheng, M.K. Kovalyov, A survey of scheduling problems with
setup times or costs, European Journal of Operational Research 187 (2008) 985–1032.
3. M. Pinedo, Scheduling: Theory, Algorithms, and Systems, 3rd ed., Springer, New York, 2008.
4. K.R. Baker, D. Trietsch, Principles of Sequencing and Scheduling, John Wiley & Sons, New
Jersey, 2009.
5. B. Naderi, M. Zandieh, M.A.H.A. Shirazi, Modeling and scheduling a case of flexible
flowshops: Total weighted tardiness minimization, Computers & Industrial Engineering 57 (2009)
1258–1267.
21
6. D.R. Sule, Industrial scheduling, PWS Publishing Company, USA, 1996.
7. http://www.win.tue.nl/whizzkids/1997.
8. C. Blum, M. Sampels, An ant colony optimization algorithm for shop scheduling problems,
Journal of Mathematical Modelling and Algorithms 3 (2004) 285–308.
9. S.Q. Liu, H.L. Ong, K.M. Ng, A fast tabu search algorithm for the group shop scheduling
problem, Advances in Engineering Software 36 (2005) 533–539.
10. F. Ahmadizar, M. Ghazanfari, S.M.T. Fatemi Ghomi, Application of chance-constrained
programming for stochastic group shop scheduling problem, International Journal of Advanced
Manufacturing Technology 42 (2009) 321–334.
11. F. Ahmadizar, M. Ghazanfari, S.M.T. Fatemi Ghomi, Group shops scheduling with makespan
criterion subject to random release dates and processing times, Computers & Operations Research
37 (2010) 152–162.
12. F. Ahmadizar, A. Zarei, Minimizing makespan in a group shop with fuzzy release dates and
processing times, International Journal of Advanced Manufacturing Technology 66 (2013) 2063–
2074.
13. A. Rossi, G. Dini, Flexible job-shop scheduling with routing flexibility and separable setup
times using ant colony optimisation method, Robotics and Computer-Integrated Manufacturing 23
(2007) 503–516.
14. H. Gröflin, A. Klinkert, A new neighborhood and tabu search for the blocking job shop,
Discrete Applied Mathematics 157 (2009) 3643–3655.
15. H. Gröflin, D.N. Pham, R. Bürgy, The flexible blocking job shop with transfer and set-up
times, Journal of Combinatorial Optimization 22 (2011) 121–144.
16. B. Naderi, M. Zandieh, A.K.G. Balagh, V. Roshanaei, An improved simulated annealing for
hybrid flowshops with sequence-dependent setup and transportation times to minimize total
completion time and total tardiness, Expert Systems with Applications 36 (2009) 9625–9633.
17. C. Artigues, P. Lopez, P.D. Ayache, Schedule generation schemes for the job-shop problem
with sequence-dependent setup times: Dominance properties and computational analysis, Annals
of Operations Research 138 (2005) 21–52.
18. C. Artigues, D. Feillet, A branch and bound method for the job-shop problem with sequence-
dependent setup times, Annals of Operations Research 159 (2008) 135–159.
19. P. Brucker, O. Thiele, A branch and bound method for the general-shop problem with
sequence-dependent setup times, OR Spektrum 18 (1996) 145–161.
20. J. Hurink, S. Knust, Tabu search algorithms for job-shop problems with a single transport
robot, European Journal of Operational Research 162 (2005) 99–111.
21. L.D. Giovanni, F. Pezzella, An improved genetic algorithm for the distributed and flexible job-
shop scheduling problem, European Journal of Operational Research 200 (2010) 395–408.
22. J. Behnamian, S.M.T. Fatemi Ghomi, Hybrid flowshop scheduling with machine and resource-
22
dependent processing times, Applied Mathematical Modelling 35 (2011) 1107–1123.
23. S.M. Kamrul Hasan, R. Sarker, D. Essam, Genetic algorithm for job-shop scheduling with
machine unavailability and breakdowns, International Journal of Production Research 49 (2011)
4999–5015.
24. C.C. Wu, W.H. Wu, P.H. Hsu, K. Lai, A two-machine flowshop scheduling problem with a
truncated sum of processing-times-based learning function, Applied Mathematical Modelling 36
(2012) 5001–5014.
25. J. Behnamian, S.M.T. Fatemi Ghomi, F. Jolai, O. Amirtaheri, Minimizing makespan on a
three-machine flowshop batch scheduling problem with transportation using genetic algorithm,
Applied Soft Computing 12 (2012) 768–777.
26. J.C. Chen, C.C. Wu, C.W. Chen, K.H. Chen, Flexible job shop scheduling with parallel
machines using genetic algorithm and grouping genetic algorithm, Expert Systems with
Applications 39 (2012) 10016–10021.
27. Q. Zhang, H. Manier, M.A. Manier, A genetic algorithm with tabu search procedure for
flexible job shop scheduling with transportation constraints and bounded processing times,
Computers & Operations Research 39 (2012) 1713–1723.
28. F. Ahmadizar, M. Hosseinabadi Farahani, A novel hybrid genetic algorithm for the open shop
scheduling problem, International Journal of Advanced Manufacturing Technology 62 (2012)
775–787.
29. S.H. Chen, M.C. Chen, P.C. Chang, V. Mani, Multiple parents crossover operators: A new
approach removes the overlapping solutions for sequencing problems, Applied Mathematical
Modelling 37 (2013) 2737–2746.
30. A.E. Eiben, J.E. Smith, Introduction to Evolutionary Computing, Springer, Berlin, 2003.
31. S.N. Sivanandam, S.N. Deepa, Introduction to genetic algorithms, Springer, New York, 2008.
32. L. Davis, Job shop scheduling with genetic algorithms, in: Proceedings of the First
International Conference on Genetic Algorithms and Their Applications, Hillsdale, NJ, 1985, pp
136–140.
33. D.C. Mattfeld, Evolutionary Search and the Job Shop: Investigations on Genetic Algorithms
and Production Scheduling, Springer, Berlin, 1995.
23
Table 1 Release times for the example
Job j 1 2 3
rj 2 3 2
24
Table 2 Processing times for the example
Job j 1 2 3
p1j 4 3 4
p2j 2 4 5
p3j 2 3 2
25
Table 3 Sequence-dependent setup times for the example
Machine i 1 2 3
Job j 1 2 3 1 2 3 1 2 3
si0j 2 1 1 4 3 3 5 4 5
si1j - 3 2 - 5 4 - 1 1
si2j 1 - 3 2 - 5 2 - 1
si3j 2 2 - 1 2 - 1 1 -
26
Table 4 Transportation times for the example
Machine i 1 2 3
tj0i 3 2 1
tj1i - 4 2
tj2i 4 - 2
tj3i 2 2 -
tji* 3 2 2
27
Table 5 Application of step 2 of the proposed ASGA to the numerical example
k (i, j) [st1, st2] xij gapmi gapjj
1 (1,1) [5, )+∞ 5 [0,5] [9, )∪ +∞ [9, )+∞
2 (3,2) [4, )+∞ 4 [0,4] [7, )∪ +∞ [3, 4] [7, )∪ +∞
3 (2,1) [13, )+∞ 13 [0,13] [15, )∪ +∞ [15, )+∞
4 (3,1) [17, )+∞ 17 [0,4] [7,17] [19, )∪ ∪ +∞ [19, )+∞
5 (1, 2) [12, )+∞ 12 [0,5] [9,12] [15, )∪ ∪ +∞ [15, )+∞
6 (1, 3) [18, )+∞ 18 [0,5] [9,12] [15,18] [22, )∪ ∪ ∪ +∞ [2,18] [22, )∪ +∞
7 (2, 3) [4,12] 4 [0,4] [9,13] [15, )∪ ∪ +∞ [2, 4] [9,18] [22, )∪ ∪ +∞
8 (2,2) [20, )+∞ 20 [0,4] [9,13] [15, 20] [24, )∪ ∪ ∪ +∞ [24, )+∞
9 (3, 3) [11,16] 11 [0,4] [7,11] [13,17] [19, )∪ ∪ ∪ +∞ [2,4] [9,11] [13,18] [22, )∪ ∪ ∪ +∞
28
Table 6 Computational results for problem instances
MILP
GA
GAD GAB GAL
n-m Scenario LB BFS Quality Time Min Avg Max Min Avg Max Min Avg Max Time
5-5 1 370 426 0 1 0 0 0 0 0 0 0 0 0 10
2 370 431 0 1 0 0.27 0.94 0 0 0 0 0 0 10
3 370 465 0 2 0 0.27 0.94 0 0.21 0.64 0 0 0 10
4 523 626 0 2 0 0.47 1.43 0 0 0 0 0 0 10
Average 0 1.5 0 0.25 0.83 0 0.05 0.16 0 0 0 10
5-6 1 411 501 0 1 0 0 0 0 0 0 0 0 0 10
2 411 513 0 1 0 0 0 0 0 0 0 0 0 10
3 437 555 0 2 0 0.11 0.46 0 0 0 0 0 0 10
4 475 589 0 2 0 0.14 0.53 0 0 0 0 0 0 10
Average 0 1.5 0 0.06 0.25 0 0 0 0 0 0 10
6-5 1 432 512 0 1 0 0 0 0 0 0 0 0 0 11
2 447 523 0 2 0 0.26 0.81 0 0.18 0.52 0 0 0 11
3 447 537 0 2 0 0.43 0.91 0 0.24 0.58 0 0 0 11
4 508 610 0 2 0 0.34 0.87 0 0 0 0 0 0 11
Average 0 1.6 0 0.26 0.65 0 0.10 0.27 0 0 0 11
6-6 1 583 625 0 4 0.32 0.32 0.32 0 0.32 0.32 0 0 0 13
2 583 629 0 6 0 2.43 4.29 0 0.95 2.86 0 0.47 2.86 13
3 583 698 0 6 0 1.14 3.15 0 0.57 2.57 0 0 0 13
4 583 791 0 6 0 0.93 2.52 0 0.35 2.27 0 0.27 0.75 13
Average 0 5.5 0.08 1.21 2.57 0 0.55 2.01 0 0.19 0.90 13
6-7 1 534 667 0 7 0 0.81 1.71 0 0 0 0 0 0 14
2 534 678 0 7 0.14 1.28 2.45 0 0.76 1.38 0 0 0 14
3 551 681 0 10 0.11 1.31 2.66 0 0.27 1.63 0 0 0 14
4 596 705 0 10 0.21 0.85 3.53 0.09 0.42 0.92 0 0.14 0.61 14
Average 0 8.5 0.11 1.06 2.59 0.02 0.36 0.98 0 0.03 0.15 14
7-6 1 572 693 0 345 0.18 0.49 0.83 0 0.28 0.66 0 0 0 19
2 572 704 0 452 0 1.16 2.73 0 0.37 0.75 0 0 0 19
3 589 722 0 1210 0.46 1.88 2.59 0.26 1.62 2.10 0 0.18 0.54 19
4 623 761 0 1890 0.25 2.07 3.06 0.20 0.57 1.15 0 0.14 0.42 19
Average 0 974 0.22 1.40 2.30 0.11 0.71 1.16 0 0.08 0.24 19
7-7 1 520 689 0 420 0 0.87 2.17 0 0.50 1.01 0 0 0 25
2 525 730 0 732 0 0.91 1.98 0 0.68 1.02 0 0.41 0.90 25
3 547 790 0 3240 0.50 0.75 3.51 0 0.63 2.65 0 0.25 0.75 25
4 612 (848) 0 7200 0.23 0.54 3.30 0.23 0.37 1.65 0.23 0.23 0.23 25
Average 0 2898 0.18 0.77 2.74 0.05 0.55 1.58 0.05 0.22 0.47 25
7-8 1 563 678 0 1250 0 0.34 1.02 0 0.22 0.76 0 0 0 27
2 563 691 0 4320 0 1.56 2.04 0 0.53 0.88 0 0 0 27
3 588 (702) 0.05 7200 0.09 0.71 2.51 0 0.60 1.21 0 0.11 0.51 27
4 615 (782) 0.11 7200 0.27 0.94 2.82 0.08 0.67 1.43 0 0.17 0.47 27
Average 0.04 4992 0.09 0.89 2.10 0.02 0.50 1.07 0 0.04 0.24 27
29
8-7 1 681 842 0 1140 0.15 0.32 0.79 0 0.09 0.56 0 0.04 0.13 28
2 705 876 0 6750 0.28 0.51 1.94 0.17 0.34 0.75 0 0.10 0.22 28
3 735 (892) 0.09 7200 0.78 1.83 3.04 0.59 1.58 2.90 0 0.87 1.10 28
4 776 (991) 1.71 7200 1.21 2.77 4.09 0.31 1.05 2.11 0 0.66 1.97 28
Average 0.45 5572 0.60 1.36 2.46 0.27 0.76 1.58 0 0.42 0.85 28
8-8 1 623 853 0 1690 0.61 0.94 1.88 0 0.35 0.96 0 0.22 0.51 34
2 673 (871) 0.67 7200 0.74 1.07 1.75 0.18 0.49 1.43 0 0.37 1.26 34
3 710 (931) 0.42 7200 1.02 2.72 4.32 0.64 2.19 3.28 0 0.74 1.48 34
4 742 (1174) 0 7200 1.31 3.65 4.88 0.72 1.81 3.47 0.14 1.15 2.51 34
Average 0.27 5822 0.92 2.09 3.21 0.38 1.21 2.28 0.03 0.62 1.44 34
5-10 1 444 770 0 5 0 1.48 2.98 0 0 0 0 0 0 14
2 444 857 0 17 0 0.80 3.50 0 0.14 1.40 0 0.14 1.4 14
3 451 937 0 24 0 0. 32 0.90 0 0 0 0 0 0 14
4 461 979 0 27 0 0.83 1.83 0 0.10 0.30 0 0 0 14
Average 0 18.3 0 0.86 2.30 0 0.06 0.43 0 0.04 0.35 14
10-5 1 712 760 0 632 0.92 1.46 1.97 0 0.75 1.44 0 0.22 1.31 25
2 735 787 0 2431 1.90 2.90 5.97 1.90 2.54 3.17 1.39 2.19 3.17 25
3 791 (908) 0.33 7200 0.66 1.53 2.20 0.66 1.28 1.87 0 1.14 1.87 25
4 1228 (1385) 0.43 7200 1.73 2.88 5.55 1.08 2.99 4.11 0 1.79 3.53 25
Average 0.19 4366 1.30 2.19 3.92 0.91 1.89 2.65 0.34 1.34 2.47 25
10-10 1 718 915 0 733 1.31 4.19 6.88 0.43 1.74 3.06 0 1.63 2.95 75
2 718 (977) 0.92 7200 0.71 4.68 9.00 3.07 3.99 4.50 0 2.38 3.78 75
3 718 (1086) 0 7200 1.65 4.37 9.20 1.47 3.31 5.70 0.55 1.66 4.78 75
4 1104 (1684) 9.67 7200 0.83 3.04 5.10 0.77 1.76 3.08 0 1.92 4.69 75
Average 2.65 5583 1.13 4.07 7.55 1.43 2.70 4.09 0.13 1.90 4.05 75
10-15 1 701 943 0 1380 0.88 3.61 8.14 0.88 2.78 4.41 0.03 0.72 1.04 95
2 721 966 0 6430 1.63 3.93 7.84 1.10 2.52 5.21 0 0 0 95
3 773 (1044) 0 7200 1.19 3.49 7.29 0.75 2.53 6.01 0.12 0.23 0.71 95
4 843 (1177) 0.29 7200 2.01 2.91 8.71 0.89 2.09 5.42 0 0.26 1.01 95
Average 0.07 5552 1.43 3.48 7.99 0.90 2.48 5.26 0.04 0.30 0.69 95
10-20 1 657 787 0 5100 0.81 1.17 3.02 0.63 0.98 2.43 0 0.17 0.66 130
2 677 (831) 1.11 7200 1.72 2.43 5.65 0.21 1.32 3.11 0 0.45 1.02 130
3 698 (885) 0.14 7200 1.55 3.23 5.51 0.33 1.78 3.03 0 1.21 2.56 130
4 762 (992) 0.68 7200 2.43 4.76 7.11 1.15 1.76 2.76 0 1.12 1.85 130
Average 0.48 6675 1.63 2.90 5.32 0.58 1.46 2.83 0 0.74 1.52 130
10-25 1 923 (1325) 0.51 7200 3.19 5.76 11.23 1.63 4.02 6.82 0 0.37 0.69 150
2 944 (1405) 0 7200 5.01 7.99 11.61 2.22 4.25 7.10 0.31 0.93 1.82 150
3 1094 (1532) 0 7200 4.31 8.06 12.12 3.21 5.32 8.11 0.11 0.41 0.77 150
4 1105 (1672) 6.23 7200 4.22 7.65 12.08 2.87 5.12 6.54 0 0.43 1.12 150
Average 1.68 7200 4.18 7.36 11.76 2.48 4.68 7.14 0.10 0.53 1.10 150
15-10 1 724 (971) 0.22 7200 3.32 6.34 13.21 3.11 6.21 11.17 0 0.19 0.59 140
2 772 (1003) 0.17 7200 4.25 7.37 14.02 3.88 6.10 12.22 0 0.26 0.61 140
3 839 (1127) 0 7200 3.74 7.23 13.70 2.42 5.98 10.43 0.09 0.28 0.76 140
4 936 (1443) 1.23 7200 4.18 7.65 13.76 2.55 6.09 10.54 0 0.64 1.26 140
Average 0.40 7200 3.87 7.15 13.68 2.99 6.09 11.09 0.02 0.34 0.80 140
30
15-15 1 678 (945) 0.05 7200 5.02 8.33 15.41 2.71 5.66 9.15 0 0.29 0.68 170
2 692 (971) 0 7200 3.09 7.14 13.01 1.97 2.71 6.04 0.17 0.17 0.17 170
3 712 (1063) 3.07 7200 2.27 6.03 10.33 2.27 3.11 6.42 0 0.61 1.21 170
4 749 (1231) 2.98 7200 3.91 5.56 9.01 1.96 3.42 7.77 0 0.47 1.16 170
Average 1.52 7200 3.57 6.76 11.94 2.23 3.72 7.34 0.04 0.38 0.80 170
15-20 1 557 (783) 0.16 7200 4.98 7.36 12.77 4.21 6.87 12.21 0 0.17 0.38 210
2 557 (811) 0 7200 8.41 12.23 18.43 5.21 9.55 13.00 0.19 1.54 4.03 210
3 586 (934) 0 7200 7.47 9.11 15.32 5.63 8.25 11.98 0.15 2.42 6.89 210
4 654 (1230) 0 7200 8.04 10.12 17.51 3.31 4.67 7.01 1.00 1.26 2.57 210
Average 0.04 7200 7.22 9.70 16.00 4.59 7.33 11.05 0.33 1.35 3.47 210
15-25 1 781 (910) 0 7200 6.90 8.53 13.61 2.34 4.71 6.43 0 0 0 230
2 802 (967) 0.27 7200 10.01 13.32 18.24 3.01 5.67 8.91 0 1.54 2.97 230
3 834 (1031) 3.11 7200 10.34 14.02 19.77 6.11 8.39 13.44 0 3.88 7.10 230
4 966 (1362) 0 7200 9.71 12.47 17.21 3.16 6.24 12.00 0.08 4.02 6.37 230
Average 0.84 7200 9.24 12.10 17.21 3.65 6.25 10.19 0.02 2.36 4.11 230
20-15 1 430 (643) 0 7200 13.53 18.36 22.86 7.93 9.95 12.90 2.48 5.41 7.15 300
(whizzki
ds97)
2 430 (734) 9.53 7200 10.89 15.81 22.47 5.31 7.42 9.40 0 3.63 7.90 300
3 810 (1483) 0 7200 11.19 15.75 21.24 7.34 11.92 14.96 0.74 3.05 6.54 300
4 1138 (1806) 10.24 7200 13.17 16.88 19.98 1.49 5.16 8.30 0 4.54 7.86 300
Average 4.94 7200 12.19 16.70 21.63 5.51 8.61 11.39 0.80 4.16 7.36 300
20-20 1 983 (1529) 0 7200 8.92 10.44 15.32 4.52 6.41 10.21 1.03 2.41 4.52 350
2 1095 (1633) 7.41 7200 10.27 16.55 20.13 6.21 8.59 13.08 0 2.37 5.89 350
3 1095 (1782) 5.78 7200 11.24 14.32 19.72 3.19 5.93 10.11 0 2.09 4.98 350
4 1176 (1936) 0 7200 13.67 18.83 24.99 9.77 11.49 16.92 0.69 3.35 5.02 350
Average 3.30 7200 10.87 15.03 20.04 5.92 8.10 12.58 0.43 2.25 5.10 350
20-25 1 981 (1542) 0 7200 11.54 18.76 29.32 7.90 9.68 13.29 0.05 2.47 4.86 410
2 1034 (1579) 5.72 7200 12.34 16.32 25.95 6.31 7.81 9.12 0 4.65 8.34 410
3 1089 (1839) 3.63 7200 9.43 12.65 18.71 2.98 4.53 6.85 0 3.41 5.78 410
4 1188 (2046) 6.75 7200 14.24 17.61 22.53 3.91 5.62 8.88 0 4.44 8.67 410
Average 4.02 7200 11.89 16.33 24.13 5.27 6.91 9.53 0.01 3.74 6.91 410
25-20 1 1066 (1632) 1.04 7200 8.72 12.77 18.39 3.88 6.17 9.17 0 1.12 3.58 480
2 1128 (1765) 7.78 7200 10.12 15.20 19.44 4.71 6.56 8.77 0 2.97 7.63 480
3 1201 (2561) 11.65 7200 7.98 14.53 24.76 3.14 5.10 6.84 0 2.68 5.76 480
4 1310 (2947) 9.11 7200 7.41 17.25 30.33 2.16 4.71 6.91 0 3.35 6.64 480
Average 7.39 7200 8.56 14.94 23.23 3.47 5.63 7.92 0 2.53 5.90 480
25-25 1 1141 (1831) 10.54 7200 11.93 17.35 28.74 7.27 11.88 18.56 0 1.84 3.02 550
2 1207 (2074) 12.11 7200 14.21 19.38 26.69 6.59 14.12 19.83 0 6.15 13.2 550
3 1348 (2349) 19.78 7200 17.55 20.41 31.65 3.32 5.14 9.81 0 2.64 8.78 550
4 1754 (2793) 18.99 7200 16.62 21.59 27.70 2.01 3.63 4.59 0 1.86 3.96 550
Average 15.35 7200 15.10 19.68 28.69 4.80 8.69 13.20 0 3.12 7.24 550
Overall average 1.75 4579 3.78 5.94 9.40 1.82 3.18 5.11 0.09 1.07 2.25 141
All CPU times are in seconds.
31
Figure 1 Overlapping of transportation and setup when (a) setup determines the starting time and
(b) transportation determines the starting time
Figure 2 No overlapping of transportation and setup
Figure 3 An example of chromosome representation
Figure 4 Active schedule generated for the numerical example
Figure 5 Chromosome shown in Fig. 3 after applying the ASGA
setup Jobj transportation
Jobj' setup Jobj
Machinei'
(a)
Machinei
setup Jobj transportation
Jobj' setup Jobj
Machinei
Machinei'
(b)
setup Jobj transportation
Jobj' setup Jobj
Machinei'
Machinei
(3,2) (1,2) (1,3) (2,3) (3,3) 1 2 1 1 2 3 3 2 3
Groupofjob3Group1ofjob2
Part2Part1
(3,2) (3,3) (3,1)
(2,3) (2,1) (2,2)
(1,1) (1,2) (1,3)
Operations Setuptimes Transportationtimes Releasetimes
Machine2
Machine1
Machine3
262421
(3,2) (1,2) (2,3) (3,3) (1,3) 2 3 1 3 2 1 1 3 2
Groupofjob3Group1ofjob2
Part2Part1