Code center > Suggestions
Mutation Protection method- in voting
bacillus:
--- Quote from: jknilinux ---Could you explain how trying to protect the DNA more than once would cause the Mutation protection instructions to be overwritten? Also, how would you combine enzymatic protection with metadata?
--- End quote ---
Step One-Select code to be protected, and amount to be allocated to protected gene(as a ratio of total allocated protection), mutations to protect against (not necessary, just thought some mutations should be harder to prevent than others.)
[protect rate=60, type=delta]
...
[/protect]
Step Two-Protect, amount is spread in a ratio between all genes protected
100 .mkenzyme store
an alternative way to go is to share evenly, and define a threshold after which a gene will stop being protected. Enzymes will not stop mutations, but *for example) 50 units stop 50%, 100 units 70%, 200 units 80% etc.
Cyberduke:
Unfortunately I know very little about biology and I am new to darwinbots itself, but that’s never stopped me putting my 0.02 cents in before.
What is this feature trying to achieve? Is it protecting sub sets of hand coded DNA from changing in an otherwise mutating bot?
Or is it indented to allow a bot to evolve protection for vital areas of code mutating too often without needing to lower the simulation wide mutation rate?
If it’s the second, you might not want a bot to be able to evolve cost free protection since; it may appear to be slightly beneficial in the short term, stabilising a population by creating a larger proportion of fully functioning bots, especially if the simulation wide mutation rate is high, but might be damaging to the species in the long term, by drastically slowing its evolution.
Correct me if I am wrong but it feels like something that could accumulate and might not show its true detriment until many generations later by which time (by its very nature) would then be very hard for the bot to undo. If it had a cost from the start then each step would have to show real and immediate benefits in order for it to persist; only I am not sure that with costs attached it would show any tangible benefits in the short term, the benefits of this kind of targeted protection sound like long-term ones? Not forgetting that changes to things like feeding and reproduction will most likely become evolutionary dead-ends in very short order anyway.
jknilinux:
--- Quote from: Peter ---
--- Quote from: jknilinux ---... at the top of the genome would halve the mutation rate for the entire bot. So, maybe I'm just not understanding your argument.
--- End quote ---
I had three different suggestions. Maybe not formulated perfectly in the earlier post. The second one could be implented anyway, it isn't too difficult, I think .
1. What Eric said.
2. Decrease mutations during reproduction by storing a negative number in .mrepro.(Original Numsgil idea)
3. Or maybe creating some kind of dna-fixing substance. Something that uses itself by undoing mutations. Atleast that the bots could gain a possibility to survive in high mutation enviroments.(I copy/paste it from my original post )
--- End quote ---
Ok, now I see what you mean. I should've known that being tired would make me miss something you said!
Anyway, putting a negative number in .mrepro would just decrease the entire bots' mutation rate. What we were suggesting is finer-grained control, so that a bot can protect it's most important and fragile DNA (like living organisms do- when was the last time you heard of a dog that was born with a broken Krebs cycle? And, when was the last time you heard of a dog with an extra toe? One's much more common than the other, implying specific mutation protection for the important genes.)
Also, by having something that uses itself by undoing mutations, do you mean bacillus' idea of an enzyme that has a cost associated with it? You don't actually mean deleting the instruction from the offspring when used by the parent, do you?
And correct me if I'm wrong, but numsgil wanted codules, not negative .mrepro instructions. In fact, he thinks there shouldn't be any metadata in the DNA at all. Look at the link to the DB3 topic in the first post above.
---
Cyberduke:
Both are reasons for the Mutation Protection. We know living organisms protect their DNA. For example, when was the last time you heard of a dog that was born with a broken Krebs cycle? And, when was the last time you heard of a dog with an extra toe? One's much more common than the other, implying specific mutation protection for the important genes.
If a bot is in a difficult environment, then it would be better for it to have a good chance of mutating, so it can evolve. But once it has reached a local maxima, where most further mutations will harm it rather than help it, then it should protect it's DNA from further mutation, instead of constantly breaking itself. Once the environment changes, it would be best for it to re-allow mutation, to find the local maxima once more.
So, I don't think that cost-free mutation protection would slow evolution, since the bots with no-mutations-allowed will die out in a new environment, while the ones that allow mutations will probably survive.
So, I'm thinking mutating does have a short-term benefit.
However, I am starting to like the cost idea too. Maybe free mutation protection will be a problem.
So, anyway, I'm guessing you voted for bacillus' original idea?
Numsgil:
--- Quote from: jknilinux ---Both are reasons for the Mutation Protection. We know living organisms protect their DNA. For example, when was the last time you heard of a dog that was born with a broken Krebs cycle? And, when was the last time you heard of a dog with an extra toe? One's much more common than the other, implying specific mutation protection for the important genes.
--- End quote ---
This is not because core metabolic pathways are protected. It's because almost all mutations in them break the organism so bad that they never get born in the first place. Or at least, that's the central theory to modern evolutionary thought. Since about the mid 80s there's been some thought about organisms directing their own mutations somewhat in response to evolutionary pressure. So this feature lives only to please whoever wants it, not to satisfy realism.
Peter:
--- Quote from: jknilinux ---Anyway, putting a negative number in .mrepro would just decrease the entire bots' mutation rate. What we were suggesting is finer-grained control, so that a bot can protect it's most important and fragile...
--- End quote ---
Yes, I was putting in a more global suggestion inside it. If bots are save and sound they can lower the whole mutation rate. If they are endangered they can higher the mutation by making it a positive number. That together with some protected genes can come to steared mutation of parts.
--- Quote ---DNA (like living organisms do- when was the last time you heard of a dog that was born with a broken Krebs cycle? And, when was the last time you heard of a dog with an extra toe? One's much more common than the other, implying specific mutation protection for the important genes.)
--- End quote ---
--- Quote ---Cyberduke:
Both are reasons for the Mutation Protection. We know living organisms protect their DNA. For example, when was the last time you heard of a dog that was born with a broken Krebs cycle? And, when was the last time you heard of a dog with an extra toe? One's much more common than the other, implying specific mutation protection for the important genes.
--- End quote ---
Used copy/paste huh.
--- Quote ---Also, by having something that uses itself by undoing mutations, do you mean bacillus' idea of an enzyme that has a cost associated with it? You don't actually mean deleting the instruction from the offspring when used by the parent, do you?
--- End quote ---
Yes, that could be. Some ''enzyme'' that undoes mutations. I could have missed it, but I thought bacillus idea wasn't really the same. I'd go for Eric idea for this one anyway.
--- Quote ---And correct me if I'm wrong, but numsgil wanted codules, not negative .mrepro instructions. In fact, he thinks there shouldn't be any metadata in the DNA at all. Look at the link to the DB3 topic in the first post above.
--- End quote ---
Well in the other topic he made a quick notion of it. So that is how it became Numsgil idea.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version