Author Topic: Costs and energy usage.  (Read 9227 times)

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Costs and energy usage.
« Reply #15 on: August 29, 2006, 10:49:54 PM »
It's an optional cost that Eric put in to model a sort of existance tax that didn't discourage any particular behavior but still provided pressure.  The age cost was an extension of that, so you could have the cost start working at a specific age.

Offline Jez

  • Bot Overlord
  • ****
  • Posts: 788
    • View Profile
Costs and energy usage.
« Reply #16 on: August 30, 2006, 09:58:19 AM »
kk thanks
If you try and take a cat apart to see how it works, the first thing you have in your hands is a non-working cat.
Douglas Adams

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Costs and energy usage.
« Reply #17 on: October 12, 2006, 01:21:37 PM »
Quote from: Testlund
I can't seem to find a way to put costs on movement commands, like .up and .aimdx etc. What are they? basic commands, advanced commands or what? On the wiki it is only categorized as a sysvar. Maybe there should be costs for sysvars?

I've been wondering about this again. So there are no costs for sysvars then?   The costs are only for operators? Movement should be the most costly for a bot I think.

Also I'm wondering what translational bang is.
« Last Edit: October 12, 2006, 05:56:29 PM by Testlund »
The internet is corrupt and controlled by criminally minded people.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Costs and energy usage.
« Reply #18 on: October 13, 2006, 12:10:51 AM »
A "bang" is a unit of impulse.  Think of it like a tiny explosion behind the bot that makes it start moving.  A translational bang is the primary method a bot has to move around.

All DNA elements have user defined costs associated with them in the costs page.  Thus a bot ends up spending nrg executing its DNA.  DNA generally instructs a bot to perform actions.  Actions also have associated costs.  Thus, a bot will generally have to spend energy twice to do something.  Once for the impulse to do it (generally quite a low cost) and once for the actual actions (higher cost).

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Costs and energy usage.
« Reply #19 on: October 13, 2006, 04:20:00 AM »
So the bot could be considered a little fuel engine and bang is a movement cost then? It's difficult to comprehend this stuff. At the moment I have set it to the costs shown on the screenshot, but maybe I should reduce some of it and increase the bang cost instead? I wish somebody who understands this better could just tell me what costs whould be most realistic to put in here, if you want the bots to behave like real cells as much as possible within the abilities of the program.

EDIT I've desided to have these costs instead. I found they work well with most bots and gives a good balance to the sim.  
« Last Edit: October 13, 2006, 11:34:46 AM by Testlund »
The internet is corrupt and controlled by criminally minded people.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Costs and energy usage.
« Reply #20 on: October 13, 2006, 03:23:11 PM »
Personally, I'm not a big fan of genotipic costs - that is, costs associated with DNA operators - or with costs that are associated with meta aspects of the DNA such as it's length or the number of bps executed, etc.   Such costs provide selective pressure, but towards minimalism I.e. shorter genomes or the execution of the miunimal number of base pairs or minimal use of specific base pairs.  

I much prefer morphological and environmental costs - that is, costs that are associated with what the bot actually is or does, not on the code it uses to do it.   This subject touches on the separation between genotype and pheneotype, something that is half pregnant in DB.  In biology, having more DNA is basically free.  Even 'executing' more DNA is basically free given the natrual world's inherent parallelism.  What matters is what the end result is.  Larger bodies/beaks/penises has a real cost in the real world.  What specific DNA was executed to create those larger brains/trunks/fins can bascially be ignored as far as costs go.  Inheritability and evolvability though, well, those do influence DNA structure and exhert selection pressures, but that is different from what IMHO should be purely morphological costs...
Many beers....

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Costs and energy usage.
« Reply #21 on: October 13, 2006, 04:41:15 PM »
Well, I agree about that it's just that I've been thinking that the dna command costs could be the same as bodily functions in a living cell. Maybe I should set all DNA Command Costs to 0 but maybe have a small cost on Flow Command to simulate bodily function costs in a living cell.

Maybe you could change the default values for the next version so all I need to do is to click on the Default button and the values that makes most sense whould be put in there.  
The internet is corrupt and controlled by criminally minded people.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Costs and energy usage.
« Reply #22 on: October 13, 2006, 11:59:33 PM »
The end thing really is that whatever the costs are, the bots are going to adapt against it.  If you aren't really sure what your trying to find (that is, you're just interested in finding something interesting) just set the various costs to different things.

Just be sure that you'll be able to figure out what and why a bot is doing things.  If you can invision a root cause for every adaptation you'll see in the sim you'll slowly start understanding what the various costs are doing and how to set them.

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Costs and energy usage.
« Reply #23 on: October 14, 2006, 11:43:32 AM »
I think that the best way to approach this problem is to just put a cost in one field at a time and then compare how it will affect a bot through a certain amount of cycles, and then find a balance between day/night cycles and how the bot spend it's energy, maybe that's what you mean, nums. I did an experiment and found that some costs doesn't work at all! Flow command costs for instance does nothing! So with day/night cycles set to 10000 I found these costs to work best:

Translational Bang: 0.23
Tie Formation: 5 (just put 5 here without testing it)
DNA upkeep: 0
Body upkeep: 0.000025

The other morphological costs I set to 1.

All DNA command costs I set to 0.

Age cost: 0.1
Begins upon reaching 20000 cycles.
Increase cost log(age)

I did an experiment with putting just 1 Animal Minimalis and 1 R Fisannis in the sim to see how long they whould survive. R Fisannis can live for about 10000 cycles swimming around constantly while Animal Minimalis which was sitting still survived for about 20000 cycles. There was no food for them. A veggie on the other hand wont lose any energy at all while the sun is up, but will lose a certain amount when the sun is down based on it's size. The larger the more it will lose each cycles, but on the other hand it will also gain energy faster because of it's size when the sun is up. Aint that cool?.  
« Last Edit: October 14, 2006, 11:46:26 AM by Testlund »
The internet is corrupt and controlled by criminally minded people.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Costs and energy usage.
« Reply #24 on: October 14, 2006, 11:02:56 PM »
Yep, that's more or less what I was suggesting.  You just have to sort of get your hands dirty to figure things out.