Author Topic: Shvartz, can you help me out?  (Read 36296 times)

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
Shvartz, can you help me out?
« Reply #30 on: June 28, 2005, 03:17:19 PM »
It used to be around 280, now I brought it down to 210.  I don't like to introduce changes rapidly as it often leads to crash in population.

Another thing that I noticed is that bots tend to all align with each other and run parallel to each other.  This way they avoid bumping into each other.  If one of them mutates and starts running in circles, then it is bound to run into other bots and gets killed quickly - another disdvantage of having fast-moving bots in small-size screen.
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Shvartz, can you help me out?
« Reply #31 on: June 28, 2005, 03:56:42 PM »
thx Shvartz, It all make sense now.



look here what I got:

I tryed my method again with purely F1 contest rules... Its slooowww but:

Quote
cond
  *.nrg
  30000
  >
start
  add
  50
  .repro
  store
stop

cond
start
 -1
  7
stop

cond
start
  store
  20
  rnd
  .up
  store
stop
end
'5,297,281,285,293,310,253,312,303,289,296,313,309,339,271

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Shvartz, can you help me out?
« Reply #32 on: June 28, 2005, 08:38:59 PM »
Quote
It used to be around 280, now I brought it down to 210.  I don't like to introduce changes rapidly as it often leads to crash in population.

Another thing that I noticed is that bots tend to all align with each other and run parallel to each other.  This way they avoid bumping into each other.  If one of them mutates and starts running in circles, then it is bound to run into other bots and gets killed quickly - another disdvantage of having fast-moving bots in small-size screen.
Try introducing Zero Momentum to the sim.  That should teach them :P

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
Shvartz, can you help me out?
« Reply #33 on: June 28, 2005, 10:06:48 PM »
Zero momentum is too much.  I'll wait till you release that new shiny version where "zero momentum=100% friction".  Meanwhile I just increased the size of the sim to 6 and reduced veggies to 180.  Seems to help - I see some bots are moving very slowly now.  Here is an example:

Quote
cond
  *.nrg  20536 >
  *.nrg  20014 !%=
start
  *.hitsx  *.tielen3 inc
 inc
  *.daytime inc
 inc
  50  300  369  380
stop

'''''''''Gene  2: Last 'stop' at position  21'''''''''

cond
  *.nrg  20536 >
  *.nrg  20536 !%=
start
  *.tielen3 inc
 inc
  *.daytime inc
 inc
  50  300  369  380
stop

'''''''''Gene  3: Last 'stop' at position  41'''''''''

cond
  *.nrg  20536 >
  *.nrg  20536 !%=
  *.nrg  19616 !%=
start
 inc
  51  300
stop

'''''''''Gene  4: Last 'stop' at position  57'''''''''

cond
  *.out2  *490 !%=
cond
 store
stop

'''''''''Gene  5: Last 'stop' at position  68'''''''''

cond
  *.shareslime  *180 !%=
start
  1168  *.refvelsx store
  *652  *.rdboy -12 rnd  *553 -12 rnd sub rnd sub sub rnd  *790  *387  *.rdboy rnd  *387  *.rdboy rnd  *.sharenrg sub  *735  *916  *.mydn rnd  *.shootval  *.shdx mult  *735  *372  *768 rnd inc
  446 -130 dec
 rnd  *735 rnd -215 sub  *.daytime dec
  *615 -1 div -1292  *.pwaste inc
 inc
  *.pwaste inc
 inc
  *307 div  460 -565  644  .tieang3 store
  *273 dec
 -1179 dec
 store
  *948  218 -1203 inc
  841  11 dec
  841 -549  11 inc
  *868  *.trefvelmydx -434  1 div div inc
  9  1  354 store
  10 add  *.fdbody  1  *676 store
  11  .up store
 inc
  1278 inc
  1342
stop

'''''''''Gene  6: Last 'stop' at position  186'''''''''

cond
  *.shareslime  *.eye8 !%=
