Author Topic: my first successful evosim  (Read 7704 times)

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
my first successful evosim
« on: January 11, 2010, 10:29:11 PM »
I finally got a stable evosim evolving interesting behavior! YAY!

So, I started out with Seasnake and Alga_Branchious in two simulations with slightly different settings, teleporting only heterotrophs between them. Sim size for both is 1, but I guessed that having two small interlinked sims would provide the same variability in environment that 1 large sim would. One sim has 30 bots and 100 algae, the other has 20 bots and 100 algae. The average seasnake has 50 mutations, the algae in one sim have 200 and the other 35. 180 kCycles total, but one sim logs 77 Mcycles because there were no bots in it for a while.

Seasnake is now a single-celled critter which ties to its prey to hold it in place while it shoots at it... Not too unusual. In some cases I saw unusual behaviours, such as forming trails following each other, but I suspect that was more of an accidental breakage of its DNA than a novel behaviour. It also lost that ability, so oh well.
They have also developed stable conspec recognition, where if they see each other they turn and continue in a new direction. It might be partly because of these two monstrous seasnakes that constantly shoot, killing any nearby seasnakes and algae. They constantly shoot too. That's about it though. However, the truly amazing behaviours started evolving from the algae.

First, they started to constantly move sideways, forming clumps of algae moving across the screen. Others have formed stationary chains, with only one bot (the top one) capable of reproducing, with its parents in a line below it. These two behaviours are currently present in the algae with 200 mutations.

The algae with 35 mutations avg., on the other hand, stay in place spinning constantly. If a seasnake ties to it, it starts moving diagonally until it breaks the tie, then stops moving once it's free from the seasnake. These algae are more scattered because of this movement, so the seasnakes are finding it harder to catch them.

It almost seems like I have a stable red queen's race going on, but maybe it's just that the bots are breaking reaaally slowly.

Randomly selected seasnake:

