School of Computer Science

Slides:



Advertisements
Similar presentations
Genetic Algorithm in Job Shop Scheduling
Advertisements

Population-based metaheuristics Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the.
Constraint Optimization We are interested in the general non-linear programming problem like the following Find x which optimizes f(x) subject to gi(x)
CS6800 Advanced Theory of Computation
Lecture 6: Job Shop Scheduling Introduction
1 An Adaptive GA for Multi Objective Flexible Manufacturing Systems A. Younes, H. Ghenniwa, S. Areibi uoguelph.ca.
1 Transportation problem The transportation problem seeks the determination of a minimum cost transportation plan for a single commodity from a number.
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
CSM6120 Introduction to Intelligent Systems Evolutionary and Genetic Algorithms.
1 Wendy Williams Metaheuristic Algorithms Genetic Algorithms: A Tutorial “Genetic Algorithms are good at taking large, potentially huge search spaces and.
Non-Linear Problems General approach. Non-linear Optimization Many objective functions, tend to be non-linear. Design problems for which the objective.
1 IOE/MFG 543 Chapter 14: General purpose procedures for scheduling in practice Section 14.5: Local search – Genetic Algorithms.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
EAs for Combinatorial Optimization Problems BLG 602E.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Elements of the Heuristic Approach
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Genetic Algorithms: A Tutorial
Prepared by Barış GÖKÇE 1.  Search Methods  Evolutionary Algorithms (EA)  Characteristics of EAs  Genetic Programming (GP)  Evolutionary Programming.
Genetic Algorithm.
Evolutionary Intelligence
© Negnevitsky, Pearson Education, CSC 4510 – Machine Learning Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University.
Genetic Operators for TSP Chapter 8 in Michalewicz and Fogel, How to Solve It: Modern Heuristics, Springer, 2000.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
Lecture 8: 24/5/1435 Genetic Algorithms Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Genetic Algorithms Michael J. Watts
Genetic Algorithms Genetic algorithms imitate a natural optimization process: natural selection in evolution. Developed by John Holland at the University.
Design of an Evolutionary Algorithm M&F, ch. 7 why I like this textbook and what I don’t like about it!
More on Heuristics Genetic Algorithms (GA) Terminology Chromosome –candidate solution - {x 1, x 2,...., x n } Gene –variable - x j Allele –numerical.
Introduction to GAs: Genetic Algorithms How to apply GAs to SNA? Thank you for all pictures and information referred.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
1/27 Discrete and Genetic Algorithms in Bioinformatics 許聞廉 中央研究院資訊所.
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
Derivative Free Optimization G.Anuradha. Contents Genetic Algorithm Simulated Annealing Random search method Downhill simplex method.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
© Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
2005MEE Software Engineering Lecture 11 – Optimisation Techniques.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Probabilistic Algorithms Evolutionary Algorithms Simulated Annealing.
Chapter 12 FUSION OF FUZZY SYSTEM AND GENETIC ALGORITHMS Chi-Yuan Yeh.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
Waqas Haider Bangyal 1. Evolutionary computing algorithms are very common and used by many researchers in their research to solve the optimization problems.
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
Introduction to GAs: Genetic Algorithms Quantitative Analysis: How to make a decision? Thank you for all pictures and information referred.
1 Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations Genetic Algorithm (GA)
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
1 Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
School of Computer Science & Engineering
Genetic Algorithms CPSC 212 Spring 2004.
Meta-Heuristic Algorithms 16B1NCI637
Genetic Algorithms: A Tutorial
Multi-Objective Optimization
GENETIC ALGORITHMS & MACHINE LEARNING
Searching for solutions: Genetic Algorithms
Traveling Salesman Problem by Genetic Algorithm
Genetic Algorithm Soft Computing: use of inexact t solution to compute hard task problems. Soft computing tolerant of imprecision, uncertainty, partial.
Population Based Metaheuristics
Genetic Algorithms: A Tutorial
Presentation transcript:

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.