Bots and Simulations > Mutations
Mutation: from evolve-2(x) series
peterb:
I was a bit amazed by this bot, the main movement gene was mutated to move sideways ???.
We almost never design bots to move like crabs, but apparently its not so bad.
the eyes acted more like ehmm a fishnet, the robot didn't move to fast, but still was pretty reproductive.
Only when it sees something it moves forward to eat to eat it, otherwise it walks sidewards.
I never would think it would work, but it was pretty good actually.
It had lots of offspring, and .... it seamed to catch better !!, but why ??
Hmm maybe the side walk of a crabs in nature, does have a benefit ??
What i can think of is that the catching, although more difficult,
has less chance of chasing long, resulting, in giving up, 'out of reach targets' earlier,
and getting the ones nearby more easily...???
well its a gues.
--- Code: ---'''''''''''''''''''''''' Gene: 1 Begins at position 1 '''''''''''''''''''''''
cond
*.robage 30 >
*.eye5 0 >
*68 0 =
start
*67 sgn 1 add sgn 60 store
-32 *.eye5 div .shootval store
-1 .shoot store
*.refxpos *.refypos angle .setaim store
-1 *60 mult .shoot store
0 .fixpos store
*.refvelup 20 add *60 mult .up store
*.refveldx 7 div *60 mult .dx store
*67 1 add 67 store
*.pain *.pleas sub sgn 1 add sgn 1 sub abs 3 mult *64 add 64 store
*.pain sgn 1 sub abs 66 store
*0 sgn 1 sub abs *66 add sgn *64 add 64 store
*64 150 mod sgn 1 sub -628 mult .aimright store
*64 150 mod sgn 1 sub -1 mult .fixpos store
*.slime 50 sub sgn 1 sub sgn -7 mult 60 store
*.refmulti *60 mult .mkslime store
*.eye5 40 sub sgn 1 sub sgn -1 mult *.refvelup 61 store
*.up 60 store
60 *0 add * .up store
stop
'''''''''''''''''''''''' Gene: 1 Ends at position 151 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 2 Begins at position 152 '''''''''''''''''''''''
cond
*.eye5 0 =
*.robage 30 >
*68 0 =
start
*.eye9 *.eye1 sub sgn 54 store
*54 130 mult .aimright store
*54 abs -1 add abs 5 mult .up store
*54 abs -1 add *.mass mult .dn store
*.robage -2 div .dx store
10 .up store
*.eye6 *.eye4 sub sgn 63 store
*63 35 mult .aimright store
*.eye6 *.eye4 add sgn abs .fixpos store
*.pain 1 sub abs .pain store
*54 abs 65 store
*63 add *65 abs sgn 65 store
*65 *64 mult 64 store
*67 1 add 67 store
stop
'''''''''''''''''''''''' Gene: 2 Ends at position 244 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 3 Begins at position 245 '''''''''''''''''''''''
cond
*.nrg 16000 mod 0 =
*.mass 2 >
start
-4 .shoot store
*.waste .shootval store
20 .strbody store
20 .mkshell store
-40 67 store
30 68 store
stop
'''''''''''''''''''''''' Gene: 3 Ends at position 273 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 4 Begins at position 274 '''''''''''''''''''''''
cond
*.robage 30 <
start
*.tiepres .deltie store
500 .dx store
*.robage 5 sub sgn 1 add sgn 500 mult .dn store
*.robage 20 sub 0 floor 9 mult .aimright store
stop
'''''''''''''''''''''''' Gene: 4 Ends at position 305 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 5 Begins at position 306 '''''''''''''''''''''''
cond
*68 0 >
start
41 .aimright store
4 .repro store
*68 1 sub 68 store
stop
'''''''''''''''''''''''' Gene: 5 Ends at position 322 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 6 Begins at position 323 '''''''''''''''''''''''
cond
*.body *.refbody <
*69 20 <
*.robage 5 mod 0 =
start
300 .shoot store
50 .shootval store
*69 1 add 69 store
stop
'''''''''''''''''''''''' Gene: 6 Ends at position 347 '''''''''''''''''''''''
--- End code ---
ashton15:
--- Quote from: peterb ---I was a bit amazed by this bot, the main movement gene was mutated to move sideways ???.
We almost never design bots to move like crabs, but apparently its not so bad.
the eyes acted more like ehmm a fishnet, the robot didn't move to fast, but still was pretty reproductive.
Only when it sees something it moves forward to eat to eat it, otherwise it walks sidewards.
I never would think it would work, but it was pretty good actually.
It had lots of offspring, and .... it seamed to catch better !!, but why ??
Hmm maybe the side walk of a crabs in nature, does have a benefit ??
What i can think of is that the catching, although more difficult,
has less chance of chasing long, resulting, in giving up, 'out of reach targets' earlier,
and getting the ones nearby more easily...???
well its a gues.
[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']'''''''''''''''''''''''' Gene: 1 Begins at position 1 '''''''''''''''''''''''
cond
*.robage 30 >
*.eye5 0 >
*68 0 =
start
*67 sgn 1 add sgn 60 store
-32 *.eye5 div .shootval store
-1 .shoot store
*.refxpos *.refypos angle .setaim store
-1 *60 mult .shoot store
0 .fixpos store
*.refvelup 20 add *60 mult .up store
*.refveldx 7 div *60 mult .dx store
*67 1 add 67 store
*.pain *.pleas sub sgn 1 add sgn 1 sub abs 3 mult *64 add 64 store
*.pain sgn 1 sub abs 66 store
*0 sgn 1 sub abs *66 add sgn *64 add 64 store
*64 150 mod sgn 1 sub -628 mult .aimright store
*64 150 mod sgn 1 sub -1 mult .fixpos store
*.slime 50 sub sgn 1 sub sgn -7 mult 60 store
*.refmulti *60 mult .mkslime store
*.eye5 40 sub sgn 1 sub sgn -1 mult *.refvelup 61 store
*.up 60 store
60 *0 add * .up store
stop
'''''''''''''''''''''''' Gene: 1 Ends at position 151 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 2 Begins at position 152 '''''''''''''''''''''''
cond
*.eye5 0 =
*.robage 30 >
*68 0 =
start
*.eye9 *.eye1 sub sgn 54 store
*54 130 mult .aimright store
*54 abs -1 add abs 5 mult .up store
*54 abs -1 add *.mass mult .dn store
*.robage -2 div .dx store
10 .up store
*.eye6 *.eye4 sub sgn 63 store
*63 35 mult .aimright store
*.eye6 *.eye4 add sgn abs .fixpos store
*.pain 1 sub abs .pain store
*54 abs 65 store
*63 add *65 abs sgn 65 store
*65 *64 mult 64 store
*67 1 add 67 store
stop
'''''''''''''''''''''''' Gene: 2 Ends at position 244 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 3 Begins at position 245 '''''''''''''''''''''''
cond
*.nrg 16000 mod 0 =
*.mass 2 >
start
-4 .shoot store
*.waste .shootval store
20 .strbody store
20 .mkshell store
-40 67 store
30 68 store
stop
'''''''''''''''''''''''' Gene: 3 Ends at position 273 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 4 Begins at position 274 '''''''''''''''''''''''
cond
*.robage 30 <
start
*.tiepres .deltie store
500 .dx store
*.robage 5 sub sgn 1 add sgn 500 mult .dn store
*.robage 20 sub 0 floor 9 mult .aimright store
stop
'''''''''''''''''''''''' Gene: 4 Ends at position 305 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 5 Begins at position 306 '''''''''''''''''''''''
cond
*68 0 >
start
41 .aimright store
4 .repro store
*68 1 sub 68 store
stop
'''''''''''''''''''''''' Gene: 5 Ends at position 322 '''''''''''''''''''''''
'''''''''''''''''''''''' Gene: 6 Begins at position 323 '''''''''''''''''''''''
cond
*.body *.refbody <
*69 20 <
*.robage 5 mod 0 =
start
300 .shoot store
50 .shootval store
*69 1 add 69 store
stop
'''''''''''''''''''''''' Gene: 6 Ends at position 347 '''''''''''''''''''''''
--- End quote ---
I found something similar to this and so decided it was because as they moved there eyes saw more of the enviroment and therefore it could spot veggies easier, I thus changed the eye setup so that the eyes pointed to the sides like so:
342 dup *.eye1dir sub sgn abs .eye1dir mult store
223 dup *.eye2dir sub sgn abs .eye2dir mult store
176 dup *.eye3dir sub sgn abs .eye3dir mult store
78 dup *.eye4dir sub sgn abs .eye4dir mult store
-78 dup *.eye6dir sub sgn abs .eye6dir mult store
-176 dup *.eye7dir sub sgn abs .eye7dir mult store
-223 dup *.eye8dir sub sgn abs .eye8dir mult store
-342 dup *.eye9dir sub sgn abs .eye9dir mult store
260 dup *.eye1width sub sgn abs .eye1width mult store
-20 dup *.eye2width sub sgn abs .eye2width mult store
115 dup *.eye3width sub sgn abs .eye3width mult store
85 dup *.eye4width sub sgn abs .eye4width mult store
70 dup *.eye5width sub sgn abs .eye5width mult store
85 dup *.eye6width sub sgn abs .eye6width mult store
115 dup *.eye7width sub sgn abs .eye7width mult store
-20 dup *.eye8width sub sgn abs .eye8width mult store
260 dup *.eye9width sub sgn abs .eye9width mult store
I'm more of a progammer than an evolver like you so this worked fine for me but it probably would be hurt my mutations easily... anyways it worked even better than moving to the side because it coverd way more space as it moved than either of the methods.
peterb:
yes i can imagine changing eye directions and width does improve what you see.
It still is a bit strange to me as to why side moving can be so good.
its contra of what i think, i mean you design eyes so it folows a path, and now it turns out the path isnt that important.
Maybe the eye system is nothing more then a scoope or fishnet system.
Not realy moving but a bigger mouth, as basicly in DB we dont get realy a lot of info from eyes
Mainly there is something there and we shoot eat it..
Sometimes we add extra rules to not eat it when it is one of our kind but thats about it.
Houshalter:
I didn't study the code, but it could be a makeshift way of conspec. When you reproduce in front of yourself and your moving sideways your offspring isn't going to eat you when you bump into them and you can avoid eating each other untill the birth tie breaks. Maybe not, I just know that darwinbots come up with strange solutions to problems.
ashton15:
Look at fish, there eyes are to the side so they can see more things such as predators or maybhe food but less likely where it doesn't disepear after a few seconds like in darwin bots... I think part of it is because dawrinbots are tremoundsly short-sighted when you think about it, they can only see the width of about 20 cells whilst we see accuratly for about quarter of a kilometer, thus darwinbots have to make the most of the little we can see, the only reason our eyes point forwards is it means we can focus eyes on a single object and I guess at some point in our brain we do some trigonometry or some other thing to work out how far away anything is, bots bieng as short-sighted as they are it's also not as important to judge distances, maybhe if you allow bots to develop longer-ranged sight (maybhe longer range costs more energy like shootval) and delete the ability to know where exactly something is (x & y co-ords) so that a bot can only judge distance on apparent size and calculations then encourage complex MBs I don't think it would be long until you get some complex solutions to sight...
Navigation
[0] Message Index
[#] Next page
Go to full version