1 / 27

Evolutionary algorithms

Evolutionary algorithms. Prepared by Barış GÖKÇE. Outline. Search Methods Evolutionary Algorithms (EA) Characteristics of EAs Genetic Programming (GP) Evolutionary Programming (EP) Genetic Algorithms (GA) Evolutionary Strategies (ES) Summary References. Search Methods.

burton-wood
Télécharger la présentation

Evolutionary algorithms

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Evolutionary algorithms Prepared by Barış GÖKÇE

  2. Outline • Search Methods • Evolutionary Algorithms (EA) • Characteristics of EAs • Genetic Programming (GP) • Evolutionary Programming (EP) • Genetic Algorithms (GA) • Evolutionary Strategies (ES) • Summary • References

  3. Search Methods • Search is very comman problem which is included nearly all types of problems. • It is as difficult for computers as for humans. • In general, domain space is very huge, and it is impossible to make a search by trying all possible configurations. • There are many search methods which use different heuristics.

  4. Search Methods (cont)

  5. Evolutionary Algorithms (EAs) • A type of Guided Random Search • Used for optimization problems • Based on the idea of biological evolution • The power of the evolutionary algorithms is limited by the lack of a clear genotype-phenotype distinction. • It has its own parameters. • EAs are known as global optimization methods which work well on ‘noisy’ functions which have many local optima

  6. Evolutionary Algorithms (cont.) • Parameters of EAs may differ from one type to another. Main parameters: • Population size • Maximum number of generations • Elitism factor • Mutation rate • Cross-over rate • There are six main characteristics of EAs • Representation • Selection • Recombination • Mutation • Fitness Function • Survivor Decision

  7. Evolutionary Algorithms (cont.) • t:=0; • InitPopulation(P,t); • EvaluateFitness(P,t); • while not terminate(P,t) • begin • t:=t+1; • SelectParents(P,Ps); • Recombine(Ps); • Mutate(Ps); • EvaluateFitness(Ps,t); • Survive(P,Ps); • end;

  8. Characteristics of EAs • Representation: • How to define an individual • The way to store the optimization parameters. • Determined according to the problem. • Different types: • Binary representation • Real-valued representation • Lisp-S expression representation • Selection • Used to determine parents used to generation of next population • Some types: • Truncation selection • Roulette wheel selection • Tournament selection • Neighborhood selection

  9. Characteristics of EAs (cont) • Recombination • Determines how to combine the genes of selected parents • Types is determined according to the representation. These types: • Bits of the genes • Values of the genes • Mutation • Change on a single gene of the individual • Types is determined according to the representation. These types: • Switching bits • Updating the value of the gene • Fitness Function • Gives an intuition about how good the individual is. • Depends on directly to the problem • Survivor Decision • Idea of survival of the best individuals. It is about Elitism factor. • Usage of it is not advised. In general, overall best individual is stored as a different individual not to loose reached best parameter set, but they are not used during other operations.

  10. Genetic Programming (GP) • It is used to find the proper program for given problem. • It requires very high computation power, so it is suitable for only simple problems. • There is no comman representation. But the most famous representation is the Lisp expression. • While the main operator is the cross-over, mutation is used as secondary operator.

  11. GP (cont) • Cross-over method is to replace a gene of the individual with that of another individual. Individual pairs are selected randomly. • Mutation can be applied to only one of the genes or to whole individual. • Meta-Genetic Programming is like to find the program which finds the program. Even the GP is suitable for simple problems, Meta-Genetic Programming is suitable for simpler problems

  12. GP (cont) • Because genetic programming and meta-genetic programming are suitable relatively simpler problems, there are not enough samples for this type of algorithm. • Especially meta-genetic algorithm is a new research area, so documentation on this method is very sparse. • A good sample for genetic programming is: http://alphard.ethz.ch/gerber/approx/default.html

  13. Evolutionary Programming (EP) • There is no fixed structure for representation. • There is only mutation operation, and cross-over is not used in this method. • Each child is determined by its parent in a way of mutation. • So, we can conclude that there are three steps: • Initialize population and calculate fitness values for initial population • Mutate the parents and generate new population • Calculate fitness values of new generation and continue from the second step.

  14. EP (cont) • Mutation is at a very critical point, because it is the only method which leads to the variation. • Main application areas: • Cellular design problems. • Constraint optimization • Testing students’ code • ...... • Not a widely used evolutionary algorithm, because the variation between individuals is very small and the convergence speed is not enough.

  15. Genetic Algorithms (GA) • It is used to find an optimum parameter set by using the randomness. • It can be classified as global search heuristics, because it uses many evolutionary biology techniques, and randomness helps it to find optimum parameter set. • Individuals are represented by byte arrays. So, it is not feasible for real-valued application. Gray coding is a very popular representation. • Genetic representation of solution domain and fitness function are the two requirements of the GA.

  16. GA (cont) • Main operator of the GA is the cross-over. Cross-over method: • a pool is constructed from the parents. • During the generation of next population, pairs are selected from that pool • Children are generated by the application of cross-over. • Mutation is the background operation. It is applied to the children which are generated by cross-over. Methods of the mutation are as follows: • One point • Two point • Cut and splice

  17. GA (cont) • Most popular selection algorithms for GA are roulette wheel selection and tournament selection. • Fitness function of GA is the scaled fitness function. • GA is not effective in problems which the fitness values of individuals are calculated as 1 or 0. • Samples: http://homepage.sunrise.ch/homepage/pglaus/gentore.htm http://www.ads.tuwien.ac.at/raidl/tspga/TSPGA.html

  18. GA (cont) • This method is used for nearly all types of problems. Some of them are: • Scheduling • Timetabling • Face recognition • NLP • Distributed computer network topologies • Learning robot behavior • Molecular structure optimizationGait • Software Engineering • Traveling Salesman Problem

  19. Evolutionary Strategies (ES) • Main property of ES is the usage of the real-vectors as coding representation. • ES uses many operands which are based on randomness; selection, cross-over and mutation. • ES is a very flexible technique in the view of the operands. Functionality of operands are determined according to the problem definition.

  20. ES (cont) • Representation: It allows us to represent floating. By this way, search is done on the continuous domain space. In addition to the floating point representation, real-vector representation can be used. • Selection: In selection, neighborhood method is applied. There are two different types of ES according to the selection set*: • plus selection (both parent and child) • comma selection (only parent) • Fitness function: Not scaled. It is calculated as objective function values.

  21. ES (cont) • Recombination & Mutation: These operands are very similar to the those of GA. The main difference is that mutation amount is not constant in ES. There are additional parameters, sigma, which are used as the mutation amount of the original mutation amount. So, the mutation amount also gets closer to the optimum value. • As recombination function, three main functions can be used: • Arithmetic mean of the parents • Geometric mean of the parents • Discrete cross-over method.

  22. ES (cont) • Pseudocode of the ES is as follows: • generationNumber = 0; • initialization (β0 ); • while ( !stoppig_criteria ) • for ( l = 0; l< λ ; l++) • Ώl = reproduction ( βg, ρ ); • sl = s_recombination ( Ώl, ρ ); • sl' = s_mutation ( sl); • yl = y_recombination ( Ώl, ρ ); • yl' = y_mutation ( yl ); • Fl = F(yl'); • βg' = { yl', sl', Fl }; • switch selection_type • case comma-selection: • βg+1' = selection( βg' ); • break; • case plus-selection: • βg+1' = selection( βg', βg); • break; • g = g + 1;

  23. ES (cont) • where βn represents the parents of nth population, • βn' represents the offsprings of nth population, • Ώl represents the offsprings after cross over process, • sl represents the sigma values of the offspring l, • sl' represents the mutated sigma values of the offspring l, • yl represents the genes of the offspring l, • yl' represents the mutated genes of the offspring l. • g represents the generation number.

  24. ES (cont) • There are many application areas of the ES. Some of them: • The Quadruped Gait parameter optimization • Optimization of Road Networks • Local Minority Game • Multi-Criterion Optimization • Optical Fibre Design • .....

  25. Summary

  26. References • Informed Search Algorithms slayts of the course CmpE 540. • http://en.wikipedia.org/wiki/Evolutionary_algorithm • http://www.cs.sandia.gov/opt/survey/ea.html • http://www.faqs.org/faqs/ai-faq/genetic/part2/section-3.html • http://en.wikipedia.org/wiki/Genetic_programming • http://alphard.ethz.ch/gerber/approx/default.html • http://en.wikipedia.org/wiki/Evolutionary_programming • http://en.wikipedia.org/wiki/Genetic_algorithm • http://homepage.sunrise.ch/homepage/pglaus/gentore.htm • http://www.ads.tuwien.ac.at/raidl/tspga/TSPGA.html • http://en.wikipedia.org/wiki/Evolution_strategy

  27. Questions ?

More Related