Uncommon Descent Serving The Intelligent Design Community

Uncommon Descent Contest Question 10: Provide the Code for Dawkins’ WEASEL Program

Share
Facebook
Twitter
LinkedIn
Flipboard
Print
Email

Special invitation for Richard Dawkins – but any civil person is entitled to enter.

There’s been some discussion here and elsewhere whether the the recent IEEE article by Dembski and Marks correctly characterizes Richard Dawkins’ famous METHINKS IT IS LIKE A WEASEL program.

Does the program ratchet correct letters or does it let them vary? One is a partitioned or stair-step search, the other a more realistic evolutionary search. From The Blind Watchmaker, where Dawkins describes the program, its performance suggests that it could be either of these options (though he doesn’t say).

On the other hand, from a (video-run of the program , go to 6:15), it seems to be the latter.

It’s easy enough to settle this question: Make the code for the program public. Perhaps Richard Dawkins himself or his friends at RichardDawkins.net can finally provide this code (apparently a program written in BASIC).

The prize is a copy of either Stephen Meyer’s new Signature in the Cell or Richard Dawkins’ soon-to-be-out The Greatest Show on Earth.

Should the winner choose the latter, I will ask Dawkins’s publicist to mail the copy. Given that at his site, he calls himself “the most formidable intellect in public discourse,” I would assume that if he signs the copy, it will be worth millions.

But wait. Let’s see that code first.

