Uncommon Descent Serving The Intelligent Design Community

The “quine dilemma” of evolution

Share
Facebook
Twitter
LinkedIn
Flipboard
Print
Email

Sorry if this post is a bit for computer programmers, anyway I trust that also the others can grasp the overall picture.

Evolutionists claim that what it takes to evolution to work is simply “a populations of replicators, random variations on them, and a competition for survival or resources”.
Today we will try to partially layout how to simulate on computer such process. First off, we need the replicators, i.e. digital programs able to self-reproduce. In informatics jargon, a computer program able to self-reproduce, i.e. to produce as output a copy of its source code is called a “quine”. Therefore in a sense a quine is a little, minimal digital “bio-cell”. You can write the code of a quine in any programming language. Also with the same language you can do that in various ways. Here I will examine a quine written in Perl language by Tushar Samant, it is but one of many examples.

Its source code is the following:

$a=’X‘; print map “\$a=’$a’; $_, q($_)”, q(print map “\$a=’$a’;$_, q($_)”)

If you have Perl installed on your computer you can easily verify that if you run this script, it prints itself on the screen. Eventually if you redirect the output to a file, such file will be a perfect copy of its generator file.

Von Neumann mathematically proved that a self-reproducing automaton must contain a symbolic description or representation of itself and a constructor (see my previous post). Also our quine contains a symbolic description of itself (the code on the right, the quoted “q(print map…)”), while the code on the left (the first “print map”) is the operation on the description (the constructor), to output the whole quine. Some say that, this way, the quine necessarily works somehow in “auto-referential” mode. (About “quines”, self-reference, automata, meta-languages and artificial intelligence I suggest reading the book by Douglas Hofstadter, “Gödel, Escher, Bach”, 1979.)

Why in the source code I have highlighted in blue color a “neutral” zone, in red color a “critical zone”? This distinction holds not only for this quine, rather for almost all quines (and in a sense even for almost all computer programs or any system in general). Random variations in the red zone destroy the self-reproducing function. Differently, most variations in the neutral zone don’t cause malfunctioning. If, for example, we change the value of the $a variable from “X” to, say, “fb_M+hF6.oia7-jj” we get a bigger script, but it continues to self-replicate.

Now, let’s imagine that we want to develop a small evolution simulator on our computer. We could set an initial number of those quines and make them self-reproduce to obtain a growing population. Eventually we could apply random variations, generation by generation, on their neutral zones. Then we have to write in our evolution simulator a “fitness function” working in this somewhat digital environment. A first simple idea could be to establish that only the bigger quines survive. However such evolution simulation would be very poor. In fact, the variations inside the digital organisms would be trivial, sure no new organization arises. Moreover the fitness function is poorly specified, because what matters is only the quantitative size of the quines, how much they are “fat” so to speak. Certainly no really different organism arise.

Therefore, if we want to test the above evolutionist claim, we could imagine a more complicated fitness function, based on the concept of predation, just a suggestion. The organisms that are somehow able to “eat” parts of other organisms are more fit to survive. They are the “predators”, while the organisms eaten are the “victims”, who necessarily die. This would be similar to what happens in nature per Darwinian selection. Also we could think of a selection based on a competition for resources.

At this point the question is: what variations are necessary to transform our initial quines into evolved predators or resource seekers? No random variation can produce such increase in organization, because, as seen above, almost all random variations in the red zone are fatal and the variations on the blue zone are neutral. However to transform our quines in predators or resource seekers is not impossible. But one has to increase the organization of the critical zone in substantial manner. New source code has to be written in the red zone. Changes in the blue zone are useless. The predation macro function needs sub-functions: movement, enemy detection, fight… Analogously, the resource seeker function needs: movement, resource detection, import of resources…

To keep our discourse simple, as an example, I modified the initial quine with a simple, very rudimental, movement sub-function (which serves to both the higher functions): now the replicator can perform a random walk on a grid with steps of 1 unit in 8 different directions. To do that I used the $p variable to store the X/Y information (where the replicator stays on the grid at a given time). The result could be something like this:

