|
|
Agent-based models are comprised of multiple, interacting agents situated within a model or simulation environment (see subsection 8.2.3.2 for clarification of what may be considered as an agent). A relationship between agents is specified, linking agents to other agents and/or other entities within a system. Relationships may be specified in a variety of ways, from simply reactive (i.e. agents only perform actions when triggered to do so by some external stimulus, such as the actions of another agent), to goal-directed (i.e. seeking a particular goal). The behavior of agents can be scheduled to take place synchronously (i.e. every agent performs actions at each discrete time step), or asynchronously (i.e. agent actions are scheduled by the actions of other agents, and/or with reference to a clock).
Environments define the space in which agents operate, serving to support their interaction with the environment and other agents. Agents within an environment may be spatially explicit, meaning they have a location in geometrical space, although the agent itself may be static. For example, within a building evacuation model agents would be required to have a specific location for them to assess their exit strategy. Conversely, agents within an environment may be spatially implicit; meaning their location within the environment is irrelevant. For instance, a model of a computer network does not necessarily require each computer to know the physical location of other computers within the network.
In a modeling context, agent-based models can be used as experimental media for running and observing agent-based simulations. To this extent, they can be thought of as a miniature laboratory, where the attributes and behavior of agents, and the environment in which they are set, can be altered and the repercussions observed over the course of multiple simulation runs. Enabling the ability to simulate individual actions of many diverse agents and to measure the resulting system behavior and outcomes over time (e.g. changes in patterns of pedestrian emergency egress), means that agent-based models can be useful tools for studying processes that operate at multiple scales and organizational levels. In particular, the roots of ABM are within the simulation of social behavior and individual decision-making.
The acronym ABM will be used henceforth, but a caveat is required. There are various alternative terms (and their acronyms) applied in the literature to what, for all intent and purpose, is essentially ABM. Examples include: Agent-Based Computational Modeling, (ABCM), Agent-Based Social Simulation (ABSS), Agent Based Computation Simulation (ABCS), Agent-Based Modeling and Simulation (ABMS) and Individual-Based Modeling (IBM). Multi-Agent Systems (MAS) is another very popular term which is often, confusingly, used interchangeably to describe agent-based models. The field of MAS is a well established applied branch of Artificial Intelligence (AI), and although ABM has strong roots in the field of AI, agent-based models are not limited to the design and understanding of artificial agents. Impetus to develop MAS was spawned from problems encountered in the implementation of tasks on distributed computational units interacting with one another and with the external environment (Distributed Artificial Intelligence, DAI). The term MAS is more commonly applied outside the social sciences, for example, by computer scientists in relation to agent-oriented software development. Therefore, the MAS field can be characterized as the study of societies of artificial autonomous agents, while the ABM field can be typified as the study of artificial societies of autonomous agents. These two fields differ in more substantial ways than just their formalism (i.e. logic and AI based in the MAS domain, and mathematically based in the social science domain). However, this will not be considered here (see Conte et al., 1998 for a more detailed treatment).
More importantly, the term agent has connotations beyond ABM. For instance, agents found within agent-based models are different from mobile agent systems, which are light-weight software proxies that perform various functions for users and to some extent can behave autonomously. ABM is not the same as object-oriented simulation, although the object-oriented paradigm provides a suitable medium for the development of agent-based models. For this reason, ABM systems are invariably object-oriented.
|
|