Evolutionary Algorithms - PowerPoint PPT Presentation

1 / 38
About This Presentation
Title:

Evolutionary Algorithms

Description:

A 'fitness' function evaluates each solution to decide ... GAGS. BSD. C . GALib. GNU LGPL. C . EO. Freeware. Fortran / C. PGAPack. Licence. Language. Name ... – PowerPoint PPT presentation

Number of Views:100
Avg rating:3.0/5.0
Slides: 39
Provided by: tra9151
Category:

less

Transcript and Presenter's Notes

Title: Evolutionary Algorithms


1
Evolutionary Algorithms
An Introduction
"Genetic algorithms are based on a biological
metaphor They view learning as a competition
among a population of evolving candidate problem
solutions. A 'fitness' function evaluates each
solution to decide whether it will contribute to
the next generation of solutions. Then, through
operations analogous to gene transfer in sexual
reproduction, the algorithm creates a new
population of candidate solutions."
Matthias Trapp, Diploma Student - Computer
Science, Theoretical Ecology Group - University
of Potsdam, Stanislaw Lem Workshop on Evolution
10.-14. October - Lviv 2005, trapp.matthias_at_freene
t.de
2
Agenda
  • Introduction
  • Structure of an EA
  • Genetic Operators
  • Classification
  • Implementation
  • Discussion

3
Introduction
4
Motivation - The Problem(s)
  • Global optimization problem
  • Function has many local optima
  • Function is changing over time
  • Function have many parameters
  • ? very large search space
  • Combinatorial problems / Data Mining
  • Classical NP-hard problems
  • TSP
  • SAT

5
Overview Application Domains
6
Evolution and Problem Solving
  • Algorithm Automated Problem Solver
  • Broad Scope Natural Computing
  • Family of algorithms which mimickingnatural
    processes
  • Neural Networks
  • Simulated Annealing
  • DNA Computing
  • Evolutionary Algorithms

Evolution vs. Problem Solving
Environment ?? Problem
Individual ?? Candidate Solution
Fitness ?? Quality
Approximation ?? Optimization
7
Evolutionary Algorithms
  • EAs are adaptive heuristic search algorithms
  • Metaphor trail and error (a.k.a generate and
    test)
  • EAs are inspired by Darwin's theory of evolution
  • problems are solved by an evolutionary
    process resulting in a best (fittest) solution
    (survivor) from a population of solution
    candidates
  • EAs has been successfully applied to a wide range
    of problems
  • Aircraft Design, Routing in Communications
    Networks, Tracking Windshear, Game Playing,
    Robotics, Air Traffic Control, Design,
    Scheduling, Machine Learning, Pattern
    Recognition, Job Shop Scheduling, VLSI Circuit
    Layout, Strike Force Allocation, Market
    Forecasting,Egg Price Forecasting, Design of
    Filters and Barriers, Data-Mining, User-Mining,
    ResourceAllocation, Path Planning, Theme Park
    Tours

8
Characteristics
  • Differences to classical algorithms/optimization
    methods
  • EAs search a set of possible solutions in
    parallel
  • EAs do not require derivative information
  • EAs use probabilistic transition rules
  • EAs are generally straightforward to apply
  • EAs provide a number of potential solutions
  • EAs are able to apply self-adaptation

? Another useful hammer ?
? If yes, then how can that be achieved ?
9
Structure of an EA
10
EA Components
  • Representation mechanism (definition of
    individuals)
  • Evaluation function (or fitness function)
  • Population as container data structure
  • Parent/Survivor selection mechanism
  • Variation operators (Recombination, Mutation)
  • Initialization procedure / Termination condition

