Poll

PLEASE SEE THE OVERVIEWS OF EACH OF THE IDEAS BELOW, BEFORE YOU VOTE! THANKS!

Numsgil's idea: To make codules of the form "[xmutation_rate] ...protected BPs... [/xmutation_rate]"
2 (20%)
Ericl's idea: To make a new instruction, of the form "number_of_lines_to_protect .protect store"
2 (20%)
Bacillus' original idea: To make mutation immunity have a cost based on the amount of DNA protected and time
3 (30%)
A hybrid algorithm, combining features of 1, 2, or 3 above, such as the MPPI instruction (see the DB3 topic, and please post your idea if it hasn't been mentioned before)
1 (10%)
Bacillus' updated idea: To make mutation protection be implemented as metadata, like in idea 1, and have a cost associated with it too, like idea 3.
0 (0%)
Ikke's DNA comparison idea: To have two or more copies of the DBot's genome, and if the DNA in one mutates, replace it with the DNA from one of it's copies. Check for mutations by comparing the DNA line-for-line.
0 (0%)
Ikke's hash comparison idea: To have two or more copies of the DBot's genome, and if the DNA in one mutates, replace it with the DNA from one of it's copies. Check for mutations by comparing the Hash-values of the different genomes.
0 (0%)
Something totally different (Please post your new idea)
2 (20%)

Total Members Voted: 8

Author Topic: Mutation Protection method- in voting  (Read 14180 times)

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Mutation Protection method- in voting
« Reply #45 on: November 14, 2008, 08:52:32 PM »
Quote from: peterb
Quote from: Numsgil
It's all pretty moot if Eric never shows.  Remember he's the one that ultimately implements things, and he seems to be AWOL.


Is only one person devolping DarwinBots ?

I have some knowledge on programming languages.
Well that is I'll easily pickup such languages often.
Dough I never went deep into them ( these days I get headaches from looking long at code)
Anyway I went from :

MSX assembler / Pascal / QuickBasic / VB6  / VB2003.net / C# (pocketpc) / C2003.net  / Perl (little) / phyton (little) / LSL / vbscrip / VB2008.net

And maybe some more lost track of it a bit.
Dough I'm not a big fan of C languages, takes lots of time to write and read while VB.net is equaly fastand better readable.
Time might be the biggest issue dough.

I hope a project like this is structured / devided ??  >> I'm not sure how it is organised but it might be an idea to put source code in a special forum folder (so people could reply with improved code.. (and discuss their distributed programing efforts).

Eric's the only one developing on the current version, which is written in VB6.  I guess he's moved on to other things, I'll send him an email for the source code at some point.

Other people have worked on a new version in C#, but it's not very far, and I haven't worked on it for a while since I've been busy with work.  The C# version is source controlled, so you can browse it with a web browser.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Mutation Protection method- in voting
« Reply #46 on: November 14, 2008, 09:08:25 PM »
Quote from: jknilinux
10 .flagpreserve store is pretty much the exact same thing as 10 .protect store. I think you're basically saying the same thing as the Ericl and Bacillus hybrid (which became the final draft of the idea), you're saying to make an instruction to protect DNA as opposed to metadata, plus costs. If you read through the posts, you'll see this was bacillus's original idea.

However, the refprotectedbits instruction seems like it might be able to address some of the problems the metadata camp was having with eric's idea- namely, treating the protected DNA as a single object vs. a wad of instructions.

Nums- what do you think?

I don't like having the DNA be able to influence itself like that, even through the stack.  This isn't me speaking as a developer, just as a user.  I prefer mutation rates to be an inherent property of a given bp, instead of inserted mid stream.  DNA being able to influence itself like that is a path that leads to things like DNA manually copying itself during reproduction as with Avida, which is a valid path for ALife in general but not the direction I want to see Darwinbots head in.
« Last Edit: November 14, 2008, 09:08:47 PM by Numsgil »

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
Mutation Protection method- in voting
« Reply #47 on: November 16, 2008, 04:09:49 PM »
Just as a minor afterthought I thought would be worth throwing in, what if protection did not protect against a certain mutation, or over a range of DNA, but a range of values? Don't look into this too far, just a thought I thought worth mentioning.
"They laughed at Columbus, they laughed at Fulton, they laughed at the Wright brothers. But they also laughed at Bozo the Clown."
- Carl Sagan

Offline peterb

  • Bot Destroyer
  • ***
  • Posts: 148
    • View Profile
Mutation Protection method- in voting
« Reply #48 on: November 16, 2008, 06:14:22 PM »
Quote from: Numsgil
Quote from: jknilinux
10 .flagpreserve store is pretty much the exact same thing as 10 .protect store. I think you're basically saying the same thing as the Ericl and Bacillus hybrid (which became the final draft of the idea), you're saying to make an instruction to protect DNA as opposed to metadata, plus costs. If you read through the posts, you'll see this was bacillus's original idea.

However, the refprotectedbits instruction seems like it might be able to address some of the problems the metadata camp was having with eric's idea- namely, treating the protected DNA as a single object vs. a wad of instructions.

Nums- what do you think?

I don't like having the DNA be able to influence itself like that, even through the stack.  This isn't me speaking as a developer, just as a user.  I prefer mutation rates to be an inherent property of a given bp, instead of inserted mid stream.  DNA being able to influence itself like that is a path that leads to things like DNA manually copying itself during reproduction as with Avida, which is a valid path for ALife in general but not the direction I want to see Darwinbots head in.

Perhaprs two ideas why it is nice to have it as a general command.
In nature some DNA parts are more preserved then others, and thats organized whitin the DNA itself (so it 'll be more like nature).
For example people come with various eyecolors dough you see rarely a human with 5 eyes. So beeing able to preserve parts isnt that strange.

On the otherhand it would also be nice to for example have a bot for who you only would which to evolve better eyes.
(then have also something to decide against what DNS errors you want to be protected (valeus / commands / both )


Hmmm VB6.....  

Is conversion to VB.net possible ?  (C# isnt mostly not that much faster, as anyother complete groundup rebuilds.)
It might require tools to convert which I dont have....

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
Mutation Protection method- in voting
« Reply #49 on: November 16, 2008, 09:32:55 PM »
Nums-

You know eric, IRL? Do you know what's going on? Will DB rot and remain at 2.44 until DB3 comes out?

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Mutation Protection method- in voting
« Reply #50 on: November 17, 2008, 10:19:47 PM »
Quote from: peterb
Quote from: Numsgil
Quote from: jknilinux
10 .flagpreserve store is pretty much the exact same thing as 10 .protect store. I think you're basically saying the same thing as the Ericl and Bacillus hybrid (which became the final draft of the idea), you're saying to make an instruction to protect DNA as opposed to metadata, plus costs. If you read through the posts, you'll see this was bacillus's original idea.

However, the refprotectedbits instruction seems like it might be able to address some of the problems the metadata camp was having with eric's idea- namely, treating the protected DNA as a single object vs. a wad of instructions.

Nums- what do you think?

I don't like having the DNA be able to influence itself like that, even through the stack.  This isn't me speaking as a developer, just as a user.  I prefer mutation rates to be an inherent property of a given bp, instead of inserted mid stream.  DNA being able to influence itself like that is a path that leads to things like DNA manually copying itself during reproduction as with Avida, which is a valid path for ALife in general but not the direction I want to see Darwinbots head in.

Perhaprs two ideas why it is nice to have it as a general command.
In nature some DNA parts are more preserved then others, and thats organized whitin the DNA itself (so it 'll be more like nature).
For example people come with various eyecolors dough you see rarely a human with 5 eyes. So beeing able to preserve parts isnt that strange.

It's not the protection of DNA I don't like, it's having the protection be coded inside the DNA.  To me, instead of doing something that protects the next 25 bps, or whatever, those 25 bps would be protected because of some intrinsic property they have.  That way, the command that protects the next 25 bps won't potentially get separated from the 25 bps it's meant to protect.  It's just a gut feeling, I can't totally rationalize it.  I just think that having the DNA be able to influence its physical structure is a slippery slope.  We as coders should be able to, and mutations should be able to, but it should be on a different level.

Quote
Hmmm VB6.....  

Is conversion to VB.net possible ?  (C# isnt mostly not that much faster, as anyother complete groundup rebuilds.)
It might require tools to convert which I dont have....

It's possible, but it might as well be a conversion to C.  VB6 and VB.net are totally different, and it's a non trivial amount of effort to convert Darwinbots to use .net.  Eric was working on it, IIRC, but I don't remember how far he got.

Quote from: jknilinux
Nums-

You know eric, IRL? Do you know what's going on? Will DB rot and remain at 2.44 until DB3 comes out?

Not in person, but I have his email.  I'll shoot him an email and see what's up.
« Last Edit: November 17, 2008, 10:21:12 PM by Numsgil »