Genetic Algorithms CSCI-2300 Introduction to Algorithms - PowerPoint PPT Presentation

Loading...

PPT – Genetic Algorithms CSCI-2300 Introduction to Algorithms PowerPoint presentation | free to download - id: 580025-OTgxY



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

Genetic Algorithms CSCI-2300 Introduction to Algorithms

Description:

Genetic Algorithms CSCI-2300 Introduction to Algorithms David Goldschmidt, Ph.D. Rensselaer Polytechnic Institute April 29, 2013 Evolutionary Computing Evolutionary ... – PowerPoint PPT presentation

Number of Views:89
Avg rating:3.0/5.0
Slides: 32
Provided by: ETS67
Learn more at: http://www.cs.rpi.edu
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Genetic Algorithms CSCI-2300 Introduction to Algorithms


1
Genetic AlgorithmsCSCI-2300 Introduction to
Algorithms
  • David Goldschmidt, Ph.D.
  • Rensselaer Polytechnic Institute
  • April 29, 2013

2
Evolutionary Computing
  • Evolutionary computing produceshigh-quality
    partial solutions to problems throughnatural
    selection andsurvival of the fittest
  • Compare to naturalbiological systems thatadapt
    and learn over time

3
Genetic Algorithm Example
  • Find the maximum value of function
  • f(x) x2 15x
  • Represent problem using chromosomes built from
    four genes

http//www.webgraphing.com
4
Genetic Algorithm Example
  • Initial random population of size N 6

5
Genetic Algorithm Example
  • Determine chromosome fitness foreach chromosome
  • 218
    100.0

6
Genetic Algorithm Example
  • Use fitness ratios to determine which chromosomes
    are selected for crossoverand mutation
    operations

7
Genetic Algorithm Example
  • Converge on a near-optimal solution

8
Convergence Example
global maximum
local maximum
9
Genetic Algorithms Step 1
  • Represent the problem domain asa chromosome of
    fixed length
  • Use a fixed number of genes to represent a
    solution
  • Use individual bits or characters for
    efficientmemory use and speed
  • e.g. Traveling Salesman Problem (TSP)
    http//www.lalena.com/AI/Tsp/

10
Genetic Algorithms Step 2
  • Define a fitness function f(x) to measurethe
    quality of individual chromosomes
  • The fitness function determines
  • which chromosomes carry over to the next
    generation
  • which chromosomes are crossed over with one
    another
  • which chromosomes are individually mutated

11
Genetic Algorithms Step 3
  • Establish our genetic algorithm parameters
  • Choose the size of the population, N
  • Set the crossover probability, pc
  • Set the mutation probability, pm
  • Randomly generate an initial populationof
    chromosomes
  • x1, x2, ..., xN

12
Genetic Algorithms Step 4
  • Calculate the fitness of eachindividual
    chromosome using f(x)
  • f(x1), f(x2), ..., f(xN)
  • Order the population based on fitness values

13
Genetic Algorithms Step 5
  • Using pc, select pairs of chromosomesfor
    crossover
  • Using pm, select chromosomes for mutation
  • Chromosomes are selectedbased on their
    fitnessvalues using aroulette wheel approach

14
Genetic Algorithms Step 6
  • Create a pair of offspring chromosomes by
    applying a crossover operation

15
Genetic Algorithms Step 6
  • Mutate an offspring chromosome by applyinga
    mutation operation

16
Genetic Algorithms Steps 7 8
  • Step 7
  • Place all generated offspringchromosomes in a
    new population
  • Step 8
  • Go back to Step 5 until the size of the new
    population is equal to the size of the initial
    population, N

17
Genetic Algorithms Steps 9 10
  • Step 9
  • Replace the initial population withthe new
    population
  • Step 10
  • Go back to Step 4 and repeat the processuntil
    termination criteria are satisfied
  • Typically repeat this process for 50-5000
    generations

18
Iteration
19
Crossword Puzzle Construction
  • Given
  • Dictionary of valid wordsand phrases
  • Empty crossword grid
  • Problem
  • Fill the crossword grid suchthat all words both
    acrossand down are valid
  • (assign clues later)

