* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Soft Computing : Optimization Techniques using Genetic Algorithms
Survey
Document related concepts
Hybrid (biology) wikipedia , lookup
Medical genetics wikipedia , lookup
Human genetic variation wikipedia , lookup
Point mutation wikipedia , lookup
Koinophilia wikipedia , lookup
History of genetic engineering wikipedia , lookup
Skewed X-inactivation wikipedia , lookup
Group selection wikipedia , lookup
Designer baby wikipedia , lookup
Polymorphism (biology) wikipedia , lookup
Genetic drift wikipedia , lookup
Y chromosome wikipedia , lookup
X-inactivation wikipedia , lookup
Genome (book) wikipedia , lookup
Neocentromere wikipedia , lookup
Population genetics wikipedia , lookup
Transcript
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET GA Quick Overview • Developed: USA in the 1970’s • Early names: J. Holland, K. DeJong, D. Goldberg • Typically applied to: – discrete optimization • Attributed features: – not too fast – good heuristic for combinatorial problems • Special Features: – Traditionally emphasizes combining information from good parents (crossover) – many variants, e.g., reproduction models, operators 5/23/2017 Dr.N.Uma Maheswari, PSNACET 2 Search Space Initialization • Initially many individual solutions are randomly generated to form an initial population, covering the entire range of possible solutions (the search space) • Each point in the search space represents one possible solution marked by its value( fitness) Selection A proportion of the existing population is selected to bread a new bread of generation. 5/23/2017 Dr.N.Uma Maheswari, PSNACET 3 Search Space cont… Reproduction • Generate a second generation population of solutions from those selected through genetic operators: crossover and mutation. Termination • A solution is found that satisfies minimum criteria • Fixed number of generations found • Allocated budget (computation, time/money) reached • The highest ranking solution’s fitness is reaching or has reached 5/23/2017 Dr.N.Uma Maheswari, PSNACET 4 Classes of Search Techniques 5/23/2017 Dr.N.Uma Maheswari, PSNACET 5 Genetics Chromosome • All Living organisms consists of cells. In each cell there is a same set of Chromosomes. • Chromosomes are strings of DNA and consists of genes, blocks of DNA. • Each gene encodes a trait, for example color of eyes. Possible settings for a trait (e.g. blue, brown) are called alleles. Each gene has its own position in the chromosome. This position is called locus. 5/23/2017 Dr.N.Uma Maheswari, PSNACET 6 Genetics Cont… Reproduction • During reproduction, recombination (or crossover) occurs first. Genes from parents combine to form a whole new chromosome. The newly created offspring can then be mutated. The changes are mainly caused by errors in copying genes from parents. • The fitness of an organism is measure by success of the organism in its life (survival) 5/23/2017 Dr.N.Uma Maheswari, PSNACET 7 Principle Of Natural Selection • “Select The Best, Discard The Rest” Two important elements required for any problem before a genetic algorithm can be used for a solution are: Method for representing a solution (encoding) ex: string of bits, numbers, character Method for measuring the quality of any proposed solution, using fitness function ex: Determining total weight 5/23/2017 Dr.N.Uma Maheswari, PSNACET 8 GA Elements 5/23/2017 Dr.N.Uma Maheswari, PSNACET 9 Nature Vs Computer - Mapping Nature Population Individual Fitness Chromosome Gene Reproduction 5/23/2017 Computer Set of solutions. Solution to a problem. Quality of a solution. Encoding for a Solution. Part of the encoding of a solution. Crossover Dr.N.Uma Maheswari, PSNACET 10 5/23/2017 Dr.N.Uma Maheswari, PSNACET 11 Genetic algorithms • Holland’s original GA is now known as the simple genetic algorithm (SGA) • Other GAs use different: – Representations – Mutations – Crossovers – Selection mechanisms 5/23/2017 Dr.N.Uma Maheswari, PSNACET 12 Fitness function • Quantifies the optimality of a solution (that is, a chromosome): that particular chromosome may be ranked against all the other chromosomes • A fitness value is assigned to each solution depending on how close it actually is to solving the problem. • Ideal fitness function correlates closely to goal + quickly computable. • For instance, knapsack problem Fitness Function = Total value of the things in the knapsack 5/23/2017 Dr.N.Uma Maheswari, PSNACET 13 Encoding • Encoding of chromosomes is one of the problems, when you are starting to solve problem with GA. Encoding very depends on the problem. • Binary Encoding: In binary encoding every chromosome is a string of bits, 0 or 1. A101100101100101011100101 B111111100000110000011111 5/23/2017 Dr.N.Uma Maheswari, PSNACET 14 Encoding contd… • Permutation Encoding: In permutation encoding, every chromosome is a string of numbers, which represents number in a sequence. Eg:Chrom A:124356765 • Real Value Encoding: In value encoding, every chromosome is a string of some values. Values can be anything connected to problem, form numbers, real numbers or chars to some complicated objects. eg: Chromosome A: 5.3243 0.4556 2.3293 2.4545 • Tree Encoding: In tree encoding every chromosome is a tree of some objects, such as functions or commands in programming language. 5/23/2017 Dr.N.Uma Maheswari, PSNACET 15 Recombination Main idea: "Select The Best, Discard The Rest”. The process that chooses solutions to be preserved and allowed to reproduce and selects which ones must to die out. • The main goal of the recombination operator is to emphasize the good solutions and eliminate the bad solutions in a population ( while keeping the population size constant ) 5/23/2017 Dr.N.Uma Maheswari, PSNACET 16 SGA operators: Selection • Main idea: better individuals get higher chance – Chances proportional to fitness – Implementation: roulette wheel technique 1/6 = 17% A 3/6 = 50% B C » Assign to each individual a part of the roulette wheel » Spin the wheel n times to select n individuals fitness(A) = 3 fitness(B) = 1 2/6 = 33% fitness(C) = 2 5/23/2017 An example after Goldberg ‘89 (1) • Simple problem: max x2 over {0,1,…,31} • GA approach: – Representation: binary code, e.g. 01101 13 – Population size: 4 – 1-point xover, bitwise mutation – Roulette wheel selection – Random initialisation • We show one generational cycle done by hand So, how to select the best? Roulette Selection Rank Selection Steady State Selection Tournament Selection Roulette wheel selection Main idea: the fitter is the solution with the most chances to be chosen HOW IT WORKS ? x2 example: selection X2 example: crossover X2 example: mutation Crossover Crossover- Many genetic algorithms use strings of binary symbols for chromosomes, as in our Knapsack example, to represent solutions. Crossover means choosing a random position in the string (say, after 2 digits) and exchanging the segments either to the right or to the left of this point with another string partitioned similarly to produce two new off spring. 5/23/2017 Dr.N.Uma Maheswari, PSNACET 25 Cross Over-Single-site Crossover methods • Single Point Crossover- A random point is chosen on the individual chromosomes (strings) and the genetic material is exchanged at this point. 5/23/2017 Dr.N.Uma Maheswari, PSNACET 27 Uniform Crossover using Mask Two Dimensional Crossover-Matrix Crossover GA Cycle Outline of the Basic Genetic Algorithm 1. [Start] Generate random population of n chromosomes (suitable solutions for the problem) 2. [Fitness] Evaluate the fitness f(x) of each chromosome x in the population 3. [New population] Create a new population by repeating following steps until the new population is complete 5/23/2017 Dr.N.Uma Maheswari, PSNACET 32 4. [Selection] Select two parent chromosomes from a population according to their fitness (the better fitness, the bigger chance to be selected) The idea is to choose the better parents. 5. [Crossover] With a crossover probability cross over the parents to form a new offspring (children). If no crossover was performed, offspring is an exact copy of parents. 6. [Mutation] With a mutation probability mutate new offspring at each locus (position in chromosome). 5/23/2017 Dr.N.Uma Maheswari, PSNACET 33 7. [Accepting] Place new offspring in a new population 8. [Replace] Use new generated population for a further run of algorithm 9. [Test] If the end condition is satisfied, stop, and return the best solution in current population 10. [Loop] Go to step 2 5/23/2017 Dr.N.Uma Maheswari, PSNACET 34 Flow Diagram of the Genetic Algorithm Process Describe Problem Generate Initial Solutions Step 1 Test: is initial solution good enough? Yes Stop No Step 2 Step 3 Step 4 Step 5 5/23/2017 Select parents to reproduce Apply crossover process and create a set of offspring Apply random mutation Dr.N.Uma Maheswari, PSNACET 35 5/23/2017 Dr.N.Uma Maheswari, PSNACET 38