49
Genetic Algorithms

Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Embed Size (px)

Citation preview

Page 1: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Genetic Algorithms

Page 2: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

3

Introduction To Genetic Algorithms

(GAs)

Page 3: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

4

What Are Genetic Algorithms (GAs)?

Genetic Algorithms are search and optimization techniques based on Darwin’s Principle of Natural Selection.

Page 4: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

How is it different from other optimization and search procedures?

1. Works with a coding of the parameter set, not the parameters themselves

2. Search for a population of point and not a single point

3. Use objective function information and not derivatives or other auxiliary knowledge

4. Uses probabilistic transition rules and not deterministic rules

Page 5: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

How GA is used and different from other optimization techniques?

The first step in GA is to code the parameter x as a finite length string

Example 1 can be code as string of 5 bits with an output f=f(s) , where s=string of bits

Successive populations are generated using the GA

For effective check GA requires only objective functions associated with individual strings

Page 6: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Simple genetic algorithm Reproduction:- individual strings are copied

according to their objective fn: values f(FITNESS FUNCTION)

Crossover:- Members of the newly reproduced strings are mated at random. Each pair of strings undergoes crossing overs.

Mutation:-supplements reproduction and crossover and acts as an insurance policy against premature loss of important notions

Page 7: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

8

Darwin’s Principle Of Natural Selection I

IF there are organisms that reproduce, and IF offsprings inherit traits from their parents, and IF there is variability of traits, and IF the environment cannot support all members of a

growing population, THEN those members of the population with less-

adaptive traits (determined by the environment) will die out, and

THEN those members with more-adaptive traits (determined by the environment) will thrive

The result is the evolution of species.

Page 8: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

9

Basic Idea Of Principle Of Natural Selection

“Select The Best, Discard The Rest”

Page 9: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Example 1Maximize f(x) =x2 on the integer scale from 0-31

0 31x

f(x)

1000

Page 10: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Example 1

No:

String Fitness % of total

1 01101

169 14.2

2 11000

576 49.2

3 01000

64 5.5

4 10011

361 30.9

Total 1170 100

Page 11: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Roulette wheel with slots sized according to fitness

1234

Page 12: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Crossover

A1=0 1 1 0 1A2=1 1 0 0 0

A1’=0 1 1 0 0A2’=1 1 0 0 1

Page 13: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Simple GA by Hand(Reproduction)

No: String x f(x)x2

pselectfi/Ʃf

Expected countn.pselect

Actual count(Roulette Wheel0

1 01101 13 169 .14 .58 1

2 11000 24 576 .49 1.97 2

3 01000 08 64 .06 0.24 0

4 10011 19 361 0.31 1.24 1

Sum 1170 1.00 4 4.0

Average 293 0.25 1.00 1.0

Maximum 576 .49 1.97 2

Page 14: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

CrossoverMating Pool after Reproduction(Cross Site shown)

Mate Crossover

New population

x F(x)

0110|12 4 0 1 1 0 0 12 144

1100|01 4 1 1 0 0 1 25 625

11|0004 2 1 1 0 1 1 27 729

10|0113 2 1 0 0 0 0 16 256

Sum 1754

Average 439

Maximum 729

Probability of mutation in this test is 0.001. With 20 transferred bit positions we should expect 20*0.001=0.02

Page 15: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Seeking similarities among strings in population

Causal relationships between similarities and high fitness

How does the directed search guide for improvement?

Page 16: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

17

Evolution in the real world Each cell of a living thing contains chromosomes -

strings of DNA Each chromosome contains a set of genes - blocks of DNA Each gene determines some aspect of the organism (like

eye colour) A collection of genes is sometimes called a genotype A collection of aspects (like eye colour) is sometimes

called a phenotype Reproduction involves recombination of genes from

parents and then small amounts of mutation (errors) in copying

The fitness of an organism is how much it can reproduce before it dies

Evolution based on “survival of the fittest”

Page 17: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Basic Idea Of Principle Of Natural Selection

“Select The Best, Discard The Rest”

Page 18: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

AlgorithmGenerate Initial Populationdo Calculate the Fitness of each member do { Select Parents from current population Perform Crossover add offspring to the new population Merge new population into the current population Mutate current population till result

is obtained }

Page 19: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Population

Chromosomes could be:

Bit strings (0101 ... 1100)

Real numbers (43.2 -33.1 ... 0.0 89.2)

Permutations of element (E11 E3 E7 ... E1 E15) Lists of rules (R1 R2 R3 ... R22 R23) ... any data structure ...

population

Page 20: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

AlgorithmGenerate Initial Populationdo Calculate the Fitness of each member do { Select Parents from current population Perform Crossover add offspring to the new population Merge new population into the current population Mutate current population till result

is obtained }

Page 21: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

AlgorithmGenerate Initial Populationdo Calculate the Fitness of each member do { Select Parents from current population Perform Crossover add offspring to the new population Merge new population into the current population Mutate current population till result

is obtained }

Page 22: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Fitness Function

A fitness function quantifies the optimality of a solution so that that particular solution may be ranked against all the other solutions.

A fitness value is assigned to each solution depending on how close it actually is to solving the problem.

Ideal fitness function correlates closely to goal + quickly computable.

Page 23: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

AlgorithmGenerate Initial Populationdo Calculate the Fitness of each member do { Select Parents from current population Perform Crossover add offspring to the new population Merge new population into the current population Mutate current population till result

is obtained }

Page 24: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

AlgorithmGenerate Initial Populationdo Calculate the Fitness of each member do { Select Parents from current population Perform Crossover add offspring to the new population Merge new population into the current population Mutate current population till result

is obtained }

Page 25: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Crossover

Mimics biological recombination

Some portion of genetic material is swapped between chromosomes

Typically the swapping produces an offspring

Page 26: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

CROSSOVER

(1 2 9 3 0 7 ) (1 2 9 7 9 5)

(4 6 1 7 9 5 )

(1 2 9 3 0 7 )( 4 6 1 7 9 5)

(4 6 1 7 9 5 )

Page 27: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

AlgorithmGenerate Initial Populationdo Calculate the Fitness of each member do { Select Parents from current population Perform Crossover add offspring to the new population Merge new population into the current population Mutate current population till result

is obtained }

Page 28: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

AlgorithmGenerate Initial Populationdo Calculate the Fitness of each member do { Select Parents from current population Perform Crossover add offspring to the new population Merge new population into the current population Mutate current population till result

is obtained }

Page 29: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Mutation

Selects a random locus – gene location – with some probability and alters the allele at that locus

The intuitive mechanism for the preservation of variety in the population

Page 30: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Mutation: Local Modification

Before: (1 0 1 1 0 1 1 0)After: (0 1 1 0 0 1 1 0)

Before: (1.38 -69.4 326.44 0.1)After: (1.38 -67.5 326.44 0.1)

Page 31: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

The ProblemThe Traveling Salesman Problem is defined as: Given: 1) A set of cities 2) Symmetric distance matrix that indicates the cost of

