Towson University Agent Based Modeling and Simulation Analysis Essay

Towson University

Question Description

I don’t know how to handle this Computer Science question and need guidance.

Grading Criterion: Discuss an application of Agent-Based Modeling and Simulation (ABMS) that aligns with your career / professional interests. Discuss any shortcomings or drawbacks you find with ABMS.

Unformatted Attachment Preview

Proceedings of the 2009 Winter Simulation Conference M. D. Rossetti, R. R. Hill, B. Johansson, A. Dunkin and R. G. Ingalls, eds. AGENT-BASED MODELING AND SIMULATION Charles M. Macal Michael J. North Center for Complex Adaptive Systems Simulation (CAS2)Sciences Division Decision & Information Argonne National Laboratory Argonne, IL 60439 USA Center for Complex Adaptive Systems Simulation (CAS2) Decision & Information Sciences Division Argonne National Laboratory Argonne, IL 60439 USA ABSTRACT Agent-based modeling and simulation (ABMS) is a new approach to modeling systems comprised of autonomous, interacting agents. Computational advances have made possible a growing number of agent-based models across a variety of application domains. Applications range from modeling agent behavior in the stock market, supply chains, and consumer markets, to predicting the spread of epidemics, mitigating the threat of bio-warfare, and understanding the factors that may be responsible for the fall of ancient civilizations. Such progress suggests the potential of ABMS to have far-reaching effects on the way that businesses use computers to support decision-making and researchers use agent-based models as electronic laboratories. Some contend that ABMS “is a third way of doing science” and could augment traditional deductive and inductive reasoning as discovery methods. This brief tutorial introduces agent-based modeling by describing the foundations of ABMS, discussing some illustrative applications, and addressing toolkits and methods for developing agent-based models. 1 INTRODUCTION Agent-based modeling and simulation (ABMS) is a new modeling approach that has gained increasing attention over the past 10 years. This growth trend is evidenced by the increasing numbers of articles appearing in modeling and applications journals, the number of funded programs that call for agent-based models that incorporate elements of human and social behavior, the growing number of conferences on or that have tracks dedicated to agent-based modeling, the demand for ABMS courses and instructional programs, and the number of presentations at conferences such as the WSC that reference agentbased modeling. Some contend that ABMS “is a third way of doing science” and could augment traditional deductive and inductive reasoning as discovery methods (Axelrod 1997). This tutorial provides a necessarily brief introduction to agent-based modeling and simulation. The goals are to show that ABMS is: • • • Useful: Why ABMS is an appropriate modeling approach for a large class of problems and has advantages over conventional modeling approaches in many cases, Usable: How ABMS is advancing to the point of producing portable, extensible, and transferable software, with better integrated development environments and more examples of good applications, and Used: How ABMS is being used to solve practical problems. This tutorial is organized into two parts. The first part (Section 2-3) is a tutorial on how to think about ABMS. The background on ABMS and its motivating principles are described along with some exemplary applications. The second part (beginning with Section 4) is a tutorial on how to do ABMS. It addresses modeling approaches and toolkits for developing agent-based models. 978-1-4244-5771-7/09/$26.00 ©2009 IEEE 86 Macal and North 2 HOW TO THINK ABOUT ABMS 2.1 The Need for Agent Based Modeling Why is agent-based modeling becoming widespread? The answer is because we live in an increasingly complex world. First, the systems that we need to analyze and model are becoming more complex in terms of their interdependencies. Conventional modeling tools may not be as applicable as they once were. An example application area is the deregulation of the formerly centralized electric power industry in which agents are suddenly free to make pricing and investment choices based on their individual criteria. Second, some systems have always been too complex for us to adequately model. Modeling economic markets has traditionally relied on the notions of perfect markets, homogeneous agents, and long-run equilibrium because these assumptions made the problems analytically and computationally tractable. We are beginning to be able to relax some of these assumptions and take a more realistic view of these economic systems through ABMS. Third, data are being collected and organized into databases at finer levels of granularity. Micro-data can now support individual-based simulations. And fourth, but most importantly, computational power is advancing rapidly. We can now compute large-scale microsimulation models that would not have been plausible just a few years ago. 2.2 What Is an Agent There is no universal agreement on the precise definition of the term “agent” in the context of ABMS. It is the subject of much discussion and occasional debate. The issue is more than an academic one, as it often surfaces when one makes a claim that their model is “agent-based” or when one is trying to discern whether such claims made by others have validity. There are important implications of the term “agent-based” when used to describe a model in terms of the model’s capabilities or potential capabilities that could be attained through relatively minor modification. A formal definition of “agent” is beyond the scope of this paper; in the literature informal descriptions of “agent” tend to agree on more points than they disagree. Unlike particle systems (idealized gas particles for example) which are the subject of the field of physical systems simulation, agents as used are are diverse, heterogeneous, and dynamic in their attributes and behavioral rules, as shown in Figure 1. Some modelers consider any type of independent component whether it be software or a model to be an agent (Bonabeau 2001). An independent component’s behavior can range from simple in nature, e.g., described by simple if-then rules, to the complex, e.g., described by complex behavioral models from the fields of cognitive science or artificial intelligence. Some authors insist that a component’s behavior must also be adaptive in order for it to be considered an agent. In this view, the agent label is reserved for components that can learn from their environment and dynamically change their behaviors in response to their experiences. Casti (1997) argues that agents should contain both base-level rules for behavior as well as a higher-level set of “rules to change the rules.” The base-level rules provide responses to the environment, while the “rules to change the rules” provide adaptation. Jennings (2000) provides a computer science view of “agent” that emphasizes the essential characteristic of autonomous behavior. This requires agents to be active responders and planners rather than purely passive components. For practical modeling purposes, we consider agents to have certain properties and attributes: An agent is autonomous and self-directed. An agent can function independently in its environment and in its interactions with other agents, generally from a limited range of situations that are of interest. We refer to an agent’s behavior as the representation of a process that links the agent’s sensing of its environment to its decisions and actions. • Agents are modular or self-contained. An agent is an identifiable, discrete individual with a set of characteristics or attributes, behaviors, and decision-making capability. The discreteness requirement implies that an agent has a boundary in a sense and one can easily determine whether something (that is, an element of the model’s state) is part of an agent, is not part of an agent, or is a characteristic shared among agents. • An agent is social, interacting with other agents. Agents have protocols or mechanisms that describe how they interact with other agents, just as an agent has behaviors. Common agent interaction protocols include contention for space and collision avoidance; agent recognition; communication and information exchange; influence; and other domain-or application-specific mechanisms. Agents often have additional properties, which may or may not be considered as defining properties or necessary for agency. • • An agent may live in an environment. Agents interact with their environment as well as with other agents. An agent is situated, in the sense that its behavior is situationally dependent, which means that its behavior is based on the current state of its interactions with other agents and with the environment. 87 Macal and North • • • An agent may have explicit goals that drive its behavior. The goals are not necessarily objectives to maximize as much as criteria against which to assess the effectiveness of its decision and actions. This allows an agent to continuously compare the outcomes of its behaviors to its goals and gives it a benchmark for possibly modifying it behavior. An agent may have the ability to learn and adapt its behaviors based on its experiences. Individual learning and adaptation requires an agent to have memory, usually in the form of a dynamic agent attribute. (We contrast individual adaptation with population adaptation. In population adaptation, the proportion of individuals within the population with certain attributes that better suit them to their environment increases over time. The individuals do not necessarily change their behavior or adapt.) Agents often have resource attributes that indicate its current stock of one or more resources, e.g., energy, wealth, information, etc. Figure 1: A typical agent An agent’s behavioral rules can vary in their sophistication, how much information is considered in the agent’s decision (this is referred to as cognitive load), the agent’s internal models of the external world including the possible reactions or behaviors of other agents, and the extent of its memory of past events that an agent retains and uses in its decisions. Often, the agents in a model will lack adaptation because it is not to achieve the model’s intended purpose. For example, in a supply chain model it may not be necessary to model agent adaptation if the model’s purpose is to evaluate a set of specific inventory management rules. 2.3 Agent-based Modeling and Simulation Agent-based modeling is known by many names. ABM (agent-based modeling), ABS (agent-based systems or simulation), and IBM (individual-based modeling) are all widely-used acronyms, but “ABMS” will be used throughout this discussion. The term “agent” has connotations in realms other than agent-based modeling as well. ABMS agents are different from the agents typically found in mobile agent systems. “Mobile agents” are light-weight software proxies that roam over the worldwide web and perform various functions for users and to some extent can behave autonomously. Another point of clarification concerns the term “simulation.” Agent-based simulation refers to a model in which the dynamic processes of agent interaction are simulated repeatedly over time, as in systems dynamics, time-stepped, discreteevent, and other types of simulation. An agent-based model, more generally, is a model in which agents repeatedly interact. For example, when agents optimize their collective behavior through simple exchanges of information as is done in ant colony optimization or in particle swarm optimization, the purpose is to achieve a desired end-state, i.e., the optimized system, rather than to simulate a dynamic process for its own sake. 2.4 Background on ABMS ABMS has connections to many other fields including complexity science, systems science, systems dynamics, computer science, management science, several branches of the social sciences, and conventional modeling and simulation. ABMS 88 Macal and North draws on these fields for its theoretical foundations, its conceptual world view and philosophy, and for applicable modeling techniques. ABMS is related to the fields of multi-agent systems (MAS) and robotics from the field of artificial intelligence (AI), as well as Artificial Life (ALife). But ABMS is not only tied to understanding and designing “artificial” agents. Its most common use is in modeling human social and organizational behavior and individual decision-making (Bonabeau 2001). With this, comes the need to represent behaviors, social interaction, collaboration, group behavior, and its possible emergence. ABMS has its direct historical roots in complex adaptive systems (CAS) and the underlying notion that “systems are built from the ground-up. CAS concerns itself with the question of how complex behaviors arise in nature among myopic, autonomous agents. In addition, ABMS tends to be descriptive, with the intent of modeling the actual or plausible behavior of individuals, rather than normative such as traditional operations research (OR), which seeks to optimize and identify optimal behaviors. The field of CAS was originally motivated by investigations into adaptation and emergence of biological systems. CAS have the ability to self-organize and dynamically reorganize their components in ways better suited to survive and excel in their environments, and this adaptive ability occurs, remarkably, over an enormous range of scales. John Holland, a pioneer in the field, identifies properties and mechanisms common to all CAS (Holland 1995) such as (1) Aggregation: allows groups to form, (2) Nonlinearity: invalidates simple extrapolation, (3) Flows: allow the transfer and transformation of resources and information, and (4) Diversity: allows agents to behave differently from one another and often leads to the system property of robustness. CAS mechanisms are: (1) Tagging: allows agents to be named and recognized, (2) Internal models: allows agents to reason about their worlds, and (3) Building blocks: allows components and whole systems to be composed of many levels of simpler components. These CAS properties and mechanisms provide a useful reference for designing agent-based models. Essentially, one models a complex adaptive system by developing an agent-based model. Social agent-based modeling, modeling social processes starting at the individual level, has been around since at least 1970’s with Sakoda’s publication of the checkerboard model of social interaction (Sakoda 1971). This model was essentially a cellular automata model (cellular automata are discussed in Section 4.2). More recently, Epstein and Axtell (1996) introduced the idea of artificial societies in their SugarScape model. SugarScape uses agent-based modeling to represent an entire society “from the ground up” by modeling its individuals and their interactions. Epstein and Axtell showed how an extensive number of social processes could be credibly modeled including life, death, disease, war, reproduction, and wealth. This seminal work and it continues to offer a blueprint for many agent-based models of social processes. 2.5 ABMS Demonstrations on Order Creation 2.5.1 Demonstration: Life We begin with a simple “game” developed by the mathematician John Conway, called Life (Gardner 1970). Life is based on cellular automata (CA). Perhaps the simplest way to illustrate the basic ideas of agent-based modeling and simulation is through CA. According to Casti (1997), the original notion of CA was developed by the physicist Stanislaw Ulam in response to a question posed by the famous 20th century mathematician John von Neumann. The question was, “could a machine be programmed to make a copy of itself?” In effect, the question had to do with whether it was possible to develop a logical structure that was complex enough to completely contain all of the instructions for replication. Von Neumann answered his own question by developing the abstract mathematical representation of a machine in the form of a cellular automata. A typical CA is a two-dimensional grid or lattice partitioned into cells. Each cell assumes one of a finite number of states at any point in time. A set of simple rules determines the value of each cell based on the cell’s previous state. Every cell is updated each period according to the rules, as in a time-stepped simulation. The value of a cell in the next period depends on the cell’s current value and the values of its immediate neighbors in the eight surrounding cells (assuming a “9-cell” Moore neighborhood). Each cell is identical in terms of its update rules. A CA is deterministic in that the same state for a cell and its neighbors always results in the same updated state. Life has three rules that determine the next state (either On or Off) of each cell: Rule 1: The cell will be On in the next generation if exactly three of its eight neighboring cells are currently On. Rule 2: The cell will retain its current state if exactly two of its neighbors are On. Rule 3: The cell will be Off otherwise. 89 Macal and North Interpreting Life as an agent-based model, we can consider each cell to be an agent. The cell update rules represent an agent’s “behavior.” The states of a cell (On or Off) are the possible agent states. The states of all the agents taken together at a specific time in the simulation is the state of the model (system). The environment in Life is the grid upon which the agents live. The function of the environment is minimal in Life. It merely serves as a reference point for determining an agent’s neighborhood, which consists of the cells immediately adjacent to it. Figure 2 shows snapshots from a Life simulation. Figure 2a shows an initial random distribution of On cells. The initial random distribution of On cells is the only stochastic element of Life. After several updates of all cells in the grid in which the update rules are applied to every cell, distinctive patterns emerge, and in some cases these patterns can sustain themselves indefinitely throughout the simulation (Figure 2b). The nine-cell neighborhood assumption built into Life determines the scope of agent interaction and the locally available information for each cell to update its state. (a) (b) Figure 2: Life simulation: (a) initial random layout of cells in the On state, (b) after all cells updated 30 times Several observations are important about Life: the rules are simple and the rules use only local information. By local information we mean that the state of each cell is based only on the current state of the cell and the cells touching it in its immediate neighborhood. Repeated simulations of Life also reveal that the resulting patterns are very sensitive to the initial conditions. Each initial distribution of On cells results in an entirely different pattern of On and Off cells in the long-run. Even changing single cells in the initial distribution of On cells results in vastly different Life outcomes. These are interesting findings, and observing the patterns created by repeated simulations of Life reveals a world of virtually endless creations. Yet the point is that we have a simple system comprised of simple rules that begins in a random state and that yields patterns, order or structure as the case may be. The patterns can be said to “emerge.” Another example, the Boids Model, yields similar emergent behavior. 2.5.2 Demonstration: Boids The Boids simulation is a good example of how interacting agents, characterized by simple behavioral rules, lead to emergent and seemingly organized behavior (Reynolds 2006). Agent behavior is reminiscent of schooling or flocking behavior in fish or birds. In the Boids model, each agent has three rules governing its movement: Rule 1: Cohesion: each agent steers toward the average position of its nearby “flockmates” Rule 2: Separation: each agent steers to avoid crowding local flockmates Rule 3: Alignment: each agent steers towards the average heading of local flockmates Here, ...
Purchase answer to see full attachment
Student has agreed that all tutoring, explanations, and answers provided by the tutor will be used to help in the learning process and in accordance with Studypool's honor code & terms of service.

Final Answer



Application of ABMS in Web Design
Student’s Name
Institutional Affiliation
Course Title/Section
Professor’s Name
Due Date




Application of ABMS in Web Design
ABMS (Agent-Based Modeling and Simulation) focuses on computational models that
simulate the interactions and actions of autonomous agents and assesses how agents affect the
system in general (Macal & North, 2009, pg. 86).
In the near future, I want to venture into web development, specifically specializing in the
development of Word Wide Web applications. ABMS will significantly help advance my career
because ABMS can collect data and organize that data into databases at finer granularity levels
(Macal & North, 2009, pg. 87). Additionally, because computational p...

Marrie (19239)
Cornell University

Thanks for the help.

Outstanding. Studypool always delivers quality work.

Tutor was very helpful and took the time to explain concepts to me. Very responsive, managed to get replies within the hour.

Similar Questions
Related Tags