RSS 2.0 Feed

» Welcome Guest Log In :: Register

Pages: (12) < ... 2 3 4 5 6 [7] 8 9 10 11 12 ... >   
  Topic: Evolutionary Computation, Stuff that drives AEs nuts< Next Oldest | Next Newest >  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 06 2009,13:07   

Quote
This table of affinities would be salted with entries that guarantee A-Z have some entry with high affinity.


I'd be curious to know if your concept of affinities has any similarity to my use of letter pairs.

In my limited experience, the output of a GA is limited only by the fitness scoring algorithm. I tried to build the simplest and stupidest scoring algorithm that could still produce interesting results.

My highest priority was to produce a fitness scorer that couldn't be construed as a target.

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
dvunkannon



Posts: 1377
Joined: June 2008

(Permalink) Posted: July 06 2009,13:35   

Quote (midwifetoad @ July 06 2009,14:07)
Quote
This table of affinities would be salted with entries that guarantee A-Z have some entry with high affinity.


I'd be curious to know if your concept of affinities has any similarity to my use of letter pairs.

In my limited experience, the output of a GA is limited only by the fitness scoring algorithm. I tried to build the simplest and stupidest scoring algorithm that could still produce interesting results.

My highest priority was to produce a fitness scorer that couldn't be construed as a target.

The affinities are my way to model the situation that tRNA molecules could evolve from molecules that accepted any of several amino acids before getting more specific. Right now there is still one tRNA that will accept two different AAs, but instead of evolving a more specific acceptor, the system fixes up errors after they occur.

We're aiming to do different things, so I don't see a conceptual overlap between your bigram and trigram tables and what I was conjecturing. I think what you are doing is using a Hidden Markov Model to evolve phoneme level utterances. I think Chomsky showed that human language is more than an HMM, but as you said, Behe doesn't think evolution can even do that much!

ETA - I take your point on the scoring. I thought of taking the data portion out of the genome, and just testing it against various strings, but I think going against a fixed target might be a simple first test of the idea.

--------------
Iím referring to evolution, not changes in allele frequencies. - Cornelius Hunter
Iím not an evolutionist, Iím a change in allele frequentist! - Nakashima

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 06 2009,14:21   

Quote
I think Chomsky showed that human language is more than an HMM, but as you said, Behe doesn't think evolution can even do that much!


I certainly am not ambitious enough to attempt evolving language. My goal was simply to test Behe's edge of evolution in a way that is a notch less deterministic than Dawkin's original Weasel.

I know, for example, that selecting for phenotypes is theoretically different from selecting genotypes, but I don't see how this matters much in a model. If the phenotype doesn't reflect the genotype in a way that is visible to the selecting agent, it doesn't really matter.

As for evolving phoneme level utterances, I think that's quite appropriate for a demo program. For one thing, I can make trade names. Bactine, for example. The distinguishing features of a trade name are pronounceability and novelty.

I don't know much about Chomsky except that he said a lot of things that sound like ID. I resist his pronouncements for that reason alone.

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
Henry J



Posts: 4039
Joined: Mar. 2005

(Permalink) Posted: July 06 2009,15:25   

At a guess, computing a phenotype for each genome might make it easier to allow for things like neutral drift, or making some traits more critical than others without necessarily attaching those traits to certain genes.

Henry

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 06 2009,16:05   

Quote (Henry J @ July 06 2009,15:25)
At a guess, computing a phenotype for each genome might make it easier to allow for things like neutral drift, or making some traits more critical than others without necessarily attaching those traits to certain genes.

Henry

That sounds like saying genes modify the effects of other genes.

But unless you have some way of modeling biological development, you are not being more "realistic" than my database of letter combinations known to have fitness.

I can quickly assign a fitness score to any arbitrary string of characters, comparing say EUPOUACCT to EUPOUAGCT, and choose one to be the parent of the next generation.

Now if you were doing a straight Weasel program you could just count the number of letters that match your target. But I am not searching for a target. I am shaping a population to look and sound like words from a specific language.

I'm not claiming to model biology, and I have doubts that we have the ability at this time to model biology. What we can do is model specific claims and specific assumptions.

All I set out to do was respond to criticisms of Dawkins asserting that his program did nothing but seek a fixed target. The demonstrable fact is that a clever selector can build unanticipated structures -- functional strings much longer than those known to the selector.

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
dvunkannon



Posts: 1377
Joined: June 2008

(Permalink) Posted: July 06 2009,16:27   

