Uncommon Descent Serving The Intelligent Design Community

Dawkins’ WEASEL: Proximity Search With or Without Locking?

Categories
Darwinism
Evolution
Informatics
Share
Facebook
Twitter/X
LinkedIn
Flipboard
Print
Email

On pp. 47-48 of THE BLIND WATCHMAKER, Richard Dawkins gives two runs of his WEASEL program (note that there were typos in both initial seeds — one had 27 characters, the other 29 whereas they should have 28; I’ve corrected that). Here are the two runs using the Courier typeface, which assigns equal width to each character (spaces are represented by asterisks):


WDL*MNLT*DTJBKWIRZREZLMQCO*P
WDLTMNLT*DTJBSWIRZREZLMQCO*P
MDLDMNLS*ITJISWHRZREZ*MECS*P
MELDINLS*IT*ISWPRKE*Z*WECSEL
METHINGS*IT*ISWLIKE*B*WECSEL
METHINKS*IT*IS*LIKE*I*WEASEL
METHINKS*IT*IS*LIKE*A*WEASEL

Y*YVMQKZPFJXWVHGLAWFVCHQXYPY
Y*YVMQKSPFTXWSHLIKEFV*HQYSPY
YETHINKSPITXISHLIKEFA*WQYSEY
METHINKS*IT*ISSLIKE*A*WEFSEY
METHINKS*IT*ISBLIKE*A*WEASES
METHINKS*IT*ISJLIKE*A*WEASEO
METHINKS*IT*IS*LIKE*A*WEASEP
METHINKS*IT*IS*LIKE*A*WEASEL

These runs are incomplete. The first, according to Dawkins, required 43 iterations to converge, the second 64 (Dawkins omitted the other iterates to save space).

As you can see, by using the Courier font, one can read up from the target sequence METHINKS*IT*IS*LIKE*A*WEASEL, as it were column by column, over each letter of the target sequence. From this it’s clear that once the right letter in the target sequence is latched on to, it locks on and never changes. In other words, in these examples of Dawkins’ WEASEL program as given in his book THE BLIND WATCHMAKER, it never happens (as far as we can tell) that some intermediate sequences achieves the corresponding letter in the target sequence, then loses it, and in the end regains it.

Thus, since Dawkins does not make explicit in THE BLIND WATCHMAKER just how his algorithm works, it is natural to conclude that it is a proximity search with locking (i.e., it locks on characters in the target sequence and never lets go).

Interestingly, when Dawkins did his 1987 BBC Horizons takeoff on his book, he ran the program in front of the film camera:

www.youtube.com/watch?v=5sUQIpFajsg (go to 6:15)

There you see that his WEASEL program does a proximity search without locking (letters in the target sequence appear, disappear, and then reappear).

That leads one to wonder whether the WEASEL program, as Dawkins had programmed and described it in his book, is the same as in the BBC Horizons documentary.

In any case, our chief programmer at the Evolutionary Informatics Lab (www.evoinfo.org) is expanding our WEASEL WARE software to model both these possibilities. Stay tuned.

