metaABM

Category Cross-Omics>Agent-Based Modeling/Simulation/Tools

Abstract metaABM is designed to be a general representation or meta- model for Agent-Based Models (ABMs).

Models can be fully defined within the metaABM lingua franca and model implementations can then be generated from those models with No further coding or configuration.

The metaABM system as a whole currently provides a hierarchical visual editor and reference implementations targeting the Ascape (see below...) and Repast Simphony platforms (see G6G Abstract Number 20434).

metaABM is built upon the Eclipse Modeling Framework using the OpenArchitectureWare toolset.

The metaABM system is fully integrated with the Eclipse IDE platform, but metaABM models themselves need have No dependencies on any particular technology beyond Extensible Markup Language (XML)/XML Schema Definition (XSD).

The manufacturers do Not imagine that the meta-model covers every possible model instance, or that they have Not overlooked important issues.

But if nothing else the manufacturer hopes that this model serves as a useful "straw-agent" that the community can use to refine and explore key representational issues.

Meta-Model Structure -- Every metaABM model has at its root a Context.

Contexts instances represent types of agents that are capable of containing other Agents (including other contexts, naturally). At runtime, instances of Context instances contain agent instances each corresponding to one of the contained Agent instances.

Contexts may have Projections, which represent some kind of spatial or structural interaction space for the agents; either, a grid, a continuous (Euclidian) space, or a network or GIS space of some kind. (Geographic Information System (GIS) is currently only supported as a notional construct and has No target platform implementation).

In addition to Attributes, agents are SActables and can have any number of behaviors, called "Acts", described below.

SStyles provide a mechanism for defining generic visualization behavior for Agents and so are also Actables. For example, an Agent might have an Act that says effectively "draw a red circle shaded red for the wealth of the agent".

metaABM Acts -- Acts are a key aspect of the metaABM representational scheme, as they allow the definition of arbitrary but high level behavior for agents.

They are also conceptually more challenging as unlike the metaABM structure they have No direct analogies to past agent representation approaches. But a few basic ideas should clarify matters.

1) An Act is anything that might happen during the execution of an Agent- Based Model.

2) Acts are targets and sources of one another, but an Act can never have itself as a source. (That is, Acts are acyclic, but branches can re- converge).

3) Acts reference a Select, referred to as the "selected" relation. A Select represents the model aspects that the Act is working within; that is, the spatial, temporal and type (agent) "world" that is currently being selected.

4) Commands trigger some model state change (ASet) or spatial transformation (ATransform).

5) Transforms also specify a "destination" Select. This represents aspects that the selected agent(s) will transform to.

6) All Acts have as their root-most source Act a Root. These are added first to any ‘agent behavior’ and act as triggers for all target behavior.

7) Sinks are Acts which use some Function (see 'metaABM Functions' below...) to interpret state in the form of Inputs. Inputs can come from selected agent attributes, other Acts, or literal values.

8) Controls determine whether target acts are executed and against what agents. They are in some sense query terms.

Note: The system can be thought of as a very high-level quasi- declarative query and transformation language.

metaABM Functions -- Functions are used by Sinks to interpret some model state.

Functions are broken into two (2) broad types; Operators, which are simple calculations sharing the same type, and GenericFunctions that can represent any general function that takes some well-defined input (s) and returns some well-defined output(s).

(Conceptually, functions can return multi-values, but that is Not currently implemented in the reference targets because of limitations of the target language Java. Future reference implementations should address this issue.)

Logicals return some binary result and that is used by Queries to decide whether target Acts apply to a particular selection. Input types should be defined as generally as possible.

AScape -- Ascape is an innovative tool for developing and exploring general-purpose agent-based models. It is designed to be flexible and advanced, but also approachable, easy to use and expressive.

Models can be developed in Ascape using far less code than in other tools. Ascape models are easier to explore, and profound changes to the models can be made with minimal code changes.

Ascape offers a broad array of modeling and visualization tools.

A high-level framework supports complex model design, while end-user tools make it possible for non-programmers to explore many aspects of model dynamics. Ascape is written entirely in Java, and should run on any Java-enabled platform.

Ascape is released under a BSD standard open source license and thus is free to use and redistribute. The Ascape distribution includes a number of other Open Source libraries.

Ascape is research oriented software; while it is quite mature, API's, distribution, may continue and may change over time.

Direct support is Not provided; forums provide a much better venue for sharing information and make the most efficient use of limited resources.

For support, comments, or discussion of technical and general modeling issues, please use the Ascape forum.

Composer for Simphony -- A key part of the metaABM tool set is support for the Repast Simphony Agent-Based Modeling environment.

While metaABM was designed to be ABM platform independent, metaABM IDE features have been designed to complement and extend the open-ended design of Simphony, providing ease-of-use benefits and advanced new features for Model Building, Configuration Support, and Integrated Development Environment (IDE) integration.

System Requirements

Contact manufacturer.

Manufacturer

Manufacturer Web Site metaABM

Price Contact manufacturer.

G6G Abstract Number 20439

G6G Manufacturer Number 104068