start
  1168  *.refvelsx store
  *652  *553 -12 dec
  *.sx sub  401 rnd mult rnd sub  962  *.hitup  *735  *.shdx dec
  *735  *107 -1195  *772  *.trefypos div  *772  *.trefypos div dec
 rnd  *735 rnd inc
  *735 rnd inc
  *735 rnd  669 inc
  *735 rnd sub inc
  *.daytime dec
  1 store
 div -1460 -1292  *.pwaste inc
 inc
  395 -909 add  *307 div add  *.eye1 div  460 -565  460 dec
 -565 dec
 store
 store
  *.tie  218 -1203 inc
  10  *868  *381 inc
 div  *.trefvelmydn  1 div  *.trefvelmydn  1 div  9 -8  1 -354 store
  10 add  1  *676 store
  11  .up store
 store
  1278 inc
  1342
stop

'''''''''Gene  7: Last 'stop' at position  301'''''''''

cond
start
  *.tieang2  *591 inc
  *.trefypos  *591 inc
 sub -382  *816 -331  401 -376 -792 inc
 -1163 -178 div -1  7 rnd
stop

'''''''''Gene  8: Last 'stop' at position  324'''''''''

cond
start
 -1  7 -403 -1  7
stop

'''''''''Gene  9: Last 'stop' at position  334'''''''''

cond
start
 store
 sub  10 add sub  10 dec
 add  *650  *969 store
  *650  *969 store
 dec
 div sub mult dec
 sub sub store
 dec
 sub inc
 dec
 sub store
 dec
 sub store
 dec
 inc
 div dec
 inc
 add dec
 inc
 add dec
 div add  1 sub
stop

'''''''''Gene  10: Last 'stop' at position  383'''''''''

end

Genes 4-10 are active.  What's all that duplication in gene 10 about?  wtf?  clearing out stack?  Also look at gene 4 - it has 2 conditions and no start - but it still works.  Weird.  And how did it get this way?

Btw, the overall mutation says this bot got only 1 mutation - shows you how seriously  messed up that routine is.
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline Shen

  • Bot Destroyer
  • ***
  • Posts: 111
    • View Profile
Shvartz, can you help me out?
« Reply #34 on: June 28, 2005, 11:20:16 PM »
Curious, I nearly always get the same condition change that you get on repro genes. Changing > to !%= gives an automatic boost of several thousand energy, though presumably requires two seperate mutations, a duplicate and a straight up change > to !%=. Why that would be more benificial I dunno.

Oh yeah and the mutations are in seriously need of an overhaul. I get crashes if I open the mutation graphs. Bots always reports 0 mutations. The bot info panel reports mutations that havnt occured, mutations that are different from actual changes or mutations that make no sense (I get inserted instruction ,,, a lot). Gene syntax gets changed which is obviously bad. The mutation toggle button seems to turn on and off randomly. And the strangest of all, my sims seem to stop mutating after a while, dunno why or even if its just luck, but ive run sims for millions of cycles and ended up with the exact same bot, could be me, anyone else noticed this?

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
Shvartz, can you help me out?
« Reply #35 on: June 29, 2005, 12:11:38 PM »
Now I see something interesting: Bots run very fast, but as soon as they stumble upon food - they slow down and crawl along!  This increases their chances of feeding, because instead of ramming through a groop of veggies they now can eat a lot more.  If anyone wants the DNA to figure out how they do this, let me know.
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Shvartz, can you help me out?
« Reply #36 on: June 29, 2005, 02:31:06 PM »
about speed changing bots: COOL

about stack:
I gess its indeed clearning out the stack in gene10, Its very interesting in what way the dna learns to program itself.
« Last Edit: June 29, 2005, 02:33:59 PM by Botsareus »

Offline Greven

  • Bot Destroyer
  • ***
  • Posts: 345
    • View Profile
Shvartz, can you help me out?
« Reply #37 on: June 30, 2005, 05:30:55 AM »
Quote
Now I see something interesting: Bots run very fast, but as soon as they stumble upon food - they slow down and crawl along!  This increases their chances of feeding, because instead of ramming through a groop of veggies they now can eat a lot more.  If anyone wants the DNA to figure out how they do this, let me know.
Can you post this bot Shvarz? I will give it a shot. Not my strong side, but I'll try.
10010011000001110111110100111011001101100100000110110111000011101011110010110000
011000011000001100010110010111101001110100110010111100101000001000001111001011101
001101001110011011010011100011110100111000011101100100000100110011010011100110110
010110000011100111101001110110111101011101100110000111101001101001110111111011101
01100100000111010011010001100001110111010000010001001000010100001

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
Shvartz, can you help me out?
« Reply #38 on: June 30, 2005, 12:17:20 PM »
OK, here is the example:

