Author Topic: The case of blind Mr Magoo  (Read 6077 times)

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
The case of blind Mr Magoo
« on: December 19, 2005, 02:54:04 PM »
Here is a very basic simulation to show some important concepts to people not experienced in running long simulations.

Mister Magoo is a curious bot - it does not use eyes at all.  It runs forward until it bumps into something, then it checks that it's not its own species and starts feeding.

As a result, Mister Magoo is a very inefficient bot.  Let me show you how you can run a long sim with this bot.

Since this bot is a very poor hunter, it requires a high concentration of food in the environment, so we are forced to use a small-size playing field.  I used the second smallest one (16000x12000).  If you go bigger, then simulation slows down too much.  If you go smaller, then you run into a very small population size of Mister Magoo, which may die out simply by chance.

I used the default veggie (Alga minimalis), but gave it only 1 energy per cycle and set the limit of population to 300 so that Magoo had time to catch up to growing veggie population.

The last thing that's worth mentioning here is that I had to jump-start the sim by placing a lot of bots on the field in the beginning - 150 veggies, 200 bots.

This is it - all other settings are at default and the simulation runs for millions of cycles with bot population oscillating between 100 and 300 bots.  Enjoy!

Edit: This post refers to 2.36.7 version of DB.
« Last Edit: December 19, 2005, 02:55:36 PM by shvarz »
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
The case of blind Mr Magoo
« Reply #1 on: December 19, 2005, 02:57:15 PM »
Quote
Mister Magoo is a curious bot - it does not use eyes at all. It runs forward until it bumps into something, then it checks that it's not its own species and starts feeding.

So how does it check anything if it has no eyes?

The program specifically doesn't go through the "writesenses" routine if the genome has no eye commands. That means that it can't check anything unless it makes a tie first to read through. All the refvars won't work.
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
The case of blind Mr Magoo
« Reply #2 on: December 19, 2005, 03:14:07 PM »
From designer: "Bot is cannibotisitic, but is designed to avoid feeding on offspring and one another".

I have no idea how he did it :)  I just took it for granted.
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
The case of blind Mr Magoo
« Reply #3 on: December 19, 2005, 11:14:26 PM »
Quote
So how does it check anything if it has no eyes?

Taste and touch, sheez how do blind people manage. :D That crafty Mister Magoo, I think he knew what he was doing the whole time. :lol:

Since it's the only species in the sim, it's safe to assume anyone else shooting at you is a member. Anything that the bot hits that tries to eat it back is avoided. It also turns a rnd amount at birth, so as to avoid it's parent.

This is actually one of my more complex bots. The lack of vision really tested my skills as a designer. Was a devil trying just to keep them from completly destroying each other, let alone adding a basic hunting ability.
« Last Edit: December 19, 2005, 11:21:24 PM by Endy »

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
The case of blind Mr Magoo
« Reply #4 on: December 20, 2005, 01:27:16 PM »
Clever bit of design work there Endy.

I can always tell your bots from the complicated algorithms in them.  :D
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
The case of blind Mr Magoo
« Reply #5 on: December 21, 2005, 09:05:40 PM »
As long as it's not something like the One or one of your complex vision schemes, I do okay.

This was particullary hard since I couldn't use any of the standard stuff. With no sight it was about impossible to tell what was being hit or shot at.

Sometime I'd like to try and make a truly combined senses bot, I think the more stuff we give them at the start the better their overall evolution goes. Just need to balance the complexity with safety and simplicity. The One does remarkable well in this regard giving rise to fairly complex mutants.

I do like the fact that we can actually mix symbols and numbers like this. I don't think I've heard of any high level programming language where you can switch from symbol to number and back again, so easily. I wish the others did have the capability, we could combine conditions and operations in one line. :)
« Last Edit: December 21, 2005, 09:53:37 PM by Endy »

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
The case of blind Mr Magoo
« Reply #6 on: December 21, 2005, 10:32:03 PM »
Quote
Mister Magoo is a curious bot - it does not use eyes at all.
That's how a bot should be! It's not realistic with single cellular organisms with eyes. I just wonder if I can try this one in 2.4.A. It's not possible to run a successful simulation in 2.4.A with those settings you mensioned though.
The internet is corrupt and controlled by criminally minded people.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
The case of blind Mr Magoo
« Reply #7 on: December 21, 2005, 11:08:46 PM »
Hmm, this seems familiar...

Again, Darwinbots are not necessarily single celled analogues of real life orgtanisms.  They are what they are, and as all adaptive complex systems, are subject to mutation and natural selection, which is what we're really interested in.

Single cells are just the closest natural analogues in real life, and so are what we tend to pull inspiration from.

Second, and perhaps more controversially, there are cells with eyes of some form or another.  I can't get alot of information on them online, but I do find numerous references to such organelles.

