Code center > Bugs and fixes
why do some bots become stationary RESOLVED 2.43.1M
Nitus:
Despite having zero friction and having 0.2 gravity, I notce bots becoming immobile. They're moving around, then suddenly they stop and stay fixed in place.
They're not doing anything to remain immobile, so gravity should be making them at least fall. But they are expending no energy and remaining fixed in place. What could be causing this?
Shasta:
What is probably happening in your sim is that waste is building up in your bots causing 'alzheimers' to store a random number in .fixpos.
Nitus:
How can I manage or disable this effect in physics/settings? I assumed those settings were "off" since I started with no settings file.
These bots are the product of zerobots. If they can select for fixing themselves against the force of gravity without spending any movement energy, magically, then I can see why they would have selected for that in their previous environment. Right now they need to be falling if they're not moving.
I'll play around with waste settings while I wait for a reply.
EDIT I jacked waste threshold to 20000 and BAM, bots started doing things.
Any advice as to how best to eliminate this problem in the future? What's the maximum value for waste threshold? I tried 32000 and it crashed. Feature request: waste on/off toggle.
EDIT 2 This doesn't work on all the bots in the stable. Some of them just stop and remain fixed, and it happens a lot sooner than waste as I understand it could be responsible. Could these zerobot-spawn have a .fixpos in their genome somewhere?
If a bot can thwart the sim physics and evade morphological costs just by enacting some command in its DNA, that's a major flaw. A bot should not be able to defy gravity without expending energy, and I should not have to penalize other aspects of its dna that don't expend the same amount of energy. I think I understand the idea behind "alzheimers", but it shouldn't defy the laws of physics. If a bot is not doing anything to prevent itself from falling, and the "immobile" flag is unchecked, then it should fall.
Moreover, when a bot hits one of the frozen bots, even if it's a much larger bot, it's like hitting a brick wall. How can anything the bot is doing prevent it from being banged around like the sim physics dictate?
Nitus:
Here's a sim that illustrates my problem.
imble.sim - http://www.megaupload.com/?d=0BS5ZIA5
There's gravity and relatively high morphological costs. All bots except for feeder start at zero cycles [I waited for the feeders to get full before populating the other bots]
The red bots are the ones that exhibit this fixing behavior. Good old 2.8.2f. If you load this sim over and over again, you'll notice that the time it takes for each 2.8.2f to fix itself is more or less random - sometimes they fly around for a long time, sometimes they stop right away. But sooner or later they fix themselves.
The yellow bot is a single mobite - a veggie that's supposed to encourage the zerobots to chase it.
The three green bots are feeders. They're fixed in place and spew energy shots, and in theory they encourage bots to exploit them wherever you place them. In this sim they're just there, but if I put them near the top of the "tank" [with gravity] a bot would have to be going up to explot them [and so on].
The teal bots are fresh zerobots, their zero genome is quite a lot larger than the genome that 2.8.2f evolved from. They're in there to add some spice if you want to run this sim for a few days.
Shasta:
Looking through that sim, the bots are all storing 10 in fixpos (remember fixpos == 216th memory location). I did a quick scan of the dna and didn't see where the store was taking place. Evolved dna is next to impossible to figure out without spending a large amount of time.
I can also confirm an overflow in the waste threshold setting, along with a formating bug in the save robot dna function (places cond on the gene start line). I'll post those two in the bug report forum.
Navigation
[0] Message Index
[#] Next page
Go to full version