travel from each city to every other city.

Goal: 1) Find the shortest circular tour, visiting every city

exactly once. 2) Minimize the total travel cost, which includes the

cost of traveling from the last city back to the first city’.

Page 32: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Traveling Salesperson Problem

Page 33: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

34

Encoding

Represent every city with an integer .

Consider 6 Indian cities – Mumbai, Nagpur , Calcutta, Delhi, Bangalore

and Pune assign a number to each.

Mumbai 1Nagpur 2Calcutta 3Delhi 4Bangalore 5Pune 6

Page 34: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

35

Encoding

Thus a path would be represented as a sequence of integers from 1 to 6.

The path [1 2 3 4 5 6] represents a path from

Mumbai to Nagpur - Nagpur to Calcutta - Calcutta to Delhi - Delhi to Bangalore - Bangalore to Pune and pune to Mumbai.

Page 35: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Fitness Function

The fitness function will be the total cost of the tour represented by each chromosome.

This can be calculated as the sum of the distances traversed in each travel segment.

The Lesser The Sum, The Fitter The Solution Represented By That Chromosome.

Page 36: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

1 2 3 4 5 6

1 0 863 1987 1407 998 163

2 863 0 1124 1012 1049 620

3 1987 1124 0 1461 1881 1844

4 1407 1012 1461 0 2061 1437

5 998 1049 1881 2061 0 841

6 163 620 1844 1437 841 0

Distance/Cost Matrix For TSP

Page 37: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Fitness Function (contd.)

So, for a chromosome [4 1 3 2 5 6 ], the total cost of travel or fitness will be calculated as shown below

Fitness = 1407 + 1987 + 1124 + 1049 + 841 = 6408 kms.

Since our objective is to Minimize the distance, the lesser the total distance, the fitter the solution.

Page 38: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Initial Population for TSP

(5,3,4,6,2) (2,4,6,3,5) (4,3,6,5,2)

(2,3,4,6,5) (4,3,6,2,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

Page 39: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Select Parents

(5,3,4,6,2) (2,4,6,3,5) (4,3,6,5,2)

(2,3,4,6,5) (4,3,6,2,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

Try to pick the better ones.

Page 40: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Create Off-Spring – 1 point

(5,3,4,6,2) (2,4,6,3,5) (4,3,6,5,2)

(2,3,4,6,5) (4,3,6,2,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

(3,4,5,6,2)

Page 41: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

(3,4,5,6,2)

Create More Offspring

(5,3,4,6,2) (2,4,6,3,5) (4,3,6,5,2)

(2,3,4,6,5) (4,3,6,2,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

(5,4,2,6,3)

Page 42: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

(3,4,5,6,2) (5,4,2,6,3)

Mutate

(5,3,4,6,2) (2,4,6,3,5) (4,3,6,5,2)

(2,3,4,6,5) (4,3,6,2,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

Page 43: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Mutate

(5,3,4,6,2) (2,4,6,3,5) (4,3,6,5,2)

(2,3,4,6,5) (2,3,6,4,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

(3,4,5,6,2) (5,4,2,6,3)

Page 44: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Eliminate

(5,3,4,6,2) (2,4,6,3,5) (4,3,6,5,2)

(2,3,4,6,5) (2,3,6,4,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

Tend to kill off the worst ones.

(3,4,5,6,2) (5,4,2,6,3)

Page 45: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Integrate

(5,3,4,6,2) (2,4,6,3,5)

(2,3,6,4,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

(3,4,5,6,2)

(5,4,2,6,3)

Page 46: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

Restart

(5,3,4,6,2) (2,4,6,3,5)

(2,3,6,4,5) (3,4,5,2,6)

(3,5,4,6,2) (4,5,3,6,2) (5,4,2,3,6)

(4,6,3,2,5) (3,4,2,6,5) (3,6,5,1,4)

(3,4,5,6,2)

(5,4,2,6,3)

Page 47: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

When to Use a GA Alternate solutions are too slow or overly

complicated Need an exploratory tool to examine new

approaches Problem is similar to one that has already

been successfully solved by using a GA Want to hybridize with an existing solution Benefits of the GA technology meet key

problem requirements

Page 48: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

49

SUMMARY

Genetic Algorithms (GAs) implement optimization strategies based on simulation of the natural law of evolution of a species by natural selection

The basic GA Operators are:EncodingRecombinationCrossoverMutation

GAs have been applied to a variety of function optimization problems, and have been shown to be highly effective in searching a large, poorly defined search space

Page 49: Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman

THANK YOU