In Richard Dawkins’ book, The Blind Watchmaker, he proposed a famous (and infamous) computer program to demonstrate the power of cumulative selection, known as the “Weasel program.” The program demonstrates that by varying a single letter at a time, it is possible to rapidly evolve a coherent English sentence from a string of gibberish.
The way the program works is as follows:
First, a sequence of characters is randomly assembled by drawing from the 26 English letters and the space. Then, one character is randomly reassigned. The resulting sequence is compared to the phrase from Hamlet, a quote uttered by Polonius: “methinks it is like a weasel.” For every character that matches, a point is scored. If the new sequence has a higher score than the previous sequence, the new sequence is preserved, just like in evolution where the fitter animal survives while the less fit animal perishes. If the new sequence has a lower score, then the previous sequence is retained, and the process starts again from the random reassignment step. This process continues until the sequence exactly matches Polonius’ quote. The upshot is that for the 28 character sequence, instead of taking 27^28 queries to match the phrase, on average only 40 queries are needed. Dawkins has successfully reduced a combinatorial explosion to a manageable problem. Altogether, it is a decent illustration of Dawkins’ key point that selection must be incremental in order for evolution to have any hope of working, which is quite correct mathematically speaking.
Many have latched onto this program to defend (see here, here, and here) and debunk (see here and here) Darwinian evolution. On the other hand, Dawkins claims he only meant the program to show how natural selection can speed up evolution, and nothing further.
I think Dawkins’ program can indeed show something further, which is that natural selection can also make evolution impossible. What’s that again? That’s right: Dawkins’ weasel program shows natural selection prevents evolution from happening.
Let us see how this happens. The demonstration is quite simple. It begins with the observation that there is rarely only one right way to do things. Quite often there are at least two. For example, to fasten my shoes, I can either knot a shoelace or slap on some velcro. If I need an especially close bind between foot and sole, I can super glue the shoe to my foot. Herein lies another important observation. These various ways can often be quite different from each other. We see this in nature, with flight for instance. Birds fly using wings, and so do bats, but the bird wings are constructed very differently from the bats. Even more so with insect wings. And wings are not the only way to fly. Bacteria fly into the clouds after a burst of rain. Spider babies fly to their new homes using kites made of web that fly using advanced electropropellant technology. Other animals glide by even more extraordinary means, such as the flying snake that swims through the air with its undulating body.
Let us now return to the weasel program. The weasel program is trying to evolve the phrase from Hamlet: “methinks it is like a weasel.” The context is Polonius is agreeing a cloud looks like a weasel. But, that is not the only phrasing indicating the cloud looks like a pet neck warmer. Another phrase will do just as well: “it looks like a weasel to me.” So, since there are two different ways to say a cloud looks like a weasel, why not put them both into Dawkins’ program and see what happens?
"it looks like a weasel to me"
"methinks it is like a weasel"
Okay, phrase added to program. Now there are two phrases, making the program a double weaseler. How do I score sequences? I score a match on either phrase. So, let’s see what results. Here is the result of one run:
"it hooks it e a wkesel easel"
The program certainly evolved something, but it no longer resembles an English phrase. What happened?
In this case, natural selection is selecting from multiple phrases that describe a weasilish cloud. But, since natural selection is only selecting a character at a time without any understanding of the ultimate goal, the sequence becomes a mishmash of two possible phrases.
It is like natural selection is driving the evolution bus down the road and encounters a fork with either a left or right turn. Unable to choose either alternative, natural selection decides to split the difference and plow straight ahead, leaving evolution a smoking wreck.
The split the difference strategy is precisely due to the piecewise selection that Dawkins believes can climb Mount Improbable. Even more problematically, a less coherent phrase can be selected over a more coherent phrase. In other words, the piecewise natural selection can cause a phrase to devolve, which is certainly not conducive to the evolution of a new species.
Just how bad is the mishmash? Maybe I just need to run the algorithm a bit longer, and I’d match the phrase in a decent amount of time.
Not so. There is a 2/27 probability a randomly chosen character matches one of the two phrases and sticks. Since each choice is independent of the previous choice, there is always a 1/2 probability the character favors one phrase over the other, when the specific location has a different character in each phrase. How many of the locations are different? Lining up the phrases, we can see there are 25 spots, marked with a period.
"it looks like a weasel to me"
"methinks it is like a weasel"
Multiplying the independent probabilities together, we end up with the probability of 2/27 * 2^-25 of hitting the target phrase, requiring more than 2^25 queries. This puts us right back into the combinatorial explosion Dawkins sought to avoid with piecewise selection. All I did was add a second target.
All well and good. Does this problem of the double weasel have any corollary in real biology? As seen with flight, nature has many ways of achieving the same objective. There is not a yellow brick road paved with stepping stones to one particular solution handed down from the great Oz on high. And with more possible solutions, as well as many possible stepping stones to solutions, the double weasel problem grows exponentially. Adding multiple targets to Dawkins’ weasel program creates a combinatorial cataclysm that shoots Mount Improbable into outer space!