^{1}

^{2}

^{3}

^{4}

Job shop scheduling problem is typically a NP-Hard problem. In the recent past efforts put by researchers were to provide the most generic genetic algorithm to solve efficiently the job shop scheduling problems. Less attention has been paid to initial population aspects in genetic algorithms and much attention to recombination operators. Therefore authors are of the opinion that by proper design of all the aspects in genetic algorithms starting from initial population may provide better and promising solutions. Hence this paper attempts to enhance the effectiveness of genetic algorithm by providing a new look to initial population. This new technique along with job based representation has been used to obtain the optimal or near optimal solutions of 66 benchmark instances which comprise of varying degree of complexity.

Scheduling is one of the most critical issues in planning and managing of manufacturing activities. Mathematically it is treated as NP-Hard problem. An optimal schedule for a given problem (a manufacturing industry) depends on so many factors like shop floor condition, constraints with which each process is carried out and so on. Job shop scheduling is one of the most difficult problems in this area [

If initial population is diverse enough then it is possible to choose best solutions for recombination operations and this may reduce the computational time required. Dispatching Rules (DRs) have been applied consistently to scheduling problems. They are procedures designed to provide good solutions to complex problems in real time. Many authors claim that priority dispatching rules can be successfully used in solving large JSSPs and even other scheduling problems [

Because of its practical importance, Job shop Scheduling Problems have been modeled in different ways based on assumptions as well as situations of the production system. This study considers a single objective of minimizing the make span. The assumptions under which this objective holds well are as follows:

At a time only one job is processed on a machine.

No pre-emption.

Processing in strict adherence to the precedence constraints.

No re-working.

No set up times.

Mathematically it may be expressed as:

Objective function:

Subjected to:

where, St_{i} is the starting time, P_{i} is the processing time of i^{th} operation and St_{j} is the starting time of operation “j”. The second equation resolves the conflict between two jobs to be operated at the same time on the same machine.

So many models were presented in the past [

Data Set | Type | Best | Min. Make span in 12 runs | Min. Deviation % |
---|---|---|---|---|

mt06 | (Opt) | 55 | 55 | 0.000 |

mt10 | (Opt) | 930 | 960 | 3.226 |

mt20 | (Opt) | 1165 | 1192 | 2.318 |

abz05 | (Opt) | 1234 | 1241 | 0.567 |

abz06 | (Opt) | 943 | 964 | 2.227 |

abz07 | (LB) | 654 | 719 | 9.939 |

abz08 | (LB) | 635 | 738 | 16.220 |

abz09 | (LB) | 656 | 742 | 13.110 |

car01 | (Opt) | 7038 | 7038 | 0.000 |

car02 | (Opt) | 7166 | 7166 | 0.000 |

car03 | (Opt) | 7312 | 7422 | 1.504 |

car04 | (Opt) | 8003 | 8003 | 0.000 |

car05 | (Opt) | 7702 | 7767 | 0.844 |

car06 | (Opt) | 8313 | 8313 | 0.000 |

car07 | (Opt) | 6558 | 6558 | 0.000 |

car08 | (Opt) | 8264 | 8344 | 0.968 |

la01 | (Opt) | 666 | 666 | 0.000 |

la02 | (Opt) | 655 | 655 | 0.000 |

la03 | (Opt) | 597 | 599 | 0.335 |

la04 | (Opt) | 590 | 590 | 0.000 |

la05 | (Opt) | 593 | 593 | 0.000 |

la06 | (Opt) | 926 | 926 | 0.000 |

la07 | (Opt) | 890 | 890 | 0.000 |

la08 | (Opt) | 863 | 863 | 0.000 |

la09 | (Opt) | 951 | 951 | 0.000 |

la10 | (Opt) | 958 | 958 | 0.000 |

la11 | (Opt) | 1222 | 1222 | 0.000 |

la12 | (Opt) | 1039 | 1039 | 0.000 |

la13 | (Opt) | 1150 | 1150 | 0.000 |

la14 | (Opt) | 1292 | 1292 | 0.000 |

la15 | (Opt) | 1207 | 1207 | 0.000 |

la16 | (Opt) | 945 | 946 | 0.106 |

la17 | (Opt) | 784 | 784 | 0.000 |
---|---|---|---|---|

la18 | (Opt) | 848 | 853 | 0.590 |

la19 | (Opt) | 842 | 866 | 2.850 |

la20 | (Opt) | 902 | 913 | 1.220 |

la21 | (LB) | 1040 | 1081 | 3.942 |

la22 | (Opt) | 927 | 970 | 4.639 |

la23 | (Opt) | 1032 | 1032 | 0.000 |

la24 | (Opt) | 935 | 1002 | 7.166 |

la25 | (Opt) | 977 | 1023 | 4.708 |

la26 | (Opt) | 1218 | 1273 | 4.516 |

la27 | (LB) | 1235 | 1317 | 6.640 |

la28 | (Opt) | 1216 | 1288 | 5.921 |

la29 | (LB) | 1120 | 1233 | 10.089 |

la30 | (Opt) | 1355 | 1377 | 1.624 |

la31 | (Opt) | 1784 | 1784 | 0.000 |

la32 | (Opt) | 1850 | 1851 | 0.054 |

la33 | (Opt) | 1719 | 1719 | 0.000 |

la34 | (Opt) | 1721 | 1749 | 1.627 |

la35 | (Opt) | 1888 | 1888 | 0.000 |

la36 | (Opt) | 1268 | 1334 | 5.205 |

la37 | (Opt) | 1397 | 1467 | 5.011 |

la38 | (LB) | 1184 | 1278 | 7.939 |

la39 | (Opt) | 1233 | 1296 | 5.109 |

la40 | (Opt) | 1222 | 1284 | 5.074 |

orb01 | (Opt) | 1059 | 1099 | 3.777 |

orb02 | (Opt) | 888 | 906 | 2.027 |

orb03 | (Opt) | 1005 | 1056 | 5.075 |

orb04 | (Opt) | 1005 | 1032 | 2.687 |

orb05 | (Opt) | 887 | 909 | 2.480 |

orb06 | (Opt) | 1010 | 1038 | 2.772 |

orb07 | (Opt) | 397 | 411 | 3.526 |

orb08 | (Opt) | 899 | 917 | 2.002 |

Average deviation is found to be 2.461 across all the instances.

The very objective of using evolutionary algorithms like Genetic Algorithms is to make the search process computationally efficient. This is so because techniques like branch and bound etc. are guaranteed techniques to provide the optimal solution but are computationally inefficient. Random walk or gradient search for example is basically random search or gradient descent techniques which will search one solution at a time. Hence these methods are also computationally inefficient with the problems of larger size. Genetic algorithms are well suited in such cases to find the best possible solution close to optimal solution in a computationally efficient manner. Different mathematical models may lead to different representations for the same problem [

With the job based representation [

Step1: Obtain an eligible set of jobs from the given instance. Let it be

Step 2: Choose randomly any one job from the eligible set and place its corresponding operation in the sequence set. Let it be

Step 4: Update the job status.

Step 5: Delete the sequenced job from eligible set Ø, if all the operations of the job are sequenced and then update it with eligible jobs.

Step 6: Repeat the step 2 until all the operations on all the jobs are sequenced.

Uniform crossover [

Step 1: Generate the initial population using random job selection method. Evaluate the fitness of each individual. Let t = 0.

Step 2: Use crossover reproduction operator to generate the offspring.

Step 3: Carry out mutation on each offspring to generate new individuals. Calculate the fitness value of each offspring.

Step 4: If the stop criterion is satisfied, then stop. Otherwise let t = t + 1 and turn to step 2.

In this study, Random Job Based algorithm is used as a first step to generate the initial population to analyze whether this algorithm has any effect on the overall performance of GA which is presented above.

With the random job selection for initial population followed by job based representation scheme adopted, the study was conducted with 50 generations and a population size of 1000.Mutation probability varies with 0.1 to 0.9 values dynamically and elite population size is 20%. Reproduction probability used in this study is 0.1 Parents in this study were selected from two groups sorted out based on fitness value (i.e. minimum make span). Each parent is selected from these groups probabilistically. In the study, GA is programmed with different reproduction and mutation operators like PPX, single point and N-point crossover mechanisms. The benchmark problems used in this paper are taken from OR library [

where BKS = Best Known Solution; Opt. = Optimum Solution and Curr.Solution = Solution obtained by the method used in the study. Results as % deviation are shown in

In this paper, new method is introduced for initializing population. By using simple job based representation followed by random job based initialization along with reproduction operators like PPX, single point and three points cross over techniques, it is possible to get optimal or near optimal results. The average deviation obtained is much less compared with any other results obtained in literature [

Vedavyasrao S. Jorapur,Vinod S. Puranik,Anand S. Deshpande,Mahesh Sharma, (2016) A Promising Initial Population Based Genetic Algorithm for Job Shop Scheduling Problem. Journal of Software Engineering and Applications,09,208-214. doi: 10.4236/jsea.2016.95017