School of Computer Science University of Birmingham Application of Nature Inspired Genetic Algorithms For Job Shop Scheduling Bhuvan Sharma Research Associate Advanced Computation in Design and Decision Making Group University West of England, Bristol, UK bhuvan.sharma@uwe.ac.uk
Aim of Presentation Understanding job shop scheduling Why Nature Inspired Algorithms Issues in GA, when applied to job shop problems Review of various approaches within GA Practical Problem from Rolls Royce My approach
Job Shop Scheduling Job : A piece of work that goes through series of operations. Shop : A place for manufacturing or repairing of goods or machinery. Scheduling : Decision process aiming to deduce the order of processing.
A typical Job Shop Problem Parameters Number of jobs Number of operations within each job Processing time of each operation within each job Machining sequence of operations within each job Objectives Minimization of make span Minimization of cost Minimization of delays
A 3 job 3 machine problem Processing time Jobs Operations Machining Sequence Jobs Operations J1 6 5 3 J2 4 J3 10 2 J1 M1 M2 M3 J2 J3
Why Nature Inspired Algorithms GA’s vs Other methods Evaluation on a set of points. Better search. Better chances for global optimal solution. Suitable for Multi-objective optimisation. Flexibility, because constraints can be taken care of. Evaluation on a point each time. Often terminate into local optima. Not suited for multi-objective optimisation. Not flexible, driven by heuristics, constraints not handled easily.
Issues in Genetic Algorithms when applied to job shop problems Representation of schedule(phenotype) by suitable genotype. Conversion of genotype to phenotype Choice of Schedule Builder Type of Crossover and Mutation to be used Avoiding Premature convergence.
Schedule Builder!! What’s That J1 M1 M2 M3 J2 J3 J1 6 5 3 J2 4 J3 10 2
Representation schemes for schedules in job shop Conventional Binary representation Job Based Representation Permutation Representation (Partitioned) Permutation Representation (Repetitive) Priority Rule Based Representation (Random / guided)
1. Binary Representation Genotype is binary matrix of Rows = Number of job pairs Columns = Number of machines Interpretation Mij = 0 / 1 depending on whether job1 is executed later or prior to job2.
Job 1 M1 M3 M2 Job 2 M2 M3 M1 Job 3 M2 M1 M3 (a) Machine Sequence Job1 & 2 1 1 0 Job1 & 3 1 1 0 Job2 & 3 0 1 0 (b) Binary Representation M/c 1 J1 J3 J2 M/c 2 J3 J2 J1 M/c 3 J1 J2 J3 (c) Symbolic Representation
Crossover Demerits The crossover applied is simple one point Redundancy in representation. 2mj(j-1)/2 bits are required for (!j)m schedules. Forcing techniques required for replacement of illegal schedules.
2. Job Based Representation Typical chromosome [ Ji Jj Jk ] For [ J2 J1 J3 ] All operations of job 2 folllowed by 1 and then by 3 are scheduled in the available processing times.
Merits Demerits Scheduling is very easy Always yields a feasible schedule, hence forcing not required. Demerits Approach is very constrained Not many possibilities are explored
3. Permutation Representation (Partitioned) Chromosome is set of permutation of jobs on each machine. M1 M2 M3 1 3 2 3 2 1 3 1 2 Job sequence matrix for 3 X 3 problem Cross Over (SXX) Subsequence Exchange Crossover Searches for exchangeable subsequence pairs in parents, and swaps them.
Subsequence Exchange Crossover M1 M2 M3 P0 1 2 3 6 4 5 3 2 1 5 6 4 2 3 5 6 1 4 P1 6 2 1 3 4 5 3 2 6 4 5 1 6 3 5 4 2 1 C0 2 1 3 4 6 5 3 2 5 1 6 4 2 6 3 5 1 4 C1 6 1 2 3 4 5 3 2 6 4 1 5 3 5 6 4 2 1
Merits Demerits GA operators used for TSP can be applied here Simple representation Demerits Does not always give active schedules Robust Schedule builder is required SXX does not always guarantee a crossover
4. Permutation Representation (Repetitive) Also known as operation based representation Typical genotype is a unpartitioned permutation with m repetitions for each job. 1 2 2 3 1 3 2 1 3 M1 1 3 2 M2 2 3 1 M3 2 1 3
Crossover (PPX) Precedence Preservation Crossover (PPX) The offspring inherits partial characteristic of both parents P0 3 2 2 3 1 1 3 1 2 0 1 1 1 0 0 1 0 1 P1 2 3 3 2 1 3 1 1 2 C1 3 2 3 2 1 1 3 1 2
Merits Demerits Very simple representation All decoding leads to active schedules Schedule building is straightforward Crossover results in passing of characteristics from both parents in most cases. Demerits Problem of Premature convergence This is often case with long chromosomes
5. Priority(Random/Guided)Rule Based Representation Characteristics Use of GT Algorithm, with one of priority rule used in ith iteration to select ith operation Priority rules could be assigned randomly, or guided by heuristics. Representation [ SPT, LPT, MTPT, LTPT, MLFT, ….. ]
Crossover Merits Demerits Both PPX and SXX can be used Always give feasible active schedules Incorporates heuristics to an extent Demerits Problem of fast, premature convergence of first few genes in the chromosome
Practical Problem from Rolls Royce Parameters 17 batches of jobs 10 operations per job 4 identical machines, each can perform any operation subject to tool set Constraints Only one tool-set for each operation Opn. 2 must not begin until opn 1 is complete Opn 3-9 can be performed in any sequence Opn 10 should be the last for each batch of job
Basic Scenario Operation Time (min) 1 120 2 288 Leave Shop 24hrs 3 180 90 5 6 7 60 8 9 24 hrs 10
My Approach Representation Crossover Permutation based The catch here is that it is permutation of machines not jobs For eg. [ 3 5 9 6 : 7 4 8 | 10 ] Crossover Precedence Preservation Crossover (PPX)
Start with heuristics Schedule builder Select a set of jobs out of 17 to process first. (random) Schedule builder Identify conflicting set of jobs Selection of one from conflicting set based on one of heuristic priority rules Change toolset for machine as it finishes requisite jobs. Change is guided by time factor.