Você está na página 1de 23

Introduction to Evolutionary

Computation
ALGORITHMS INSPIRED FROM DARWIN’S THEORY OF EVOLUTION

1
Generic Evolutionary Algorithm
The evolutionary search process is influenced by the following components of EA:
 an encoding of solutions to the problem as a chromosome;
 a function to evaluate the fitness, or survival strength of individuals;
 initialization of the initial population;
 selection operators; and
 reproduction operators

2
Generic Evolutionary Algorithm

3
Evolutionary Computation Paradigms
The different ways in which the EA components are implemented result in different EC paradigms
 Genetic algorithms (GAs), which model genetic evolution.
 Genetic programming (GP), which is based on genetic algorithms, but individuals are
programs (represented as trees).
darvin’s theory of evolution
 Evolutionary programming (EP), which is derived from the simulation of adaptive behavior in
evolution (i.e. phenotypic evolution).
 Evolution strategies (ESs), which are geared toward modeling the strategic parameters that
control variation in evolution, i.e. the evolution of evolution.

4
Evolutionary Computation Paradigms
 Differential evolution (DE), which is similar to genetic algorithms, differing in the
reproduction mechanism used.
 Cultural evolution (CE), which models the evolution of culture of a population and how the
culture influences the genetic and phenotypic evolution of individuals.
 Co-evolution (CoE), where initially “dumb” individuals evolve through cooperation, or in
competition with one another, acquiring the necessary characteristics to survive.

5
Representation – The Chromosome
 Each individual represents a candidate solution to an optimization problem
 The characteristics of an individual is represented by a chromosome also called as genome
 Each variable that needs to be optimized is referred to as a gene, the smallest unit of
information
 An assignment of a value from the allowed domain of the corresponding variable is referred
to as an allele

6
Representation – The Chromosome
Characteristics of an individual can be divided into two classes of evolutionary information:
genotypes and phenotypes.
 A genotype describes the genetic composition of an individual, as inherited from its parents;
it represents which allele the individual possesses.
 A phenotype is the expressed behavioral traits of an individual in a specific environment; it
defines what an individual looks like.
Complex relationships exist between the genotype and phenotype

7
Initial Population
 Evolutionary algorithms are stochastic, population-based search algorithms.
 Each EA maintains a population of candidate solutions.
 The first step in applying an EA to solve an optimization problem is to generate an initial
population.
 The standard way of generating an initial population is to assign a random value from the
allowed domain to each of the genes of each chromosome.
 The goal of random selection is to ensure that the initial population is a uniform
representation of the entire search space.

8
Initial Population
 Large numbers of individuals increase diversity, thereby improving the exploration
abilities of the population.
 Larger population size increase the computational complexity per generation.
 With larger population size, it may be the case that fewer generations are needed to
locate an acceptable solution.
 A small population, represents a small part of the search space.
 While the time complexity per generation is low, the EA may need more generations
to converge.

9
Fitness Function
 To determine the ability of an individual of an EA to survive, a mathematical function is used
to quantify how good the solution represented by a chromosome is.
 The fitness function, f, maps a chromosome representation into a scalar value:
𝑓: Γ 𝑛𝑥 ՜ ℝ

 where Γ represents the data type of the elements of an 𝑛𝑥 -dimensional chromosome


 The fitness function represents the objective function, Ψ, which describes the optimization
problem

10
Crossover
 There are three main classes of crossover operators:
◦ Unary: where an offspring is generated from one parent.
◦ Binary: where two parents are used to produce one or two offspring.
◦ Multi-parent: where more than two parents are used to produce one or more offspring.

 It is not certain that selected parents will mate.


 Recombination is applied probabilistically.
 Each pair (or group) of parents have a probability, 𝑝𝑐 , of producing offspring.
 Usually, a high crossover probability is used.

11
Crossover
In selection of parents, the following issues need to be considered:
 It may happen that the same individual is selected as both parents. The parent selection
process should therefore incorporate a test to prevent such operations.
 It is also possible that the same individual takes part in more than one application of the
crossover operator. This becomes a problem when fitness-proportional selection schemes are
used.

