Darwinbots Forum
Code center => Darwinbots Program Source Code => Topic started by: Endy on June 08, 2006, 01:53:47 AM
-
Horray
In a version I've been developing I've manged to duplicate and alter the wall subroutines enough to make mobile blocks. Haven't done a full scale run with them yet, but during testing, The One began using them to form stable MB type structures. Very cool looking
Think I've also stoped both walls/blocks from dying. I still need to do some longer sims to double check.
I think we can do alot more with the wall creation tool. It looks like it'd be possible to add in any type, wall, corpse, veggie, bot. I'll keep tinkering and see what I can come up with.
Oh yeah, I've modified the robdata to allow direct copying of the dna from there. Still buggy when dealing with the mysterious numberless bot. Besides that it works great for rapidly grabbing evolved dna.
-
Yeah, it sure whould be cool if one could create isolated areas where different species can evolve. I tried to draw walls many months ago but it didn't work. Very buggy, and I don't think it has been fixed in any later version. But there are more important things to fix, so it doesn't bother me much.
-
Think you're misunderstanding the version I'm using/made has walls up and working correctly. I've also added in the ability to make basically unfixed walls or blocks.
Yeah, it sure whould be cool if one could create isolated areas where different species can evolve.
Walls can be used to do this but it's something of an unsatisfactory solution. It's more of a physical seperation, than a true enviromental seperation. I've toyed around with slanted walls in non-torroidal gravity mode. I think they're best used when they are used to direct the veggies, causing an unequal food distribution. A funnel or a ^ sort of shape can be used to direct falling food to or away from a particular location, creating different selection pressures.
I'm also trying to come up with a better veggie feeding system. I'm trying for a more realistic feeding model with numbers of veggies affecting the amount sunlight/nrg they receive.
What I want is basically:
tok = tok * (maxvegs / totvegs)
' the correct names are used in the actual code
.nrg = .nrg + tok
Anyways, it doesn't seem to respond properly to changes in veggie population. As population rises they should receive increasing less nrg until they receive none at all. As animals kill off veggies the feeding nrg begins increasing again. If it only worked
-
That is more or less the way it always used to work.
We changed it because it was a pain in the ass.
Your formula looks like an improvement over the original though.
As total energy of all bots was involved and not just total veggies, it was actually possible for tok to become negative in the old system.
-
I think the best feeding method is probably per kilobody, since it still is on a per veggy basis, but it discourages runaway growth.
-
Got it to work coorectly. Alga with few veggie competitors receive more of the total "sunlight", while alga with many competitors receive much less. The One's population growth was actually controled for once. At 15 nrg it reaches between 200 and 400 bots total. It'll still rise from rare veggie repops, but that can be countered by using plants that avoid attacks to some degree.
Had to specify to take data directly from simopts maxnrg, it seems like there is some problem with totnrg receiving any values.
Maybe it'd be possible to take both perkilobody and this method and combine them. Individual veggies would have a say on nrg intake, but also have their access to sunlight based in part on competitors access.
-
FYI, there is some cool energy balance stuff coming in 2.42.6. Amoung other things, you can force the sun up or down if the total energy in the sim falls below or rises above specifed thresholds respectivly. This overrides day/night cycles if you have specifed such and allows you to keep the total sim energy below some max, above some min or within a specified range by controling the energy coming into the sim via autotrofs.
I've also added an option which turns off shot decay so that they essentially last forever, or rather, at least until they impact a bot. Very usefull for balancing energy loss in evo sims as shot decay is the main path by which energy leaves sims today. This combined with no decay corpse mode plugs most of the energy leaks in the system. The rest are the results of costs, which can be thought of as heat waste, direct conversion to venom, shell, posion, etc. or indrect conversion to waste.
When I get a moment, I need to write a long post on conservation of energy. There's a method to my madness I need to explain in depth at some point.
-
Cool
We do have alot of problems with nrg conservation. We'd be able to give the vegs more reasonable levels, if only the animals didn't lose nrg constantly.
Maybe modify veggie feeding so that increased surface area increases nrg gain, but also carries a growing cost associated with the extra body. Then veggies would have to find a median level instead of just bulking up.
-
Actually Endy, I think we could just stick with the surface area (at least until we have an environment grid). Mostly because of the following reasons (as I see it):
A veggy which increases in size, gets more energy, but is certainly also so much bigger, that it actually will mean herbivors sees it faster and it much easier to hit. Small ones on the other hand, gets less nrg, but they will but less prone to getting attacked by herbivors (or omnivores )
I would do as a nice experiment to see what is the most effective. (However this certainly change by the parameters of the sim)
-
Still it'd be runaway growth in terms of body size. More body = more nrg/body the cycle would keep going ever increasing the amount of nrg a veggie receives from the body it has.
I don't know what the best solution is, but I'd like to see all these different forms of run-away growth stop. If we can make the energy base of the ecosystem more true to life, then the rest of the sim is more likely to follow suite.
-
If we can make the energy base of the ecosystem more true to life, then the rest of the sim is more likely to follow suite.
I think you will really like 2.42.6 in this regard. The total sim energy calculations are solid and it has lots of new stuff to help control incoming energy and also dynamically modify costs over time, up or down, as a function of bot population. Should post is a couple of days.