Darwinbots Forum

Code center => Suggestions => Topic started by: Numsgil on May 26, 2005, 12:06:07 AM

Title: Centromeres in Chromosomes in DB
Post by: Numsgil on May 26, 2005, 12:06:07 AM
I've been working on this one for a while.  I view it as the first step in making sexual reproduction a more realistic possibility.  By itself it has no real worth (as evidenced by the fact that the number of chromosomes an organism has is in no way reflective of how advanced it is).

The only problem I haven't solved yet is how to create centromeres between chromosomes.  (edit: okay, telomeres and oris I haven't decided are necessary or not yet.)  I'd like to have the process be:The above list is how actual centromeres seem to work.  In any system we come up with, we have to be able to seperate chromosomes paired together (meiosis) and recombine different chromosomes with the same centromere signature.

Real centromeres seem to be somewhat linked with alpha-satellite DNA (long, repeating patterns of Junk DNA).



This is what I was thinking:

Two chromosomes may spontaneously develop a centromere if they have a large area of identical, repeating DNA patterns (an alpha-satellite).  The more repititous and shorter this pattern, the more likely it is to occur.

Something like
add sub 4 > add sub 4 > add sub 4 > add sub 4 > add sub 4 > add sub 4 >
in two seperate chromosomes may spontaneosuly connect with each other and form a centromere.

add add add add add add add add add add add add add add add add add add add add

will almost certainly develop a centromere, and very quickly.

I haven't worked out what kind of function will determine the liklihood yet.

Centromeres will be defined as a number.  Like numbers stick together, unlike numbers don't.