Code: [Select]
''''''''''''''''''''''''  Gene:  1 Begins at position  1  '''''''''''''''''''''''
 start
 0 .fixpos store
 0 .focuseye store
 clearbool
 *.robage 0 =
 *971 0 =
 and
 -30000 29176 rnd 51 dec
 *.robage 0 =
 *0 0 !=
 and
 *0 dec
 51 store
 clearbool
 300 .eye5width store
 336 .reffixed store
 336 .tmemloc store
 *51 .readtie store
 *51 .tienum store
 *51 0 store
 *.out3 .tout1 inc
 *51 *.out1 store
 451 .tout3 store
 *51 .out2 store
 *.xpos *52 sub 53 store
 *.ypos *53 sub 55 store
 453 .tieloc store
 1000 .tieval store
 clearbool
 *.out1 0 =
 *.out1 3 =
 or
 *51 .out3 store
 *51 .tout1 inc
 0 .eye5dir store
 *.out1 1 =
 *.out1 2 =
 or
 *.tin1 .out7 store
 *.tin1 .tout1 store
 *.tin6 .tout6 store
 *.tin7 .tout7 store
 *.out1 1 =
 *.out1 -6 =
 or
 *.tin2 1 sub 515 store
 *.tin2 1 sub .tout2 store
 clearbool
 *.robage 1 !%=
 *51 .tie store
 clearbool
 *.robage 2 =
 *.tin1 *.out2 <=
 and
 .deltie inc
 100 .up store
 clearbool
 *.eye5 0 =
 *.out1 0 =
 *.out1 3 =
 or
 and
 10 .up store
 20 rnd 10 sub .aimright store
 clearbool
 *.eye5 0 >=
 *.memval *.dnalen =
 and
 *.out1 1 !=
 and
 *.out1 2 !=
 and
 *.in2 *.out2 >
 and
 *.in1 2 !=
 and
 *.in1 3 !=
 and
 *.in2 *.out3 !=
 clearbool
 *.robage 2 >
 and
 *50 8 =
 and
 *.refxpos *.refypos angle .setaim store
 *.refveldx *.body mult 1000 div .dx store
 *.refvelup 11 add .up store
 clearbool
 *.eye5 0 >
 *.memval *.dnalen !=
 and
 *.robage 2 >
 and
 *.refxpos *.refypos angle .setaim store
 *.refveldx 16 store
 *.refvelup 10 add .up store
 %=
 .eye5width store
 clearbool
 *.out1 3 =
 *.out3 *.in3 =
 *.out3 dupbool
 !=
 *.in3 0 !=
 and
 *.in2 *51 <=
 and
 or
 and
 *50 0 =
 and
 *.setaim 314 1 clear mult 157 sub add .setaim store
 0 .eye5width dec
 clearbool
 *.body 100 mult *.nrg 9 mult <
 100 .strbody store
 *357 100 mult *.nrg 11 ceil >
 100 .fdbody store
 clearbool
 *.waste 100 >
 *.waste .shootval store
 314 901 7 .dx store
 store
 clearbool
 *.nrg 5000 >
 *.slime 100 <
 and
 10 .mkslime store
 *.nrg 5000 >
 *.shell 1000 <
 and
 10 .mkshell store
 clearbool
 *.thisgene 1 !=
 1 .delgene store
 *.thisgene 1 =
 *325 4 >
 dropbool
 2 .delgene store
 clearbool
 *.numties 0 =
 0 .out1 store
 *.numties 1 =
 *.tmemval *.dnalen =
 and
 *.out1 =
 0 *.out1 =
 2 or
 and
 *.tiepres *51 =
 and
 1 .out1 store
 *.numties 2 =
 *50 0 =
 and
 *.tmemval *.dnalen =
 and
 *.out1 3 =
 *.out1 1 =
 or
 and
 2 .out1 store
 *.numties 1 =
 *.robage 2 >
 and
 *.out1 0 =
 *.tiepres *49 !=
 and
 *.out1 2 =
 *.trefxpos 0 =
 and
 or
 and
 3 .out1 store
 clearbool
 *.numties 2 >
 *.out1 3 =
 *.numties 1 >
 and
 or
 *.out1 1 =
 *.numties 1 >
 or
 or
 *.out1 0 =
 *.numties 0 >
 and
 or
 *.numties 1 =
 *.out1 1 !=
 *.out1 3 !=
 and
 and
 or
 *.numties 1 !=
 *.out1 1 =
 *.tiepres *51 and
 and
 or
 *.numties 1 =
 *.out1 2 =
 and
 or
 *.numties 1 =
 *.out1 3 =
 *72 *.tiepres and
 =
 and
 or
 *.out1 3 =
 =
 3 *.tin3 and
 or
 *.tmemval 0 !=
 *.tmemval and
 !=
 *.dnalen or
 *.tiepres .deltie store
 clearbool
 *.out1 0 %=
 *.out1 3 =
 or
 *.eye5 0 >
 and
 *.memval *.dnalen =
 and
 *.in3 *.out2 >
 dropbool
 *.in1 -9 =
 *.in1 1 =
 *.refmulti 0 !=
 and
 or
 and
 *.in3 -35 *.out3 !=
 and
 *51 .tie store
 clearbool
 *.out1 1 =
 *.out1 2 =
 or
 *.tin1 *.out3 =
 and
 *.trefxpos *.trefypos angle .setaim store
 *.trefup .up store
 *.trefdn .dn store
 clearbool
 *.tielen 100 >
 *.out1 1 =
 *.out1 2 =
 or
 and
 *.up 10 add .up store
 clearbool
 *.out1 3 !=
 *.trefvelyoursx *.velsx sub abs 10 >
 and
 *.velsx -1 mult .sx store
 clearbool
 *.tout10 -50 <
 *.tielen 0 !=
 not
 *.out1 1 =
 *.out1 2 =
 or
 and
 *.dn 20 add .dn store
 clearbool
 *.multi 0 >
 *.out1 1 =
 *.out1 2 =
 or
 and
 *51 .tienum store
 -1 .fixang store
 25 .fixlen store
 100 .stifftie store
 xor
 *.out1 1 =
 628 .eye5dir store
 628 .eye5width store
 *.out1 2 =
 *51 2 mod 628 mult -314 add 628 *.robage 2 mod mult add .eye5dir store
 200 .eye5width store
 *.out1 3 =
 *.out1 0 =
 or
 0 .eye5dir store
 clearbool
 0 .tout6 store
 0 .tout7 store
 *.eye5 0 =
 *.tin6 *.tin7 dist 1000 <
 and
 *.tin6 .tout6 store
 *.tin7 .tout7 store
 *.eye5 0 >
 *.memval *.dnalen *.in3 and
 !=
 *.out3 !=
 and
 *.reftype 0 =
 and
 *.refxpos .tout6 store
 *.refypos .tout7 store
 *.shootval *.out1 3 =
 100 .shoot store
 clearbool
 *392 0 !=
 *.out1 3 !=
 and
 *.tout6 *54 2 mult sub .tout6 store
 *.tout7 *55 2 mult sub .tout7 store
 *.tout6 *.tout7 angle 1256 mod 1256 add *.aim sub .eye5dir store
 35 .tieang1 store
 clearbool
 *.eye5 !=
 *.dnalen *.memval >
 10 and
 *.out3 !=
 and
 *.eye5dir -1 mod .aimshoot store
 -6 .shoot store
 *.eye5 20 <
 1 .shootval store
 *.eye5 20 >=
 16 .shootval store
 clearbool
 *.eye5 0 =
 *.refxpos 0 !=
 and
 *.memval *.dnalen !=
 and
 *.in2 *.out3 !=
 and
 *.refxpos *.refypos angle -1 mult .aimshoot store
 -6 .shoot store
 17 .shootval store
 clearbool
 *51 .tienum store
 50 .sharenrg store
 50 .shareshell store
 50 .shareslime store
 100 clearbool
 store
 831 *50 5 =
 *.setaim 628 add .setaim store
 *50 0 >
 50 dec
 clearbool
 *.nrg 5000 >=
 *.body 500 >=
 and
 *.out1 0 !%=
 *.out1 1 =
 or
 and
 50 .repro store
 *.setaim 628 add .setaim store
 5 50 store
 clearbool
 *.tieang3 *51 454 *51 !=
 store
 *51 .tienum store
 clearbool
 *.xpos 52 store
 *.ypos 53 store
 stop
''''''''''''''''''''''''  Gene:  1 Ends at position  936  '''''''''''''''''''''''

