Author Topic: Regular Ties don't form with vision disabled 2.45.01  (Read 7066 times)

Offline Tilthanseco

  • Bot Builder
  • **
  • Posts: 60
    • View Profile
Regular Ties don't form with vision disabled 2.45.01
« on: June 06, 2012, 12:10:32 AM »
For some reason, I can't get regular ties to form when the bot's vision is disabled. In version 2.45.01

Attached is a save featuring different tie forming bots, none of them will form permanent ties.
Undisputed creator of bot Sonar!

Offline ikke

  • Bot Destroyer
  • ***
  • Posts: 300
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #1 on: June 08, 2012, 10:36:30 AM »
Are they really linked to vision?

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #2 on: June 08, 2012, 12:27:41 PM »
That's because the robot must "see" the robot it is trying to tie to. example: If you have six robots around you, you will only tie to one.

i.e. Yes ikke they are.
« Last Edit: June 09, 2012, 06:27:40 PM by Botsareus »

Offline Tilthanseco

  • Bot Builder
  • **
  • Posts: 60
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #3 on: June 09, 2012, 01:41:13 AM »
I thought it was a bug because a bot does not necessary need to know there is a bot in front of it to tie to it. I found this while testing my blind bot against the bots posted here: http://forum.darwinbots.com/index.php/topic,3549.0.html (The blind bot challenge).

The 2 blind bots here work by firing ties randomly and sharing energy. They don't make any reference to eyes so they should be able to work with vision disabled.
In fact, most of the ref values can be used with touch now and still work with vision disabled.

This limitation or bug makes it more difficult for blind bots to evolve with vision disabled because they can't be multy bots or use tie feeding.

Therefore I think it is a bug and should not be by design.

P.S. The ties I am referring to are the ties initiated by bots, not the birth tie. The birth tie does indeed form with vision disabled.
Undisputed creator of bot Sonar!

Offline ikke

  • Bot Destroyer
  • ***
  • Posts: 300
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #4 on: June 09, 2012, 02:33:07 AM »
That's because the robot must "see" the robot it is trying to tie to. example: If you have six robots around you, you will only tie to one.

i.e. Yes ikke they are.



maybe a fix could be:

While there is a birth tie and vision is disabled, the robot could see it's parent. What do people think?
Okay, this explains why my feeble attempts at creating a multibot didn't work

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #5 on: June 09, 2012, 06:29:20 PM »
Ok, The Tie is created using lastopp, how about set lastopp to parent on robot birth (will work with or w/o vision disable, the idea is this value will get overwritten when a robot gets a visual hit)?
Or, Forgetaboutit?
« Last Edit: June 09, 2012, 06:32:51 PM by Botsareus »

Offline ikke

  • Bot Destroyer
  • ***
  • Posts: 300
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #6 on: June 10, 2012, 03:09:51 AM »
This lastopp business actually means that a bot is never truly blind when using ties. It always has the default vision system (although for a blind bot we choose not to use it) which sets lastopp. Right?

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #7 on: June 11, 2012, 02:45:55 PM »
Quote
This lastopp business actually means that a bot is never truly blind when using ties.

Yea, that's my idea.

Quote
It always has the default vision

The vision system is more complex, but, for tie purposes it only uses "lastopp."
I guess "lastopp" is the last robot that enters the line of vision.



Currently, the way it works is:

If a robot is blind lastopp is always 'nothing'

What I want to implement is when the robot reproduces lastopp is set to parent.
« Last Edit: June 11, 2012, 02:56:12 PM by Botsareus »

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #8 on: June 11, 2012, 03:58:45 PM »
Numsgil, it should be one little line of code, should I implement this or not?

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #9 on: June 11, 2012, 04:31:49 PM »
So disclaimer: I haven't looked at the code and don't know what's going on in there.

That said, it doesn't sound like setting lastopp to the parent will help.  Or rather, it will only help creating ties to the parent.  But you probably want to be able to make ties to any arbitrary bot.

Probably, if there's no lastopp set, you can just do a query in front of the bot to find the closest bot that the current bot is reasonable pointed to, and tie to that.

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #10 on: June 11, 2012, 04:40:19 PM »
Quote
Or rather, it will only help creating ties to the parent.

Well I guess that's what Tilthanseco wanted to do in the first place. I am only suggesting this because it is very easy to implement and debug. (There is even a possibility it won't even work, I only looked at the logic once) If the robot sees something other then its parent, lastopp will be set to that robot.
« Last Edit: June 11, 2012, 04:41:55 PM by Botsareus »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #11 on: June 11, 2012, 04:45:04 PM »
That's true, but lastopp carries a lot of extra information (and logic) along with it.  Would it get cleared the cycle after a robot is born?  I could see an argument to be made for a bot to have a pretty full compliment of sensory information about its parent the cycle after it's born.  But I'd be careful about side-effects.  This is exactly the sort of innocuous change that can turn out to have dramatic and far reaching consequences.  (Things like everyone else's birth tie removal genes no longer working, etc.)

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #12 on: June 11, 2012, 04:54:50 PM »
You are saying lastopp will continuously transmit data on the robot even if the robot is on the other side of the map?

Ok, how about: " If lastopp is nothing , use ParentID to tie? "
« Last Edit: June 11, 2012, 05:05:08 PM by Botsareus »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #13 on: June 11, 2012, 07:11:26 PM »
You are saying lastopp will continuously transmit data on the robot even if the robot is on the other side of the map?

Maybe.  I haven't looked at the code, but I know it assumes lastopp is tied to vision.  So I'd be careful violating that assumption is all.

Quote
Ok, how about: " If lastopp is nothing , use ParentID to tie? "

Well you'd only want to do that during the first cycle of the bot's life, though.  But yeah, that's probably the least obtrusive way to fix this exact issue.

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Re: Regular Ties don't form with vision disabled 2.45.01
« Reply #14 on: June 12, 2012, 01:13:15 PM »
sorry, still no tie feeding :(
you can make a multibot though :)

Here Tilthanseco, try this:

Just unzip and run, If you already have darwinbots installed just replace the .exe file ;)
« Last Edit: July 13, 2012, 10:53:13 AM by Botsareus »