You are on page 1of 18

Int. J. Quality and Innovation, Vol. 3, Nos.

2/3/4, 2017 229

A genetic algorithm-based schedule optimisation of a


job shop with parallel resources

Ahmad Wasim*, Zawar A. Nawaz Bhatti,


Mirza Jahanzaib and Salman Hussain
Department of Industrial Engineering,
University of Engineering and Technology,
Taxila, Pakistan
Email: Wasim.ahmad@uettaxila.edu.pk
Email: zac_zoe@hotmail.com
Email: jahan.zaib@uettaxila.edu.pk
Email: salman.hussain@uettaxila.edu.pk
*Corresponding author

Abstract: This paper presents a genetic algorithm for a job shop scheduling
problem with parallel machines. The objective is to minimise the makespan.
After solving an example, the performance of the proposed algorithm was
examined on a set of test problems. The computational test was performed with
moderate benchmark instances given in the literature. Now, many industrial
work centres are shifting their focus towards implementation of job shop
scheduling model. Large throughput and just-in-time restrictions have
augmented the requirement of additional parallel machines at various
production stages. This generates the scope for research on optimising job shop
problem with parallel machines. However, research on this topic is very limited
as compared to other job shop problems. A genetic algorithm has been
proposed in this research work which effectively finds the near optimal
makespan schedules for the job shop problem with parallel machines. The
algorithm was implemented on the modified benchmarks from the literature
and the results were compared with heuristics methods available in literature
for solving this problem. It is shown that the proposed GA performs reasonably
well when compared to the other techniques under consideration.

Keywords: makespan; work centres; benchmarks; just in time.


Reference to this paper should be made as follows: Wasim, A.,
Nawaz Bhatti, Z.A., Jahanzaib, M. and Hussain, S. (2017) ‘A genetic
algorithm-based schedule optimisation of a job shop with parallel resources’,
Int. J. Quality and Innovation, Vol. 3, Nos. 2/3/4, pp.229–246.
Biographical notes: Ahmad Wasim is working as an Associate Professor and
is currently the Chairman of Industrial Engineering Department, University of
Engineering and Technology Tasila, Pakistan. He did his PhD degree from
Cranfield University, UK. Currently, he has published more than 40 research
articles. His major area of research is cost modelling, product development,
Lean product development, manufacturing processes and lean product and
process development.
Zawar A. Nawaz Bhatti is an MS full time scholar at Industrial Engineering and
Manufacturing in Department of Industrial Engineering, University of
Engineering and Technology Taxila. Currently, he is working on the
optimisation of job shop with parallel resources using genetic algorithm-based
schedule.

Copyright © 2017 Inderscience Enterprises Ltd.


230 A. Wasim et al.

Mirza Jahanzaib is a Professor at the Industrial Engineering Department,


University of Engineering and Technology, Taxila, Punjab, Pakistan. He has
more than 90 research publications. His major area of research is
manufacturing processes, metal forming and cutting analysis, design and
optimisation of manufacturing systems using mathematical algorithm and
parametric equations modelling.

Salman Hussain is an Assistant at the Industrial Engineering Department,


University of Engineering and Technology Taxila, Pakistan. He has more than
20 research publications. His major area of research is manufacturing
processes, optimisation techniques, response surface methodology, ANOVA
and Taguchi method.

1 Introduction

The achievement of workshop objectives greatly depends upon the management of its
resources. Subsequently, scheduling of tasks on available resources forms the major
portion of workshop management. The increased tendency of managers towards
implementation of job shop models in their production workshops has augmented the
need of effective machine layouts and efficient scheduling of tasks at hand. This problem
aggravates in large-scale industries where great number of tasks need to be scheduled on
several resources, sometimes working in parallel, to achieve production targets. This
environment may have a large number of benefits but implementation of its various
phases especially resource layout and scheduling of tasks, is a very complex undertaking.
Researchers and managers have carried out extensive study on various methods for
carrying out the optimal scheduling of job shops and its variants. Out of these, genetic
algorithm (GA), also known as evolutionary algorithm, has been the focus of research
over the last two decades and it provides optimal or near-optimal solutions for job shop
scheduling problems (JSSPs) if implemented in a correct manner. The nature of this
algorithm supports integration to other methods, which in turn yields better solutions to
complicated job shop problems including parallel machine issues. Therefore to sum up,
successful implementation of GA on complicated JSSPs is a dire necessity of large-scale
production work-centres for realisation of their highly variable demands. Section 2 of this
paper will cover the literature review whereas Section 3 is problem description, Section 4
is selection of GA parameters and formulation of algorithm will be followed by Section 5
is calculation and results and Section 6 is analysis discussion. Last section of the paper
will cover the conclusions.

