Bots and Simulations > Evolution and Internet Sharing Sims
Randombot evolution sim
ikke:
--- Quote from: Botsareus on March 29, 2012, 05:56:09 PM ---oh, he never moded the code, it simply not a true zero bot...
I have to look into doing this kind of stuff internally...
That problem seems to come from this line:
Do
' Dim a As Integer
.DNA(t).value = Gauss(IIf(Abs(old) < 100, IIf(Sgn(old) = 0, Random(0, 1) * 2 - 1, Sgn(old)) * 10, old / 10), .DNA(t).value)
Loop While .DNA(t).value = old
I am going to try a mod...
el fixo:
--- Code: ---If Mtype = PointUP Then
Dim randomsysvar As Integer
Do
randomsysvar = Int(Rnd * 1000)
Loop Until sysvar(randomsysvar).Name <> ""
.DNA(t).value = sysvar(randomsysvar).value
Else
Do
' Dim a As Integer
.DNA(t).value = Gauss(IIf(Abs(old) < 100, IIf(Sgn(old) = 0, Random(0, 1) * 2 - 1, Sgn(old)) * 10, old / 10), .DNA(t).value)
Loop While .DNA(t).value = old
End If
--- End code ---
I feel better about using point mutations now
--- End quote ---
Looks good. Can I ask for another one: decrease mutation rate defaults by a factor of 10?
Botsareus:
I have load/save mutation rates from file, but it's alpha... (I never added code to select the file location, it defaults to a specific file)
If you want, I'll post that too.
Beanspoon:
Hey, so far nothing interesting to report, the sim has restarted a couple of times due to all bots dying out, but otherwise all quiet.
In the current version of the sim, all animal reproducers have died out due to cancerous growth and no incoming energy, two veggies have survived due to mutation which has rendered the reproduction gene dormant, and the randombots are just sitting there slowly mutating and running out of energy.
As suggested I am using nrg per kilobody point to discourage cancerous veg, and I have costs on in order to make finding food a priority. I know that it would probably be in my better interest to try to keep the bots alive, however I see no good way of doing that save forcing them to evolve the necessary code. If I set them as autotroph or create a feederbot to feed them, they will become lazy and just let that happen. Sometimes you have to be cruel to be kind...
I am going to adjust the sim to repopulate veggies if the population falls below 20. That should give them plenty of chances to evolve into something a little more sensible, while keeping a decent supply of food around in case anything else felt like evolving...
I'll post the A1 code next time I get the chance, there's really not very much to see though, just a random string of numbers and commands with 58 .repro inc stuck in there somewhere.
Watch this space...
Numsgil:
Ah! I just realized I modified your first post instead of replying like I meant to. I'm really really sorry; I've never done that before. That was a lot of text to lose, and it was entirely my fault. :redface:
I'll put my post here. If you want to modify your original post to explain what you're doing again, that would be good (even if it's just a brief outline).
--- Quote ---You're the patient sort, aren't you :P
I usually aim for no more than 1000 bots. That keeps the cycles/sec at something slightly more reasonable (1-3 cycles/sec or so). With cancerous reproduction, where they always try to reproduce every frame, once they get small enough the system won't let them reproduce anymore and they'll need to produce body (assuming you're only feeding them nrg from the autotroph system). If your veggy feeding method is set to nrg per kilobody, you'll also discourage (or at least, not actively encourage) cancerous veggies.
A single cancerous starter bot, at 1000 body, will produce about 1000 bots before each bot's body gets so low that it can't reproduce anymore.
--- End quote ---
Beanspoon:
Haha I was a little confused - I assumed it was just a server error. Yeah, I can't really remember what it was I wrote now...when I feel up to the task of re-writing my essay I will do ;)
In the meantime, I've decided to work on one thing at a time. Currently, I'm setting up the sim to instead focus on stabilising the veggy version of my evobot, i.e. evolving out the current cancerous nature. I will make a new topic with what I've achieved so far and where I'm going with it next. Incidentally, I want to evolve interesting veggy behaviour so I need an interesting environment - does anyone know how to provide good settings for pondmode? All the permutations I've tried dont seem to make any difference. I want to have the veggies get enough energy if they remain in the upper part of the pond, but if they sink to the bottom they die. I've tried light intensity 1 and sediment level 20 but even that doesn't seem to stop the ones at the bottom getting more than enough energy. Also I set nrg per cycle to 0 so they were only getting energy from the pondmode source.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version