130 likes | 227 Views
Genetic Algorithms. Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations. Basic Concepts. Simulated Annealing Tabu Search. Genetic Algorithms. versus. a single solution is carried over from one iteration to the next. population based method.
E N D
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations
Basic Concepts Simulated AnnealingTabu Search Genetic Algorithms versus • a single solution is carried over from one iteration to the next • population based method • Individuals (or members of population or chromosomes) individuals surviving from the previous generation + children generation
Fitnessof an individual (a schedule) is measured by the value of the associated objective function • Representation • Example from scheduling problems: • the order of jobs to be processed can be represented as a permutation:[1, 2, ... ,n] • Initialisation • How to choose initial individuals? • High-quality solutions obtained from another heuristic technique can help a genetic algorithm to find better solutions more quickly than it can from a random start.
Reproduction • Crossover: combine the sequence of operations on one machine in one parent schedule with a sequence of operations on another machine in another parent. • Example 1. Ordinary crossover operator is not useful! Cut Point P1 = [2 1 3 4 5 6 7] P2 = [4 3 1 2 5 7 6] O1 = [2 1 3 2 5 7 6] O2 = [4 3 14 5 6 7] Example 2. Partially Mapped Crossover Cut Point 1 Cut Point 2 31 42 55 P1 = [2 134 5 6 7] P2 = [43125 7 6] O1 = [43 12 5 6 7] O2 = [21 345 7 6]
Example 3. Preserves the absolute positions of the jobs taken from P1and the relative positions of those from P2 Cut Point 1 P1 = [2 1 3 4 5 6 7] P2 = [4 3 1 2 5 7 6] O1 = [2 14 3 5 7 6] O2 = [4 3 2 1 5 6 7] Example 4. Similar to Example 3 but with 2 crossover points. Cut Point 1 Cut Point 2 P1 = [2 1 3 4 5 6 7] P2 = [4 3 12 5 7 6] O1 = [3 4 5 1 2 7 6]
Mutation enables genetic algorithm to explore the search space not reachable by the crossover operator. • Adjacent pairwise interchange in the sequence [1,2, ... ,n] [2,1, ... ,n] Exchange mutation: the interchange of two randomly chosen elementsof the permutation Shift mutation: the movement of a randomly chosen element a random number of places to the left or right Scramble sublist mutation: choose two points on the string in randomand randomly permuting the elements between these two positions.
slice for the 1st individual selected individual slice for the 2nd individual . . . • Selection • Roulette wheel: the size of each slice corresponds to the fitness of the appropriate individual. Steps for the roulette wheel 1. Sum the fitnesses of all the population members, TF 2. Generate a random number m, between 0 and TF 3. Return the first population member whose fitness added to the preceding population members is greater than or equal to m
Tournament selection • 1. Randomly choose a group of T individuals from the population. • 2. Select the best one. • How to guarantee that the best member of a population will survive? • Elitist model: the best member of the current population is set to be a member of the next.
Algorithm Step 1. k=1 Select N initial schedules S1,1 ,... ,S1,N using some heuristic Evaluate each individual of the population Step 2. Create new individuals by mating individuals in the current populationusing crossover and mutation Delete members of the existing population to make place forthe new members Evaluate the new members and insert them into the population Sk+1,1 ,... ,Sk+1,N Step 3. k = k+1 If stopping condition = true then return the best individual as the solution and STOP else go to Step 2
Example • Metric: minimize total tardiness (tardiness of a job is the amount by • which it exceeds its deadline) • Population size: 3 • Selection: in each generation the single most fit individual reproduces using adjacent pairwise interchange chosen at random there are 4 possible children, each is chosen with probability 1/4 Duplication of children is permitted. Children can duplicate other members of the population. • Initial population: random permutation sequences
Generation 1 • Individual 25314 14352 12345 • Cost 25 17 16 • Selected individual: 12345 with offspring 13245, cost 20 • Generation 2 • Individual 13245 14352 12345 • Cost 20 17 16 • Average fitness is improved, diversity is preserved • Selected individual: 12345 with offspring 12354, cost 17 • Generation 3 • Individual 12354 14352 12345 • Cost 17 17 16 • Selected individual: 12345 with offspring 12435, cost 11
Generation 4 • Individual 14352 12345 12435 • Cost 17 16 11 • Selected individual: 12435 • This is an optimal solution. • Disadvantages of this algorithm: • Since only the most fit member is allowed to reproduce (or be mutated) the same member will continue to reproduce unless replaced by a superior child.
Practical considerations • Population size: small population run the risk of seriously under-covering the solution space, while large populations will require computational resources. Empirical results suggest that population sizes around 30 are adequate in many cases, but 50-100 are more common. • Mutation is usually employed with a very low probability.