Code center > Specialization, Metabolism, Digestions and Env Grid

Darwinbots enzyme system

<< < (14/20) > >>

Carlo:

--- Quote ---Our goal is not to model biochemical reactions and chemistry.  It would be too ambitions and actually a step away from the original goal of looking at evolution.  Instead, we want to allow bots to make choices on how to utilize thier energy in best way to survive.
--- End quote ---

That's ok. As I said before, our interest should not be in biochemistry in itself: if we feel the need to add some sort of biochemical system is because we noticed that DB fails in simulating some important aspect of evolution, and we correctly identified the problem in the complete absence of something like a biochemistry.
Here there are two things to say.

First, I don't think we want bots to make choices on how to utilize their energy. As you said, the good thing in DB is that DNA provides almost endless possibilities. There are other alife software in which the dna just specifies a few parameters, like probability of doing a certain thing or another. But that's optimization, not evolution. So, we want an open ended system, which instead of providing a few choices, could provied an entire world of different possibilities.
Second, that if we need something like a biochemistry, it must be something related to the DB universe, not a mock up of real world's biochemistry. So we should forget about CO2, O2, sulphur... all things which are totally meaningless inside the DB's universe.


--- Quote ---So we'll provide functionality directly, without giving bots access to all possible chemical reactions.  We can give them protein, fat, carbs and some intermediates and a way to convert these molecules into one another.  Each molecule would have different properties and affect bots in different ways: proteins require a lot of energy, but they allow cheaper/more efficient functionality, fats are a good long-term energy storage, carbs are good short-term energy storage and provide turgor. 
--- End quote ---

But why then we don't simply give to each robot an array of parameters, each specifying the ability to digest something, and state that the total sum of the array must be fixed to, say, 100? It would be an easy and effective way to force robots to specialize. The only problem is that it would be clearly not open ended, and we don't like this. So we need to hide an equally not open ended system behind a complicated set of rules, to make it seem more clever than it is.

Finally, you can decide the ability to digest proteins, fat, or whatever else... and then? You also have to decide which robots are made of what, and in which percentage. You may have food chains with erbivores able to digest cellulose, and then predators able to digest proteins... but who decides that vegetables are made of cellulose and erbivores of proteins? Wouldn't it be easier to put a good control in the simulation options, stating who can eat what, once for all? (obviously, I'm joking).

shvarz:
Carlo,

 if we follow your logic, then limiting bots only to DNA commands that we give them is also not good.  From this point of view bots should be able to create their own DNA commands, because re-arranging DNA commands is "optimization, not evolution".

Botsareus:

--- Quote ---Wouldn't it be easier to put a good control in the simulation options, stating who can eat what, once for all?
--- End quote ---

That’s a more complicated version of what we have right now, just check a checkbox and you make a robot reserve energy from the program..

Carlo, what it lacks is the ability of robots to learn themselves witch way of getting energy is better for them. This behavior will be very fun and scientific to observe.

It also lacks balance (as I already stated) In the current system if bots were to decide if they want to be a veg. or not: They all would choose veg.

P.S.

Carlo, I know it’s not right. I mean you are the founding father of everything we are doing on this forum today. But we spent a good 3 weeks on this system (or more) , we are not going to simply give it up.

shvarz:
Yes, we'll fight to the death! and ... then give it up :)

Numsgil:
The purpose of introducing the enzyme system was to encourage speciation.  We wanted omnivore bots to be at a disadvantage compared to bots that specialized in only meat or only vegetables.

So we looked into real life, to try and find what it has that DB doesn't that allows animals/bots to become omnivores, but clearly favors specialization.

What we came up with was either a use it or lose it kind of specialization, where omnivores in a meat free environment, over time, tend to lose tha ability to digest meat as the enzymes, which aren't important anymore, are lost.

-Or- a system where specializing in A causes a despecialization in B.  This is how most games deal with class speciation.  The more points you put into being a Warrior, the less are available for archery.  It's natural paralles are things like teeth design in animals, metabolic slowdown for herbivores and metabolic speedup for carnivores (ie: if you're a carnivore, like a lion, it'd take most of the day just eating to get enough energy from grass.  This can be seen in the prey the lions eat.) or other things along those lines.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version