Quote (midwifetoad @ July 06 2009,17:05)
Now if you were doing a straight Weasel program you could just count the number of letters that match your target. But I am not searching for a target. I am shaping a population to look and sound like words from a specific language.

Yes, your system would stump the level 0 critic because you don't have a target hard coded that looks exactly like a population member.

The level 1 critic would say that the bigram and trigram table is hard coded, and that your system is rewarding population members that have the same frequency distributions as the table. That is your target.

--------------
Iím referring to evolution, not changes in allele frequencies. - Cornelius Hunter
Iím not an evolutionist, Iím a change in allele frequentist! - Nakashima

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 06 2009,16:44   

Just as soon as cdesign proponentsists come up with a level one critic, I'll worry.

But the general argument is that selection doesn't work. Or that it can't make anything new.

The demonstrable fact is that a selector that works at the organism level allows novelty to arise. If you toss in an occasional asteroid, it continues to arise over many generations . That takes care of latching and virtual latching.

Regardless of how you parse the argument, my dumbass selector makes words that could be in the dictionary, but aren't. It also makes things like jargon and acronyms that are in common use but aren't allowed in my dictionary (developed for Scrabble).

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 06 2009,16:52   

Selection has to be, at some level, hard coded.

At the biochemical level, most combinations are non-viable. (More ways to be dead than alive.)

At the population level, the selecting environment is pretty discriminating. diseases and predators are a lot smarter and more versatile than my probability tables.

I use tables for two reasons. One is that they are easy, fast and practical. The second is that they reflect a history of language evolution. Unless you don't believe language evolves.

They are a shorthand for all the historical events that made some strings of letters words and some not.

I am certain that some of the children produced by my demo that are not currently in use will be. One of the cute words that popped up was "mindfly." Not surprisingly, there is a mindfly.com.

So I think my selector does, at some elementary level, model one of the ways language evolves.

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
Henry J



Posts: 4039
Joined: Mar. 2005

(Permalink) Posted: July 06 2009,21:38   

Quote
Selection has to be, at some level, hard coded.

Yeah, it seems likely (to me at least) that some aspects would have to be directly programmed.

One way to get at least partly around that (at the cost of a bunch more work) is multiple species interacting with each other - in that case, the "target" is a balance between tasting bad to the other guys, and being able to catch (and digest) enough of the other guys to get by. That might be one way to keep it from converging on any one final answer.

Henry

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 06 2009,22:40   

The aspect of my simple weasel program that I find most interesting is the period after selection creates a population having high fitness. It then dithers around -- sometimes for fifty or a hundred generations -- without increasing fitness. Then, suddenly a long word will pop out, as if the program were waiting patiently for some hopeful monster.

My reading is that the plateau of high fitness is where any living population resides, and that so called neutral mutations are not really neutral, except that they have a fitness level as high as the existing average. Or perhaps they balance -- one up, one down.

It isn't really necessary to invoke any miracles of improbability. The dithering at high levels of fitness allows all kinds of things to emerge which could not emerge in one step from a low level of fitness.

I record the fitness scores of the mothers in my demo. When I see a 10 letter word emerge out of nowhere, I can trace the mothers and their fitness scores. Doing this, I see that for the most part, the history exhibits the same kind stepwise shift toward the 10 letter word that Dawkins' Weasel shows, as if that particular word were the goal.

Because I kill off the fittest every now and then, the scores sometimes go backwards. Sometimes the total count of "correct" letters will go backwards. All the more astonishing in retrospect. Dawkins' program can't do that.

But of course I wrote the program and I know the stepwise movement toward a target is an illusion. The program merely insures that given an adequate level of fecundity, fitness will always be high. After the first twenty or thirty generations, the population is never more than a few steps away from a "breakthrough."

I think what the cdesign proponentsists are missing is the fact that stasis in level of fitness does not imply genetic stasis. There are many variations that are equivalent in fitness. The path to a breakthrough structure doesn't have to  involve a continuous increase in overall fitness.

As an author, I'm biased, but I think my little program allows a person to see genetic drift. You see every mutation and every child. Of course I could be completely wacked. :p

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
dvunkannon



Posts: 1377
Joined: June 2008

(Permalink) Posted: July 07 2009,12:16   

Quote
Sometimes the total count of "correct" letters will go backwards. All the more astonishing in retrospect. Dawkins' program can't do that.


Errr, no. That was what the whole latching kerfuffle was about!