$a=’X‘;$p=q(500_500);$e=q(($x, $y) = split /_/, $p;$x+=int(rand(2))*(-1)**int(rand(2)); $y+=int(rand(2))*(-1)**int(rand(2));$p =~ s/\d+_\d+/${x}_${y}/;);eval $e;print map “\$a=’$a’; \$p=’$p’; \$e=’$e’; eval ‘$e’;$_, q($_)”, q(print map ” \$a=’$a’;\$p=’$p’;\$e=’$e’; eval ‘$e’; $_, q($_)”)

With this modification the automaton continues to be able to self-replicate, and — if introduced in a suitable evolution program simulator (which I have not programmed thus far) — it moves on a grid. Notice however that both the constructor and the symbolic description are changed.

All that leads us directly to what I call the “quine dilemma” of unguided evolution. If random variations are harmless or neutral (blue zone) they create no new organization. If evolution has to create complex functional novelties, new organization, it must operate in the red zone and necessarily become potentially destructive. To speak of “dilemma” here is euphemistic. This dilemma is worse than Hamletic, because de facto is a show-stopper for evolution. The quine dilemma holds in computer programming, as in biology. In fact, in the lab you can crash the cellular replication by introducing random variations in a cell. Needless to say, this dilemma has a lot to do with the experimental fact that unicellulars grown in the lab haven’t yet evolved in … frogs or butterflies (e.g. Lenski’s work).

I like to cite Larry Wall, the computer scientist who invented Perl, who sums it up best: “The potential for greater good goes right along with the potential for greater evil”. Larry said that in the context of software development, but mutatis mutandis it holds also in general, biology included. In short, no power without risk.

I said “biology included” because the objection by evolutionists might be that in biological replicators there is no “quine” problem, because the information for new organization (which random variation applies on) is decoupled from the information for construction. This claim is fully illogical because the information for new organization is the information for construction, what else. An organism is constructed according to assembly instructions. If you want a different organism you have to modify them. No decoupling is possible between instructions and organism because the latter is the direct product (bit by bit) of the former. No decoupling is possible between cause and effect.

To sum up, the initial claim that evolution needs only “a populations of replicators, random variations on them and a competition” is only an hope, because just in simple replicators it crashes against basic conceptual obstacles, one of which is indeed the “quine” dilemma.