Code: [Select]
cond
  *.nrg  20536 >
  *.nrg  20536 !%=
start
 sub  *.tielen3 inc
 inc
  *.daytime inc
  *102 inc
 rnd  50  *.myeye  .repro store
  369  380  *297
stop

'''''''''Gene  2: Last 'stop' at position  26'''''''''

cond
  *.nrg  20536 >
  *.nrg  20536 !%=
  *.nrg  19616 !%=
start
 inc
  51  300 add
stop

'''''''''Gene  3: Last 'stop' at position  43'''''''''

cond
  *.nrg  20536 >
  *.nrg  20536 !%=
  *.nrg  19616 !%=
start
 inc
  53  300
stop

'''''''''Gene  4: Last 'stop' at position  59'''''''''

cond
  *.out2  *490 !%=
cond
 store
stop

'''''''''Gene  5: Last 'stop' at position  70'''''''''

cond
  *.shareslime  *180 <
start
  1168  *.refvelsx store
  *652  *.rdboy -12 rnd  *.rdboy -12 rnd  *553  *790 -12 rnd sub rnd sub rnd sub sub sub -522 rnd add  *790  *387  *.veldx  *.rdboy rnd  *387  *.rdboy rnd  *.sharenrg sub  *43  *121 div  *735  *916  *.mydn rnd  *.shootval  *.shdx mult  *.bodloss  *372  *768 rnd inc
  446 -130 dec
 rnd -130 dec
 rnd  *735 rnd -215  *.daytime dec
  *.bodloss -1 div -1292  *.pwaste inc
 inc
  *.pwaste inc
 inc
  *.pwaste inc
 mult  *307 div  460 -565  644 -818  1180 store
  *273 dec
  *353 -1179 -1022 dec
 store
  *948  218 -1203 inc
  841  11 dec
  841 -549  11 inc
  *868  *.trefvelmydx -434  1 div div inc
  9  1  354 store
 -813  10 add  *.trefvelmydx  1  *676 store
  11  342 store
 store
  1278 inc
  1342
stop

'''''''''Gene  6: Last 'stop' at position  212'''''''''

cond
  *.shareslime  *.eye8 !%=
start
  1168  *.refvelsx store
  *652  *553 -12 dec
  *.sx sub inc
 rnd sub inc
 rnd mult rnd dec
 mult rnd  962  *.hitup  *735  *.shdx dec
  *.trefup  *.fixang -1195  *772  *.trefypos div  *772  *606  *.trefypos div dec
 rnd  *735 rnd  *.fixpos inc
  *735 rnd inc
 div  *735 rnd dec
  627 div inc
  *.tieloc rnd sub -952 inc
  *.daytime dec
  1 store
 div -1460 -1291  *.pwaste inc
 sub inc
  395 -909 add -187  *307 div add rnd  *307 div  460 -565 div  476 -565  460 -565 div store
 div dec
 store
  *.tie  218 -1203 inc
  9 dec
  *363  *868  *381 inc
 div  *.trefvelmydn  3 -494 dec
  9 -8  1 -354 store
  10 add  1  *676 store
  11  .up store
 store
  *415 store
  *415  1278 inc
  1342  *.shdn  *40
stop

'''''''''Gene  7: Last 'stop' at position  353'''''''''

cond
start
  *.tieang2  *591 inc
  *.trefypos  *591 rnd  *.trefypos  *591 rnd rnd -382  *816  128 -331  401 -376 dec
 -792 inc
 -1163 -178 div dec
 -1  7 rnd -949
stop

'''''''''Gene  8: Last 'stop' at position  383'''''''''

cond
start
 -1  7 -1  7
stop

'''''''''Gene  9: Last 'stop' at position  392'''''''''

