Skip to main content

Agent Based Modeling, Large Scale Simulations

  • Reference work entry
Computational Complexity

Article Outline

Glossary

Definition of the Subject

Introduction

Large Scale Agent Based Models: Guidelines for Development

Parallel Computing

Example

Future Directions

Acknowledgments

Bibliography

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 1,500.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 1,399.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Abbreviations

Agent:

A popular definition of an agent, particularly in AI research, is that of Wooldridge [45], pp. 29: “an agent is a computer system that is situated in some environment, and that is capable of autonomous action in this environment in order to meet its design objectives”. In particular, it is the autonomy, flexibility, inter-agent communication, reactivity and proactiveness of the agents that distinguishes the paradigm and gives power to agent-based models and multi-agent simulation [15,21]. Multi-agent systems (MAS) comprise of numerous agents, which are given rules by which they act and interact with one another to achieve a set of goals.

Block mapping:

A method of partitioning an array of elements between nodes of a distributed system, where the array elements are partitioned as evenly as possible into blocks of consecutive elements and assigned to processors. The size of the blocks approximates to the number of array elements divided by the number of processors.

Complexity:

Complexity and complex systems pertain to ideas of randomness and irregularity in a system, where individual-scale interactions may result in either very complex or surprisingly simple patterns of behavior at the larger scale. Complex agent-based systems are therefore usually made up of agents interacting in a non-linear fashion. The agents are capable of generating emergent behavioral patterns, of deciding between rules and of relying upon data across a variety of scales. The concept allows for studies of interaction between hierarchical levels rather than fixed levels of analysis.

Cyclic mapping:

A method of partitioning an array of elements between nodes of a distributed system, where the array elements are partitioned by cycling through each node and assigning individual elements of the array to each node in turn.

Grid:

