Search code examples
netlogoagent

Two agents of the same breed


I was wondering how you would refer to two agents of the same breed without specifically stating the who/number of the turtles. What I'm trying to do is when two players are on the same patch, the larger player consumes the smaller player. But there are players constantly spawning, so how do I refer to them without specifically stating the who? Any help is appreciated! This is what I have so far: ''' ask players [if any? other players-here [if size player '''


Solution

  • You can use max-one-of to find the largest player and give them a temporary name (eg "biggest"). Then you can address the player directly. It would look like this:

    to consume          ; patch procedure
      ask patches
      [ let biggest max-one-of players-here [size]
        ask biggest
        [ if any? other players-here
          [ ... ]                  ; code to get eaten
        ]
      ]
    end