11
General Schema EA
Evolutionary Search (Flow Chart Model)
12
General Schema EA
Evolutionary Search (Pseudo Code)
procedure EA t 0 Initialize(Pop(t))
Evaluate(Pop(t)) while(!TerminalCondition(Pop(t
)) Parents(t) ParentSelection(Pop(t)) Off
spring(t) Recombination(Parents(t)) Offspring(
t) Mutation(Offspring(t)) Evaluate(Offspring(t
)) Pop(t1) Replace(Pop(t),Offspring(t)) t
t 1
13
Representation x E(D(x))
  • Mapping Problem context ?Problem solving space
  • Phenotype space P (candidate solution,individuals)
  • Genotype space G (chromosomes, individuals)
  • Encoding E P ? G
  • Decoding D G ? P
  • Encoding Technical representation of individuals
  • GABinary Encoding (1110110000100) 7556
  • ES Valued vectors (ABDJEIFJDHDIE)(1365
    78924)
  • EP Finite state machines
  • GP Tree of objects (LISP)

(IF_THEN_ELSE(gt x 0)(SetX(( x 3) (- 4
y)))(SetY( x (- y 1))))
14
Population P(t) x1t,..., xnt
  • Multi-set of genotypes unit of evolution
  • Invariants
  • Population Size n
  • static (common)
  • dynamic (unusually)
  • Non-overlapping (Simple GA)
  • entire population is replaced each generation
  • Overlapping (Steady-State GA)
  • few individuals are replaced each generation
  • Sometimes associated with spatial structure
  • Diversity number of different solutions in P(t)
  • Multi-Population approaches (Pohlheim, 1995)

15
Genetic Operators
16
Selection/Sampling Operators
  • Distinguish between parent and survivor selection
  • Typically probabilistic work on population level
  • Use fitness assignment of solution candidates
  • Role pushing quality improvement
  • Generational selection vs. steady-state selection
  • Common steady state selection methods

Elitist Selection Roulette Wheel Selection Tournament Selection Scaling Selection Rank Selection Fitness-proportionate Selection Hierarchical Selection Boltzmann Selection Remainder stochastic sampling Stochastic uniform sampling
17
Mutation Operator mi G? G
  • Unary operator, always stochastic
  • Bit-Strings Bit-flips (00101) ? (10101)
  • Tree
  • Sub tree destructive
  • Sub tree/Node swap
  • List
  • Generative/Destructive
  • Node/Sequence Swap
  • Array
  • Destructive
  • Element Flip/Swap

18
Recombination ci G G ? G
  • Inherit genotype traits, typically stochastic
  • Often binary operator Offspring Sex(Mum, Dad)
  • Bit-Strings
  • k-Point Recombination
  • Uniform Recombination
  • Genetic Programming(seldom used)

19
A Simple Example
EA for Knapsack Problem
Representation 0,1n
Recombination 1-Point Crossover
Recombination probability 70
Mutation Uniform Bit-Flip
Mutation probability pm 1/n
Parent selection Best out of random two
Survival selection Generational
Population size 500
Number of offspring 500
Initialization Random
Termination condition No improvement in last 25 generations
20
Effects of Genetic Operators
  • Selection alone will tend to fill the population
    with copies of the best individual
  • Selection and crossover operators will tend to
    cause the algorithms to converge on a good but
    sub-optimal solution
  • Mutation alone induces a random walk through the
    search space.
  • Selection and mutation creates a parallel,
    noise-tolerant, hill-climbing algorithm

21
Terminal Conditions
  • Discovery of an optimal solution (precision e gt
    0),
  • Discovery of an optimal or near optimal solution,
  • Convergence on a single or set of similar
    solutions,
  • A user-specified threshold has been reached,
  • A maximum number of cycles are evaluated,
  • EA detects the problem has no feasible solution

? often disjunction of different conditions
22
Classification
23
Classification - Overview
  • 1948 Alan Turing genetically or evolutionary
    search
  • gt1950 Idea
  • simulate evolution to solve engineering and
    design problems
  • Box, 1957
  • Friedberg, 1958
  • Bremermann, 1962

24
Genetic Algorithms (GA)
  • By Holland (1975), USA
  • concerned with developing robust adaptive systems
  • Initially as abstraction of biological evolution
  • Use of bit-strings for solution representation
  • First EA which uses recombination
  • Recombination seen as main operator
  • very successful for combinatory optimization
    problems

25
Evolutionary Strategies (ES)
  • By Rechenberg (1973), Schwefel (1981), Germany
  • Parameter optimization of real-valued functions
  • Accentuation on mutation
  • Selection (µ Parents, ? Offspring)
  • (µ, ?) choose fittest of ? gt µ offspring
  • (µ ?) choose fittest of ? µ solutions
  • Recombination (u,v parent vectors, w child
    vector)
  • More soon (Implementation Example)

26
Evolutionary Programming (EP)
  • By Fogel, Owens, and Walsh (1966), USA
  • Application Artificial Intelligence,
  • Initially for evolution of finite-state machines,
  • Using mutation and selection,
  • Later applications to mainly real-valued
    functions
  • Strong similarity to evolutionary strategies

Example Prediction of binary cycles
27
Genetic Programming (GP)
  • Koza (1992), developed to simulate special
    functions
  • Application Function fitting f(x)
  • Using parse trees of Terminal and Non-Terminals
  • Assumptions
  • Completeness
  • Seclusion
  • Problems
  • Variable count
  • Variable types

28
Implementation and Software
void garank(void) fitness_struct temp int
pos calc_fitness() for (int pass1
passltPOP_SIZE pass) temp
rankingspass pos pass while ((pos gt 0)
temp.fitness lt rankingspos-1.fitness)
rankingspos rankingspos-1 --pos
rankingspos temp best_sol
rankings0.fitness worst_sol
rankingsPOP_SIZE-1.fitness if (best_sol lt
best_overall) best_overall best_sol if
(worst_sol gt worst_overall) worst_overall
worst_sol
29
Another Simple Example
  • Search Space
  • Evolutionary strategy
  • Solution candidate (no encoding necessary)
  • Fitness-Function
  • Parent selection Elitist
  • Recombination 1-Point, fixed
  • Non-overlapping population

? Hybrid approach evolutionary strategy and
genetic program
30
Applying Self-Adaptation
  • Evolution of the Evolution
  • Self-adaptation specific on-line parameter
    calibration technique
  • Random number from Gaussian
    distribution with zero mean and standard
    deviation s
  • Mutation operator
  • Extending the candidate representation

31
Working of an EA
  • Distinct search phases
  • Exploration
  • Exploitation
  • Trade-Off between exploration and exploitation
  • Inefficient search vs. Propensity to quick search
    focus
  • Premature Convergence climbing the wrong hill
  • Losing diversity ? Converge in local optimum
  • Techniques to prevent this well-known effect
  • Any-time behaviour

32
Multiobjective EA
  • Multiobjective GA (MOGA)(Fonseca und Fleming
    (1993)),
  • Niched Pareto GA (NPGA)(Horn und Nafpliotis
    (1993)),
  • Nondominated Sorting GA (NSGA-II)(Deb u. a.
    (2000)) ,
  • Strength Pareto EA (SPEA)(Zitzler und Thiele
    (1998)),
  • Strength Pareto EA (SPEA2)(Zitzler u. a. (2001))

33
Parallel Implementation of EA
  • Subpopulation on MIMD (Belew and Booker (1991))
  • Decrease of execution time
  • Migration Model
  • Unrestricted migration
  • Ring migration
  • Neighbourhood migration
  • Global Model (Worker/Farmer)
  • Diffusion Model
  • handles every individual separately
  • selects the mating partner in a local
    neighbourhood
  • diffusion of information takes place

34
API Comparison
Name Language Licence Target
PGAPack Fortran / C Freeware All
EO C GNU LGPL All
GALib C BSD Lnx,Win
GAGS C Freeware Lnx,Win
JAGA Java Freeware All
JGAP Jave Freeware All
35
Discussion
36
EA Advantages
  • Applicable to a wide range of problems
  • Useful in areas without good problem specific
    techniques
  • No explicit assumptions about the search space
    necessary
  • Easy to implement
  • Any-time behaviour

..is a good designer of complex structures that
are well adapted to a given environment or task.
37
EA Disadvantages
  • Problem representation must be robust
  • No general guarantee for an optimum
  • No solid theoretically foundations (yet)
  • Parameter tuning trial-and-error Process(but
    self-adaptive variants in evolution strategies)
  • Sometimes high memory requirements
  • Implementation High degree of freedom

38
Summary
an EA is the second best algorithm for any
problem
  • EAs are different from classical algorithms
  • Less effort to develop an EA which
  • Delivers acceptable solutions,
  • In acceptable running time,
  • Low costs of men and time
  • EAs are distributable (Belew and Booker (1991))
  • Subpopulations on MIMD,
  • Via network
  • EAs are easy to implement

In order to make evolutionary computing work
well, there must be a programmer that sets the
parameters right.
39
Thank You !
Questions, Concerns, Comments, Sarcasm,
Insults
40
Sources
  • Spears, W. M., De Jong, K. A., Bäck, T., Fogel,
    D. B., and de Garis, H. (1993). An Overview of
    Evolutionary Computation, The Proceedings of the
    European Conference on Machine Learning, v667,
    pp. 442-459.
  • A.E. Eiben, Evolutionary computing the most
    powerful problem solver in the universe?
  • Zbigniew Michalewicz, Genetic Algorithms Data
    Structures Evolution Programs, Springer, 1999,
    3-540-60676-9
  • Lawrence J. Fogel, Alvin J. Owens, Michael J.
    Walsh Artificial intelligence through simulated
    evolution, Wiley Verlag 1966
  • John R. Koza Genetic Programming on the
    programming of computers by means of natural
    selection, MIT Verlag 1992
Write a Comment
User Comments (0)
About PowerShow.com