Google "eye organelles" and see what I mean.  As to the capabilities of these eyes, I have no idea.  I assume at the very least they can detect differences in light.  Probably not as complex as eyes in Darwinbots, but still.  So nyah :P

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
The case of blind Mr Magoo
« Reply #8 on: December 21, 2005, 11:19:16 PM »
Umm...actually that was one of my reasons for constructing this bot. I hoped that the sheer lack of eyes would spur it to develop them on it's own.

I personally just see the eyes as a sort of senseing organ(s). Unless some major work is done into computationally inexpensive field propagation(probably hardest thing to simulate), they're are the best we'll have for a long while.
« Last Edit: December 21, 2005, 11:22:38 PM by Endy »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
The case of blind Mr Magoo
« Reply #9 on: December 22, 2005, 12:03:53 AM »
Basically, if you can sugest something radically better than eyes, I'd probably go with it.  Eyes are one of the main bottlenecks for the program.

But I just don't see what that would be.  Eyes seem to work well enough at the moment.

Offline ollj

  • Bot Neophyte
  • *
  • Posts: 10
    • View Profile
The case of blind Mr Magoo
« Reply #10 on: December 22, 2005, 10:11:13 PM »
You could give them a smell sense to smell -2 energy shots in a wide 180° view infront like sharks smell blood.

You could give them a hearing sense to hear movement nearby. Scares the shit out of them if they cant see that made that cracking noise.

A Touch sense is essential, it should not go on impact but on anything that passes by closely in a liquid.

Or simply make hormones that transmit all kinds of information, mark dangerous places, cause reproduction or make ant trails.


And now guess what, the blood of a cell that has 8 eyes smells different than the blood of a cell with 7 eyes. Same with moving noise, it all depends on the amount of eye commands in the DNA! Important to know what you pursuit.


One thing I miss is that eyes are not steroscopic, I would like to see 2 eyes that can tell the exact distance of anything that is in view range of 2 (or even more) eyes and a DNA code that can handle basic 3D wiew (err 2D, I just mean seeing whats behind the left eye but can be seen by the right eye).
I so want a MB with the ability of stereoscopic view.
« Last Edit: December 22, 2005, 10:17:07 PM by ollj »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
The case of blind Mr Magoo
« Reply #11 on: December 22, 2005, 11:50:04 PM »
Quote
You could give them a smell sense to smell -2 energy shots in a wide 180° view infront like sharks smell blood.

You could give them a hearing sense to hear movement nearby. Scares the shit out of them if they cant see that made that cracking noise.

These seem to me to offer more or less the same computation time and net effect on bot design as the present eyes.  Alot of it is just semantics issues I suppose.

Quote
A Touch sense is essential, it should not go on impact but on anything that passes by closely in a liquid.
Bots already have a limited sense of touch.  Doing 'wind' from nearby movement is more difficult, as that would require me understanding fluid dynamics and wave propogation, which I don't :D

Quote
Or simply make hormones that transmit all kinds of information, mark dangerous places, cause reproduction or make ant trails.
I'm actually working on adding these.   :ph43r:

Quote
One thing I miss is that eyes are not steroscopic, I would like to see 2 eyes that can tell the exact distance of anything that is in view range of 2 (or even more) eyes and a DNA code that can handle basic 3D wiew (err 2D, I just mean seeing whats behind the left eye but can be seen by the right eye).
I so want a MB with the ability of stereoscopic view.

The main problem is that the value returned in an eye is inversely proportional to distance.  Basically you can tell distance only looking through one eye, so you don't need two.

Realistic?  Nope, but that's hardly the least realistic element of eyes.  The amount of info bots can gather just from looking at another bot is scary.
« Last Edit: December 22, 2005, 11:50:27 PM by Numsgil »

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
The case of blind Mr Magoo
« Reply #12 on: December 24, 2005, 01:03:18 AM »
Quote
The amount of info bots can gather just from looking at another bot is scary.

I can kind of understand the info, I normally think of the refs as an organism sensing different apparent features of another. Most of the refs don't really tell you about the fitness of another bot. A bot could consist of numerous "eyes" but be no more strong than a bot with 5.

Stuff like nrg, body, are the only real judge of fitness. In different evosims I've had Alga store a value that makes them look like a friend or look agressive, but not actually hurt a bot in any way.

I think some sort of Average-Percentage "brain" would work better. It would look at multiple factors including past events and make a determination on action.

I'd like if the eyes could return a frequency reading instead of distance. I think of our current eyes as the nine range finders. From frequency stuff like color and distance could be obtained.

Offline maheshjr2000

  • Bot Neophyte
  • *
  • Posts: 35
    • View Profile
The case of blind Mr Magoo
« Reply #13 on: June 22, 2006, 02:27:57 PM »
I really dont think that we should think of them as eyes at all but every many sensory organs packed into one.

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
The case of blind Mr Magoo
« Reply #14 on: June 22, 2006, 03:25:20 PM »
Kind of a directional mass/distance sense.

That's basically what they are
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D