RAJ ASHAR CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

31
RAJ ASHAR CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002 Instructor: Prof. Shang-Hua Teng

description

RAJ ASHAR CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002. Instructor: Prof. Shang-Hua Teng. Evolutionary Algorithms. Opaque means to clearly-good solutions. Agenda. Background General Evolutionary Algorithm (EA) Evolutionary Operators EA classes Ants Demo. - PowerPoint PPT Presentation

Transcript of RAJ ASHAR CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Page 1: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

RAJ ASHAR CAS/GRS COMPUTER SCIENCECS 591: ALGORITHMS FOR

THE NEW AGEDECEMBER 9 , 2002

Instructor: Prof. Shang-Hua Teng

Page 2: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Evolutionary Algorithms

Opaque means to clearly-good solutions

Page 3: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Agenda Background

General Evolutionary Algorithm (EA)

Evolutionary Operators

EA classes

Ants Demo

Page 4: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 5: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Evolution from a CS Perspective:

Part II NOT a purely-stochastic event 1017 seconds to winnow through

~1019,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

Page 6: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 7: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Computation, Meet Evolution

Evolutionary computation

Evolutionary Algorithms (EAs)

Page 8: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

EA Basics Seek high-”fitness” structures

Each structure encoded as a chromosome Genes make up chromosome Each gene represents value for some

parameter

Page 9: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

EA Flowchart

Page 10: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

General EA Pseudocode

Generate [P(0)]t = 0WHILE 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 ENDRETURN Best_Solution

Page 11: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Evolutionary Operators

Selection

Recombination

Mutation

Reinsertion

Page 12: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 13: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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.”

Page 14: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Truncation Selection Pick top Trunc percent of population to

reproduce

Produces uniform at random offspring

Artificial selection method

Page 15: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 16: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 17: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Comparing Ranking Formulae

Read right to left (position vs. fitness assignment)

Nonlinear increases weight more quickly with position Better for smaller populations

Page 18: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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”.

Page 19: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 20: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002
Page 21: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Recombination Two categories

Real-valued recombination Binary recombination

Discrete recombination algorithm Applies to both categories Exchanges gene values between

individualsparent 1 12 25 5parent 2 123 4 34

mask 1 2 2 1 mask 2 1 2 1

offspring 1 123 4 5 offspring 2 12 4 5

Page 22: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Real-valued recombination Intermediate-value recombination

Set offspring value according tooffspring = 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

Page 23: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 24: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 25: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 26: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 27: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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”

Page 28: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 29: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

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

Page 30: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Open questions? Complexity Why do these methods work?

Page 31: RAJ ASHAR  CAS/GRS COMPUTER SCIENCE CS 591: ALGORITHMS FOR THE NEW AGE DECEMBER 9 , 2002

Ants!

Genetic algorithm Can alter parameters Proof of concept for systems?