Bots and Simulations > Evolution and Internet Sharing Sims
Zerobot sims
Numsgil:
Part of the problem is getting different drop down boxes to agree with each other.
There were all sorts of problems setting up the "advanced physics" panel and the more standard physics interface.
I don't have a good solution, but levels of abstraction isn't it. Each control in the simulation needs one area that controls it. More than that just creates more problems than it's worth IMO.
Zinc Avenger:
I've been experimenting with ways of slightly speeding up the process of getting something worthwhile from a zerobot, and I've come up with something useful, but I don't know if this would be considered a "cheat" and get me hounded out of town by a bunch of pitchfork-and-torch-wielding ex nihilo simmers!
I only have the one bot type in the sim, a zerobot with a slight modification - the line 50 .repro store is added about half way so it will constantly reproduce with 50% nrg offspring. This bot "zeroHeadstart" is introduced into a sim as the only bot, with Blocked set off and Autotroph set on. Veggies are capped at about 200, repopulation set to about 10 with a repopulation delay of 100 cycles. The sim is set up to feed 2 nrg/cycle to autotrophs, all as nrg (no body). Then in costs, all costs zero, except an aging cost of 2 nrg/cycle to start when the bot reaches 1000 cycles old, no increases. So what happens here is that for the first 1000 cycles of a bot's life, it is given 2 nrg/cycle to get it started, then it's on its own and gets no additional nrg input in this manner.
What will happen is the first 30 bots will reproduce. Then the sim will do nothing for a while because the offspring and the parent are now blocking one another. After a little while, point mutations will make one of them move... and at that point, that bot gets to reproduce so we've selected for movement. The population will reach the veggie cap pretty quickly, and then stay stationary, until one of them evolves a way to feed off and kill others, whereupon that bot suddenly has an advantage and will take over the sim over the next hour or so. When it has proven its superior fitness by making up a sizeable percentage of the population, save out a healthy-looking specimen and put it into a new sim with alga minimalis, make the evolved bot no longer a veggie and introduce F1 costs, with no costs below 50, reintroduce above 100. Then let the sim run from this foundation.
Yes it is a slight fudge, starting from a not-entirely-helpless bot, and the sim is set up to seriously encourage certain traits, but apart from the one little nudge at the beginning the result is entirely evolved. In fact, I find that the original 50 .repro store vanishes after enough cycles have passed in the second sim, unconditional reproduction is selected against. The current example of this bot I've been baking has put a .timer in the dna nearby that I think controls reproduction.
Sorry for the long post, its a little complicated but may inspire ideas.
So, do I get the pitchfork-and-torches treatment?
Numsgil:
While it's not necessarily an ex nihilo sim, it's certainly an interesting idea. Have you run a sim like this, can we see any DNA?
Zinc Avenger:
Sure, I'll bring in my current top performer tomorrow morning. It acts a little weird (they end their lives in an explosion of cancerous reproduction, which seems to occur randomly - even in sims without mutations! I guess this must be a survival trait somehow. Natural selection works in mysterious ways, sometimes), but who knows - it may have straightened itself out after a few more hours tonight.
Testlund:
--- Quote from: EricL ---Would people be interested in seeing a threshold for the DNA Upkeep cost such that below the threshold, there was no cost per bp but for every bp above the threshold, the per cycle cost is assessed? Bascially, if your viral load gets high enough, you die.
--- End quote ---
I whould like to see this implemented. As you've said earlier it's not realistic to tax DNA, but it's needed somewhat to prevent the program from freezing.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version