--------------
Iím referring to evolution, not changes in allele frequencies. - Cornelius Hunter
Iím not an evolutionist, Iím a change in allele frequentist! - Nakashima

  
Henry J



Posts: 4039
Joined: Mar. 2005

(Permalink) Posted: July 07 2009,13:49   

Yeah, they couldn't seem to get that offspring with a backwards mutation would be less fit, and so wouldn't be selected, and so wouldn't show up in the next generation. Direct logical consequence of the algorithm, no special coding needed.

Henry

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 07 2009,13:57   

Quote (dvunkannon @ July 07 2009,12:16)
Quote
Sometimes the total count of "correct" letters will go backwards. All the more astonishing in retrospect. Dawkins' program can't do that.


Errr, no. That was what the whole latching kerfuffle was about!

The latching crowd asserted that once a letter was correct it was protected from mutating. That's a separate issue from whether the total number of correct letters can decline.

At reasonable mutation rates, there will "always" be at least one perfect, unmutated child in the Dawkins program, and the total fitness will never decline. It is theoretically possible for two good mutations to offset one bad one, so it is possible for a good letter to revert.

My program pretty much guarantees that every fourth generation will decline in total fitness.

Since my fitness definition is much broader than a single target, I stir the pot to avoid getting stuck on a single individual having a high fitness score.

I don't know if I am modelling anything real. My only concern is to demonstrate that selection can do interesting things without a specific target.

I would argue, however, that my fitness database is at least partially equivalent to a real selection history. Which is to say, the distribution of letter pairs or phonemes in a real language is the result of a real selection history, and the database embodies that history.

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 07 2009,14:18   

Here's what I'm thinking, right or wrong:

The Behe challenge is to evolve a flagellum from an organism that may have some parts of the structure, but no motor.

Behe and Dembski are thinking that each step must be selected, that is each step must improve fitness; otherwise the probability of building a novel, complex structure is nil.

