A Comparison of Genetic Algorithm and Particle Swarm Optimisation to Minimize the Makespan for Parallel Line Job Shop Scheduling

This paper describes the implementation of Genetic Algorithm (GA) and Particle Swarm Optimization (PSO) algorithm to minimize the total completion time of jobs called makespan in parallel line Job Shop Scheduling Problem (PJSSP). PJSSP is one of the scheduling methods in manufacturing industry for increasing plant utilization, reducing cycle time and to find the optimal allocation of jobs in multiple processing lines. Each job is assigned to a particular line and the job should be completed only in that assigned line. Also, the job should be processed in a particular order. PJSSP is always a challenging task in the combinatorial research and it requires a heuristic approach. Results show that the performance of PSO is superior to GA in order to find optimal solution with minimum makespan for PJSSP.


INTRODUCTION
In the manufacturing system, scheduling and planning a production order plays an important role.The scheduling and planning problems are usually combinatorial.Scheduling problems are defined as the process of assigning a set of jobs to resources over a period of time (Zhang et al., 2013).In recent years, scheduling problems exist in real world industrial situations.Performance criteria such as machine utilization, manufacturing lead times, processing time, inventory cost and meeting due date, customer satisfaction and quality of products are dependent on the efficient way the jobs are scheduled (Tang and Dai, 2015).Hence, it becomes increasingly important to develop an effective job shop scheduling approach.
A job shop environment consists of 'n' jobs and each job has a given machine route, where some machines are missed and repeated (Geyik and Cedimoglu, 2004).A parallel line scheduling problem has more than one processing line for jobs to be processed.The processing time of a job is different for each machine.Each job is assigned to only one particular line and is processed to complete in that line.Further, each job enters their respective lines at the same time and is processed in parallel manner.Thus, the parallel line job shop scheduling is challenging and time consuming (Haq et al., 2008).Job Shop Scheduling (JSS) problem involves a mission of a set of tasks to the workstations or machines in a particular sequence.Hence, it requires efficient evolutionary techniques to overcome the above issues.
During the past years of computational intelligence, different evolutionary algorithms are proposed in solving job shop scheduling problems (Gromicho et al., 2012).These evolutionary algorithms include Tabu Search method (Solimanpur and Elmi, 2013), Ant Colony Optimisation (Cheng et al., 2013), Genetic algorithm (Musharavati and Hamouda, 2011), Particle Swarm Optimisation (Behnamian, 2014) and Simulated Annealing (Elmi et al., 2011).Kennedy and Eberhart have proposed better result using Particle Swarm Optimization (PSO) than different optimization algorithms.PSO follows a collaborative populationbased search, which models over the social behavior of bird flocking and fish schooling.PSO has many advantages over other heuristic techniques such as few lines of computer code, primitive mathematical operators, escaping local optima and easily modified.From earlier studies, it is understood that PSO has not been implemented for parallel line job shop scheduling problem.Hence, this work is focused towards the development of PSO algorithm for parallel line job shop scheduling by considering the setup time, process time and the quantity of jobs.
Then, the same parallel line scheduling problem is solved by the implementation of Genetic algorithm by considering same set of data.Thus, the obtained results

MATERIALS AND METHODS
When and where this study was conduct*: Kongu Engineering College, Erode, India.

Parallel line job shop scheduling problem:
There are totally 'n' number of jobs and 'm' number of machines with 'm' number of operations in a specific order.Each operation is allocated to a particular machine with a fixed processing time and fixed setup time.In the parallel line job shop scheduling problem, more than one processing lines are present.Every processing line has non-identical machines in a specified order.Similar set of machines with same order is maintained for all the processing lines.The following are the constraints for scheduling problem (French, 1982): • Each job must be processed through each machine once and only once.
• Each job should be processed through the machine in a specified order.• Each operation must be executed uninterrupted on a given machine.• Each machine can only handle at most one operation at a time.
In job shop scheduling problem, the sequence always follows the most priority rule and technique (Panneerselvam, 2012).Some of the priority rules are shortest processing time, first come first serve, mostwork remaining, most operations remaining and least work remaining and random.The setup time matrix 'S' is same for all the lines.After a job is processed, setup time (S) is necessary when a new job enters in the processing line and is shown in Table 1.The Process time matrix 'P' shows the processing time for the different jobs in each processing lines as shown in  (Haq et al., 2008).