2 Literature review

The current trend in manufacturing industries and services is creating a tendency for
work centres to shift towards high variety production and high automation, which is
subsequently increasing the application of job shop environment with parallel resources.
The scheduling problem linked with this environment is more commonly known as
parallel machine job shop scheduling problem (PMJSSP).
A genetic algorithm-based schedule optimisation of a job shop 231

Immensely detailed research has been carried out over the past few decades on
minimisation of makespan of job shop scheduling problem (JSSP). It is important to
mention that even with the large research in this field, there yet has not been any
technique that provides the optimum values for each type of test case. Correspondingly,
in the last decade, focus of researchers has now shifted to an extension of JSSP namely
flexible job shop scheduling problem (FJSSP). This shift is because of the great deal of
challenge that this problem poses due its attribute for catering two problems
simultaneously; sequencing of tasks and assignment of variable machines for a particular
operation. That is why; the literature on PMJSSP is scarce when compared to JSSP and
FJSSP.
This limited available literature is further trimmed down due to the different objective
functions which are optimised in these researches. Nevertheless, no researcher has
applied a pure GA for optimising a makespan to this problem. This coupled with the
importance of this problem in industrial/services area has been the drive for this research
work.
Gholami and Sotskov (2014b) presented an adaptive algorithm with a learning stage
for solving parallel resources job-shop. The learning stage uses the knowledge gained
from some benchmark priority dispatching rules which subsequently allows a scheduler
to improve the solution quality. Once trained on solving sample relatively small
problems, the adaptive algorithm is able to solve similar job shop problems with larger
size better than learning stage benchmark heuristics. Gholami and Sotskov (2014a) also
developed a fast heuristic algorithm using mixed model graph for a multistage processing
system, which includes both identical (parallel) resources that can process the same set of
operations and different resources that can process only different operation sets (IJ||Cmax).
Chen et al. (2006) applied the shifting bottle neck procedure on parallel machine job
shop. Whereas Liu and Kozan (2012) used a hybrid shifting bottleneck procedure
(HSBP) algorithm for same problem. In their research work, based on the analysis of
structural properties in an extended disjunctive graph model, a HSBP algorithm was
combined with a tabu search metaheuristic algorithm to solve the PMJSS problem. The
HSBP uses a topological-sequence algorithm to breakdown the given problem into a set
of single-machine scheduling and/or parallel-machine scheduling sub-problems.
Moreover, they utilised the extended Jackson rule to solve the PMS sub-problem. The
tabu search algorithm was embedded under the framework of SBP to optimise the JSS
and PMJSS cases. These problems were tested on modified benchmark test instances
from literature and proved their performance abilities. Zhang and Liu (2012) presented a
hybrid ant colony optimisation algorithm for this problem. Apart from these researches,
two reinforcement learning approaches for parallel machines JSSP have been proposed
by Martinez et al. (2010). Gomes et al. (2005) have discussed the parallel resources job
shop with re-circulation and machine buffers.
As per the information available through exploration of available researches, the
amount of research work available on implementation of GA on JSSP with parallel
resources is not scarce but is also not in abundant quantity. Chen et al. (2012) have
discussed use of GA and grouping GA for the same problem with re-entrant process,
optimising multi-objective functions (total tardiness, total machine idle time and
makespan). The proposed algorithm worked upon two major modules: machine selection
module (MSM) and operation scheduling module (OSM). Simulation results
demonstrated that MSM and OSM respectively using GGA and GA outperformed current
232 A. Wasim et al.

methods used in practice. Chang et al. (2014) implemented GA for optimising total
completion time of unrelated parallel machines FJSSP. Mönch et al. (2007) introduced
implementation of GA in sub problem solutions for a shifting bottleneck procedure for
total weighted tardiness. Rossi and Boschi (2009) presented an advanced algorithm for
solving the flexible manufacturing systems (FMS) scheduling in a job shop environment
with routing flexibility where the assignment of operations to identical parallel machines
has to be managed, in addition to the traditional sequencing problem. The researchers
propose a hybrid GA-ACO whose results on modified benchmark problems were
compared with independent GA and ACO. A modular approach was adopted by the
researchers in order to obtain a simplistic scalable parallel evolutionary-ant colony
framework.

3 Problem description

