Advertisement
Research Article

Evolution of Evolvability in Gene Regulatory Networks

  • Anton Crombach mail,

    a.b.m.crombach@uu.nl

    Affiliation: Theoretical Biology and Bioinformatics Group, Utrecht University, The Netherlands

    X
  • Paulien Hogeweg

    Affiliation: Theoretical Biology and Bioinformatics Group, Utrecht University, The Netherlands

    X
  • Published: July 11, 2008
  • DOI: 10.1371/journal.pcbi.1000112

Reader Comments (2)

Post a new comment on this article

alternative splicing + alternative pathways

Posted by dalloliogm on 21 Nov 2008 at 10:32 GMT

Hi Antoin!
I just attended your seminar at the PRBB building in Barcelona.

Here are my suggestions:
- you could improve your model by introducing the concept of alternative splicing.
That's a difficult thing to implement, I recognize: however, I think alternative splicing is the source of most of the variability and maybe 'evolvability' in metazoans.
A single gene can produce many different proteins (or many different effects). A mutation can cause a change in the expression of some of the splicing isoforms but not in all.
Otherwise, you could study evolution in bacterias and simpler organisms, where you don't have splicing. In this case, you could enhance your model by implementing the fact that many genes are regulated by the same sequences (poly-cistronic genes).
Your actual model could be adapted to some fungal species, maybe to S.cerevisiae, in which most of the genes have only one or two exons, and in which when there is alternative splicing, it is usually a one-time response that causes all introns in the cell to be included after to an external stimulus.
Maybe you can start with cerevisiae, so later you will also be able to test your hypothesis in vivo easily.

- introduce alternative pathways. Most of the times, there are more than a single pathway that can produce the same phenotype, causing the same effect on the fitness.

- consider contributing your source code under a GPL-like license. It will help a lot other people to understand how you did your analysis. Have you used some kind of testing framework? (please don't worry, I ask this question always) If you use python, you can find me on biopython's mailing list.


RE: alternative splicing + alternative pathways

antonio replied to dalloliogm on 05 Jan 2009 at 18:34 GMT

Hi Giovanni,

I'm terribly sorry I haven't responded any earlier. It's simply that I only now see your comments/suggestions.

But let me respond to your suggestions. First of all, I think I should emphasize that the current model is a proof of concept of how a network may capture the "information" of repeated environmental changes.

Second, am I correct if I say that you're suggesting to allow more fine grained genome structuring? Such structuring, whether it is operons or splicing, would allow for a much more complex genotype-phenotype mapping. That is indeed a really interesting direction to take this model. It would allow evolution to organize both the genome and the network. Who knows what would result from that?!

Further, by alternative pathways I assume you mean that different expression patterns result in the same phenotype. I would think the following would then be an interesting extension. The current model could be expanded with explicit metabolic genes (right now there are only transcription factors) and switching between two sets of expression patterns defined on the metabolic genes (instead of two expression patterns defined on TFs). What do you think?

About the release of my code: it is available on request. Disclaimer: it's mostly in C++, with a bunch of python and gnuplot scripts for some analysis and visualization.

And don't worry about the bugs, I tested lots of stuff (I know the importance of testing, my Master's is in computer science). It wasn't an exhaustive testing framework, but I manually went through a series of test cases. Still, that's no guarantee as we all know.. though the nice thing about simulating evolution is that if you have a serious bug, evolution will exploit it. Often you can "see" that in the results and fix the bug.

Thanks for your comments!
Anton