Author Topic: Sonar  (Read 3345 times)

Offline Havvy

  • Bot Neophyte
  • *
  • Posts: 16
    • View Profile
Sonar
« on: June 30, 2007, 03:35:16 AM »
IDEA GENUS:  Sensory Ability
IDEA SPECIES:  Sonar

[you]SPECIFICS[/you]
1)  Overview
2)  Pingss and Back Trails
2)  Frequency
3)  Summary List

[you]Overview[/you]

From what I've noticed, there seems to be only two types of sensory.  Sight and Touch.  I want to introduce once more and that is Sonar.  Sonar is by default invisible to the eye but if possible it would be nice to have options on for 'pings', 'back-trails', and always on.  Sonar just gives an overall view of the field of what's closest in a small range.  Each use of sonar would cost the bot 0.5 NGR to avoid overuse which would crash the sim.  The NGR for using Sonar would have that at a minimum for that reason.  Higher costs would be posible.  Using Sonar would be a command of some sort.

[you]Pings and Back Trails[/you]

After a part of the sonar runs into an object it recognizes (other Sonar aren't recognized) it will initiate a ping and that part of the sonar ring will stop and turn around causing what I'm calling a Back Trail.  On the back trail the signal can fade away.  Why?  Well, the sonar ring only goes so far before losing strength.  I'll let the programmer figure out that limit.  The limit also effects the back trail though so if a ping occurs after losing 51% of it's strength, it will not be able to return to the spot that the bot was at (a ping could still hit the bot if it moved in the same direction of the ping) when sonar was initiated.  The length thing would best be programmed through a timer.  When a ping hits the bot, it gives off the information of direction and distance.

[you]Frequencies[/you]

Sonar just wouldn't work without a frequency part added to it.  Basically, two random numbers between 1 and 4000 are created at a bot's birth.  These numbers are macro and micro frequency.  They are the only information that is sent out to other bots and they are mostly worthless to other bots.  The first one ,macro frequency is checked against any time two sonar meet.  If they are the same the micro frequencies are checked.  If the micro frequency is the same it ignores it (There's a 0.00000625% [1/16,000,000] chance that two bots' sonar marco and micro frequency will be the same) and if it's not then they will cause a ping to occur.  Basically the minor frequency is used as a way of stop the same bot's sonar from negating it's effect.  The ping for same macro will cause a small challenge for the bots to figure out.  Is what they hit another bot's sonar (0.025% [1/4000] chance of any two bot's sharing the same frequency) or something useful?  This part is a small test to see if they use the frequency to some unknown advantage.  One final thing about frequencies.  All bots have the ability to know when they are hit with a sonar that is there macro frequency.  It won't tell distance since it will be starting a ping , but it does have direction.  All bots (even those w/o sonar) would tell if a ping of their frequency initiated from them.

[you]Summary List[/you]
  • Sonar Goes out in all direction like a ring.
  • It costs 0.5 NRG minimum to use.
  • They have a maximum distance they can go before losing energy
  • When a ping occurs, the part that hits it flips direction and remembers distance from the hit
  • The distance is given back when the sonar returns to the bot (which is a little more difficult if the bot moves all the time)
  • Spinners can be replaced with Sonar  (More of a use)
  • There is a macro and a micro frequency.
  • All bots generate them at birth (between 1 and 4000 each)
  • A bot hit with the same macro frequency it is born with will register it occuring
Somebody please code this into the sim.
« Last Edit: June 30, 2007, 04:20:40 PM by Havvy »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Sonar
« Reply #1 on: June 30, 2007, 06:09:39 AM »
You can simulate a "ping" by increasing the eye5 width to a full circle.  Of course you'd still be limited by the vision radius.

Why exactly do you want sonar?  What you present here feels a bit overwrought.  Maybe if we identify the root of what you want to do, we can devise a better system.

Offline Havvy

  • Bot Neophyte
  • *
  • Posts: 16
    • View Profile
Sonar
« Reply #2 on: June 30, 2007, 04:17:34 PM »
Edit to Original Post:  Changed most 'Hits' to 'Pings' for easier understanding. /edit

I want this feature added into the simulation to see if Zero-Bots can evolve using sonar.  Also, it could complement the sight feature by having it so that when a bot receives it's ping back it looks at what it received.  If it's looking for food then using sonar could help so the bot doesn't have to keep spinning all the time and instead it can focus on sending sonar out instead of spinning to save energy.  It also helps fixed bots a ton.

Offline Peter

  • Bot God
  • *****
  • Posts: 1177
    • View Profile
Sonar
« Reply #3 on: June 30, 2007, 04:50:14 PM »
I am not sure how ,but in a zerobot simulation I have had different zerobots who had increased there vision with the use of spreiding a few eyes completely, the result of it was they had complete vision, altrough they vision was only so that they could see that there's something near,  but not where it was. So it is possible, altrough if haven't seen any zerobot that uses it properly.
Oh my god, who the hell cares.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Sonar
« Reply #4 on: July 01, 2007, 12:16:58 AM »
Spinning is actually a very efficient strategy.  Not sure if it was implemented right or not, but since there isn't any torsional drag (spinning drag) a bot only needs to spend energy to start the spin and stop it.

Functionally vision and a sonar ping would be pretty close.  They both tell you the direction an object is, and even a few things about it.  If we add new senses, I think they should be strongly different from any of the current senses.

For instance, a sense of "smell" would allow entire colonies of bots to communicate en masse by releasing "pheremones".  The more bots producing these smells, the stronger the ambient smell would be.  So smell would allow for an entirely new form of communication.

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
Sonar
« Reply #5 on: July 02, 2007, 02:20:07 AM »
You can actually setup a bot to act like a sub, by using setaim while at the same time adjusting the direction of motion to continue in the same direction as before. Basically you look in one direction and move in one direction, then flip around and look in another while either not moving in the reverse or adjusting the direction of motion to continue in the same direction as before.

Maybe use sonar as a super version of eyes but don't allow the bots to receieve ref information from them.

I gotta agree with Nums that quorum sensing/smell would be more useful, in general. In general it'd act as a limited scope global variable. I think this may be one of the main stumbling blocks in alife sims, since real organisms can easily interact in groups.