Objective function of the under study problem was generated through coding and is
embedded in the code of the algorithm while maintaining the validity of constraints and
conditions. The basic description and details of parameters of the problem are as follows:
n number of jobs
m number of machines
ji job ‘i’ where i = 1, 2, ……, n
mk machine ‘k’ where k = 1, 2, ….., m
wk number of parallel machines available at machine ‘k’ where ‘w’ = 1, 2, ….., w
Pik processing time of job ‘i’ on machine ‘k’
O(i,z) operation ‘z’ of job ‘i’ that is performed on a specific machine
CMax maximum completion time or makespan.
The completion of any job ‘i’ is dependent upon completion of its set of operations
{O(i,1), O(i,2), ….., O(i,z)} while being processed on respective machines {m1, m2, …., mk}
as per the given pre-determined order where processing time of each operation is Pik > 0.
Whereas identical machines in any group of machines mk have the handling capacity of
wk jobs, however, the operation on a particular machine cannot be stopped before
completion. Each operation of a particular job O(i,z) has a starting time S(O(i,z)). The
completion time of any operation C(O(i,z)) is given by
C ( O(i , z ) ) = S ( O(i , z ) ) + Pik (1)

where an operation O(i,z) cannot have a starting time S(O(i,z)) before C(O(i,z–1)).
Furthermore, the objective function is to find a sequence of operations for the given jobs
{ji} on the set of machines {mk} where the completion of schedule ‘C’ has minimal
length, i.e.,

Minimise C = {C ( O(1,1) ) , ( O(1,2) ) , ......, ( O(1, z ) )}


1→i
(2)
A genetic algorithm-based schedule optimisation of a job shop 233

4 Selection of parameters and formulation of algorithm

The algorithm was formulated through selection of parameters from available literature,
while keeping in mind requirement of effective integration of these parameters in order to
work together efficiently for resolution of under review problem. Normal process of
algorithm operation was amended by introduction of resources capability so that parallel
resources could be handled by algorithm. MATLAB was used for coding and
implementation of proposed algorithm due to its versatility and generic interface which
can be integrated with many other applications if required. The baseline pseudo code has
been included as Appendix. Details of each parameter have been elaborated in
subsequent paragraphs.

4.1 Encoding and initial population


The encoding of chromosomes has been selected as operation-based representation with
job repetitions (Bierwirth, 1995) chiefly because this encoding does not produce illegal
sequences especially when randomly generated. Furthermore, no special checks have to
be implemented when either generating a random chromosome or applying GA operators.

Figure 1 Results for random selections (PC 0.6 and PM 0.1) (see online version for colours)

4.2 Selection for reproduction


Elitism (Mehta and Sharma, 2013) selection of parents for reproduction has been chosen
which enforces preservation of best solution. However, to avoid early convergence
random selection has also been added. In order to select a balanced percentage of each,
234 A. Wasim et al.

comparison of different combinations was carried out on modified benchmark problem


from Lawrence (1984) which is depicted in Figures 1 and 2, where it is evident that the
most feasible combination is that of 0.9 elitism and 0.1 random.
Figure 2 Results for random selections (PC 0.7 and PM 0.1) (see online version for colours)

4.3 Crossover
Order preserving one point crossover (‘A survey of genetic algorithms for shop
scheduling problems’) was selected for implementation. A cut point is selected for the
pair of parents and the offspring are subsequently generated such that the first portion for
each offspring is selected from one of the parents and the remaining is taken from the
other parent while preserving the order of its genes. Through this process, characteristics
of both parents are inherited in the offspring. Different crossover rates (PC) were tested
against a modified bench mark problem in combination with various mutation rates.
Results showed that combination of PC 0.6 and PM 0.1 showed the best result which is
evident from Figures 3 to 6.

4.4 Mutation
Swap mutation was selected for the proposed algorithm. This mutation works well with
the chosen encoding strategy and infeasible solutions are not generated hence saving time
and efforts. Furthermore, this mutation has the least deviation effect from the parent
(Cicirello and Cernera, 2013).
A genetic algorithm-based schedule optimisation of a job shop 235

Figure 3 Results for 0.5 PC with different PM combinations (see online version for colours)

Figure 4 Results for 0.6 PC with different PM combinations (see online version for colours)
236 A. Wasim et al.

Figure 5 Results for 0.7 PC with different PM combinations (see online version for colours)

Figure 6 Comparison of best combinations for each PC (see online version for colours)

4.5 Stopping criteria


The stopping criteria for each problem case have been fixed to the following two
conditions, whichever comes first:
A genetic algorithm-based schedule optimisation of a job shop 237

1 NGEN = 100 (total number of iterations = 100)


2 the optimal does not improve in the last ten iterations.

