Genetic Algorithms and Applications of Genetic Algorithms in
- Slides: 24
Genetic Algorithms and Applications of Genetic Algorithms in Compilers Prasad A. Kulkarni Artificial Intelligence
Search Strategies in AI l l Searching is a very important application area of artificial intelligence. Common search strategies – – – 2 depth first search breadth first search best first search hill climbing simulated annealing genetic algorithms Artificial Intelligence
Outline l l l l 3 Introduction and historical background Biological background Stages in a genetic algorithm Phase ordering problem in compilers Applying GA to address phase ordering Other GA applications Conclusions Artificial Intelligence
Introduction and Historical Background l l 4 GAs are part of evolutionary computing introduced by I. Rechenberg in the 1960 s. GAs were invented by John Holland in 1975. GAs are based on Darwin’s principle of evolution and survival of the fittest. GA is a biased sampling search technique. Artificial Intelligence
Outline l l l l 5 Introduction and historical background Biological background Stages in a genetic algorithm Phase ordering problem in compilers Applying GA to address phase ordering Other GA applications Conclusions Artificial Intelligence
Biological Background 6 Artificial Intelligence
Biological Background (cont. . . ) l 7 Crossover, mutation Artificial Intelligence
Outline l l l l 8 Introduction and historical background Biological background Stages in a genetic algorithm Phase ordering problem in compilers Applying GA to address phase ordering Other GA applications Conclusions Artificial Intelligence
GA Stage 1 – Initialization l Randomly initialize some number of individual solutions to form an initial population Create initial population of chromosomes Evaluate fitness of each chromosome in the population Terminate cond. ? Y Output the best solution found N Perform crossover/ mutation to create new generation 9 Artificial Intelligence
GA Stage 2 – Evaluation and Selection l Evaluate the fitness value of each chromosome. Create initial population of chromosomes Evaluate fitness of each chromosome in the population Terminate cond. ? Y Output the best solution found N Perform crossover/ mutation to create new generation 10 Artificial Intelligence
GA Stage 3 – Check Termination l The algorithm terminates when some predetermined termination condition is reached. Create initial population of chromosomes Evaluate fitness of each chromosome in the population Terminate cond. ? Y Output the best solution found N Perform crossover/ mutation to create new generation 11 Artificial Intelligence
GA Stage 4 – Reproduction l Perform crossover and mutation to generate a new population from the current chromosomes. Create initial population of chromosomes Evaluate fitness of each chromosome in the population Terminate cond. ? Y Output the best solution found N Perform crossover/ mutation to create new generation 12 Artificial Intelligence
GA Stage 5 – Output Solution l Output the best solution found during the algorithm. Create initial population of chromosomes Evaluate fitness of each chromosome in the population Terminate cond. ? Y Output the best solution found N Perform crossover/ mutation to create new generation 13 Artificial Intelligence
Outline l l l l 14 Introduction and historical background Biological background Stages in a genetic algorithm Phase ordering problem in compilers Applying GA to address phase ordering Other GA applications Conclusions Artificial Intelligence
Phase Ordering Problem l l l 15 Optimizing compilers apply several optimization phases to improve the performance of applications. Optimization phases interact with each other. Determining the best order of applying optimization phases has been a long standing problem in compilers. Artificial Intelligence
Addressing the Phase Ordering Problem l Most researchers consider exhaustive enumeration infeasible – – l Heuristics are used to search only a small portion of the optimization phase order space – 16 largest optimization sequence length in our experiments was 32 15 phases for an optimization sequence length of 32 would result in 1532 evaluations! random search, genetic algorithms etc. Artificial Intelligence
Outline l l l l 17 Introduction and historical background Biological background Stages in a genetic algorithm Phase ordering problem in compilers Applying GA to address phase ordering Other GA applications Conclusions Artificial Intelligence
GA Stage 1 – Initialization a e a b c d c f e d a c e a f f c e population 1 18 Artificial Intelligence
GA Stage 2 – Evaluation and Selection 88 20 95 a e a b c d c f e d a c e a f f c e population 1 19 Artificial Intelligence
GA Stage 3 – Check Termination l Terminating conditions – – – 20 the desired performance is reached specified number of generations have elapsed time constraint for genetic algorithm exceeded Artificial Intelligence
GA Stage 4 – Reproduction 21 l Crossover - 20% sequences in each generation replaced l Mutation - phases in each sequence replaced with a low probability Artificial Intelligence
Outline l l l l 22 Introduction and historical background Biological background Stages in a genetic algorithm Phase ordering problem in compilers Applying GA to address phase ordering Other GA applications Conclusions Artificial Intelligence
Other GA Applications l l l 23 Designing electronic circuits Designing of aircrafts Routing in circuit switched telecommunication networks Genetic algorithm applied to robot trajectory design and many more. . Artificial Intelligence
Conclusion l l l 24 Genetic algorithm are a class of heuristic biased sampling approach to searching large spaces. Described steps during a genetic algorithm Presented detailed application of genetic algorithm to phase ordering problem in compilers. Artificial Intelligence
- Genetic algorithms tutorial
- Genetic algorithms
- Genetic algorithms
- Genetic algorithms
- Genetic drift in small populations
- Genetic programming vs genetic algorithm
- Genetic programming vs genetic algorithm
- What is gene flow and genetic drift
- What is the difference between genetic drift and gene flow
- Applications of genetic engineering
- Section 13-3 cell transformation
- Application of heat transfer
- Fuzzy sets and fuzzy logic theory and applications
- Computational thinking algorithms and programming
- Design and analysis of algorithms syllabus
- Data structures and algorithms iit bombay
- Association analysis: basic concepts and algorithms
- Fftooo
- Kevin wayne princeton
- Data structures and algorithms tutorial
- Algorithms for select and join operations
- Algorithms and flowcharts
- Undecidable problems and unreasonable time algorithms.
- Information retrieval data structures and algorithms
- Data structures and algorithms bits pilani