Many of the problems that arise in production systems can be handled with multiobjective techniques. One of those problems is that of scheduling operations subject to constraints on the availability of machines and buffer capacity. In this paper we analyze different Evolutionary multiobjective Algorithms (MOEAs) for this kind of problems. We consider an experimental framework in which we schedule production operations for four real world Job-Shop contexts using three algorithms, NSGAII, SPEA2, and IBEA. Using two performance indexes, Hypervolume and R2, we found that SPEA2 and IBEA are the most efficient for the tasks at hand. On the other hand IBEA seems to be a better choice of tool since it yields more solutions in the approximate Pareto frontier.
1. Introduction
Production planning problems involve the allocation of scarce resources to different tasks in such way as to optimize one or more efficiency-related goals [1]. In most cases, these problems are analyzed as instances of the Job-Shop Scheduling Problem, in which given a set of machines and a list of jobs, represented as ordered sequences of operations, to be run on the machines, the goal is to minimize, in particular, the processing time of all jobs, known as makespan [2]. This problem belongs to the class NP-hard [3], for which no efficient algorithms are known to run in reasonable execution times. The literature focuses mostly on single-objective versions of the problem, despite the fact that several authors have stated that a genuine scheduling problem involves more than one objective when production efficiency is sought [4]. If this is indeed the appropriate approach, Multiobjective Evolutionary Algorithms (MOEAs) are the tools of choice [5, 6]. Their main advantages are their ease of adaptation to different instances and their overall efficiency. Only the fitness function has to be known, instead of its rates of variation, making the evolutionary algorithms efficient for problems that cannot be solved in reasonable time with gradient-based methods.
In this paper we will evaluate the performance of three MOEAs on Job-Shop scheduling problems [7, 8]: NSGAII [9], SPEA2 [10], and IBEA [11]. These competing approaches all use domination and elitism to reach the best possible approximation to the solutions of multiobjective problems. They differ in the strategies on which they are based (lack of a predefined sharing parameter, in the case of NSGAII; a fine grained fitness assignment procedure in SPEA2; a qualitative indicator function over Pareto approximations in IBEA), but their performance on different instances tends to be the best available in the literature. We, furthermore, add extra constraints, on both the availability of machines and the buffer capacity. We run the algorithms on real-world problems in which nonstandardized production (like in the Job-Shop context) has to share machines with standardized processes that have priority over the former.
2. Job-Shop Scheduling Problem
The Job-Shop Scheduling Problem is quite complex. It has been analytically solved for 1, 2, and 3 machines and a small number of jobs. Only a few efficient algorithms have been found for 4 or more machines and 3 or more jobs. This is due to the combinatorial explosion of possible schedules. In the next subsections we will review the state of the art in this matter and formally define the problem, introducing the objectives to be optimized in our analysis.
2.1. State of the Art
A brief review of the approaches to the Job-Shop Scheduling Problem shows a multiplicity of techniques. So, for instance, [12] presents a tabu search method intended to minimize total tardiness, while [13] presents a GRASP (Greedy Randomized Adaptive Search Procedures) algorithm that minimizes the makespan, and [14] uses a HACO (Hybrid Ant Colony Optimization) algorithm for the same goal. In [15] a localization approach is suggested, minimizing both makespan and the machine load. In [16] a mathematical model is introduced, able to solve only small instances of the problem. Closer to our object of study, [17] presents a hybrid algorithm also minimizing makespan, while [7] introduces a genetic algorithm in which the representation makes every schedule feasible. In [18] a genetic algorithm is presented for which the control parameters have been tuned to optimize makespan. In [19] dispatch rules are proposed and at each generation the search space is explored by means of schemes, again with the objective of minimizing makespan. This approach is generalized in [20] where an architecture based on an evolutionary algorithm is combined with learning through schemes and the generation of populations by means of combined dispatch rules. In [21] a multiple scenarios genetic algorithm is introduced, in which each scenario corresponds to an operation and each feasible machine to a state. In [22] a genetic algorithm profits from the localization approach presented in [15]. A class of mutations consists in allocating operations from machines with heavy loads to less loaded ones. In [2] a hybrid genetic algorithm solves the problem with the proviso that no waiting time is allowed among operations for any job, minimizing the makespan. Finally, [23] presents an evolutionary algorithm minimizing the makespan, the total work load, and the maximum load.
2.2. Formal Definitions
The Job-Shop Scheduling problem consists in finding an optimal allocation of a class of n jobs J={Jj}j=1n, to be processed by a set of m machines M={Mk}k=1m. Each job is described as a sequence of tasks that can be performed in sequence Jj≡S1,...,Snj. The operation of a task Si of job Jj on machine Mk is denoted as Oijk. Operation Oijk requires using machine Mk for an uninterrupted processing timeτijk. A solution for this problem involves the determination of the starting time tijk of each operation Oijk while optimizing the objectives [8]. Here we consider three objectives. The first one is the minimization of the makespan (1). This involves shortening the total time required for the n jobs. The second objective is the minimization of the mean flow time (2). This amounts to reducing the number of jobs processed in parallel. Finally, we seek to minimize the effects on the makespan of variations of the τijk, for each Oijk. For this we run microsimulations to find the variance of the first objective σ2(Cmaxj) [24]. The minimization of this variance ensures the stability of solutions (3):
(1)f1:minCmaxj=∑i∈Sjmaxk∈M(tijk+τijk),(2)f2:minF¯=1n∑j∈J∑i=m(tijh+τijh-t1jk),(3)f3:minσ2(Cmaxj).
We assume the nonnegativity of the starting time tijk of each Oijk: tijk≥0. Besides, we have (joint) precedence constraints of operations for each job: if i≥s, Si, Ss are tasks of Jj and Si is executed on Mk, while Ss on Mh, then tijk-tsjh≥τsjh. Finally, the (disjoint) nonjuxtaposition constraints are applied on each machine: if Si is a task in Jj while Ss in Jp, both to be executed on Mk, we have that tijk-tspk≥τspk. The purpose of the latter constraints is to warrant that no machine carries out two operations at the same time. Two additional constraints involve the availability of machines and the capacity of the buffer. The first ones limit the operational interval of each machine; that is, (tijk,tijk+τijk) must be larger than the operational interval corresponding to the standardized operational interval of machine Mk. The second group of constraints limits the number of operations Oijk on machine Mk that are on a waiting list. The buffer can either hold 0 operations (no-wait) or n-1 operations (nonrestricted).
3. Evolutionary Multiobjective Algorithms
Evolutionary algorithms imitate genetic processes by improving solutions, pairing existing solutions as if they were DNA chains, and creating new chains. A chromosome is composed by smaller units called genes. For our problem the chromosomes identify a schedule of operations. Evolutionary improvements should end up yielding the optimal schedule. To show how this works we use an example with three jobs and three machines (3×3). The total problem involves nine operations. Their corresponding processing times (τijk) and variances (σijk2) for the machine in which they run (Mk) are shown in Table 1.
Scheduling operations.
3×3 problem with 9 operations
Jj
J1
J2
J3
Oijk
O111
O212
O313
O122
O223
O321
O133
O231
O332
τijk
10
15
8
12
9
10
11
5
16
σijk2
4
4
2
4
3
5
2
1
4
Mk
1
2
3
2
3
1
3
1
2
3.1. The Evolutionary Phase
To represent an individual schedule, we use the notation proposed in [8]. The chromosome contains binary variables and the chain has as many genes as machines in the problem. Each gene has a certain number of alleles, depending on the number of jobs of the problem. More precisely, the size of a gene is ⌈log(n!)/log(2)⌉, while the total size of the chromosome is m*⌈log(n!)/log(2)⌉. For each gene the sequence of binary numbers represents the sequence of jobs in the corresponding machine Mk. In our example we choose 000→1∣2∣3, 001→1∣3∣2, 010→2∣1∣3, 011→2∣3∣1, 100→3∣1∣2 and 101→3∣2∣1. Consider the first parent in Figure 1. The first gene, of machine M1, is 000. This means that the sequence of jobs in the machine is 1, 2, and 3. For M2 the gene is 010, that is, the sequence of jobs, is 2, 1, and 3. Finally, for M3 the gene is 011, and therefore the jobs are 2, 3, and 1.
Chromosomes representing schedules.
A crossover operator acts on pairs of chromosomes. It aligns the chromosomes, cuts them at a certain points, and exchanges the fragments between the chromosomes. To see how it works, consider again Figure 1 the two “parents” to crossover, called First Parent and Second Parent. A “child” is built incorporating randomly elements from both parents (the offspring in Figure 2). The other child is obtained by inverting the choices made for the other one. This crossover, called uniform, yields better results exploring solutions close to the Pareto frontier. A mutation varies the binary values of one or more alleles of the gene. This variation is applied at random points of the chromosome, generating an individual with small differences with the original chromosome. In our case 10% of the alleles of the chromosomes are changed. In Figure 2, offspring* represents the mutated chromosome.
Crossover and mutation.
3.2. Selection of MOEAs
We consider three Multiobjective Evolutionary Algorithms: Nondominated Sorting Genetic Algorithm II (NSGAII) [9], Strength Pareto Evolutionary Algorithm 2 (SPEA2) [10], and Indicator-Based Evolutionary Algorithm (IBEA) [11]. They have been applied in the literature to engineering problems. It classifies the population in fronts. Each individual is assigned a rank corresponding to its nondominance level. This method ensures that the best solutions will remain at the next iteration. Elitism is therefore already incorporated without requiring an external procedure. NSGAII further reduces the complexity of the ordering procedure, based on nondominance, of its predecessor NSGA and allows the preservation of diversity by means of a technique called crowding. SPEA2 is a variant of SPEA. It assigns fitness by considering for each individual the class of individuals that dominate it and the class of those that are dominated by the individual. SPEA2 uses also a “closest neighbor” technique that values the density to improve the search. Finally, IBEA incorporates indexes of multiobjective quality, providing an alternative to Pareto dominance as a guide in the search.
4. Implementation and Design of Experiments
For our experiments we used four instances drawn from real cases: C_1 (15 × 20 problem with 157 operations), C_2 (20 × 20, 242 operations), C_3 (20 × 25, 412 operations), and C_4 (25 × 25, 597 operations). For each one we took into account the characteristics of the buffer, namely, no-wait and nonrestricted. Once the appropriate number of generations for the evolutionary phase and the production configuration for the microsimulations are defined, we run the experiments using PISA (A Platform and Programming Language Independent Interface for Search Algorithms) [25]. The parameters and characteristics of the experiments are shown in Table 2. For IBEA we chose the additive epsilon index. The other parameters keep their PISA predefined values. For each problem, the algorithm was run 30 times. From the class of solutions obtained, the dominated ones were eliminated. The running time of problems C_1, C_2, and C_3 was less than 30 minutes (Processor: 2.1 GHz AMD Turion X2 Ultra Dual-Core, Memory: 4 GB 800 MHz DDR2). C_4, instead, took in average 85,71 minutes.
Parameters and characteristics of the experiments.
C_1 15×20, 157 op.
C_2 20×20, 242 op.
C_3 20×25, 412 op.
C_4 25×25, 597 op.
Inicialization
Random
Random
Random
Random
Representation
Binary
Binary
Binary
Binary
Number of genes
20
20
25
25
Size of gene
22
62
62
84
Size of chromosome
820
1240
1550
2100
Size of population
50
50
100
100
Generations
1000
1000
1000
1000
Crossover type
Uniform
Uniform
Uniform
Uniform
Probability of crossover
0.85
0.85
0.85
0.85
Mutation type
Alterate
Alterate
Alterate
Alterate
Mutated alleles
82
124
155
210
Probability of mutation
0.05
0.05
0.05
0.05
Number of objectives
3
3
3
3
Number of runs
30
30
30
30
Buffer limits
0–14
0–19
0–19
0–24
5. Results
We provide in the next subsections analyses of the Pareto frontiers and a comparison of the three algorithms by means of the Hypervolume and R2 indexes.
5.1. Pareto Frontiers
The frontiers obtained in our experiments are shown in Figures 3 to 6. The horizontal axis represents objective f1, the left vertical one, f2, while the right vertical, f3. Comparing f1 and f2, the fronts of the three algorithms look alike, although IBEA generated a better distributed front. NSGAII, instead, generated an incomplete frontier. With respect to f1 versus f3, we see that for C_1 with a buffer of 0 operations, algorithms SPEA2 and IBEA obtained better values than NSGAII (Figure 3). For C_1 with a buffer of 14 operations, IBEA got the best variance values (Figure 3). For C_2 the 0 operations buffer makes no difference (Figure 4). For C_2 with a buffer of 19 operations, IBEA yielded the best values in variance (Figure 4). On C_3 with a 0 operations buffer, NSGAII and IBEA got better values than SPEA2 (Figure 5), while for the 19 operations buffer, NSGAII and SPEA2 obtained better values than IBEA (Figure 5). Finally, on C_4, a 0 or 24 operations buffer made no difference (Figure 6).
Pareto frontiers, f1 versus f2 and f1 versus f3, C_1.
Pareto frontiers, f1 versus f2 and f1 versus f3, C_2.
Pareto frontiers, f1 versus f2 and f1 versus f3, C_3.
Pareto frontiers, f1 versus f2 and f1 versus f3, C_4.
5.2. Comparison through Quality Indexes
We compared the results according two indexes: Hypervolume [26] and R2 [27]. These are the usually recommended approaches to the evaluation of Pareto fronts. They provide slightly different advantages in the assessment of the frontiers. On one hand, Hypervolume seems fitter because it satisfies strong monotonicity while R2 only weak monotonicity. On the other, the former tends to be biased towards boundary solutions, while R2 is more uniform. Hypervolume requires a reference point to establish the area dominated by a given point, represented by the vector of its f1, f2, and f2 values. Thus, a higher index indicates that the algorithm yields better solutions. R2 estimates the degree of closeness of the solution to the real front. Therefore, a low index indicates that the algorithm yields better solutions. Figures 7 and 8 show cases in which SPEA2 and IBEA are better according both indexes. Figure 9, instead, shows a case in which IBEA yields the better results, while Figure 10 presents a case in which there are no differences among the three algorithms. A possible explanation for NSGAII’s general low degree of efficiency is that more than 2 objectives impair the crowding operator. Besides, it is well known that this algorithm is not efficient with binary representations.
Boxplot/values for NSGAII, SPEA2, and IBEA, C_1.
Boxplot/values for NSGAII, SPEA2, and IBEA, C_2.
Boxplot/values for NSGAII, SPEA2, and IBEA, C_3.
Boxplot/values for NSGAII, SPEA2, and IBEA, C_4.
To these casual observations we added a parametric statistical analysis, Fisher’s test, with a significance level of 0.05. Problems C_1, C_2, and C_3 present significant differences in favor of SPEA2 and IBEA over NSGAII. Even if C_3 IBEA seems to perform better than SPEA2, the statistical analysis does not yield differences between these two algorithms. Finally, in C_4 there are no significant differences among the algorithms. Table 3 shows the contribution of each algorithm to the approximate Pareto, formed by taking the nondominated solutions.
Approximate Pareto frontier and the contribution of each algorithm.
Problem
NSGAII
SPEA2
IBEA
C_1 (no-wait)
50,00%
60,00%
100,00%
C_1 (non-restricted)
59,26%
66,67%
100,00%
C_2 (no-wait)
48,48%
60,61%
100,00%
C_2 (non-restricted)
51,28%
69,23%
100,00%
C_3 (no-wait)
52,94%
73,53%
100,00%
C_3 (non-restricted)
50,98%
74,51%
100,00%
C_4 (no-wait)
46,30%
77,78%
85,19%
C_4 (non-restricted)
56,14%
73,68%
91,23%
6. Conclusions
This paper presents an analysis of the performance of three different Multiobjective Evolutionary Algorithms in experiments with Job-Shop Scheduling Problems. It required the specification of parameters appropriate for the problems at hand, involving constraints on machine availability and buffer capacity. An important share of the running time of the algorithms corresponded to microsimulations of the variance of makespan of solutions. The comparison leads to the selection of SPEA2 and IBEA, while the contribution to the approximate Pareto frontier makes IBEA the most efficient algorithm for the problems at hand. Future work involves the extension of this comparison on other production environment problems. It seems also worthwhile analyzing the implications of the variance of makespan in comparison with other objectives.
Acknowledgments
The authors want to thank the Consejo Nacional de Investigaciones Científicas y Técnicas of Argentina (CONICET), the Engineering Department of the Universidad Nacional del Sur (PGI 24/J056), the Agencia Nacional de Promoción Científica y Tecnológica (PICT-2011-0396), and the Institute of Intelligent Systems and Numerical Applications in Engineering (IUSIANI) of the Universidad de Las Palmas de Gran Canaria (Spain), for their support.
BihlmaierR.KobersteinA.ObstR.Modeling and optimizing of strategic and tactical production planning in the automotive industry under uncertainty20093123113362-s2.0-5954909165110.1007/s00291-008-0147-2Chao-Hsien J.Han-ChiangH.A hybrid genetic algorithm for no-wait job shop scheduling problems2009363580058062-s2.0-5834911582610.1016/j.eswa.2008.07.005UllmanJ. D.NP-complete scheduling problems19751033843932-s2.0-001651885510.1016/S0022-0000(75)80008-0ChinyaoL.YulingY.Genetic algorithm-based heuristics for an open shop scheduling problem with setup, processing, and removal times separated20092523143222-s2.0-6374909905610.1016/j.rcim.2007.07.017GoldbergD.1989New York, NY, USAAddison-WesleyCoelloC. A. C.van VeldhuizenD. A.LamontG. B.2002New York, NY, USAKluwer AcademicParkB. J.ChoiH. R.KimH. S. A.A hybrid genetic algorithm for the job shop scheduling problems20034545976132-s2.0-034609387610.1016/S0360-8352(03)00077-9FrutosM.TohméF.A multi-objective memetic algorithm for the job-shop scheduling problem20121322332502-s2.0-8485993631010.1007/s12351-012-0125-yDebK.PratapA.AgarwalS.MeyarivanT.A fast and elitist multiobjective genetic algorithm: NSGA-II2002621821972-s2.0-003653077210.1109/4235.996017ZitzlerE.LaumannsM.ThieleL.GiannakoglouK.TsahalisD.PeriauxJ.PapailiouK.FogartyT.SPEA2: improving the strength pareto evolutionary algorithm for multi-objective optimization20021926ZitzlerE.KünzliS.YaoX.BurkeE. K.LozanoJ.Indicator-based selection in multi-objective search20043242Springer832842Lecture Notes in Computer ScienceArmentanoV. A.ScrichC. R.Tabú search for minimizing total tardiness in a job shop20006321311402-s2.0-034259229710.1016/S0925-5273(99)00014-6BinatoS.HeryW. J.LoewensternD. M.ResendeM. G. C.A GRASP for job shop scheduling, essays and surveys2000Boston, Mass, USAKluwer Academic5980HeinonenJ.PetterssonF.Hybrid ant colony optimization and visibility studies applied to a job-shop scheduling problem200718729899982-s2.0-3424722360710.1016/j.amc.2006.09.023KacemI.HammadiS.BorneP.Correction to ‘approach by localization and multiobjective evolutionary optimization for flexible job-shop scheduling problems’20023221722-s2.0-003658876710.1109/TSMCC.2002.804307FattahiP.SaidiM.JolaiF.Mathematical modeling and heuristic approaches to flexible job shop scheduling problems20071833313422-s2.0-3454765108810.1007/s10845-007-0026-8TsaiC. F.LinF. C.A new hybrid heuristic technique for solving job-shop scheduling problemProceedings of the 2nd IEEE International Workshop on Intelligent Data Acquisition and Advanced Computing Systems2003535810.1109/IDAACS.2003.1249515WuC. G.XingX. L.LeeH. P.ZhouC. G.LiangY. C.Genetic algorithm application on the job shop scheduling problem4Proceedings of the International Conference on Machine Learning and Cybernetics2004210221062-s2.0-6344235003HoN. B.TayJ. C.Evolving dispatching rules for solving the flexible job-shop problem5Proceedings of the IEEE Congress on Evolutionary Computation2005284828552-s2.0-27144498946HoN. B.TayJ. C.LaiE. M.An effective architecture for learning and evolving flexible job-shop schedules200717923163332-s2.0-3375141806510.1016/j.ejor.2006.04.007ZhangH.GenM.Multistage-based genetic algorithm for flexible job-shop scheduling problem2005112232322-s2.0-33747735942PezzellaF.MorgantiG.CiaschettiG.A genetic algorithm for the flexible job-shop scheduling problem20083510320232122-s2.0-4024911842910.1016/j.cor.2007.02.014ChiangT. C.LinH. J.A simple and effective evolutionary algorithm for multiobjective flexible job shop scheduling20131411879810.1016/j.ijpe.2012.03.034EvansJ. R.OlsonD. L.1998NJ, USAEditorial Prentice HallBleulerS.LaumannsM.ThieleL.ZitzlerE.PISA—a platform and programming language independent interface for search algorithms20032632494508ZitzlerE.ThieleL.EibenA. E.Multi-objective optimization using evolutionary algorithms, a comparative case study1998Amsterdam, The NetherlandsSpringer292301HansenM. P.JaszkiewiczA.Evaluating the quality of approximations to the non-dominated set1998IMM-REP-1998-7Institute of Mathematical Modelling Technical University of Denmark