5 Calculation and results

As already discussed in the previous sections that very limited work has been performed
on problems for job shop scheduling with parallel resources and correspondingly no
benchmark cases are available for these problems. However, researchers have utilised the
available benchmark cases for job shop scheduling and amended them accordingly to
check efficacy of their algorithms. In this regard, benchmark cases of Lawrence (1984)
and Muth and Thompson (1963) have been amended by most researchers to include
parallel resources. However, in order to check for its implementation and effectiveness on
general JSSP also, the baseline algorithm was tested on the some selected original
benchmark cases and compared to the already available optimal values (Gholami and
Sotskov, 2014b) to.
Table 1 Application of baseline algorithm on JSSP benchmark instances

Makespan values %
JSSP Size
Proposed GA Optimal (Gholami and Sotskov, 2014b) deviation
la01 10 × 5 666 666 0.0
la05 10 × 5 593 593 0.0
la07 15 × 5 916 890 –2.9
la11 20 × 5 1,260 1,222 –3.1

The results in Table 1 show that the algorithm can effectively be used for JSSPs. These
give a fair idea that the proposed GA is effective in finding the near optimal solution to
JSSP problems. It does not provide the optimal values for each case; nevertheless, the
obtained values have only a little deviation from the optimal ones. The efficacy can be
checked from percentage (%) deviation of objective function which is calculated
through (3)
% deviation = (Opt − GA) Opt (3)

After implementation of the proposed algorithm on selected benchmark JSSP, the


proposed algorithm was then implemented on the case problem under discussion. As
already discussed, a lot of benchmark test instances are available in literature for JSSP
and FJSSP, however, no benchmark cases have been generated for JSSP with parallel
resources in the available literature. Researchers on the other hand use the available JSSP
benchmark test instances and modify them to generate test instances for parallel resource
cases. In this regard, Gholami and Sotskov (2014a, 2014b) and Rossi and Boschi (2009)
have used their own methods to modify test instances.
In order to construct the test instances for the case under review, Gholami and
Sotskov (2014a, 2014b) randomly replicated the resources terming each as a work centre
(w) in the range [1, 5] for benchmark instances for Lawrence (1984) and Muth and
Thompson (1963). The resultant work centres generated for each test instance are
238 A. Wasim et al.

depicted in Table 2, where each standard notation is added by with a character (’) to
differentiate between modified and original test instances.
Table 2 Generation of work centres with multiple parallel resources

Work centres
JSSP Size
M1 M2 M3 M4 M5 M6 M7 M8 M9 M10
la01’ 10 × 5 3 2 1 1 4 - - - - -
la02’ 10 × 5 1 2 3 1 2 - - - - -
la03’ 10 × 5 3 4 5 1 1 - - - - -
la04’ 10 × 5 3 2 4 5 2 - - - - -
la05’ 10 × 5 3 1 2 3 4 - - - - -
la06’ 15 × 5 2 1 2 3 1 - - - - -
la07’ 15 × 5 4 1 3 3 2 - - - - -
la08’ 15 × 5 5 2 4 1 1 - - - - -
la09’ 15 × 5 1 3 4 3 5 - - - - -
la10’ 15 × 5 5 3 3 2 4 - - - - -
la11’ 20 × 5 4 2 5 4 4 - - - - -
la12’ 20 × 5 5 4 2 3 1 - - - - -
la13’ 20 × 5 3 4 3 4 3 - - - - -
la14’ 20 × 5 2 5 2 5 2 - - - - -
la15’ 20 × 5 4 1 4 1 4 - - - - -
la16’ 10 × 10 3 4 5 2 1 5 4 3 2 1
la17’ 10 × 10 4 3 5 1 3 2 3 1 4 4
la18’ 10 × 10 4 4 4 4 4 3 3 3 3 3
la19’ 10 × 10 4 5 3 4 1 1 1 2 4 3
la20’ 10 × 10 4 3 3 2 5 5 3 3 4 4
mt10’ 10 × 10 1 3 2 4 2 2 3 2 3 3
mt20’ 20 × 5 3 3 2 2 3 - - - - -
Source: Muth and Thompson (1963) and Gholami and Sotskov (2014a)
Similarly, Liu and Kozan (2012) have replicated resources in their research in such a
manner that for 5 resources the replication is {1, 2, 1, 2, 1} and for ten resources it is
{1, 2, 1, 2, 1, 2, 1, 2, 1, 2} and so on. Rossi and Boschi (2009) have modified the
instances by increasing each resource and jobs by the same number (2 and then 3) for
each problem.

