Darwinbots Forum

Bots and Simulations => Bot Tavern => Topic started by: Endy on January 09, 2006, 09:59:20 PM

Title: Evo Anyone?
Post by: Endy on January 09, 2006, 09:59:20 PM
Anyone been up to anything lately? Seems like this place has been pretty empty.

Made a semi-fixed bot, that temporarily unfixes when hit. Very odd chain effect a whole mass of bots slowly moving downwards(grav sim) together, when a veggie lands on top of them. Pretty interesting since the fixers deform into a cup like shape, perfect for feeding. It also happily solves the problem of bots building up at edges, since they tend to space themselves out.

I've been trying out different techniques also, had some luck with simply doubling the dna, forming something like introns. Got the idea from an article that mentioned adding them to GA's, allowing for faster evolution.
Title: Evo Anyone?
Post by: Numsgil on January 10, 2006, 02:30:13 AM
I've been mostly working on the port for the last week or two.  Trying to set up a bot debugging window at the moment, which turns out to be considerably harder than I thought :/
Title: Evo Anyone?
Post by: Endy on January 10, 2006, 04:32:47 PM
I saw the template in the 2.4 source you made. Looks like it'll be pretty useful once it's complete.
Title: Evo Anyone?
Post by: Numsgil on January 10, 2006, 06:17:15 PM
I have to build it to track down some errors in the DNA Execution routines.  I think they're stack related...

Anway, should blow 2.37 outa the water in regards to debugging tools ;)
Title: Evo Anyone?
Post by: Sprotiel on January 10, 2006, 09:14:22 PM
Quote
I have to build it to track down some errors in the DNA Execution routines.  I think they're stack related...
You should post a bug report somewhere. Perhaps I, or someone else, can figure it out.
Title: Evo Anyone?
Post by: Numsgil on January 10, 2006, 09:25:07 PM
Problem is I have no idea what isn't working because I have no debugging tools.  I think it's actually something to do with vision testing but I can't be sure.

I could just run the program in debug mode and track it down manually, but I think it's a nice break to work on the in-game debugging tools, and they need to be done anyway...
Title: Evo Anyone?
Post by: Sprotiel on January 10, 2006, 09:52:50 PM
Quote
Problem is I have no idea what isn't working because I have no debugging tools.  I think it's actually something to do with vision testing but I can't be sure.
Did you update to r75 ? Because I solved a segmentation fault in the repro functions, which was actually caused by a problem in tie list initialisation.
Title: Evo Anyone?
Post by: Numsgil on January 10, 2006, 10:08:10 PM
Not yet.  I'm finishing up the changes I've been working on first before I synchronize.
Title: Evo Anyone?
Post by: MrMound on January 13, 2006, 12:59:26 PM
ive been switching to a new computer so I haven't been on all that much.  the internet provider took forever to get my account set up and running(it was a big headache  :banghead: getting it connected) ,but its running now  :boing: (all I have to do now is download db again.
Title: Evo Anyone?
Post by: Numsgil on January 13, 2006, 04:32:56 PM
yay :P
Title: Evo Anyone?
Post by: Endy on January 13, 2006, 10:45:30 PM
Know what you mean. I had to replace my laptop after the screen broke. :sad2:

On the plus side the old computer has been dedicated to storing most of the robot files ever made. :D

Modified the code for the semi-fixer to allow normal bots to spread themselves out better. I think it's helping to reduce the conditions that lead to rampant cannibotism(groups of bots sitting idly by with a predator next to them). I'm likeing how natural the ecosystem is looking, all the bots moving around when crowded.

I'll post the bot's code up a bit later, I want to try and do some work on allowing them access to the taste senses.

Got the idea from an article about the Darpa race winner, telling about how they added more "senses" to give the jeep a better grasp of the situation. Pretty cool. B)
Title: Evo Anyone?
Post by: Endy on January 14, 2006, 03:05:43 AM
What was this segementation fault about? I was noticing some bizare stuff in sexrepro myself.

The bots seem to be formng waves now, very weird. I think feeding is causing a local area growth and the "move when hit" dna is causing them to spread out, one bot hits another and the cycle keeps going.

In the latest run they've managed to learn to spin while as a group, more or less, traveling in one direction. :)
Title: Evo Anyone?
Post by: Numsgil on January 14, 2006, 04:34:10 AM
Most impressive.  I love to hear when bots learn new emergent behavior (wether programmed or evoluted).  Especially group behavior, like my fish school bot.  I just think it's the coolest thing bots can do.

I've rewritten most of the core routines (including reproduction) to be less chaotic and more centralized.  As a result, they're a dream to maintain, and also incredibly buggy (any new length of programming always is).  There's a bug I'm trying to isolate now that is driving me absolutely crazy.  I can't seem to isolate it.  As I step through the program it all seems just fine.  If I let it go it screws up.  I just can't find exactly where it's screwing up.  Most infuriating.