constant movement algae:

Code: [Select]
~ 12 -3 0 1 0 0 0 0 *69 floor 0 ~=
 0 0 0 and
 0 0 6 0 and
 0 >=
 false

''''''''''''''''''''''''  Gene:  1 Begins at position  26  '''''''''''''''''''''''
 start
 *-71 975 ++ 1000 102 *972 store
 sub false
 store

''''''''''''''''''''''''  Gene:  1 Ends at position  36  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  2 Begins at position  37  '''''''''''''''''''''''
 cond

''''''''''''''''''''''''  Gene:  2 Ends at position  37  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  3 Begins at position  38  '''''''''''''''''''''''
 cond
 3 start
 1000 rnd 972 store
 store

''''''''''''''''''''''''  Gene:  3 Ends at position  45  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  4 Begins at position  46  '''''''''''''''''''''''
 cond
 *.robage 3 =
 store
 =
 sgn *.tin1 ceil *.tin2 *971 drop !=
 inc
 *102 !=
 start
 add store

''''''''''''''''''''''''  Gene:  4 Ends at position  64  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  5 Begins at position  65  '''''''''''''''''''''''
 cond
 stop
''''''''''''''''''''''''  Gene:  5 Ends at position  66  '''''''''''''''''''''''
 inc
 50 0 mult ~=
 =

''''''''''''''''''''''''  Gene:  6 Begins at position  73  '''''''''''''''''''''''
 else
 38 *.eye5 *106
''''''''''''''''''''''''  Gene:  6 Ends at position  76  '''''''''''''''''''''''
''''''''''''''''''''''''  Gene:  7 Begins at position  77  '''''''''''''''''''''''
 start
 floor *991
''''''''''''''''''''''''  Gene:  7 Ends at position  79  '''''''''''''''''''''''
''''''''''''''''''''''''  Gene:  8 Begins at position  80  '''''''''''''''''''''''
 start
 =
 >> *102 *.in4
''''''''''''''''''''''''  Gene:  8 Ends at position  84  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  9 Begins at position  85  '''''''''''''''''''''''
 cond
 *.numties 0 <
 *971 5 =
 start
 0 215 %=
 *972 .out1 store
 *971 .tout2 store
 stop
