Swarm (simulation)

Last updated
Swarm
Developer(s) Swarm Development Group
Initial releaseNovember 1997;26 years ago (1997-11)
Stable release
2.4.1 / April 2009;14 years ago (2009-04)
Written in Objective-C, Java
Operating system Unix-like, Microsoft Windows
Type Scientific software
License GNU General Public License
Website www.swarm.org
As ofOctober 2013

Swarm is the name of an open-source agent-based modeling simulation package, useful for simulating the interaction of agents (social or biological) and their emergent collective behaviour. Swarm was initially developed at the Santa Fe Institute in the mid-1990s, and since 1999 has been maintained by the non-profit Swarm Development Group. Also known as the Swarm Simulation System, [1] it is available for free [2] and use, covered by the GNU General Public License. [3]

Contents

Early development work on Swarm was completed by Chris Langton (SFI), Roger Burkhart (John Deere), Nelson Minar (SFI), Manor Askenazi (SFI), Glen Ropella (SFI), Marcus Daniels (SFI), and Alex Lancaster (SFI). Since that time, many hundreds of people around the world have contributed to the continued open source development of the suite of Swarm ABM tools.

Applications

Scientific applications

Agent-based modeling seeks to replicate these complexities and adaptations in computational environments where these interactive emergent behaviors can be analyzed multi-dimensionally. By defining and assigning agencies reflective of prescribed behaviors, known or estimated, to active software agents in a computer simulation, scientists can approximate experimental results not possible in natural temporal frameworks.

Swarm and other agent-based modeling platforms afford scientists the opportunity to conduct and visualize experiments in these synthetic macro and microenvironments for testing scientific theories, natural data sets, and other analyses while free of pressing constraints like time, volume, hazards, or many other parameters.

Commercial applications

Agent-based models have been used since the mid-1990s to solve a variety of business and technology problems. Examples of applications include:

In these and other applications, the system of interest is simulated by capturing the behavior of individual agents and their interconnections. Agent-based modeling tools can be used to test how changes in individual behaviors will affect the overall, emergent system behavior.

See also

Related Research Articles

<span class="mw-page-title-main">Free software</span> Software licensed to be freely used, modified and distributed

Free software, libre software, or libreware is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, not price; all users are legally free to do what they want with their copies of a free software regardless of how much is paid to obtain the program. Computer programs are deemed "free" if they give end-users ultimate control over the software and, subsequently, over their devices.

<span class="mw-page-title-main">Eclipse (software)</span> Software development environment

Eclipse is an integrated development environment (IDE) used in computer programming. It contains a base workspace and an extensible plug-in system for customizing the environment. It is the second-most-popular IDE for Java development, and, until 2016, was the most popular. Eclipse is written mostly in Java and its primary use is for developing Java applications, but it may also be used to develop applications in other programming languages via plug-ins, including Ada, ABAP, C, C++, C#, Clojure, COBOL, D, Erlang, Fortran, Groovy, Haskell, JavaScript, Julia, Lasso, Lua, NATURAL, Perl, PHP, Prolog, Python, R, Ruby, Rust, Scala, and Scheme. It can also be used to develop documents with LaTeX and packages for the software Mathematica. Development environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++, and Eclipse PDT for PHP, among others.

The following outline is provided as an overview of and topical guide to software engineering:

Social simulation is a research field that applies computational methods to study issues in the social sciences. The issues explored include problems in computational law, psychology, organizational behavior, sociology, political science, economics, anthropology, geography, engineering, archaeology and linguistics.

<span class="mw-page-title-main">Visual programming language</span> Programming language written graphically by a user

In computing, a visual programming language or block coding is a programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations.

<span class="mw-page-title-main">NetLogo</span>

NetLogo is a programming language and integrated development environment (IDE) for agent-based modeling.

<span class="mw-page-title-main">Multi-agent system</span> Built of multiple interacting agents

A multi-agent system is a computerized system composed of multiple interacting intelligent agents. Multi-agent systems can solve problems that are difficult or impossible for an individual agent or a monolithic system to solve. Intelligence may include methodic, functional, procedural approaches, algorithmic search or reinforcement learning.

<span class="mw-page-title-main">Computational sociology</span> Branch of the discipline of sociology

Computational sociology is a branch of sociology that uses computationally intensive methods to analyze and model social phenomena. Using computer simulations, artificial intelligence, complex statistical methods, and analytic approaches like social network analysis, computational sociology develops and tests theories of complex social processes through bottom-up modeling of social interactions.

An agent-based model (ABM) is a computational model for simulating the actions and interactions of autonomous agents in order to understand the behavior of a system and what governs its outcomes. It combines elements of game theory, complex systems, emergence, computational sociology, multi-agent systems, and evolutionary programming. Monte Carlo methods are used to understand the stochasticity of these models. Particularly within ecology, ABMs are also called individual-based models (IBMs). A review of recent literature on individual-based models, agent-based models, and multiagent systems shows that ABMs are used in many scientific domains including biology, ecology and social science. Agent-based modeling is related to, but distinct from, the concept of multi-agent systems or multi-agent simulation in that the goal of ABM is to search for explanatory insight into the collective behavior of agents obeying simple rules, typically in natural systems, rather than in designing agents or solving specific practical or engineering problems.

The MicroBlaze is a soft microprocessor core designed for Xilinx field-programmable gate arrays (FPGA). As a soft-core processor, MicroBlaze is implemented entirely in the general-purpose memory and logic fabric of Xilinx FPGAs.

The Swarm Development Group (SDG) is an American non-profit organization to advance the development of complex adaptive system-oriented agent-based modeling (ABM) tools initiated at the Santa Fe Institute (SFI) in Santa Fe, New Mexico, US.

Web-based simulation (WBS) is the invocation of computer simulation services over the World Wide Web, specifically through a web browser. Increasingly, the web is being looked upon as an environment for providing modeling and simulation applications, and as such, is an emerging area of investigation within the simulation community.

Agent-based social simulation consists of social simulations that are based on agent-based modeling, and implemented using artificial agent technologies. Agent-based social simulation is a scientific discipline concerned with simulation of social phenomena, using computer-based multiagent models. In these simulations, persons or group of persons are represented by agents. MABSS is a combination of social science, multiagent simulation and computer simulation.

Software categories are groups of software. They allow software to be understood in terms of those categories, instead of the particularities of each package. Different classification schemes consider different aspects of software.

<span class="mw-page-title-main">Juan Pavón</span> Spanish computer scientist (b.1962)

Juan Pavón is a Spanish computer scientist, full professor of the Complutense University of Madrid (UCM). He is a pioneer researcher in the field of Software Agents, co-creator of the FIPA MESSAGE and INGENIAS methodologies, and founder and director of the research group GRASIA: GRoup of Agent-based, Social and Interdisciplinary Applications at UCM. He is known for his work in the field of Artificial Intelligence, specifically in agent-oriented software engineering. He has been often cited by mainstream media, as a reference in Artificial Intelligence.

Crowd analysis is the practice of interpreting data on the natural movement of groups or objects. Masses of bodies, particularly humans, are the subjects of these crowd tracking analyses that include how a particular crowd moves and when a movement pattern changes. Researchers use the data to predict future crowd movement, crowd density, and plan responses to potential events such as those that require evacuation routes. Applications of crowd analysis can range from video game crowd simulation to security and surveillance.

<span class="mw-page-title-main">GAMA Platform</span> Simulation platform

GAMA is a simulation platform with a complete modelling and simulation integrated development environment (IDE) for building spatially explicit agent-based simulations.

References