2 Basic Concepts Individuals (or members of population or chromosomes) individuals surviving from the previous generation + children generation Simulated Annealing Tabu Search versus Genetic Algorithms a single solution is carried over from one iteration to the next population based method
3 Fitness of 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.
4 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 1Cut Point 2 P1 = [ ] P2 = [ ] O1 = [ ] O2 = [ ] Cut Point P1 = [ ] P2 = [ ] O1 = [ ] O2 = [ ] Example 2. Partially Mapped Crossover 314255314255
5 Example 3. Preserves the absolute positions of the jobs taken from P1 and the relative positions of those from P2 Cut Point 1 P1 = [ ] P2 = [ ] O1 = [ ] O2 = [ ] Example 4. Similar to Example 3 but with 2 crossover points. Cut Point 1Cut Point 2 P1 = [ ] P2 = [ ] O1 = [ ]
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 elements of 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 random and randomly permuting the elements between these two positions.
7 Selection Roulette wheel: the size of each slice corresponds to the fitness of the appropriate individual. slice for the 1st individual slice for the 2nd individual selected 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
8 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.
9 Algorithm Step 1. k=1 Select N initial schedules S 1,1,..., S 1,N using some heuristic Evaluate each individual of the population Step 2. Create new individuals by mating individuals in the current population using crossover and mutation Delete members of the existing population to make place for the new members Evaluate the new members and insert them into the population S k+1,1,..., S k+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
10 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
11 Generation 1 Individual Cost Selected individual: with offspring 13245, cost 20 Generation 2 Individual Cost * Average fitness is improved, diversity is preserved Selected individual: with offspring 12354, cost 17 Generation 3 Individual Cost Selected individual: with offspring 12435, cost 11
12 Generation 4 Individual Cost Selected individual: 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.
13 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 are more common. Mutation is usually employed with a very low probability.