5.1 Calculations
Before application of the algorithm on the test instances, it was necessary that the
operation parameters of the algorithm for each test instance should be finalised. Selection
process of these operation parameters has already been discussed in Section 4. Final
selected values for each operation parameter for respective test instance have been
depicted in Table 3. The stopping criteria are 100 iterations or no improvement in last ten
iterations as already discussed.
A genetic algorithm-based schedule optimisation of a job shop 239

Table 3 Algorithm operation parameters

No. of Work
S Crossover Mutation
Case jobs centres PS
no.
n m PC Best Rand PM Best Rand
1 la01’ 10 5 50 0.6 27 3 0.1 4 1
2 la02’ 10 5 50 0.6 27 3 0.1 4 1
3 la03’ 10 5 50 0.6 27 3 0.1 4 1
4 la04’ 10 5 50 0.6 27 3 0.1 4 1
5 la05’ 10 5 50 0.6 27 3 0.1 4 1
6 la06’ 15 5 75 0.6 42 4 0.1 7 1
7 la07’ 15 5 75 0.6 42 4 0.1 7 1
8 la08’ 15 5 75 0.6 42 4 0.1 7 1
9 la09’ 15 5 75 0.6 42 4 0.1 7 1
10 la10’ 15 5 75 0.6 42 4 0.1 7 1
11 la11’ 20 5 100 0.6 54 6 0.1 9 1
12 la12’ 20 5 100 0.6 54 6 0.1 9 1
13 la13’ 20 5 100 0.6 54 6 0.1 9 1
14 la14’ 20 5 100 0.6 54 6 0.1 9 1
15 la15’ 20 5 100 0.6 54 6 0.1 9 1
16 la16’ 10 10 100 0.6 54 6 0.1 9 1
17 la17’ 10 10 100 0.6 54 6 0.1 9 1
18 la18’ 10 10 100 0.6 54 6 0.1 9 1
19 la19’ 10 10 100 0.6 54 6 0.1 9 1
20 la20’ 10 10 100 0.6 54 6 0.1 9 1
21 mt10’ 10 10 100 0.6 54 6 0.1 9 1
22 mt20’ 20 5 100 0.6 54 6 0.1 9 1

5.2 Results with instances from Gholami and Sotskov (2014a, 2014b)
The algorithm was first applied on the 22 modified test instances used by Gholami and
Sotskov (2014a, 2014b) to compute the objective function value (Makespan). After
getting the makespan values from proposed GA, these values were compared with the
results of adaptive algorithm (Gholami and Sotskov, 2014b) and PMJS-H algorithm
(Gholami and Sotskov, 2014a) and seven famous dispatching rules (Gholami and
Sotskov, 2014b) frequently used in literature and are frequently used by managers for
workshop scheduling. These seven dispatching rules are part of the analysis of Gholami
and Sotskov (2014b) and include:
1 shortest processing time (SPT)
2 shortest release time (SReT)
3 shortest start time (SStT)
4 longest delay (LD)
240 A. Wasim et al.

5 shortest completion time (SCT)


6 earliest due date (EDD)
7 smallest number of remaining operations (SNRO).
The results from proposed GA and other methods/techniques under review have been
tabulated in Table 4. The best makespan value for each test case has been underlined and
highlighted in bold characters.
Table 4 Comparison of results from proposed algorithm and other techniques

Minimum makespan values


Dispatching rules (Gholami and Sotskov, 2014b) Adapt algo PMJS-H
Case (Gholami (Gholami
and and GA
SPT SReT SStT LD SCT EDD SNRO Sotskov, Sotskov,
2014b) 2014a)
la01’ 1,273 661 742 1,514 740 827 653 653 652 581
la02’ 1,542 908 768 1,608 786 914 924 687 667 667
la03’ 1,171 639 679 784 601 610 639 595 523 513
la04’ 976 458 446 1,229 474 684 535 429 416 388
la05’ 1,136 562 586 891 672 551 510 493 463 463
la06’ 2,041 1,273 913 1,914 1,048 1,054 935 913 828 815
la07’ 1,342 904 756 1,535 756 769 736 745 708 695
la08’ 1,996 1,044 906 1,432 1,101 1,146 927 887 863 863
la09’ 1,508 839 769 1,690 912 974 769 769 769 769
la10’ 1,345 579 512 1,318 676 783 669 495 444 444
la11’ 1,831 665 676 1,420 757 762 676 660 543 543
la12’ 1,315 800 719 1,339 997 989 726 732 701 701
la13’ 1,865 629 554 1,724 905 1,004 514 558 474 472
la14’ 1,658 754 838 1,522 882 752 759 701 692 604
la15’ 2,305 1,454 1,486 1,886 1,562 1,747 1,365 1,238 1,202 1,199
la16’ 1,739 818 870 2,391 1,055 1,162 863 827 819 794
la17’ 2,720 866 1,040 1,831 986 912 787 765 795 793
la18’ 1,177 709 663 1,621 709 903 708 663 663 663
la19’ 2,148 869 823 2,464 1,014 904 854 793 719 778
la20’ 2,171 761 806 2,442 806 1,072 756 756 756 756
mt10’ 1,975 1,101 921 1,875 1,083 1,008 983 904 854 841
mt20’ 1,902 869 882 1,507 1,024 1,052 831 827 734 696