''''''''''''''''''''''''  Gene:  9 Ends at position  102  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  10 Begins at position  103  '''''''''''''''''''''''
 cond
 0 store
 1 - >=
 stop
''''''''''''''''''''''''  Gene:  10 Ends at position  109  '''''''''''''''''''''''
 sub 10 mult *971 .stifftie store
 .setaim store

''''''''''''''''''''''''  Gene:  11 Begins at position  118  '''''''''''''''''''''''
 start

''''''''''''''''''''''''  Gene:  11 Ends at position  118  '''''''''''''''''''''''
''''''''''''''''''''''''  Gene:  12 Begins at position  119  '''''''''''''''''''''''
 start
 *.multi 1
''''''''''''''''''''''''  Gene:  12 Ends at position  121  '''''''''''''''''''''''
''''''''''''''''''''''''  Gene:  13 Begins at position  122  '''''''''''''''''''''''
 else
 =
 *96
''''''''''''''''''''''''  Gene:  13 Ends at position  124  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  14 Begins at position  125  '''''''''''''''''''''''
 cond
 add 300 >
 inc
 -504 1 swap .fixpos store
 start
 *971 *.nrg 98 <=

''''''''''''''''''''''''  Gene:  14 Ends at position  139  '''''''''''''''''''''''
''''''''''''''''''''''''  Gene:  15 Begins at position  140  '''''''''''''''''''''''
 start
 *.xpos 973 store
 store
 974 *.ypos 314 .aimleft dec
 *971 10 mult -1 mult sub .repro store
 =

''''''''''''''''''''''''  Gene:  15 Ends at position  158  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  16 Begins at position  159  '''''''''''''''''''''''
 cond
 *1082
''''''''''''''''''''''''  Gene:  16 Ends at position  160  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  17 Begins at position  161  '''''''''''''''''''''''
 cond
 *.numties 105 14 *.multi dec
 0 angle << start
 *973 *974 angle .setaim store
 dec
 -3 972
''''''''''''''''''''''''  Gene:  17 Ends at position  178  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  18 Begins at position  179  '''''''''''''''''''''''
 cond
 stop
''''''''''''''''''''''''  Gene:  18 Ends at position  180  '''''''''''''''''''''''
 store
 mult *306 >
 and
 =
 *.thisgene mult 312 mult 1000 <
 *.nrg store
 stop

''''''''''''''''''''''''  Gene:  19 Begins at position  196  '''''''''''''''''''''''
 cond
 *971 100 .strbody store
 stop
''''''''''''''''''''''''  Gene:  19 Ends at position  201  '''''''''''''''''''''''


Algae that escape when tied:

Code: [Select]
- 0 add 0 0 0 0 0 0 0 8 0 - 0 0 0 0 0 0 0 0 and
 0 0 0 0 0 0
''''''''''''''''''''''''  Gene:  1 Begins at position  29  '''''''''''''''''''''''
 cond
 *.robage *971 !~=
 1 0 971 store
 1000 rnd 975 store
 1 .deltie store
 =
 2 *.robage
''''''''''''''''''''''''  Gene:  1 Ends at position  46  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  2 Begins at position  47  '''''''''''''''''''''''
 cond
 stop
''''''''''''''''''''''''  Gene:  2 Ends at position  48  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  3 Begins at position  49  '''''''''''''''''''''''
 start
 971 div 4 *971 dec
 sub .xpos store
 *972 102 store
 stop
''''''''''''''''''''''''  Gene:  3 Ends at position  61  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  4 Begins at position  62  '''''''''''''''''''''''
 cond
 *.robage 3 =
 start
 1000 rnd 972 store
 *971 1 swap 107 store
 *.robage
''''''''''''''''''''''''  Gene:  4 Ends at position  76  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  5 Begins at position  77  '''''''''''''''''''''''
 cond
 stop
''''''''''''''''''''''''  Gene:  5 Ends at position  78  '''''''''''''''''''''''
 3 =
 *971 5 =
 *.tin1 *102 !=
 *971 21 sub *.tin2 !=

