Author Topic: Different means of reproduction  (Read 3355 times)

Offline Gantolandon

  • Bot Neophyte
  • *
  • Posts: 8
    • View Profile
Different means of reproduction
« on: October 18, 2008, 12:21:26 PM »
It just hit me when observing my first zerobot simulation... The standard means of reproducing a bot would require something like that:

Code: [Select]
50 .repro store
Of course with proper condition, because we don't want our bot self-destruct. What is the chance of something like that evolving in zerobot simulation? Given the fact that storing something in .repro requires having a 300 next to store, they are pretty small. There are, of course, many more possible combinations, for example:

Code: [Select]
15 20 15 mult store
Or even:

Code: [Select]
46 0 0 dist store
(which requires the bot to be in a certain circle to properly reproduce)

Well, it's certainly easier to evolve, but it doesn't look very stable. The longer is the code, the less stable should it be...

So my question is: how do your evolved bots reproduce? How do they manage to give their offspring enough energy to survive and not to kill themselves during the process? Do they use .sexrepro or .mrepro? And how stable are they?
« Last Edit: October 18, 2008, 12:25:47 PM by Gantolandon »

Offline Peter

  • Bot God
  • *****
  • Posts: 1177
    • View Profile
Different means of reproduction
« Reply #1 on: October 18, 2008, 01:31:36 PM »
Well, my findings

For reproducing.
Storing random values in random memory locations.
Storing a value in random memory loactions.

I've not seen a solid value into just .repro. I've seen it with shoot. Maybe the bots in my sim have more to win by contineling storing something in shoot then something in .repro.
Oh my god, who the hell cares.

Offline Gantolandon

  • Bot Neophyte
  • *
  • Posts: 8
    • View Profile
Different means of reproduction
« Reply #2 on: October 18, 2008, 01:39:10 PM »
Quote from: Peter
Well, my findings

For reproducing.
Storing random values in random memory locations.
Storing a value in random memory loactions.

I've not seen a solid value into just .repro. I've seen it with shoot. Maybe the bots in my sim have more to win by contineling storing something in shoot then something in .repro.

I think it's because it's pretty easy to write something in .shoot, as it's number is small. The largest number used in evolution simulation I have seen were 56 - and .repro is under 300.
« Last Edit: October 18, 2008, 01:40:23 PM by Gantolandon »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Different means of reproduction
« Reply #3 on: October 19, 2008, 04:21:11 PM »
I have seen some bots do funny math to get to 300 for .repro.  300 is actually a pretty easy number to evolve since it has so many factors (2, 3, 4, 5, 6, 10).  But the random values in random places seems to be the popular choice.  It causes all sorts of actions, from virus production to reproduction to limited mobility.

Offline Welwordion

  • Bot Destroyer
  • ***
  • Posts: 325
    • View Profile
Different means of reproduction
« Reply #4 on: October 23, 2008, 11:37:33 AM »
Well I think the greatest problem lies in the conditional part, if a bot really evolves a store only to 300 most of the times their will be no condition to limit this the bots gets cancerous and kills himself that way or altleast freezes the sim with his numbers.
A random value is advantegeous as he limits the frequency of reproduction trough means of probability.