As can be seen from Table 4, the makespan calculated from the proposed GA
outperforms all other methods and techniques under review. The proposed GA fails to
optimise the makespan for only 01 test case (La19’).
A genetic algorithm-based schedule optimisation of a job shop 241

5.3 Results with instances from Liu and Kozan (2012)


After the detailed comparison with Gholami and Sotskov (2014a, 2014b), some selected
cases were taken from Liu and Kozan (2012) for comparison. The results for these cases
which have been achieved through a HSBP algorithm have been compared with those
acquired from proposed GA in Table 5.
Table 5 Comparison of results from proposed algorithm and HSBP

JSSP Size HSBP algorithm (Liu and Kozan, 2012) GA % improvement


la01” 10 × 5 666 666 0.00
la02” 10 × 5 604 598 0.99
la06” 15 × 5 926 926 0.00
la07” 15 × 5 887 890 –0.33
la11” 20 × 5 1,222 1,222 0.00
la12” 20 × 5 1,030 1,027 0.29
la17” 10 × 10 745 732 1.7
La18” 10 × 10 808 776 3.96
Source: Liu and Kozan (2012)

5.4 Results with instances from Rossi and Boschi (2009)


The proposed algorithm was also compared with selected cases for the GA-ACO
algorithm of Rossi and Boschi (2009). The number of jobs of each instance from
Lawrence (1984) have been multiplied by two (2n) whereas the number of machines are
‘m’ with two parallel machines at each stage
Table 6 Comparison of results from proposed algorithm and GA-ACO

GA-ACO (Rossi and GA (Rossi and Proposed


JSSP Size % improvement
Boschi, 2009) Boschi, 2009) GA
la01”’ 10 × 5 666 675 666 0.00
la02”’ 10 × 5 688 712 705 –2.47
la05”’ 10 × 5 593 593 593 0.00
la06”’ 15 × 5 926 926 926 0.00
la07”’ 15 × 5 894 939 916 –2.46
la12”’ 20 × 5 1,039 1,051 1,047 –0.76
la13”’ 20 × 5 1,150 1,158 1,152 –0.17
Source: Rossi and Boschi (2009)
Gantt charts for the optimal makespan values acquired through the proposed algorithm
for each of the three different types of modified problems (La01’, La01”, La03”’) are
shown in Figures 7 to 9.
242 A. Wasim et al.

Figure 7 Gantt chart for La01’ machine sequence (see online version for colours)

Figure 8 Gantt chart for La01” machine sequence (see online version for colours)

Figure 9 Gantt chart for La01”‘ machine sequences (see online version for colours)

6 Analysis and discussions

The importance of GAs for scheduling problems cannot be denied and the same has been
shown in this research through application of the proposed GA on a generalisation of
JSSP, i.e., JSSP with parallel resources (PMJSSP). The results in Tables 5 and 6 are
reasonable enough to confirm the efficacy of the proposed algorithm for JSSP with
parallel resources. However, after reviewing the results, following can be easily
concluded:
1 Efforts have been made to select the parameters of the proposed GA in such a
way that basic issues pertaining to generation of infeasible solutions and early
convergence can be removed which is evident from the results. Moreover, the
inclusion of randomness in selection/population generation combined with elitism
selection provides the deviation required at each stage to avoid trapping at local
minima.
A genetic algorithm-based schedule optimisation of a job shop 243

2 The proposed GA outperforms heuristics/methods and algorithms used in Gholami