20
Crossword Puzzle Construction
  • Genetic Algorithm (GA)
  • Evolve a solution by crossovers andmutations
    through many generations
  • Initial population of crossword grids
  • Random letters?
  • Random letters based on Scrabble frequencies?
  • Random words from dictionary?
  • Fitness of each grid is number of valid words

21
Termination Criteria
  • When do we stop?
  • Pause a genetic algorithm after agiven number of
    generations, thencheck the fittest chromosomes
  • If the fittest chromosomes are fitbeyond a given
    threshold,terminate the genetic algorithm
  • Also consider stopping when the highest fitness
    value does not change for a large number of
    generations

?
22
Computational Complexity
  • How long does it take for an algorithm toproduce
    a solution?
  • Depends on the size of the input andthe
    complexity of the algorithm
  • The size of the input is n
  • The complexity of the algorithm is
    classifiedbased on its expected run time

23
Computational Complexity
  • Big-O notation measures the expected run timeof
    an algorithm (i.e. its computational complexity)
  • Constant time O(1)
  • Logarithmic time O(log n)
  • Linear time O(n)
  • Linearithmic time O(n log n)
  • Quadratic time O(n2)
  • Exponential time O(c n)
  • Factorial time O(n!)

P
NP
24
Genetic Algorithms
  • Genetic algorithms are often well-suited to
    producing reasonable solutions to intractable
    problems
  • Intractable problems are problems withexcessive
    computational complexity
  • i.e. in the Nondeterministic Polynomial (NP)
    class of problems
  • A reasonable solution is a partial or inexact
    solution that adequately solves the problem in
    polynomial time

25
Genetic Algorithms Example
  • Consider the Traveling Salesman Problem (TSP) in
    which a salesman aims to visit n cities exactly
    once covering the least distance
  • http//mathworld.wolfram.com/TravelingSalesmanPro
    blem.html
  • http//www.tsp.gatech.edu/games/index.html
  • Starting at any given node, choose from n1
    remaining nodes, then choose from n2 remaining
    nodes, etc.
  • Testing every possible route takes (n1)! steps
  • see http//bio.math.berkeley.edu/classes/195/2000/
    lec14/index.html

26
Genetic Algorithms Example
  • Use a genetic algorithm to evolve a near-optimal
    solution to the TSP
  • Label cities A, B, C, D, E, F, etc.
  • Example circuits ABCDEF, BDAFCE, FBECAD
  • How do we perform crossover operations?
  • Basic crossovers might result in invalid
    membersof the population
  • e.g. combining ABCDEF and BDAFCE may result in
    ABCFCE

27
Genetic Algorithms Example
  • Key challenge of developing a genetic algorithm
    is often the representation of the problem
  • For TSP, consider a standard ordering ABCDEF,
    assigning the code 123456
  • All other sequences encoded
    based on the removal
    of letters
  • Basic crossover works...

28
Genetic Algorithms Example
  • All other sequences encoded based on
    the removal of letters from standard
    ordering
  • Sequence BDAFCE has code 231311
  • B is 2 in ABCDEF
  • D is 3 in ACDEF
  • A is 1 in ACEF
  • F is 3 in CEF
  • C is 1 in CE
  • E is 1 in E

29
Genetic Algorithms Example
  • Crossing ACEDB with ABCED...
  • Crossover Operation

30
Genetic Algorithms Example
another approach http//www.dna-evolutions.com/d
naappletsample.html
  • Combining ACEDB with ABCED...
  • ...yields ACBED
  • from A.K. Dewdneys The (New) Turing Omnibus,
    Computer Science Press, New York, 1993

31
Genetic Algorithms
  • Advantages of genetic algorithms
  • Often outperform brute force approaches by
    randomly jumping around the search space
  • Ideal for problem domains in which near-optimal
    (as opposed to exact) solutions are adequate
  • Disadvantages of genetic algorithms
  • Might not find any satisfactory partial solutions
  • Tuning can be a challenge
About PowerShow.com