An Artificial Immune Algorithm For The F
An Artificial Immune Algorithm For The F
1. Introduction Since FJSP belongs to NP-hard class, no exact method has so far
been introduced to be able to tackle these problems within a rea-
Scheduling is known as the allocation of resources to perform a sonable amount of time. Hence, a variety of heuristic procedures
collection of tasks over a period of time. Finding the best schedule such as dispatching rules, local search and meta-heuristics proce-
can be very easy or very difficult, depending on the shop environ- dures such as tabu search (TS), simulated annealing (SA) and ge-
ment, the process constraints and the performance indicator [1]. netic algorithm (GA) have been applied to solve these problems
One of the most difficult problems in this area is the job-shop and find the optimal or near optimal schedule in a reasonable
scheduling problem (JSP). Job-shop scheduling (JSP) is one of the time. These methods can be classified into two main categories:
most significant issues in production planning. JSP is important be- hierarchical approach and integrated approach. In hierarchical ap-
cause it determines process maps and process capabilities for most proaches, the assignment of operations to machines and the se-
industries [2]. In JSP, a set of n jobs must be processed on m ma- quencing of operations on the machines are treated separately. In
chines where each job i consists of ni operations that should be per- effect, hierarchical approach is based on the idea of decomposing
formed on the machines while satisfying precedence constraints. the original problem in order to reduce its complexity. This ap-
JSP aims to find the appropriate sequencing of operations on the proach is followed by some studies [4–6]. Brandimarte [4] applied
machines to optimize the performance indicator. A typical perfor- hierarchical approach for FJSP based on decomposition. He solved
mance indicator for JSP is the makespan, i.e., the time needed to the routing sub-problem using some existing dispatching rules and
complete all jobs. It is well known that this problem is NP-hard [3]. then concentrated on sequencing sub-problem which is solved by
using a TS algorithm. Kacem et al. [5] proposed a localization ap-
The flexible job-shop scheduling problem (FJSP) is an extension
proach to solve the resource assignment problem, and an evolu-
of the classical JSP, where operations are allowed to be processed
tionary approach controlled by the assignment model for the FJSP.
on any among a set of available machines. FJSP is more difficult
Xia and Wu [6] worked on a hybrid approach for solving multi-
than the classical JSP because it contains an additional problem that
objective FJSP. The approach made use of particle swarm optimiza-
is assigning operations to machines.
tion (PSO) to assign operations to machines and SA algorithm to
schedule operation on each machine (local search).
Integrated approaches are used by considering assignment and
∗ Corresponding author. sequencing simultaneously and they usually obtain better results
E-mail address: [email protected] (M. Zandieh). than hierarchical approach, but are much more difficult to solve.
0167-739X/$ – see front matter © 2009 Elsevier B.V. All rights reserved.
doi:10.1016/j.future.2009.10.004
534 A. Bagheri et al. / Future Generation Computer Systems 26 (2010) 533–541
Chen et al. [7] and Jia et al. [8] proposed GAs to solve FJSP. Zhang Table 1
and Gen [9] proposed a multistage operation based GA to deal Processing times.
with the problem from a point view of dynamic programming. Ong Operation M1 M2 M3
et al. [10] proffered an immune algorithm (IA) called ClonaFLEX, O1,1 6 6 ∞
designed by using the clonal selection principle, to solve FJSP. O1,2 ∞ 5 ∞
Pezzella et al. [11] propounded a genetic algorithm for FJSP, in O1,3 4 5 5
which a mix of different rules for generating the initial population,
O2,1 ∞ 6 ∞
selection of individuals, and reproduction operators were used. O2,2 ∞ 5 7
Gao et al. [12] employed a hybrid of GA and variable neighborhood O2,3 7 9 ∞
descent (VND) for this problem. VND involves two local search O2,4 6 3 ∞
procedures: local search of moving one operation and local search
of moving two operations. All of five mentioned algorithms are O3,1 5 3 3
O3,2 4 ∞ ∞
integrated approaches. Furthermore, Fattahi et al. [13] proposed
a mathematical model and two meta-heuristics approaches (SA
and TS algorithms) for solving FJSP. Moreover, considering two 3. Artificial immune algorithm for FJSP
developed meta-heuristics and concerning the integrated and
hierarchical approaches, they presented six different searching 3.1. Immune system in general
algorithms.
Given the literature of FJSP, the heuristics and meta-heuristics The natural immune system is a complex adaptive pattern-
have corroborated their qualities to solve the problem. Artificial recognition system that defends the body from foreign pathogens
immune algorithm (AIA) is one of the well-known meta-heuristics (bacteria or viruses). It is able to categorize all cells (or molecules)
which have been applied successfully to various optimization within the body as either those belonging to its own kind (self-cell)
problems, e.g. resource allocation problem [14], redundant reli-
or those that have a foreign origin (non-self-cell) [18]. The infec-
ability problem [15], and hybrid flow shops scheduling problem
tion process involves invasion of a pathogen and its proliferation
[16,17]. This paper proposes an AIA algorithm based on an inte-
within the organism. Pathogens are associated with specific pro-
grated approach to solve FJSP. The objective function is considered
teins (antigens). The immune system contains cells that are capable
as the minimization of the makespan. The present algorithm em-
of recognizing antigens and killing pathogens. These cells, further
ploys multiple different mutations for reassigning and resequenc-
referred to as immune cells (antibodies), are randomly distributed
ing. This study presents the computational results on a number of
throughout the immune system. In the relatively evolutionarily
benchmark problems and compares them with the results reported
advanced animals, the immune system is capable of enhanced
by previous researchers.
response to re-infection by an earlier encountered pathogen (adap-
The rest of this paper is organized as follows: formulation and
tive immunity) [17].
constraints of the problem are described in Section 2. Proposed al-
The clonal selection and affinity maturation principles are used
gorithm is presented in Section 3. Computational study performed
with the presented algorithm and its results are reported in Sec- to explain how the immune system reacts to pathogens and how
tion 4. Section 5 includes conclusions and future works. it improves its capability of recognizing and eliminating pathogens
[19]. Clonal selection states that when a pathogen invades the or-
2. Problem definition ganism, a number of immune cells that recognize these pathogens
will proliferate; some of them will become effecter cells, while oth-
The problem is to organize the execution of n jobs on m ers will be maintained as memory cells. The effecter cells secrete
machines. In this problem, there are a set of machines A = antibodies in large numbers and the memory cells have long life
{M1 , . . . , Mm }, and a set of jobs, J = {J1 , . . . , Jn } so that each job spans so as to act faster and more effectively in future exposures
Ji consists of a sequence of ni operations, Oi,1 , 0i,2 , . . . , Oi,ni . Ji is to the same or a similar pathogen. During cellular reproduction, the
completed when its operations are performed one after another in cells suffer somatic mutations at high rates, together with a selec-
a given order. Each operation Oi,j , i.e. the operation j of job i, can tive force; the cells with higher affinity to the invading pathogen
be processed on any among a subset Ai,j ⊆ A of compatible ma- differentiate into memory cells. This whole process of somatic mu-
chines. Flexibility of problems can be categorized into partial flex- tation plus selection is known as affinity maturation [20].
ibility and total flexibility. It is partial when there exists a proper The natural immune system is a very complex system with sev-
subset Ai,j of A (Ai,j ⊂ A) for at least one operation Oi,j , and it is eral mechanisms to defend against pathogenic organisms. It is also
total when we have Ai,j = A for all operations. All jobs and ma- a source of inspiration for solving optimization problems. Artificial
chines are available at time 0, and a machine can only execute one Immune Algorithm (AIA) is a meta-heuristic which is developed
operation at a given time. Preemption is not allowed, i.e., each op- based on such system. This paper aims at proposing an artificial
eration must be completed without interruption once it starts. The immune algorithm to FJSP.
FJSP is machine-dependent because the performance of each oper-
ation on each allowable machine has a different processing time. 3.2. Proposed artificial immune algorithm (AIA)
The processing time of operation Oi,j on machine Mk is pi,j,k > 0.
The problem is to assign each operation to an appropriate The proposed AIA steps are as follows:
machine (routing problem), and to sequence the operations on
the machines (sequencing problem) in order to minimize the (1) Initialization:
makespan which is the time needed to complete all jobs, and is de- (a) Parameters setting: set the number of initial population
fined as Cmax = max{Ci }, where Ci is the completion time of job Ji . (popsize), the number of generations (ng), the rate of As-
Data related to a given problem with partial flexibility is shown signmentRule1 (pa1), the rate of AssignmentRule2 (pa2), the
in Table 1, in which rows correspond to operations and columns rate of Random rule (pr), the rate of MWR rule (pmw ), the
represent machines. In this table, symbol ∞ means that a machine rate of MOR rule (pmo), the number of mutations in each
cannot execute the corresponding operation. In other words, it generation (nm), the number of exchangeable antibodies
does not belong to the subset of compatible machines for that (nea) and the implementation probability of each mutation
operation. operator.
A. Bagheri et al. / Future Generation Computer Systems 26 (2010) 533–541 535
(b) Initial population generation: are randomly permuted before localization approach is applied.
(b-1) Initial assignments: The combination of these two rules generates the initial set of as-
(b-1-1) generate (pa1 × popsize) initial assignments signments. Once the initial assignments are generated, we have
by AssignmentRule1. to determine how to sequence the operations on the machines.
(b-1-2) generate (pa2 × popsize) initial assignments Obviously, the sequencing is feasible if it respects the precedence
by AssignmentRule2. constraints among operations of the same job. The sequencing of
(b-2) Sequencing of the initial assignments: the initial assignments is obtained by a mix of three known dis-
(b-2-1) Sequence (pr × popsize) initial assignments patching rules: random selection of a job (Random), most work
by random selection of a job dispatching remaining (MWR) and most operation remaining (MOR). Finally,
rule. initial population is achieved due to applying the aforementioned
(b-2-2) Sequence (pmw × popsize) initial assign- procedure in the given order.
ments by MWR rule.
(b-2-3) Sequence (pmo × popsize) initial assign- 3.2.2. Antibody representation
ments by MOR rule. In this article, task sequencing list provided by Kacem et al. [5]
(2) Objective function evaluation: Evaluate the fitness function is used to represent the proposed algorithm solutions, in which a
(makespan) for each antibody. string is formed by triples (i, j, k), one for each operation, where
(3) Affinity evaluation: Calculate affinity value of each antibody as:
• i is the job that operation belongs to;
1 • j is the progressive number of operations within job i;
Affinity(z) = .
makespan(z) • k is the machine assigned to that operation.
(4) Clonal selection and expansion: The length of the string equals to the total number of opera-
(a) Select M antibodies from the population with the highest tions. Consider the problem in Table 1. The solution S = (1, 1, 1),
affinity. (3, 1, 3), (2, 1, 2), (3, 2, 1), (2, 2, 3), (1, 2, 2), (1, 3, 2), (2, 3, 1),
(b) Generate M clones (copies) from the selected antibodies (2, 4, 2) is one of the feasible solutions from solution space for the
in step 4(a) by using binary tournament rule (choose two mentioned problem. The representation of solution S in the task
antibodies from M antibodies randomly and select the sequencing list format is provided in Fig. 1. Also, a Gantt chart of
antibody with higher affinity). the solution is shown in Fig. 2 where, Cmax = 23.
(5) Producing next population:
(a) Mutation operation: Select (nm) antibodies from M clones 3.2.3. Mutation operators
randomly and apply the mutations to make (nm) new an-
In this study, four mutation operators are used to change the
tibodies. Exert each mutation operator with due attention
assignment and sequence of the antibodies. Two of them, intelli-
to its probability. gent mutation proposed by Pezzella et al. [11] and assignment mu-
(b) Add (nm) new antibodies to the current generation. tation, change the assignment property of the antibodies so that
(c) Receptor editing: Replace (nea) antibodies with the lowest the sequencing of operations is preserved. Assignment mutation
affinity with new ones produced like those in step 1(b). only exchanges the assignment of a single operation in a single an-
(d) Copy the best antibody to the next generation. tibody. In this case, the operation whose assignment is going to
(e) Select (popsize-1) antibodies from current generation by be exchanged is chosen randomly. In the intelligent mutation, we
a suitable selection strategy and copy them into the next randomly choose the operation on the machine with the maxi-
generation. mum workload, and assign it to the machine with the minimum
(6) Termination test: Check the stopping criterion. If it is met, re- workload, if compatible [11]. For example in Fig. 2, machine 2 has
turn the best antibody; otherwise, go to step 2. maximum workload. Assume operation O1,3 is chosen among op-
erations on machine 2. We have A1,3 = {1, 2, 3} and machine 3
3.2.1. Initial population has minimum workload. Therefore, we assign operation O1,3 to ma-
In order to generate the initial population, we follow the pro- chine 3 to produce new antibody.
cedure proposed by Pezzella et al. [11]. First, we produce initial Precedence preserving shift mutation (PPS) operator of Lee
assignments using two approaches: AssignmentRule1 and Assign- et al. [21] is employed to change the sequence of the operations.
mentRule2. Both approaches are modified versions of the localiza- Furthermore, a new mutation operator called reordering mutation
tion approach by Kacem et al. [5]. In AssignmentRule1, assignment is proposed for this problem. In applying these sequencing oper-
process commences from the operation with the global minimum ators, the assignment of operations is kept steady. Note that in
of processing time in the processing time table, and then the ma- employing the sequencing operators, many infeasible solutions
chine workload update is performed in the processing time table. may appear by operators and we must respect the precedence
This process lasts until the assignment of all operations to ma- constraints among operations of the same job. Applying the in-
chines is accomplished; in AssignmentRule2, jobs and machines feasibility test and the correcting algorithm to modify infeasible
536 A. Bagheri et al. / Future Generation Computer Systems 26 (2010) 533–541
solutions are very time-consuming. Hence, we designed operators in order to obtain meaningful results. We select the best solutions
so that precedence constraints are not violated and infeasible so- for each problem after 10 runs of AIA from different initial popu-
lutions are not produced. lations. We compare the performance of the presented algorithm
Concerning the precedence constraints among operations of the with other famous algorithms on makespan. Furthermore, for test
same job, in PPS mutation, we choose an operation from a single problems, the maximal machine workload (Wm ), i.e. the maximum
antibody and shift it into another position. Consider the following working time spent on any machine, and total workload (WT ),
example in Fig. 3. Operation O1,2 is randomly chosen among the i.e. the total working time over all machines, are reported in this
operations of the solution string and feasible positions for this section. Several sets of problem instances have been considered:
operation are 2, 3, 4, 5 and 6. Then position 3 is randomly selected (1) Kacem data: The data set is a set of three problems (problem
among them and operation O1,2 is shifted there. In reordering 8 × 8, problem 10 × 10 and problem 15 × 10) from Kacem
mutation, we select two positions, p1 and p2, on the solution string et al. [5]. Problem 8 × 8 is an instance of partial flexibility that
and reorder the operations between two positions randomly. We consists of eight jobs with 27 operations which can be processed on
select p1 and p2, so that 2 ≤ |p1 − p2| ≤ 20. To clarify this
eight machines, Problem10 × 10 has total flexibility that consists
process, an example is provided in Fig. 4. Positions 3 and 8 are
of 10 jobs with 30 operations which can be implemented on 10
randomly chosen and then, the order of five operations between
machines, and Problem 15 × 10 has total flexibility that consists
them is changed randomly with regard to sequencing constraints.
of 15 jobs with 56 operations which can be performed on 10
machines. The details about Kacem data can be found in [6].
3.2.4. Receptor editing
(2) Fadata: The data set consists of 20 test problems from Fattahi
After cloning and mutation processes, a number of the anti-
et al. [13]. These test problems are divided to two categories:
bodies (worst nea antibodies of the whole population) in the anti-
small size flexible job-shop scheduling problems (SFJS1:10), and
body population are eliminated and randomly created antibodies
medium and large size flexible job-shop scheduling problems
replace them. This mechanism is also a vertebrate immune system
(MFJS1:10). The number of jobs ranges from 2 to 12, the number
mechanism, known as receptor editing. This mechanism allows us
of machines ranges from 2 to 8, the number of operations for each
to find new schedules that correspond to new search regions in the
job ranges from 2 to 4, and the number of operations for all jobs
entire search space. Exploring new search regions may help the al-
ranges from 4 to 48.
gorithm to escape from local optima [16]. In our algorithm, new
replacing antibodies are created with procedure described in the (3) BRdata: The data set consists of 10 test problems from Brandi-
section ‘‘Initial population’’. marte [4] that were randomly generated using a uniform distribu-
tion between two given limits. The number of jobs ranges from 10
4. Computational results to 20, the number of machines ranges from 4 to 15, the number
of operations for each job ranges from 5 to 15, and the number of
This section describes the computational tests which are used operations for all jobs ranges from 55 to 240.
to evaluate the effectiveness and efficiency of the proposed AIA. In (4) HUdata: HUdata is a set of 129 test problems from Hurink
order to conduct the experiment, we implement the algorithm in et al. [22]. Depending on the average number of alternative ma-
C++ language and run on a PC with 2.0 GHz and 256 MB of RAM chines for each operation, HUdata was divided into three subsets:
memory. The non-deterministic nature of the algorithm makes it Edata, Rdata and Vdata. The number of jobs ranges from 6 to 30, the
necessary to carry out multiple runs on the same problem instance number of machines ranges from 5 to 15, the number of operations
A. Bagheri et al. / Future Generation Computer Systems 26 (2010) 533–541 537
Table 2 The Gantt Charts of the solutions obtained by AIA for problems
Parameters of AIA. 8 × 8, 10 × 10, and 15 × 10 are illustrated in Figs. 5–7 respectively.
Problem popsize ng M nm nea Literature of FJSP shows that hGA suggested by Gao et al. [12]
8×8 400 100 200 200 4 works better than the other proposed algorithms for these
10 × 10 2000 500 1000 1000 20 problems. The results of the present algorithm, compared with
15 × 10 5000 1500 2500 2500 50 those of hGA by Gao et al. [12], are shown in Table 4. It is evident
SFJS 1:10 200 100 100 100 2
that the results of the present algorithm are comparable with
MFJS 1:5 2000 500 1000 1000 20
MFJS 6:10 2000 1000 1000 1000 20 hGA results. By closer attention, it can be figured out that only
BRdata 5000 1500 2000 3000 50 in problem 15 × 10 the total workload (WT ) obtained by hGA
HUdata 5000 1500 2000 3000 50 is better than AIA, although this paper focuses on makespan. In
Table 4, AV(CPU) stands for the average of CPU times for 10 runs
for each job ranges from 5 to 15, and the number of operations for of the presented algorithm in terms of seconds. As can be seen, our
all jobs ranges from 36 to 300. algorithm performs better than hGA of Gao et al. [12] on Kacem
With due attention to computational experience, different se- data problems, regarding CPU time measure.
lection strategies are applied for various data sets in step 5(e) of The second data set studied is Fdata. In Table 5, the best ob-
the presented algorithm. Binary tournament rule is used for test- tained results after 10 runs of the proposed AIA on Fdata are
ing Kacem data, BRdata and HUdata and Roulette wheel selection presented and they are compared with results of integrated ap-
strategy is used for testing Fdata. Also, the following values of pa- proaches suggested by Fattahi et al. [13]. These approaches are
rameters are tuned for the presented algorithm: ISA (integrated approach with simulated annealing heuristic) al-
gorithm and ITS (integrated approach with tabu search heuristic)
• Rate of AssignmentRule1 (pa1): 20%; algorithm.
• Rate of AssignmentRule2 (pa2): 80%; In Table 5, the problem names are listed in the first column,
• Rate of initial sequences by Random rule(pr): 20% the second and third columns refer to the number of jobs and
• Rate of initial sequences by MWR rule(pmw): 40% machines respectively. The fourth column stands for the lower
• Rate of initial sequences by MOR rule(pmo): 40%
bound of the problem, the fifth, sixth and seventh columns show
• Probability of assignment mutation: 40%;
the values of Cmax , Wm and WT obtained from the proposed
• Probability of intelligent mutation: 25%;
AIA respectively. The eighth column represents the average of
• Probability of PPS mutation: 10%;
CPU times for 10 runs of the presented algorithm in terms of
• Probability of reordering mutation: 25%.
seconds. The ninth and eleventh columns respectively represent
Values of some parameters of algorithm are different for various the best results obtained by ISA and ITS algorithms. To compare the
problems presented in Table 2. presented algorithm with ITS and ISA algorithms, relative deviation
The first data set under investigation belongs to Kacem data. criterion represented by (Dev ) is employed. The relative deviation
Table 3 indicates the best obtained solutions of 10 runs of the is defined as
proposed AIA on Kacem data. In this table, the proposed algorithm
Dev = [(Cf − Cbest )/Cf ] × 100%,
is compared to ‘‘AL + CGA’’ of Kacem et al. [5], ‘‘PSO + SA’’ of
Xia and Wu [6], ‘‘moGA’’ of Zhang and Gen [9] and ‘‘ClonaFLEX’’ where Cbest is the best makespan obtained by the proposed algo-
of Ong et al. [10]. The results reveal that the presented algorithm rithm and Cf is the best makespan of the algorithm that we com-
outperformed the above-mentioned algorithms. pare ours to. Measures concerning relative deviation are presented
Table 3
Results on Kacem data.
Problem Objective AL + CGA PSO + SA moGA ClonaFLEX Proposed AIA
Cmax 15 16 15 16 14 14
8×8 Wm 12 13 12 12
WT 79 75 75 73 77 77
Cmax 7 7 7 7 7
10 × 10 Wm 5 6 5 5
WT 45 44 43 43
Cmax 24 12 12 11
15 × 10 Wm 11 11 11
WT 91 91 93
Table 4
Comparison with the hGA of Gao on Kacem data.
Problem Objective hGA AIA
Result Popsize AV(CPU) Result Popsize AV(CPU)
Cmax 14 14
8×8 Wm 12 300 22.4
. 12 400 0.76
.
WT 77 77
Cmax 7 7
10 × 10 Wm 5 300 43.1
. 5 2000 8.97
.
WT 43 43
Cmax 11 11
15 × 10 Wm 11 500 112.2
. 11 5000 109.22
.
WT 91 93
538 A. Bagheri et al. / Future Generation Computer Systems 26 (2010) 533–541
Table 5
Comparison with the integrated approaches of Fattahi on Fdata.
Problem n m LB AIA ISA ITS
CMax Wm WT AV(CPU) CMax Dev (%) CMax Dev (%)
Table 6
Comparison with the hierarchical approaches of Fattahi on Fdata.
Problem LB AIA HSA/SA HSA/TS HTS/TS HTS/SA
CMax Dev (%) CMax Dev (%) CMax Dev (%) CMax Dev (%)
SFJS1 66 66 66 0 66 0 66 0 66 0
SFJS2 107 107 107 0 107 0 107 0 107 0
SFJS3 221 221 221 0 221 0 221 0 221 0
SFJS4 355 355 355 0 355 0 355 0 355 0
SFJS5 119 119 119 0 119 0 119 0 119 0
SFJS6 320 320 320 0 320 0 320 0 320 0
SFJS7 397 397 397 0 397 0 397 0 397 0
SFJS8 253 253 253 0 253 0 253 0 256 0
SFJS9 210 210 210 0 210 0 210 0 210 0
SFJS10 516 516 516 0 516 0 516 0 516 0
MFJS1 396 468 479 +2.3 491 +4.68 469 +0.21 469 +0.21
MFJS2 396 448 495 +9.49 482 +7.05 482 +7.05 468 +4.27
MFJS3 396 468 553 +15.37 538 +13.01 533 +12.2 538 +13.01
MFJS4 496 554 656 +15.55 650 +14.77 634 +12.62 618 +10.36
MFJS5 414 527 650 +18.92 662 +20.39 625 +15.68 625 +15.68
MFJS6 469 635 762 +16.67 785 +19.11 717 +11.44 730 +13.01
MFJS7 619 879 1020 +13.82 1081 +18.69 964 +8.82 947 +7.18
MFJS8 619 884 1030 +14.17 1122 +21.21 970 +8.87 922 +4.12
MFJS9 764 1088 1180 +7.80 1243 +12.47 1105 +1.54 1105 +1.54
MFJS10 944 1267 1538 +17.62 1615 +21.55 1404 +9.76 1384 +8.45
Average improvement +6.59 +7.65 +4.41 +3.95
Table 7
AIA versus six approaches from Fattahi on Fdata.
Approach Num Better Equal Worse
ISA 11 9 0
ITS 14 6 0
HSA/SA 10 10 0
20
HSA/TS 10 10 0
HTS/TS 10 10 0
HTS/SA 11 9 0
in the tenth and twelfth columns. Last row of Table 5 signifies the
result improvement average of the present algorithm in relation to
the compared algorithms.
Table 6 shows the comparison of the best obtained results of
AIA on Fdata with four hierarchical approaches, namely HSA/SA,
HSA/TS, HTS/TS and HTS/SA algorithms, proposed by Fattahi
et al. [13].
As can be seen in Tables 5 and 6, AIA and nearly all algorithms
Fig. 6. Gantt chart of solution of problem 10 × 10. presented by Fattahi et al. [13] have achieved optimal and proper
A. Bagheri et al. / Future Generation Computer Systems 26 (2010) 533–541 539
Table 8
Mean relative error on Fdata.
Data set Alt. AIA HSA/SA HSA/TS HTS/TS HTS/SA ISA ITS
Table 9 Table 11
Result of AIA on BRdata. AIA versus Gas and ClonaFLEX on BRdata.
Problem n m LB AIA Approach Num Better Equal Worse
CMax Wm WT AV(CPU) GA_Chen 10 4 3 3
MK01 10 6 36 40 36 171 97.21 GA_Jia 10 5 3 2
MK02 10 6 24 26 26 154 103.46 GA_Pezzella 10 0 7 3
MK03 15 8 204 204 204 1207 247.37 ClonaFLEX 8 4 2 2
MK04 15 8 48 60 60 403 152.07
MK05 15 4 168 173 173 686 171.95
MK06 10 15 33 63 56 470 245.62
et al. [10] (ClonaFLEX) and Pezzella et al. [11] (GA_Pezzella). The
MK07 20 5 133 140 140 695 161.92 proposed AIA outperformed three algorithms, GA_Chen, GA_Jia
MK08 20 10 523 523 523 2723 392.25 and ClonaFLEX. But results show GA_Pezzella performs better than
MK09 20 10 299 312 306 2591 389.71 AIA on BRdata problems. In particular, GA_Pezzella has gained
MK10 20 15 165 214 206 2121 384.54 better results in MK07, MK09 and MK10 problems, comparing to
our method.
results in SFJS problems. But in all MFJS problems, AIA has better Table 11 indicates that to what extent AIA in BRdata pro-
performance than other six algorithms. blems performs equally, better or worse than the four aforesaid
In Table 7, AIA is also compared with two hierarchical and four algorithms.
integrated approaches by Fattahi et al. [13] from another stand- Finally, with regard to BRdata and HUdata problems, MRE of the
point. The table illustrates to what extent AIA results are equal to, best solutions obtained by AIA and above-mentioned algorithms is
worse or better than those obtained by the aforementioned algo- presented in Table 12. Obviously, AIA has obtained better results in
rithms. The results shown in Table 7 confirm that the present AIA comparison with other algorithms for Rdata and Vdata problems.
did not obtain poorer results in any of the 20 Fdata problems, in But for Edata, GA_Chen and GA_Pezzella algorithms have lead to
comparison with the above-mentioned algorithms. better results than our algorithm. The results of HUdata problems
Table 8 demonstrates the mean relative error (MRE) of the best revealed the appropriate performance of our algorithm in optimiz-
results obtained by AIA and six algorithms presented by Fattahi ing problems with a high flexibility.
et al. [13]. The first column reports the data set and the second
column indicates the average number of alternative machines for 5. Conclusion and future works
each operation. The relative error (RE) is described as
In this research, an artificial immune algorithm (AIA) was inves-
RE = [(Cbest − LB)/LB] × 100%, tigated for solving flexible job-shop scheduling problem (FJSP). The
where Cbest is the best makespan of the reported algorithm and LB objective function considered is the minimization of the makespan
is the best known lower bound. time. Task sequencing list is used to represent the solutions. A
Optimal scheduling obtained from AIA for problem MFJS4 of combination of strategies is utilized for generating the initial popu-
Fdata with makespan of 554 is presented in Fig. 8. lation. In addition, various mutation operators in relation to assign-
Other data sets scrutinized are BRdata and HUdata. Table 9 ment and sequencing problems were employed to produce new
indicates the best results obtained by AIA after 10 runs on BRdata. antibodies.
The problem names are presented in the first column, the second, The proposed algorithm was tested on 162 benchmark prob-
third and fourth columns show the number of jobs, number of lems. Results showed that the presented AIA is effective to
machines and lower bound of the problem. Cmax , Wm and WT values overcome mentioned problems. Obtained results are comparable
are respectively shown in the fifth, sixth and seventh columns. The properly with the results of previous algorithms. In the following,
suggestions are offered for future works:
eighth column represents the average of CPU times for 10 runs of
AIA in terms of seconds. • Studying in this field with additional constrains, such as main-
As shown in Table 10, the obtained results of AIA on BRdata tenance requirements or breakdowns can be interesting.
are compared with the results obtained from algorithms suggested • Developing the meta-heuristics to optimize the other objectives
by Chen et al. [7] (GA_Chen), Jia et al. [8] (GA_Jia), Ong in this field, such as earliness and tardiness will be remarkable.
Table 10
Comparison with GAs and ClonaFLEX on BRdata.
Problem LB AIA GA_Chen GA_Jia ClonaFLEX GA_Pezzella
CMax Dev (%) CMax Dev (%) CMax Dev (%) CMax Dev (%)
MK01 36 40 40 0 40 0 39 −2.56 40 0
MK02 24 26 29 +10.34 28 +7.14 27 +3.70 26 0
MK03 204 204 204 0 204 0 – – 204 0
MK04 48 60 63 +4.76 61 +1.64 65 +7.69 60 0
MK05 168 173 181 +4.42 176 +1.70 173 0 173 0
MK06 33 63 60 −5.00 62 −1.61 70 +10.00 63 0
MK07 133 140 148 +5.41 145 +3.45 145 +3.45 139 −0.72
MK08 523 523 523 0 523 0 523 0 523 0
MK09 299 312 308 −1.30 310 −0.64 311 −0.32 311 −0.32
MK10 165 214 212 −0.94 216 +0.93 – – 212 −0.94
Average improvement +1.77 +1.26 +2.75 −0.20
540 A. Bagheri et al. / Future Generation Computer Systems 26 (2010) 533–541
Table 12
Mean relative error on BRdata and HUdata.
Data set Alt. AIA GA_Chen GA_Jia ClonaFLEX GA_Pezzella
[15] T.C. Chen, P.S. You, Immune algorithms-based approach for redundant
reliability problems with multiple component choices, Computers in Industry
56 (2005) 195–205.
[16] O. Engin, A. Döyen, A new approach to solve hybrid flow shop scheduling
problems by artificial immune system, Future Generation Computer Systems
20 (2004) 1083–1095.
[17] M. Zandieh, S.M.T. Fatemi Ghomi, S.M. Moattar Husseini, An immune
algorithm approach to hybrid flow shops scheduling with sequence-
dependent setup times, Applied Mathematics and Computation 180 (1) (2006)
111–127.
Fig. 8. Scheduling obtained for problem MFJS4. [18] D. Dasgupta, Special issue on artificial immune system, IEEE Transactions on
Evolutionary Computation 6 (2002) 225–256.
[19] G.L. Ada, G.J.V. Nossal, The clonal selection theory, Scientific American 257
References (1987) 50–57.
[20] L.N.D. Castro, J. Timmis, An artificial immune network for multimodal function
[1] M. Pinedo, Scheduling: Theory, Algorithms and Systems, Prentice-Hall, optimization, Evolutionary computation, CEC’02, in: Proceedings of the 2002
Englewood Cliffs, NJ, 2002. Congress, pp. 699–704.
[2] V. Roshanaei, B. Naderi, F. Jolai, M. Khalili, A variable neighborhood search [21] K.M. Lee, T. Yamakawa, K.M. Lee, A genetic algorithm for general machine
for job shop scheduling with set-up times to minimize makespan, Future scheduling problems, International Journal of Knowledge-Based Electronic 2
Generation Computer Systems 25 (2009) 654–661. (1998) 60–66.
[3] M.R. Garey, D.S. Johnson, R. Sethi, The complexity of flowshop and job-shop [22] E. Hurink, B. Jurisch, M. Thole, Tabu search for the job shop scheduling
scheduling, Mathematics of Operations Research 1 (1976) 117–129. problem with multi-purpose machine, Operations Research Spektrum 15
[4] P. Brandimarte, Routing and scheduling in a flexible job shop by taboo search, (1994) 205–215.
Annals of Operations Research 41 (1993) 157–183.
[5] I. Kacem, S. Hammadi, P. Borne, Approach by localization and multi objective
evolutionary optimization for flexible job-shop scheduling problems, IEEE
A. Bagheri completed his B.Sc. in Applied Mathematics at
Transactions on Systems, Man, and Cybernetics, Part C 32 (1) (2002) 1–13.
[6] W. Xia, Z. Wu, An effective hybrid optimization approach for multi-objective Yazd University, Yazd, Iran (2001–2005), and M.Sc. in In-
flexible job-shop scheduling problem, Computers and Industrial Engineering dustrial Engineering at Mazandaran University of Science
48 (2005) 409–425. and Technology, Babol, Iran (2006–2008). His research in-
[7] H. Chen, J. Ihlow, C. Lehmann, A genetic algorithm for flexible Job-shop terests are production scheduling, Artificial Intelligence
scheduling, IEEE International Conference on Robotics and Automation, techniques and Quality Management. Currently, he is a
Detroit, 1999, 1120–1125. Quality Assurance Engineer in Raad Manufacturing Co. in
[8] H.Z. Jia, A.Y.C. Nee, J.Y.H. Fuh, Y.F. Zhang, A modified genetic algorithm Isfahan, Iran.
for distributed scheduling problems, International Journal of Intelligent
Manufacturing 14 (2003) 351–362.
[9] H. Zhang, M. Gen, Multistage-based genetic algorithm for flexible job-shop
scheduling problem, Journal of Complexity International 11 (2005) 223–232.
[10] Z.X. Ong, J.C. Tay, C.K. Kwoh, Applying the Clonal Selection Principle to Find
Flexible Job-Shop Schedules, in: LNCS, vol. 3627, 2005, pp. 442–455.
[11] F. Pezzella, G. Morganti, G. Ciaschetti, A genetic algorithm for the flexible job- M. Zandieh accomplished his B.Sc. in Industrial Engineer-
shop scheduling problem, Computers and Operations Research 35 (10) (2008) ing at Amirkabir University of Technology, Tehran, Iran
3202–3212. (1994–1998), and M.Sc. in Industrial Engineering at Sharif
[12] J. Gao, L. Sun, M. Gen, A hybrid genetic and variable neighborhood descent for University of Technology, Tehran, Iran (1998–2000). He
flexible job shop scheduling problems, Computers and Operations Research 35 obtained his Ph.D. in Industrial Engineering from Amirk-
(9) (2008) 2892–2907. abir University of Technology, Tehran, Iran (2000–2006).
[13] P. Fattahi, M. Saidi Mehrabad, F. Jolai, Mathematical modeling and heuristic Currently, he is an Assistant Professor at Industrial Man-
approaches to flexible job shop scheduling problems, Journal of Intelligent agement Department, Shahid Beheshti University, Tehran,
Manufacturing 18 (3) (2007) 331–342. Iran. His research interests are Production Planning and
[14] K. Mori, M. Tsukiyama, T. Fukuda, Immune algorithm with searching diversity Scheduling, Financial Engineering, Quality Engineering,
and its application to resource allocation problem, Transactions of IEEE Japan Applied Operations Research, Simulation, and Artificial In-
113C (1993) 872–878. telligence techniques in the areas of manufacturing systems design.
A. Bagheri et al. / Future Generation Computer Systems 26 (2010) 533–541 541
Iraj Mahdavi is the professor of Industrial Engineering M. Yazdani accomplished his B.Sc. in Industrial Engineer-
at Mazandaran University of Science and Technology and ing at Islamic Azad University, Qazvin, Iran (2002–2006),
Vice President of Graduate Studies and Research. He re- and M.Sc. in Industrial Engineering at Islamic Azad Univer-
ceived his Ph.D. from India in Production Engineering and sity, Qazvin, Iran (2006–2008). His research interests are
Post-Doctorate professor from Hanyang University, Korea. Production Scheduling, Project Management, Operations
He is also the editorial board of four and referee of eight in- Research and Artificial Intelligence techniques.
ternational journals. He has published over 70 research pa-
pers. His research interest includes Digital management of
industrial enterprises, intelligent operation management
and industrial strategy setting.