On a plus side, when the program does something naughty, it won't just exit anymore.  Or save your sim or anything like that.  The engine will simply stop running, but the GUI will remain responsive, and you'd be able to (theoretically, I'm not this far yet) save the sim, attempt to restart, load another sim, etc.

A wonderous unforeseen consequence I am simply enthralled with.
Title: Evo Anyone?
Post by: Endy on January 17, 2006, 02:01:45 AM
That'd be nice. It does get annoying having to restart it the hard way. Could it maybe auto-restart when a bug occurs? That'd be pretty cool, especially when running long evosims. I get annoyed when I have a decent sim going and the program stops on me without giving me any idea what's been going on.
Title: Evo Anyone?
Post by: Numsgil on January 17, 2006, 04:59:13 AM
I should be able to add some pretty advanced error handling routines, I just don't really understand them yet.

Theoretically, It'll be able to tell you exactly where in the code the problem is, what caused the problem, send a report back to some error database (like what XP does), save your sim, and attempt to continue automatically.

Theoretically anyway.  Like I said, I don't really understand it all yet.
Title: Evo Anyone?
Post by: Endy on January 22, 2006, 03:40:30 AM
Man this place has been dead lately. What the heck is going on?

I think I've figured one of the best kin recognition systems ever. The bots use in/out1 for identification with a twist, they'll posion that location if they're being shot at.

I've managed a hefty 1500+ bots without getting any surviving canni's, mutations being fully enabled. (Although not seen, I'm guessing canni's are cropping up but are quickly eliminated by the rest of the populous.)

Kind of makes me wonder if that is the key to recognition in general, that to work the recognition location has to change based on an individual's actions ie. friend or foe.

Tricky trying to program without being able to take things for granted, makes the whole thing a giant puzzle.

Most of the latest mutations involve their avoidance dna, the king bot has it disabled. Makes sense in retrospect, if your neighbor moves away from you there is no reason to do it yourself.
Title: Evo Anyone?
Post by: Numsgil on January 22, 2006, 03:51:07 AM
That's actually pretty brilliant.  Brilliant in its simplicity.

I had the idea a while back of figuring some way to identify another bot explicitly, and remembering if a bot attacked or not, but I think I like your way better ;)

The only way I could see that 'breaking' is if canni's appear so seldom that the gene isn't being selected for, and it breaks, then a canni appears.

Could potentially happen if canni'ism gets strongly selected against, though I'm not 100% certain.
Title: Evo Anyone?
Post by: Endy on January 22, 2006, 04:14:37 PM
Quote
The only way I could see that 'breaking' is if canni's appear so seldom that the gene isn't being selected for, and it breaks, then a canni appears.

Could potentially happen if canni'ism gets strongly selected against, though I'm not 100% certain.

It works nearly perfectly, I'm not sure what transpired but after about 6 hours the bot population had droped from 800+ to 6. I was able to rescue the survivors, from a food locating problem. The odd thing was that the few surviving bots and veggies were still normal(evolved but still recognizing kin).

I'm wondering if perhaps there was a true canni or carni-canni that evolved. Either storing 777, their id number, continously or not storing anything could have caused the die off. It could also have been caused by the poisioning genes breaking, I'll check when I get back. Either way I'd have thought all the bots would have died or there'd be only canni's. Very odd, anyway the sim is still going so I hope to have some answers later.
Title: Evo Anyone?
Post by: Endy on January 22, 2006, 11:04:54 PM
Alright I've traced the problem to the super large population sizes the bots are able to reach without going canni. They pass about 2009 and then they all stop hunting plants. After the population dies off some they'll begin hunting again.

Still not sure what is behind all of it, its neither the bots or alga dna. My own guess it simply relates to program memory. The mysterious extinction probably occured as bots nearest to food wouldn't hunt and then died. The bots farther away don't travel looking for food and so begin to slowly die off.

There may have been some canni action going on also. I've finally managed to watch this occur(one of the few bennefits of a sim crawling along at 2cy). The bot's defenses work perfectly also, causing every one of the 15 some odd surrounding bots to see the cannies as food.

I think I'll try and add a different species on the next run. Maybe the competition will keep everything more balanced.
Title: Evo Anyone?
Post by: Endy on January 23, 2006, 03:44:13 AM
The whole hunt stoppage bug/glitch/memory issue appears to be self limiting. The "lack" of food causes population decline allowing the bots to once again feed. I think with a bit of additional code I can make the bot move about more to hunt, stoping the main problems they've been having.

I've got a sim going currently it truly proves DB can handle 2000 bots at once. I'd post it but the thing saves zipped at some 300 Kb. Just a little bit more than the forum can handle. :rolleyes:

So I've posted the bot over at starting gate B)

Enjoy :)

EvoBot5.4 Stem A (http://forum.darwinbots.com/index.php?showtopic=1069&st=0&#last)
Title: Evo Anyone?
Post by: PurpleYouko on January 23, 2006, 09:05:16 AM
Try borrowing a bit of code from Hunter 2.4 or Destinatus Preliator.
Both these will start to move about if they don't see a conspec for 20 cycles or so. Many "spinner" type robots will just stay in one spot and starve.
Title: Evo Anyone?
Post by: Endy on January 25, 2006, 01:52:48 AM
Sounds exactly like what I was thinking. Thanks for the tip. B)