410 likes | 609 Views
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
E N D
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.UmaMaheswari 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 Dr.N.Uma Maheswari, PSNACET
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. Dr.N.Uma Maheswari, PSNACET
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 Dr.N.Uma Maheswari, PSNACET
Classes of Search Techniques Dr.N.Uma Maheswari, PSNACET
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. Dr.N.Uma Maheswari, PSNACET
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) Dr.N.Uma Maheswari, PSNACET
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 Dr.N.Uma Maheswari, PSNACET
GA Elements Dr.N.Uma Maheswari, PSNACET
Nature Vs Computer - Mapping Dr.N.Uma Maheswari, PSNACET
Genetic algorithms • Holland’s original GA is now known as the simple genetic algorithm (SGA) • Other GAs use different: • Representations • Mutations • Crossovers • Selection mechanisms Dr.N.Uma Maheswari, PSNACET
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 Dr.N.Uma Maheswari, PSNACET
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 Dr.N.Uma Maheswari, PSNACET
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. Dr.N.Uma Maheswari, PSNACET
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) Dr.N.Uma Maheswari, PSNACET
1/6 = 17% B fitness(A) = 3 A C fitness(B) = 1 2/6 = 33% 3/6 = 50% fitness(C) = 2 SGA operators: Selection • Main idea: better individuals get higher chance • Chances proportional to fitness • Implementation: roulette wheel technique • Assign to each individual a part of the roulette wheel • Spin the wheel n times to select n individuals
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 ?
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. Dr.N.Uma Maheswari, PSNACET
Crossover methods • Single Point Crossover- A random point is chosen on the individual chromosomes (strings) and the genetic material is exchanged at this point. Dr.N.Uma Maheswari, PSNACET
Outline of the Basic Genetic Algorithm • [Start] Generate random population of n chromosomes (suitable solutions for the problem) • [Fitness] Evaluate the fitness f(x) of each chromosome x in the population • [New population] Create a new population by repeating following steps until the new population is complete Dr.N.Uma Maheswari, PSNACET
[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. • [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. • [Mutation] With a mutation probability mutate new offspring at each locus (position in chromosome). Dr.N.Uma Maheswari, PSNACET
[Accepting] Place new offspring in a new population • [Replace] Use new generated population for a further run of algorithm • [Test] If the end condition is satisfied, stop, and return the best solution in current population • [Loop] Go to step 2 Dr.N.Uma Maheswari, PSNACET
Flow Diagram of the Genetic Algorithm Process Describe Problem Generate Initial Solutions Test: is initial solution good enough? Step 1 Yes Stop No Select parents to reproduce Step 2 Step 3 Apply crossover process and create a set of offspring Apply random mutation Step 4 Step 5 Dr.N.Uma Maheswari, PSNACET
THANK YOU Dr.N.Uma Maheswari, PSNACET