and Sotskov (2014a, 2014b). A simple graphical comparison (Figure 10) of the
methods applied on the problem reveals that, SNRO and SStT give the best
makespan value for only two instances, Adaptive algorithm for four instances and
PMJS-H algorithm for ten instances. Whereas, proposed GA provides best makespan
values for 20 out of the under review 22 instances.
3 The proposed GA when compared to the HSBP algorithm of Liu and Kozan (2012)
for selective cases shows compatible results and outperforms the later in certain
cases.
4 The GA-ACO of Rossi and Boschi (2009) performs better than the proposed GA;
however, the deviation is not high and is acceptable for compatibility concerns. The
GA selected by Rossi and Boschi (2009), nevertheless is outperformed by the
proposed GA.
5 It is pertinent to highlight here that the modification of test instances performed in
Rossi and Boschi (2009), doubles or triples the jobs and machines at the same time.
This method converts a particular job shop instance into two/three job shops working
in parallel and does not generate the required environment with machine variability.
The main purpose of the research was to check the efficacy in a parallel resource job
shop environment with variable machine capacity, which is the case in actual
industrial work centres. This criterion is not achieved in the modification carried out
in Rossi and Boschi (2009).
Fitness evaluation of the proposed algorithm was also carried out relative to the previous
optimal values available in literature. Figure 11 shows the fitness of the GA for each size
of problem tested during the research.

Figure 10 Comparison of GA with other methods/techniques (see online version for colours)
25
20
20 SNRO
No of Optimum
Makespans

15 SStT
10
10 Adaptive
Algo
4 PMJS-H Algo
5 2 2
0
Methods / Techniques

The proposed GA gradually converges to the best makespan value without any deviations
and does it in small number of iterations. Furthermore, it can be seen that although the
number of iterations increase with the increase in size of the problem, the convergence
slope remains the same. This depicts that the algorithm is feasible for both small and
large problems. Moreover, the stepwise improvement is gradual and even the initial result
is also not far placed from the final makespan values.
244 A. Wasim et al.

Figure 11 Fitness evaluation of proposed GA relative to available optimal (see online version
for colours)

The computation times for each algorithm under review have been noted from their
respective research papers. Different operating systems have been used by each
researcher and therefore an exact comparison cannot be made; nevertheless when placed
together, it is evident that the values obtained for the proposed GA are higher than others
but reasonably low and therefore can be accepted. The computation times have been
stated down in Table 7.
Table 7 Computational time comparison

Computational time (min)


Pentium IV AMD Athlon XP
Intel core2 Duo, T6400,
3.20 GHz and 2,800 MHz and
2.00 GHz and 2 GB RAM
Size 2 GB RAM 512 MB RAM
Adaptive algorithm HSBP algorithm
Proposed GA-ACO (Rossi and
(Gholami and (Liu and Kozan,
GA Boschi, 2009)
Sotskov, 2014b) 2012)
10 × 5 <6 <1 <1 < 5.5
15 × 5 < 15 < 18 <4 <2
20 × 5 < 23 < 22 < 11 <6
10 × 10 < 26 < 10 <3 -

7 Conclusions

A generic GA has been applied on job shop problems with parallel resources in this
research. The GA effectively finds the better values of makespan when compared to other
methods. The implementation and comparison of the proposed GA on various test cases
and its good performance in all cases supports the fact that it can be used in a variety of
A genetic algorithm-based schedule optimisation of a job shop 245

problem environments with machine variability. A basic review of methods under


consideration (except GA-ACO) reveals that the main reasons for improved results of the
proposed GA may be due to its handling of a large number of solution population in a
single iteration and its genetic re-production quality which induces neighbourhood search
for optimal solutions. However, future improvement work can be performed with an
additional constraint of re-work condition which is typically faced in actual industrial
work centres. Moreover, improvement in machine selection phase with the use of other
methods/heuristics can also be taken up to search for better results.
This research will pave the way for production managers to efficiently schedule tasks
at their large-scale job shops and would subsequently assist these work-centres in
reduction of heavy inventory level and reduced completion times of customer orders,
hence reducing production costs and increasing profits.

