Evolutionary Algorithms - PowerPoint PPT Presentation

1 / 36
About This Presentation
Title:

Evolutionary Algorithms

Description:

Find the vector x. such that f(x) is min or max ... State of the art. No hard and fast rules about the best EA flavour for a given problem ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 37
Provided by: Gues267
Category:

less

Transcript and Presenter's Notes

Title: Evolutionary Algorithms


1
Evolutionary Algorithms
Nicolas Kruchten 4th Year Engineering
Science Infrastructure Option
2
What are they?
  • EAs are stochastic techniques used to search
    multidimensional spaces for points, according to
    some criteria.
  • They operate by mimicking reproduction
    selection processes
  • More on this in a bit

3
What are they good for?
  • EAs are used to solve optimization problems of
    various types
  • Find the vector x such that f(x) is min or max
  • A huge variety of engineering or science problems
    can be reduced to, or expressed as, optimization
    problems

4
A black-box example
  • Say you have a black box, with n knobs, and a
    light bulb, what set of knob positions will make
    the bulb glow brightest?

5
What if
  • n1? n10000?
  • knobs are continuous? discrete? mixed?
  • some combinations are invalid? (i.e. knob 1 must
    be less than knob 2)
  • an analytical expression exists?

6
Traditional methods
  • Direct Calculus
  • Gradient descent or hill climbing
  • Frank Wolfe (!)
  • Simplex
  • Simulated Annealing
  • SPSA
  • Etc.

7
Unfortunately they
  • Sometimes simply dont apply
  • Only work for specific problems
  • Dont scale well (NP-Hard, NP-Complete)
  • Get trapped in local optima

8
EAs
  • Dont have all of these problems
  • Scale reasonably well
  • Work for a huge variety of problems
  • Dont require gradients but can use them

9
How EAs work
  • Pick a population of feasible points
  • Generate new points from the better ones
  • Throw out the worse ones
  • Thats one generation rinse repeat
  • Lo and behold! The points in your population are
    getting better and better!

10
Back to our example
  • Our feasible points were sets of knob positions,
    we call these chromosomes
  • Individual knob positions are genes
  • The brightness we call the fitness, were
    looking for chromosomes with good fitness

11
How to get new points
  • This is where the genetic comes in
  • Given some parent chromosomes, how do we mix
    them up and get a child?
  • Various schemes are possible depending on how we
    represent the parents (binary, real, integer etc)

12
Mutation
  • If we only ever blend or mix and match genes, we
    can only ever explore combinations of our initial
    gene pool
  • To explore new parts and find new optima, we
    periodically change, or mutate, genes.
  • Again, various processes are possible.

13
Which parents to use
  • Various schemes exist for selection
  • Pick the best ones
  • Pick random ones
  • Pick them based on relative fitness
  • Pick them based on relative rank
  • Pick them based on how different they are
  • etc

14
Which points to keep
  • Various schemes exist to decide which children
    and/or parents to keep at each generation
  • Keep only the children
  • Select from a pool of children and parents
  • Best
  • Random
  • Rank
  • Fitness, etc

15
When to stop
  • You can stop an EA whenever is appropriate, but
    typical convergence criteria include
  • A number of generations
  • A given standard deviation of fitnesses
  • A period of time
  • Total convergence
  • Etc.

16
Putting it all together
Let t 0 Initialize P(t)
17
EA Limitations
  • EAs are extremely flexible, but they have their
    own problems
  • Can be very slow, requiring many potentially long
    evaluations
  • Are tough to design and configure, many many
    parameters
  • No guarantee of global optimum

18
Some history
  • You may have heard of GAs, which are a subset of
    EAs
  • Much confusion and conflicting terminology exists
  • A huge body of operators, combinations and
    approaches have been proposed

19
Evolutionary Programming
  • Traditional
  • Credited to Fogel, US, published in 66
  • Single parents (so not genetic)
  • Basically pure mutation
  • Since then
  • EP approaches themselves mutated independently
    towards general EA practice

20
Evolutionary Strategies
  • Traditional
  • Credited to Rechenberg and Schwefel, Switzerland,
    published in 73
  • Tiny populations (1 or 2)
  • Sophisticated adaptive mutation scheme
  • Since then
  • Adaptive mutation has gone mainstream

21
Genetic Algorithms
  • Traditional
  • Credited to Holland, US, published in 72
  • Binary coding
  • Keep only the children
  • Since then
  • Has grown to be loosely interchangable with EA,
    with real-coded GA, crowding GA etc

22
State of the art
  • No hard and fast rules about the best EA flavour
    for a given problem
  • Some heuristics exist
  • EAs have been successfully applied to many
    problems in various fields, but with few general
    results

23
Advanced EAs
  • Parallelization
  • Distribution
  • Master/Slave
  • Peered Demes (see parallelization)
  • Hybrid
  • Hybridization

24
ITS Applications
  • Model calibration is a great example of a
    challenging transportation-related optimization
  • Minimize an error term byvarying some model
    parameters

25
ITS Example GAID
  • Genetic Adaptive Incident Detection
  • Use of a GA to train a neural network perfect
    example of ANN EA ITS
  • The problem automatically detecting incidents on
    the freeway, using traffic loop data

26
GAID Basics
  • GAID uses a probabilistic neural network (PNN)
    which takes 16d vectors and classifies them into
    two piles
  • Traffic loop data -gt incident/normal
  • The PNN is defined by 16 parameters

27
GAID Diagram
EA
16 Parameters
Incident
PNN f(parameters)
Loop Data
Normal
28
GAID Fitness
  • Fitness correct classifications/number of
    vectors
  • We quiz the PNN with known data to score it
  • We are looking for the set of 16 real parameters
    which make GAID the most accurate

29
GAID Initialization
  • Initialization
  • Pick population size 50
  • Pick 50 random sets of 16 real parameters between
    0 and 1000
  • Score the chromosomes

30
GAID Generation
  • Generation
  • Pick the child population (generation) size 50
  • Select 2 parents at random
  • Each child gene is either mom or dads
  • Mutate every gene add some uniformly distributed
    random number between -50 and 50
  • Score the children

31
GAID 2d view
32
GAID 2d view
33
GAID 2d view
34
One alternative
35
GAID Assembly
  • Assembly of children and parents
  • Choose the 50 best from the combined pool of
    children and parents
  • Convergence repeat, stopping when the STD is
    less than 0.005

36
GAID Summary
  • Real representation, 16 genes
  • Popsize Gensize 50
  • Random Initialization
  • 2 parents, random selection
  • real crossover, creep mutation on all genes
  • Crowding assembly, best selection
  • STD convergence
Write a Comment
User Comments (0)
About PowerShow.com