Computer ‘Grids’ are comprised of a large number of disparate computers (often desktop PCs) that are treated as a virtual cluster when linked to one another via a distributed communication infrastructure (such as the internet or an intranet). Grids facilitate sharing of computing, application, data and storage resources. Grid computing crosses geographic and institutional boundaries, lacks central control, and is dynamic as nodes are added or removed in an unco-ordinated manner. BOINC computing is a form of distributed computing is where idle time on CPUs may be used to process information (http://boinc.berkeley.edu/).

Ising-type model:

Ising-type models have been primarily used in the physical sciences. They simulate behavior in which individual elements (e. g., atoms, animals, social behavior, etc.)modify their behavior so as to conform to the behavior of other individuals in their vicinity.Conway's Game of Life is a Ising-type model, where cells are in one of two states: dead or alive.In biology, the technique is used to model neural networks and flocking birds, for example.

Message passing (MP):

Message passing (MP) is the principle way by which parallel clusters of machines are programmed. It is a widely-used, powerful and general method of enabling distribution and creating efficient programs [30]. Key advantages of using MP architectures are an ability to scale to many processors, flexibility, ‘future-proofing’ of programs and portability [29].

Message passing interface (MPI):

A computing standard that is used for programming parallel systems. It is implemented as a library of code that may be used to enable message passing in a parallel computing system. Such libraries have largely been developed in C and Fortran, but are also used with other languages such as Java (MPIJava http://www.hpjava.org). It enables developers of parallel software to write parallel programs that are both portable and efficient.

Multiple instruction multiple data (MIMD):

Parallelization where different algorithms are applied to different data items on different processors.

Parallel computer architecture:

A parallel computer architecture consists of a number of identical units that contain CPUs (Central Processing Units) which function as ordinary serial computers. These units, called nodes, are connected to one another (Fig. 1). They may transfer information and data between one another (e. g. via MPI) and simultaneously perform calculations on different data.

Single instruction multiple data (SIMD):

SIMD techniques exploit data level parallelism: when a large mass of data of a uniform type needs the same instruction performed on it. An example is a vector or array processor. An application that may take advantage of SIMD is one where the same value is being added (or subtracted) to a large number of data points.

Vector computer/vector processor:

Vector computers contain a CPU designed to run mathematical operations on multiple data elements simultaneously (rather than sequentially). This form of processing is essentially a SIMD approach.The Cray Y-MP and the Convex C3880 are two examples of vector processors used for supercomputing in the 1980s and 1990s. Today, most recent commodity CPU designs include some vector processing instructions.

Bibliography

Primary Literature

  1. Abbott CA, Berry MW, Comiskey EJ, Gross LJ, Luh H-K (1997) Parallel Individual-Based Modeling of Everglades Deer Ecology. IEEE Comput Sci Eng 4(4):60–78

    Article  Google Scholar 

  2. Anderson J (2000) A Generic Distributed Simulation System for Intelligent Agent Design and Evaluation. In: Proceedings of the AI, Simulation & Planning In High Autonomy Systems, Arizona

    Google Scholar 

  3. Bokma A, Slade A, Kerridge S, Johnson K (1994) Engineering large-scale agent- based systems with consensus. Robot Comput-Integr Manuf 11(2):81–91

    Article  Google Scholar 

  4. Bouzid M, Chevrier V, Vialle S, Charpillet F (2001) Parallel simulation of a stochastic agent/environment interaction model. Integr Comput-Aided Eng 8(3):189–203

    Google Scholar 

  5. Castiglione F, Bernaschi M, Succi S (1997) Simulating the Immune Response on a Distributed Parallel Computer. Int J Mod Phys C 8(3):527–545

    Article  Google Scholar 

  6. Chalmers A, Tidmus J (1996) Practical Parallel Processing: An Introduction to Problem Solving in Parallel. International Thomson Computer Press, London

    Google Scholar 

  7. Da-Jun T, Tang F, Lee TA, Sarda D, Krishnan A, Goryachev A (2004) Parallel computing platform for the agent-based modeling of multicellular biological systems.In: Parallel and Distributed Computing: Applications and Technologies. Lecture Notes in Computer Science, vol 3320, pp 5–8

    Google Scholar 

  8. Fujimoto RM (1998) Time management in the high level architecture.Simul 71:388–400

    Article  Google Scholar 

  9. Gasser L, Kakugawa K (2002) MACE3J: Fast flexible distributed simulation of large, large-grain multi-agent systems. In: Proceedings of AAMAS

    Google Scholar 

  10. Gasser L, Kakugawa K, Chee B, Esteva M (2005) Smooth scaling ahead: progressive MAS simulation from single PCs to Grids. In: Davidsson P, Logan B, Takadama K (eds) Multi-agent and multi-agent-based simulation. Joint Workshop MABS 2004 New York, NY, USA, July 19, 2004.Springer, Berlin

    Google Scholar 

  11. Gilbert N (2007) Agent-based Models (Quantitative applications in the social siences). SAGE, London

    Google Scholar 

  12. Grimm V, Berger U, Bastiansen F, Eliassen S, Ginot V, Giske J, Goss-Custard J, Grand T, Heinz S, Huse G, Huth A, Jepsen JU, Jorgensen C, Mooij WM, Muller B, Pe'er G, Piou C, Railsback SF, Robbins AM, Robbins MM, Rossmanith E, Ruger N, Strand E, Souissi S, Stillman RA, Vabo R, Visser U, DeAngelis DL (2006) A standard protocol for describing individual-based and agent-based models. Ecol Model 198(1–2):115–126

    Article  Google Scholar 

  13. Grimm V, Railsback SF (2005) Individual-based Modeling and Ecology. Princeton Series in Theoretical and Computational Biology. Princeton University Press, Princeton, 480 pp

    Google Scholar 

  14. Guessoum Z, Briot J-P, Faci N (2005) Towards fault-tolerant massively multiagent system. In: Ishida T, Gasser L, Nakashima H (eds) Massively Multi-Agent Systems I: First International Workshop MMAS 2004, Kyoto, Japan, December 2004. Springer, Berlin

    Google Scholar 

  15. Heppenstall AJ (2004) Application of Hybrid Intelligent Agents to Modelling a Dynamic, Locally Interacting Retail Market. Ph D thesis, University of Leeds, UK

    Google Scholar 

  16. Horling B, Lesser V (2005) Quantitative organizational models for large-scale agent systems. In: Ishida T, Gasser L, Nakashima H (eds) Massively Multi-Agent Systems I: First International Workshop MMAS 2004, Kyoto, Japan, December 2004. Springer, Berlin

    Google Scholar 

  17. Immanuel A, Berry MW, Gross LJ, Palmer M, Wang D (2005) A parallel implementation of ALFISH: simulating hydrological compartmentalization effects on fish dynamics in the Florida Everglades. Simul Model Pract Theory 13:55–76

    Article  Google Scholar 

  18. Ishida T, Gasser L, Nakashima H (eds) (2005) Massively Multi-Agent Systems I. First International Workshop, MMAS 2004, Kyoto, Japan. Springer, Berlin

    Google Scholar 

  19. Jang MW (2006) Agent framework services to reduce agent communication overhead in large-scale agent-based simulations. Simul Model Pract Theory 14(6):679–694

    Article  Google Scholar 

  20. Jang MW, Agha G (2005) Adaptive agent allocation for massively multi-agent applications. In: Ishida T, Gasser L, Nakashima H (eds) Massively Multi-Agent Systems I: First International Workshop MMAS 2004, Kyoto, Japan, December 2004. Springer, Berlin

    Google Scholar 

  21. Jennings NR (2000) On agent-based software engineering. Artif Intell 117:277–296

    Article  MATH  Google Scholar 

  22. Kadau K, Germann TC, Lomdahl PS (2006) Molecular dynamics comes of age: 320 billion atom simulation on BlueGene/L. Int J Mod Phys C 17(12):1755

    Article  Google Scholar 

  23. Lees M, Logan B, Oguara T, Theodoropoulos G (2003) Simulating Agent-Based Systems with HLA: The case of SIM_AGENT – Part II. In: Proceedings of the 2003 European Simulation Interoperability Workshop

    Google Scholar 

  24. Lees M, Logan B, Theodoropoulos G (2002) Simulating Agent-Based Systems with HLA: The case of SIM_AGENT. In: Proceedings of the 2002 European Simulation Interoperability Workshop, pp 285–293

    Google Scholar 

  25. Logan B, Theodoropolous G (2001) The Distributed Simulation of Multi-Agent Systems. Proc IEEE 89(2):174–185

    Article  Google Scholar 

  26. Lomdahl PS, Beazley DM, Tamayo P, Gronbechjensen N (1993) Multimillion particle molecular-dynamics on the CM-5. Int J Mod Phys C: Phys Comput 4(6):1075–1084

    Article  Google Scholar 

  27. Lorek H, Sonnenschein M (1995) Using parallel computers to simulate individual-oriented models in ecology: a case study. In: Proceedings: ESM '95 European Simulation Multiconference, Prague, June 1995

    Google Scholar 

  28. Luke S, Cioffi-Revilla C, Panait L, Sullivan K (2004) MASON: A New Multi-Agent Simulation Toolkit. In: Proceedings of the 2004 SwarmFest Workshop

    Google Scholar 

  29. Openshaw S, Turton I (2000) High performance computing and the art of parallel programming: an introduction for geographers, social scientists, engineers. Routledge, London

    Google Scholar 

  30. Pacheco PS (1997) Parallel Programming with MPI. Morgan Kauffman Publishers, San Francisco

    MATH  Google Scholar 

  31. Parry HR (2006) Effects of Land Management upon Species Population Dynamics: A Spatially Explicit, Individual-based Model. Ph D thesis, University of Leeds

    Google Scholar 

  32. Parry HR, Evans AJ (in press) A comparative analysis of parallel processing and super-individual methods for improving the computational performance of a large individual-based model. Ecological Modelling

    Google Scholar 

  33. Parry HR, Evans AJ, Heppenstall AJ (2006) Millions of Agents: Parallel Simulations with the Repast Agent-Based Toolkit. In: Trappl R (ed) Cybernetics and Systems 2006, Proceedings of the 18th European Meeting on Cybernetics and Systems Research

    Google Scholar 

  34. Popov K, Vlassov V, Rafea M, Holmgren F, Brand P, Haridi S (2003) Parallel agent-based simulation on a cluster of workstations. In: EURO-PAR 2003 Parallel Processing, vol 2790, pp 470–480

    Google Scholar 

  35. Scheffer M, Baveco JM, DeAngelis DL, Rose KA, van Nes EH (1995) Super-Individuals: a simple solution for modelling large populations on an individual basis. Ecol Model 80:161–170

    Article  Google Scholar 

  36. Scheutz M, Schermerhorn P (2006) Adaptive Algorithms for the Dynamic Distribution and Parallel Execution of Agent-Based Models. J Parallel Distrib Comput 66(8):1037–1051

    Article  MATH  Google Scholar 

  37. Takahashi T, Mizuta H (2006) Efficient agent-based simulation framework for multi-node supercomputers. In: Perrone LF, Wieland FP, Liu J, Lawson BG, Nicol DM, Fujimoto RM (eds) Proceedings of the 2006 Winter Simulation Conference

    Google Scholar 

  38. Takeuchi I (2005) A massively multi-agent simulation system for disaster mitigation. In: Ishida T, Gasser L, Nakashima H (eds) Massively Multi-Agent Systems I: First International Workshop MMAS 2004, Kyoto, Japan, December 2004.Springer, Berlin

    Google Scholar 

  39. Timm IJ, Pawlaszczyk D (2005) Large Scale Multiagent Simulation on the Grid. In: Veit D, Schnizler B, Eymann T (eds) Proceedings of the Workshop on Agent-based grid Economics (AGE 2005) at the IEEE International Symposium on Cluster Computing and the Grid (CCGRID). Cardiff University, Cardiff

    Google Scholar 

  40. Wang D, Berry MW, Carr EA, Gross LJ (2006a) A parallel fish landscape model for ecosystem modeling. Simul 82(7):451–465

    Article  Google Scholar 

  41. Wang D, Berry MW, Gross LJ (2006b) On parallelization of a spatially-explicit structured ecological model for integrated ecosystem simulation.Int J High Perform Comput Appl 20(4):571–581

    Article  Google Scholar 

  42. Wang D, Carr E, Gross LJ, Berry MW (2005a) Toward ecosystem modeling on computing grids. Comput Sci Eng 7:44–52

    Article  Google Scholar 

  43. Wang D, Gross L, Carr E, Berry M (2004) Design and implementation of a Parallel Fish Model for South Florida. In: Proceedings of the 37th Annual Hawaii International Conference on System Sciences (HICSS'04)

    Google Scholar 

  44. Wang F, Turner SJ, Wang L (2005b) Agent Communication in Distributed Simulations. In: Davidsson P, Logan B, Takadama K (eds) Multi-agent and multi-agent-based simulation. Joint Workshop MABS 2004 New York, NY, USA, July 19, 2004. Springer, Berlin

    Google Scholar 

  45. Wooldridge M (1999) Intelligent agents. In: Weiss G (ed) Multiagent Systems: A Modern Approach to Distributed Artificial Intelligence. MIT Press, Cambridge, pp 27–78

    Google Scholar 

  46. Zhang S, Lui J (2005) A massively multi-agent system for discovering HIV-immune interaction dynamics. In: Ishida T, Gasser L, Nakashima H (eds) Massively Multi-Agent Systems I: First International Workshop MMAS 2004, Kyoto, Japan, December 2004. Springer, Berlin

    Google Scholar 

  47. Zhang Y, Thedoropoulos G, Minson R, Turner SJ, Cai W, Xie Y, Logan B (2005) Grid-aware Large Scale Distributed Simulation of Agent-based Systems.In: 2004 European Simulation Interoperability Workshop (EuroSIW 2005), 05E-SIW-047, Toulouse, France

    Google Scholar 

Books and Reviews

  1. Agent libraries and toolkits with distributed or parallel features:

    Google Scholar 

  2. • Distributed GenSim: Supports distributed parallel execution [2].

    Google Scholar 

  3. • Ecolab: http://ecolab.sourceforge.net/. EcoLab models may also use the Graphcode library to implement a distributed network of agents over an MPI-based computer cluster.

  4. • Graphcode system http://parallel.hpc.unsw.edu.au/rks/graphcode/.

  5. • MACE3J: http://www.isrl.uiuc.edu/amag/mace/ an experimental agent platform supporting deployment of agent simulations across a variety of system architectures [9,10].

  6. • MASON http://cs.gmu.edu/~eclab/projects/mason/. MASON was ‘not intended to include parallelization of a single simulation across multiple networked processors’ [28].However, it does provide two kinds of simple parallelization:

  7. 1. Any given step in the simulation can be broken into parallel sub-steps each performed simultaneously.

    Google Scholar 

  8. 2. A simulation step can run asynchronously in the background independent of the simulation.

    Google Scholar 

  9. • Repast http://repast.sourceforge.net and HLA_GRID_Repast [47]. The Repast toolkit has in-built capabilities for performing batch simulation runs.

  10. • SimAgent: http://www.cs.bham.ac.uk/research/projects/poplog/packages/simagent.html. Two developments support distributed versions of SimAgent:

  11. 1. The use of HLA to distribute SimAgent [23,24]

    Google Scholar 

  12. 2. The SWAGES package: http://www.nd.edu/~airolab/software/index.html. This allows SimAgent to be distributed over different computers and interfaced with other packages.

  13. Message Passing Interfaces (MPI):

    Google Scholar 

  14. • Background and tutorials http://www-unix.mcs.anl.gov/mpi/

  15. • MPICH2 http://www-unix.mcs.anl.gov/mpi/mpich/

  16. • MPI forum http://www.mpi-forum.org/

  17. • MPIJava http://www.hpjava.org

  18. • OpenMP http://www.openmp.org

  19. • OpenMPI http://www.open-mpi.org/

  20. Parallel computing and distributed agent simulation websites:

    Google Scholar 

  21. • Further references and websites http://www.cs.rit.edu/~ncs/parallel.html.

  22. • Introduction to parallel programming http://www.mhpcc.edu/training/workshop/parallel_intro/MAIN.html

  23. • http://www.agents.cs.nott.ac.uk/research/simulation/simulators/ (implementations of HLA_GRID_Repast and distributed SimAgent).

  24. • Globus Grid computing resources http://www.globus.org/.

  25. • Beowulf computer clusters http://www.beowulf.org/

Download references

Acknowledgments

Many thanks to Andrew Evans (Multi-Agent Systems and Simulation Research Group, University of Leeds, UK) and Phil Northing (Central ScienceLaboratory, UK) for their advice on this chapter.

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag

About this entry

Cite this entry

Parry, H.R. (2012). Agent Based Modeling, Large Scale Simulations. In: Meyers, R. (eds) Computational Complexity. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-1800-9_5

Download citation

Publish with us

Policies and ethics