References
‘A survey of genetic algorithms for shop scheduling problems’, Heuristics: Theory and
Applications, 1st ed., Chapter 8, pp.161–222, Nova Science Publishers.
Bierwirth, C. (1995) ‘A generalized permutation approach to job shop scheduling with genetic
algorithms’, OR Spectrum, Vol. 17, Nos. 2–3, pp.87–92.
Chang, H-C., Tsai, H-T. and Liu, T-K. (2014) ‘Application of genetic algorithm to optimize
unrelated parallel machines of flexible job-shop scheduling problem’, Control and Automation
(ICCA), 11th IEEE International Conference, pp.596–599.
Chen, J.C., Wu, C-C., Chen, C.W. and Chen, K-H. (2012) ‘Flexible job shop scheduling with
parallel machines using genetic algorithm and grouping genetic algorithm’, Expert Systems
with Applications, Vol. 39, No. 11, pp.10016–10021.
Chen, K-P., Lee, M.S., Pulat, P.S. and Moses, S.A. (2006) ‘The shifting bottleneck procedure for
job-shops with parallel machines’, Int. J. Industrial and Systems Engineering, Vol. 1,
Nos. 1/2, pp.244–262.
Cicirello, V.A. and Cernera, R. (2013) ‘Profiling the distance characteristics of mutation operators
for permutation-based genetic algorithms’, in Boonthum-Denecke, C. and Youngblood, G.M.
(Eds.): FLAIRS Conf., AAAI Press.
Gholami, O. and Sotskov, Y.N. (2014a) ‘A fast heuristic algorithm for solving parallel-machine
job-shop scheduling problems’, International Journal Advanced Manufacturing Technology,
Vol. 70, pp.531–546.
Gholami, O. and Sotskov, Y.N. (2014b) ‘Solving parallel machines job-shop scheduling problems
by an adaptive algorithm’, International Journal of Production Research, Vol. 52, No. 13,
pp.3888–3904.
Gomes, M.C., Barbosa-Povoa, A.P. and Novais, A.Q. (2005) ‘Optimal scheduling for flexible
job shop operations’, International Journal of Production Research, Vol. 43, No. 11,
pp.2323–2353.
Lawrence, S. (1984) Supplement to Resource Constrained Project Scheduling: An Experimental
Investigation of Heuristic Scheduling Techniques, Graduate School of Industrial
Administration, Carnegie-Mellon University, Pittsburgh.
Liu, S.Q. and Kozan, E. (2012) ‘A hybrid shifting bottleneck procedure algorithm for the parallel-
machine job-shop scheduling problem’, Journal of the Operational Research Society, Vol. 63,
pp.168–182, DOI: 10.1057/jors.2011.4.
Martinez, Y., Wauters, T., De Causmaecker, P., Nowé, A., Verbeeck, K., Bello, R. and Suarez, J.
(2010) ‘Reinforcement learning approaches for the parallel machines job shop scheduling
problem’, Proceedings of the Cuba-Flanders Workshop on Machine Learning and Knowledge
Discovery.
246 A. Wasim et al.

Mehta, A. and Sharma, A. (2013) ‘Observing the effect of elitism on the performance of GA’,
International Journal of Advanced Research in Computer Science and Software Engineering,
June, Vol. 3, No. 6.
Mönch, L., Schabacker, R., Pabst, D. and Fowler, J.W. (2007) ‘Genetic algorithm-based sub
problem solution procedures for a modified shifting bottleneck heuristic for complex job
shops’, European Journal of Operational Research, 16 March, Vol. 177, No. 3,
pp.2100–2118.
Muth, J.F. and Thompson, G.L. (1963) Industrial Scheduling, Prentice-Hall, Englewood Cliffs, NJ.
Rossi, A. and Boschi, E. (2009) ‘A hybrid heuristic to solve the parallel machines job-shop
scheduling problem’, Advances in Engineering Software, Vol. 40, No. 2, pp.118–127.
Zhang, J. and Liu, G.B. (2012) ‘Hybrid ant colony algorithm for job shop schedule with unrelated
parallel machines’, Advanced Materials Research, January, Vols. 430–432, pp.905–908, Trans
Tech Publications.

Appendix (see online version for colours)


Define Variables
matrices_to_be_generated = N;
noOfCrossoverBestMatrices = 0.6*0.9*N; (crossover; section IV)
noOfCrossoverRandomMatrices = 0.6*0.1*N; (crossover; section IV)
noOfMutationBestMatrices = 0.1*0.9*N; (mutation; section IV)
noOfMutationRandomMatrices = 0.1*0.1*N; (mutation; section IV)
maximumIterations = 100; (stopping criteria, section IV)
maxIterationsIfSolutionNotImproving = 10;
Input Data
job_time_at_machine = []
job_sequence = []
machine_capability = [k1 k2 k3 ..... kj];
Module 1: Generation of Population
countForIterations = 0;
for IterationNumber=1:maximumIterations
Module 2: Selection and Crossover
Module 3: Selection and Mutation
Module 4: Best Solutions are Kept
Exit Loop if Minimum Time is Not Improving
if(minimum solutionTimes < minTime)
countForIterations = 0;
minTime = min(solutionTimes);
else
countForIterations = countForIterations + 1;
end
if(countForIterations == maxIterationsIfSolutionNotImproving)
break;
end
end

You might also like