Bots and Simulations > Evolution and Internet Sharing Sims

How to avoid cannibotism?

<< < (2/3) > >>

Peter:

--- Quote ---The problem is that at an individual-selevtion, level, cannibiotism really is better than playing nice. Cannis can feed with impunity on their meek, unconditionally-cooperating kin, and this represents a huge individual advantage for a bot.
--- End quote ---
And, yes the problem. Cannis are born, destroy everything around them, with a bulk of energie they reproduce often, often enough to repro some other cannis, and the beginning.

That said, the simplest solution is ofcource self-defence.

That would mean a simple bot only needs,

1 )A way to see veggies, and eat them.

2 )A way to defend themself if atacked.

With no own id, a bot would attack those who can't defend themself(veggies)
With no own id, a bot would attack those who attack him. Take care this doesn't endin complete anargy like numsgil said. With every misshot another bot mixing in the fight.

Maybe this is a way against cannis.

EricL:
I wish to mearly point out (again) that this discussion is about evo-sims and state my strong opinion that solutions of the form "just code your bot this way" are missing the point.  Besides, the way we are using the term 'species' is broken since we are discussing asexual reproduction.  When you code so-called species recognition into a bot, you are in effect coding in altificial altruism, a handicap which will not last long in an asexually reproducing evo sim.  It will be selected against.

Any hand-coded species recognition DNA we might concoct is artifical and fragile in the face of mutations, and will and should break down so that evolution can proceed.  I predict any real notion of species that might evolve out of our evo sims will be very different from how we use that term today.  For one thing it may necessitate symbiosis evolve first.

Peter:

--- Quote from: EricL ---I wish to mearly point out (again) that this discussion is about evo-sims and state my strong opinion that solutions of the form "just code your bot this way" are missing the point.  Besides, the way we are using the term 'species' is broken since we are discussing asexual reproduction.  When you code so-called species recognition into a bot, you are in effect coding in altificial altruism, a handicap which will not last long in an asexually reproducing evo sim.  It will be selected against.
--- End quote ---
Again, (did you really)oh well sorry.  , I gues you're meaning me.  



Well yes, not it aren't species in the way like animals. But, bacteria and such are divided in species too. As the DNA is practically desame. Well mostly desame.
And of altificial altruism,(difficult words) it is artificial, that's true. But in all cases altruism, I gues you're right in most possibilities. But in possibilities with a sim with a selfdefending bot, attacks whoever attacks him. It isn't a altruism.


--- Quote from: EricL ---Any hand-coded species recognition DNA we might concoct is artifical and fragile in the face of mutations, and will and should break down so that evolution can proceed.  I predict any real notion of species that might evolve out of our evo sims will be very different from how we use that term today.  For one thing it may necessitate symbiosis evolve first.
--- End quote ---

I see your point now.
We are mostly programing bots to wipe others out and keeping one specie.

Evolution goes like everyone for itself, what is the easiest way to get energie, who can I destroy with minimal risk to get better myself.(I this case everyone is another specie)

Well, am I right, say if I am not.

Okay now to see a sim, where species have evolved becouse of symbiotis. Is there a way to make that happen.  , I am thinking is there some way.

Ispettore:
well guys I'm happy for your answers! I'm not an expert of the program nor of evolution, but I agree that hard coding robots is not the best way. I think we must find an environment where cooperation is better than anarchy...

Peksa:
In my longest running evosim (7M cycles) my bots haven't still evolved cannibalism, or the cannibals have died off every time. The bots use *.refeye *.myeye != check. Well, kinda.

They move fast and shoot from quite far away - even their own species - but when they get close to other than their species, ie. veggies, they slow down to target's speed and shoot more accurate. This way the move around the large field when they see any bots, but feed carefully only of other species.

By the way, I'd be interested if any of you could find out how it reproduces.


--- Code: ---
cond
 *576 !=
 !=
 ~ *498 *.eye2dir 0 and
 not
 <
 !=
 -489 !=
 | not
 0 *677 and
 ~=
 ~ .aimleft dec
 and
 .up dec
 0 and
 & *.eyef store
 *.tmemloc else
 stop

''''''''''''''''''''''''Gene  1: Last 'stop' at position  34''''''''''''''''''''''',

 stop

''''''''''''''''''''''''Gene  1: Last 'stop' at position  35''''''''''''''''''''''',

 >> 1 -4 *555 <
 not
 -4 or
 start
 store
 ~ 0 dec
 stop

''''''''''''''''''''''''Gene  1: Last 'stop' at position  49''''''''''''''''''''''',

 angle *.tmemloc *.eye1 0 add dec
 store
 cond
 *426 dist ceil *.eye3 0 mod !=
 0 add ~ inc
 6 not
 and
 16 else
 >=
 0 inc
 *.trefaimsx div start
 or
 dec
 *.dn 336 sub .aimright store
 ^ <
 else
 pyth <
 *.eye9 mult -129 start
 *919 -31 !~=
 dec
 ~ *.eye9 *.eye1 start
 stop

''''''''''''''''''''''''Gene  2: Last 'stop' at position  104''''''''''''''''''''''',

 *-388 *.eye8 add stop
 *.eye2 ~ !=
 ~=
 pow %=
 abs *-117 pow !~=
 *.eye7 start
 *.eye7 *.eye3 <
 sub

'The main gene

cond
 or
'The bot evolved with circling bots, hence eye4, not 5
 *.eye4 !=
 pow cond
 1 and
 start
 add 35 *.eye3 *.eye7 sub 453 sgn div .sx store
 rnd 30 .up store
 *.refveldx .dx store
 start
 *20 522 and
 *754 ^ sub ^ << !%=
 1 start
 .shoot dec
 37

'the second clearly meaningful gene

cond
 *.up dec
 7 *.eye5 47 >
 *.refeye *.myeye !=
 *50 ceil 0 =
 add start
 *.refvelup .up store
 10 .shootval inc
 start
 store
 floor inc
 *.nrg not
 =
 114 *.aimright pyth and
 floor *.body cond
 store
 <
 3284 start
 store
 xor
 pow sub dup 41 300 >
 store
 else
--- End code ---

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version