Author Topic: Feeding and body  (Read 5361 times)

Offline Peksa

  • Bot Destroyer
  • ***
  • Posts: 118
    • View Profile
Feeding and body
« on: October 18, 2007, 05:15:09 PM »
Feeding with -1 shots from veggies seems to increase body too or am I just seeing things?

None of my bots are using -6 shots (as far as I can tell, evolved dna can be a pain in the ass), but my bots body keeps increasing without body management commands (again as far as I can tell) when fighting.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feeding and body
« Reply #1 on: October 18, 2007, 05:34:23 PM »
nrg shots that are returned (whether from -6 or -1 shots) give a little to body and a lot to nrg.  The concept of body wasn't always around, so back in the day this was set up as a way to help integrate older bots.

Offline Peksa

  • Bot Destroyer
  • ***
  • Posts: 118
    • View Profile
Feeding and body
« Reply #2 on: October 19, 2007, 09:43:04 AM »
Okay, thanks. Evolved bots seem to take advantage of this. In all of my evosims bodymanagement has broken up after a while and bots get all their body (100-300) from shooting. It's a bit of a shame becouse it further simplifies dna.
« Last Edit: October 19, 2007, 09:44:51 AM by Peksa »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feeding and body
« Reply #3 on: October 19, 2007, 01:00:13 PM »
Yeah, it's a good example of the program doing too much for bots.

Offline Peksa

  • Bot Destroyer
  • ***
  • Posts: 118
    • View Profile
Feeding and body
« Reply #4 on: October 19, 2007, 02:44:50 PM »
Is there any hope of changing it? I know DB is supposed to be backwards compatible, but energy-body management has been around for some time now (from summer -04, according to F1 league's bot addition dates) and only a few bots in leagues predate it.

If the change isn't too much of a hazzle, leagues could be run with it and see if there's dramatic changes and undo it if needed.

One alternative would be designing enough new bots to push the old ones from league and then change it  It could take a while though: Darth Shimazu still holds place 14.

Edit: some typos.
« Last Edit: October 19, 2007, 02:45:43 PM by Peksa »

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Feeding and body
« Reply #5 on: October 19, 2007, 03:18:00 PM »
Today, an nrg shot goes 80% to nrg, 19% to body, 1% to waste.

Reproduction in evosims depends upon both body and nrg.  Bots must have at least 2 body to reproduce.  

We should be aware that completely separating the aquisition of nrg and body would require bots to evolve both an nrg aquisition strategy to fund their activities and a body management/aquistion strategy to replenish enough body to be able to reproduce.  That is, in my expereince, it is extremely common for simplisitc evobots to sit at body <= 2, attempting reproduction every cycle and for the (indirect) aquisition of body through nrg feeding to be the main determinant of reproductive sucess.

Evolution needs a gradual slope leading from one adapation to another, ideally a single mutation be in a single bp or larger sequence.   It strikes me as a quite large chasam for evobots to cross to require that they must evolve body management/aquisition in addition to nrg aquisition in order to sucessfully reproduce.  For this reason, while I would not be opposed to changing the above percentages, I think I am against a complete separation.
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feeding and body
« Reply #6 on: October 19, 2007, 03:57:39 PM »
It's really a tough issue.  As it is right now, body management is more icing on the cake.  The program does enough for the bots to survive without being too sophisticated.  If you totally remove it, it really hampers evo bots as Eric pointed out.  Simpler bots, like animal minimalis, would also stop working.

Maybe we can remove nrg shots giving body, but change it so when nrg "overflow" past 32000, it's automatically converted to body (this might be true for some parts of the program, like veggy feeding, but we could try standardizing it so that this is always true).  That removes the automatic body growth for bots that aren't really trying while still giving a way for bots to acquire body that don't specifically code for it.

However, the reverse shouldn't be true.  When a bot reaches 0 nrg, it should die, regardless of wether it has body left or not.

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Feeding and body
« Reply #7 on: October 20, 2007, 02:04:03 PM »
If you would be interested to give this a try, I would be happy to set up a new evosim on my spare computer to run it around the clock. Maybe a combination of both, like when reaching 32000 energy it will start to get converted to body or if a bot evolve the sysvar to convert energy to body it can use that sooner, getting an advantage over the other bots. I'll jump at everything that makes DB closer to realistic metabolism.  
The internet is corrupt and controlled by criminally minded people.

Offline Peksa

  • Bot Destroyer
  • ***
  • Posts: 118
    • View Profile
Feeding and body
« Reply #8 on: October 23, 2007, 04:34:17 PM »
I don't really like program set limits like nrg shots returning body after 32000 energy. I prefer Eric's more gradual way to limit body gain, ie. setting the body gain percentage much lower. 1-5% should be low enough. I personally feel that lower the better.

By the way, what happens now to nrg shots bot's hit with if it has 32000 energy?

If it is lost (or even more so if it's turned to waste) it could encourage, even if very slightly, evolving some kind of body management. Though I wouldn't think that effects of having 32000 are high concern for evolving bots

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feeding and body
« Reply #9 on: October 23, 2007, 05:08:07 PM »
Quote from: Peksa
I don't really like program set limits like nrg shots returning body after 32000 energy.  I prefer Eric's more gradual way to limit body gain, ie. setting the body gain percentage much lower. 1-5% should be low enough. I personally feel that lower the better.

That's the other option.  I still think it's better to have body gain be 0 from nrg shots, and then give bots body when they pass 32000 nrg as part of the nrg overflow, instead of just tossing the nrg away.  The conversion could even happen at a substancial loss, since it's an overflow method.

Quote
By the way, what happens now to nrg shots bot's hit with if it has 32000 energy?

If it is lost (or even more so if it's turned to waste) it could encourage, even if very slightly, evolving some kind of body management. Though I wouldn't think that effects of having 32000 are high concern for evolving bots

 

It's just discarded at the moment.

Offline Peksa

  • Bot Destroyer
  • ***
  • Posts: 118
    • View Profile
Feeding and body
« Reply #10 on: October 25, 2007, 04:34:09 PM »
Quote from: Numsgil
That's the other option.  I still think it's better to have body gain be 0 from nrg shots, and then give bots body when they pass 32000 nrg as part of the nrg overflow, instead of just tossing the nrg away.  The conversion could even happen at a substancial loss, since it's an overflow method.

Hmm.. Actually, now that I think about it that would be better. We have -6 shots for effective bodyfeeding after all. But still I'd like there to be unfavourable conversion rate, as you said could be possible.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Feeding and body
« Reply #11 on: October 25, 2007, 04:50:42 PM »
I'm planning on changing it to 95% nrg, 4% body, 1% waste, then switching to 99% body, 1% waste when nrg reaches 32000.

I've never seen any evolved zerobot in my sims reach 32000 nrg.   I woudl strongly prefer that there be some way to aquire at least some body long before nrg reaches 32000 as a side effect of aquiring nrg, particularly in evosims with very stupid bots such as newly minted zerobots where the only nrg aquisiton method is being shot by a shepard bot.

If anyone has any serious objection to this, speak now.
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Feeding and body
« Reply #12 on: October 25, 2007, 05:08:04 PM »
I don't have serious objections, but I am a little curious what would happen with my method.  If you have the time to implement a unified energy overflow like I proposed, we could add in a slider to determine what percentage of energy shots get converted to body, like there is with veggy feeding at the moment, and effectively we'd have both methods possible.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Feeding and body
« Reply #13 on: November 03, 2007, 11:48:33 AM »
FYI, 2.43p changes to the percentages listed above and also overflows nrg shots to body when nrg = 32000.
Many beers....