| Vignere Encoded Text Evolution | |||||||||
| We present here a simulation of text evolution that does not result in a unique outcome for the genome that evolves. This apparently overcomes the principal objection to the famous "Weasel" program from "The Blind Watchmaker" by Richard Dawkins, in which a single predetermined outcome happens every time. In our simulation, which we call Vignere Encoded Text Evolution (VETE) we allow encoded text to evolve with an encryption key that also evolves, thus allowing multiple outcomes to be possible. Does this then demonstrate "targetless evolution"? We discuss why it does not, and how also current attempts to demonstrate targetless evolution also fail. This simulation is a long-sighted watchmaker rather than a blind one, and current attempts to make "blind watchmakers" are exactly the same. Navigation The Dawkins Weasel program The most well-known evolution demonstration in existence is the so-called WEASEL program of Richard Dawkins, presented in his book The Blind Watchmaker. In this program, the power of cumulative selection is demonstrated a procedure that starts with a random string of letters (such as might be typed by a monkey hitting a typewriter), and gradually evolving it to a sentence of Shakespeare, namely "METHINKS IT IS LIKE A WEASEL". The program works by making copies of the genome (letter string) and subjecting them to mutations. A number of offspring are thus generated at each generation, and the "best" string is then selected according to how many letters match the target string in the correct positions. All of the letter positions are subject to mutations and hence it is possible that all of the offspring can be worse than the originial parent at any one generation. However, provided there are enough offspring at each generation (experiments indicate that the number of offspring needs to be around three times the number of letters in the string), then the simulation always reaches the required target string in a fairly small number of generations (typically less than 100). Dawkins' critique of the Weasel program There have been many critics of the Weasel analogy particularly among the creationist community who have stated clearly enough that this does not demonstrate evolution because there was a fixed target; only one possible outcome to the simulation, namely the chosen string of text, and the simulation was rigged so that this outcome was inevitable. However, these criticisms are in fact unfair, not in that they are not true but because they fail to acknowledge the fact that Dawkins was the first person to voice this criticizm, on the very next page of "The Blind Watchmaker" after the program was described. Dawkins writes: Although the monkey/Shakespeare model is useful for explaining the distinction between single-step selection and cumulative selection, it is misleading in important ways. One of these is that, in each generation of selective 'breeding', the mutant 'progeny' phrases were judged according to the criterion of resemblance to a distant ideal target, the phrase methinks it is like a weasel. Life isn't like that. Evolution has no long-term goal Hence the WEASEL program was never intended to be a demonstration of evolution (though it frequently is cited incorrectly as such). Recent attempts to improve on the Weasel model There have been some more recent attempts at evolutionary simulation, notably the Schneider 'EV' simulation, and also the Lenski et al 'AVIDA' Nature paper. In both of these simulations, there is, it is claimed, no fixed target to aim at; indeed, there are many possible different different outcomes and hence, it appears, they overcome Dawkins' objection to his own model that Evolution has no long-term goal. However, in both these cases, all the authors have succeeded in doing it to push the Dawkins objection one step further back. Both algorithms in fact still aim to reproduce a distant ideal target (in Dawkins' words), but with a subtle difference. The target is not the genome that arises at the end of the simulation, but the result of applying a processing algorithm to the final genome. In the case of the Schneider simulation, the target is a fixed array of pre-specified bits, which define where "binding sites" on a simulated DNA based "creature" are to be found. In the processing that is applied to the genome, the first 125 locations of the genome are decoded as a "weight matrix", which is then used to process the rest of the genome to determine which locations are "recognized" as binding sites and which are not. The survival of a genome is dependent on how closely the output of this algorithm matches the pre-specified and fixed array of binding sites. There are many possible genome arrangements that will satisfy any given "target", and the function that calculates the output is a many-to-one mapping. In the Lenski et al simulation, a string of letters (1 of 26) is evolved, and then each of the 26 possible codes is treated as a machine instruction for a "virtual machine", running a language called AVIDA. The program is required to output certain logic functions (the most complex being EQU; a test for the equality of two 32-bit inputs). Graded rewards are given for the complexity of logic function computed, with EQU having the highest reward because it is the most complex. This simulation still corresponds to having a fixed target; in order to determine survival likelihood of a digital creature, each program is tested with a given set of 32 bit inputs, and then the 32 bit output is compared with a fixed set of required outputs (i.e. the EQU function had to be pre-calculated externally to the simulation, and it was then used for a target). In fact they had to do a lot more than that, in offering intermediate rewards to logical functions that were less complex to compute. But in summary, both the Ev and the AVIDA simulations require a fixed target to be specified prior to the evolution, and the target is to be the outcome of applying a computer algorithm to the genome. Both are claimed as being "target free" in that there are many possible outcomes that will work, but both are in fact tied to fixed targets. Vignere Encoded Text Evolution With this idea in mind, we present here a much simpler demonstration that is exactly the same in this respect to both the Schneider and Lenski et al simulations. Taking the Dawkins WEASEL program as a starting point, we form a simulation that apparently overcomes the objection of there being a fixed target. This is done by using Vignere Encoding on the text that arises in the genome string. The genome is divided into two sections, the first N characters being an "Encryption Key", and the remaining being devoted to encoded text, which would be encoded and decoded using the encryption key. The Vignere cipher is a generalization of the so-called Caesar cipher that was used by Julius Caesar for secret communications. In the original Caesar cipher, each letter was shifted to the letter 3 places on in the alphabet. If this went beyond Z, then it would wrap round to A, hence X goes to A, Y goes to B and Z goes to C. Under this scheme, the word: FORTYTWO would go to IRUVBVZR The scheme could be extended to include spaces by having a notional first letter in the alphabet to be a space, so X would map to space, and space would map to C. To extend this further to a Vignere cipher, we have a different shift on successive letters, but the shifts repeat in a pattern. This can be achieved by specifying an encryption string, and the ordinal position of each letter gives the corresponding shift. Thus if the encryption key was "ABC", then the letter shifts on successive letters would be 1,2,3,1,2,3,1,2,3 etc. This is illustrated here:
In this simulation, the encryption key and the encoded text are allowed to evolve from a random starting genome. Each genome is evaluated by applying the reverse letter shift pattern in order to decode the encoded portion of the genome. The output of this process is then compared with the desired target string, and assessed according to its similarity. The best one from a fixed number of progeny is then taken as the start point for the next round of mutation. The simulation has a marked similarity to the Schneider Ev simulation, in that the encryption key is analagous to the "Weight matrix", and is used to process the text portion of the genome, in order to reproduce a fixed target. The difference is that here, we are quite explicit in stating up front that there is a fixed target string (which in the simulation is the phrase "THE ANSWER IS FORTY TWO"), whereas in both the Schneider and Lenski et al simulations, the existence of the fixed target has to be deduced from the text (and examining the source code of the Schneider simulation). The simulation can be run as a Javascript program by pressing the button below. It may take a few seconds to load the page, because the simulation constructs the web page on the fly and does not display until the run is complete. You may also get a warning that the Javascript takes a long time to run. The simulation can be re-run by reloading the page (or going back to this page and pressing the button again). A different result is achieved every time, in terms of the final genome; the encryption key is 10 characters long, meaning that there are 2710 different possible outcomes, which is around 200 Trillion. Naturally, we are not making any exaggerated claims on behalf of this simulation; the distant idealized target is specified at the outset ("THE ANSWER IS FORTY TWO"). Hence we claim that no similar claims can be made of the Schneider and Lenski simulations either. Click the button below to run the simulation: Exaggerated Claims that could be made on behalf of VETE Claim 1: Refutation 1: Claim 2: Refutation 2: Claim 3: Refutation 3: |
|||||||||