Comments
Clive Hayden: What if the goal were "any valid english sentence [of length n]." So of all the individuals on a given iteration, it would keep the closest phrase to any valid sentence. That would seem much easier to attain actually, than "me thinks it is a weasel". It would also be general, not specific, but would result in very complex meaningful sentences. And would it be comparable to, "Any viable biological organism."JT
March 16, 2009
March
03
Mar
16
16
2009
02:46 PM
2
02
46
PM
PDT
"Cumulative sampling" (to a statistical researcher, that is an odd term) is no more effective at coordinating functionality within separate organizations using meta information than "random sampling" is. Yet, this is exactly what is called for.Upright BiPed
March 16, 2009
March
03
Mar
16
16
2009
02:46 PM
2
02
46
PM
PDT
Can someone help me understand this: What exactly does this model purport to simulate? What exactly (specifically) does the METHINKS*IT*IS*LIKE*A*WEASEL represent? If it represents a "completed" evolution of an organism, wouldn't each successive generation have to have to have some natural advantage to the previous one? An advantage so great that the previous generation genetic makeup eventually dies out? If not, why does that generation keep going and not the others? Without these steps the model simulates design, not randomness. But just how big does an advantage have to be that it is to the detriment to rest of the gene pool? Isn't that what each step represents? This is also something I haven't quite understood: does the model account for the variability of survival that has nothing to do with this natural advantage? In other words, the chance the organism will die before it is able to even take advantage of the mutation? As you can tell, I am not a scientist, but I am having trouble getting my head around these things.Tommy V
March 16, 2009
March
03
Mar
16
16
2009
02:28 PM
2
02
28
PM
PDT
Clive, Dawkins points out the same disanalogy that you do, namely that WEASEL has a target while biological evolution does not (as far as science can tell). The point of WEASEL is to illustrate the contrast between cumulative selection and random sampling. Of course, WEASEL doesn't demonstrate that the conditions necessary for cumulative selection exist in biology, and the point of irreducible complexity is to show that these conditions don't exist in some biological cases.R0b
March 16, 2009
March
03
Mar
16
16
2009
02:26 PM
2
02
26
PM
PDT
When I coded Dawkins’ algorithm...
In other words, a set of requirements/business rules was articulated by one intelligent entity and implemented by another. The programmer selected design parameters based on what he thought was reasonable, and used an integrated set of known-to-have-been-designed infrastructure (programming language, operating system, hardware...) to code to those requirements. There were probably bugs in the early iterations (as there always are), but he knew the “correct letters” (something evolution does not and cannot know, according to the mainstream theory) and was able to trouble shoot until the desired state was obtained. Question: given the fact that none of the makers of this particular watch can justifiably be called blind, what conclusion are we expected to draw again?SteveB
March 16, 2009
March
03
Mar
16
16
2009
02:23 PM
2
02
23
PM
PDT
Im wondering what the Weasel Program is supposed to evidence? I haven't read TBW, so I'm really not sure what purpose the simulation has. Is it supposed to show that by some process of variation, a targeted "phrase" or "combination" can be reached eventually? He mentions in the video that some reward will be given if the safe's code is partially determined, by some money dribbling out. To me, it seems that in both instances, the safe and the phrase, we already know the purpose for which we're trying to achieve--either money or a "correct" phrase. Isn't this information that the "search" wouldn't have? If there is no definite end or purpose already known, the "reward" wouldn't exist, it would be like trying to find the safe's combination for the purpose of swimming or doing math homework, it could be any "reward", money would be just as meaningless as both. It seems like the simulation, to me, begs the question of what it is that's trying to be achieved, and what it is that is being "rewarded" for "correct" bits of the "puzzle". With a puzzle you have a picture that an objective reference point can determine what it "should" look like, with this, you have nothing of the sort. And safe's don't reward a little if you get one part of the combination right. And the Weasel Program, already knows that there was an author's phrase that is being approximated to. But I can't see the analogy of an author in nature that the search is approximating to unless we have ID, and intent and purpose is driving it to that definite end. Please, I'm trying to understand the purpose of this program, and how it is supposed to be evidential at all to evolution. If evolution doesn't have you in mind, then it doesn't have "Shakespeare's phrase" in mind either (metaphorically speaking), and would have no reason to keep some combination and not others.Clive Hayden
March 16, 2009
March
03
Mar
16
16
2009
02:12 PM
2
02
12
PM
PDT
ROb, good point. I think some people have misunderstood what happens in the program: Each "generation" contains a number of "tries" (these can be adjusted to see how it works with changing variables). The best "try" becomes the parent for the next set of "tries" (each of which is free to mutate at any letter, correct or not). One could change the number of letters that mutated and the number of "tries" per generation without changing anything foundational about the program. I don't know why people don't seem to understand this. I don't know beans about programming, and I understand it. It would be interesting to change the target while the program is running. What happens then. What if METHINKS IT IS LIKE A WEASEL became THINK YOU IT IS LIKE A WEASEL and then I THINK YOU LOOK LIKE A BEAGLE in the middle of a run, but with no other changes? I bet there would be no latching anywhere because the program never had or needed latching.David Kellogg
March 16, 2009
March
03
Mar
16
16
2009
02:02 PM
2
02
02
PM
PDT
Pendulum, I don't think that "tries" refers to generations -- I think it refers to instances of the sequence, ie "organisms". In the video, it succeeded in 2485 tries. If the population was 50, that would be 50 generations (50 * 50 = 2500 -- apparently it doesn't finish out the current generation when it finds the target). That's in line with the number of generations reported in TBW.R0b
March 16, 2009
March
03
Mar
16
16
2009
01:50 PM
1
01
50
PM
PDT
R0b, Look at the generation number. There has to be a param change, probably lowering the population size significantly. That would lead to the fallbacks in good letters and a faster update of the screen, which I think was the reason for changing the params - better visuals!Pendulum
March 16, 2009
March
03
Mar
16
16
2009
01:34 PM
1
01
34
PM
PDT
DonaldM:
I don’t care if he used a different program or not, if he monkeyed with the parameters to acheive a desired result, then he is demonstrating design not chance and/or necessity.
I was the one who suggested that he changed his parameters, but I retracted that suggestion in [6]. On looking at the video, I see no evidence that he changed his parameters.R0b
March 16, 2009
March
03
Mar
16
16
2009
01:12 PM
1
01
12
PM
PDT
DonaldM, all sorts of things could be changed between versions of a program run: the mutation rate, the population size (number of mutated versions generated from each best fit), the speed of display. These wouldn't make the program work signficantly differently, though they might change the time it took to reach the target, the number of generations, and the way the running program looked on film. I don't know as much about programming as many here, but I'm pretty sure this is right.David Kellogg
March 16, 2009
March
03
Mar
16
16
2009
01:12 PM
1
01
12
PM
PDT
I don't care if he used a different program or not, if he monkeyed with the parameters to acheive a desired result, then he is demonstrating design not chance and/or necessity. I also find it interesting that he admits in the video to aiming for a specified target but that evolution doesn't do this,but then just glosses over this distinction as if it isn't all that important. I've never understood why this 'weasel' program tells us anything about how evolution is supposed to work.DonaldM
March 16, 2009
March
03
Mar
16
16
2009
12:57 PM
12
12
57
PM
PDT
Dr. Dembski asks a very interesting follow-on question. Since Dawkins isn't posting comments here yet, can we get Atom's opinion about the same question re Weaselware or Dr. Dembski's himself re MESA? All these parameter driven programs can give vastly different results depending on how the parameters are set.Pendulum
March 16, 2009
March
03
Mar
16
16
2009
12:23 PM
12
12
23
PM
PDT
If Dawkins is tuning the parameters differently for the program as described in the book and for it as exhibited in the BBC documentary, isn’t he in effect using a different program?
Re-running the same program with different data or settings is equivalent to using a different program? I don't see that.Arthur Smith
March 16, 2009
March
03
Mar
16
16
2009
12:22 PM
12
12
22
PM
PDT
Wesley Elsberry has just posted the following at his own forum:
I already corresponded with Dawkins back in 2000. There was no locking of characters in any implementation he did, nor was there any description of locking in anything he said.
Arthur Smith
March 16, 2009
March
03
Mar
16
16
2009
12:15 PM
12
12
15
PM
PDT
Another way of saying is that the letters are "locked into place" by the laws of probability. That is given some "correct" mutation rate and the "correct" number of tries per generation to choose from, the odds would favor at least one offspring per generation being equal to the parent- ie no change. The other 99 are competeing against that one to get "displayed", and then becoming the "parent" of the next generation. Picture "The Price is Right" wheel with every letter in the alphabet (and a space)- except that once a parent becomes established 96 out of 100 spaces are then that letter and the other 4 are any letter but that one- wildcards. Then spin away- 100 spins per wheel, with 28? wheels trying to get "MeTHINKs..." And each time a new parent is choosen the wheels change to match it.Joseph
March 16, 2009
March
03
Mar
16
16
2009
11:56 AM
11
11
56
AM
PDT
I disagree with R0b on whether Dawkins changed parameters. The number of generations is the evidence he did. I think the video parameters are a smaller pop and perhaps higher mutation. I think the result is a more "videogenic" simulation, since you see lots of visual change on the screen.Pendulum
March 16, 2009
March
03
Mar
16
16
2009
11:28 AM
11
11
28
AM
PDT
I am still looking for the book "The Blind Watchmaker"- I have it on order through the local library so until I read it again I can't say what Dawkins did in the book. That said I have offered my opinion on why the "locking" is only apparent- That is in each generation the only "survivor" is the one that is closest to the target. Before the next generation the parent is the closest. Now given that the mutation rate is 4% (about 1 letter change per offspring per generation), this means there is also a 96% chance there won't be any change. So once a match is found and deemed "closest to the target" then all surviving offspring should be at the minimum equal to the parent and at best some degree closer to the target. Therefor to see if any letters are "locked" one then has to look at ALL of the REJECTED offspring. That is if one cannot get a hold of the ORIGINAL code that Dawkins used in BW.Joseph
March 16, 2009
March
03
Mar
16
16
2009
11:10 AM
11
11
10
AM
PDT
Actually, on looking at the video, I don't think that Dawkins necessarily changed his parameters. It appears that the screen in the video is cycling through the whole population, not just showing the winner. In that case, reversion of correct letters is occurring in the sense that correct letters get mutated, but not necessarily in the sense that selected winners contain reverted letters. In summary, there is no evidence that Dawkins used a latching mechanism in his 1986 algorithm, and the 1987 video constitutes evidence that he did not.R0b
March 16, 2009
March
03
Mar
16
16
2009
11:05 AM
11
11
05
AM
PDT
Gentlemen: If Dawkins is tuning the parameters differently for the program as described in the book and for it as exhibited in the BBC documentary, isn't he in effect using a different program?William Dembski
March 16, 2009
March
03
Mar
16
16
2009
10:58 AM
10
10
58
AM
PDT
Dr. Dembski:
Thus, since Dawkins does not make explicit in THE BLIND WATCHMAKER just how his algorithm works, it is natural to conclude that it is a proximity search with locking (i.e., it locks on characters in the target sequence and never lets go).
Actually, Dawkins described his algorithm very clearly. What he didn't tell us is the parameters he used, namely mutation rate and population size. When I coded Dawkins' algorithm, I chose a mutation rate of 5% and a population size of 50, just because the values struck me as reasonable (although 5% would be quite high in a biological context.) It turned out that these values rendered the reversion of correct letters highly improbable. The math to bear this out would be ugly but doable. Why, then, is it natural to conclude that Dawkins implemented latching, didn't mention it in his description of the algorithm in TBW, and then removed it before the 1987 video? Doesn't it seem more likely that Dawkins' parameters were such that the reversion of correct letters was highly improbable, and that he used a different set of parameters for the video?R0b
March 16, 2009
March
03
Mar
16
16
2009
10:50 AM
10
10
50
AM
PDT
Stay tuned? You bet...Timothy V Reeves
March 16, 2009
March
03
Mar
16
16
2009
10:22 AM
10
10
22
AM
PDT
That leads one to wonder whether the WEASEL program, as Dawkins had programmed and described it in his book, is the same as in the BBC Horizons documentary.
Why not just ask him?Arthur Smith
March 16, 2009
March
03
Mar
16
16
2009
10:18 AM
10
10
18
AM
PDT
William Dembski:
That leads one to wonder whether the WEASEL program, as Dawkins had programmed and described it in his book, is the same as in the BBC Horizons documentary.
They both work, so what does it matter?B L Harville
March 16, 2009
March
03
Mar
16
16
2009
10:10 AM
10
10
10
AM
PDT
Is it possible that the code is the same, but other parameters, such as the population size and mutation rate, were changed between the book and the TV show? Right at the end of the video clip showing the simulation, you can see that the generation count was 2485. That is a very diferent result that less than 100 generations in the runs summarised in the book.Pendulum
March 16, 2009
March
03
Mar
16
16
2009
09:58 AM
9
09
58
AM
PDT
1 … 10 11 12