12
One-point
crossover
A one-point crossover operator
was developed that randomly
selects a crossover point, and
the bitstrings after that point
are swapped between the two
parents.

13
Two-point
crossover
two bit positions are randomly
selected, and the bitstrings
between these points are
swapped

14
Uniform
crossover
The nx-dimensional mask is
created randomly.
Here, px is the bit-swapping
probability.

15
Linear Crossover

• Given the two parents 𝑥1 and 𝑥2 , create


three solutions
• 0.5𝑥1 + 0.5𝑥2
• 1.5𝑥1 − 0.5𝑥2 , and
• −0.5𝑥1 + 1.5𝑥2
• Choose two best solutions among the
five solutions and they become the
children

16
Blend Crossover (BLX-𝛼)

• A new child is created as


𝑥𝑖𝑗 (𝑡) = (1 − 𝛾𝑗 )𝑥1𝑗 (𝑡) + 𝛾𝑗 𝑥2𝑗 (𝑡)
with 𝛾𝑗 = 1 + 2𝛼 𝑅𝑎𝑛𝑑(0, 1) − 𝛼

• The BLX-α operator randomly picks, for each component, a random value in the range
[𝑥1𝑗 (𝑡) − 𝛼(𝑥2𝑗 (𝑡) − 𝑥1𝑗 (𝑡)), 𝑥2𝑗 (𝑡) + 𝛼(𝑥2𝑗 (𝑡) − 𝑥1𝑗 (𝑡))]

17
Simulated Binary Crossover (SBX)
 Two parents, 𝑥1 𝑡 and 𝑥2 (𝑡) are used to produce two offspring, where for 𝑗 = 1, . . . , 𝑛𝑥
𝑥෤1𝑗 (𝑡) = 0.5[(1 + 𝛾𝑗 )𝑥1𝑗 (𝑡) + (1 − 𝛾𝑗 )𝑥2𝑗 (𝑡)]

𝑥෤2𝑗 (𝑡) = 0.5[(1 − 𝛾𝑗 )𝑥1𝑗 (𝑡) + (1 + 𝛾𝑗 )𝑥2𝑗 (𝑡)]


 Where,
1
2𝑟𝑗 𝜂+1 𝑖𝑓𝑟𝑗 ≤ 0.5
1
1 𝜂+1
𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
2 1 − 𝑟𝑗
 Where 𝑟𝑗 = 𝑅𝑎𝑛𝑑(0, 1), and 𝜂 > 0 is the distribution index.
 Deb and Agrawal suggested that 𝜂 = 1

18
Simulated
Binary
Crossover
(SBX)

• Large 𝜂 tends to generate children closer to the


parents
• Small 𝜂 allows the children to be far from the parents

19
Mutation
 The aim of mutation is to introduce new genetic material into an
existing individual; i.e., to add diversity to the genetic
characteristics of the population.
 Mutation is applied at a certain probability, 𝑝𝑚 , to each gene of the
offspring, 𝑥෤𝑖 (𝑡), to produce the mutated offspring, 𝑥𝑖 (𝑡).
 The mutation probability, is usually a small value, 𝑝𝑚 ∈ [0,1], to
ensure that good solutions are not distorted too much.

20
Random Mutation
 Random mutation generates a solution randomly within the entire
parameter range

 Generated solution has no relationship to the original solution

21
Non-Uniform Mutation
 Non-uniform mutation is expressed as:
𝑏
1−𝑡ൗ𝑡
𝑥𝑖 𝑡 = 𝑥෤𝑖 𝑡 + τ 𝑥𝑚𝑎𝑥 − 𝑥𝑚𝑖𝑛 1−𝑟 𝑚𝑎𝑥

 𝜏 takes -1 or 1, each with a probability of 0.5


 𝑟 is a random number in [0, 1]
 𝑡𝑚𝑎𝑥 is the maximum number of generations
 𝑡 is the current generation number
 𝑏 is the design parameter

22
Non-Uniform Mutation
 Mutated solution is more likely to be close to the original solution
 As the generation number increases, mutated solutions are
generated closer to the original solution
 Illegal mutated gene values are adjusted to make them feasible,
that is, within the allowed range

23

Você também pode gostar