Author Topic: intelligent mutations  (Read 3288 times)

Offline Welwordion

  • Bot Destroyer
  • ***
  • Posts: 325
    • View Profile
intelligent mutations
« on: May 03, 2006, 06:07:47 PM »
It seems to me that the way mutations apply to Dna are central to the succesfullness of Evosims.
That why I think it might be useful to highlight certain Dna with a higer mutation rates.
For example the value that is stored  could be made more variable then they klocation that the value is stored into. It might be even nice to forbid mutation on certain Dna you want to keep.
Basically its what I always said give mutation rates the possibility to be individualized for every piece of Dna to a certain degree.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
intelligent mutations
« Reply #1 on: May 04, 2006, 12:08:27 AM »
I agree in theory.  The implementation has the prospect of getting messy though.  The most elegant solution is to apply mutation multipliers that bots can modify to codules (when they get implemented).  That doesn't really support super fine modifications though.

Offline abyaly

  • Bot Destroyer
  • ***
  • Posts: 363
    • View Profile
intelligent mutations
« Reply #2 on: May 04, 2006, 12:43:09 AM »
If a bot had a var that let it know the length of a certian gene, you could rig something up that sorta does this.
Just have 3 or so suicide genes that regulate each other's lengths and those of the "protected" genes. Of course, the 'protected' genes could still change through evolution, but they completely butchering them would cause suicide.
Lancre operated on the feudal system, which was to say, everyone feuded all
the time and handed on the fight to their descendants.
        -- (Terry Pratchett, Carpe Jugulum)

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
intelligent mutations
« Reply #3 on: May 04, 2006, 01:01:46 AM »
I have been playing around with per BP mutation rates encoded in the DNA as a means of simulating the degenerate nature of biological DNA codons.  Basically, the idea is to make each and every individual location in a bot's genome - every sysvar, operator, number, flow control statement, etc. degenerate in that there are multiple underlying representations for each, each with say, 64 different levels of mutation probabilities from super stable to super high mutation propbability.   These mutation probabilities would be visable to selection.  

The idea is to maintain say, a vector of 8 high order bits alongside each BP which would influence the mutation probability at that location in the genome and to store that with the DNA, syntax TBD.  Right now I'm just focused on the point mutation at that loci, but the idea could be extended to include different probability levels for different mutations types such as the probability of a BP sequence copy error being initated at that loci.

Just an idea with some proto-code behind it at this stage.  No plans for any near term release.

Some discussion on this topic is here.
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
intelligent mutations
« Reply #4 on: May 04, 2006, 12:49:37 PM »
The main difficulty I see is that DNA files are generally passed from person to person as text instead of as the machine code the program converts it into, which makes per BP things somewhat.... messy.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
intelligent mutations
« Reply #5 on: May 04, 2006, 01:12:33 PM »
Quote from: Numsgil
The main difficulty I see is that DNA files are generally passed from person to person as text instead of as the machine code the program converts it into, which makes per BP things somewhat.... messy.
Yup.  Right now, I store it in a separate, optional section at the bottom of the file (after the end statement) as a sequence of text values which the code (will at some point) then maps to the base pairs in memory.  If it's missing, the code assumes all zeros (no mutation probability impact - same behaviour as current versions).
Many beers....