Darwinbots Forum
Bots and Simulations => Bestiary => Interesting behaviour bots => Topic started by: d-EVO on November 24, 2008, 03:40:05 PM
-
This is my first sex repo bot.
tell me what you think
'NAME : SexBot
'BY : d-EVO
'CLASS : IB
'Males compete for females
'Females run away from males so only the strongest males can mate
'Unmutated they will not inbreed
'Dont handle mutations well
'Make sure you start of with at least two females and 1 male,
'Females will grow bigger than males
'Males don't feed
def x 50
def y 51
def mom 971
'Universal comandes
cond
*.eye5 0 =
start
*.eye1 *eye2 add *.eye3 add *.eye4 add *.eye6 *.eye7 add *.eye8 add *.eye9 add sub sgn 40 mult .aimsx store
*.vel 20 <
10 .up store
dropbool
stop
cond
*.mom 0 =
start
1000 rnd .mom store
stop
cond
*.x 0 =
start
1 rnd 1 add .x store
stop
start
*.x .out1 store
*.mom .out2 store
stop
'FEMALE
cond
*.x 2 =
*.body 3000 <
*.nrg 3000 >
start
100 .strbody store
stop
cond
*.x 2 =
*.fertilized 9 =
start
10 .sexrepro store
stop
cond
*.x 2 =
*.eye5 0 >
*.in1 0 !=
start
*.maxvel .dn store
624 .aimdx store
stop
cond
*.x 2 =
*.eye5 0 >
*.in1 0 =
start
*.refveldx .dx store
*.eye5 50 =>
*.refvelup .up store
-6 .shoot store
dropbool
*.eye5 50 <
*.refvelup 30 add .up store
dropbool
stop
cond
*.x 2 =
*.eye5 0 >
*.in1 2 =
start
300 rnd .aimdx store
stop
'MALE
cond
*.x 1 =
start
*.body 1000 >
100 .fdbody store
dropbool
*.nrg 32000 =
16000 .shootval store
stop
cond
*.x 1 =
*.eye5 0 >
*.in1 1 =
start
*.refveldx .dx store
*.eye5 50 =>
*.refvelup .up store
-6 .shoot store
dropbool
*.eye5 50 <
*.refvelup 30 add .up store
dropbool
stop
cond
*.x 1 =
*.eye5 0 >
*.in1 2 =
*.mom *.in2 !=
*.refbody 3000 >
start
*.refveldx .dx store
*.eye5 50 =>
*.refvelup .up store
-8 .shoot store
dropbool
*.eye5 50 <
*.refvelup 30 add .up store
dropbool
stop
cond
*.x 1 =
*.eye5 0 >
*.in1 0 =
*.in1 2 =
*.mom *.in2 = and
*.refbody 3000 > and or and and
start
300 rnd 600 add .aimdx store
stop
cond
*.waste 100 >
start
.backshot inc
-4 .shoot store
*.waste .shootval store
stop
-
Is there a point in not having the males feed, apart from telling the difference in genders? Feeders would be more efficient at gaining energy I think.
Btw. cool avatar, how'd you make the picture?
-
Is there a point in not having the males feed, apart from telling the difference in genders? Feeders would be more efficient at gaining energy I think.
yes, and a very good point.
no destractions from there true goal.
They do feed from other males.
The males dont need as much energy because they dont reproduce.
More food for females that do reproduce.
Btw. cool avatar, how'd you make the picture?
Thanks,
was trying to make the inititial shape of an ameboa but I made it shoot ties before it turned and I didnt get the repro percentage right so they just got smaller.
(made a complicated formula for a consistent bot size so the % changes through each cycle, will give it to you if you want)
The bot was suposed to asume a roughly round shape and move by using fixpos and fixang. trying to make a new way of movment but getting them to co-ordinate is hard.
Dont know if I will finish it, well any time sone anyway, currently working on a true learning neural network bot.
-
I feel your pain, as most others do. Tie physics is unpredictable at the best of times.
I'd try running the bot if my computer could only handle .sexrepro without crashing and burning; how long does the genetic integrity of the bot stay?
-
nice concept
Dough females run away, they also eat, and bigger berta's move slower.
So I'm not sure if this generates offspring that learns to move fast.
Rather I think it would promote offspring of big berta's.
Also I noted it eat's it children, altough thats allowed, I think its a less effective family strategy.
A nice bot to see until it suddenly became cancerous creating about 1000 bots or so (maybe a mutation).
-
how long does the genetic integrity of the bot stay?
a while untill the bot develops genital cancer
Dough females run away, they also eat, and bigger berta's move slower.
Rather I think it would promote offspring of big berta's.
That was the plan
Also I noted it eat's it children, altough thats allowed, I think its a less effective family strategy.
Think of it as testing your childs integrety
A nice bot to see until it suddenly became cancerous creating about 1000 bots or so (maybe a mutation).
Ya, a prob I couldnt fix
It is caused by a cancerous gene turning the bots into sperm spraying idiots, forcing the females to repro with children that are also infected with this gene
My solutiojn to this problem is to use a biger area with fewer veges but set the repop threashhold to high so the veges are always spread out and on lucky female cant hog it all and then kill itself with a waste overdoes
A cell may become cancrouse but it should not spread to far. One simulation I ran , after on cell turned cancerous the pop went to 1500 and then they developed an emmunity to that mutation which was cool. pop settled at about 500 for abot 50000 cycles and then the big berthas took over
nice concept
thanks
I thought so to
-
I was today testing a sim in wich I used viruses who introduced sexrepro.
The problem only was like here at some moment it became to dominant.
I'm now experimenting with a variant who only is infextive a 1000 cycles
I simply do something like:
cond
*.botage 1000 > 998
start
delgene sexrepro part....
stop
íts actualy a bit more complex then above (its a 1G bot) , but what I mean to say is perhaps having an age limit will stop it blooming cancereos
-
perhaps having an age limit will stop it blooming cancereos
I actualy did think of that but I also thought that part of the dna would crumble under evo even quicker than the cancer would start
So I made them eat eachother instead. much more effective in that it there is no chance that a male bot can be sucessfull without competing with other males and the weaker defective males will die out.
-
a while untill the bot develops genital cancer
I hope that came out wrong...
Sorry, couldn't help it
Anyway, the problem is that during sexual reproduction, the DNA changes a little each time. So it's a matter of time until the anti-cancer gene loses its integrity, then the exposed reproduction gene only needs to fail, and voila, a cancer appears. It's something that can't be stopped.
-
You can try adding an age cost that doesn't start until the bot reaches some arbitrary old age (like 20K or higher). That should eliminate the big berthas.
-
I had to test this. One of the best sexbots I have seen in a while. I would qualify it for a league after running it trough a mutator to improve efficiency further.