Home » Intelligent Design » Behe refuted yet again

Behe refuted yet again

Here you go: Irreducible complexity for free by a (carefully programmed) accident: stellaralchemy.com/ice.

  • Delicious
  • Facebook
  • Reddit
  • StumbleUpon
  • Twitter
  • RSS Feed

36 Responses to Behe refuted yet again

  1. If I remember correctly he was stuck around 80 informational bits.
    I wasn’t “stuck” on anything :) . The original question asked if a GA could develop words faster than blind chance. I thought the GA developed did so quite well. (See: http://www.duke.edu/~pat7/publ.....rdPt2.html)

    I suggested several other approaches for his GA.
    By the way, I did get around to implementing your suggestion where words matching other words at any specific points would be considered “fit” – so haxxmxn would have a fitness of 4 since it matches “hangman” in 4 spots. I ran the GA for a 100 iterations, and it never found a true word of any significant length – in fact since there was no limit to the number of characters that could be included in a string, many of the character strings exceeded 100 letters, but were just pure gibberish from an english point of view.

    Designed correctly, I wouldn’t be surprised if his program could eventually reach 500 informational bits.
    Other phrase generation GAs have generated significant portions of text that far exceed 106 letters (the approximate length of a “500-bit string” assuming a language of 26 characters, and uniform probabilities on the individual characters).

  2. I wasn’t “stuck” on anything :) .

    Sorry, I didn’t mean that as insult. What I meant was that the design of your initial implementation tended to produce results around there and couldn’t get any further. Not that you yourself couldn’t design anything better.

    The original question asked if a GA could develop words faster than blind chance.

    At least in regards to ID I never saw that as an issue to disagree with. Designed properly, I’d certainly assume a GA would be faster than a blind search! But I’m taking it that the reason your bring this up is because that was your primary objective?

    By the way, I did get around to implementing your suggestion…it never found a true word of any significant length

    That’s about what I expected. My original point for suggesting it was to show how a GA with looser constraints might not reach the goal even if it was designed with the intention to attempt to hit the goal using Darwinian mechanisms. As in, “depending on the design of the GA there appears to be a complexity threshold that can be reached”. Still, I’m a little surprised it “never” hit anything similar to the original program. Run it for more iterations?

    Original comment:

    http://www.uncommondescent.com.....ment-86316

    On a side note, here was your original prediction:

    I imagine it will result in longer strings being found, since there are significantly more “livable” strings under this condition.

    I’m curious; why were you originally optimistic?

    Other phrase generation GAs have generated significant portions of text that far exceed 106 letters

    You’ve mentioned that several times before. Could you provide a link to the relevant programs so others can see what you’re talking about? I’m curious to see how they were designed. Probably would make a more interesting topic than the IC program.

  3. Patrick
    Sorry,…
    Please, don’t be sorry – I was just kidding :)

    Still, I’m a little surprised it “never” hit anything similar to the original program. Run it for more iterations?
    I can certainly try running it for more iterations. Right now the results i’m talking about are just stored in my head from a very small number of runs of the GA – so take them with a grain of salt. I should have some mental and computer flops to spare soon, actually, so maybe I can give it another shot. Maybe within a week?

    I imagine it will result in longer strings being found, since there are significantly more “livable” strings under this condition.
    I’m curious; why were you originally optimistic?

    Well, for a few reasons.
    First, a common problem in genetic algorithms is that the fitness solution space is highly sparse (i.e. the fitness surface is very often identically equal to 0). The modification you suggested should result in a much smoother fitness surface, which is typically “good” for GAs. Second, one of the problems with the original GA is that of homogeneity – that is, the population can sometimes at an early iteration find one good, say, 5 letter word, which then proceeds to take over the population, and stifle other more promising words. Then the GA goes no where (this is another common problem in GAs). I also thought that your suggestion would mitigate these effects somewhat.

    As it turns out, neither of these played a significant role in the experiments with your fitness function so far; instead I found that changing the fitness definition as you described it resulted in too flat a landscape, so that there is actually very little pressure for a string to be a word – i.e. “bxd” is as good a word as “thxx”. But I will try to run the code some more to see if I can find any other conclusions. It had kind of dropped off my radar screen.

    You’ve mentioned that several times before. Could you provide a link to the relevant programs so others can see what you’re talking about?

    I believe that the author of the software is kind of a persona non grata round these parts, but if you google “phrasenation”, it will be the first hit. If you are interested in discussing it, I can try to re-create the software in MATLAB so we can easily consider alternate fitness function formulations, but that may take more than one week :)

  4. Oh, yes….I’ve run into Zachriel’s stuff before. For everyone else’s benefit, here are the rules his programs runs by:

    http://www.zachriel.com/mutagenation/Contents.asp

    We will use these rules to determine how many random mutations and recombinations (with selection) are required to evolve long meaningful English phrases. (Note: the Original Rules are a subset of the Extended Rules.)

    * STRING: a sequence of letters. To be valid and remain extant, it must form an English word or phrase, e.g. “DOG”.

    * WORD VALIDATION: Words must appear in Merriam-Webster to be considered a valid word for our purposes.

    * POPULATION: a collection of valid strings, e.g. “DOG”, “ZEBRA” or “CAT IN THE HAT”.

    All the mutants of the single-letter word, “O”.* POINT-MUTATIONS: Change from any letter to any other letter, e.g. “BIND” to “BAND”; or the addition of any letter to the beginning or ending of a string, e.g. “LIMES” to “SLIMES”, or “HONE” to “HONEY”; or the insertion of any letter at any point in the string, e.g. “LAD” to “LAID”; or the deletion of any letter at any point in the string, “LIKES” to “LIES”. Every single possible point-mutation must be considered, but if it forms a non-valid string, it is automatically de-selected.

    * SNIPPETS: Any contiguous section of a string, in whole or in part, e.g. “PPE” from “SLIPPERY”. If the snippet forms a valid string, it can become a member of the population, e.g. “LIP” from “SLIPPERY”. The remainder of the string, minus the snipped portion, can also become a member of the population if it forms a valid string, e.g. snipping “IPPER” from “SLIPPERY” leaves “SLY”. Every single possible snippet and remainder must be considered, but if it forms a non-valid string, it is automatically de-selected. All snippets, valid or not, must be considered for insertions.

    * INSERTIONS: An insertion is made by taking any snippet of any string and inserting it into any valid string at any place in that string, e.g. “RAV” from “BRAVERY” can be inserted into “TELLING” to form “TRAVELLING”. Every single possible insertion must be considered, but if it forms a non-valid string, it is automatically de-selected.

    * SELECTION: Besides automatic selection, at the end of each generation, we can de-select any strings we choose leaving a pool of “beneficial” strings. We can cull the herd.

    Well-designed constraints considering the intended goal. If I remember aright it’s about the same level as the “methinks like a weasel” approach.

  5. I’m not sure that I understand the problem here – is there a particular step that you do not like? If you can be more specific in what parts of the algorithm you think are information-bearing or “cheating”, perhaps we can explore alternate approaches – to summarize, here are the shortened rules:

    1) Words must be full words to have any fitness.
    2) Use point-mutations and insertions in cross-over.
    3) Strings can be de-selected. (It’s not clear how this is done.)

    If I remember aright it’s about the same level as the “methinks like a weasel” approach.
    I do not believe this is the case – in me thinks like a weasel, origanisms were judged based on their distance from a pre-defined string, no such string exists here, and only full strings are considered fit.

  6. I do not believe this is the case – in me thinks like a weasel, origanisms were judged based on their distance from a pre-defined string, no such string exists here, and only full strings are considered fit.

    Let me rephrase then…it’s between “me thinks like a weasel” and your original approach. Funny thing is that is what I originally wrote but edited it to be “about the same level” since I hadn’t looked at Zachriel’s program in a long while.

Leave a Reply