Download presentation
Presentation is loading. Please wait.
1
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms
2
2 Genetic Algorithms What is a GA Terms and Definitions Basic Genetic Algorithm Example Selection Methods Crossover Methods Mutation
3
3 What is a GA Searches for good solutions among possible solutions. Uses evolutionary mechanisms including natural selection, reproduction, mutation The best possible solution may be missed Useful in problems that are too big or too difficult to solve with conventional techniques.
4
4 Terms and Definitions (1) A solution is coded by a string, also called chromosome. The words string and chromosome are used interchangeably A strings fitness is a measure of how good a solution it codes. Fitness is calculated by a fitness function.
5
5 Terms and Definitions (2) Selection: The procedure to choose parents Roulette wheel selection is a way of picking out a string from among a group of strings (a population). A wedge on a roulette wheel proportional to the string's fitness. A 'fit' string is more likely to be chosen than an 'unfit' string.
6
6 Terms and Definitions (3) Crossover is the procedure by which two chromosomes mate to create a new offspring chromosome parent 1 is copied of up to a randomly chosen point, and parent 2 is copied from that point onwards. Parent 1 1 0 0 | 1 1 0 Parent 2 0 1 1 | 1 0 0 Offspring1 1 0 0 1 0 0 Offspring2 0 1 1 1 1 0
7
7 Terms and Definitions (4) Mutation : with a certain probability flip a bit in the offspring Various ways to implement mutation, optional.
8
8 Basic Genetic Algorithm 1. Start: Generate random population of n chromosomes (suitable solutions for the problem) 2. Fitness: Evaluate the fitness f(x) of each chromosome x in the population 3. New population: Create a new population by repeating following steps until the new population is complete 4. Test: If the end condition is satisfied, stop, and return the best solution in current population
9
9 New Population Selection: Select two parent chromosomes from a population according to their fitness (the better fitness, the bigger chance to be selected) Crossover: With a crossover probability cross over the parents to form a new offspring (children). If no crossover was performed, offspring is an exact copy of parents. Mutation: With a mutation probability mutate new offspring at each locus (position in chromosome).
10
10 Termination Criteria After a pre-specified number of generations When an individual solution reaches a pre- specified level of fitness When the variation of individuals from one generation to the next reaches a pre- specified level of stability, e.g. all become equal
11
11 Example: The Knapsack Problem A knapsack with capacity C, A set of items each with volume and value. Find a subset of the items that can fit in the knapsack and has maximum value. This is an optimization NP problem. Given n items, the number of all subsets to be examined is 2 n.
12
12 Example (cont.) O1O2O3O4 Volume4315 Value3235 Sample candidate solutions O1O2O3O4VolumeValue 1010187 2100198 3101056 401 119 10 <<<<< 5011045
13
13 Issues How to represent an individual How to choose the fitness function the selection method the crossover method the frequency of mutations
14
14 More on Selection Roulette Wheel Selection: proportional to the fitness Rank Selection: rank is assigned based on fitness, then choose proportional to the rank Steady-State Selection: sort and always choose the best Elitism: copy the best individuals in the next generation Tournament selection
15
15 Tournament Selection Saves time used for sorting Fix a constant k < 1, e.g. k =0.75 Randomly choose two individuals and a random number r < 1 if r < k, select the individual with the higher fitness to be a parent, otherwise select the other individual to be a parent Repeat steps 2 and 3 until the new generation is created
16
16 More on Crossover Random point of split Fixed point of split Single point: split in two Two points: split in three Uniform: bits are chosen randomly Arithmetic crossover: the offspring is a result of some arithmetic operation Two parents Three parents
17
17 Applications Optimization problems Search in a pool of candidate solutions Tutorial: http://cs.felk.cvut.cz/~xobitko/ga/
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.