A proximity behavior is a behavior that can be activated on agents in an agent system. This behavior measures proximity distances between each agent and its neighbors, and then fires triggers when user-defined proximity distances are breached and subsequently re-established.
See Calculating Proximity for more information on how the behavior calculates proximity between agents.
The Behaviors Tab has the following Properties:
Defines how often the system will check to see if agents are within the defined proximity to each other based on the selected time unit.
This number defines the amount of distance that will trigger a proximity detection in the selected measurement unit.
There are two options:
Active Rules are rules that can be selected to apply the behavior during specific circumstances or conditions. For example, you might want the behavior to only detect proximity with certain types of agents, or with agents that have a certain state or behavior activated.
Clicking the button will create a new active rule. Once an active rule is selected, the name of the rule will be displayed in the Active Rules field. The rule can be removed by clicking the X button next to the name of the rule. The rules and categories are as follows:
Self-based active rules rules apply to the agent based upon its own properties. There are the following options:
Neighbor-based active rules apply based upon certain neighbors. There are the following options:
Triggers for the proximity behavior are defined here. Clicking the button will open a menu of the available triggers. The set of triggers you can add correspond with the set of events that the behavior supports.
Below are the set of events that a proximity behavior supports. See Agent System : Integrating with Other FlexSim Logic for more information on listening to proximity behavior events.
This event fires when a neighbor agent is first detected within the proximity radius.
This event fires when a neighbor agent is first detected as having left the proximity radius.
This event fires on each update interval, for every neighbor agent that is currently in proximity with the agent.