
www.Usenet.com
| <-- __Chronological__ --> | <-- __Thread__ --> |
Paul Victor Birke wrote:
>
> Quaternion wrote:
<snip>
> > The coding of GA's is actually amazingly simple
>
> Quoting my wife ==> >>easy for you to say !!<<
Paul, I believe you could code up your own GA software based on this
description which will shortly appear on our ANNEvolve website:
How Simulated Evolution Works
by M. Timin
November, 2003
1. There is a population of similar, but not identical, things.
2. Each one has a linear array of numbers that specify how it differs
from the
other members of the population. This array may be called a
chromosome.
3. There is a test that can be applied to every member of the
population, and
which yields a fitness value. This fitness value is a measure of how
each
individual compares with the others in achieving some goal.
4. The entire population is tested, and then a significant fraction of
them are chosen to be eliminated. The decision in each case is based on
the results of the fitness test. It might just consist of eliminating
the lower half of the population. More commonly there is random
elimination with the less fit individuals having a higher probability of
being eliminated.
5. There is mating, which consists of choosing pairs of surviving
individuals
to be parents. Usually, the more fit individuals have a higher
probability
of being chosen. Individuals may be parents more than once, and with
different partners.
6. There is reproduction, which consists of creating new individuals
to replace those that have been eliminated. These "offspring" are
formed by combining portions of the chromosomes of both parents. Two
new chromosomes are created which are different from both of the
parents, but contain long
segments of chromosome that are identical to homologous segment in
one
parent or the other. The total population is usually kept constant.
7. Steps 4, 5, and 6 are repeated indefinitely, perhaps thousands of
times.
The result is usually a dramatic increase in the fitness of the
population,
and of the most fit member of the population. This most fit member
will be
usually be the desired solution to the problem at hand. Each
repetition of
these steps is called a generation.
I suggest you just start trying to code this up yourself. You can ask
questions when you get stuck.
m
--
"Many are stubborn in pursuit of the path they have chosen, few in
pursuit of the goal." - Friedrich Nietzsche
http://annevolve.sourceforge.net is what I'm into nowadays.
Humans may write to me at this address: zenguy at telus dot net
| <-- __Chronological__ --> | <-- __Thread__ --> |