My argument, based on my own observations, is that when a population is at a high level of fitness -- and any living populations is fit by definition -- there are many variations that neither improve nor degrade fitness. (obviously this isn't an original thought).

This means there is little cost to variation. You may or may not hit upon some new invention, but the cost of "exploring the search space" is nil.

Now I could be just another crank, but I think my program shows this happening in a reasonable time frame. It's a toy illustration, but I think it's worth looking at as a possible teaching device.

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
Henry J



Posts: 4039
Joined: Mar. 2005

(Permalink) Posted: July 07 2009,21:58   

And of course the challenge back to Behe is to explain how his ideas explain a single nested hierarchy being followed by the vast majority of major traits and DNA sequences. (If that isn't being picky.)

Henry

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 08 2009,00:28   

Quote (Henry J @ July 07 2009,21:58)
And of course the challenge back to Behe is to explain how his ideas explain a single nested hierarchy being followed by the vast majority of major traits and DNA sequences. (If that isn't being picky.)

Henry

I haven't read Edge of Evolution, but I understand he lists many evidences for evolution without mentioning ERVs.

Can't imagine why.

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 08 2009,10:50   

Quote (Bob O'H @ July 02 2009,13:52)
I'm a bit cynical about a lot of conservation genetics: far too many people doing it use species of great conservation concern, like fruit flies.

Heh. Then I suppose you are equally cavalier about the fate of isogenic yeast.

Quote (Bob O'H @ July 02 2009,13:52)
In think there has been some work showing it happens in nature, but there are so many other threats as well.

When populations fall to very low levels, then minor catastrophes can result in extinction. With Gregor's Bookkeeper, if we set the relative variance to a high level (to represent contingent variations), then it can easily result in extinction. A low reproductive rate also makes a species less robust when populations are at a low level or subject to broad environmental fluctuations. Also important in very small populations is the role of recessive genes due to inbreeding. But in nature, we often expect some hybridization with closely related populations.

Some results of Gregor's Bookkeeper. Here are the settings for this trial.



numP is number of Parents.
numT is the number of Turns (but was stopped).
numO is the average number of Offspring.
numG is the number of Genes.
Dominant of 50% has no effect.


(The limiting factor for the software seems to be the Roulette Selection algorithm. The above took a few hours. I may try to optimize it later or convert it to a C++ moduleóbut I doubt it is worth the trouble.)

Even with the very low favorable-to-deleterious ratio of 0.00001, the result was an increase in fitness as seen here.



You can't see it well, but the fitness drops rapidly at the beginning. It's easier to see in log10.



This is because the original population has a uniform (isogenic) fitness of 1, and it takes some time for it to stabilize as a population of nearly neutral mutations.

With a population of 100, it increases in fitness with a favorable-to-deleterious ratio of 0.001 0.002. With a population of 1000, it increases in fitness with a favorable-to-deleterious ratio of 0.0001 0.0002. In nature, a species of only a few thousand individuals is usually considered small.

One of the problems with the model is that {in nature} the ratio of favorable-to-deleterious tends to increase as fitness declines. But leaving that aside ... We see that with larger populations, and within the assumptions of the model, genetic meltdown is not an issue.

The "divide by random" selection algorithm in Mendel's Accountant is flawed. If we add a slight dominance to beneficial alleles or introduce sexual selection, the results would be even more lopsided. The conclusion that genetic meltdown is a problem for reasonably large populations, and that this sort of model indicates a problem for evolutionary theory, is not supported.


-
More accurate value reflects additional data.

--------------
Tard Acquisition and Repository Department

   
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 09 2009,21:10   

This gives an idea of the distribution of fitnesses within a population. (The red horizontal line is the mean.) It's fairly uniform except at the margins, but a lot happens at the upper margin. Notice how bottlenecks, though risking extinction, increase overall fitness by weeding out the weakest.



100 numP, Beginning population (of Parents)
100 topP, Population capacity (of Parents)

6 numO, Average Offspring per Parent
20 numG, Genes
0.002 rateFav, Rate of Favorable mutations


20% varChildren, Drift in average fecundity (relative standard deviation)
20% varParents, Drift in average population (relative standard deviation)
5% varMuts, Drift in average mutation rate (relative standard deviation)


Mutational meltdown is only a plausible problem if a population is kept few in number and genetically isolated for a long period of time. Otherwise, bottlenecks can be evolutionary opportunities. The claim that even large populations suffer genetic meltdown, and therefore the world can only be a few thousand years old, is not supported by this sort of modeling.

-
Edit: Fixed graphic so it doesn't show the truncation after previously having calculated the average.

--------------
Tard Acquisition and Repository Department

   
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 09 2009,21:47   

This has the same settings, but a population of 1000 Parents. It exhibits the same initial decline, but then quickly runs off the chart.



--------------
Tard Acquisition and Repository Department

   
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 09 2009,21:54   

This one shows growth from an intial population of 1, with topP being 1000. A "founder" population.



Notice the first few turns, as the deleterious mutations shower precipitate down, and the population diversifies. Then we see fitness stabilize. Later, this population will also increase in fitness.

-
Like that word better. Quidquid latine dictum sit, altum viditur.

--------------
Tard Acquisition and Repository Department

   
Steve Schaffner



Posts: 13
Joined: June 2009

(Permalink) Posted: July 09 2009,22:15   

I'm afraid I haven't been following your program's progress in detail. What distribution of fitness effects do your mutations have?

  
midwifetoad



Posts: 3553
Joined: Mar. 2008

(Permalink) Posted: July 09 2009,22:39   

I'm certainly glad to hear that our precious ameboids (not to mention our lovely E.coli) are not endangered.

I was worried there for a while.

--------------
Ēletís not make a joke of ourselves.Ē

Pat Robertson

  
dvunkannon



Posts: 1377
Joined: June 2008

(Permalink) Posted: July 10 2009,07:02   

Zachriel, can you post your code somewhere? It would help me understand it better to walk though it. Thanks!

--------------
Iím referring to evolution, not changes in allele frequencies. - Cornelius Hunter
Iím not an evolutionist, Iím a change in allele frequentist! - Nakashima

  
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 10 2009,07:10   

Quote (Steve Schaffner @ July 09 2009,22:15)
I'm afraid I haven't been following your program's progress in detail. What distribution of fitness effects do your mutations have?

We're using the VBA GammaDist. It's not perfect, but seems more than sufficient for the purpose. We're limiting the extremes in any case. Click for a graph.

RndGamma = Application.GammaDist(Rnd + inf, gamMuts, 1, False)
If RndGamma > topMuts Then RndGamma = topMuts


There are other posts on the same page showing snippets of code from Gregor's Bookkeeper, differences with Mendel's, and an analysis indicating an apparent problem with their calculation of "working fitness".

Favorable and deleterious mutations are mirror image distributionsóother than the RateFav multiplier such that favorable mutations are much rarer. There's a maximum effect, topMuts, usually set at 1.

inf is infinitesimal
gamMuts can vary, but the distribution shown at the link is 0.01.
RateFav usually varies from 0.01 to 0.00001, and is 0.002 in the charts shown just above.


--------------
Tard Acquisition and Repository Department

   
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 10 2009,07:45   

Quote (dvunkannon @ July 10 2009,07:02)
Zachriel, can you post your code somewhere? It would help me understand it better to walk though it. Thanks!

Sure. It's not set up for the general user, but it's not all that difficult. The first lines of code include the array dimensions. You may have to set those to suit. And there's not a lot of error detection. It's implemented in Excel 2007, but seems to work in somewhat older versions. You have to enable macros, of course.

Gregor's Bookkeeper
http://www.zachriel.com/mendel/gregorsbookkeeper.xlsm

Hmm. The file won't download in Windows Vista 64. It keeps saying it's a zip-file. It's not. And the file isn't in the zip-folder it creates. The download works in other operating systems. I think Microsoft is trying to "help". If that doesn't work, try this.

Gregor's Bookkeeper
http://www.zachriel.com/mendel/gregorsbookkeeper.zip

--------------
Tard Acquisition and Repository Department

   
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 10 2009,21:23   

Some updates to Gregor's Bookkeeper. More readable subroutine structure. Also, fixed a minor bug for numO (average number of Offspring), which wasn't accepting fractional values.



--------------
Tard Acquisition and Repository Department

   
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 11 2009,08:44   

Added a Genetic Fitness chart, similar to those above. It takes a snapshot of each turn, stored as a gif. It defaults FALSE, so you have to turn it on in the "Vars" worksheet. (Due to limitations in Excel, it can't plot more than 32000 data-points, so that limits the number of Children it can display.)

--------------
Tard Acquisition and Repository Department

   
dvunkannon



Posts: 1377
Joined: June 2008

(Permalink) Posted: July 11 2009,09:30   

Quote (Zachriel @ July 10 2009,22:23)
Some updates to Gregor's Bookkeeper. More readable subroutine structure. Also, fixed a minor bug for numO (average number of Offspring), which wasn't accepting fractional values.


You could move the Extinction test up to right after generating stats, right? After Phenotypic Fitness, you know there are no more population members.

It's trivial, and this does look very clean!

--------------
Iím referring to evolution, not changes in allele frequencies. - Cornelius Hunter
Iím not an evolutionist, Iím a change in allele frequentist! - Nakashima

  
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 11 2009,10:12   

Quote (dvunkannon @ July 11 2009,09:30)
†  
Quote (Zachriel @ July 10 2009,22:23)
Some updates to Gregor's Bookkeeper. More readable subroutine structure. Also, fixed a minor bug for numO (average number of Offspring), which wasn't accepting fractional values.


You could move the Extinction test up to right after generating stats, right? After Phenotypic Fitness, you know there are no more population members.

It's trivial, and this does look very clean!

Extinction can occur in Selection if no one has positive phylogenetic fitness. If the number of Parents (numP) does drop to 0, then it will fall through the next routines safely. We want Stats, at least. Or extinction can occur in Roulette if there are no children (numC). We need to catch it there, or it errors on the next loop in PhyloFitness when it sorts. I admit I'm not quite happy with just letting it drop through from Selection as that relies on what happens with Parents (numP) in the following proceduresówhich could change. It probably should be checked any place extinction could occur. (A popstack command would be handy, but I don't see one.)

--------------
Tard Acquisition and Repository Department

   
Zachriel



Posts: 2595
Joined: Sep. 2006

(Permalink) Posted: July 11 2009,10:17   

Quote (Zachriel @ July 11 2009,08:44)
Added a Genetic Fitness chart, similar to those above. It takes a snapshot of each turn, stored as a gif. It defaults FALSE, so you have to turn it on in the "Vars" worksheet. (Due to limitations in Excel, it can't plot more than 32000 data-points, so that limits the number of Children it can display.)

There's no way to reliably predict what the range of fitnesses will be or even the top population of children (numC). Consequently, Charts are set automatically with every turn. You can make them static (as they are in the gif animations above) by setting them in the makeChart procedure. The commands are there, just remarked-out.

--------------
Tard Acquisition and Repository Department

   
  355 replies since Mar. 17 2009,11:00 < Next Oldest | Next Newest >  

Pages: (12) < ... 2 3 4 5 6 [7] 8 9 10 11 12 ... >   


Track this topic Email this topic Print this topic

[ Read the Board Rules ] | [Useful Links] | [Evolving Designs]