Comments
lars#15
The operative question here is, what algorithm did Dawkins use? That question has never been definitively answered,
Actually, it has. For example, a step by step implementation of the algorithm described in The Blind Watchmaker is available here: http://www.softwarematters.org/more-weasel.html A report of Dawkins stating that his program does not fix correct letters in place is here: http://austringer.net/wp/index.php/2007/10/09/today-is-a-fine-day-for-a-woollen-kettle-or-a-copper-sweater/ A video of the algorithm running, showing that letters are not fixed, is here: http://www.youtube.com/watch?v=5sUQIpFajsg All of this information, and more, has been posted on UD repeatedly every time the Weasel algorithm comes up.
yet arguments for evolution have been made based on the program’s performance.
You've got it backwards, I'm afraid. The Weasel algorithm was used to demonstrate the power of mutation and selection over random search, in a popular science book published 23 years ago. It was used to describe one component of evolutionary theory, not to support evolutionary theory.
The program’s relevance as a demo of what evolution-like processes can do depends on what algorithm was used.
Indeed. If letters were fixed in place once correct, that would not be at all relevant to evolutionary theory.DeLurker
August 26, 2009
August
08
Aug
26
26
2009
09:40 AM
9
09
40
AM
PDT
KRiS_Censored, Ah, it's the METHOLODOLOGY that's important. And how do you figure out the methodology without the original code. Are you clairvoyant?kibitzer
August 26, 2009
August
08
Aug
26
26
2009
09:08 AM
9
09
08
AM
PDT
@Kris_censored:
Or are you trying to pretend that the algorithm that he describes is completely irrelevant and it’s his original code written by him and him alone that’s really important?
The operative question here is, what algorithm did Dawkins use? That question has never been definitively answered, yet arguments for evolution have been made based on the program's performance. The program's relevance as a demo of what evolution-like processes can do depends on what algorithm was used. Having a public copy of the source code would allow everyone to verify what algorithm was used. If he's lost the source code, he should say so. If he has it, he should publish it. I don't think the Weasel program is now important as direct evidence for/against evolution, since more recent simulation programs have gone into much more detail and the algorithms have been published. However, the Weasel program is a familiar example to many people, and thus a useful reference point (which is why Dembski and Marks talk about it). Significant questions about the accuracy and relevance of Weasel-based arguments for evolution could be answered if the algorithm(s?) were published. But possibly Dawkins and his allies don't like the answers.lars
August 26, 2009
August
08
Aug
26
26
2009
09:02 AM
9
09
02
AM
PDT
Indium, "... is enough to reproduce ..." I assume you mean "... is EASY enough to reproduce ..." But what do you mean by "reproduce"? Do you mean, (1) Come up with the exact program that Dawkins wrote? Obviously not. (2) Come up with a functionally equivalent program? But that's the question, isn't it, whether the program ratchets letters or doesn't? Without the original code it's not clear whether a given piece of code is functionally equivalent? Or do you mean (3) Come up with any old program that's close enough? In that case, I assume you're okay with Dembski characterizing Dawkins' algorithm as ratcheting correct letters. No, you say? Dembski was wrong in that characterization? Then provide the original code. Repeat after me: WE WANT TO SEE THE ORIGINAL CODE, WE WANT TO SEE THE ORIGINAL CODE, WE WANT TO SEE THE ORIGINAL CODE ...kibitzer
August 26, 2009
August
08
Aug
26
26
2009
09:01 AM
9
09
01
AM
PDT
kibitzer: No. Evolution does not need Weasel as a support. It was a simple model to educate a broad audience about the power of cumulative selection 25 years ago. I don´t really understand your logic there. BTW, above I wanted to write "...the algorithm as described in the BW is easy enough to reproduce ...".Indium
August 26, 2009
August
08
Aug
26
26
2009
08:59 AM
8
08
59
AM
PDT
a number between 0 and 28, of course...DiEb
August 26, 2009
August
08
Aug
26
26
2009
08:58 AM
8
08
58
AM
PDT
kibitzer
You make it sound as though the original code is unimportant. It’s the original code on which his inflated claims are based.
Apparently you are in fact "trying to pretend that the algorithm that he describes is completely irrelevant and it’s his original code written by him and him alone that’s really important." As a matter of fact it's the original methodology (or in computer speak "algorithm") upon which his claims are based. The code itself was simply a way of demonstrating that methodology and is completely irrelevant. Let me ask you this, if he re-wrote the program today and it was exactly the same in every possible way, except that one variable was named "y" instead of "x", would that program be unusable? The methodology employed by the program is identical in either case, yet the code used to do it is different. How about if he changed a "for" loop into a "while" loop? Again, the final program would be identical in it's methodology, but the code would be different. It's the methodology that's of real import. The specific code used to implement it is irrelevant.KRiS_Censored
August 26, 2009
August
08
Aug
26
26
2009
08:53 AM
8
08
53
AM
PDT
Dawkins describes his algorithm in the following way:
It again begins by choosing a random sequence of 28 letters, just as before: WDLTMNLT DTJBKWIRZREZLMQCO P It now 'breeds from' this random phrase. It duplicates it repeatedly, but with a certain chance of random error - 'mutation' - in the copying. The computer examines the mutant nonsense phrases, the 'progeny' of the original phrase, and chooses the one which, however slightly, most resembles the target phrase, METHINKS IT IS LIKE A WEASEL. [...] the procedure is repeated.
This is enough to replicate his program:
1. chose random string 2. copy string n times with mutation. NOTE: at this step you don't know which letters are correct in place, so no letter is safe from being mutated! 3. chose best fitting string. NOTE: best fitting seems to be generally understood to be the string with the most correct letters, the fitting is expressed by a number between 1 and 28 4. Stop, if the number of correct letters is 28, otherwise 5. goto 2
The parameters which you can chose is the number of copies n, and the probability that a letter in a string is mutated, p. You may even chose another procedure of mutation - but keep in mind the NOTE of step 2. It's really basic to realize steps 1 - 5 in the programming language of your choice...DiEb
August 26, 2009
August
08
Aug
26
26
2009
08:52 AM
8
08
52
AM
PDT
Indium, "It's scientific relevance is more or less zero." Since Dawkins used it to support evolution, are you saying that evolution is unscientific?kibitzer
August 26, 2009
August
08
Aug
26
26
2009
08:39 AM
8
08
39
AM
PDT
Oh, and btw, the BW is not presenting original scientific research in this case. Weasel is a pet algorithm developed for a popular audience almost 25 years ago - it´s scientific relevance is more or less zero.Indium
August 26, 2009
August
08
Aug
26
26
2009
08:00 AM
8
08
00
AM
PDT
I have written a few programs in the nineties. Some even for university stuff. I have no copy left. I guess I lost a bit everytime I changed to a new OS or Computer. Anyway, the algorithm as described in the BW is enough to reproduce and many people have done so. This includes Atom from this very site ("Proximity Reward" algorithm from the tool on the EIL site).Indium
August 26, 2009
August
08
Aug
26
26
2009
07:58 AM
7
07
58
AM
PDT
So, you want Dawkins to provide you with a 23 year old computer program that has probably been reproduced hundreds, if not thousands of times, in a variety of programming languages, including by one regular contributor to this site (Atom). Have I got that right?specs
August 26, 2009
August
08
Aug
26
26
2009
07:44 AM
7
07
44
AM
PDT
KRiS_Censored, Three different languages? Were those all written by Dawkins? What was Dawkins' original code that he cited in The Blind Watchmaker. You make it sound as though the original code is unimportant. It's the original code on which his inflated claims are based. Let's see it.kibitzer
August 26, 2009
August
08
Aug
26
26
2009
07:40 AM
7
07
40
AM
PDT
Atom, I'm not sure I'm being too hard on Dawkins. Granted, The Blind Watchmaker and his WEASEL program came out in the 80s before easy dissemination of the program code on the Internet would have been available. But the program has been much discussed on the Internet in the last decade. So where is the code?kibitzer
August 26, 2009
August
08
Aug
26
26
2009
07:36 AM
7
07
36
AM
PDT
A single Google search has turned up 3 different listings of source code for the "Weasel" program written in 3 different languages, 1 of which includes both a locking and a non-locking mechanism built into it for easy comparison. All three show up on the very first page of results. Are you really having difficulty finding any source code for the Weasel algorithm? Or are you trying to pretend that the algorithm that he describes is completely irrelevant and it's his original code written by him and him alone that's really important?KRiS_Censored
August 26, 2009
August
08
Aug
26
26
2009
07:32 AM
7
07
32
AM
PDT
kibitzer, I've heard it reported that there was a time when the code was in fact available, but I can't verify the veracity of this claim. We'll see if it turns up.Atom
August 26, 2009
August
08
Aug
26
26
2009
07:22 AM
7
07
22
AM
PDT
Scientists, when they write computer programs and make scientific claims based on their performance, are supposed to make the code available. Thomas Schneider has done this with EV. Christof Adami has done this with AVIDA. It is simply unconscionable that over 20 years after the program has been out and used to argue for Darwinism, Dawkins still has not made this code publicly available.kibitzer
August 26, 2009
August
08
Aug
26
26
2009
07:10 AM
7
07
10
AM
PDT
1 11 12 13

Leave a Reply