''''''''''''''''''''''''  Gene:  6 Begins at position  92  '''''''''''''''''''''''
 start
 1 .deltie store
 stop
''''''''''''''''''''''''  Gene:  6 Ends at position  96  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  7 Begins at position  97  '''''''''''''''''''''''
 cond
 *.robage 50 >
 *.refage 50 >
 *.multi 0 =
 *.in1 *106 =
 *.in2 0 =
 *.eye5 50 >
 *.in3 *975 =
 *.in4 *102 =
 start
 1 .tie store
 stop
''''''''''''''''''''''''  Gene:  7 Ends at position  126  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  8 Begins at position  127  '''''''''''''''''''''''
 cond
 *.numties 0 =
 *971 5 !=
 start
 0 .fixpos store

''''''''''''''''''''''''  Gene:  8 Ends at position  137  '''''''''''''''''''''''
''''''''''''''''''''''''  Gene:  9 Begins at position  138  '''''''''''''''''''''''
 start
 *971 .out1 store
 *975 div store
 *993 .out4 store
 *972 .tout1 store
 *971 .tout2 store
 stop
''''''''''''''''''''''''  Gene:  9 Ends at position  154  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  10 Begins at position  155  '''''''''''''''''''''''
 cond
 *.numties 0 =
 start
 0 104 store
 0 0 *.multi *0
''''''''''''''''''''''''  Gene:  10 Ends at position  166  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  11 Begins at position  167  '''''''''''''''''''''''
 cond
 stop
''''''''''''''''''''''''  Gene:  11 Ends at position  168  '''''''''''''''''''''''
 store
 1 =

''''''''''''''''''''''''  Gene:  12 Begins at position  172  '''''''''''''''''''''''
 start
 *.tiepres .tienum inc
 sub 10 mult *.mkshell 20 *971 .sharenrg store
 *971 200 mult .fixlen store
 100 .stifftie store
 314 .setaim store
 100 .up store
 stop
''''''''''''''''''''''''  Gene:  12 Ends at position  198  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  13 Begins at position  199  '''''''''''''''''''''''
 cond
 *.multi 1 =
 *.robage 0 inc
 1 104 start
 store
 stop
''''''''''''''''''''''''  Gene:  13 Ends at position  210  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  14 Begins at position  211  '''''''''''''''''''''''
 cond
 *.multi 1 =
 *103 287 rnd *.robage <=
 start
 1 .fixpos store
 stop
''''''''''''''''''''''''  Gene:  14 Ends at position  224  '''''''''''''''''''''''
 add *.fixed =
 *105 3 <
 *971 1000 mult *.nrg <
 *971 100 mult *.body <

''''''''''''''''''''''''  Gene:  15 Begins at position  241  '''''''''''''''''''''''
 start
 *.xpos 973 store
 dup *.ypos 974 store
 314 .aimleft store
 *971 10 mult *971 2 mult sub .repro store
 105 inc
 stop
''''''''''''''''''''''''  Gene:  15 Ends at position  263  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  16 Begins at position  264  '''''''''''''''''''''''
 cond
 *.multi 0 =
 *.numties =
 *971 5 !=
 start
 & *974 angle .setaim store
 .up store
 stop
''''''''''''''''''''''''  Gene:  16 Ends at position  281  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  17 Begins at position  282  '''''''''''''''''''''''
 cond
 << *971 100 mult *.body <
 start
 100 store
 stop
''''''''''''''''''''''''  Gene:  17 Ends at position  292  '''''''''''''''''''''''

''''''''''''''''''''''''  Gene:  18 Begins at position  293  '''''''''''''''''''''''
 cond
 1000 dup *.nrg <
 *971 100 mult *.body >
 start
 100 .strbody store
 stop
''''''''''''''''''''''''  Gene:  18 Ends at position  307  '''''''''''''''''''''''

