Thursday, September 25, 2008

Evolutionary Computing

There is a problem in the way we understand the theory of evolution. It has lead to much confusion and debate and therefore I must clarify something that has been on my mind for a while. In my post 'More Evolution', I challenged anyone to find me one example of evolution being useful in computer science.

Now, Mike kindly offered an example, and I think I shot him down a bit too quickly (Sorry man). My mistake was that of understanding - I think a lot of things filed under evolution are useful, however, the molecules to man kind of evolution is what I oppose.

While I can write a computer program to simulate many aspects of evolution, things like weasel actually prove what I was trying to say. The weasel program manipulates an already existing set of data into another set, until a desired point is reached. The problem is, how does one determine what is desired without an external force guiding this process?

Applying weasel to humans is no easy challenge - I imagine. In the DNA sequence are several letters, changing one of them would be catastrophic in a human, so that cannot be the level of change - what I still lack is knowing the level at which humans are 'evolving.' Is it on the single cell level? How can that be measured? It seems the smaller one goes the more impact the change has on the entire being. In addition there is no means by which to add information. Of course in the weasel sense, and more so in the case of DNA.

So going back to computer evolution - is it possible? Only when we think of evolution as small controlled changes within a system, with set rules and a distinctive goal driven process. If there is to be added information, it cannot be generated by the system, since it would entail an underlying system change (ad infinitum). The system would have to be externally modified.

I would say that the problem here is the term evolution, while it isn't bad in itself, there are definitely theological aspects being intermingled in there. That is undeniable. I apologize for not being clearer on that. Also part of the problem is that this term evolution covers a wide variety of topics, many of which are true. But just because something has been given a name which includes many truths, does not make it true. It makes it suspect.


streetCat said...

The "external guiding force" in the case of our physical world is our environment/nature/resources/other species. Through competition with other species and even within a species over resources and exploitation of the environment, natural selection occurs. An "external guiding force" (in the sense of a creator) is not necessary for evolution to work, although it is usually practical for evolutionary computing (in the form of a fitness function or artificial selection). The Weasel example is analogous to Evolution with an intelligent designer guiding the process. However, a more open-ended Artificial Life simulation with a genetic algorithm and without an explicit fitness function would be closer to pure evolution, although it may not produce any useful organisms since their evolution is not guided towards any specific goal! (I'm actually working on one right now :)). On the other hand, through interaction with humans, these virtual organisms may eventually prove useful to us. And at that point we may have to consider whether or not they deserve the same rights to life as us.

Quintin said...

Thanks... I seem to attract more evolutionists than Christians to this blog.

Unfortunately I still fail when it comes to the level at which organisms are changed - with a computer program it's easy because we can define that level, but for living creatures it's a whole other ball-game.

I'd like to hear more about the program you are writing - sounds interesting, but I'm obviously from a six-day creationist camp.

"it may not produce any useful organisms"

I do not wish this blog to turn into an evolution / creation debate only, its intention is slightly different. However this is a point I will be examining in the future, but I first want to do a different study.

Thanks for the comment!

streetCat said...

Simulating the level of complexity of physical systems out of which Earthly life arises would be very slow on today's machines. Our models must be simplified because of that and also so that our simulation of evolution runs faster, so that we can witness evolution without having to wait 10,000,000 years or so.

But computers do have some advantages over physical systems. Such as it's logical nature (0s and 1s), which is great for people who want to evolve intelligence.

I believe creating an extremely open ended evolutionary simulation is not hard. It's just not practical yet given todays' computing power.

The simulation I'm designing right now is one with three species, one producer (apples), one consumer (mice), and one predator (snakes). The purpose is to see what strategies these species evolve in response to each others' own evolutionary advancements. I do not know what the end result will be, but I'm interested to see the interplay that happens.

Quintin said...

I would love to hear the results when it is finished! Sounds really great.

Where do you study? What level?

streetCat said...

I studied at UC Irvine. Undergrad. I just started working, so this project is for myself in my own free time. Hopefully it will get completed :)