After a centromere has formed, it will stay in that portion of the DNA forever more ( or until it spontaneously dissapears or something, I'm not sure yet).  I'll have to find a way to record it in the DNA but keep it from mutating (that centromere is a physical attachment to the DNA strand, not DNA itself).  If the alpha-satellite DNA disappears, it will continue to have a centromere where it used to be.  (This is the epigenetic aspect).

During reproduction, if a chromosome has more than one centromere, then it will break into different chromsome strands (where the breakage occurs is random), with each centromere forming it's own chromosome.  Then, if a chromosome has a centrome, the chromosome it was attached to has a more or less guarenteed chance of arriving in the opposite cell that it does.  Chromosomes without centromeres have a 50/50 of going into either cell.

That is, if a cell has:

1-1 2-2 3 3, where - is a centromere and numbers are each a seperate chromosome strand, and it reproduces, then the two daughters can look something like:

1-1 2-2 and 1-1 2-2 3 3 3 3

Later, I can add a crossing-over, and other chromosomal 'mutations' between chromosomes.  Crossing over will help keep chromosomes largely similar, and help decrease the liklihood of centromeres forming on a chromosome that already has a centromere.
Title: Centromeres in Chromosomes in DB
Post by: shvarz on June 10, 2005, 01:41:56 PM
OK, let me think about it.  Aside from simulating reality, are you expecting some important role for centromeres?  Are you suggesting that when (and if) chromosomes are implemented, then by defalt they will be separated randomly into off-springs?  That's gonna cause some problems...

Meanwhile, here is an actual scientific paper on centromeres and on their evolution: http://darwinbots.com/centromere%20evolution.pdf (http://darwinbots.com/centromere%20evolution.pdf)   I looked over it briefly, it sounds interesting and not too technical.  Read it yourself or wait till I read it (over weekend?) and summarize.  The best thing about this paper is that the guy that wrote it works next door to me (almost), so I can always go bug him about this stuff :)
Title: Centromeres in Chromosomes in DB
Post by: Numsgil on June 10, 2005, 02:16:01 PM
Quote
OK, let me think about it.  Aside from simulating reality, are you expecting some important role for centromeres?  Are you suggesting that when (and if) chromosomes are implemented, then by defalt they will be separated randomly into off-springs?  That's gonna cause some problems...
Hmm.. you're right.  You need to be abel to ensure that your DNA gets correctly segregated into daugher cells, centromere or no.

Perhaps crossing over is only possible between chromosomes joined by a centromere?  Certainly you can't pair up if you can't find each other.

But there also needs to be some way for two identical copies of the same chromosome to end up in the same cell, or centromere's can't form.  So perhaps some kind of general reproduction related commands:

1.  Copy all chromosomes.
2.  Perform X Crossing over event(s).
3.  Divide into two daughter cells. (spliting DNA copies equally if there are enough copies to do so).
4.  Fuse with another cell (pooling all DNA together).

Our current .repro would be 1 followed by 3.  Just doing 3 results in haploid cells if you were diploid, or seriously messed up or empty cells if you were already haploid.

4 lets you model some organisms like hydras, where one generation is haploid, then another diploid.

So we can let cells mix and match what they want to do.
Title: Centromeres in Chromosomes in DB
Post by: shvarz on June 10, 2005, 03:58:30 PM
I looked over that paper - you don't really need to read it, it actually deals with a very specific phenomenon in which we are not interested right now.  One good thing I learned from there is that the repeatative nature of centromeres is a by-product of that process in which we are not interested.  So, don't get stuck on creating repeats - it will have no functional significance in DBs.

What we need is a flexible way to designate which chromosomes are "the same".  It should be evolvable.  And it should allow many chromosomes to be "the same", not just two.  

One thing that we need to take into account is that our chromosomes recombine before we have sex.  That is we have two chromatides - one from mother and one from father.  But they don't recombine in us.  We pass the recombined version to our kids.  When bacteria have sex, they recombine their own chromosomes with somebody else's chromosome.  The result is immediate.

I think we need to implement only one way.  Two different ways to have sex is one way too many...  (Never thought I'd say this :) )  So I think we need to recombine DNA right before a new baby is born and we need to recombine mother's and father's chromosomes, not two chromosomes in the same organism.  And the mechanism should be in general the same for organisms that are haploid and diploid and polyploid.  It should all work through one general scheme.
Title: Centromeres in Chromosomes in DB
Post by: Numsgil on June 10, 2005, 04:34:16 PM
Here's what I was imagining:

Two cells tie together.  Depending on a macro/micro flag in the options panel:

1.  Micro:

Each cell sets .fuse to a positive number (or perhaps non zero to work well with the macro version below).  The cells then combine into each other, and their DNA mixes.  This only happens if they both set the .fuse flag.

Also, when you reproduce asexually, you have the option to form 2 haploid cells instead of 2 diploid cells (assuming you were diploid).

This way you can model organisms like hydra and some molds, where alternating generations are haploid/diploid.

2.  Macro:

Each cell sets a .sperm flag (which can have the same physical address space as .fuse) to a negative number to accept the other cells sperm, or positive to send sperm.  Sperm being defined as a haploid set of crossed over chromosomes (crossed over from your own diploid set).

When both .sperm sysvars are non zero, the action attempts to occur.  If the correct one negative and one positive event occurs, then the next time the 'female' .repros, the result will be a baby with the father's crossed over DNA mixed with a crossed over set from the mother.


So the 4 reproduction mini commands are just the pieces the larger axexual and sexual reproduction methods are constructed from.
Title: Centromeres in Chromosomes in DB
Post by: shvarz on June 10, 2005, 05:50:05 PM
I don't like micro/macro flag.  The method of reproduction should not be defined in options, it should be a more general mechanism.  It also should be common to all organisms regrdless of ploidy - haploids and polyploids should have the same set of commands.

1. Different methods of reproduction should be exclusive.  We don't want regular reproduction, sperm formation and fusion all happening at the same time.  How is it solved now?  What if a bot stores 50 to repro and to sexrepro during the same cycle?
2. We keep the regular repro.  That's a given.  Just copy your whole DNA as it is into the daughter cell.  This command does not care if you are diploid or haploid or polyploid.  Just simple old copy-paste.
3. We need a way to do meiosis - going from N-ploidy to N/2-ploidy.  Let's not call it sperm formation (after all, it could be an egg formation or just a step in a life cycle). Say we do this by storing a negative value into a .fuse location (splitting is reverse of fusing).  I see two possibilities: a) equal division - energy is shared between two dauther cells or B) the absolute value defines how much energy one of the dauther cells receives.  I like the a) scenario.  The absolute value stored in .fuse actually may serve as a password for fusing back together.  During splitting the chromosomes are crossed over and segregated.  If they have centromeres (no mechanism for that yet), they segregate equally, one for each daughter.  If they don't - randomly.  If there is only one chromosome - one of the daughter cells dies right away (serves her right, souldn't have tried to split).
4. We need a way to do fusion of any two cells, joining all chromosomes together.  I say the cells can fuse if their .fuse values are the same and when they see each other (or when they are within a certain distance of each other, or when they make reciprocal ties of any kind).
5. Points 2,3, and 4 should allow all possible reproduction strategies.  What's the role of sexrepro then?  Do we just ditch it?  Maybe.  Or we can do steps 3 and 4 automatically, without actually forming individual cells - just make the final result of going through these two steps.  I would say ditch it all together.  Or just use .sexrepro the way I described using .fuse
Title: Centromeres in Chromosomes in DB
Post by: Numsgil on June 10, 2005, 06:36:58 PM
1.  Definately agree.  That's what the macro/micro flag in the options panel would set.  Are you modelling macro creatueres (like rats) or micro creatures (like slime molds).  The idea is to make the same mechanics for how the bots operate in both systems fairly close, so micro bots can be ported to a macro world, and vice versa.

3.  I see no reason why we can't do a regular n percent, like .repro uses for meiosis.  Although for this sort of thing 50/50 is probably the best choice...  But using the value as a way to set cells to fuse back together has some interesting possibilities.

Instead of daugher cells with no DNA dying right away, they should just exist without any DNA, like a corpse (but not a corpse).  Other cells can feed from it, (or even implant it with new DNA via viruses or some sort of conjugation...)

4.  Fusing should be done IMO by tieing with the other bot.  I just think ties are the perfect medium for this sort of thing.  It's like the reverse of reproducing.  The tieing is like the reverse of the birth tie.

5.  .sexrepro could be kept as it is now.  Or renamed to something else.  Like what endy proposed. (http://s9.invisionfree.com/DarwinBots_Forum/index.php?showtopic=539).
Title: Centromeres in Chromosomes in DB
Post by: Anonomous Guest Person on June 16, 2005, 10:13:57 AM
As a note, if I recall correctly, you can't give DNA to things without DNA.
Probably to keep corpses/walls dead/immobile.
*Imagines a Necromancer bot, that gives basic genetics to corpses as a form of reproduction*
Ooh, that's a good idea! Add an option (even if it's a silly one) to allow corpses/walls to receive viruses. It'd be a Fantasy DarwinBots. Fireball spell? It's a virus that makes this wall go forward mindlessly shooting everything!
Title: Centromeres in Chromosomes in DB
Post by: Botsareus on June 16, 2005, 12:35:12 PM
:laugh:
Title: Centromeres in Chromosomes in DB
Post by: Endy on June 17, 2005, 03:09:13 AM
I think I remember reading something about viruses (real ones) being able to resurect dead cells on ocasion. Sort of zombie cells brought back to "life" just to reproduce the viruses dna.

Endy B)
Title: Centromeres in Chromosomes in DB
Post by: shvarz on June 17, 2005, 10:54:27 AM
That's BS
Title: Centromeres in Chromosomes in DB
Post by: Ulciscor on June 17, 2005, 11:07:22 AM
I have read that viruses can still use dead cells to replicate but I don't know if that is the same as the cell being brought back to life.  :huh:
Title: Centromeres in Chromosomes in DB
Post by: shvarz on June 17, 2005, 11:28:11 AM
That's BS too
Title: Centromeres in Chromosomes in DB
Post by: Ulciscor on June 17, 2005, 07:50:35 PM
Lol oh well thanks for setting that straight
Title: Centromeres in Chromosomes in DB
Post by: Ulciscor on June 17, 2005, 08:02:15 PM
http://www.physicsforums.com/archive/topic...ke_zombie_cells (http://www.physicsforums.com/archive/topic/t-54269_Viruses_can_make_zombie_cells)

What do you make of this? I think I can guess lol.
Title: Centromeres in Chromosomes in DB
Post by: shvarz on June 17, 2005, 08:29:04 PM
Well, I can actually see the point that Scientific American was trying to make, but the guy who wrote the post did not.  If DNA is artificially removed from the cell, then the cell is not "dead" right away.  It will surely be so in some time and once it dies no virus would be able to re-animate it.

Can you drive a car that has no engine?  No.  What if the car was running on a highway and suddenly something took the engine out.  Then you could (theoretically) jump in and "drive" it until it stops.  That's a pretty good analogy to what happens when a virus infects a cell with no DNA.
Title: Centromeres in Chromosomes in DB
Post by: Endy on June 19, 2005, 12:09:21 AM
See your point.

Although the difference between viral and DB dna is currently nonexistant.
The only real limit on size(and complexity) is the sheer time constraints on viral creation.

Endy B)
Title: Centromeres in Chromosomes in DB
Post by: shvarz on June 21, 2005, 01:35:54 AM
Coming back to centromeres:

Right now I don't see any reason to implement centromeres.  I mean "We can, but why?"  

Centromeres bring similar chromosomes together, allowing two important functions:
1. Homologous chromosomes can recombine
2. Sister chromatids are separated during division, allowing both daughter cells to have a complete set of chromosomes.

As far as I see it, we can do both with the "local homology" system that we already discussed.  It can be used first to find similar chromosomes (by simply starting from the beginning) and then later to allow recombination in homologous regions.

These two processes will allow "conserved structure" of a genome and at the same time will allow certain "fluidity" in this structure.  Chromosomes can be created, they can change length, they can swap large regions and so on...  All through recombination and chromosome division.

The only thing that is not possible with this system is breaking of a chromosome into two parts.  I don't even think it is that important, but if people want it, we can always add a new kind of "mutation".

Another downside to this system is that it is "imposed from above" - bots don't evolve it - it is just there for them to use.  But I think even the ability to use it in a meaningful way is already a challenge for evolution.  So I think it is a minor downside.