Using Parallel Genetic Algorithm in a Predictive Job Scheduling

Slides:



Advertisements
Similar presentations
1 An Adaptive GA for Multi Objective Flexible Manufacturing Systems A. Younes, H. Ghenniwa, S. Areibi uoguelph.ca.
Advertisements

Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
1 Wendy Williams Metaheuristic Algorithms Genetic Algorithms: A Tutorial “Genetic Algorithms are good at taking large, potentially huge search spaces and.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
Genetic Algorithms Learning Machines for knowledge discovery.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
7/2/2015Intelligent Systems and Soft Computing1 Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Genetic Algorithm What is a genetic algorithm? “Genetic Algorithms are defined as global optimization procedures that use an analogy of genetic evolution.
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Genetic Programming.
Genetic Algorithms: A Tutorial
1 Reasons for parallelization Can we make GA faster? One of the most promising choices is to use parallel implementations. The reasons for parallelization.
Genetic Algorithm.
Evolutionary Intelligence
© Negnevitsky, Pearson Education, CSC 4510 – Machine Learning Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University.
1 Paper Review for ENGG6140 Memetic Algorithms By: Jin Zeng Shaun Wang School of Engineering University of Guelph Mar. 18, 2002.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Evolution Strategies Evolutionary Programming Genetic Programming Michael J. Watts
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
Genetic algorithms Prof Kang Li
CS 484 – Artificial Intelligence1 Announcements Lab 3 due Tuesday, November 6 Homework 6 due Tuesday, November 6 Lab 4 due Thursday, November 8 Current.
Lecture 8: 24/5/1435 Genetic Algorithms Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Boltzmann Machine (BM) (§6.4) Hopfield model + hidden nodes + simulated annealing BM Architecture –a set of visible nodes: nodes can be accessed from outside.
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithms Genetic Algorithms – What are they? And how they are inspired from evolution. Operators and Definitions in Genetic Algorithms paradigm.
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
GENETIC ALGORITHM A biologically inspired model of intelligence and the principles of biological evolution are applied to find solutions to difficult problems.
Derivative Free Optimization G.Anuradha. Contents Genetic Algorithm Simulated Annealing Random search method Downhill simplex method.
© Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
 Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms n Introduction, or can evolution be intelligent? n Simulation.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
Biologically inspired algorithms BY: Andy Garrett YE Ziyu.
A Production Scheduling Problem Using Genetic Algorithm Presented by: Ken Johnson R. Knosala, T. Wal Silesian Technical University, Konarskiego Gliwice,
Parallel Genetic Algorithms By Larry Hale and Trevor McCasland.
Coevolutionary Automated Software Correction Josh Wilkerson PhD Candidate in Computer Science Missouri S&T.
Waqas Haider Bangyal 1. Evolutionary computing algorithms are very common and used by many researchers in their research to solve the optimization problems.
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.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005.
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.
Genetic Algorithm(GA)
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
CEng 713, Evolutionary Computation, Lecture Notes parallel Evolutionary Computation.
1 Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
Genetic Algorithms.
An Evolutionary Approach
Introduction to Genetic Algorithm (GA)
Chapter 6: Genetic Algorithms
Chapter 4 Beyond Classical Search
Genetic Algorithms: A Tutorial
GENETIC ALGORITHMS & MACHINE LEARNING
Boltzmann Machine (BM) (§6.4)
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
Coevolutionary Automated Software Correction
Presentation transcript:

Using Parallel Genetic Algorithm in a Predictive Job Scheduling By: Amseena Mansoor Rayan Alsemmeari

Introduction Literature survey Why does Genetic Algorithm work? Parallel Genetic Algorithm Predictive Job Scheduling System Conclusion

Literature Survey Types of scheduling: System level scheduling Application level scheduling

System level Scheduling The scheduling system will analyze load situation of each node and choose one node to run the task. The scheduling system has to realize the load balancing and increase the throughput and resource utilization under restricted condition, when the system is heavily loaded

Application level scheduling If multiple task arrive during a unit scheduling time slot, then scheduling system will be responsible to allocate an appropriate number of jobs to each node in order to finish these jobs under a defined objective. The objective is usually the minimal average execution time. This scheduling policy is application- oriented. So, this schedule is called application level scheduling.

Genetic Algorithm Powerful search technique based on mechanics of biological evolution Used to solve a difficult problem in many disciplines Can provide efficient and effectives techniques for optimization and machine leaning applications

Basic Principle of GA In GA, It is necessary to select a specific number of inputs For instance, x1, x2 ... xn which belong to the input space X. Each input in the GA terminology called an organism or chromosome. The set of chromosomes is designated as a colony or population. Computation is done over epochs. In each epoch the colony will evolve according to specific rules reminiscent of biological evolution.

Genetic Algorithm G.A phases Initial Population Evaluation of fitness function Parent selection Crossover operation Mutation

Initial Population G.A begins with a set of k randomly generated states These states are satisfactory to the problem The representation of solutions should be encoded as Real numbers (1,2,….9) Binary encoding (0s,1s) List of rules (R1,R2,R3)

