Download presentation
Presentation is loading. Please wait.
1
RAJ ASHAR CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9, 2002 Instructor: Prof. Shang-Hua Teng
2
Evolutionary Algorithms Opaque means to clearly-good solutions
3
Agenda Background General Evolutionary Algorithm (EA) Evolutionary Operators EA classes Ants Demo
4
Evolution from a CS Perspective: Part I Population’s individuals compete for an environment’s finite resources Genetic composition determines success Goal: Be a Survival: black-box objective function Environment dictates black-box’s inner workings Surprise: Evolution itself requires diversity
5
Evolution from a CS Perspective: Part II NOT a purely-stochastic event 10 17 seconds to winnow through ~10 19,500,000 possible genotypes Extremely unlikely that random search would optimize survival functions Nature adapts, not optimizes, but … Optima do exist Nature’s success piques CS curiosity
6
Why Evolution? Process complements traditional search and optimization techniques Copes well with noisy, inaccurate, incomplete data Highly-parallelized Potentially multiple solutions to same problem Does not require in-depth problem knowledge Awesome proof of concept
7
Computation, Meet Evolution Evolutionary computation Evolutionary Algorithms (EAs)
8
EA Basics Seek high-”fitness” structures Each structure encoded as a chromosome Genes make up chromosome Each gene represents value for some parameter
9
EA Flowchart
10
General EA Pseudocode Generate [P(0)] t = 0 WHILE NOT Termination_Criterion [P(t)] DO Evaluate [P(t)] P' (t) = Select [P(t)] P''(t) = ApplyReproductionOperators [P'(t)] P(t+1) = Replace [P(t), P''(t)] t = t + 1 END RETURN Best_Solution
11
Evolutionary Operators Selection Recombination Mutation Reinsertion
12
Selection Operation Selection Idea: Compute each individual’s fitness level Rank-based methods only: weight each individual’s reproduction probability by rank Select which individuals shall mate Several selection methods exist Concerns Maintain Population Diversity Improve Overall Fitness Spread
13
Tournament Selection For Nind iterations: Randomly choose Tour number of individuals from the population for a group G. Select the objectively-fittest individual from G for reproduction. Tour may range from [2, Nind] Generates “uniform at random offspring,” Attempts to mimic “stags rut to vie for the privilege of mating with a herd of hinds.”
14
Truncation Selection Pick top Trunc percent of population to reproduce Produces uniform at random offspring Artificial selection method
15
Ranking Methods Compare individuals’ fitness Proportional fitness assignment Assigns each individual I ’s reproduction probability proportionally to I ’s fitness, and normalizes all probabilities to the unity Scales poorly Rank-based fitness assignment Sorts population according to individual fitness More robust than proportional fitness assignment
16
Rank-Based Selection Pos = individual’s ranked position SP = selective pressure Two weighting formulae: Linear ranking: Fitness(Pos) = 2 - SP + 2·(SP - 1)·(Pos - 1) / (Nind - 1) SP may assume a value in [1.0, 2.0]. non-linear ranking: Fitness(Pos) = Nind·X(Pos - 1) / Σ(X(i - 1)); i = 1:Nind X stands for the root of the polynomial 0 = (SP - 1)·X(Nind - 1) + SP·X(Nind - 2) +... + SP·X + SP
17
Comparing Ranking Formulae Read right to left (position vs. fitness assignment) Nonlinear increases weight more quickly with position Better for smaller populations
18
Roulette wheel selection Roulette wheel selection Map each individual to segments of a continuous line “such that each individual's segment is equal in size to its fitness” by rank Highest-ranked individual enjoys the largest line segment Lowest-ranked individual occupies no line segment. MatingPopulation, the number of individuals to reproduce: For MatingPopulation iterations: Generate a random number from independent sampling and a uniform distribution. Select for reproduction “individual whose segment spans the random number”.
19
Stochastic universal sampling Like Roulette wheel sampling, but differs slightly NPointer = number of individuals to select Place NPointer equally-spaced pointers over the line Each pointer at 1/NPointer distance from another pointer. Randomly generate number r within the range [0, 1/NPointer], Place first pointer at r and every pointer thereafter at 1/NPointer distance from the previous pointer Select for reproduction each individual whose line segment receives a pointer. Zero bias and minimum spread
21
Recombination Two categories Real-valued recombination Binary recombination Discrete recombination algorithm Applies to both categories Exchanges gene values between individuals parent 1 12 25 5 parent 2 123 4 34 mask 1 2 2 1 mask 2 1 2 1 offspring 1 123 4 5 offspring 2 12 4 5
22
Real-valued recombination Intermediate-value recombination Set offspring value according to offspring = parent 1 + α(parent 2 - parent 1) α = scaling factor chosen uniformly at random over an interval [-d, 1 + d] α differs for each gene d = 0.25 represents a good choice. parent 1 12 25 5 parent 2 123 4 34 sample 1 0.5 1.1 -0.1 sample 2 0.1 0.8 0.5 offspring 1 67.5 1.9 2.1 offspring 2 23.1 8.2 19.5
23
Discrete recombination Single-point crossover Randomly choose a gene at which to juxtapose two chromosomes parent 1 0 1 1 1 0 0 1 1 0 1 0 parent 2 1 0 1 0 1 1 0 0 1 0 1 crossover position 5 offspring 1 0 1 1 1 0| 1 0 0 1 0 1 offspring 2 1 0 1 0 1| 0 1 1 0 1 0
24
Mutation Adds “small random values,” bounded by a mutation step value, to randomly chosen genes Probability of chromosomal mutation inversely proportional to the number of genes Again, two categories Real-valued recombination Binary recombination
25
Reinsertion Introducing offspring to population Questions Add all offspring, or just fittest offspring Replace all parents, least-fit parents, randomly- chosen parents Two categories based on selection methods Local reinsertion Global reinsertion
26
Genetic Algorithms Fixed-size chromosome encodes parameter values Genetic operations and fitness measures improve population At each iteration, GA evaluates fitness of each individual Creates new population by performing operations such as crossover, fitness-proportionate reproduction and mutation measured Replaces entirely the previous population with the offspring. Useful in solving multidimensional optimization problems Maximize low-orbit satellite Earth coverage
27
Genetic Programming Extends genetic learning to programming Population consists of variable-length programs Represented as parse trees When executed, solve the given problem Crossover involves exchanging random subtrees Mutation generally does not take place Already, “human competitive” results Among others, “Creation of a cellular automata rule for the majority classification problem that is better than the Gacs-Kurdyumov-Levin (GKL) rule and all other known rules written by humans”
28
Evolutionary Strategies Capable of solving high dimensional, multimodal, nonlinear problems subject to linear and/or nonlinear constraints. Objective function can also be the result of a simulation, and does not have to be given in a closed form. Two strategies: plus strategy: reinserts parents and children based on fitness. Plus strategy departs from reality in theoretically allowing an individual to remain within the population for perpetuity. comma strategy: perform only selection on the offspring, and replace all parents with the selected offspring. Individual Object variables Strategy variables Requires knowledge of probability theory and applied statistics
29
Evolutionary Programming Strategy for stochastic optimization No constraint on representation Perturbs offspring chromosomes during reproduction Does not use crossover Degree of mutation depends on degree of functional change imposed by parents Stochastic tournament to determine reinsertion
30
Open questions? Complexity Why do these methods work?
31
Ants! Genetic algorithm Can alter parameters Proof of concept for systems?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.