Fitness function:
The entire performance of proposed algorithm such as efficiency, convergence speed and optimisation accuracy depends on the fitness function which supervises the optimum search of the solution within the search space.
The fitness function chosen is either to minimize the preference constrains or to maximize the domain constrains.The objective of the parallel line job shop scheduling problem is to minimize the Makespan (Cmax).The variables are listed as follows: n : Number of jobs l : Number of processing lines m : Number of machines on each processing line Q : Quantity of each job to be processed P i,j,k : Processing time of each job in with respect to all machines in each line S i,j : Setup time of each job with respect to all other jobs T i,j,k : Starting time for each job in each lines There are 'n' jobs J = {J1, J2, J3,……, Jn} to be processed through 'm' machines M = {M1, M2, M3, …, Mm} each job Ji has 'm' operations Oi = {Oi, 1, Oi,2, Oi,3, …, Oi, m} where i denotes the job number.According to the taken priority rule technique first come first served basis, Oi, j must be processed after Oi,j-1 where j is the job number.The process time matrix, Pi, j, k, is the processing time for i th job in j th machine in processing line 'k'.Ti, j, k is the starting time for ith job in jth machine in processing line 'l' in line 'k'.Quantity of each job is Qi = {Q1, Q2, Q3……Qq} and Si, j setup time for the jobs which is equal for all the processing lines.The fitness function is calculated using the Eq. ( 1): where, i = 1, 2,… n; j = 1, 2,….m; k = 1, 2,… l, Q =1, 2, … q 0 if j = 1 T i,j,k = C i,j-1,k else where Makespan calculation: Makespan is calculated as the follows in Eq. ( 2): Makespan=Total Processing Time +Total Setup Time (2) Processing time is calculated for each job separately.For example, the processing time of Job1 in Line 1 is calculated using the Eq. ( 3).
(Processing Time) J1 = Total quantity of Job1 * Processing time of Job1 in all machines of Line1 (3) Similarly the processing times for all jobs in all lines are calculated.Now, the total processing time of all jobs in a line is calculated by adding the individual processing times of all jobs in that line as shown in Eq. (4).For example, if J1, J2 and J3 are in line1, then: The total processing time of all jobs in line1 = (Processing Time) J1 +(Processing Time) J2 +(Processing Time) J3 (4) Finally, the respective set up times of the jobs is added to the processing time of that line and it is called as makespan of that line.Similarly makespan of all lines are calculated.In which, the largest makespan is taken as the makespan of the entire process.

METHODS
Genetic algorithm: Genetic Algorithm (GA) is one of the non-conventional optimisation techniques to solve combinatorial problem.It focuses on the principle of survival of the fittest.It resembles the behaviour of natural evaluation and genetics.Genetic algorithm is applicable to real world problems, if they are suitably encoded.Generally, fitness function is used to evaluate the genome.Genome has 'N' number of individual chromosome known as population size.After this, the fitness evaluation chromosomes pass through the reproduction phase.Then the crossover and mutation are applied to produce new population.In the reproduction phase, elimination of weak chromosomes is done and fitted chromosomes are retained for the next generation.