Evaluation of fitness function To each chromosome xi, we assign a fitness value that is the function of xi(f(xi)) Fitness: string value Properties: best string highest fitness function If s1 is better than s2 f(s1)> f(s2)

Parent selection Stronger individual chromosomes with fitness values closer to the colony optimal will have greater chance to survive across epochs and to reproduce than weaker individuals which will tend to die.

Crossover operation The important step in the algorithm is reproduction or breeding which happens once per epoch. The content of the two chromosomes participating in reproduction are literally merged together to form a new chromosome that a child. This heuristic allows us to possibly combine the best of both individuals to yield a better one

Crossover operation How does the crossover wok? Single point crossover Multi point crossover Uniform crossover

Mutation Perform exploitation on the current best strings (performs random local search) Let e an element of the string e 10011010 The value of e, ᵾ e € string is changed with some probability p (usually low) 10001010

8 queen puzzle example

Why does genetic algorithm work? Genetic Algorithm application level scheduling algorithm generates the initial population, evaluates each individual’s fitness, and performs genetic operations on the Individuals with high fitness such copying, crossover and mutation, to generate a new population. The genetic process continues with the new population until a nearly optimal jobs assignment strategy is obtained. Finally, the jobs are assigned to each node based on the strategy

The parameters in job scheduling Total execution time is the time between the beginning of execution of the first job of a series and completion of the last job. Average turnaround time is the average, for each job from when the job arrives to when the job finished

What is PGA? Parallel implementation of GA Provide considerable gains in terms of performance and scalability It can easily implemented on network of heterogeneous computers or in parallel mainframes

GA can be parallelized depends on 1.how fitness is evaluated and mutation is applied 2.if single or multiple subpopulation are used 3.if multiple populations are used, how individuals are exchanged 4.how selection is applied

The advantages of using PGA Parallel search from multiple points in a space Works on a coding of the problem. Independent of the problem. It can change solutions to the problem. Better search even if no parallel hardware is used. Higher efficiency than sequential Genetic Algorithms. Easy cooperation with other search procedures.

PGA Taxonomy a. Master-Slave Parallelization b. Subpopulation with migration c. Overlapping subpopulation d. Massively parallel genetic algorithm e. Dynamic demes f. Parallel steady-state algorithm g. Parallel messy genetic algorithm

Master-Slave Parallelization One of the first successful applications of parallel GA. This is also called global parallelization, master-slave model or distributed-fitness evaluation The evaluation of the individuals are performed in parallel

Master-Slave Parallelization The selection and mating is done globally Each individual may compete and mate with any other

Master-Slave Algorithm Master stores the population a. executes the Genetic operators b. distributes individuals to the slaves. The slave evaluates the fitness of the individual a. reports the fitness value to the master

Predictive Job Scheduling System A model of the scheduling algorithm The scheduler can learn from the previous experiences. Selection and crossover are considered in the entire population; each individual may compete and mate.

Predictive Job Scheduling System A binary encoding is used to convert the scheduling problem to chromosomes Each chromosome has genes. The efficiency may be high if the same jobs have to be scheduled. The scheduler starts with no prior information about the jobs at first After each allocation the information is stored to the history base. The job of specific requirement comes again a different combination is tried according to the resource availability if the execution time is lower then it is recorded. This is called the learning phase.

Predictive Job Scheduling System If a new job which has not yet scheduled by the scheduler, then the system is put to a brief learning phase again. The encoding process is done by assuming that a chromosome has the following gene structure. Chromosome {gene1, gene2, gene3} Gene1 is the job identifier. Gene2 is the resource identifier. Gene3 is the node identifier

Predictive Job Scheduling System The fitness function f is the execution time of that job at the node. The population generation is done by assigning binary set values for each of the genes. Job A may be encoded as 00 and job B may be encoded as 01 and so on. The same method can be used to represent all genes.

Predictive Job Scheduling System The sample population may have individuals such as 00 01 10. After the population is built in the learning phase, the fitness of the individual is recorded as the execution time of the job at the node. The next time the same job is to be Scheduled the history information is checked

Predictive Job Scheduling System a new gene combination is found and job scheduled and the fitness recorded. After time T the genetic operator of crossover is applied and the individuals of the same job type are selected for crossover.

The proposed algorithm Procedure for the learning phase { Create the population by encoding the problem. Add chromosome to the history if it does not exist in the history Else Try a different combination of genes. } If job details available in history Then

The proposed algorithm If the resource availability Then send the job to the node Else Try a different resource if it is available. Initiate the learning procedure After time T apply the Genetic Operators on the history information.

Conclusion The Genetic Algorithm Scheduling increase execution time at first and then, improved as time progressed. The future work may involve the different and more efficient methods of encoding a problem and different genetic operators and methods.

References [1] Yang, Hongquiang, Joshua, Adaptive grid job scheduling with genetic algorithm, Elsevier Future Generation Computer Systems 2005. [2] D.E Goldberg, “Genetic Algorithm in Search, Optimization and Machine Learning “, Prentice Hall of India, 2004. [3]R.Stuart, N.Norvig, ”Artificial Intelligence A Modern Approach”, Pearson Education,Inc.

Thank You for listening to us!!!!!