Evolution & Genetic Algorithms Lamarckian Evolution

advertisement
Evolution & Genetic
Algorithms
Lamarckian Evolution

Lamarckian Theory



Based on the concept of use and disuse
Over a few generations, a given structure or
organ will increase in size if the creature and its
parents use that structure often.
On the other hand, if a structure and organ is in
disuse it will get smaller and even disappear in
subsequent generations.
An Example of Lamarckian
Evolution


A Giraffe has a long neck because its
ancestors used its neck to reach food.
Based on Lamarck’s theory, the Giraffe of the
future will have an even longer neck than its
contemporary relatives.
Darwinian Evolution…




All animals are constantly changing and
evolving
The primary goal of an animal is to mate and
have as many offspring as possible
Concept of natural/sexual selection
Natural selection, development, and
evolution requires time
Darwin’s Evolution…

A creatures survivability is not the result of
divine intervention or due to a desire to seek
perfection.

It is through the process of natural selection that
creatures evolve into what they are now.
Biological Evolution…





Evolution refers to the cumulative changes
that occur in a population
Biological evolution is not a random process.
It is a constantly occurring phenomenon
Genes are the key components in the
process of evolution.
Any physical characteristics acquired during
the organisms life are not transferred to their
Biological Evolution And
Genetic Algorithms


Biological Evolution is the inspiration for
genetic algorithms
Most of the principles associated with
biological evolution also apply to genetic
algorithms

Unlike evolution, genetic algorithms will stop after
a finite number of gnerations
What Are Genetic Algorithms



They are essentially search algorithms
Given a large search space, GA’s will evolve
to the correct solution to a problem over a
series of generations.
GA’s do not guarantee an optimal solution to
a problem
ie. Traveling salesman problem
What are Genetic Algorithms
continued…

Genetic Algorithms are useful at finding
“acceptably good solutions… acceptably
quickly”

Nevertheless, if an optimized strategy already
exists for a given problem, it is best to use it
rather than a GA.
Components of a Genetic
Algorithm

The population of potential solutions

A fitness function

A process for selecting mating pairs and
introducing their offspring into the original
population
Coding a Genetic Aglorithm


First consider the parameters of the problem
Use binary numbers to represent each
parameter


Other’s have suggested using a user defined
language to encode the problem
Once the parameters are established,
generate a random initial population
Fitness Fuction




It is analogous to the environment an animal
lives in
Gives a numerical description of how fit the
solution encoded in a particular chromosome
is.
Penalty Functions
Approximate Function evaluation
Issues With Fitness Functions

Premature convergence




When a super fit (although not optimal) chromosome
dominates the population
This chromosome usually represents a local maximum
Makes it impossible to use fitness alone as an indicator of
reproductive potential
Slow finishing

When the populations have a high average fitness and
don’t have the extra oomph to push further and find a
maximum
Selecting a Mate:

Parents Selection Techniques:

Explicit fitness remapping




Fitness scaling
Fitness windowing
Fitness ranking
Implicit fitness remapping

Use tournaments to choose parents
Crossover Reproduction

1-point crossover:

Two mating chromosomes are cut at one point
and the cuts are exchanged between the two
parents.
Cross Over Reproduction…

2-point crossover:



Instead of a linear string, think of the chromosome
as a loop formed by joining both ends.
To mate, just cut a section in both parent loops
and exchange missing sections
Is preferred over 1-point crossover because it
allows one to search the problem space more
thoroughly
Crossover Reproduction…

Uniform crossover:


A randomly generated cross over mask is created
for each pair of parents.
Based on the mask, the parents copy their genes
to create new offspring.


Where there is a 1, parent 1 copies its gene
Where there is a 0, parent 2 copies its gene
Introducing Offspring Into the
Population

In most genetic algorithm examples, the
whole population is replaced with the
offspring


The generation gap is 1
In the insect world, parents die soon after the
eggs are laid
Introducing Offspring Into the
Population

Steady-state



Inspired by mammals and other long lived
creatures.
The offspring must compete with themselves and
with their parents
The steady-state technique require that an
unlucky group of parents must die off to make
room for the offspring
Steady-State case…

Possible methods for choosing which parents
will meet their demise:



Select parents according to fitness, and select
random offspring to replace them.
Select parents at random, and use fitness to
choose offspring.
Select both according to their fitness
Applications for Genetic
Algorithms

Various medical applications, such as image
segmentation and modeling.
Robotic Applications…


Genetic Algorithms can be used to teach
robots how to move.
Brandeis University made a robot mother
who created offspring using genetic
algorithms

One of her offspring is shown in the picture
Download