An 'agent' is an entity in a model that is motivated or goal driven, can adapt its behavior as a function of environmental stimuli, and makes decisions based on local information. An agent may also have memory, allowing it to adapt and make decisions based on past experience. Agents typically represent animals or humans. Due to their decision-making ability and due to the fact that they operate independently, without any top-down, centralized control, agents are often said to be 'autonomous'. Models that incorporate adaptive agents are usually referred to as 'agent based' (Box 1).
Most agent-based models simulate a group of agents (often called a 'swarm') that are co-situated in the same space (the 'environment') and operate in parallel. Agents interact with one another and with their environment and may modify their environment through their actions. An agent's behavior is therefore highly context dependent and is the result of the cumulative influence of current and past stimuli from neighboring agents and the environment. While agents in a model may start out identical, their individual experiences cause their behaviors to diverge, giving rise to a heterogeneous group of agents in which different agents may act in different ways given the same input. A model may also include many different types of agents from the start.
Agents are locally situated in their environment (which may be an »-dimensional space, an interaction network, or other explicit setting). They typically only
The concept of an agent has its origins in the fields of artificial intelligence and distributed computing. It is very important to differentiate between the two general uses of the term 'agent' in the literature. The first refers to that of a 'software' agent, that is, a stand-alone software component that has the ability to interact with other similar components and which is part of a larger 'multiagent system'. This term is most often found in the computer science and engineering literature. The second usage of the word 'agent' is found in the literature on 'agent-based modeling' and refers to an entity representing an individual having the ability to adapt through learning or evolution. These 'adaptive agents' were first developed in early artificial life models to explore questions related to speciation and the emergence of life. While both uses of the word refer to an autonomous entity that has certain communicative capabilities with its environment (and often the ability to modify its behavior based on environmental inputs), the applications are quite different.
have access to information about their immediate neighborhood and do not have global knowledge about the whole system in which they reside. They also have limited (noninfinite) time and computing resources with which to make decisions. For these two reasons, agents are said to be 'boundedly rational': they base decisions on incomplete (usually local) information and bounded computing capacity. Agent-based models are particularly useful for studying the dynamics of heterogeneous populations of individuals acting under the constraints of bounded information and computational capacity.
In agent-based models, ecological phenomena are thus simulated from the bottom-up via local interactions between adaptive agents. The use of agents complexifies the kinds of dynamics that are possible in these models, since an adaptive agent has a large and evolving repertoire of behaviors. Feedback between agents and their environment, which causes agents to modify their behavior, makes prediction of a simulation's outcome nearly impossible. In addition, the context dependence of agent behavior makes prediction of agent actions extremely difficult. The cumulative effects of past experience are often nonlinear, giving rise to unexpected outcomes. Due to this unpredictable aspect of agent-based models, they are often used to explore questions related to the evolution of cooperation and the self-organization and emergence of other group-level behaviors in human and animal societies.
Was this article helpful?