cond
 store
 sub  10 add sub  10 rnd mult dec
 rnd mult dec
  *268  *650  *969 store
 dec
 dec
 inc
 inc
 sub mult dec
 sub div dec
 sub sub store
 div sub inc
 div sub inc
 dec
  *50 div sub store
 dec
 inc
 div dec
 inc
 dec
 dec
 inc
 dec
 dec
 inc
 add  1 sub
stop

'''''''''Gene  10: Last 'stop' at position  449'''''''''

end

You will have to look at it in its natural environment, which goes like this:
Alga minimalis as food, 7 nrg/cycle, cap veggies at 200, day/night enabled - 100 cycles each
Size 6 sim, wrapped around, friction=8, moving factor =.55

Look at what it does, compare to the original FirstBot.  I tried checking .up and it always reads back 11, so it's not like bots learned to change their speed directly - they do it in some funky way.

Good luck!
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline Greven

  • Bot Destroyer
  • ***
  • Posts: 345
    • View Profile
Shvartz, can you help me out?
« Reply #39 on: June 30, 2005, 12:24:16 PM »
How many cycles? and What about mutation rates? Not important just wanna know!
10010011000001110111110100111011001101100100000110110111000011101011110010110000
011000011000001100010110010111101001110100110010111100101000001000001111001011101
001101001110011011010011100011110100111000011101100100000100110011010011100110110
010110000011100111101001110110111101011101100110000111101001101001110111111011101
01100100000111010011010001100001110111010000010001001000010100001

Offline Greven

  • Bot Destroyer
  • ***
  • Posts: 345
    • View Profile
Shvartz, can you help me out?
« Reply #40 on: June 30, 2005, 12:25:12 PM »
Forgot to say thx!
10010011000001110111110100111011001101100100000110110111000011101011110010110000
011000011000001100010110010111101001110100110010111100101000001000001111001011101
001101001110011011010011100011110100111000011101100100000100110011010011100110110
010110000011100111101001110110111101011101100110000111101001101001110111111011101
01100100000111010011010001100001110111010000010001001000010100001

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
Shvartz, can you help me out?
« Reply #41 on: June 30, 2005, 12:36:13 PM »
This is about 5 million cycles in.  It was one continuous simulation, so mutation rates probably mutated a lot.  Also, I turn them down every million cycles (now at 1/8).

Update: Opened "mutation rates" for one randomly chosen bot - they are all around 700.  So multiply by 8 and get 1 in 5600 for each kind of mutation.
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline Greven

  • Bot Destroyer
  • ***
  • Posts: 345
    • View Profile
Shvartz, can you help me out?
« Reply #42 on: July 01, 2005, 09:58:33 AM »
Shvarz how on earth does this bot survive? This bot is not able to get any food at all! Dont you think you have choosen the wrong bot?
10010011000001110111110100111011001101100100000110110111000011101011110010110000
011000011000001100010110010111101001110100110010111100101000001000001111001011101
001101001110011011010011100011110100111000011101100100000100110011010011100110110
010110000011100111101001110110111101011101100110000111101001101001110111111011101
01100100000111010011010001100001110111010000010001001000010100001

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
Shvartz, can you help me out?
« Reply #43 on: July 01, 2005, 11:29:27 AM »
:)  Yeah, it sucks...  Although it is possible that I picked an especially sucky variant...

Did you use the settings I gave you?  Make sure veggies reach their limit in energy and in numbers - this bot needs tons of food.  Reseed the bot manually if you have to at first.  Have you tried the original FirstBot?  Are you saying this bot is worse then the FirstBot?
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline Greven

  • Bot Destroyer
  • ***
  • Posts: 345
    • View Profile
Shvartz, can you help me out?
« Reply #44 on: July 01, 2005, 12:15:18 PM »
Shvarz this bot is not even able to survive! It cant even shoot! And I tried the exact same settings you gave me, with the newest pure DB? No matter what, it dies in a few cycles, when it has no more energy!?? Or am I doing something wrong? The original bot outperforms this bot!
10010011000001110111110100111011001101100100000110110111000011101011110010110000
011000011000001100010110010111101001110100110010111100101000001000001111001011101
001101001110011011010011100011110100111000011101100100000100110011010011100110110
010110000011100111101001110110111101011101100110000111101001101001110111111011101
01100100000111010011010001100001110111010000010001001000010100001