Chromosome representation in GA:
Chromosome representation can be used for all the individual genomes in the genetic algorithm.Each individual chromosome gives a complete solution to the problem for the optimisation to carry out.Initial population is generated randomly using permutation of job. Figure 1 shows an example of chromosome in a Genome.
The following parameters are used for parallel line job shop scheduling problem: Crossover: Crossover is used to produce new offspring.Crossover probability determines the number of cross over operation.There are many different kinds In single point crossover, first choose a locus, then decide from that point, where swapping operation going to perform from one parent to the other.It was noted that, children take one section of the chromosome from each parent.The point at which the chromosome is broken depends on the randomly selected crossover point.From the earlier analysis, crossover probability gives good solution in the range of 0.7 to 0.9.

Pseudo-code of PSO:
Initialize  (Bean, 1994).According to SPV rule, the position value is sorted in ascending order.Then the corresponding position value index is fixed from the representation job sequence.The above sequence is shown in Table 4.The example of sequence of 'n' jobs as per SPV rule is shown in Fig. 2. First four jobs go to processing line1, next three jobs goes to processing line2, remaining 3 jobs goes to processing line3.Each processing line gives makespan for corresponding job sequence.Highest value from the three processing line is the makespan of the particle.By this way, makespan is calculated for all the particles in the swarm.
Local search for PSO: Local search is used to intensify the search towards optimal or near optimal solution.In the proposed work, Variable Neighborhood Search (VNS) is used (Tasgetiren et al., 2007).Two operations involved in VNS are insert and interchange.5).
In interchange operation, generated random numbers, N1 and N2, which are not equal and are swapped (Table 6).

RESULTS AND DISCUSSION
The comparative Makespan results of GA and PSO for parallel line job shop scheduling problem is given in Table 7 and the performance for each iteration are shown in Fig. 3.
Basically GA is a local search algorithm and PSO is a local search algorithm.To improve the local search ability of PSO algorithm, VNS technique is implemented with basic PSO algorithm.Due to which, for every iteration of the algorithm, PSO performed with both global and local search ability.In Fig. 3 it is shown that when the iteration increases, convergence leads to the best solution.At the same time, by considering the quantity of jobs, the results shown the best sequence for parallel line job shop problem.

CONCLUSION
In the proposed work, an approach based on comparison of Genetic Algorithm and Particle Swarm Optimisation for solving parallel line job scheduling problem was presented.The results shows that when quantity of jobs considered in an account then the optimisation algorithms gives best solutions for parallel line job shop scheduling for each of the given processing lines.It is applied and executed to any number of lines, jobs and machines.The best solution gives the minimum makespan for the parallel line job shop scheduling and the sequence corresponding to the minimum makespan.The results obtained by the proposed algorithms are given in Table 8.The difference in time units is 14 in between GA and PSO.The results reveals that the Particle Swarm Optimisation (PSO) techniques provides best optimal solution to select the job sequence for reducing the Makespan by considering the quantity of jobs for parallel line job shop scheduling.
(i) Number of jobs (n) = 10 (ii) Number of processing lines (l) = 3 (iii) Number of machines in each line (m) = 3 (iv) Population size = 100 Selection: The selection operator is responsible for a chromosome to migrate from the current generation of population to the next generation population growth.Before making it into the next generation's population, selected chromosomes undergo crossover and/or mutation phase.The new offspring chromosome (s) are produced to the next generation's population.In earlier studies Roulette wheel is widely used selection operator.

Fig. 1 :
Fig. 1: Chromosome representation of sequence of crossover and the most common type is single point crossover.In single point crossover, first choose a locus, then decide from that point, where swapping operation going to perform from one parent to the other.It was noted that, children take one section of the chromosome from each parent.The point at which the chromosome is broken depends on the randomly selected crossover point.From the earlier analysis, crossover probability gives good solution in the range of 0.7 to 0.9.

Fig. 2 :
Fig. 2: Assignment of jobs in processing line

Table 2 .
The quantity (Q) of each jobs are shown in Table3

Table 3 :
Quantity of each job (Q)

Table 4 :
SPV Rules to represent job

Table 7 :
Comparative makespan results of GA and PSO algorithms

Table 8 :
Best sequence and makespan of GA and PSO