If you've let our little experiment run for a while, you've probably noticed that:
The behavior of the boids, which looks random when a world begins, looks different
after a few minutes. More interestingly, the boids develop very similar behavior in every
successive world! Personally, their behavior reminds me of birds flocking.
In every world, the average age of living boids increases over time.
The average genome doesn't stay the same, and the final values of certain genes, especially genes
3 and 4, tend to be the same in every world.
Conclusions
Let's remind ourselves of our three hypotheses:
the phenotype (visible movement) of the boids will change over time
the average fitness of the boid population will increase over time
the average genotype of the boid population will approach the most fit genotype, over time
What does the boid experiment say about our hypotheses? The conclusions are yours to draw,
but I'll leave you with a few of my own thoughts.
Visible Behavior
Our first hypothesis involved observing the boids to see if their behavior changed over time.
"Changed" is a very qualitative measure, but some qualitative measures are very powerful and
intuitive for us humans. For example, you probably don't need a microscope to tell if something
is alive or not. You can just tell somehow. How would you describe the boids' behavior,
at the beginning of each world and at the end?
Measuring Fitness
In the boid-world, boid parents are chosen randomly amongst living boids. Therefore,
The only way for a boid to increase its number of offspring is to stay alive for as
long as possible, to increase the number of times it is chosen! So, the average age
of living boids might be a good measure of the boids' average fitness.
The Fittest Boid Genotype
I don't know of a way to figure out what the fittest boid genotype is, even though
I might have some intuition about it. What do you think? Even if we don't know what
the fittest genotype is, if different boid worlds seem to be heading to the same
genotype, and the average fitness in all of those worlds is increasing, what can
we conclude?
Repeatability
There is a lot of randomness in the boid-world: random starting configuration, random
selection of parents, crossover, and mutation. Is it surprising that the boid-world
consistently develops in the same way? If the development of many separate boid worlds
is the same, does that give us more confidence that our observations are valid?
If it walks like a duck...
We've taken a small journey exploring the idea of natural selection, and how it might
relate to living things on earth. I hope you've enjoyed it--I certainly did. If the way
the boids behaved seems at all lifelike to you, I think it's interesting to ask the question:
"What does it mean for something to be alive?"
If natural selection is at work amongst the living things on this planet,
and you saw natural selection work on the boids, what is the difference between boids and
the things that we usually call "living?" Certainly DNA-based life is more complex, but
is that what matters? The boids changed over time to become more fit in their environment,
and complex behavior emerged from chaotic behavior. Might that be what life is about?
As the saying goes, "if it walks like a duck, swims like a duck, and quacks like a duck,
call it a duck."
Further Investigation
This project is entirely on GitHub.
Suggestions, questions, comments, and contributions are welcome.
Craig Reynold's original
paper on programing flocking behavior
Harry Brundage's blog
post on pre-programmed flocking behavior.
Artficial
Life by Steven Levy, an excellent book which sparked my interest this area to begin with.
Probably Approximately Correct, a recent book about our modern mathematical and computational
understanding of learning and evolution, written by Leslie Valiant, who somewhat invented the field.
Richard Dawkins' The
Ancestor's Tale, the authoritative story from the natural selection perspective of evolution.