*Edit: All the stationary column-forming algae died. looked cool for a while though.

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
my first successful evosim
« Reply #1 on: January 11, 2010, 10:54:31 PM »
Hurrah, multisim evolution works once again!
"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 jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
my first successful evosim
« Reply #2 on: January 11, 2010, 11:09:39 PM »
Pretty much the best way to go!

So, the seasnakes evolved a new subspecies, no conspec, move very slowly shooting sideways constantly instead of ahead, but switch to shooting forward if they see an algae and follow it. Some seasnakes seem to spin around the algae instead of shooting straight at it...

Oh, which reminds me, how do we set up a cluster of PCs linked by ethernet to transfer between sims on multiple computers? I think there was a topic on it somewhere, but I don't know where.

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
my first successful evosim
« Reply #3 on: January 11, 2010, 11:18:11 PM »
That would be cool. Just mixing a whole bunch of different species together in a smorgasbord of different environments, and seeing what crawls out of the primordial oozes.

EDIT=> Out of curiosity, what differences were there in the original sims?
« Last Edit: January 11, 2010, 11:45:09 PM by bacillus »
"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 jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
my first successful evosim
« Reply #4 on: January 11, 2010, 11:53:37 PM »
One had just f1 costs, the other had no gene costs and high movement and tie costs.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
my first successful evosim
« Reply #5 on: January 12, 2010, 02:46:37 AM »
Quote from: jknilinux
Oh, which reminds me, how do we set up a cluster of PCs linked by ethernet to transfer between sims on multiple computers? I think there was a topic on it somewhere, but I don't know where.

I think you should be able to set up the teleporters to save to/from network folders.  So instead of c:\Darwinbots\Transfers it might be \\MyHomeComputer\Transfers.

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
my first successful evosim
« Reply #6 on: January 12, 2010, 12:41:50 PM »
What if I have several computers and one HDD? Can I run windows on multiple computers at once, booting from only 1 HDD, treating it all as a 3-core machine or something?

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
my first successful evosim
« Reply #7 on: January 12, 2010, 04:08:03 PM »
I think that would work.

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
my first successful evosim
« Reply #8 on: January 12, 2010, 06:18:48 PM »
That reminds me...if two sims are started with the same seed are the guaranteed to be exactly the same? I never bothered to figure out how simulated randomness works, but I was hoping to demonstrate the Butterfly Effect with DB through moving a cell a bit and seeing what happens...
« Last Edit: January 12, 2010, 06:19:17 PM by bacillus »
"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 Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
my first successful evosim
« Reply #9 on: January 13, 2010, 12:41:13 AM »
Theoeretically it should be completely deterministic, yes.  Note that saving and reloading will break that determinism, but if you load multiple sims from the same file they should go in lock step with each other.

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
my first successful evosim
« Reply #10 on: January 13, 2010, 11:04:17 AM »
Quote from: Numsgil
I think that would work.

How could I do that?

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
my first successful evosim
« Reply #11 on: January 13, 2010, 12:44:48 PM »
You'll probably want three different DB installs on the same hard drive, but beyond that you can just run programs from one HD on another computer.  If you set the transfers folders to be relative paths, it should just all magically work.  What are you stuck on?

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
my first successful evosim
« Reply #12 on: January 13, 2010, 10:10:36 PM »
OK, I have 2 PCs, but only one of them has a HDD. As such, only that one has an OS. So, can I connect this single HDD to 2 hard disk-less computers, and boot windows on both computers at the same time off of this one HD? I at least need a special cable setup, right?

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
my first successful evosim
« Reply #13 on: January 14, 2010, 12:02:33 PM »
There might be a way to do a network boot, but I don't know anything about that.  I know that OpenSUSE (a linux distro) can be booted from just a DVD on computers with no permanent hard drives.  If your HDD-less computer doesn't have a DVD-R drive you could probably find smaller distros which work the same way but fit on a CD.  Then you could run Darwinbots using Wine.

Offline jknilinux

  • Bot Destroyer
  • ***
  • Posts: 468
    • View Profile
my first successful evosim
« Reply #14 on: January 14, 2010, 01:00:52 PM »
now THAT sounds like one slooooooooooow computer. It's a p3.

oh BTW aren't these unusual characteristics for an evosim? Conspec, veggies that run away, etc... ?