Comments
Petrushka #19 If ameba has to evolve to man something has to change, robustness or non-robustness. You claim robustness (=fixity) contra ID computer simulation and in the same time you need much variation (=non-fixity) to produce evolution. You cannot have both ways.niwrad
January 26, 2015
January
01
Jan
26
26
2015
12:49 PM
12
12
49
PM
PDT
In other words, you’re saying that evolution requires a lot more complexity to work properly than we thought. How does that help Darwinism?
It makes evolution possible. This has been known for a long time, but it has only recently been possible to manufacture molecules to order at a cost that allows testing this hypothesis. Does complexity harm the evolutionary hypothesis? Not at all. For one thing, microbes do not have to invent everything by themselves. They exchange genes rather promiscuously. Anything new and useful spreads. Does it make origin of life a difficult problem? Yes. but we already knew that.Petrushka
January 26, 2015
January
01
Jan
26
26
2015
12:31 PM
12
12
31
PM
PDT
Programs are good analogies of biological developments. You cannot deny the development of any organism is a programmed construction, a task governed by instructions (like computer programs).
Programs are a terrible analogy if they are not robust in the face of mutation. If you cannot make small changes to program code without changing the output of the program, you are not modeling chemistry. Not every change needs to be silent, but some silent changes must exist. To model biochemistry, you must be able to walk a program stepwise -- without changing its function -- to an equivalent program with little of the original code. This can be done with genes, so if you are modelling genetics, your programming environment must incorporate this robustness.Petrushka
January 26, 2015
January
01
Jan
26
26
2015
12:25 PM
12
12
25
PM
PDT
Petrushka:
When you can write a computer program that can not only replicate itself, but can tolerate mutation (can have silent mutations) and which exists in an environment in which silent mutations can be chained so that a chain of equivalent programs can exist leading to an equivalent program with none of the original code — then you will have a passable model of chemistry.
Interesting. In other words, you're saying that evolution requires a lot more complexity to work properly than we thought. How does that help Darwinism? Where did this complexity come from? How did it evolve? And here I was thinking that Darwinian evolution goes from the simple to the complex when, all along, things have to be complex to start with. How did this pile of blatant, in-your-face superstitions find its way into science? Inquiring minds and all that.Mapou
January 26, 2015
January
01
Jan
26
26
2015
12:09 PM
12
12
09
PM
PDT
Petrushka #16 "The fact that genomes are robust and computer programs are not robust means that programs are not good analogies to genomes." Programs are good analogies of biological developments. You cannot deny the development of any organism is a programmed construction, a task governed by instructions (like computer programs). The relative robustness of genomes is an intelligent design feature. In a sense robustness of genomes disagrees with unguided evolution. In fact, evolution needs variations, if genomes resist variations then they oppose evolution.niwrad
January 26, 2015
January
01
Jan
26
26
2015
12:09 PM
12
12
09
PM
PDT
You can't disprove evolution by writing an incompetent computer program. You can model some of the mathematical features of evolution on computer, but you cannot yet model the chemistry involved. The fact that genomes are robust and computer programs are not robust means that programs are not good analogies to genomes. Edit to add: When you can write a computer program that can not only replicate itself, but can tolerate mutation (can have silent mutations) and which exists in an environment in which silent mutations can be chained so that a chain of equivalent programs can exist leading to an equivalent program with none of the original code -- then you will have a passable model of chemistry.Petrushka
January 26, 2015
January
01
Jan
26
26
2015
11:28 AM
11
11
28
AM
PDT
Nirward, I'm not sure if you are equivocating on the meaning of "many" or are just throwing out chaff. Just to be clear. When I said "many mutations" I mean a substantial proportion of spontaneously arising mutations have a "bad" effect. There is nothing in that fact to suggest evolution is impossible.wd400
January 26, 2015
January
01
Jan
26
26
2015
11:18 AM
11
11
18
AM
PDT
…many mutations had the effect to morph ameba into man.
That is not something a biologist would claim.Petrushka
January 26, 2015
January
01
Jan
26
26
2015
11:17 AM
11
11
17
AM
PDT
Petrushka #12 "That is not something a biologist would claim." That is exactly what Darwinian biologists do claim, random mutations + natural selection => all-species.niwrad
January 26, 2015
January
01
Jan
26
26
2015
11:12 AM
11
11
12
AM
PDT
...many mutations had the effect to morph ameba into man.
That is not something a biologist would claim.Petrushka
January 26, 2015
January
01
Jan
26
26
2015
11:02 AM
11
11
02
AM
PDT
wd400 #10 "...many mutations have a bad effect." You deny evolution, many mutations had the effect to morph ameba into man.niwrad
January 26, 2015
January
01
Jan
26
26
2015
10:59 AM
10
10
59
AM
PDT
Evolutionary biologists simulate relevant parts of evolutionary theory through programs. Your example has no biology, and "proves" something everyone already knows: many mutations have a bad effect. That evolutionary biology still exists when everyone knows this suggest the "problem" is no a "show stopper". So, I'm left wondering what the point is, and what we learn from the program example that we can't learn from studying actual biology.wd400
January 26, 2015
January
01
Jan
26
26
2015
10:54 AM
10
10
54
AM
PDT
wd400 #8 "The computer program seems to be completely unnecessary." Evolutionists offer computer programs of evolution. That is good. IDers offer computer programs of non-evolution. That is bad. Heads you lose, tails I win...niwrad
January 26, 2015
January
01
Jan
26
26
2015
10:49 AM
10
10
49
AM
PDT
You think a program is like an organism? The computer program seems to be completely unnecessary. No one in the right mind thinks mutations can't be damaging, a poor analogy to biology doesn't get us any further.wd400
January 26, 2015
January
01
Jan
26
26
2015
10:34 AM
10
10
34
AM
PDT
wd400 #6 "I think you forgot to explain why this “problem” is a show-stopper, or indeed a problem at all?" Why it is a problem? Yourself can verify on your computer. Apply random variations on the quine, open its source code in a text editor, and type into it with your eyes closed. This way you simulate blind evolution. You will see the program crashes.niwrad
January 26, 2015
January
01
Jan
26
26
2015
10:29 AM
10
10
29
AM
PDT
All that leads us directly to what I call the “quine dilemma” of unguided evolution. If random variations are harmless or neutral (blue zone) they create no new organization. If evolution has to create complex functional novelties, new organization, it must operate in the red zone and necessarily become potentially destructive. To speak of “dilemma” here is euphemistic. This dilemma is worse than Hamletic, because de facto is a show-stopper for evolution.
I think you forgot to explain why this "problem" is a show-stopper, or indeed a problem at all?wd400
January 26, 2015
January
01
Jan
26
26
2015
09:33 AM
9
09
33
AM
PDT
"Today we will try to partially layout how to simulate on computer such process." Thanks for interesting beginning. Did you review papers and discussions at Evolutionary Informatics Lab at Baylor by Marks, Dembski, et al? Their review and discussion on Avida programs and simulation? If so, curious how you see this in comparison to Avida. Avida claims
The claim of the paper was to demonstrate "how complex functions can originate by random mutation and natural selection."
DATCG
January 26, 2015
January
01
Jan
26
26
2015
08:44 AM
8
08
44
AM
PDT
You seem to be conflating the model with the thing being modeled. A quine is a self-replicating program, not a simulated organism. Keep in mind that once you have a biological replicator, it entails the acquisition of the resources necessary for replication. It might be simple, such as an available pool of nucleotides, but the resources are necessarily limited, hence there is competition for those resources. Furthermore, in nature, there is a complex environment, as well as an intimate relationship between the structure of the replicator and the environment, which provides opportunities. A complete model of this would necessarily be extremely complex, indeed, intractable; so evolutionary algorithms use simplified environments. But even these can be quite complex. Arguing that providing a complex environment undermines the concept of an evolutionary algorithm is fallacious. Rather, the complexity of the environment and its relationship to the replicator is as much a given as is the ability to replicate.Zachriel
January 26, 2015
January
01
Jan
26
26
2015
06:43 AM
6
06
43
AM
PDT
Evolutionists claim that what it takes to evolution to work is simply “a populations of replicators, random variations on them, and a competition for survival or resources”.
Maybe some evolutionists claim that. To me, that looks too simplistic. I see a need for the biology, not just the replication. And, as I see it, change in the environment is what drives a lot of evolutionary change.
At this point the question is: what variations are necessary to transform our initial quines into evolved predators or resource seekers?
I see that as a mistake. You are wanting evolution to be directional, to evolve toward particular outcomes. But I see evolution as a population doing its best to survive in changing circumstances. Without environmental change, I don't expect to see a lot of evolutionary change.Neil Rickert
January 26, 2015
January
01
Jan
26
26
2015
06:03 AM
6
06
03
AM
PDT
If you have Perl installed on your computer you can easily verify that if you run this script, it prints itself on the screen. Eventually if you redirect the output to a file, such file will be a perfect copy of its generator file.
I think to parallel nature, your quine also needs to be running as a program simultaneously with all the other quines. Otherwise it's just an illustration of a snowflake. Which raises the question, what in nature is parallel to the application program running that allows for umpteen quines to run at once? Which raises another question what in nature parallels quines communicating with each other for the benefit of the whole and where did that protocol come from?awstar
January 26, 2015
January
01
Jan
26
26
2015
05:20 AM
5
05
20
AM
PDT
Thought provoking, on what is required to set up a self-sustaining, replicating body plan, starting with the very first.kairosfocus
January 26, 2015
January
01
Jan
26
26
2015
04:53 AM
4
04
53
AM
PDT
1 3 4 5

Leave a Reply